当前位置:首页 > 模拟 > 模拟
[导读]曼彻斯特鳊解码器是1553B总线协议的重要组成部分,其性能的好坏直接影响整个系统的通信质量。通过分析MIL STD-1553B协议和GJB5186测试标准,制定出鳊解码器的设计规范。采用硬件描述语言(Verilog)设计电路,VCS对设计进行仿真,并利用Synplify Pro及ISE完成综合和布局布线的工作,最后载入Xilinx FPGA进行测试。在深入分析曼彻斯特码型特点的基础上,对鳊解码器的工作过程及逻辑电路结构进行详细介绍。提出的时钟分离电路比超前滞后数字锁相环更为简单有效。

0 引言
    曼彻斯特码是一种总线数据传输双极性码。在数字信号基带传输中,通过这种信道编码技术可使传送数据同时携带时钟信息,故也称其为自同步曼彻斯特码。在信道传输中曼彻斯特码有很好的抗干扰能力。接收端可以将分离出的时钟用于解码,从而简化了解码过程。
    针对曼彻斯特码特点,可采用位同步方法提取时钟,常采用滤波法和数字锁相环法。滤波法采用的窄带滤波器不适合数字电路使用。数字锁相环法通过比较接收码元和本地码元为定时时钟的相位来添加扣除时钟脉冲,以达到调整相位的目的,但电路实现过于复杂。本文提出的时钟分离电路比数字锁相环简单,而且提取出来的时钟可以准确地采样到曼彻斯特码信号。

1 曼彻斯特码
   
曼彻斯特码是一种广泛用于以太网、短距离无线通信、航空电子综合系统中总线数据传输的双极性码。它的每个码元中点都存在一个电平跳变,1信号为一个从1到0的负跳变;0信号为一个从0到1的正跳变。由于曼彻斯特码在频谱中存在很强的定式分量,解码时可将分离出的时钟用来解码。另一方面,1553B传输电缆呈容性负载特性,所以在信号传输中,直流和低频分量将受到很大的衰减。曼彻斯特码频谱中不存在直流分量,而且低频分量也大大减小,很适合在1553B电缆中传输。
    MIL-STD-1553B协议中采用的曼彻斯特码数据格式如图1所示。


    同步头:占三位码元长度。命令字或状态字同步头的前1.5倍码元长度为高电平;后1.5倍码元长度为低电平,数据字同步头刚好相反。同步头用于区分字的类型以及标识字传输开始。
    数据:16位数据位。图中bit3为数据最高位,依次递减,bit18为数据最低位。
    奇偶校验位:这里采用奇校验。将16位数据按位同或的结果作为奇校验位。

2 曼彻斯特编码器的设计
   
由于曼彻斯特码的每个码元在其中心存在电平跳变,所以编码器的发送时钟频率至少应选择信息传输速率的2倍频。
    通常编码器的实现方式有2种,基于移位寄存器,或者数据选择器。移位寄存器型编码器需要在编码开始后将同步头位、数据位、奇偶校验位通过字符格式编排器编排成一个并行数据,然后在发送时钟的控制下串行移位输出;数据选择器型编码器需要在编码开始后启动一个计数器,在计数器的控制下分别送出同步头、数据位、奇偶效验位。本文的编码器采用后者,其结构框图如图2所示。


2.1 编码过程
   
编码过程如下:
    (1)检测编码周期是否开始,编码周期开始后将同步头类型、16位并行数据存储到内部寄存器中,与此同时计数器cnt开始计数。
    (2)在计数器cnt的控制下通过码型生成器发出同步头、数据位、奇偶校验位。
    (3)在当前字的曼彻斯特码发送完成后回到过程(1)等待发送下一个字
2.2 端口说明
    rst_n为异步复位信号;clk为系统时钟,频率为信息传输速率的12倍;enc_trigger(输入,高有效)的编码开始的触发信号;enc_csw(输
入,高有效)表示要发送的字为命令字或状态字;enc_dw(输入,高有效)表示要发送的字为数据字;enc_data(输入)表示16位要发送的并行数据;tx_data_p(输出)表示发出的曼彻斯特原码;tx_data_n(输出)表示发出的曼彻斯特反码。
2.3 子模块说明
   
(1)6分频电路
    将系统时钟6分频输出占空比为1/6的编码时钟使能信号enc_clk_en,该信号的频率为信息传输速率的2倍,其他3个模块只有在采样到该信号高电平后才会触发。在复杂时序电路设计中通过引入时钟使能信号可减少设计中的时钟信号,提高电路的可靠性。
    (2)保持寄存器
    在enc_clk_en有效且采样到enc_trigger为1时,将enc_csw,enc_dw,enc_data存入内部寄存器csw_reg,dw_reg,data_reg中。
    (3)计数器
    在enc_clk_en有效时采样到enc_trigger为1时,将计数使能信号置为1,并在其控制下开始计数,计数范围为0~39。
    (4)码型生成器
    码型生成器通过对16位并行数据data_reg做同或运算产生奇偶校验结果。在计数器cnt的控制下发送出曼彻斯特码。发送过程如下(以tx_data_p说明):
    cnt(0~5):根据同步头类型,依次发送111000(csw_reg有效)或000111(dw_reg有效)。
    cnt(6~37):发送数据位,在码元前半个周期发送原码,后半个周期发出反码。
    cnt(38~39):发送奇偶校验位,计数到38时,发送奇偶校验位原码,39时发送其反码。

3 曼彻斯特解码器的设计
   
解码器需要将收到的曼彻斯特码解码,得出16位并行数据,并给出各种校验结果。本文设计的解码器逻辑结构如图3所示。


3.1 解码过程
   
(1)同步头检测,当检测到同步头后触发整个解码过程开始,并给出同步头类型。
    (2)检测到同步头后,计数器cnt开始计数,在cnt的控制下进行解码。包括码型转换与移位操作,同步头类型输出、曼彻斯特码型校验、奇偶校验、字连续性校验等。
    (3)当码的串并转换以及各种校验都完成后,给出并行数据和校验结果信号,在cnt的控制下最终给出数据有效信号data_ready。协议模块可在该信号有效(高电平)时检测其他校验信号,并决定是否取走并行数据。
3.2 端口说明
    rst_n为异步复位信号;clk为系统时钟,频率是信息传输速率的12倍;rx_data(输入)为收到的曼彻斯特原码;data_ready(输出,高有效)为数据有效信号,该信号有效期间可检测其他校验输出信号,若数据有效可取走16位并行数据;csw(输出,高有效)为收到字类型为命令字或状态字;dw(输出,高有效)表示收到字类型为数据字;data(输出)表示解码输出的16位并行数据;parity_right(输出,高有效)为奇偶校验结果;manchester_right(输出,高有效)为曼彻斯特码型校验结果;word_continue(输出,高有效)为字连续性校验结果,有效时表示当前收到的字与上一次收到字之间是连续的。
3.3 子模块说明
   
(1)时钟分离模块
    时钟分离模块如图4所示。


    该模块将曼彻斯特码自带的时钟信号分离,得到clk2_en,并在该信号有效(高电平)时采样,经过三级寄存器保持输出的曼彻斯特码信号rx_data_reg_2。采样时刻总出现在每个码元正负电平的中点处,而这也是曼彻斯特码采样的最佳时刻,如图5所示。


    时钟分离电路结构如图4所示,收到的曼彻斯特码rx_data为异步信号,通过DFF1,DFF2,DFF3三级采样保持电路可消除亚稳态。edge_ check在每个曼码电平跳变后产生一个脉冲,该信号将对cnt_clk2和clk2_en同步清零,以达到调整相位的目的。cnt_clk2是一个6进制计数器,当计数到1时通过比较器给出同步置位脉冲set,它将对clk2_en同步置1。
    (2)同步头识别模块
    该模块始终检测同步头,并给出同步头类型。检测方法如下,在采样到时钟使能信号clk2_en有效时,将rx_data_reg_2存入移位寄存器sync_reg[9:0]中,当检测到sync_reg[5:0]为“111000”或“000111”时,给出同步头有效信号sync_1,用于触发计数器和码型转换移位模块工作。
    (3)计数模块
    计数器cnt是一个40进制计数器,在cnt的控制下完成整个解码过程。当收到同步头有效信号sync_1时,将计数器使能信号cnt_enb置为有效(高电平),并在其控制下开始计数。
    (4)码型转换与移位电路
    该模块在移位使能信号data_sample有效,且采样到采样使能信号clk2_en时,将rx_data_reg_2移入一个17位寄存器data_reg[16:O]中,移位完成后,将得到一个16位并行数据data_reg[16:1]和一个奇偶校验位data_reg[0]。
    (5)校验模块
    该电路将检测并输出同步头类型、奇偶校验结果、曼彻斯特码检测结果、字连续性检测结果。
    同步头类型检测:当cnt计数到3时,将同步头检测结果sync_csw和syn_dw分别寄存输出给csw和dw。
    奇偶校验:将17位并行数据data_reg[16:O]按位同或后在cnt计数到33时将效验结果输出给parity_right。
    曼彻斯特码型的有效性校验:对16位曼彻斯特码和1位奇偶校验码的码型进行检测。当收到同步头有效信号sync_1时将mangchester_rig-ht信号置为1,之后将每个码元曼彻斯特检测结果与mangchester_right做与运算,再寄存输出到mangchester_right。当中间某个码元曼彻斯特码出错时,mangchester_right将变为0,并在之后的检测中一直保持为0,直到收到下一个字的sync_1信号。
    字连续性检测:若前一个字与当前字连续,则在前一个字cnt计数到39时,当前字的同步头有效信号sync_1应为高电平,若不连续,sync _1为低电平。所以在cnt=39时将sync_1寄存输出给word_continue可表征字的连续性。
    (6)数据有效输出模块
    当所有校验和移位都完成时,在cnt为34~38之间输出数据有效信号data_ready。

4 仿真及FPGA实现
   
在TESTBENCH中将编码器曼彻斯特码的输出直接连到解码器曼彻斯特码的输入端。图6为正确曼彻斯特码的时序仿真波形图,传输速率为10 Mb/s,系统时钟为120 MHz。图6的上半部分为编码器信号波形,下半部分为解码器信号波形。发送消息为连续的4个字:第1个为命令字,后3个为数据字。


    为了全面验证设计功能,需要注入不同类型的错误来检测解码器的查错能力。其中,包括同步头类型错,曼彻斯特码型错,奇偶校验错,字不连续错等。测试过程完全按照GJB5186相关要求进行。
    该设计在XlLINX公司Spartan3E系列的XC3S500E型号FPGA上进行了实现。当编解码器时钟约束为7 ns时,编码器最高跑到143 MHz,解码器最高到157 MHz。

5 结语
   
根据曼彻斯特码型特点,设计出一种符合MIL-STD-1553B协议的曼彻斯特编解码器,并兼容1 Mb/s和10 Mb/s两种传输速率的协议。该设计通过了GJB5186规定的测试点验证,实验结果证明所设计的曼彻斯特编解码器具有高速、高可靠性的特点。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭