在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            關(guān) 閉

            新聞中心

            EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 基于FPGA的IRIG-B編碼器實現(xiàn)

            基于FPGA的IRIG-B編碼器實現(xiàn)

            作者: 時間:2010-03-18 來源:網(wǎng)絡(luò) 收藏

            M12T輸出的100 pps信號(以下稱PPMl2)如圖3所示,每個脈沖的上升沿時刻準確,周期10 ms,在pps的參考點,脈沖寬度為6~8 ms,其他時刻2~4 ms,脈沖寬度不是關(guān)注的重點。

            本文引用地址:http://www.biyoush.com/article/163206.htm


            B碼的每個碼元恰好與上述100 pps信號對應(yīng)。首先在中構(gòu)建一個模100的碼元計數(shù)器MMH和一個高電平脈沖寬度檢測器,通過下面的方法和步驟可以恢復(fù)pps。
            (1)在PPMl2信號的上升沿復(fù)位寬度檢測器,高電平計時,在下降沿停止并輸出Tb;
            (2)在PPM12下降沿檢查Tb,當6 msTb8 ms時,令MMH=1,否則執(zhí)行下面的操作:
            if MMH=99 then MMH=O
            else MMH=MMH+1
            (3)在PPMl2信號的上升沿檢查MMH,如果MMH=0,則當前脈沖的上升沿是參考點Pr,觸發(fā)輸出8 ms高電平脈沖作為pps信號,重復(fù)步驟(1)~(3),在PPM12信號上升沿檢查MMH;如果MMH的個位為9或者MMH=0,則當前脈沖標記為索引脈沖,即輸出8 ms高電平。
            3.2 絕對時間獲取
            通過在上構(gòu)建一個UART與M12T互連。為了簡化對M12T的配置和輸出時間的獲取,將UART分成兩部分設(shè)計,即發(fā)送模塊txmit和接收模塊rcvr。發(fā)送模塊用一個M4K設(shè)計一個512×8 FIFO,在系統(tǒng)復(fù)位后的若干個時鐘,利用一個狀態(tài)機將M12T的配置數(shù)據(jù)寫入FIFO;然后通過txmit模塊配置M12T,配置結(jié)束后,UART模塊將M12T的時間碼轉(zhuǎn)發(fā)到外部RS 232接口,同時可以轉(zhuǎn)發(fā)外部接口的配置數(shù)據(jù)到M12T。接收模塊采用寄存器模式,只接收M12T發(fā)來的絕對時間信息,這樣后面的編碼模塊可以直接使用這些時間信息。做法如下:設(shè)計一個接收計數(shù)器rx_ count,每接收一個字節(jié)計數(shù)器自加,并根據(jù)rx_count決定是否保存時間碼。由于M12T每秒中發(fā)送一幀,故在檢測到pps時復(fù)位該計數(shù)器。


            M12T在每個1 pps的上升沿過后送出當前時間,而FPGA通過UART接收到時間時,B碼當前幀已經(jīng)啟動,據(jù)此形成的B碼要等下一個pps參考點之后才可以發(fā)送,所以對接收的時間要進行預(yù)進位處理。
            本文在FPGA預(yù)處理部分設(shè)計了一個RTC計時鏈,在每個1 pps的上升沿.計時鏈向上進位,編碼模塊從RTC計時鏈取絕對時間。從UART接收到新的時間后,如果該時間與計時鏈的值有差異,則將通過計時鏈的同步置數(shù)接口修正計時鏈的值。同時計時鏈負責把M12T的二進制時間轉(zhuǎn)換成壓縮的BCD碼,還要根據(jù)當前接收到的年月日,計算當天是全年中的第幾天,即碼中的Day字段,而且在預(yù)加1 S和轉(zhuǎn)換時間格式時,要注意閏年和月大和月小對Day字段的影響。

            4 編碼模塊
            4.1 DC編碼模塊
            分析B碼可以發(fā)現(xiàn),秒的最低位出現(xiàn)在MMH=1處,分的最低位出現(xiàn)在MMH=10處,小時的最低位出現(xiàn)在MMH=20處,依次類推。按照圖1,容易得出時間寄存器輸出時刻和碼元計數(shù)器MMH之間的關(guān)系。由于碼元周期固定為10 ms,可以這樣編碼,定義一個模10的計數(shù)器MML和邏輯向量CMP(9 down to0)來表征一個碼元在10 ms的狀態(tài)。MML每ms加1,同時根據(jù)MML的值,選擇CMP的一位更新輸出狀態(tài),步驟如下:
            (1)構(gòu)建模10計數(shù)器MML,以及一個1 ms定時器;
            (2)在PPM12信號的上升沿復(fù)位MML和1 ms定時器;
            (3)1 ms定時器溢出時,MML加1;
            (4)根據(jù)MML和CMP輸出編碼信號IRIG_B_OUT,即IRIG_B_OUT=CMP(MML);



            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉