咸陽市公安消防支隊(duì) 姚 嫚
Hotlink技術(shù)是CYPRESS公司提供的一種高速背板串行數(shù)據(jù)傳輸技術(shù),傳輸碼率為150Mbit/S—400Mbit/S,符合DVB-ASI、ATM、SMPTE-259M以及ESCON等標(biāo)準(zhǔn),其產(chǎn)品可用于構(gòu)建上述標(biāo)準(zhǔn)的通訊產(chǎn)品物理層,支持同軸電纜、雙絞線以及光纖接口,傳輸距離與傳輸介質(zhì)有關(guān),例如Hotlink系列中應(yīng)用比較廣泛的CY7B923/933收發(fā)器,在不加任何補(bǔ)償電路、330Mbit/S傳輸速率的情況下,使用50歐姆同軸電纜最大傳輸距離為35m,使用75歐姆同軸電纜最大傳輸距離可達(dá)150m,若使用光纖傳輸則可以達(dá)到數(shù)十千米以上或更遠(yuǎn)距離[1]。由于具有速度高、支持多種傳輸介質(zhì)的優(yōu)點(diǎn),目前CYPRESS公司的Hotlink系列產(chǎn)品在高速圖像傳輸[2]、光纖通信[1]、拖曳陣聲納數(shù)字傳輸[3,4]等領(lǐng)域得到廣泛應(yīng)用。前述的HOTLink產(chǎn)品方案多為專用方案,使用HOTLink技術(shù)傳輸?shù)臄?shù)據(jù)無法直接用計(jì)算機(jī)進(jìn)行處理及收發(fā),而對(duì)傳輸數(shù)據(jù)的格式轉(zhuǎn)換等處理均采用專用硬件完成,不僅成本高而且靈活性較差。本文使用應(yīng)用比較廣泛的HOTLink收發(fā)器CY7B923/933以及PCI橋芯片PCI9054設(shè)計(jì)了一種基于PCI總線的Hotlink通訊卡,支持光纖和銅纜兩種接口,通過PCI總線計(jì)算機(jī)可以直接對(duì)傳輸數(shù)據(jù)進(jìn)行處理及收發(fā),利用通用計(jì)算機(jī)靈活的優(yōu)勢(shì)取代專用硬件完成傳輸數(shù)據(jù)的協(xié)議轉(zhuǎn)換、格式轉(zhuǎn)換、記錄等操作,并且還可為HOTLink產(chǎn)品的前期研發(fā)提供測(cè)試及驗(yàn)證服務(wù)。
CY7B923/933收發(fā)器是HOTLink系列產(chǎn)品中應(yīng)用比較廣泛的產(chǎn)品,本文所設(shè)計(jì)的HOTLink通訊卡分別使用了CY7B923和CY7B933作為HOTLink的發(fā)送芯片和接收芯片,通過板上跳線可選擇銅纜和光纖兩種接口。通訊卡的總體結(jié)構(gòu)如圖1所示,分為發(fā)送模塊、接收模塊以及PCI9054三個(gè)部分。
考慮到CY7B923/933收發(fā)器所能支持的最大傳輸速度為40MByte/s,而PCI9054所支持的最高時(shí)鐘頻率為33MHz,如果采用9位單FIFO的結(jié)構(gòu),PCI總線的一個(gè)時(shí)鐘周期僅能傳送一個(gè)字節(jié)的數(shù)據(jù)/協(xié)議信息,理論上的最高傳輸速率僅為33MByte/s,將會(huì)造成數(shù)據(jù)溢出,考慮到不同場(chǎng)合的應(yīng)用需求,發(fā)送模塊和接收模塊均采用了雙9位FIFO并聯(lián)的模式,即一個(gè)時(shí)鐘周期可以傳輸兩個(gè)字節(jié)的數(shù)據(jù)/協(xié)議信息,位15-位0為雙字節(jié)數(shù)據(jù),位17和位16分別表示高字節(jié)和低字節(jié)的內(nèi)容類型,為1表示內(nèi)容為協(xié)議信息,為0低表示內(nèi)容為數(shù)據(jù)。相應(yīng)的PCI9054的本地總線模式采用了32bit位寬模式。在CY7B923的數(shù)據(jù)手冊(cè)中指出外部時(shí)鐘源決定了數(shù)據(jù)傳輸?shù)乃俣龋⑶以贑Y7B933的數(shù)據(jù)手冊(cè)中還特別要求外部時(shí)鐘源頻率誤差不得超過±0.1%。為了配合不同速率的數(shù)據(jù)收發(fā)應(yīng)用,使用了直接數(shù)字頻率合成芯片AD9850來實(shí)現(xiàn)16MHz-40MHz的可變時(shí)鐘輸出,其精度為±1/232。

圖1 總體結(jié)構(gòu)

圖2 數(shù)據(jù)發(fā)送模塊

圖3 數(shù)據(jù)接收模塊

圖4 數(shù)據(jù)發(fā)送模塊
發(fā)送模塊的硬件框圖如圖2所示。FIFO由兩片IDT72V2111并聯(lián)組成,總?cè)萘繛?24288*18bit,其數(shù)據(jù)輸入端掛接到本地?cái)?shù)據(jù)總線上,本地地址總線和讀寫控制信號(hào)接入CPLD,即CPLD在FIFO未滿情況下允許PCI總線透過本地?cái)?shù)據(jù)總線對(duì)FIFO寫入數(shù)據(jù)。FIFO的數(shù)據(jù)輸出端以及CY7B923數(shù)據(jù)輸入、ENN、ENA、CKW等發(fā)送控制信號(hào)也接入CPLD,即CPLD在FIFO非空的情況下讀取FIFO內(nèi)的數(shù)據(jù),并產(chǎn)生符合CY7B923發(fā)送控制邏輯的時(shí)序信號(hào),將FIFO內(nèi)的數(shù)據(jù)發(fā)送出去,直至FIFO變?yōu)榭諣顟B(tài)。由于FIFO為兩片并聯(lián),因此發(fā)送時(shí)需要順序讀取FIFO內(nèi)的數(shù)據(jù),時(shí)序控制由CPLD完成。
接收模塊的硬件框圖見圖3。同接收模塊一樣,F(xiàn)IFO由兩片IDT72V2111并聯(lián)組成,數(shù)據(jù)輸出端掛接到本地?cái)?shù)據(jù)總線上,本地地址總線和讀寫控制信號(hào)接入CPLD,即CPLD在FIFO非空的情況下允許PCI總線透過本地?cái)?shù)據(jù)總線對(duì)FIFO內(nèi)數(shù)據(jù)進(jìn)行讀取,直至FIFO變?yōu)榭諣顟B(tài)。FIFO的數(shù)據(jù)輸入端、寫控制以及CY7B933的數(shù)據(jù)輸出、RVS、RDY、SC/D、RF等接收控制信號(hào)均接入CPLD,即FIFO在未滿狀態(tài)下允許CY7B933在CPLD的控制下將接收到的數(shù)據(jù)依次寫入兩片F(xiàn)IFO中,直至FIFO變?yōu)闈M狀態(tài)。在編碼工作模式時(shí),為了使CY7B933能夠在高速的串行數(shù)據(jù)流中正確的恢復(fù)出傳數(shù)據(jù),需要外部控制器根據(jù)RVS(接收數(shù)據(jù)錯(cuò)誤指示)的狀態(tài)來控制CY7B933所內(nèi)置成幀器的啟動(dòng),根據(jù)CY7B933的數(shù)據(jù)手冊(cè),當(dāng)接收到的連續(xù)64個(gè)數(shù)據(jù)中出現(xiàn)16次數(shù)據(jù)錯(cuò)誤即認(rèn)為數(shù)據(jù)失步,此時(shí)外部控制器應(yīng)該將RF置為高,使能內(nèi)部成幀器,數(shù)據(jù)同步后,CY7B923的RDY將會(huì)變低,表示同步完成,進(jìn)入數(shù)據(jù)接收狀態(tài)。上述邏輯也由CPLD完成。
PCI9054是PLX公司生產(chǎn)的PCI橋芯片,符合PCI總線規(guī)范2.2版,本地總線針對(duì)不同的處理器具有M、C、J三種模式,根據(jù)發(fā)送模塊及接收模塊的硬件接口及速度的要求,選擇了C模式,即地址總線和數(shù)據(jù)總線獨(dú)立,硬件結(jié)構(gòu)見圖4。在通訊卡收發(fā)數(shù)據(jù)時(shí),PCI9054[5]作為本地總線的主處理器,對(duì)接收模塊和發(fā)送模塊的FIFO分別進(jìn)行讀操作和寫操作,讀操作和寫操作的邏輯握手信號(hào)分別有數(shù)據(jù)接收模塊和發(fā)送模塊的CPLD完成。本地總線控制仲裁用于本地總線控制權(quán)的裁定,由于通訊卡只有一個(gè)本地主機(jī)—PCI9054,因此該仲裁器使用了一片D觸發(fā)器,即PCI9054發(fā)出請(qǐng)求信號(hào)后,在下一個(gè)本地時(shí)鐘周期,仲裁器立即允許9054取得本地總線控制權(quán)。EEPROM用于系統(tǒng)啟動(dòng)時(shí)PCI9054內(nèi)部寄存器的初始化,即當(dāng)計(jì)算機(jī)系統(tǒng)啟動(dòng)時(shí),9054自動(dòng)加載EEPROM內(nèi)容,初始化9054并向操作系統(tǒng)申請(qǐng)地址空間以及中斷資源。根據(jù)PCI9054數(shù)據(jù)手冊(cè)對(duì)EEPROM的要求及兼容列表,選擇了ATMEL公司的AT93C66A,其容量為4Kbit。
本文給出了一種基于PCI總線的HOTLink通訊卡的設(shè)計(jì)方案,根據(jù)方案所開發(fā)的HOTLink通訊卡采用了與PCI總線兼容的PC104-PLUS總線,與一塊通用的PC104主板構(gòu)成了一個(gè)數(shù)據(jù)記錄儀,成功應(yīng)用于某型號(hào)裝備的數(shù)據(jù)記錄系統(tǒng)中,采用低成本的銅纜以200Mbps的速率進(jìn)行傳輸,可靠距離可達(dá)20米,若使用光纜接口,距離可達(dá)1km。借助于靈活的通用計(jì)算機(jī)技術(shù),本文所設(shè)計(jì)的HOTLink通訊卡除了作為數(shù)據(jù)采集外,還可以用作協(xié)議轉(zhuǎn)換(例如HOTLink與以太網(wǎng)互轉(zhuǎn))、HOTLink節(jié)點(diǎn)控制,HOTLink產(chǎn)品開發(fā)及驗(yàn)證。
[1]高進(jìn),謝艷,覃宗厚.基于FPGA的CY7B923/933復(fù)用/解復(fù)用器在光纖通信中的應(yīng)用[J].光通信技術(shù),2007,31(3):40-41.
[2]向冰.高速圖像串行總線傳輸[J].現(xiàn)代電子技術(shù),2006,29(24):97-100.
[3]馮師軍,李啟虎,孫長(zhǎng)瑜.拖線陣聲納數(shù)字式水下數(shù)據(jù)高速傳輸?shù)脑O(shè)計(jì)[J].聲學(xué)技術(shù),2007,26(3):362-366.
[4]包玉華,鄭劍鋒,馮師軍,蔣飚,孫長(zhǎng)瑜.HOTLinkTM高速串口至以太網(wǎng)的聲納數(shù)據(jù)傳輸模塊設(shè)計(jì)[J].聲學(xué)技術(shù),2003,2:369-370.
[5]朱惠靜.PCI9054及其在高速數(shù)據(jù)采集系統(tǒng)中的應(yīng)用[J].國(guó)外電子測(cè)量技術(shù),2008,27(2):72-74.