PCI總線目標(biāo)控制器的設(shè)計(jì)
0引言
PCI(PeripheralComponentInterconnect)總線是微型計(jì)算機(jī)中處理器/存儲(chǔ)器與外圍控制部件、擴(kuò)展卡之間的互聯(lián)接口。PCI總線規(guī)范是互聯(lián)機(jī)構(gòu)的協(xié)議,以及電氣和機(jī)械配置的規(guī)范,是當(dāng)今高性能微型計(jì)算機(jī)事實(shí)上的總線標(biāo)準(zhǔn)。[1]
PCI總線控制器為PCI總線和用戶設(shè)備提供操作接口,協(xié)調(diào)PCI總線信號(hào)和用戶設(shè)備接口信號(hào),使用戶設(shè)備能夠按照PCI總線的規(guī)范進(jìn)行數(shù)據(jù)的傳輸。本文設(shè)計(jì)了一個(gè)適用于CMOS圖象處理的PCI目標(biāo)控制器,具有較強(qiáng)的通用性。
1控制器的頂層設(shè)計(jì)
PCI總線目標(biāo)設(shè)備在總線傳輸中處于被動(dòng)地位,它不會(huì)申請(qǐng)對(duì)總線的使用權(quán)。當(dāng)PCI總線上的某一主設(shè)備發(fā)起對(duì)本地資源的訪問(wèn)時(shí),整個(gè)控制邏輯的建立和數(shù)據(jù)傳輸?shù)倪^(guò)程都是通過(guò)目標(biāo)控制器實(shí)現(xiàn)的。
PCI系統(tǒng)中,目標(biāo)設(shè)備在地址周期內(nèi)響應(yīng)總線主設(shè)備的傳輸要求,并配合主設(shè)備完成整個(gè)數(shù)據(jù)傳輸。圖1為目標(biāo)控制器的詳細(xì)結(jié)構(gòu)圖。
本設(shè)計(jì)將目標(biāo)控制器按照功能分為幾個(gè)功能模塊實(shí)現(xiàn),即命令解碼器、狀態(tài)機(jī)、FIFO類型目標(biāo)接口和寄存器型目標(biāo)接口。命令解碼模塊和狀態(tài)機(jī)構(gòu)成目標(biāo)控制器的控制部分,PCI主設(shè)備發(fā)起某類型的操作,目標(biāo)控制器在地址周期內(nèi)解析相應(yīng)的地址和命令信息。在解析地址確定為本次操作的目標(biāo)設(shè)備后,目標(biāo)控制器會(huì)啟動(dòng)目標(biāo)設(shè)備狀態(tài)機(jī)根據(jù)當(dāng)前解碼的信息進(jìn)行一系列的控制操作。FIFO類型通道用于大批量的數(shù)據(jù)傳輸,可將本地存儲(chǔ)器塊掛接在該類型的數(shù)據(jù)通道上;寄存器類型接口用于數(shù)據(jù)量小的數(shù)據(jù)傳輸,該接口的后面可以掛接配置寄存器和一些本地功能設(shè)備的控制/狀態(tài)寄存器塊。這樣,PCI總線上的主設(shè)備既可以訪問(wèn)到本地的存儲(chǔ)器設(shè)備也可以訪問(wèn)本地的寄存器。下面從目標(biāo)控制器的數(shù)據(jù)路徑和控制路徑分別進(jìn)行論述。
2控制模塊實(shí)現(xiàn)
目標(biāo)控制器的控制由兩部分完成,命令解碼器和目標(biāo)狀態(tài)機(jī)。命令解碼器解碼來(lái)自PCI總線上的地址命令信息作為目標(biāo)狀態(tài)機(jī)的輸入,狀態(tài)機(jī)鑒于此輸入執(zhí)行相應(yīng)的操作。
?。?)命令解碼器:PCI總線主設(shè)備在地址周期內(nèi)通過(guò)命令數(shù)據(jù)線(C/BE#)設(shè)置不同的編碼可以發(fā)起以下的操作,I/O讀寫(xiě)、存儲(chǔ)器讀寫(xiě)、配置讀寫(xiě)、存儲(chǔ)器行讀/多行讀和存儲(chǔ)器寫(xiě)及使無(wú)效。
(2)目標(biāo)狀態(tài)機(jī)[3]:對(duì)于PCI總線上傳來(lái)的信號(hào),狀態(tài)機(jī)根據(jù)命令解碼器的解碼信息來(lái)控制總線控制器進(jìn)行相應(yīng)的操作。如果地址信息不正確或者本地的設(shè)備正忙于存取數(shù)據(jù),狀態(tài)機(jī)會(huì)向PCI總線上發(fā)起本次操作的主設(shè)備回應(yīng)目標(biāo)丟棄或目標(biāo)重試。目標(biāo)狀態(tài)機(jī)的具體設(shè)計(jì),如圖2所示。
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開(kāi)關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開(kāi)發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車(chē)電子
- 轉(zhuǎn)換器
- 電源管理
- 信號(hào)放大器
評(píng)論