新闻中心

EEPW首页>EDA/PCB>设计应用> 基于FPGA的IRIG-B(DC)码解码

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

作者: 时间:2012-07-03 来源:网络 收藏

2.1 全局控制模块
全局控制模块产生全局控制信号count,对其他模块进行时序管理。首先,将输入的10 MHz频率倍频到50 MHz,使得整个工程以50 MHz的频率运行。其次,判断输入的B()码码元的上升沿,在码元的上升沿时刻对全局控制信号count复位,接下来在50 MHz频率的控制下全局控制信号count开始计数。count的低17比特是2.2 ms的计数器,count的第17,18比特是对B()码码元采样点的标记,范围是0~3。count的第19~25比特是对B()码码元的统计,范围是0~99。最后,搜索帧头的功能。对B码采样模块输出的数据进行判断,当搜索到连续两个标志位P0,PR时,则认为搜索到帧头,开始BCH译码,否则认为没有搜索到帧头,控制信号count复位,重新搜索。
2.2 B码采样模块
B码采样模块在B(DC)码码元上升沿时刻开始以2.2 ms间隔对其采样,由于B码的码元宽度为10 ms所以每个B(DC)码码元采样到四个值。‘P’码元采样到的数据是“1110”,如图4所示。同理,‘0’码元采样到的数据是“0000”,‘1’码元采样到的数据是“1100”。将采样到的值反馈给全局控制模块以便进行帧头搜索并传递给BCH译码模块。

本文引用地址://m.amcfsurvey.com/article/190174.htm

d.JPG


为了防止干扰造成的抖动对输入信号造成误判,采取的修正方法是在全局控制信号count的控制下,在B(DC)码码元的每个采样点处间隔两个主钟连续采样三次.然后将这三次的采样值两两按位与,再将相与的结果相或便得到该采样点处的真实值,有效地防止了干扰造成的信号误判。
2.3 BCH译码模块
BCH译码模块在控制信号count的控制下对B(DC)码采样模块输出的数据进行判断,当为“1110”时,对应的码元信息为‘P’;当为“0000”时,对应的码元信启、为‘0’;当为“1100”时,对应的码元信息为‘1’,并按照秒、分、时、天、TOD在B(DC)码中所对应的码元位置进行相应的组合。
2.4 天、时、分、秒、TOD提取模块
天、时、分、秒、TOD提取模块是将BCH译码模块中输出的数据存入天、时、分、秒、TOD寄存器中。图5是在ModelSim SE 6.6下的仿真,TOD为86 399,365天23时59分59秒分别存入了TOD、天、时、分、秒寄存器。从图5观察TOD、天、时、分、秒输出正确。

a.JPG



关键词:IRIG-BFPGADC解码

评论


相关推荐

技术专区

关闭