BT1525通信协议.docx_第1页
BT1525通信协议.docx_第2页
BT1525通信协议.docx_第3页
BT1525通信协议.docx_第4页
BT1525通信协议.docx_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

bert通信协议一,基本的帧格式bert使用异步串口通信接口(rs232)与计算机通信,仅使用了db9内三根线(发送,接收和地)来完成通信。通信基本设置为:1位起始位,8位数据位,1位停止位。波特率为9600bps。如下:名称同步字序列号长度命令数据校验和长度1字节1字节1字节1字节根据2字节同步字:采用0x5a作为同步字。同步字后面为非同步字表示帧开始。0x5a作为同步字标识一个包的开始。发送方在发送一个同步字标识包的开始后,如果包内其他部分(包括序列号,长度,命令,数据和校验和)的某个数据其值和同步字相同,应该额外插入一个同步字。插入的同步字不计入包的长度,也不参与校验。接收方时应该执行同步字的删除操作,当接收到标识包开始的同步字后,如果收到的连续的同步字的个数为奇数个,则应该丢弃之前接收的数据,认为有新的包开始。如果接收到连续的同步字的为偶数个,则执行同步字删除,删除由发送方额外插入的同步字。例如,当序列号为0x5a时,其格式为:名称同步字插入同步字序列号长度命令数据校验和长度0x5a0x5a0x5a1字节1字节根据2字节在接收时,当发现连续的同步字时,要求删除第二个同步字。同步字的插入和删除范围从序列号开始到校验和结束(包括校验和)。序列号:序列号占用1个字节,从0开始递增,到255后返回到0。bert测试仪和pc机拥有各自独立的序列号。如果在指定的时间内(0.3秒)没有收到对方的包,必须重发,最多重发次数为3次。长度/命令/数据:具体见下面的表格。校验和:校验和计算范围从序列号开始到数据结束时为止。计算方法为求待计算字节序列的模16和(将待计算字节序列依次累加,取最终结果的低16位)。crc:采用crc-ccitt计算方法如下: checksum=0xffff;/初始化校验和0xffff对每个字节cbuf进行入下计算:checksum=(unsigned char)( checksum8)|( checksum4;checksum=checksum84;checksum=( checksum & 0x00ff)4)1;1.1 设置工作参数该包用于上位机向bert发送配置命令。命令字:0x00 长度:10字节长度变量取值备注1cfg_mode0=停止(工作在bypass模式)1=side2侧工作(generator)-电口发射电口接收。2=side1侧工作(bert)-光口发射电口接收3=不要使用,内部保留bert测试仪有三种工作状态:停止:禁止收发,处于低功耗状态side2侧工作:电口发射电口接收,可用作信号源测试待测模块发射眼图。side1侧工作:光口发射电口接收,典型用于测试待测模块误码率。1cfg_tx_rate0=escon1=fasteth2=gigabiteth3=fc14=fc25=fc46=infiniband7=oc38=oc129=oc2410=oc48发送速率1cfg_rx_rate0=escon1=fasteth2=gigabiteth3=fc14=fc25=fc46=infiniband7=oc38=oc129=oc2410=oc48接收速率1cfg_tx_pattern0=prbs7 1=prbs232=prbs313=user644=user405=cjtpb6=crpb7=cspb随机数产生方式1cfg_rx_pattern0=prbs7 1=prbs232=prbs313=user644=user405=cjtpb6=crpb7=cspb随机数产生方式1cfg_tx_out0=both1=photo2=electrical发送输出,目前不能根据此发送设置改变。1cfg_rx_in0=both1=photo2=electrical接收输入,目前不能根据此设置改变。1cfg_errinject0=1e-71=1e-82=1e-93=single4=no注入误码率1cmd_sync保留,目前无意义1.2 设置用户定义码型命令字:0x01 长度:10字节1usedef_patchkbit0:1=对检查器有效bit1:1=对产生器有效bit7:0=40bit,1=64bit用户定义码型,其长度可以为64位或40位8udpat_dat86字节用户定义的pattern用户定义的pattern可用于测试突发。如果码型长度为64位,所有的8个字节都被使用,其中高字节在前,低字节在后。如果码型长度为40位,只有后5个字节被使用。同样,高字节在前,低字节在后。1.3 报告bert状态该包用于bert定时(1秒钟)向上位机报告bert的工作状态命令字:0x02 长度:11字节1lock7:1=cmu 失锁4:1=已经同步3:1=检测到错误2:1=错误计数器溢出1:1=同步错误0:1=检查器正在工作5errtimer5字节无符号整数,该值用来表示自原始参考值递减计数,当前计时器的值。原始参考时间为5字节全0xff。递减计数的时钟速率为当前bert测试速率的1/16。4errcnt4字节无符号整数,从测试周期开始出错的总位数。仅在锁定状态下有效。高字节在前,低字节在后。如果出错位数使该计数器溢出,checker将停止工作,如果需要checker继续,需要重新同步。1.4 响应ack该包由bert发出,作为对接收到的包的确认命令字:0x03 长度:4字节1ack0=nak1=acknak用于对接收到包的否认,表示bert不能支持系统设置。ack用于对接收到包的确认,表示bert设置成功。1seq确认的包的序列号1bert_supportbit 0=bert内部有125mhz时钟bit 1=bert内部有155.52时钟bit 2=bert支持外部输入时钟其它未使用位为0,保留为将来使用。当为125mhz时钟时,支持escon,fasteth,gigabiteth,fc1/fc2/fc4。当为155.52时钟时,支持oc3/oc12/oc24/oc48举例说明:对于bert v6,由于不支持外部输入时钟,bit3恒定为0。如果内部只有125时钟,则为1,如果内部只有155.52时钟,则为2,如果内部有125/155.52两种时钟,则为3。对于bert v8,支持部输入时钟,bit3恒定为1,其它和bert v6一样。1.5 杂项命令该包由上位机发出,用于控制bert。命令字:0x04 长度:2字节1act0=获取配置1=保存配置2=单次注入3=查询产生器的用户定义码型4=查询检查器的用户定义码型5=获取bert状态6=禁止定时报告bert状态7=正常定时报告bert状态(1秒)8=快速定时报告bert状态(320毫秒)3.2pack/s9=超快速定时报告bert状态(200毫秒)5.4pack/s10=获取rf端口输入11=获取bert时钟和ben输出等信息12=清除错误计数器13=获取版本信息说明:bert上电后默认使能定时报告状态功能。bert重新启动后,用户设置的“定时报告状态”信息将丢失!恢复成默认值“使能定时报告状态”!回环测试包如下:设置bert为side2:5a 05 0a 00 01 09 09 01 01 02 02 04 00 00 2c设置bert超快速定时报告bert状态5a 08 02 04 09 00 175a 08 02 04 0b 00 195a 08 05 0c 00 02 02 06 00 235a 08 02 04 0b 00 195a 08 02 04 0c 00 1a1.6 对“查询工作参数”命令的响应命令字:0x05 长度:10字节(bert对上述act-getconfig命令的响应,与命令0x00包相同长度变量取值备注1cfg_mode0=停止。工作在bypass模式。1=side2侧工作(generator)-电口发射电口接收。2=side1侧工作(bert)-光口发射电口接收3=不要使用,内部保留bert测试仪有三种工作状态:停止:工作在旁路模式。side2侧工作:电口发射电口接收,可用作信号源测试待测模块发射眼图。side1侧工作:光口发射电口接收,典型用于测试待测模块误码率。1cfg_tx_rate0=escon1=fasteth2=gigabiteth3=fc14=fc25=fc46=infiniband7=oc38=oc129=oc2410=48发送速率1cfg_rx_rate0=escon1=fasteth2=gigabiteth3=fc14=fc25=fc46=infiniband7=oc38=oc129=oc2410=48接收速率1cfg_tx_pattern0=prbs7 1=prbs232=prbs313=user644=user405=cjtpb6=crpb7=cspb随机数产生方式1cfg_rx_pattern0=prbs7 1=prbs232=prbs313=user644=user405=cjtpb6=crpb7=cspb随机数产生方式1cfg_tx_out0=both1=photo2=electrical发送输出,目前不能根据此发送设置改变。1cfg_rx_in10=both1=photo2=electrical接收输入,目前不能根据此设置改变。1cfg_errinject0=1e-71=1e-82=1e-93=single4=no注入误码率1bert_supportbit 1=bert内部有125mhz时钟bit 2=bert内部有155.52时钟bit 3=bert支持外部输入时钟其它未使用位为0,保留为将来使用。当为125mhz时钟时,支持escon,fasteth,gigabiteth,fc1/fc2/fc4。当为155.52时钟时,支持oc3/oc12/oc24/oc48举例说明:对于bert v6,由于不支持外部输入时钟,bit3恒定为0。如果内部只有125时钟,则为1,如果内部只有155.52时钟,则为2,如果内部有125/155.52两种时钟,则为3。对于bert v8,支持部输入时钟,bit3恒定为1,其它和bert v6一样。1.7 对“查询用户定义码型”命令的响应命令字:0x06 长度:10字节1usedef_patchk当前设置的码型0=prbs7 1=prbs232=prbs313=user644=user405=cjtpb6=crpb7=cspb用户定义码型,其长度可以为64位或40位8udpat_dat86字节用户定义的pattern用户定义的pattern可用于测试突发。如果码型长度为64位,所有的8个字节都被使用,其中高字节在前,低字节在后。如果码型长度为40位,只有后5个字节被使用。同样,高字节在前,低字节在后。1.8 查询bert内部寄存器的值命令字:0x07 长度:2字节1开始地址开始地址必须小于120,如果大于等于120,按照120处理。读取从指定地址开始的8个字节的值。5a 00 02 07 00 00 091.9 对“查询bert内部寄存器”命令的响应命令字:0x08 长度:10字节1开始地址开始地址必须小于120,如果大于等于120,按照120处理。读取从指定地址开始的8个字节的值。8寄存器的值1.10 查询bert内部flash的数据命令字:0x09 长度:3字节2开始地址读取从指定地址开始的8个字节的值。1.11 对“查询bert内部flash数据”命令的响应命令字:0x0a长度:12字节2开始地址读取从指定地址开始的8个字节的值。8flash内的数据1软件版本从0-2551.12 对“查询rf in端口电平”命令的响应该包由bert发出,作为对“1.5 杂项命令”内“查询rf in端口电平”(ack=10)的命令的响应。命令字:0x0b 长度:2字节1rf端口输入电平(dbm)1个字的带符号整数,将该字除以256即可得到实际以dbm为单位的值。说明:该功能主要用于解决在生产过程中,当通过差分线连接方式评测灵敏度是否合格时,容易将差分对中某端有故障的线漏检的情况。1.13 设置时钟和ben输出该包由上位机发出,用于控制bert的输入时钟源以及ben的输出命令字:0x0c长度:5字节1clk_src设置bert基本时钟来源:0=外部时钟1=内部时钟说明:bert上电后默认使用内部时钟(clk_src=1)作为时钟源。用户设置的“clk_src”信息不会被保存到bert的flash内。bert重新启动后,该信息将丢失!恢复成默认值“clk_src=1”!1clk_type设置时钟源的频率:1=125mhz的时钟2=155.52mhz的时钟该域仅当如下情况下有效:1 clk_src=0(bert使用外部时钟作为时钟源)时。2 当clr_src=1(bert使用内部时钟作为时钟源),且bert_support的bit1/bit0都为1时。关于bert_support请参考“1.4 响应ack”,“1.6 对工作参数查询的响应”内关于bert_support域的信息。1ben_outben输出类型:0=固定低电平1=固定高电平2=时钟源的分频信号。分频比由freq_divider决定。其取值目前只支持2,而0,1为将来保留。1freq_divider2分频系数的指数,其取值范围为从6到20,共15档。即分频系数为2的6次方(64)到2的20次方(1048576)。5a 00 02 04 06 00 0c5a 00 05 0c 01 02 02 06 01 0c1.14 对“查询bert时钟和ben输出信息”命令的响应该包由bert发出,作为对“查询bert时钟和ben输出信息”命令的响应命令字:0x0d 长度:5字节1clk_src设置bert基本时钟来源:0=外部时钟1=内部时钟说明:bert上电后默认使用内部时钟(clk_src=1)作为时钟源。用户设置的“clk_src”信息不会被保存到bert的flash内。bert重新启动后,该信息将丢失!恢复成默认值“clk_src=1”!1clk_type设置时钟源的频率:1=125mhz的时钟2=155.52mhz的时钟该域仅当如下情况下有效:3 clk_src=0(bert使用外部时钟作为时钟源)时。4 当clr_src=1(bert使用内部时钟作为时钟源),且bert_support的bit1/bit0都为1时。关于bert_support请参考“1.4 响应ack”,“1.6 对工作参数查询的响应”内关于bert_support域的信息。1ben_outben输出类型:0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论