一種基于EP2SGX系列FPGA的PCI接口設(shè)計(jì)
0 引 言
在現(xiàn)代雷達(dá)數(shù)據(jù)處理系統(tǒng)和其他應(yīng)用系統(tǒng)中,傳統(tǒng)的ISA、EISA等總線已逐漸無(wú)法適應(yīng)高速數(shù)據(jù)傳輸?shù)囊蟆6鳳CI局部總線以其高性能、低成本、使用方便和適應(yīng)性等優(yōu)點(diǎn)成為大多數(shù)系統(tǒng)的主流總線。其中常用的33 MHz、32位的PCI總線尖峰傳輸速率為132 MB/s。PCI總線接口相對(duì)其他總線接口來(lái)說(shuō)是比較復(fù)雜的,它有著嚴(yán)格的同步時(shí)序要求,且為了實(shí)現(xiàn)即插即用和自動(dòng)配置,PCI總線的配置空間有許多配置寄存器需要設(shè)置。本文在簡(jiǎn)要介紹PCI總線及其特點(diǎn)的基礎(chǔ)上,介紹了如何利用FPGA設(shè)計(jì)PCI總線的接口電路,并給出了設(shè)計(jì)PCI總線接口時(shí)應(yīng)注意的一些問(wèn)題。
1 PCI總線與數(shù)據(jù)傳輸規(guī)范
PCI總線信號(hào)可劃分為如圖1所示的幾種類型。其中64位總線擴(kuò)展信號(hào)、資源鎖存信號(hào)和邊界掃描信號(hào)是可選的。
PCI總線上的數(shù)據(jù)傳送是基于猝發(fā)傳送的機(jī)制,一個(gè)猝發(fā)傳送包括一個(gè)地址相和一個(gè)或多個(gè)數(shù)據(jù)相?;镜腜CI傳輸由FRAME#、IRDY#和TRDY#信號(hào)控制。當(dāng)數(shù)據(jù)有效時(shí),數(shù)據(jù)資源需要無(wú)條件設(shè)置xRDY#信號(hào)(寫操作為IRDY#,讀操作為TRDY#)。接收方可在適當(dāng)時(shí)間發(fā)出它的xRDY#信號(hào)。FRAME#信號(hào)有效后的第一個(gè)時(shí)鐘上升沿是地址周期的開(kāi)始,此時(shí)傳送地址信息和總線命令。下一個(gè)時(shí)鐘上升沿開(kāi)始一個(gè)(或多個(gè))數(shù)據(jù)周期,當(dāng)IRDY#和TRDY#同時(shí)有效時(shí),數(shù)據(jù)在主、從設(shè)備之間傳送。在此期間,可由主設(shè)備或從設(shè)備分別利用IRDY#和TRDY#的無(wú)效而插入等待周期。PCI總線傳輸包含讀、寫和中止3個(gè)內(nèi)容,圖2和圖3所示的時(shí)序圖顯示了PCI總線讀、寫操作的傳輸過(guò)程。
評(píng)論