999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

HDLC的DSP與FPGA實現(xiàn)

2010-04-29 00:00:00
電子產(chǎn)品世界 2010年8期

摘要:HDLC(高級數(shù)據(jù)鏈路控制)采用軟件編程與FPGA共同實現(xiàn)的方法具有靈活,速度快,特別適合于DSP+FPGA的數(shù)字硬件平臺的接口設(shè)計。

主題詞:HDLC;FPGA;DSP硬件設(shè)計

引言

HDLC(高級數(shù)據(jù)鏈路控制)廣泛應(yīng)用于數(shù)據(jù)通信領(lǐng)域,是確保數(shù)據(jù)信息可靠互通的重要技術(shù)。實施HDLC的一般方法通常是采用ASIC器件或軟件編程等。

HDLC的ASIC芯片使用簡易,功能針對性強,性能可靠,適合應(yīng)用于特定用途的大批量產(chǎn)品中。但由于HDLC標準的文本較多,ASIC芯片出于專用性的目的難以通用于不同版本,缺乏應(yīng)用靈活性。有的芯片公司還有自己的標準,對HDLC的CRC(循環(huán)冗余碼校驗)序列生成多項式等有不同的規(guī)定。專用于HDLC的ASIC芯片其片內(nèi)數(shù)據(jù)存儲器容量有限,通常只有不多字節(jié)的FIPO(先進先出存儲器)可用。對于某些應(yīng)用來說,當需要擴大數(shù)據(jù)緩存的容量時,只能對ASIC再外接存儲器或其他電路,ASIC的簡單易用性就被抵銷掉了。HDLC的軟件編程方法功能靈活,通過修改程序就可以適用于不同的HDLC應(yīng)用。但程序運行占用處理器資源多,執(zhí)行速度慢,對信號的時延和同步性不易預(yù)測。純軟件HDLC一般只能用于個別路數(shù)的低速信號處理。

FPGA采用硬件技術(shù)處理信號,又可以通過軟件反復(fù)編程使用,能夠兼顧速度和靈活性,并能并行處理多路信號,實時性能能夠預(yù)測和仿真。

DSP采用軟件技術(shù)處理信號,也可以反復(fù)編程使用。DSP、FPGA芯片雖成本略微高于ASIC芯片,但具有貨源暢通、可多次編程使用等優(yōu)點。在中小批量通信產(chǎn)品的設(shè)計生產(chǎn)中,用FPGA和DSP實現(xiàn)HDLC功能是一種值得采用的方法。

HDLC的幀結(jié)構(gòu)和CRC校驗

為了使FPGA的設(shè)計能夠?qū)崿F(xiàn)HDLC的基本功能并能按照各項標準的規(guī)定靈活采用不同的cKC校驗算法,首先看一下HDLC基本的幀結(jié)構(gòu)形式。

HDLC是面向比特的鏈路控制規(guī)程,其鏈路監(jiān)控功能通過一定的比特組合所表示的命令和響應(yīng)來實現(xiàn),這些監(jiān)控比特和信息比特一起以幀的形式傳送。以下是ISO/IEC 3309標準規(guī)定的HDLC的基本幀結(jié)構(gòu)。

其他的HDLc標準也有類似的幀結(jié)構(gòu)。每幀的起始和結(jié)束以“7E”(0111110)做標志,兩個“7E”之間為數(shù)據(jù)段(含地址數(shù)據(jù)、控制數(shù)據(jù)、信息數(shù)據(jù))和幀校驗序列。幀校驗采用CKC算法,對除了插入的“零”以外的所有數(shù)據(jù)進行校驗。為了避免將數(shù)據(jù)中的“7E”誤為標志,在發(fā)送端和接收端要相應(yīng)地對數(shù)據(jù)流和幀校驗序列進行“插零”及“刪零”操作。

用FPGA+DSP實現(xiàn)HDLC功能

對FPGA器件進行功能設(shè)計一股采用的是“Top to Down”(“從頂?shù)降住?的方法,亦即根據(jù)要求的功能先設(shè)計出頂層的原理框圖,該圖通常由若干個功能模塊組成。再把各個模塊細化為子模塊,對較復(fù)雜的設(shè)計還可把各子模塊分成一層層的下級子模塊,各層的功能可以用硬件描述語言或電路圖來實現(xiàn)。

DSP的設(shè)計則是按軟件順序執(zhí)行的方法,主函數(shù)調(diào)用子函數(shù),還可以把子函數(shù)分成下級子函數(shù),目前的DSP設(shè)計軟件主要是用c語言來完成。

HDLC協(xié)議操作由FPGA、DSP共同完成:HDLC接收端:首先由FPGA來收數(shù)據(jù),之后判斷幀頭“7E”及本機地址,如果是發(fā)給本機的數(shù)據(jù),則對后續(xù)數(shù)據(jù)進行判斷,如果有5個連“1”且后一位數(shù)據(jù)為“0”則將其后的一個“0”刪除,刪零后將數(shù)據(jù)存入FIFO中,收到幀尾“7E”時給出收結(jié)束標志;然后由DsP讀收結(jié)束標志,如果標志為“1”讀空FIFO,清標志位,將數(shù)據(jù)內(nèi)容進行CRC校驗。

HDLC發(fā)送端:首先由DSP將數(shù)據(jù)寫入FPGA的FIFO之后,DSP給出標志:FPGA收到標志后、先發(fā)送幀頭“7E”,然后發(fā)送數(shù)據(jù),如果數(shù)據(jù)中有5個連“1”則在其后插入1個“0”,數(shù)據(jù)發(fā)送結(jié)束后發(fā)送幀尾“7E”。

FPGA設(shè)計

FPGA中實現(xiàn)的主要是鏈路層協(xié)議完成HDLC數(shù)據(jù)接口的收發(fā),并完成與DSP的數(shù)據(jù)交互,該電路由接口模塊interface、HDLC數(shù)據(jù)發(fā)送模塊transmitter和HDLC數(shù)據(jù)接收模塊receiver三部分組成。

FPGA接口模塊interface

interface模塊的主要功能是:DSP通過數(shù)據(jù)、地址總線和讀寫信號向FPGA讀寫并行數(shù)據(jù)。

在本例中數(shù)據(jù)總線的寬度取決于所使用的DSP的數(shù)據(jù)位。由于目前DsP處理器的多為64位或32位,而完成數(shù)據(jù)交互使用8位就夠了,因此這里采用8位的數(shù)據(jù)總線cpudata[7_0]。地址總線包括譯碼選通發(fā)送FIFO和接收FIFO的寄存器地址,命令寄存器和狀態(tài)寄存器。

對于DSP來說,F(xiàn)PGA可以看成是一個普通芯片,通過片選CS/、讀寫信號RD/和WR/,就可以選中FPGA并對其進行讀寫操作。

當FPGA需要向DSP傳遞信息時,中斷信號輸出端mterrupt/變?yōu)榈碗娖剑珼SP響應(yīng)后可到FPGA中的狀態(tài)寄存器去讀取詳細的中斷信息并做出相應(yīng)的處理。

FPGA數(shù)據(jù)發(fā)送模塊HDLCSend

HDLC Send模塊的主要功能是:對HDLC產(chǎn)生內(nèi)部數(shù)據(jù)發(fā)送時鐘txclk;鎖存DSP寫入FIFO的發(fā)送數(shù)據(jù)并按指定時序啟動發(fā)送:在發(fā)送數(shù)據(jù)段前加上“7E”起始標志:對發(fā)送的數(shù)據(jù)及CRC計算結(jié)果進行“插零”操作并附上“7E”結(jié)束標志把結(jié)果輸出(見圖1)。

txhdlc模塊由發(fā)送數(shù)據(jù)子模塊、標志數(shù)據(jù)插零子模塊及“7E”發(fā)送等模塊組成。

HDLC的數(shù)據(jù)發(fā)送時鐘tx clk由外部輸入時鐘分頻得到,能以高于比特發(fā)送的速度執(zhí)行對內(nèi)部操作。

待發(fā)送數(shù)據(jù)是由外DSP通過interface模塊寫入指定地址的緩沖存儲器的。在HDLC中,可以選用的緩沖存儲器類型有FIFO存儲器、DPRAM存儲器、移位寄存器等。在本設(shè)計中,發(fā)送數(shù)據(jù)的存儲使用的FIFO存儲器。使用這種寄存器的優(yōu)點是:只對一個FIFO入口地址進行操作,簡化FPGA設(shè)計。DSP向FPGA寫完數(shù)據(jù)后,向狀態(tài)寄存器寫標志,表示數(shù)據(jù)發(fā)完可以發(fā)送。

發(fā)送的數(shù)據(jù)CRC的計算結(jié)果附在數(shù)據(jù)后麗,再經(jīng)“插零”后附上“7E”標志就可輸出。發(fā)送數(shù)據(jù)子模塊監(jiān)視著每一個串行移出的數(shù)據(jù),當發(fā)現(xiàn)數(shù)據(jù)流中出現(xiàn)5個連“1”時,就輸出控制信號If detect/暫停數(shù)據(jù)移位,此時子模塊zero insert向數(shù)據(jù)流插入一個“0”比特。數(shù)據(jù)發(fā)送完畢后,“7E”發(fā)送子模塊發(fā)出“7E”作為結(jié)束標志,同時清除標志位。

FGPA數(shù)據(jù)接收模塊HDLC_Receiver

HDLC Receiver模塊的主要功能是:接收HDLC數(shù)據(jù)和時鐘,并用時鐘采樣數(shù)據(jù):在接收的數(shù)據(jù)流中檢測有無“7E”及本機地址標志,如果有則接收數(shù)據(jù),當檢測到數(shù)據(jù)流中有“1F”信號,并后一個數(shù)據(jù)是“0”時,對數(shù)據(jù)進行“刪零”操作;對經(jīng)“刪零”后的數(shù)據(jù)寫入收FIFO:收到尾“7E”后,置收標志位,向interface模塊發(fā)出rx data ready信號,當DSP通過中斷接收到結(jié)束標志后,讀入數(shù)據(jù),清標志位,檢查CRC校驗值是否正確。

rxhdlc模塊由接收數(shù)據(jù)子模塊rx data、標志檢測子模塊7e detector、數(shù)據(jù)刪零子模塊zero delete等組成。對比HDLC receive模塊和HDLC Send模塊,雖然兩者一些子模塊的功能是相逆的,但原理類似,不再重復(fù)說明。在HDLC Receiver模塊中采用了FIFO來作為HDLC接收數(shù)據(jù)緩存器,因此FPGA內(nèi)部收數(shù)據(jù)和DSP讀數(shù)據(jù)通過各自的讀寫口進行。

FPGA中的接收超時判斷功能

當由于意外情況在總線上出現(xiàn)不完整數(shù)據(jù)時,需對接收數(shù)據(jù)進行超時判斷,已防止在收到幀頭“7E”后長時間未收到后續(xù)數(shù)據(jù)或尾“7E”時,死等數(shù)據(jù),導(dǎo)致錯判,使用的策略是:當收到“7E”及本機地址后,啟動計數(shù)器,計數(shù)時間長于最長幀一倍左右,如果從計時開始到計時結(jié)束未收到“7E”則判超時,重新接收數(shù)據(jù):而如果在計時時間內(nèi)收到“7E”則清零計數(shù)器,將數(shù)據(jù)存入收FIFO。

DSP軟件的內(nèi)容主要包括send模塊和receive模塊和CRC校驗?zāi)K。

DSP功能

DSP中的功能主要分為HDLC接收,HDLC發(fā)送。

DSP中的HDLC接收

Dsp從FPGA接收到完成收標志后,接收數(shù)據(jù),然后清FPGA標志位,將接收到的數(shù)據(jù)進行CRC校驗后解幀,根據(jù)數(shù)據(jù)幀內(nèi)容完成相關(guān)操作。

DSP中的HDLC發(fā)送

DSP將數(shù)據(jù)發(fā)送給FPGA,發(fā)送結(jié)束后,置FPGA發(fā)送完成標志位。DSP完成收數(shù)后還要進行CRC校驗及解幀等操作,這就要根據(jù)具體的協(xié)議進行。

具體實現(xiàn)

根據(jù)上述設(shè)計方法,已成功地實現(xiàn)了HDLC電路的設(shè)計。設(shè)計輸入在Altera公司的Quartus 8.0版本及CCS 3.0的軟件平臺上進行。首先考慮擬設(shè)計的電路需要多少內(nèi)部存儲器、工作速率多少、對外部處理器的接口有何要求等。根據(jù)這些考慮,以電路圖及DSP C語言結(jié)合的方法進行設(shè)計輸入。對于時序電路,主要采用電路圖輸入的方法。

FPGA芯片選用的是Altera公司的ACEX 1K系列。該系列是Altera公司面向通信和消費類數(shù)字產(chǎn)品推出的低功耗、高密度的高性能FpGA集成電路,具有可與ASIC相比擬的價位。DSP使用TI公司TMS320CS416,該芯片集成度高,結(jié)構(gòu)簡單,體積小可靠性高,價格低,可以裝入各種儀器儀表及控制裝置中,易于產(chǎn)品化。設(shè)計出的具有HDLC功能的FPGA芯片已應(yīng)用于導(dǎo)航設(shè)備樣機的有線通訊鏈路中。成功實現(xiàn)了雙向數(shù)據(jù)通信。

結(jié)語

基于軟件編程與FPGA來共同實現(xiàn)HDLC協(xié)議,方法靈活、速度快。適合于DSP+FPGA的數(shù)字硬件平臺的接口設(shè)計,實現(xiàn)后可靠有效。

主站蜘蛛池模板: 一区二区三区成人| 国产91全国探花系列在线播放| 国产精品白浆在线播放| 免费毛片全部不收费的| AV无码无在线观看免费| 少妇人妻无码首页| 亚洲IV视频免费在线光看| 日韩二区三区| 亚洲男女在线| 久久久久人妻精品一区三寸蜜桃| 欧美日韩91| 久久永久免费人妻精品| 国产精品久久久久久久久久98| AV在线麻免费观看网站 | 成人第一页| 国产成人AV大片大片在线播放 | 一级爆乳无码av| 久久精品国产精品青草app| 91午夜福利在线观看| 久久6免费视频| 国产精品一线天| 最新痴汉在线无码AV| 成人免费黄色小视频| 国产二级毛片| 国产va在线观看免费| 久久黄色视频影| 老司国产精品视频91| 性69交片免费看| 国产亚洲精品97AA片在线播放| 成人午夜视频免费看欧美| 欧美亚洲一区二区三区导航| 五月婷婷丁香综合| 日韩在线观看网站| 亚洲国内精品自在自线官| 91在线视频福利| 天天干天天色综合网| YW尤物AV无码国产在线观看| 无遮挡国产高潮视频免费观看| 中文字幕va| 国产乱人伦偷精品视频AAA| 精品成人一区二区三区电影| 国产91丝袜在线观看| 日日拍夜夜操| 久久女人网| 国产91高跟丝袜| 久久精品无码专区免费| 国产精品不卡永久免费| 亚洲精品国产乱码不卡| 国产九九精品视频| 亚洲伦理一区二区| 97视频免费在线观看| 亚洲无码精品在线播放| 亚洲一区精品视频在线| 精品一区二区无码av| 色综合热无码热国产| 九色视频最新网址| 婷婷色一区二区三区| 国产精品视频猛进猛出| 国产成人精品免费视频大全五级 | 永久免费精品视频| 中文字幕1区2区| 欧美另类精品一区二区三区| 色呦呦手机在线精品| 国内精品小视频福利网址| 亚洲日韩精品无码专区| 亚洲日韩高清无码| 国产高潮流白浆视频| 亚洲系列中文字幕一区二区| 国外欧美一区另类中文字幕| 夜夜操狠狠操| 国产成人一区免费观看| 亚洲IV视频免费在线光看| 大陆精大陆国产国语精品1024| 五月综合色婷婷| 国产成人精品无码一区二| 久久91精品牛牛| 亚洲欧美人成人让影院| 亚洲—日韩aV在线| 国产美女久久久久不卡| 日韩成人在线网站| 在线视频97| 欧美一区二区啪啪|