基于EP2SGX系列FPGA的PCI接口設(shè)計(jì)
0 引 言
在現(xiàn)代雷達(dá)數(shù)據(jù)處理系統(tǒng)和其他應(yīng)用系統(tǒng)中,傳統(tǒng)的ISA、EISA等總線已逐漸無法適應(yīng)高速數(shù)據(jù)傳輸?shù)囊?。?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/PCI">PCI局部總線以其高性能、低成本、使用方便和適應(yīng)性等優(yōu)點(diǎn)成為大多數(shù)系統(tǒng)的主流總線。其中常用的33 MHz、32位的PCI總線尖峰傳輸速率為132 MB/s。PCI總線接口相對其他總線接口來說是比較復(fù)雜的,它有著嚴(yán)格的同步時(shí)序要求,且為了實(shí)現(xiàn)即插即用和自動(dòng)配置,PCI總線的配置空間有許多配置寄存器需要設(shè)置。本文在簡要介紹PCI總線及其特點(diǎn)的基礎(chǔ)上,介紹了如何利用FPGA設(shè)計(jì)PCI總線的接口電路,并給出了設(shè)計(jì)PCI總線接口時(shí)應(yīng)注意的一些問題。
1 PCI總線與數(shù)據(jù)傳輸規(guī)范
PCI總線信號可劃分為如圖1所示的幾種類型。其中64位總線擴(kuò)展信號、資源鎖存信號和邊界掃描信號是可選的。
PCI總線上的數(shù)據(jù)傳送是基于猝發(fā)傳送的機(jī)制,一個(gè)猝發(fā)傳送包括一個(gè)地址相和一個(gè)或多個(gè)數(shù)據(jù)相?;镜腜CI傳輸由FRAME#、IRDY#和TRDY#信號控制。當(dāng)數(shù)據(jù)有效時(shí),數(shù)據(jù)資源需要無條件設(shè)置xRDY#信號(寫操作為IRDY#,讀操作為TRDY#)。接收方可在適當(dāng)時(shí)間發(fā)出它的xRDY#信號。FRAME#信號有效后的第一個(gè)時(shí)鐘上升沿是地址周期的開始,此時(shí)傳送地址信息和總線命令。下一個(gè)時(shí)鐘上升沿開始一個(gè)(或多個(gè))數(shù)據(jù)周期,當(dāng)IRDY#和TRDY#同時(shí)有效時(shí),數(shù)據(jù)在主、從設(shè)備之間傳送。在此期間,可由主設(shè)備或從設(shè)備分別利用IRDY#和TRDY#的無效而插入等待周期。PCI總線傳輸包含讀、寫和中止3個(gè)內(nèi)容,圖2和圖3所示的時(shí)序圖顯示了PCI總線讀、寫操作的傳輸過程。
2 設(shè)計(jì)考慮及芯片選擇
目前PCI接口主要有2種實(shí)現(xiàn)方式:使用專用接口芯片和采用可編程器件。專用芯片如PLX公司的9050等,專用芯片可以實(shí)現(xiàn)完整的PCI主控模塊和目標(biāo)模塊接口功能,將復(fù)雜的PCI總線接口轉(zhuǎn)換為相對簡單的用戶接口。缺點(diǎn)是缺少靈活性,用戶可能只用到了部分的PCI接口功能,造成了一定的邏輯資源浪費(fèi)。采用FPGA的優(yōu)點(diǎn)在于其靈活的可編程性,首先PCI接口可以依據(jù)插卡功能進(jìn)行最優(yōu)化設(shè)計(jì),而不必實(shí)現(xiàn)所有的PCI功能,可以節(jié)約系統(tǒng)的邏輯資源。其次可以將PCI插卡上的其他用戶邏輯與PCI接口邏輯集成在一個(gè)芯片上,實(shí)現(xiàn)緊湊設(shè)計(jì)。再者當(dāng)系統(tǒng)升級時(shí),只需對可編程器件重新進(jìn)行邏輯設(shè)計(jì),而無需更新PCB版圖。
評論