基于FPGA的異步串行總線設(shè)計(jì)
發(fā)送消息的過程相對簡單,只需要按照傳輸格式將所要發(fā)送的消息進(jìn)行打包、CRC-8編碼。然后用時(shí)鐘將打包好的數(shù)據(jù)串行打出即可;接收消息相對復(fù)雜一些,為了準(zhǔn)確接收數(shù)據(jù),防止因?yàn)闀r(shí)鐘抖動及串行數(shù)據(jù)傳輸信號衰落而導(dǎo)致的誤碼,接收方要盡可能的靠近每比特?cái)?shù)據(jù)位的中點(diǎn)進(jìn)行采樣,所以在設(shè)計(jì)程序時(shí)利用鎖相環(huán)將采樣時(shí)鐘倍頻到傳輸速率的4倍頻進(jìn)行同步采樣,這樣采樣點(diǎn)更加接近數(shù)據(jù)中點(diǎn),采到的數(shù)據(jù)更真實(shí)串行數(shù)據(jù)接收狀態(tài)機(jī)如圖3所示。本文引用地址:http://www.ex-cimer.com/article/190439.htm
3 功能模塊設(shè)計(jì)
根據(jù)對協(xié)議的分析將整個(gè)串行總線傳輸協(xié)議從功能上劃分為以下幾個(gè)饃塊:發(fā)射模塊、接收模塊、解消息模塊、CRC校驗(yàn)?zāi)K、自檢模塊、控制模塊、ID版本存取模塊和錯(cuò)誤重發(fā)模塊等。模塊關(guān)系圖如圖4所示。
評論