新聞中心

EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的IRIG-B(DC)碼解碼

基于FPGA的IRIG-B(DC)碼解碼

作者: 時間:2012-07-03 來源:網(wǎng)絡 收藏

2.1 全局控制模塊
全局控制模塊產生全局控制信號count,對其他模塊進行時序管理。首先,將輸入的10 MHz頻率倍頻到50 MHz,使得整個工程以50 MHz的頻率運行。其次,判斷輸入的B()碼碼元的上升沿,在碼元的上升沿時刻對全局控制信號count復位,接下來在50 MHz頻率的控制下全局控制信號count開始計數(shù)。count的低17比特是2.2 ms的計數(shù)器,count的第17,18比特是對B()碼碼元采樣點的標記,范圍是0~3。count的第19~25比特是對B()碼碼元的統(tǒng)計,范圍是0~99。最后,搜索幀頭的功能。對B碼采樣模塊輸出的數(shù)據(jù)進行判斷,當搜索到連續(xù)兩個標志位P0,PR時,則認為搜索到幀頭,開始BCH譯碼,否則認為沒有搜索到幀頭,控制信號count復位,重新搜索。
2.2 B碼采樣模塊
B碼采樣模塊在B(DC)碼碼元上升沿時刻開始以2.2 ms間隔對其采樣,由于B碼的碼元寬度為10 ms所以每個B(DC)碼碼元采樣到四個值。‘P’碼元采樣到的數(shù)據(jù)是“1110”,如圖4所示。同理,‘0’碼元采樣到的數(shù)據(jù)是“0000”,‘1’碼元采樣到的數(shù)據(jù)是“1100”。將采樣到的值反饋給全局控制模塊以便進行幀頭搜索并傳遞給BCH譯碼模塊。

本文引用地址:http://2s4d.com/article/190174.htm

d.JPG


為了防止干擾造成的抖動對輸入信號造成誤判,采取的修正方法是在全局控制信號count的控制下,在B(DC)碼碼元的每個采樣點處間隔兩個主鐘連續(xù)采樣三次.然后將這三次的采樣值兩兩按位與,再將相與的結果相或便得到該采樣點處的真實值,有效地防止了干擾造成的信號誤判。
2.3 BCH譯碼模塊
BCH譯碼模塊在控制信號count的控制下對B(DC)碼采樣模塊輸出的數(shù)據(jù)進行判斷,當為“1110”時,對應的碼元信息為‘P’;當為“0000”時,對應的碼元信啟、為‘0’;當為“1100”時,對應的碼元信息為‘1’,并按照秒、分、時、天、TOD在B(DC)碼中所對應的碼元位置進行相應的組合。
2.4 天、時、分、秒、TOD提取模塊
天、時、分、秒、TOD提取模塊是將BCH譯碼模塊中輸出的數(shù)據(jù)存入天、時、分、秒、TOD寄存器中。圖5是在ModelSim SE 6.6下的仿真,TOD為86 399,365天23時59分59秒分別存入了TOD、天、時、分、秒寄存器。從圖5觀察TOD、天、時、分、秒輸出正確。

a.JPG



關鍵詞: IRIG-B FPGA DC 解碼

評論


相關推薦

技術專區(qū)

關閉