CN107291422B - 一种生成自定义长度零替换prbs图形的方法 - Google Patents
一种生成自定义长度零替换prbs图形的方法 Download PDFInfo
- Publication number
- CN107291422B CN107291422B CN201710477871.6A CN201710477871A CN107291422B CN 107291422 B CN107291422 B CN 107291422B CN 201710477871 A CN201710477871 A CN 201710477871A CN 107291422 B CN107291422 B CN 107291422B
- Authority
- CN
- China
- Prior art keywords
- prbs
- replacement
- zero
- bit
- graph
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Tests Of Electronic Circuits (AREA)
- Executing Machine-Instructions (AREA)
Abstract
本发明提出了一种生成自定义长度零替换PRBS图形的方法,包括:步骤(a),采用PRBS生成算法生成标准的PRBS图形;步骤(b),在得到标准的PRBS字符串之后,在字符串最后添加1bit“0”或“1”;步骤(c),根据不同阶数n的PRBS图形,设定S位为开始进行零替换的起始位,设定X位固定为“1”;步骤(d),设定用户自定义的零替换长度为L(L<n),从S位开始,进行长度为L的零替换;步骤(e),输出替换后的字符串为零替换PRBS图形。本发明采用软件的方式预生成PRBS图形,然后根据零替换PRBS算法以及用户自定义的零替换长度来生成零替换PRBS图形,提高系统灵活性,降低系统成本。
Description
技术领域
本发明涉及测试技术领域,特别涉及一种生成自定义长度零替换PRBS图形的方法。
背景技术
伪随机序列作为一种信号形式,具有良好的相关特性,可作为雷达测距、同步和线性系统测量的信号。伪随机序列具有伪随机性,可以将序列经非线性变换,即构造前馈序列,或者用多个序列组合后输出以增加保密性,因而可用于加密系统和伪随机跳频等场合,还可用以产生伪随机数适于计算机的系统模拟和在数字系统中作为误码测试信号等。因此,伪随机序列在产生之初就显示了其强大的生命力,在通信、雷达、导航以及密码学等重要的技术领域中获得了广泛的应用。
硬件实现PRBS图形采用移位寄存器和异或门,占用的资源很少,由于在高速时极不可靠,利用伪随机序列自身的特性,采用并行方式,以字节的方式产生PRBS图形。采用并行方式实现PRBS方案,可以将工作时钟频率降低到串行产生PRBS的时钟频率的1/8,也就是说要产生1GHz时钟频率的PRBS序列,只需125MH z的时钟驱动即可。
零替换PRBS图形与标准的PRBS图形非常相似,只是在标准PRBS图形基础之上添加了更长的连续零,可以用来测试硬件时钟恢复电路的性能,用户可以用来判断多长的连续零PRBS图形能导致时钟丢失。
目前,尚未有零替换PRBS图形的产生仪器及相关算法实现。
发明内容
本发明提出了一种生成自定义长度零替换PRBS图形的方法。
本发明的技术方案是这样实现的:
一种生成自定义长度零替换PRBS图形的方法,包括以下步骤:
步骤(a),根据硬件生成PRBS的原理,采用PRBS生成算法生成标准的PRBS图形;
步骤(b),在得到标准的PRBS字符串之后,在字符串最后添加1bit“0”或“1”,满足按字节存取的需要;
步骤(c),根据不同阶数n的PRBS图形,设定S位为开始进行零替换的起始位,设定X位固定为“1”;
步骤(d),设定用户自定义的零替换长度为L(L<n),从S位开始,进行长度为L的零替换,如遇X位,则跳过X位继续进行下一位的零替换,如遇结尾,则从开头进行替换,直至满足零替换的长度L;
步骤(e),输出替换后的字符串为零替换PRBS图形。
可选地,所述步骤(a)中,通过PRBS生成算法来生成PRBS图形,具体如下:
步骤(a1),PRBS n的生成多项式为Xn+Xk+1,其中k为特定值,k<n,
PRBS图形 | PRBS生成多项式X<sup>n</sup>+X<sup>k</sup>+1 | 特定值k |
PRBS7 | X<sup>7</sup>+X<sup>6</sup>+1 | 6 |
PRBS9 | X<sup>9</sup>+X<sup>5</sup>+1 | 5 |
PRBS10 | X<sup>10</sup>+X<sup>7</sup>+1 | 7 |
PRBS11 | X<sup>11</sup>+X<sup>9</sup>+1 | 9 |
PRBS15 | X<sup>15</sup>+X<sup>14</sup>+1 | 14 |
PRBS20 | X<sup>20</sup>+X<sup>3</sup>+1 | 3 |
PRBS23 | X<sup>23</sup>+X<sup>18</sup>+1 | 18 |
PRBS31 | X<sup>31</sup>+X<sup>28</sup>+1 | 28 |
步骤(a2),定义长度为n的字符数组Register,初始值全为1;
步骤(a3),定义一个用于产生输出序列的循环,循环次数为PRBS n的长度len=2n-1,循环变量为i;
在循环体内,首先获取Register[n-1]即X(n)的值作为输出output[i],获取Register[k-1]即X(k)的值保存在临时寄存器temp中,然后对字符数组Register中的值循环右移一位,Register[0]的值为output[i]和temp的异或结果;
步骤(a4),循环结束后得到的输出数组output即为PRBS n一个周期内的图形。
本发明的有益效果是:
根据PRBS的生成原理,采用软件的方式预生成PRBS图形,然后根据零替换PRBS算法以及用户自定义的零替换长度来生成零替换PRBS图形,提高系统灵活性,降低系统成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明硬件生成PRBS23的原理图;
图2为本发明的自定义长度零替换的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的在于提供一种生成自定义长度零替换PRBS图形的方法。零替换PRBS图形就是在标准的PRBS图形的基础之上,人为的添加了自定义长度的连续零,可以用来测试硬件时钟恢复电路的性能,用户可以用来判断多长的连续零PRBS图形能导致时钟丢失。零替换PRBS图形的生成方法并不是传统的利用硬件电路来实现,本发明设计一种零替换PRBS的算法,采用软件的方式来生成零替换PRBS图形,将生成的数据预先存储在内存中,需要时直接调入到硬件FPGA中即可产生零替换PRBS输出,简化的硬件设计,性能稳定。
下面结合说明书附图对本发明的生成自定义长度零替换PRBS图形的方法进行详细说明。
本发明的生成自定义长度零替换PRBS图形的方法,包括以下步骤:
步骤(a),根据硬件生成PRBS的原理,采用PRBS生成算法生成标准的PRBS图形;
步骤(b),在得到标准的PRBS字符串之后,人为的在字符串最后添加1bit“0”或“1”,满足按字节存取的需要;
步骤(c),根据不同阶数n的PRBS图形,设定S位为开始进行零替换的起始位,设定X位固定为“1”(PRBS图形不能全为0);
步骤(d),设定用户自定义的零替换长度为L(L<n),从S位开始,进行长度为L的零替换(当前位为1,则将该位反转置0,如果当前位为0,则保持不变),如遇X位,则跳过X位继续进行下一位的零替换,如遇结尾(人为添加的最后1bit不计入替换),则从开头进行替换,直至满足零替换的长度L;
步骤(e),输出替换后的字符串即为零替换PRBS图形。
上述步骤(a)中,通过PRBS生成算法来生成PRBS图形,具体如下:
步骤(a1),PRBS n的生成多项式为Xn+Xk+1,其中k为特定值,k<n,详见表1:
表1
PRBS图形 | PRBS生成多项式X<sup>n</sup>+X<sup>k</sup>+1 | 特定值k |
PRBS7 | X<sup>7</sup>+X<sup>6</sup>+1 | 6 |
PRBS9 | X<sup>9</sup>+X<sup>5</sup>+1 | 5 |
PRBS10 | X<sup>10</sup>+X<sup>7</sup>+1 | 7 |
PRBS11 | X<sup>11</sup>+X<sup>9</sup>+1 | 9 |
PRBS15 | X<sup>15</sup>+X<sup>14</sup>+1 | 14 |
PRBS20 | X<sup>20</sup>+X<sup>3</sup>+1 | 3 |
PRBS23 | X<sup>23</sup>+X<sup>18</sup>+1 | 18 |
PRBS31 | X<sup>31</sup>+X<sup>28</sup>+1 | 28 |
步骤(a2),定义长度为n的字符数组Register,初始值全为1;
步骤(a3),定义一个用于产生输出序列的循环,循环次数为PRBS n的长度len=2n-1,循环变量为i;
在循环体内,首先获取Register[n-1]即X(n)的值作为输出output[i],获取Register[k-1]即X(k)的值保存在临时寄存器temp中,然后对字符数组Register中的值循环右移一位,Register[0]的值为output[i]和temp的异或结果;
步骤(a4),循环结束后得到的输出数组output即为PRBS n一个周期内的图形。
下面以PRBS23为例对本发明的方法进行说明,如图1所示,PRBS23的生成多项式为X23+X18+1,算法如下:
定义长度为23的字符数组Register[23],初始值全为1;
定义一个用于产生输出序列的循环,循环次数为PRBS23的长度len=223-1,循环变量为i;
在循环体内,首先获取Register[22]即X23的值作为输出output[i],获取Register[17]即X18的值保存在临时寄存器temp中,然后对Register数组中的值循环右移一位,Register[0]的值为output[i]和temp的异或结果;
循环结束后得到的输出数组output即为PRBS23一个周期内的图形。
在得到标准的PRBS字符串之后,人为的在字符串最后添加1bit“0”或“1”,满足按字节存取的需要;
根据不同阶数的PRBS图形,设定S位为开始进行零替换的起始位,设定X位固定为“1”;
设定用户自定义的零替换长度为L,从S位开始,进行长度为L的零替换,如遇X位,则跳过X位进行下一位的零替换,如遇结尾(人为添加的最后1bit不计入替换),则从开头进行替换;
输出替换后的字符串即为零替换PRBS图形。
零替换PRBS图形与标准的PRBS图形非常相似,只是在标准PRBS图形基础之上添加了更长的连续零。零替换PRBS图形的特点如下:
(1)零的长度是可变的;
(2)零替换PRBS图形不是由标准PRBS硬件电路生成的,而是预先生成后存储在系统内存中;
(3)采用内存存储的方案就要求零替换PRBS图形长度为偶数;
(4)零替换图形主要用来测试时钟恢复电路的性能;
(5)零替换PRBS图形可以反转产生连续的“1”字符串。
本发明根据PRBS的生成原理,采用软件的方式预生成PRBS图形,然后根据零替换PRBS算法以及用户自定义的零替换长度来生成零替换PRBS图形,提高系统灵活性,降低系统成本。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (2)
1.一种生成自定义长度零替换PRBS图形的方法,其特征在于,包括以下步骤:
步骤(a),根据硬件生成PRBS的原理,采用PRBS生成算法生成标准的PRBS图形;
步骤(b),在得到标准的PRBS字符串之后,在字符串最后添加1bit“0”或“1”,满足按字节存取的需要;
步骤(c),根据不同阶数n的PRBS图形,设定S位为开始进行零替换的起始位,设定X位固定为“1”;
步骤(d),设定用户自定义的零替换长度为L(L<n),从S位开始,进行长度为L的零替换,如遇X位,则跳过X位继续进行下一位的零替换,如遇结尾,则从开头进行替换,直至满足零替换的长度L;
步骤(e),输出替换后的字符串为零替换PRBS图形。
2.如权利要求1所述的一种生成自定义长度零替换PRBS图形的方法,其特征在于,
所述步骤(a)中,通过PRBS生成算法来生成PRBS图形,具体如下:
步骤(a1),PRBS n的生成多项式为Xn+Xk+1,其中k为特定值,k<n,
步骤(a2),定义长度为n的字符数组Register,初始值全为1;
步骤(a3),定义一个用于产生输出序列的循环,循环次数为PRBS n的长度len=2n-1,循环变量为i;
在循环体内,首先获取Register[n-1]即X(n)的值作为输出output[i],获取Register[k-1]即X(k)的值保存在临时寄存器temp中,然后对字符数组Register中的值循环右移一位,Register[0]的值为output[i]和temp的异或结果;
步骤(a4),循环结束后得到的输出数组output即为PRBS n一个周期内的图形。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710477871.6A CN107291422B (zh) | 2017-06-09 | 2017-06-09 | 一种生成自定义长度零替换prbs图形的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710477871.6A CN107291422B (zh) | 2017-06-09 | 2017-06-09 | 一种生成自定义长度零替换prbs图形的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107291422A CN107291422A (zh) | 2017-10-24 |
CN107291422B true CN107291422B (zh) | 2020-08-11 |
Family
ID=60097099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710477871.6A Active CN107291422B (zh) | 2017-06-09 | 2017-06-09 | 一种生成自定义长度零替换prbs图形的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107291422B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103326775A (zh) * | 2012-03-22 | 2013-09-25 | 中兴通讯股份有限公司 | 光网络故障在线检测方法及装置 |
CN103326776A (zh) * | 2012-03-23 | 2013-09-25 | 中兴通讯股份有限公司 | 一种检测光网络故障的测量方法及装置 |
CN103888250A (zh) * | 2014-03-24 | 2014-06-25 | 华南农业大学 | 一种基于自反馈演化序列的密钥序列生成方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8358726B2 (en) * | 2010-06-11 | 2013-01-22 | Nec Laboratories America, Inc. | Method for source synchronous high-speed signal synchronization |
-
2017
- 2017-06-09 CN CN201710477871.6A patent/CN107291422B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103326775A (zh) * | 2012-03-22 | 2013-09-25 | 中兴通讯股份有限公司 | 光网络故障在线检测方法及装置 |
CN103326776A (zh) * | 2012-03-23 | 2013-09-25 | 中兴通讯股份有限公司 | 一种检测光网络故障的测量方法及装置 |
CN103888250A (zh) * | 2014-03-24 | 2014-06-25 | 华南农业大学 | 一种基于自反馈演化序列的密钥序列生成方法 |
Non-Patent Citations (2)
Title |
---|
"A Review on Model Based Design Flow for Implementation of PRBS Using Matlab and correlate with Correlation Radar Using VHDL";Shrikant Kumar,Paresh Rawat;《International Journal of Engineering Research and Development》;20160630;第12-17页 * |
"基于FPGA的并行PRBS序列的实现";刘宇;《理论与方法》;20080531;第27卷(第5期);第6-8页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107291422A (zh) | 2017-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zuckerman | General weak random sources | |
US9575726B2 (en) | Bit sequence generator and apparatus for calculating a sub-rate transition matrix and a sub-rate initial state for a state machine of a plurality of state machines | |
CN105045561A (zh) | 一种伪随机数产生方法 | |
Masoodi et al. | An analysis of linear feedback shift registers in stream ciphers | |
CN103440119B (zh) | 一种基于m序列发生器的本原多项式伪随机序列发生器 | |
CN109375897B (zh) | 伪随机序列的生成方法 | |
Chen et al. | Achieving progressive precision in stochastic computing | |
CN105138306A (zh) | 一种数据位数可选的伪随机信号发生方法 | |
CN107291422B (zh) | 一种生成自定义长度零替换prbs图形的方法 | |
Saarinen | On entropy and bit patterns of ring oscillator jitter | |
EP3770750A1 (en) | Entropy generator and method of generating enhanced entropy using truly random static entropy | |
US20100205235A1 (en) | M-sequence generator, providing method thereof, and random error generating device in which m-sequence generator is used | |
CN204883682U (zh) | 一种多通道伪随机信号发生器 | |
CN204856461U (zh) | 一种数据位数可选的伪随机信号发生器 | |
Ma et al. | A pseudo-random sequence generation scheme based on RNS and permutation polynomials | |
Rajagopalan et al. | Diffused bit generator model for trng application at CMOS 45nm technology | |
CN114421931A (zh) | 伪随机分频信号产生电路及方法 | |
CN101187692B (zh) | 半导体集成电路 | |
RU99672U1 (ru) | Генератор случайных чисел | |
Wijesinghe et al. | Hardware implementation of random number generators | |
Mao et al. | Zero-bias true random number generator using LFSR-based scrambler | |
Jin et al. | Estimation of primitive polynomial for m-sequence with finite sequence length | |
CN105159652A (zh) | 一种多通道伪随机信号发生方法 | |
Van Truong | Applying M-sequences Decimation to Generate Interleaved Sequence | |
Antoniadis et al. | An efficient implementation of a delay-based PUF construction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |