基于1553B總線協(xié)議的解碼器設(shè)計(jì)和FPGA實(shí)現(xiàn)
狀態(tài)機(jī)模塊是要正確地協(xié)調(diào)工作同步頭檢出模塊和數(shù)據(jù)處理模塊,如圖8所示狀態(tài)機(jī)模塊的狀態(tài)轉(zhuǎn)移圖。當(dāng)狀態(tài)機(jī)被使能時(shí),說明1553B總線數(shù)據(jù)來(lái)臨,此時(shí)狀態(tài)機(jī)產(chǎn)生SyncV end信號(hào)告訴同步頭檢出模塊開始工作。當(dāng)同步頭檢出模塊工作結(jié)束時(shí),產(chǎn)生Sync ready信號(hào),告訴狀態(tài)機(jī)要開啟數(shù)據(jù)處理模快。當(dāng)數(shù)據(jù)處理模塊工作到一定時(shí)間時(shí)會(huì)產(chǎn)生一個(gè)sync head信號(hào),這個(gè)信號(hào)的意義是要讓狀態(tài)機(jī)告訴同步頭檢出模塊開始檢測(cè)下一個(gè)字的同步頭。而此時(shí)數(shù)據(jù)處理模塊還沒有工作完,只有當(dāng)數(shù)據(jù)處理模塊產(chǎn)生finish信號(hào)時(shí),才表示數(shù)據(jù)處理模塊工作完成,告訴狀態(tài)機(jī)關(guān)閉數(shù)據(jù)處理模塊。圖9所示是狀態(tài)機(jī)頂層圖。本文引用地址:http://m.butianyuan.cn/article/191237.htm
在QuartuslI中的原理圖輸入界面中,將以上各模塊正確地連接在一起,如圖10所示為1553B總線的manchesterII型碼解碼器的頂層設(shè)計(jì)原理圖。
3 時(shí)序約束與驗(yàn)證
時(shí)序約束是FPGA設(shè)計(jì)中非常重要的環(huán)節(jié),只有建立了合理的時(shí)序約束,設(shè)計(jì)才能正常地工作。如今的FPGA中一般都有全銅層的全局時(shí)鐘驅(qū)動(dòng)網(wǎng)絡(luò),本設(shè)計(jì)中16MHz的時(shí)鐘設(shè)置成全局時(shí)鐘,可以有效地避免這些時(shí)鐘信號(hào)到達(dá)各寄存器時(shí)鐘短的時(shí)鐘偏斜。將時(shí)鐘的最高頻率設(shè)置成16.8MHz。圖11所示為解碼器的仿真時(shí)序圖,解碼器在一個(gè)字周期之后,解碼出數(shù)據(jù)為1110111011111011。
文章詳細(xì)介紹了一種利用FPGA實(shí)現(xiàn)的1553B總線用的ManchesterlI型碼解碼器,文章給出了解碼器各模塊的功能和實(shí)現(xiàn)方法,最后給出了頂層設(shè)計(jì)原理圖。給出的仿真時(shí)序圖證明這是一種可靠的實(shí)現(xiàn)方法。
評(píng)論