CN100542029C - 伪随机序列发生装置 - Google Patents
伪随机序列发生装置 Download PDFInfo
- Publication number
- CN100542029C CN100542029C CNB2005100905457A CN200510090545A CN100542029C CN 100542029 C CN100542029 C CN 100542029C CN B2005100905457 A CNB2005100905457 A CN B2005100905457A CN 200510090545 A CN200510090545 A CN 200510090545A CN 100542029 C CN100542029 C CN 100542029C
- Authority
- CN
- China
- Prior art keywords
- pseudo
- random sequence
- data
- combinational logic
- phase
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
Abstract
本发明公开了两种伪随机序列发生装置,第一种装置包含:k个伪随机序列发生器;所述伪随机序列发生器为:由相位间隔为1的伪随机序列发生器的移位矩阵乘t次的结果矩阵,推导获得的相位间隔t的伪随机序列发生器;k个伪随机序列发生器与同一个参考时钟相连,分别接收种子数据,在一个参考时钟周期里,分别输出1比特数据,共输出并列的k比特数据,作为伪随机序列数据输出到外部;k、t均为大于1的自然数。第二种装置包含1个伪随机序列发生器,所述的伪随机序列发生器也为上述的相位间隔t的伪随机序列发生器;t为大于1的自然数。本发明提供的两种伪随机序列发生装置,能够在每个参考时钟周期里输出多比特伪随机码,提高数据流的产生速度。
Description
技术领域
本发明涉及伪随机序列的产生技术,特别涉及伪随机序列发生装置。
背景技术
伪随机序列又称为伪随机码或伪随机噪声(PN,Pseudo Noise)码,它具有某种确定的编码规则,同时又便于重复产生和处理,因而在通信领域应用广泛。伪随机序列的产生方式很多,通常产生伪随机序列的电路为一反馈移位寄存器。它又可分为线性反馈移位寄存器和非线性反馈移位寄存器两类。以下所说的伪随机序列发生器都是指其中的线性反馈移位寄存器。
通常伪随机序列发生器包含多个移位寄存器(SR,shift register)和一些组合逻辑电路,通过各个移位寄存器之间进行的直接移位和组合逻辑电路进行的组合逻辑,产生二进制的序列值。直接移位是指将某个移位寄存器的值直接输出给另一个移位寄存器,组合逻辑电路通常是由各种门电路组成的没有记忆功能的电路,它的特点是任一时刻的输出信号只取决于该时刻的输入信号,而与电路原来所处的状态无关,它的运行时间可以不计。伪随机序列发生器的工作需要介入参考时钟,参考时钟接入到其中的每一个移位寄存器中。
由线性反馈移位寄存器产生出的周期最长的二进制数字序列称为最大长度线性反馈移位寄存器序列,简称m序列,移位寄存器的长度为n时,m序列的周期为2n-1,没有全0状态,在一个周期里m序列包含2n-1bit的伪随机码,其中,n为大于1的自然数。由于在现有技术中,伪随机序列发生器在每个参考时钟周期里输出1bit的伪随机码,m序列输出一个周期的序列值的时间长度就是2n-1个参考时钟周期的时间长度。最大长度线性反馈移位寄存器,根据其中n个移位寄存器之间的移位关系和组合逻辑电路的不同,其输出的序列值的排列顺序也不同,即同样是一个周期里2n-1bit的伪随机码,根据伪随机序列发生器的不同,其中2n-1bit的排列顺序也会不同。
伪随机序列的初始值称为种子,通常由微处理器通过种子寄存器给到每一个移位寄存器中,当移位寄存器的长度为n时,种子就是nbit二进制数,nbit种子数分别给到n个移位寄存器中,种子中的nbit二进制数可以任意地给出。
请参见图1,图1为相位间隔1的伪随机序列发生器的实现电路示意图。本文中为了叙述的方便,将如图1所示的相位间隔1的伪随机序列发生器称为相位间隔1的PN3序列发生器,其产生的序列值称为PN3序列值或PN3伪随机码。图1所示的相位间隔1的PN3序列发生器包含3个移位寄存器即SR0、SR1、SR2,以及一个加法电路101,其中加法电路101是组合逻辑电路中的异或门电路。SR0、SR1、SR2的种子即初始值是3bit的数,即bit0、bit1、bit2,由微处理器通过种子寄存器将bit0赋给SR0、将bit1赋给SR1、将bit2赋给SR2,SR0、SR1、SR2均接入周期为T的参考时钟,加法电路101是组合逻辑电路,不需要参考时钟。图1中相位间隔为1的PN3序列发生器在每个参考时钟周期完成以下操作:将当前时钟周期里第i个移位寄存器的值送给第i-1个移位寄存器,此处i=1~2,如将当前时钟周期SR2的值送给SR1、将当前时钟周期SR1的值送给SR0,同时将当前时钟周期SR0的值和当前时钟周期SR1的值在加法电路101进行相加后将其结果送给SR2。图1所示的伪随机序列发生器在每个参考时钟周期里将当前SR0的值输出,它在每个参考时钟周期里只输出1个bit的二进制伪随机码,即1个bit的序列值。
一个伪随机序列发生器在每个参考时钟周期里完成的工作可以表达成当前移位寄存器值乘上一个移位矩阵M,比如包含n个移位寄存器,即移位寄存器0~移位寄存器n-1的伪随机序列发生器可以用表达式(1)表示:
表达式(1)中,a0(k)~an(k)为当前时钟周期移位寄存器0~移位寄存器n-1的值,a0(k+1)~an(k+1)为下个时钟周期移位寄存器0~移位寄存器n-1的值,M为移位矩阵,n、k为自然数,且n>1。
如图1中,由a0(k)~a2(k)表示当前时钟周期移位寄存器0~移位寄存器2的值,由a0(k+1)~a2(k+1)表示下个时钟周期移位寄存器0~移位寄存器2的值时,由于存在如下等式:a0(k+1)=a1(k)、a1(k+1)=a2(k)、a2(k+1)=a0(k)+a1(k),因此,如图1所示的相位间隔为1的PN3序列发生器可以用表达式(2)表示:
此时,图1所示相位间隔为1的PN3序列发生器的移位矩阵M如表达式(3):
反之,在现有技术中,根据一个任意的移位矩阵,都可以获得一个伪随机序列发生器的实现电路,如若有如表达式(3)所示的移位矩阵M,则可以获得如图1所示的一个伪随机序列发生器的实现电路。
图1中,移位寄存器的长度为3,因此m序列的周期为23-1=7,一个周期里包含的bit数为7,在每一个周期里,m序列将这个7bit的伪随机码循环输出,由于在每一个参考时钟周期T里输出1bit的值,因此在每个7×T的时间里输出7bit的值。
请参见图2,图2为图1所示的相位间隔1的PN3序列发生器中种子即初始值赋给各个移位寄存器的实现电路示意图。图2中,SR0、SR1、SR2分别表示相位间隔1的PN3序列发生器的三个移位寄存器,种子201包含3个1bit的数,即bit0、bit1、bit2,其中,bit0赋给SR0、bit1赋给SR1、bit2赋给SR2。
正常一个伪随机序列发生器在每个参考时钟周期里只能生成1个bit的伪随机码,但在通信领域中某些应用场合需要产生并行的伪随机序列码,即一次输出k个bit的并行数据,其中k>1。现有技术中,通常是在伪随机序列发生器后接一个kbit的缓存寄存器,kbit的缓存寄存器接收连续kbit的串行数据后,在每k个参考时钟周期里输出一次kbit的数据。
请参见图3,图3为现有技术中一次同时生成5bit PN3序列值的伪随机序列发生装置的实现电路示意图。图3所示的装置包含一个相位间隔为1的PN3序列发生器301,5bit缓存寄存器302,5bit缓存寄存器302在每个参考时钟周期里接收1bit的数据,接收连续5bit的串行数据后,在每5个参考时钟周期里输出一次5bit的数据。
现有技术最大的缺点是:数据的产生速度慢,在一个参考时钟周期里只能产生1bit的数据,如果需要输出kbit的并行数据,需要等待k个参考时钟周期,当需求为每个参考时钟周期输出kbit伪随机码时,现有方法无法解决。
发明内容
有鉴于此,本发明的主要目的在于提供两种伪随机序列发生装置,能够在每个参考时钟周期里输出多比特伪随机码,提高数据流的产生速度。
根据上述目的,本发明提供的第一种伪随机序列发生装置包含:k个伪随机序列发生器;所述伪随机序列发生器为:由相位间隔为1的伪随机序列发生器的移位矩阵乘t次的结果矩阵,推导获得的相位间隔t的伪随机序列发生器;k个伪随机序列发生器与同一个参考时钟相连,分别接收种子数据,在一个参考时钟周期里,每个伪随机序列发生器分别根据所述结果矩阵,进行一次组合逻辑处理输出1比特数据,共输出并列的k比特数据,作为伪随机序列数据输出到外部;
k、t均为大于1的自然数。
所述的k个伪随机序列发生器,分别直接接收种子数据。
所述相位间隔t的伪随机序列发生器包含:n个移位寄存器和根据产生相位间隔t的移位矩阵设置的组合逻辑电路;n个移位寄存器分别接收种子数据中的1比特数据,在每个参考时钟周期里进行一次组合逻辑电路的组合逻辑处理,由最低位移位寄存器输出1比特数据作为伪随机序列数据的1路输出到外部,每相邻两个时钟输出的数据相位间隔为t;
n为大于1的自然数。
该装置还包含:移相组合逻辑处理单元;
移相组合逻辑处理单元接收种子数据,对种子数据进行相位移动处理,产生k个具有预定相位间隔的值分别输出给k个伪随机序列发生器。
所述相位间隔t的伪随机序列发生器包含:n个移位寄存器和根据产生相位间隔t的移位矩阵设置的组合逻辑电路;n个移位寄存器分别接收种子数据或种子数据经过相位移动处理之后的值中的1比特数据,在每个参考时钟周期里进行一次组合逻辑电路的组合逻辑处理,由最低位移位寄存器输出1比特数据作为伪随机序列数据的1路输出到外部,每相邻两个时钟输出的数据相位间隔为t;
n为大于1的自然数。
所述组合逻辑电路根据产生相位间隔t的移位矩阵设置,包含一个或多个加法电路,每个加法电路与至少两个移位寄存器分别相连。
所述的移相组合逻辑处理单元包含p个种子传输线和k-p个移相组合逻辑电路;
p个种子传输线分别将种子数据直接传输给p个伪随机序列发生器;
k-p个移相组合逻辑电路同时接收种子数据;各个移相组合逻辑电路分别对种子数据进行相位移动处理,分别产生与种子数据具有正整数倍预定相位间隔的1个初始值,共产生k-p个初始值,输出给k-p个伪随机序列发生器;
p为自然数,且p<k。
所述k-p个移相组合逻辑电路根据产生预定相位间隔的相同或不同移位矩阵设置,分别包含一个或多个加法电路;
每个加法电路接收种子数据中的至少两比特数据进行相加后,作为1个初始值中的1比特数据输出给1个伪随机序列发生器中的1个移位寄存器。
本发明提供的第二种伪随机序列发生装置,包含1个伪随机序列发生器,
所述的伪随机序列发生器为:由相位间隔为1的伪随机序列发生器的移位矩阵乘t次的结果矩阵,推导获得的相位间隔t的伪随机序列发生器;其包含n个移位寄存器和根据所述结果矩阵设置的第一组合逻辑电路;
n个移位寄存器接收种子数据,在每个参考时钟周期里进行一次第一组合逻辑电路的组合逻辑处理,每个移位寄存器在每相邻两个时钟产生的数据相位间隔为t,n个移位寄存器在每个参考时钟周期里输出至少两比特数据到外部;
t、n均为大于1的自然数。
所述的伪随机序列发生器的n个移位寄存器,在每个参考时钟周期里由其中的至少两个移位寄存器分别输出数据到外部。
该装置还包含:组合逻辑处理单元;
所述的伪随机序列发生器的n个移位寄存器中至少两个移位寄存器分别输出的数据中全部或一部分数据输出给组合逻辑处理单元;
所述的组合逻辑处理单元,接收n个移位寄存器中至少两个移位寄存器分别输出的数据中全部或一部分数据,对其进行组合逻辑处理后,产生大于0且小于或等于k比特的数据,将其作为伪随机序列数据输出到外部。
所述的组合逻辑处理单元,包含大于0且小于或等于k个根据产生预定相位间隔的移位矩阵的第一行设置的第二组合逻辑电路;
大于0且小于或等于k个第二组合逻辑电路,分别接收n个移位寄存器中至少两个移位寄存器分别输出的数据中全部或一部分数据中的数据,分别对其进行组合逻辑处理后,产生大于0且小于或等于k比特数据,作为伪随机序列数据分别输出到外部。
所述大于0且小于或等于k个第二组合逻辑电路分别根据产生预定相位间隔的相同或不同移位矩阵的第一行设置,分别包含一个或多个加法电路,每个加法电路与n个移位寄存器中输出数据的移位寄存器中的至少两个移位寄存器分别相连,接收移位寄存器输出的数据进行加法处理后,输出数据。
发明利用伪随机序列发生器中的移位矩阵乘多次的结果矩阵,获得相位间隔t的伪随机序列发生器、以及一些组合逻辑电路,利用相位间隔t的伪随机序列发生器和一些组合逻辑电路,可以在一个参考时钟周期里同时输出多比特伪随机码,由此提高数据流的产生速度。采用本发明的装置可以根据需求产生并行的伪随机码序列。
附图说明
图1为现有技术中相位间隔1的PN3序列发生器的实现电路示意图;
图2为图1所示的PN3序列发生器中初始值赋给各个移位寄存器的实现电路示意图;
图3为现有技术中输出5bit并行的PN3伪随机码的伪随机序列发生装置示意图;
图4为本发明实施例1中一次同时生成5bit PN3序列值的伪随机序列发生装置示意图;
图5为本发明实施例1中相位间隔5的PN3序列发生器的实现电路示意图;
图6为本发明实施例1的图4中移相组合逻辑处理单元的实现电路示意图;
图7为本发明实施例1中一次同时生成5bit PN3序列值的时序示意图;
图8为本发明实施例2中一次同时生成5bit PN3序列值的伪随机序列发生装置示意图
图9为本发明实施例2中一次同时生成5bit PN3序列值的时序示意图。
具体实施方式
若有相位间隔1的伪随机序列发生器,其移位矩阵为M,可以根据M乘t次的结果Mt,推导出相位间隔t的伪随机序列发生器,相位间隔t的伪随机序列发生器的移位矩阵为Mt,在每个参考时钟周期里根据Mt,进行一次组合逻辑电路的组合逻辑处理,t为大于1的自然数。如果使用k个相位间隔t的伪随机序列发生器,同时直接接收种子数据,就可以在一个参考时钟周期里输出并列的kbit序列值,但是,此时输出的kbit序列值是相同的,在实际应用中,这种需求比较少见。
因此,本发明中还可以是k个相位间隔t的伪随机序列发生器接收经过移相组合逻辑处理单元处理后的种子数据,即在k个相位间隔t的伪随机序列发生器之前设置一个移相组合逻辑处理单元,k个移相组合逻辑处理单元包含p个种子传输线和k-p个移相组合逻辑电路,p个种子传输线分别将种子数据直接传输给p个伪随机序列发生器,k-p个移相组合逻辑电路分别根据M乘多次的相同或不同的移位矩阵设置、同时接收种子数据,分别对种子数据进行相位移动处理后,分别产生与种子数据具有正整数倍预定相位间隔的1个初始值,共k-p个初始值,分别输出给k-p个伪随机序列发生器,如此,k个伪随机序列发生器就可以在一个参考时钟周期里输出k个连续或不连续的序列值。
上述发明的优化方案是:只使用一个相位间隔t的伪随机序列发生器。只使用一个相位间隔t的伪随机序列发生器时,可以只由其中包含的n个移位寄存器中的1个移位寄存器在1个参考时钟周期里输出kbit数据到外部,但是,此时输出的kbit序列值是相同的,实际应用中,这种需求比较少见。当然,也可以由n个移位寄存器中的至少两个移位寄存器分别将数据直接输出到外部,其中,每个移位寄存器输出的数据可以是1bit,也可以是多bit,即可在一个参考时钟周期里输出kbit序列值。
本发明的优化方案中,至少两个移位寄存器输出的数据中全部或一部分数据也可以经过组合逻辑处理单元处理之后再输出到外部,其中,组合逻辑处理单元包含至少一个组合逻辑电路,各个组合逻辑电路分别根据M乘多次的相同或不同的移位矩阵的第一行设置,分别接收至少两个移位寄存器输出的数据中全部或一部分数据中的数据,分别对其进行组合逻辑处理,产生小于或等于kbit的数据。
以下参照附图并举较佳实施例,对本发明进一步详细说明。
实施例1:一次同时生成5bit PN3序列值的伪随机序列发生装置。
请参见图4,图4为本发明实施例1中一次同时生成5bit PN3序列值的伪随机序列发生装置示意图。图4所示的装置包含5个相位间隔5的PN3序列发生器,即第1个相位间隔5的PN3序列发生器401~第5个相位间隔5的PN3序列发生器405,以及移相组合逻辑处理单元406。第1个相位间隔5的PN3序列发生器401~第5个相位间隔5的PN3序列发生器405并行工作、均接入周期为T的参考时钟、并在一个参考时钟周期里均输出一个bit的PN3序列值。一个相位间隔5的PN3序列发生器一次完成5个相位的移位,其移位矩阵为相位间隔1的PN3序列发生器的移位矩阵M乘5次的结果,即相位间隔5的PN3序列发生器的移位矩阵为M5,由于M如表达式(3)所示为: 通过计算得出: 最终得出:
就是说,相位间隔5的PN3序列发生器可以用表达式(4)表示:
表达式(4)中,a0(k)~a2(k)为当前时钟周期移位寄存器0~移位寄存器2的值,a0(k+1)~a2(k+1)为下个时钟周期移位寄存器0~移位寄存器2的值。由表达式(4)可知,在相位间隔5的PN3序列发生器中存在如下的等式关系:
请参见图5,图5为本发明实施例1中相位间隔5的PN3序列发生器的实现电路示意图,图5所示相位间隔5的PN3序列发生器的移位矩阵M′为:
因此,图5所示的相位间隔5的PN3序列发生器包含3个移位寄存器:SR0、SR1、SR2,以及加法电路501、加法电路502,加法电路501、加法电路502均是组合逻辑电路中的异或门电路,相位间隔5的PN3序列发生器的种子或初始值是3bit的数,即bit0、bit1、bit2,由微处理器通过种子寄存器将bit0赋给SR0、将bit1赋给SR1、将bit2赋给SR2,SR0、SR1、SR2均接入周期为T的参考时钟,加法电路501、加法电路502是组合逻辑电路,不需要参考时钟。图5所示的相位间隔5的PN3序列发生器在每个参考时钟周期完成以下操作:根据M5的第一行,将当前时钟周期里SR0、SR1、SR2的值在加法电路501进行相加后将其结果送给SR0;根据M5的第二行,将当前时钟周期里SR0、SR2的值在加法电路502进行相加后将其结果送给SR1;根据M5的第三行,将当前时钟周期里SR0的值送给SR2。这样,图5所示的相位间隔5的PN3序列发生器输出的序列值的相位间隔为5,这个相位间隔5是针对相位间隔1的PN3序列发生器来说的,即当相位间隔1的PN3序列发生器输出的序列值为:bit0、bit1、bit2、bit3、...时,相位间隔5的PN3序列发生器输出的序列值为:bit0、bit5、bit10、bit15、...。
图4所示的装置包含5个并行的如图5所示的相位间隔5的PN3序列发生器,每个相位间隔5的PN3序列发生器在一个参考时钟周期里均输出一个bit的PN3序列值。图4中,第1个相位间隔5的PN3序列发生器401~第5个相位间隔5的PN3序列发生器405的初相依次相差一位,即其初始值的相位依次相差一位,使得第1个相位间隔5的PN3序列发生器401~第5个相位间隔5的PN3序列发生器405在一个周期里输出连续的5bit序列值。图4中,第1个相位间隔5的PN3序列发生器401~第5个相位间隔5的PN3序列发生器405的初始值由移相组合逻辑处理单元406提供,移相组合逻辑处理单元406包含一个种子传输线以及4个移相组合逻辑电路。4个移相组合逻辑电路即为产生初始值r的组合逻辑电路,r=1~4,r为自然数。移相组合逻辑处理单元406中,种子传输线将种子数直接赋给第1个相位间隔5的PN3序列发生器401中的3个移位寄存器中,产生初始值r的组合逻辑电路接收种子数,根据Mr产生初始值r,并输出给第r个相位间隔5的PN3序列发生器40r,r=1~4,r为自然数。使图4中的第1个相位间隔5的PN3序列发生器401~第5个相位间隔5的PN3序列发生器405初始值依次相差一位的实现电路如图6所示。
请参见图6,图6为图4中移相组合逻辑处理单元406的实现电路示意图。图6中,SR0j、SR1j、SR2j分别表示图4中第j个相位间隔5的PN3序列发生器的三个移位寄存器即SR0、SR1、SR2,其中j=1~5,j为自然数,种子单元605包含3个bit的数,即bit0、bit1、bit2,其中,bit0将赋给SR01、bit1将赋给SR11、bit2将赋给SR21。如图6所示,产生初始值r的组合逻辑电路60r根据Mr产生,产生的初始值r中3bit的数bit0r、bit1r、bit2r将分别赋给SR0(r+1)、SR1(r+1)、SR2(r+1),其中r=1~4,r为自然数。比如:由于 因此当初始值4有3个bit的数:bit04、bit 14、bit24时,得出如下等式:
即产生初始值4的组合逻辑电路604实现:将种子数中bit1和bit2进行相加,其相加的结果值bit04将赋给SR05,将种子数中bit0、bit1和bit2进行相加,其相加的结果值bit14将赋给SR15,将种子数中bit0和bit2进行相加,其相加的结果值bit24将赋给SR25。初始值1、初始值2、初始值3的产生方法与初始值4的产生方法同理,利用 即可得出。
请参见图7,图7为本发明实施例1中每个参考时钟周期输出5bitPN3序列值的时序示意图。图7表示的是图4所示的装置在每个参考时钟周期输出5bit PN3序列值的时序示意图。如图7所示,第i+1个相位间隔5的PN3序列发生器在每个参考时钟周期里产生相位相差5的序列值,即在每个参考时钟周期里依次产生biti、bit(i+5)、bit(i+10)、...,i=0~4,i为自然数。比如:第1个相位间隔5的PN3序列发生器在每个参考时钟周期里产生相位相差5的序列值,即在每个参考时钟周期里依次产生bit0、bit5、bit10、...。第2个相位间隔5的PN3序列发生器在每个参考时钟周期里产生相位相差5的序列值:bit1、bit6、bit11、...;第3个相位间隔5的PN3序列发生器在每个参考时钟周期里产生相位相差5的序列值:bit2、bit7、bit12、...;第5个相位间隔5的PN3序列发生器在每个参考时钟周期里产生相位相差5的序列值:bit4、bit9、bit14、...。
以上以取得一次能同时生成5个bit连续的PN3序列值的推倒过程为例进行说明,实际上这样的推倒过程可以推广到任意序列的伪随机码,并且可以同时输出连续或非连续的任意bit的数据。就是说,对于其他序列的伪随机码可以采用相同的方法进行分析和处理,从而保证在一个参考时钟周期内生成多bit该序列的伪随机码。所以在前面的描述中PN3序列可以替代为其他伪随机序列,同时输出5bit连续的序列值可以替代为可以同时输出任意bit的连续或非连续的序列值。举例来说:如果在一个参考时钟周期里需要输出多个不连续的序列值,比如,现有技术中存在移位矩阵为M的相位间隔1的伪随机序列发生器,该伪随机序列发生器在一个参考时钟周期里输出1bit的序列值,输出的序列为bit0、bit1、bit2、...,现需要在一个参考时钟周期里输出3个不连续的序列值,即在第一个参考时钟周期里输出序列的bit1、bit3、bit4,第二个参考时钟周期里输出序列的bit7、bit9、bit10,...时,主要对图4所示的装置,进行如下1)和2)的变换后,即可满足要求。
1)将图4所示的装置中,包含5个相位间隔5的PN3序列发生器,改为包含3个相位间隔6的伪随机序列发生器,其中,相位间隔6的伪随机序列发生器根据相位间隔1的伪随机序列发生器的移位矩阵M乘6次的结果,即根据M6产生。
2)对包含种子传输线和4个产生初始值的组合逻辑电路的移相组合逻辑处理单元406也进行如下变换:将种子传输线改为产生初始值0的组合逻辑电路,产生初始值0的组合逻辑电路根据M产生,产生的初始值0输出给第一个相位间隔6的伪随机序列发生器;产生初始值1的组合逻辑电路根据M3产生,产生的初始值1输出给第二个相位间隔6的伪随机序列发生器;产生初始值2的组合逻辑电路根据M4产生,产生的初始值2输出给第三个相位间隔6的伪随机序列发生器;而且去掉产生初始值3的组合逻辑电路和产生初始值4的组合逻辑电路。
利用类似于如上1)和2)的变换,也可以得到如下不同的序列值输出方法:
(1)第一个参考时钟周期里输出序列的bit1、bit3、bit6、bit8,第二个参考时钟周期里输出序列的bit4、bit6、bit9、bit11,...。此时伪随机序列发生装置需要包含:4个分别根据M3产生的相位间隔3的伪随机序列发生器、1个移相组合逻辑处理单元,移相组合逻辑处理单元包含4个产生初始值的组合逻辑电路,分别根据M、M3、M6、M8产生,移相组合逻辑处理单元产生的4个初始值分别送给1个相位间隔3的伪随机序列发生器。
(2)第一个参考时钟周期里输出序列的bit5、bit7,第二个参考时钟周期里输出序列的bit9、bit11,...。此时伪随机序列发生装置需要包含:2个分别根据M4产生的相位间隔4的伪随机序列发生器、1个移相组合逻辑处理单元,移相组合逻辑处理单元包含2个产生初始值的组合逻辑电路,分别根据M5、M7产生,移相组合逻辑处理单元产生的2个初始值分别送给1个相位间隔4的伪随机序列发生器。
实施例2:一次同时生成5bit PN3序列值的伪随机序列发生装置的优化方案。
请参见图8,图8为本发明实施例2中一次同时生成5bit PN3序列值的伪随机序列发生装置。图8所示的装置包含一个相位间隔5的PN3序列发生器801、两个数据传输线、组合逻辑处理单元804,其中,组合逻辑处理单元804包含产生输出值4的组合逻辑电路802和产生输出值5的组合逻辑电路803。相位间隔5的PN3序列发生器801采用如图5所示的相位间隔5的PN3序列发生器,该装置接收种子数,并在每个参考时钟周期里将所包含的3个移位寄存器SR0、SR1、SR2中当前SR0的值输出,即为输出值1。两个数据传输线分别根据M、M2的第一行输出数据,即分别为输出值2、输出值3,产生输出值s的单元根据Ms-1的第一行产生,s=4~5,s为自然数,此处,M为相位间隔1的PN3序列发生器的移位矩阵。由 得出:
其中,a0、a1、a2为当前时钟周期SR0、SR1、SR2的值,输出值2~输出值5为当前时钟周期一次同时生成5bit PN3序列值的伪随机序列发生装置的4个输出值。因此,两个数据传输线分别将当前时钟周期里SR1、SR2的值输出,即分别为输出值2、输出值3,产生输出值4的组合逻辑电路802实现:将当前时钟周期SR0和SR1的值在组合逻辑电路中相加后输出,即为输出值4,产生输出值5的组合逻辑电路803实现:将当前时钟周期SR1和SR2的值在组合逻辑电路中相加后输出,即为输出值5。
请参见图9,图9为本发明实施例2中每个参考时钟周期输出5bit PN3序列值的时序示意图。图9表示的是图8中装置在每个参考时钟周期输出5bit PN3序列值的时序示意图。如图9所示,相位间隔5的PN3序列发生器在每个参考时钟周期里产生相位相差5的序列值,即在每个参考时钟周期里依次产生bit0、bit5、bit10、...,输出值2在每个参考时钟周期里输出的序列值为相位相差5的序列值:bit1、bit6、bit11、...,输出值5在每个参考时钟周期里输出的序列值为相位相差5的序列值bit4、bit9、bit14、...。
如果图8中只需要输出值1、输出值2、输出值3,不需要输出值4、输出值5,就是说,如果在一个参考时钟周期里只需要输出3bit PN3序列值,而且第一次输出bit0、bit1、bit2,第二次输出bit5、bit6、bit7,依此类推,则图8中不需要组合逻辑处理单元804,所有的输出值从3个移位寄存器,即从SR0、SR1、SR2直接输出即可。
如果图8中只需要输出值4、输出值5,不需要输出值1、输出值2、输出值3,就是说,如果在一个参考时钟周期里只需要输出2bit PN3序列值,而且第一次输出bit3、bit4,第二次输出bit8、bit9,依此类推,则图8中需要组合逻辑处理单元804,而且不再需要从3个移位寄存器,即从SR0、SR1、SR2直接输出序列值的部分。
如果在一个参考时钟周期里需要输出多个不连续的序列值,比如,现有技术中存在移位矩阵为M的相位间隔1的伪随机序列发生器,该伪随机序列发生器在一个参考时钟周期里输出1bit的序列值,输出的序列为bit0、bit1、bit2、...,现需要在一个参考时钟周期里输出3个不连续的序列值,即在第一个参考时钟周期里输出序列的bit1、bit3、bit4,第二个参考时钟周期里输出序列的bit7、bit9、bit10,...时,主要对图8所示的装置,进行如下1)和2)的变换后,即可满足要求。
1)将图9所示的装置中,相位间隔5的PN3序列发生器,改为相位间隔6的伪随机序列发生器,其中,相位间隔6的伪随机序列发生器根据M6产生。
2)只需要输出值1、输出值2、输出值3,并分别根据M、M3、M4的第一行产生,即根据M、M3、M4的第一行,或者全部直接从相位间隔6的伪随机序列发生器的移位寄存器通过数据传输线输出;或者全部经过组合逻辑电路组合逻辑处理后输出;或者一部分直接从相位间隔6的伪随机序列发生器的移位寄存器通过数据传输线输出,另一部分经过组合逻辑电路组合逻辑处理后输出。
利用类似于如上1)和2)的变换,也可以得到如下不同的序列值输出方法:
(1)第一个参考时钟周期里输出序列的bit1、bit3、bit6、bit8,第二个参考时钟周期里输出序列的bit4、bit6、bit9、bit11,...。此时伪随机序列发生装置需要包含:1个根据M3产生的相位间隔3的伪随机序列发生器,并且产生4个输出值,分别根据M、M3、M6、M8的第一行产生,即根据M、M3、M6、M8的第一行,或者全部直接从相位间隔3的伪随机序列发生器的移位寄存器通过数据传输线输出;或者全部经过组合逻辑电路组合逻辑处理后输出;或者一部分直接从相位间隔3的伪随机序列发生器的移位寄存器通过数据传输线输出,另一部分经过组合逻辑电路组合逻辑处理后输出。
(2)第一个参考时钟周期里输出序列的bit5、bit7,第二个参考时钟周期里输出序列的bit9、bit11,...。此时伪随机序列发生装置需要包含:1个根据M4产生的相位间隔4的伪随机序列发生器,并且产生2个输出值,分别根据M5、M7的第一行产生,即根据M5、M7的第一行,或者全部直接从相位间隔4的伪随机序列发生器的移位寄存器通过数据传输线输出;或者全部经过组合逻辑电路组合逻辑处理后输出;或者一部分直接从相位间隔4的伪随机序列发生器的移位寄存器通过数据传输线输出,另一部分经过组合逻辑电路组合逻辑处理后输出。
本发明的主要功能在于能够在每个参考时钟周期里输出任意bit的任意序列的伪随机码。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (13)
1、一种伪随机序列发生装置,其特征在于,该装置包含:k个伪随机序列发生器;
所述伪随机序列发生器为:由相位间隔为1的伪随机序列发生器的移位矩阵乘t次的结果矩阵,推导获得的相位间隔t的伪随机序列发生器;
k个伪随机序列发生器与同一个参考时钟相连,分别接收种子数据,在一个参考时钟周期里,每个伪随机序列发生器分别根据所述结果矩阵,进行一次组合逻辑处理输出1比特数据,共输出并列的k比特数据,作为伪随机序列数据输出到外部;
k、t均为大于1的自然数。
2、如权利要求1所述的伪随机序列发生装置,其特征在于:所述的k个伪随机序列发生器,分别直接接收种子数据。
3、如权利要求2所述的伪随机序列发生装置,其特征在于:
所述相位间隔t的伪随机序列发生器包含:n个移位寄存器和根据产生相位间隔t的移位矩阵设置的组合逻辑电路;n个移位寄存器分别接收种子数据中的1比特数据,在每个参考时钟周期里进行一次组合逻辑电路的组合逻辑处理,由最低位移位寄存器输出1比特数据作为伪随机序列数据的1路输出到外部,每相邻两个时钟输出的数据相位间隔为t;
n为大于1的自然数。
4、如权利要求1所述的伪随机序列发生装置,其特征在于,该装置还包含:移相组合逻辑处理单元;
移相组合逻辑处理单元接收种子数据,对种子数据进行相位移动处理,产生k个具有预定相位间隔的值分别输出给k个伪随机序列发生器。
5、如权利要求4所述的伪随机序列发生装置,其特征在于:
所述相位间隔t的伪随机序列发生器包含:n个移位寄存器和根据产生相位间隔t的移位矩阵设置的组合逻辑电路;n个移位寄存器分别接收种子数据或种子数据经过相位移动处理之后的值中的1比特数据,在每个参考时钟周期里进行一次组合逻辑电路的组合逻辑处理,由最低位移位寄存器输出1比特数据作为伪随机序列数据的1路输出到外部,每相邻两个时钟输出的数据相位间隔为t;
n为大于1的自然数。
6、如权利要求3或5所述的伪随机序列发生装置,其特征在于:所述组合逻辑电路根据产生相位间隔t的移位矩阵设置,包含一个或多个加法电路,每个加法电路与至少两个移位寄存器分别相连。
7、如权利要求4所述的伪随机序列发生装置,其特征在于:所述的移相组合逻辑处理单元包含p个种子传输线和k-p个移相组合逻辑电路;
p个种子传输线分别将种子数据直接传输给p个伪随机序列发生器;
k-p个移相组合逻辑电路同时接收种子数据;各个移相组合逻辑电路分别对种子数据进行相位移动处理,分别产生与种子数据具有正整数倍预定相位间隔的1个初始值,共产生k-p个初始值,输出给k-p个伪随机序列发生器;
p为自然数,且p<k。
8、如权利要求7所述的伪随机序列发生装置,其特征在于:所述k-p个移相组合逻辑电路根据产生预定相位间隔的相同或不同移位矩阵设置,分别包含一个或多个加法电路;
每个加法电路接收种子数据中的至少两比特数据进行相加后,作为1个初始值中的1比特数据输出给1个伪随机序列发生器中的1个移位寄存器。
9、一种伪随机序列发生装置,包含1个伪随机序列发生器,其特征在于:
所述的伪随机序列发生器为:由相位间隔为1的伪随机序列发生器的移位矩阵乘t次的结果矩阵,推导获得的相位间隔t的伪随机序列发生器;其包含n个移位寄存器和根据所述结果矩阵设置的第一组合逻辑电路;
n个移位寄存器接收种子数据,在每个参考时钟周期里进行一次第一组合逻辑电路的组合逻辑处理,每个移位寄存器在每相邻两个时钟产生的数据相位间隔为t,n个移位寄存器在每个参考时钟周期里输出至少两比特数据到外部;
t、n均为大于1的自然数。
10、如权利要求9所述的伪随机序列发生装置,其特征在于,所述的伪随机序列发生器的n个移位寄存器,在每个参考时钟周期里由其中的至少两个移位寄存器分别输出数据到外部。
11、如权利要求10所述的伪随机序列发生装置,其特征在于,该装置还包含:组合逻辑处理单元;
所述的伪随机序列发生器的n个移位寄存器中至少两个移位寄存器分别输出的数据中全部或一部分数据输出给组合逻辑处理单元;
所述的组合逻辑处理单元,接收n个移位寄存器中至少两个移位寄存器分别输出的数据中全部或一部分数据,对其进行组合逻辑处理后,产生大于0且小于或等于k比特的数据,将其作为伪随机序列数据输出到外部。
12、如权利要求11所述的伪随机序列发生装置,其特征在于:所述的组合逻辑处理单元,包含大于0且小于或等于k个根据产生预定相位间隔的移位矩阵的第一行设置的第二组合逻辑电路;
大于0且小于或等于k个第二组合逻辑电路,分别接收n个移位寄存器中至少两个移位寄存器分别输出的数据中全部或一部分数据中的数据,分别对其进行组合逻辑处理后,产生大于0且小于或等于k比特数据,作为伪随机序列数据分别输出到外部。
13、如权利要求12所述的伪随机序列发生装置,其特征在于:所述大于0且小于或等于k个第二组合逻辑电路分别根据产生预定相位间隔的相同或不同移位矩阵的第一行设置,分别包含一个或多个加法电路,每个加法电路与n个移位寄存器中输出数据的移位寄存器中的至少两个移位寄存器分别相连,接收移位寄存器输出的数据进行加法处理后,输出数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100905457A CN100542029C (zh) | 2005-08-17 | 2005-08-17 | 伪随机序列发生装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100905457A CN100542029C (zh) | 2005-08-17 | 2005-08-17 | 伪随机序列发生装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1858999A CN1858999A (zh) | 2006-11-08 |
CN100542029C true CN100542029C (zh) | 2009-09-16 |
Family
ID=37297868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100905457A Expired - Fee Related CN100542029C (zh) | 2005-08-17 | 2005-08-17 | 伪随机序列发生装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100542029C (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314332B (zh) * | 2011-07-27 | 2014-04-09 | 中国科学院计算机网络信息中心 | 伪随机数生成装置和方法 |
CN103870238B (zh) * | 2012-12-10 | 2018-03-16 | 北京普源精电科技有限公司 | 基于fpga的伪随机序列发生器及其生成方法 |
CN107145332B (zh) * | 2017-04-28 | 2021-06-29 | 郑州云海信息技术有限公司 | 一种OpenCL内核程序中随机数产生方法及装置 |
CN108287682B (zh) * | 2018-02-07 | 2020-09-04 | 北京集创北方科技股份有限公司 | 一种伪随机序列生成方法和装置以及集成电路 |
CN111505723B (zh) * | 2020-04-27 | 2021-03-16 | 山东大学 | 一种2n序列伪随机电磁勘探信号生成方法及*** |
CN112804023B (zh) * | 2021-04-09 | 2021-06-29 | 北京理工大学 | 高速并行伪随机序列生成方法、装置、设备和存储介质 |
CN114047905B (zh) * | 2022-01-11 | 2022-04-12 | 北京百瑞互联技术有限公司 | 一种伪随机序列产生方法、装置、介质及设备 |
CN117607666B (zh) * | 2023-12-28 | 2024-04-12 | 芯弦半导体(苏州)有限公司 | 伪随机测试参数生成方法、老化测试方法及扫描链电路 |
-
2005
- 2005-08-17 CN CNB2005100905457A patent/CN100542029C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1858999A (zh) | 2006-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100542029C (zh) | 伪随机序列发生装置 | |
US10063255B2 (en) | Stochastic computation using deterministic bit streams | |
CN101527615A (zh) | 一种循环冗余校验crc码的实现方法和装置 | |
CN108768619B (zh) | 一种基于环形振荡器的强puf电路的工作方法 | |
CN103731239B (zh) | 一种适用于向量处理器的通用crc并行计算部件及方法 | |
CN101431405B (zh) | Des加密方法及其硬件电路实现方法 | |
KR20080093458A (ko) | Sms4 암호 알고리즘을 위한 암호 및 해독 처리 방법과 시스템 | |
CN109508175A (zh) | 基于分数阶混沌和祖冲之算法的伪随机数发生器的fpga设计 | |
CN105227259A (zh) | 一种m序列并行产生方法和装置 | |
CN201654762U (zh) | 一种伪随机码序列发生器 | |
CN105354008A (zh) | 一种随机数生成器的输出电路及输出方法 | |
CN101496291B (zh) | Lfsr仿真 | |
CN102281116B (zh) | 一种生成gold序列的方法及装置 | |
CN109033596A (zh) | 基于fpga的并行伪随机序列发生器设计方法 | |
CN111078191A (zh) | 一种基于fpga硬件实现的伪随机数的生成方法 | |
CN1697366B (zh) | 可控自然数混沌密码序列产生方法及数字芯片核 | |
IL147359A (en) | High speed PRBS creation technique | |
CN204347817U (zh) | 集成crc校验电路的伪随机数发生器 | |
US20030014451A1 (en) | Method and machine for scrambling parallel data channels | |
CN1327632C (zh) | 在移动通信***中映射和扩展数据码元的装置 | |
RU154062U1 (ru) | Устройство для перебора перестановок | |
CN114489567A (zh) | 一种并行伪随机码发生器及方法 | |
CN102594371A (zh) | 一种Turbo编码交织处理的方法及装置 | |
PV et al. | Design and implementation of efficient stochastic number generator | |
CN104199635A (zh) | 集成crc校验电路的伪随机数发生器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090916 Termination date: 20160817 |
|
CF01 | Termination of patent right due to non-payment of annual fee |