<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>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > HDLC的FPGA實(shí)現方法

HDLC的FPGA實(shí)現方法

作者: 時(shí)間:2012-04-18 來(lái)源:網(wǎng)絡(luò ) 收藏

  7E標志加在發(fā)送數據段的前后,其時(shí)序由tx_timer確定。在發(fā)送啟動(dòng)時(shí),先發(fā)7E再發(fā)數據。

  發(fā)送CRC計算子模塊tx_crc由16個(gè)帶賦能端e的D觸發(fā)器組成,其電路圖見(jiàn)圖4,可用來(lái)按照x16 + x12 + x5 + 1的生成多項式進(jìn)行16位CRC計算。該電路的原理可參看數據通信教科書(shū),此處不再贅述,僅說(shuō)明幾點(diǎn):

  a. 如果要改變CRC的位數,只要改變D觸發(fā)器的數量。

  b. 如果要改變CRC生成多項式,僅需將多項式中非零系數項對應的D觸發(fā)器的輸出與d1信號異或后送至下一個(gè)D觸發(fā)器的輸入。

  c. 通過(guò)給D觸發(fā)器的PRN端或CLRN端置0,就可改變CRC計算的初始值。

  這個(gè)例子可說(shuō)明用設計的CRC電路具有極大的靈活性。

發(fā)送CRC計算子模塊tx

  圖4

  發(fā)送的數據經(jīng)CRC計算并將計算結果附在數據后面,再經(jīng)插零后附上7E標志就可輸出。插零操作由子模塊zero_insert完成。子模塊tx_data監視著(zhù)每一個(gè)串行移出的數據,當發(fā)現數據流中出現五?quot;1時(shí),就輸出控制信號1f_detect/ 暫停數據移位,此時(shí)子模塊zero_insert向數據流插入一個(gè)0比特。

  子模塊tx_data中存儲著(zhù)待發(fā)送數據的比特長(cháng)度值,并隨時(shí)和已發(fā)送數據的比特長(cháng)度值比較。當出現兩者相等的情況時(shí),判定為數據發(fā)送完畢,子模塊tx_crc停止CRC計算并把計算結果輸出。再經(jīng)過(guò)16個(gè)數據時(shí)鐘后,子模塊7e_generator發(fā)出7E作為結束標志,同時(shí)向接口模塊interface發(fā)出tx_data_empty信號表示數據發(fā)送結束。

  3.3 數據接收模塊receiver

  receiver模塊的主要功能是:產(chǎn)生與本路接收數據時(shí)鐘同步的工作時(shí)鐘;在接收的數據流中檢測有無(wú)7E標志;當檢測到數據流中有1F信號時(shí),對數據進(jìn)行刪零操作;對經(jīng)刪零后的數據進(jìn)行CRC校驗;把接收到的數據進(jìn)行串/并轉換并存入雙端口RAM;當接收到結束標志后,檢查CRC校驗值是否正確,向interface模塊發(fā)出rx_data_ready信號。

  receiver模塊由接收定時(shí)子模塊rx_timer、接收數據子模塊rx_data、標志檢測子模塊7e_detector、數據刪零子模塊zero_delete、接收CRC校驗子模塊 rx_crc等組成,見(jiàn)圖5。

  對比receiver模塊和transmitter模塊,雖然兩者一些子模塊的功能是相逆的,但其原理是類(lèi)似的,因此不再重復說(shuō)明。

  在receiver模塊中采用了雙端口RAM來(lái)作為接收數據緩存器,因此內部向雙端口RAM寫(xiě)入數據和FPGA外部向雙端口RAM讀出數據可以分別通過(guò)兩個(gè)端口獨立的數據地址總線(xiàn)同時(shí)進(jìn)行。

  

HDLC數據接收模塊receiver

圖5

  限于篇幅,以上所述僅為設計HDLC電路的大致框架,許多細節已被省略了。

  4 應用實(shí)例

  根據上述設計方法,已成功地在可編程邏輯芯片上實(shí)現了多路HDLC的設計。

  設計輸入在A(yíng)ltera公司的MAX+plus II[4] 10.0版本的軟件平臺上進(jìn)行。首先考慮擬設計的電路有多少路HDLC收發(fā)器、需要多少內部存儲器、工作速率多少、對外部處理器的接口有何要求等。根據這些考慮,以電路圖和AHDL語(yǔ)言結合的方法進(jìn)行設計輸入。對于時(shí)序電路,主要采用電路圖輸入的方法;對于地址譯碼等功能電路,采用AHDL語(yǔ)言描述;對于存儲器、鎖存器及移位寄存器等,盡量采用MAX+plus II中LPM(參數化模塊庫)提供的模塊來(lái)實(shí)現。全部設計輸入完成后,對設計進(jìn)行編譯、仿真。在波形仿真器內給定輸入信號,檢查輸出的波形是否符合設計預期。反復多次進(jìn)行修改,確認無(wú)誤后可將設計結果下載到FPGA芯片。

  FPGA芯片選用的是Altera公司的ACEX 1K系列[5]。該系列是Altera公司面向通信和消費類(lèi)數字產(chǎn)品推出的低功耗、高密度的高性能FPGA集成電路,具有可與ASIC相比擬的價(jià)位。ACEX 1K系列器件內部采用基于LUT的架構,最大邏輯門(mén)數為10萬(wàn)門(mén);可提供的片內存儲器最大為49152比特;最小時(shí)延僅數納秒,實(shí)際電路總時(shí)延在數十納秒左右;能夠滿(mǎn)足一般HDLC的要求。ACEX 1K系列FPGA器件工作電壓為2.5伏,I/O接口電壓可選為2.5伏或3.3伏,配置芯片可選Altera公司的EPC1型。

  設計出的具有多路HDLC功能的FPGA芯片已應用于船舶AIS(Automatic Identification System,自動(dòng)識別系統)樣機的無(wú)線(xiàn)數據通信鏈路中,成功實(shí)現了雙向數據通信。

  5 結束語(yǔ)

  FPGA提供了一種取代ASIC芯片的選擇,以上所述僅是用FPGA實(shí)現HDLC功能的一個(gè)簡(jiǎn)單介紹。在通信產(chǎn)品的設計中,如果原已使用了可編程邏輯芯片來(lái)實(shí)現某些功能的話(huà),只要改用更大容量的FPGA芯片,就可以將類(lèi)似于HDLC這樣的功能都集成進(jìn)去。如使用Altera 公司的Quartus II軟件來(lái)進(jìn)行同類(lèi)設計,則功能更強大,更能支持Top to Down的設計方法,并且支持Cyclone等大規模FPGA芯片。此外,Xilinx公司新推出90納米工藝的Spartan-3系列低成本FPGA芯片,也可作為取代ASIC的一種選擇。顯然,FPGA在通信技術(shù)中的應用十分值得重視,并正受到越來(lái)越多的關(guān)注。(2003.11)

  參考文獻

  1 張德民. 數據通信,P.194. 北京:科學(xué)技術(shù)文獻出版社,1997.8

  2 ISO/IEC 3309: Information technology-Telecommunications and information exchange between systems-High-level data link control (HDLC) procedures-Frame structure, P.4. Switzerland: International Electrotechnical Commission, Jun 2002

  3 Zarlink Semiconductor. MT8952B HDLC Protocol Controller, P.3-64. March 1997

  4 Altera Corporation. MAX+plus II, Version 10.0, Sep 2000

  5 Altera Corporation. ACEX 1K Programmable Logic Family Data Sheet, Altera Digital Library,Version 3,2001


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: HDLC FPGA 實(shí)現方法

評論


相關(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>