PCI總線(xiàn)從設備接口的CPLD實(shí)現
2.2 配置空間
配置空間是容量為256 Byte并具有特定記錄結構或模型的地址空間,包括頭標區和設備有關(guān)區,前64 Byte是頭標區,用來(lái)唯一的識別設備,并使設備能以一般的方法控制,是PCI設備必須實(shí)現的。
本模塊實(shí)現了頭標區所有的字段,可讀可寫(xiě)字段中可寫(xiě)的位由觸發(fā)器來(lái)實(shí)現,其它位和只讀字段全部硬件連線(xiàn)接地或者接高。通過(guò)配置空間寄存器,配置軟件可以確定設備的存在、功能以及資源請求。配置空間主要字段的設置及含義說(shuō)明如表5所示。本文引用地址:http://dyxdggzs.com/article/190766.htm
2.3 譯碼
譯碼模塊包括命令譯碼、地址譯碼。在總線(xiàn)交易的地址期,譯碼模塊通過(guò)將AD信號線(xiàn)地址期的值與配置空間基址寄存器值相比較,確定訪(fǎng)問(wèn)是否落在本設備的地址空間范圍內;或確定是否被選作配置訪(fǎng)問(wèn)的目標設備。同時(shí)對地址期C/BE信號線(xiàn)的值進(jìn)行命令譯碼,確定總線(xiàn)訪(fǎng)問(wèn)的類(lèi)型,本模塊支持配置讀、寫(xiě)和內存讀、寫(xiě)4種PCI總線(xiàn)訪(fǎng)問(wèn)方式。若譯碼后設備被選中,則發(fā)送HIT信號通知狀態(tài)機做進(jìn)一步處理。
2.4 數據通道
在總線(xiàn)交易的地址期,數據通道鎖存AD總線(xiàn)上的地址信號,并在IRDY#和TRDY#同時(shí)有效的時(shí)鐘上升沿,將地址自動(dòng)增加一個(gè)雙字地址并提供給用戶(hù)接口。
在數據期,寫(xiě)交易時(shí)將AD總線(xiàn)上的數據寫(xiě)入配置空間或者用戶(hù)設備,在讀交易時(shí)數據通道負責將要讀出的配置數據或用戶(hù)設備數據鎖存送到AD總線(xiàn)上,并產(chǎn)生偶校驗值送給奇偶校驗模塊。數據通道為PCI訪(fǎng)問(wèn)配置空間和用戶(hù)設備提供了一個(gè)地址和數據接口。
2.5 奇偶校驗
奇偶校驗主要用來(lái)確定主設備是否成功的尋址到它希望的目標設備,以及數據傳輸的正確與否,在總線(xiàn)交易中,任何設備驅動(dòng)數據總線(xiàn)輸出數據,就必須在相應的地址或者數據的下一個(gè)時(shí)鐘周期驅動(dòng)PAR線(xiàn)。設計中省去了奇偶校驗值的檢驗電路,只實(shí)現了必須的偶校驗值產(chǎn)生電路,計算出要輸出數據和CBE的偶校驗值后,在數據期的下一個(gè)總線(xiàn)時(shí)鐘周期送給主設備檢驗。
2.6 重試模塊
從設備接口如果承諾了一個(gè)數據交易,則必須在16個(gè)時(shí)鐘周期內準備好發(fā)送和接受數據,否則超時(shí)重試。如果用戶(hù)設備被選作交易的從設備,但沒(méi)有準備好,無(wú)法開(kāi)始起始字節的數據交易,則狀態(tài)機一直處于等待狀態(tài),如果在規定的時(shí)間內用戶(hù)設備仍沒(méi)有有效Ready信號,該模塊通知狀態(tài)機超時(shí)重試,然后斷開(kāi)連接。
2.7 其他邏輯
該部分主要包括一個(gè)總線(xiàn)選擇器和一個(gè)三態(tài)總線(xiàn)驅動(dòng)器??偩€(xiàn)選擇器根據總線(xiàn)訪(fǎng)問(wèn)的類(lèi)型,選通配置空間讀數據或用戶(hù)設備數據送至數據通道;三態(tài)總線(xiàn)驅動(dòng)器對輸出到用戶(hù)設備的數據進(jìn)行三態(tài)驅動(dòng)。
3 時(shí)序仿真
文中采用Verilog HDL語(yǔ)言設計實(shí)現了上述模塊,在A(yíng)ltera公司MAX+plusIl10.0軟件環(huán)境下,選用FLEX10K20RC208—3器件進(jìn)行綜合編譯,占用341個(gè)邏輯單元,最高工作頻率36 MHz,滿(mǎn)足PCI總線(xiàn)的時(shí)序要求。圖3是內存突發(fā)讀訪(fǎng)問(wèn)的時(shí)序仿真波形,突發(fā)傳輸4個(gè)數據,在每個(gè)數據傳輸的下個(gè)時(shí)鐘周期輸出奇偶校驗值,最后用戶(hù)設備提出終止傳輸請求,最后一個(gè)數據傳輸完成后交易結束。圖4是內存突發(fā)寫(xiě)訪(fǎng)問(wèn)的時(shí)序仿真波形,突發(fā)傳輸4個(gè)數據后,主設備插入等待周期,同時(shí)用戶(hù)設備也有效Ready和Term請求終止傳輸,在第5個(gè)數據也是最后一個(gè)數據傳輸完成后,總線(xiàn)交易結束。這兩個(gè)時(shí)序圖屬于傳輸最后一個(gè)數據并斷開(kāi)連接情形的兩種不同情況。仿真波形的分析表明,從設備接口模塊符合PCI規范的要求。
4 結束語(yǔ)
將一個(gè)FIFO模塊連接到PCI從設備接口的用戶(hù)總線(xiàn)組成測試平臺,由FIFO的狀態(tài)和控制信號提供同步的Ready和Term信號。這個(gè)測試平臺在MAX+plusII下編譯,并下載到PCI開(kāi)發(fā)板上一片EPF10K20RC208-3芯片中,安裝驅動(dòng)程序后,PCI開(kāi)發(fā)板正確識別、工作穩定、讀、寫(xiě)數據準確無(wú)誤;多組數據傳輸測試,測得數據突發(fā)傳輸率約可達到20 MB·s-1。
評論