<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 > 設計應用 > TS流的CRC譯碼器設計

TS流的CRC譯碼器設計

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

3.4 接收模塊
接收模塊的主要功能就是檢測到起始位后再在每個(gè)數據的中央位置進(jìn)行采樣,接收完一幀數據后就放到接收FIFO里供校驗模塊使用,其RTL視圖如圖6所示。

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

d.JPG



4 校驗
校驗有兩種方法:一種是按位來(lái)計算的,一種是按字節來(lái)計算的。按位來(lái)計算的占用FPGA邏輯資源比較少,但是相對來(lái)說(shuō)速度會(huì )比較慢,不能適應高速的的要求。按字節來(lái)運算的速度快,但是占用FPGA的邏輯資源多。綜合考慮后,這里使用按字節的算法。
本設計的CRC算法采用直驅動(dòng)表法,由于一個(gè)字節只有8 b,與生成項進(jìn)行異或后最多有256個(gè)結果,先將256個(gè)待查表的值生成MIF文件,放入由FPGA的IP核生成的ROM里,然后用查表法可以達到很快的運算速度,具有很強的實(shí)時(shí)性。其具體算法如下:
crc_reg=crctab[crc_reg[31:24]^buffer[7:0]8'hff]^{crc_reg[23:0],8'h0};
圖7是用model sire對CRC進(jìn)行仿真的結果使用的是PSI表里的一個(gè)section的數據,可以看到,校驗到最后的時(shí)候,crc_reg的值變?yōu)榱?,說(shuō)明數據是正確的。

e.JPG


只要在接收FIFO里有數據,CRC模塊就會(huì )將讀取數據進(jìn)行CRC校驗。而每個(gè)PSI表里都有一個(gè)section_length是記錄在這個(gè)表里面從該字節之后有多個(gè)字節是有效數據的。所以,要將這個(gè)數據提取出來(lái)再加上3就得到了整個(gè)表的長(cháng)度。在CRC校驗的時(shí)候,也要設置一個(gè)計數器,用于記錄處理多少個(gè)數據,并與section_length比較。若這兩個(gè)數相同,則判斷CRC寄存器里的值;若為0,則說(shuō)明這個(gè)數據段是正確的,通過(guò)串口發(fā)0x00給上位機;若CRC寄存器不為0,則說(shuō)明這個(gè)數據斷是錯誤的,FPGA發(fā)送0x01給上位機。
CRC校驗處理的流程圖如圖8所示。

f.JPG



5 結論
本系統經(jīng)過(guò)實(shí)際驗證具有很高的準確性和實(shí)時(shí)性,并且在上位機和FPGA上都進(jìn)行了校驗,可以驗證是否數據在串口傳輸的過(guò)程發(fā)生了錯誤,其FPGA部分可以當作一個(gè)獨立的模塊加入到其他系統中,具有很強的實(shí)時(shí)性。


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

關(guān)鍵詞: CRC TS流 譯碼器

評論


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