<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > PCI總線(xiàn)至UTOPIA接口控制的CPLD設計實(shí)現

PCI總線(xiàn)至UTOPIA接口控制的CPLD設計實(shí)現

作者:■解放軍理工大學(xué)通信工程學(xué)院 劉日方 聶景楠 時(shí)間:2004-11-02 來(lái)源:電子設計應用2003年第6期 收藏

摘   要: 本文采用Altera的實(shí)現了至UTOPIA接口的邏輯轉換控制,為低成本實(shí)現ATM終端奠定了基礎。
關(guān)鍵詞:  ;   ;
引言 
EDA技術(shù)憑借其高速、方便等特點(diǎn)而被廣泛應用于通信領(lǐng)域。本文采用Altera的實(shí)現了至UTOPIA接口的邏輯轉換控制,該設計再配上ATM線(xiàn)路成幀部件即可成為基于個(gè)人電腦的ATM終端設備,從而改善因成本較高、市場(chǎng)需求不足等原因而制約ATM網(wǎng)絡(luò )終端設備發(fā)展的局面。雖然目前有許多專(zhuān)用芯片都可完成PCI接口的控制功能,但從節省成本,提高效率,更緊密地與支持UTOPIA2接口的線(xiàn)路芯片相配合考慮,我們將采用可編程邏輯器件設計這一轉換控制邏輯。

本文引用地址:http://dyxdggzs.com/article/3673.htm

圖1  PCI讀操作時(shí)序

圖2 PCI寫(xiě)操作時(shí)序

圖3   系統總體框圖

圖4  PCI讀時(shí)序仿真

設計需求
PCI接口要求
PCI總線(xiàn)上的基本傳輸機制是突發(fā)分組傳輸,一個(gè)突發(fā)分組由一個(gè)地址周期和一個(gè)(或多個(gè))數據周期組成。PCI支持存儲空間和I/O空間的突發(fā)傳輸,它所有的數據傳輸基本上都是由三條信號線(xiàn)控制的:FRAME#、IRDY#和TRDY#。
PCI總線(xiàn)的讀時(shí)序如圖1所示。當FRAME#信號有效時(shí),讀傳輸開(kāi)始,在A(yíng)D[31.. 0]總線(xiàn)上保持有效的地址信號,同時(shí)C/BE#[3..0]上包含有效的總線(xiàn)命令。然后主設備停止驅動(dòng)AD[31..0]總線(xiàn),置IRDY#為低,表明主設備準備好接收數據。第一個(gè)數據節拍產(chǎn)生于第三個(gè)時(shí)鐘周期。第二個(gè)時(shí)鐘周期是總線(xiàn)轉換周期,目的是為了避免主設備和從設備因競爭總線(xiàn)發(fā)生沖突。當主設備使FRAME#信號無(wú)效,表示當前是最后一個(gè)數據節拍。在數據節拍里,C/BE#[3..0]總線(xiàn)上為字節允許信號。
DEVSEL#信號和TRDY#信號是由從設備提供的,但必須保證TRDY#信號在DEVSEL#信號之后出現。數據的真正傳輸是在IRDY#和TRDY#信號同時(shí)有效的時(shí)鐘上升沿進(jìn)行的,這兩個(gè)信號中的一個(gè)無(wú)效表示插入等待周期,此時(shí)不進(jìn)行數據傳輸。例如在時(shí)鐘7處,盡管是最后一個(gè)數據周期,但由于IRDY#無(wú)效,FRAME#不能變?yōu)闊o(wú)效,只有在時(shí)鐘8處IRDY#有效后,FRAME#信號才能撤消。
PCI總線(xiàn)上的寫(xiě)操作與讀操作相類(lèi)似,如圖2。FRAME#信號有效表示地址周期的開(kāi)始。主設備在時(shí)鐘5處因撤消了IRDY#而插入等待周期,但此時(shí)字節使能信號不得延遲發(fā)送。從設備在時(shí)鐘5、時(shí)鐘6和時(shí)鐘7插入三個(gè)等待周期。AD[31..0]總線(xiàn)在地址周期后沒(méi)有像讀操作那樣插入轉換周期,這是因為地址和數據都是由主設備發(fā)出的。

圖5  PCI 寫(xiě)時(shí)序仿真

圖6  ADC1仿真(一)

圖7  ADC2時(shí)序仿真


PCI總線(xiàn)支持突發(fā)式的數據傳輸模式,所以在數據周期有字節使能信號與之對應。信號CBE#[3..0]在數據期表示字節使能。32bit的數據寬度分為4個(gè)字節,CBE#[3..0]信號上低電平的位表示對應字節在這個(gè)數據期傳送的是有效數據。協(xié)議建議,有效字節出現在自然位。
UTOPIA2協(xié)議接口要求
UTOPIA2協(xié)議定義了一種PHY層和ATM層之間的接口模式。在其level2的補充中允許系統工作頻率為33MHz。這樣就簡(jiǎn)化了PCI總線(xiàn)上面ATM層的設計。
UTOPIA2接口分為發(fā)送接口和接收接口。在發(fā)送接口處,數據流從ATM層流向PHY層;接收接口處,數據流從PHY層流向ATM層,兩個(gè)接口都由ATM層控制。發(fā)送接口的數據由TXDATA[8..0]傳送,TXSOC有效表示正在發(fā)送信元的頭字節,只有TXENB*有效時(shí)PHY層才接收數據。
TXFULL*/TXCLAV由PHY層驅動(dòng)。以字節為單位傳輸時(shí),TXFULL*有效表示PHY在4個(gè)寫(xiě)周期之后將不再接收數據;以信元為單位傳輸時(shí),TXCLAV無(wú)效表示在當前信元發(fā)送完成之后PHY將不再接收新的信元。接收接口主要由RXDATA[8..0]、RXENB*和RXEMPTY*/RXCLAV組成,它們之間的邏輯關(guān)系和發(fā)送接口類(lèi)似。

設計實(shí)現
邏輯設計
適配卡的數據傳輸部分的功能是提供PCI接口的數據傳輸控制,同時(shí)實(shí)現UTOPIA2接口的數據傳輸控制,如圖3所示。
設計實(shí)現主要包括三個(gè)主要部分:內部數據緩存部分、PCI接口數據控制部分和UTOPIA2接口數據控制部分。發(fā)送數據在PCI控制部分的控制下送入數據緩存區,又在UTOPIA2控制模塊的控制下送入ATM成幀器,通過(guò)線(xiàn)路輸出;接收數據由ATM成幀器送入數據緩存區,在PCI邏輯控制下讀入主處理機。
兩個(gè)FIFO組成系統的第一部分,由它們負責對數據的緩存。其中下行FIFO緩存從PC到ATM網(wǎng)絡(luò )的數據,反向數據由上行FIFO緩存。器件選用IDT公司的IDT72T1895。芯片容量128K,數據寬度9bit,最高工作頻率可達225MHz,符合系統要求。這里利用的是其基本的先入先出功能,兩端口采取異步工作模式。
PCI接口邏輯模塊是系統的第二部分。它負責與PCI總線(xiàn)上的控制信號交互,同時(shí)分別控制下行FIFO的數據寫(xiě)入和上行FIFO 的數據讀出。
因為PCI總線(xiàn)定義的數據寬度是32bit,的數據寬度是8bit,所以需要寬度匹配,使PCI送來(lái)的32bit寬度數據以8bit寬度串入緩存,反向流動(dòng)的數據完成相反的變換。這一過(guò)程由該模塊中的并/串變換單元完成。并/串變換單元邏輯上由8個(gè)74194移位寄存器組成。把32bit寬的PCI數據分為4個(gè)字節,每個(gè)字節對應位占用一個(gè)194,4個(gè)字節復用8個(gè)194。194的時(shí)鐘頻率是總線(xiàn)頻率的4倍,即132MHz,這樣才能保證數據不會(huì )丟失。
UTOPIA2接口邏輯模塊是系統的第三部分。它由ADC1和ADC2兩個(gè)子單元組成。ADC1實(shí)現UTOPIA2接口的發(fā)送數據邏輯,同時(shí)控制數據從下行FIFO讀出。ADC2實(shí)現UTOPIA2接口的接收數據邏輯,并控制數據寫(xiě)入上行FIFO。
時(shí)序驗證
數據傳輸控制的設計環(huán)境是Altera公司的MAXPLUSⅡ,器件選用MAX7000E系列的EPM7128ELC84-7。
首先對時(shí)序仿真中用到的系統內部信號進(jìn)行說(shuō)明:
wen:FIFO寫(xiě)數據端口使能,低電平允許數據寫(xiě)入FIFO。
ren:FIFO讀數據端口使能,低電平允許數據讀出FIFO。
pae:低電平表示FIFO空。
paf:低電平表示FIFO滿(mǎn)。
EREN: 所選用的FIFO芯片的輸出信號提示。它與數據是完全同步的。
SHUJU:一組輔助信號,模擬數據的輸出,255是無(wú)效值。
count:ADC1內部變量,表示信元已傳送的字節數。
(1)PCI接口數據傳輸部分仿真
圖4是讀操作時(shí)序仿真圖。16ns處是地址期,80ns是第一個(gè)數據期。144ns處PDC發(fā)現irdy*無(wú)效,立即使ren置高(使上行FIFO停止輸出)。176ns是最后一個(gè)數據期。
PCI總線(xiàn)的寫(xiě)時(shí)序仿真見(jiàn)圖5。與讀時(shí)序類(lèi)似,240ns處是地址期,304ns時(shí)是第一個(gè)數據期。由于在336ns時(shí)下行FIFO滿(mǎn)(paf=0),所以最后一個(gè)數據期在400ns時(shí)刻出現。
從時(shí)序圖可以看到,PCI接口進(jìn)行數據傳輸時(shí),兩個(gè)FIFO是互斥的,不會(huì )出現干擾。
(2)UTOPIA2接口時(shí)序
圖6是對數據發(fā)送部分的仿真。
時(shí)鐘45ns處,ADC1發(fā)現TXCLAV有效,此時(shí)FIFO可讀出,所以置ren為“0”。時(shí)鐘75ns處FIFO發(fā)現這個(gè)變化,開(kāi)始傳數,ADC1也在這個(gè)時(shí)候使TXENB*有效。在時(shí)鐘285ns處,FIFO通過(guò)flag告訴ADC1不能再輸出數據,ADC1立即使ren為“1”,但是數據“7”已經(jīng)上線(xiàn)路,所以TXENB*會(huì )一直保持有效,直到下一個(gè)時(shí)鐘上升沿(315ns)。
圖7顯示了在UTOPIA2接口,ADC2控制信元接收開(kāi)始和結束的時(shí)序關(guān)系。
需要說(shuō)明的是:從時(shí)序圖可以看到,在UTOPIA2接口設計實(shí)現時(shí),所有接收數據的時(shí)序器件都應該在系統時(shí)鐘的下降沿采集數據,比如發(fā)送操作中的PHY層設備、接收操作中的上行FIFO。如果它們的時(shí)鐘是系統時(shí)鐘取反,則可以統一定義在上升沿采集數據。

結語(yǔ)
本文介紹了一個(gè)把EDA技術(shù)運用到通信領(lǐng)域的一個(gè)實(shí)例,這個(gè)設計利用CPLD實(shí)現了PCI控制以及PCI接口至UTOPIA2接口的轉換,為高效、低成本地使PC成為ATM網(wǎng)絡(luò )終端設備奠定了基礎。從時(shí)序圖看,完全符合設計需求。這種利用EDA技術(shù)實(shí)現ATM網(wǎng)絡(luò )終端設計簡(jiǎn)單、成本不高、靈活性強,并且可以很方便地移植到其它可編程器件上,具有較強的實(shí)用價(jià)值和經(jīng)濟價(jià)值?!?/p>

參考文獻
1  UTOPIA Level2,Version1.0
2  PCI Local Bus Specification Revision2.1
3  PC常用技術(shù)大全. SYBEX,Inc. 電子工業(yè)出版社



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>