反射内存网络数据传输误码率测试方法_许海
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[12 ] 测试方法使用的是减法随机数生成算法 , 这是一种延 , 55 ) 可 搁的斐波那契序列生成方法 在这里使用的延搁 ( 24 , 30 55 以使随机数周期长达 2 ( 2 - 1 ) 。 这种随机数生成算法是 根据已产生的随机数序列递推产生新的随机数 。 因此, 这是 、 。 一种确定的 高质量的随机数生成算法
1
1. 1
数据传输误码率测试原理
测试流程设计 测试初始化阶段应按以下步骤进行准备 : 1 ) 在反射内存网络的 γ 个节点中, 选定其中一个节点作 为测试发送节点 β, 其他节点板卡作为测试校验节点 α0 ,α1 , …,α γ -2 ; 2 ) 将反射内存的共享内存空间 U 均等地分为 N 块, 记为 A0 ,A1 ,…,A N -1 。 测试过程是以周期形式进行的 , 分为测试大周期 和测 且 为 φ 的 N 整数倍。 一个测试大周期 可以遍 试子周期 φ, 历一遍反射内存的共享内存空间 U。 测试发送节点 β 可以按 测试大周期 的总数量设定整个测试的持续过程 , 也可以设 定整个测试的持续总时间 , 而后按测试的持续总时间折算出 的测试大周期 的个数控制测试的持续过程 。 在每个测试子周期 φ 内, 测试发送节点 β 首先生成测试 用随机数据, 然后把这些随机数据更新写入共享反射内存的 某个 A i 区域, 最后向反射内存网络群发中断事件 。 测试校验
非常便于操作使用。 图 2 和图 3 分别为测试发送节点 β 面, 和测试校验节点 α0 ,α1 ,…,α γ -2 中运行的测试软件界面 。
图1
测试子周期流程
每个测试大周期 将重复执行测试子周期 φ, 使每个测 试子周期 φ 依次测试不同的反射内存区域 A0 ,A1 ,…,A N -1 。 当测试大周期 执行一次后, 应该达到测试发送节点 β 将整 个内存空间 U 写入一遍, 测试校验节点 α 将整个内存空间 U 读取并校验一遍。 1. 2 误码率计算方法 反射内存网络数据更新误码率 BER 可以用式( 1 ) 计算: r ( 1) BER = mS / N r 为误码 其中: m 为已经执行完成的测试子周期 φ 的总次数, , S U , N 比特个数 为共享内存空间 的比特数量 是将反射内存 的共享内存空间 U 等分的块数。
Bit error ratio test method for data transmission in reflective memory network
XU Hai1 , ZHOU Qiang1 , XIONG Liangyong2 , LI Jingquan2
( 1 . School of Automation Science and Electrical Engineering, Beihang University, Beijing 100191 , China; 2 . Beijing Vast Tagee Technology Company Limited, Beijing 100098 , China)
图4 误码图形显示程序界面
误码图形显示测试方法部分代码 :
/ / / 其他代码段 RefreshThread = new Thread( delegate( ) { Bitmap bm; while ( true) / / 创建图形刷新线程
36
{
计算机应用
表2 实验 组号 1 2 3 β 值 13 15 11 误码率 < 10 - 12 < 10 < 10
Journal of Computer Applications 计算机应用,2014,34( S2) : 34 - 36,54 文章编号: 1001-9081 ( 2014 ) S2-0034-03
ISSN 1001-9081 CODEN JYIIDU
2014-12-15 http: / / www. joca. cn
*
Abstract: Reflective memory network physical layer generally uses fiber as the transmission medium. PseudoRandom Binary Sequence ( PRBS) code can only work on physical layer of a single node card to perform Bit Error Ratio ( BER) test. It cannot take comprehensive test for overall network, nor for node card storage module. To solve this problem, a test method, which can traverse the entire memory range, and can test data transmission BER of all nodes in the network, has been developed. This method not only gave BER, but also presented graphical feature that can be very intuitive to observe the distribution of error bits. Moreover, compared to the PRBS test method, this method used subtractive random number generator algorithm to generate more abundant and more pertinent random test data. Experiments prove that this test method can effectively take comprehensive test for all node cards in reflective memory network. Key words: reflective memory network; Bit Error Ratio ( BER) ; random data; node card
0
引言
能够非常直观、 形象地观察到误码出 出图形化的误码分布图 , 现的规律性。
现在, 反射内存网络在测试系统中得到了越来越广泛的 [1 - 7 ] 。由于反射内存网络数据传输影响因素多 , 其数据 应用 传输可靠性也值得关注 。目前应用于反射内存网的测试仅在 [8 - 9 ] , 实时性测试方面有少量成果 对数据传输误码率测试的 相关其他研究对象中值得借鉴的方法 研究尚无文献可参考, Random Binary Sequence, 有 伪 随 机 二 进 制 序 列 ( PseudoPRBS) 测试法[10] 和内存测试法[11] 。 但将这些方法应用于反 射内存网的测试存在明显的缺陷 : 1 ) PRBS 测试只能实现对底层通信链路的测试 , 内存测 试法只能对读写回路进行测试 ; 2 ) 无法部署到整个反射内存网 , 只能在单个节点或一台 宿主机上执行测试; 3 ) 重点研究方向的成果无法转化为应用于反射内存网 的测试方法。 本文介绍一种可以遍历反射内存网络全部共享内存地址 区间, 并且可以对反射内存网络中所有节点进行数据传输误 码率测试的方法。利用该测试方法, 既可以测试计算出读写 共享内存地址区间时的误码率及相关的抽象指标 , 又可以给
图2
பைடு நூலகம்
测试发送节点误码率测试界面
2
随机数生成与比对方法设计
测试发送节点在每个测试子周期 φ 都需要产生随机数据
图3 测试校验节点误码率测试界面
以供测试。而使用软件方法产生随机数都是基于某种确定的 随机数算法, 这种算法实际产生的都是伪随机数 。但是, 因其 故可以当作自然随机数使 随机程度可以达到实用期望要求 , 用。随机数算法一般是给定一个整数当作随机数种子 , 根据 。 , 种子产生随机数序列 可见 只要随机数种子和随机数算法 相同, 产生的随机数序列就是相同的 。
增刊 2
许海等: 反射内存网络数据传输误码率测试方法
35
节点 α0 ,α1 ,…,α γ -2 , 收到这个中断事件后, 就从共享反射 A , 将校验结 内存的 i 区域读取数据 然后校验数据的正确性 , 果输出给操作人员。 测试子周期 的测试流程如图 1 所示。
3
3. 1
测试程序设计
操作界面设计 在 Windows XP 操作系统下, 采用VC + + 开发了数据传输 误码率测试软件。该测试软件采用了单窗口的图形化操作界
反射内存网络数据传输误码率测试方法
许
1 海 , 周
*
1 2 2 强, 熊良永 , 李景权
( 1. 北京航空航天大学 自动化科学与电气工程学院 , 北京 100191 ;
2. 北京泰吉科技有限公司, 北京 100098 )
( * 通信作者电子邮箱 xuhai515@ foxmail. com)
摘
要: 反射内存网络物理层通常采用光纤作为传输介质 , 采用伪随机二进制序列 ( PRBS) 编码只能对单个节点
板卡的物理层进行误码率测试 , 无法对反射内存网络中所有节点板卡以及节点板卡的存储区进行综合测试 。 针对这 提出并实现了一种可以遍历全部反射内存地址区间 , 并且可以对反射内存网络中所有节点进行数据传输误 种问题, 码率测试的方法。该方法不但可以给出误码率指标 , 同时具有图形化的特点 , 可以非常直观地观察到误码出现的规 律性; 而且, 相比 PRBS 编码, 该测试方法采用减法随机数生成算法产生的测试用随机数更为丰富 , 针对性更强。 实验 表明, 该测试方法可以有效地对反射内存网络中所有节点板卡的误码率进行综合测试 。 关键词: 反射内存网络; 误码率; 随机数; 节点板卡 中图分类号: TP311. 1 ; TP306. 2 文献标志码: A
收稿日期: 2013-12-08 ; 修回日期: 2014-03-15 。 作者简介: 许海( 1990 - ) , 男, 山东济宁人, 硕士研究生, 主要研究方向: 自动测试、 虚拟仪器; 周强 ( 1972 - ) , 男, 北京人, 副教授, 博士, 主 要研究方向: 分布式测试系统、 测试系统建模、 航电总线测试技术; 熊良永 ( 1977 - ) , 男, 四川达州人, 工程师, 主要研究方向: 航电总线集成; 李景权( 1977 - ) , 男, 河北保定人, 工程师, 主要研究方向: 航电总线测试。
3. 2
误码图形显示程序设计
为了更直观地总结误码出现的规律性 , 作为辅助分析工 具, 还设计了一个误码图形显示方法 。 误码图形显示测试方 即可以把一块内存区 法把每个 16 位数据用一个像素点表示 , 域用一幅图像表示。这种方法信息量大且很直观 。
由于测试发送节点和测试校验节点在不同宿主机上 , 因 此需要在宿主机之间传送原始标准随机数据以供比对 , 并将 这个过程称之为同步随机数据 。 测试方法中, 通过宿主机之间传递随机数种子的方法同 步随机数据。随机数种子是一个 32 位正整数, 存储在测试子 周期的测试区块 A i 的头部区域, 其后的数据依次为这个随机 数种子所产生的随机数 。 假定被测试区块 A i 由 1 024 字节组成, 将 A i 的存储区域 32 , R , j = [ 0 , 127 ] 位整数数组 ij 表示 则 R i0 存放的是随机 用 R i1 ,R i2 ,…,R i127 依次存放的是由 R i0 作为种子生成 数种子, 的 127 个随机数。测试校验节点读取 A i 的数据 R ij 后先根据 R i0 生成随机序列, 然后将 R i1 到 R i127 的数据与随机序列比较 , 统计误码比特数, 实时计算误码率并输出给操作者 。
- 12 - 12
第 34 卷
实验结果记录表 α0 值 11 11 13 误码率 < 10 - 12 < 10 - 12 < 10 - 12 α1 值 误码率 15 3. 48 × 10 - 9 13 < 10 - 12 15 4. 05 × 10 - 10
1
1. 1
数据传输误码率测试原理
测试流程设计 测试初始化阶段应按以下步骤进行准备 : 1 ) 在反射内存网络的 γ 个节点中, 选定其中一个节点作 为测试发送节点 β, 其他节点板卡作为测试校验节点 α0 ,α1 , …,α γ -2 ; 2 ) 将反射内存的共享内存空间 U 均等地分为 N 块, 记为 A0 ,A1 ,…,A N -1 。 测试过程是以周期形式进行的 , 分为测试大周期 和测 且 为 φ 的 N 整数倍。 一个测试大周期 可以遍 试子周期 φ, 历一遍反射内存的共享内存空间 U。 测试发送节点 β 可以按 测试大周期 的总数量设定整个测试的持续过程 , 也可以设 定整个测试的持续总时间 , 而后按测试的持续总时间折算出 的测试大周期 的个数控制测试的持续过程 。 在每个测试子周期 φ 内, 测试发送节点 β 首先生成测试 用随机数据, 然后把这些随机数据更新写入共享反射内存的 某个 A i 区域, 最后向反射内存网络群发中断事件 。 测试校验
非常便于操作使用。 图 2 和图 3 分别为测试发送节点 β 面, 和测试校验节点 α0 ,α1 ,…,α γ -2 中运行的测试软件界面 。
图1
测试子周期流程
每个测试大周期 将重复执行测试子周期 φ, 使每个测 试子周期 φ 依次测试不同的反射内存区域 A0 ,A1 ,…,A N -1 。 当测试大周期 执行一次后, 应该达到测试发送节点 β 将整 个内存空间 U 写入一遍, 测试校验节点 α 将整个内存空间 U 读取并校验一遍。 1. 2 误码率计算方法 反射内存网络数据更新误码率 BER 可以用式( 1 ) 计算: r ( 1) BER = mS / N r 为误码 其中: m 为已经执行完成的测试子周期 φ 的总次数, , S U , N 比特个数 为共享内存空间 的比特数量 是将反射内存 的共享内存空间 U 等分的块数。
Bit error ratio test method for data transmission in reflective memory network
XU Hai1 , ZHOU Qiang1 , XIONG Liangyong2 , LI Jingquan2
( 1 . School of Automation Science and Electrical Engineering, Beihang University, Beijing 100191 , China; 2 . Beijing Vast Tagee Technology Company Limited, Beijing 100098 , China)
图4 误码图形显示程序界面
误码图形显示测试方法部分代码 :
/ / / 其他代码段 RefreshThread = new Thread( delegate( ) { Bitmap bm; while ( true) / / 创建图形刷新线程
36
{
计算机应用
表2 实验 组号 1 2 3 β 值 13 15 11 误码率 < 10 - 12 < 10 < 10
Journal of Computer Applications 计算机应用,2014,34( S2) : 34 - 36,54 文章编号: 1001-9081 ( 2014 ) S2-0034-03
ISSN 1001-9081 CODEN JYIIDU
2014-12-15 http: / / www. joca. cn
*
Abstract: Reflective memory network physical layer generally uses fiber as the transmission medium. PseudoRandom Binary Sequence ( PRBS) code can only work on physical layer of a single node card to perform Bit Error Ratio ( BER) test. It cannot take comprehensive test for overall network, nor for node card storage module. To solve this problem, a test method, which can traverse the entire memory range, and can test data transmission BER of all nodes in the network, has been developed. This method not only gave BER, but also presented graphical feature that can be very intuitive to observe the distribution of error bits. Moreover, compared to the PRBS test method, this method used subtractive random number generator algorithm to generate more abundant and more pertinent random test data. Experiments prove that this test method can effectively take comprehensive test for all node cards in reflective memory network. Key words: reflective memory network; Bit Error Ratio ( BER) ; random data; node card
0
引言
能够非常直观、 形象地观察到误码出 出图形化的误码分布图 , 现的规律性。
现在, 反射内存网络在测试系统中得到了越来越广泛的 [1 - 7 ] 。由于反射内存网络数据传输影响因素多 , 其数据 应用 传输可靠性也值得关注 。目前应用于反射内存网的测试仅在 [8 - 9 ] , 实时性测试方面有少量成果 对数据传输误码率测试的 相关其他研究对象中值得借鉴的方法 研究尚无文献可参考, Random Binary Sequence, 有 伪 随 机 二 进 制 序 列 ( PseudoPRBS) 测试法[10] 和内存测试法[11] 。 但将这些方法应用于反 射内存网的测试存在明显的缺陷 : 1 ) PRBS 测试只能实现对底层通信链路的测试 , 内存测 试法只能对读写回路进行测试 ; 2 ) 无法部署到整个反射内存网 , 只能在单个节点或一台 宿主机上执行测试; 3 ) 重点研究方向的成果无法转化为应用于反射内存网 的测试方法。 本文介绍一种可以遍历反射内存网络全部共享内存地址 区间, 并且可以对反射内存网络中所有节点进行数据传输误 码率测试的方法。利用该测试方法, 既可以测试计算出读写 共享内存地址区间时的误码率及相关的抽象指标 , 又可以给
图2
பைடு நூலகம்
测试发送节点误码率测试界面
2
随机数生成与比对方法设计
测试发送节点在每个测试子周期 φ 都需要产生随机数据
图3 测试校验节点误码率测试界面
以供测试。而使用软件方法产生随机数都是基于某种确定的 随机数算法, 这种算法实际产生的都是伪随机数 。但是, 因其 故可以当作自然随机数使 随机程度可以达到实用期望要求 , 用。随机数算法一般是给定一个整数当作随机数种子 , 根据 。 , 种子产生随机数序列 可见 只要随机数种子和随机数算法 相同, 产生的随机数序列就是相同的 。
增刊 2
许海等: 反射内存网络数据传输误码率测试方法
35
节点 α0 ,α1 ,…,α γ -2 , 收到这个中断事件后, 就从共享反射 A , 将校验结 内存的 i 区域读取数据 然后校验数据的正确性 , 果输出给操作人员。 测试子周期 的测试流程如图 1 所示。
3
3. 1
测试程序设计
操作界面设计 在 Windows XP 操作系统下, 采用VC + + 开发了数据传输 误码率测试软件。该测试软件采用了单窗口的图形化操作界
反射内存网络数据传输误码率测试方法
许
1 海 , 周
*
1 2 2 强, 熊良永 , 李景权
( 1. 北京航空航天大学 自动化科学与电气工程学院 , 北京 100191 ;
2. 北京泰吉科技有限公司, 北京 100098 )
( * 通信作者电子邮箱 xuhai515@ foxmail. com)
摘
要: 反射内存网络物理层通常采用光纤作为传输介质 , 采用伪随机二进制序列 ( PRBS) 编码只能对单个节点
板卡的物理层进行误码率测试 , 无法对反射内存网络中所有节点板卡以及节点板卡的存储区进行综合测试 。 针对这 提出并实现了一种可以遍历全部反射内存地址区间 , 并且可以对反射内存网络中所有节点进行数据传输误 种问题, 码率测试的方法。该方法不但可以给出误码率指标 , 同时具有图形化的特点 , 可以非常直观地观察到误码出现的规 律性; 而且, 相比 PRBS 编码, 该测试方法采用减法随机数生成算法产生的测试用随机数更为丰富 , 针对性更强。 实验 表明, 该测试方法可以有效地对反射内存网络中所有节点板卡的误码率进行综合测试 。 关键词: 反射内存网络; 误码率; 随机数; 节点板卡 中图分类号: TP311. 1 ; TP306. 2 文献标志码: A
收稿日期: 2013-12-08 ; 修回日期: 2014-03-15 。 作者简介: 许海( 1990 - ) , 男, 山东济宁人, 硕士研究生, 主要研究方向: 自动测试、 虚拟仪器; 周强 ( 1972 - ) , 男, 北京人, 副教授, 博士, 主 要研究方向: 分布式测试系统、 测试系统建模、 航电总线测试技术; 熊良永 ( 1977 - ) , 男, 四川达州人, 工程师, 主要研究方向: 航电总线集成; 李景权( 1977 - ) , 男, 河北保定人, 工程师, 主要研究方向: 航电总线测试。
3. 2
误码图形显示程序设计
为了更直观地总结误码出现的规律性 , 作为辅助分析工 具, 还设计了一个误码图形显示方法 。 误码图形显示测试方 即可以把一块内存区 法把每个 16 位数据用一个像素点表示 , 域用一幅图像表示。这种方法信息量大且很直观 。
由于测试发送节点和测试校验节点在不同宿主机上 , 因 此需要在宿主机之间传送原始标准随机数据以供比对 , 并将 这个过程称之为同步随机数据 。 测试方法中, 通过宿主机之间传递随机数种子的方法同 步随机数据。随机数种子是一个 32 位正整数, 存储在测试子 周期的测试区块 A i 的头部区域, 其后的数据依次为这个随机 数种子所产生的随机数 。 假定被测试区块 A i 由 1 024 字节组成, 将 A i 的存储区域 32 , R , j = [ 0 , 127 ] 位整数数组 ij 表示 则 R i0 存放的是随机 用 R i1 ,R i2 ,…,R i127 依次存放的是由 R i0 作为种子生成 数种子, 的 127 个随机数。测试校验节点读取 A i 的数据 R ij 后先根据 R i0 生成随机序列, 然后将 R i1 到 R i127 的数据与随机序列比较 , 统计误码比特数, 实时计算误码率并输出给操作者 。
- 12 - 12
第 34 卷
实验结果记录表 α0 值 11 11 13 误码率 < 10 - 12 < 10 - 12 < 10 - 12 α1 值 误码率 15 3. 48 × 10 - 9 13 < 10 - 12 15 4. 05 × 10 - 10