1553B總線中曼徹斯特編解碼器的設(shè)計(jì)
2.1 編碼過(guò)程
編碼過(guò)程如下:
(1)檢測(cè)編碼周期是否開(kāi)始,編碼周期開(kāi)始后將同步頭類型、16位并行數(shù)據(jù)存儲(chǔ)到內(nèi)部寄存器中,與此同時(shí)計(jì)數(shù)器cnt開(kāi)始計(jì)數(shù)。
(2)在計(jì)數(shù)器cnt的控制下通過(guò)碼型生成器發(fā)出同步頭、數(shù)據(jù)位、奇偶校驗(yàn)位。
(3)在當(dāng)前字的曼徹斯特碼發(fā)送完成后回到過(guò)程(1)等待發(fā)送下一個(gè)字
2.2 端口說(shuō)明
rst_n為異步復(fù)位信號(hào);clk為系統(tǒng)時(shí)鐘,頻率為信息傳輸速率的12倍;enc_trigger(輸入,高有效)的編碼開(kāi)始的觸發(fā)信號(hào);enc_csw(輸
入,高有效)表示要發(fā)送的字為命令字或狀態(tài)字;enc_dw(輸入,高有效)表示要發(fā)送的字為數(shù)據(jù)字;enc_data(輸入)表示16位要發(fā)送的并行數(shù)據(jù);tx_data_p(輸出)表示發(fā)出的曼徹斯特原碼;tx_data_n(輸出)表示發(fā)出的曼徹斯特反碼。
2.3 子模塊說(shuō)明
(1)6分頻電路
將系統(tǒng)時(shí)鐘6分頻輸出占空比為1/6的編碼時(shí)鐘使能信號(hào)enc_clk_en,該信號(hào)的頻率為信息傳輸速率的2倍,其他3個(gè)模塊只有在采樣到該信號(hào)高電平后才會(huì)觸發(fā)。在復(fù)雜時(shí)序電路設(shè)計(jì)中通過(guò)引入時(shí)鐘使能信號(hào)可減少設(shè)計(jì)中的時(shí)鐘信號(hào),提高電路的可靠性。
(2)保持寄存器
在enc_clk_en有效且采樣到enc_trigger為1時(shí),將enc_csw,enc_dw,enc_data存入內(nèi)部寄存器csw_reg,dw_reg,data_reg中。
(3)計(jì)數(shù)器
在enc_clk_en有效時(shí)采樣到enc_trigger為1時(shí),將計(jì)數(shù)使能信號(hào)置為1,并在其控制下開(kāi)始計(jì)數(shù),計(jì)數(shù)范圍為0~39。
(4)碼型生成器
碼型生成器通過(guò)對(duì)16位并行數(shù)據(jù)data_reg做同或運(yùn)算產(chǎn)生奇偶校驗(yàn)結(jié)果。在計(jì)數(shù)器cnt的控制下發(fā)送出曼徹斯特碼。發(fā)送過(guò)程如下(以tx_data_p說(shuō)明):
cnt(0~5):根據(jù)同步頭類型,依次發(fā)送111000(csw_reg有效)或000111(dw_reg有效)。
cnt(6~37):發(fā)送數(shù)據(jù)位,在碼元前半個(gè)周期發(fā)送原碼,后半個(gè)周期發(fā)出反碼。
cnt(38~39):發(fā)送奇偶校驗(yàn)位,計(jì)數(shù)到38時(shí),發(fā)送奇偶校驗(yàn)位原碼,39時(shí)發(fā)送其反碼。
3 曼徹斯特解碼器的設(shè)計(jì)
解碼器需要將收到的曼徹斯特碼解碼,得出16位并行數(shù)據(jù),并給出各種校驗(yàn)結(jié)果。本文設(shè)計(jì)的解碼器邏輯結(jié)構(gòu)如圖3所示。本文引用地址:http://www.ex-cimer.com/article/187559.htm
評(píng)論