第3章 随机变量的产生 CHAPTER3 任何建模仿真系统都必须包含比较完善的、能够产生多种分布类型的随机变量的生成 模块,这些模块是建模仿真系统中不可缺少的基本组成部分。实际上在建模仿真时,随机数 序列是通过某些算法产生的,而系统建模仿真结果的准确性,往往依赖于所产生的随机数序 列是否能够准确地再现实际系统随机过程的相关特性。 由于[0,1]均匀分布随机数是其他随机变量产生的基础,本章首先研究均匀分布随机数 的产生方法,然后讨论其他类型分布随机变量的具体转换技术;在研究高斯白噪声序列和二 进制伪随机序列产生的基础上,分析多进制和相关随机序列的产生方法;最后对于所产生的 输入波形,即随机序列质量进行测试评估。 3.1 要求与特点 在建模仿真过程中需要重复地处理大量的随机因素。无论是随机事件的发生时刻,还 是持续时间,以及多径信号的传播时延等,都是遵循不同概率分布的随机变量,每次仿真运 行都要从这些概率分布中进行随机抽样,以便获得该次仿真运行的实际参数。当进入系统 的随机事件数量很多,每个随机事件流经的环节也较多时,建模仿真过程中就需要成千上万 次地进行随机抽样,从而使原系统在运行中的随机因素和相互关系得以复现,并得到理想的 仿真结果。因此,随机变量的生成模块是建模仿真系统中不可缺少的组成部分。当用户在 建模仿真程序中赋予某一随机变量以确定参数的分布类型时,仿真系统能够自动调用和生 成相应的随机变量,以保证系统的随机特征在仿真运行中复现。因此,在建模仿真过程中, 需要能够自动生成随机变量序列,用来模拟调度随机事件的发生、运行和终止,或者用来模 拟建模仿真系统中具有随机性特征的数值。 在通信系统中,信道在传输信号的同时常伴随有噪声的加入,由此看来,产生满足某种 统计特性的随机信号和噪声,以及信道的不确定传输特征(例如信道的多径特性)等,都是开 展通信系统建模仿真的关键。但是严格地说,通信系统建模仿真中采用的随机数不是在概 率论意义下的真正的随机数,而只能称之为伪随机数。由于[0,1]均匀分布随机数在建模仿 真系统中的重要性,生成这种类型随机数的模块有一个专门的称谓,即随机数发生器 (Random-NumberGenerator,RNG )。建模仿真系统的其他各种分布类型的随机变量,都 是在随机数发生器的基础上进行扩展的,而这类随机数发生器通常都具备以下特点。 58 1.随机性(randomnes) 这是随机数发生器最重要的性质,它是指所产生的伪随机数序列应当具有独立性、均匀 性,并且具有与真实随机数相同的数字特征,如期望、方差等。 2.长周期( longperiod) 因为随机数发生器都是基于准确的数学公式描述而设计的,所以产生的随机数序列最 终会不可避免地回到序列的起点,重复以前出现过的序列,于是具备固有的周期(period)。 所以,好的随机数发生器应当能够生成较长周期的随机数序列,使得在仿真系统运行期间尽 量不出现随机序列重复的现象。这一点对仿真系统的可靠性、有效性非常重要,因为所仿真 的实际系统出现重复过程的概率非常小,甚至是不可能的。 3.可再现性(reproducibility) 当调试一个仿真系统时,要求随机数发生器能准确地多次再现同样的随机数序列,这样 做的目的是调试、校正仿真系统的个别参数,或者是分析在随机因素可控的情况下,改变其 他输入量时,系统输出的变化。当然,有时也要求随机数发生器产生不同以往的随机数序 列,以开展系统建模仿真的深入研究。因此,在建模仿真时,根据分析人员的需要,随机数发 生器既要能再次生成同样的随机序列,又要能生成不同于以往的随机序列。 4.计算效率要高(computationaleficiency) 因为仿真系统在短时间内需要大量的随机数,所以要求随机数发生器生成每个随机数 所花费时间应尽量少。而且随机数发生器不应占用过多的计算机内存,因为特别是可视化 仿真系统运行时,有限的内存是非常宝贵的。 大多数常用的发生器运行速度很快,占用内存少,并能很方便地产生随机数序列,但是, 并不是所有的随机数发生器都能满足独立性和随机性准则,这时就需要进行随机数发生器 的性能测试和检验。 计算机是具有完全确定性的机器,在实现随机性方面,表现并不尽如人意。因此,当仿 真系统中需要一个或一组真正的随机数时,必须通过某种方式或者算法近似地生成这些随 机数。实际上,这些数值并非真正的“随机”,因为它们都是根据某种固定不变的方式生成 的;然而,它们又能表现出某种程度的“随机性”,进而满足仿真系统对随机变量统计特性的 要求,所以在实际建模仿真应用中,通常假定这些数值是随机的,并且称它们为伪随机数 (pseudorandomnumber)。 3.2 随机数的产生 在对某随机过程进行建模仿真时,通常假设该随机过程是各态历经的。在第2章已经 讲过,各态历经性可以理解为平稳过程的各个样本都同样地经历了随机过程的各种可能状 态;各态历经性还意味着,随机过程的统计特性仅由一维和二维特性即可确定,并且这些特 性是时不变的。上述假设不仅简化了随机过程的模型,而且使得产生随机数的算法易于构 建,同时可以准确地获得这些随机数的一维和二维统计特性,以及均值、方差、相关函数和功 率谱密度等随机过程的主要数字特征。 在建模仿真应用中,所有随机过程需要由随机变量序列来表示。因此,根据二维分布函 数(概率密度函数)和相关函数(功率谱密度),就能够确定获得产生随机数的具体方法。各 59 类形式随机数产生的基础,首先是产生具有独立均匀分布的随机数序列,然后让该序列经过 无记忆非线性变换,就能够得到一个具有任意维分布(通常不超过二维)的独立序列。同样, 通过利用有记忆功能的线性或非线性变换,也能将一个独立序列变换成具有任意相关性和 功率谱密度的序列。因此,在本节中首先介绍均匀分布随机数的产生。 3.2.1 均匀分布随机数的产生 为了提高运算速度,提升计算效率,均匀分布随机数的产生通常采用迭代算法,其中比 较有代表性的方法被称为同余算法或幂剩余算法,所使用的迭代公式如下: (X(k)=[k-1)+c]dM aX(mo31) 其中, a 是在1与 M 间根据某种规则选择的整数, M 是一个很大的素数,或者是一个素数的 整数幂。利用初始种子值X(0)启动随机数的产生迭代过程,这里取0<X(0)< M 。 式(3-1) 0, M -区间的整数, k) 即 将产生均匀分布于[1] 将X(除以 M , k)ot[k) M U(就是近似在[1] U(=FlaX(] (32) 式中,k) 0,区间内均匀分布的随机数序列。 式(3-1)的输出结果属于[0, M -1]的一个整数集,最多有 M 个状态,因此,输出序列的 最大周期是 M 。随机数生成器输出结果的统计特性和周期取决于式(3-1)中a、c、 M 的选 择,有时甚至会受到初始种子值 X (0)的影响。但是一个好的随机数生成器是通过精心选 择a、c、 M 这些参数来设计的,其统计特性通常不受初始种子值X(0)的影响, X (0)仅仅指 定了周期性输出序列的初始值。 评价随机数生成器的输出结果,需要关注它的两个重要属性: (1)代数(时间的)特性,例如输出序列的结构和周期。 (2)统计特性,例如输出序列的分布情况。 若a、c、 M 这些参数选择恰当,就可以得到代数特性和统计特性均优良的输出结果,同 时还可以提高计算效率,并且兼容各种形式的运算结构。 如果从输出序列的结构性能方面考虑,则要求随机数生成器的输出序列是互不相关的, 并且应当具有最大的重复周期。输出序列的重复周期在仿真中起着至关重要的作用,仿真 时输出序列的周期必须比仿真长度长出许多,否则部分仿真输出将会出现重复。这时,仿真 精度并不取决于仿真长度,而是取决于输出序列的周期。 前面已经说明式(3-1)输出序列的最大周期为 M ,只有精心选择a、c、 M 这些参数才能 保证具有最大周期为 M 的输出序列。除了要求输出序列应当具有最大周期外,还要求输出 序列尽可能地互不相关。可以证明,在仿真时基于相关采样值的估计与基于不相关采样值 的估计相比,将会出现更大的方差。式(3-1)产生的序列的特性和结构已被广泛研究,但只 有几个随机数发生器被认为具有较好的特性和结构。 为了在字长为32 位的计算机上产生随机数,假设其最高位表示符号,剩下的31 位表示 数值。在这种情况下,最通用的均匀分布随机数产生器的迭代公式如下: 31 k-1)]( 应用式(3-3)产生的序列,其周期为231-2。如果利用上述相同结构产生32 位无符号 均匀分布随机数,其随机数产生器的迭代公式如下: X(k)=[16807·X(mod(2-1) 3-3) 60 X(=[·X(mo232) 34) k)69069k-1)+1]d(( 应用式(3-4)产生的序列,其周期为232 。将式(3-3)或式(3-4)产生的随机数,利用式(32)进行处理,就能够产生在[0,1]区间上均匀分布的随机数序列。 如果要产生更长周期的随机数序列,可以利用同余算法的线性组合来构建随机数生成 器。具体表达式如下: X(=[k-1)+a2X(k-m)]dp 35) k)a1X(k-2) + …+amX(mo( a1,am p) 式中,(a2,…,)是GF(上的本原多项式的系数,即 1 f(x)=xm -a1xm--…-am (3-6) 式(3-5)确定的随机数生成器产生的序列周期为pm -1。比较式(3-1)和式(3-5)可以 看到,每输出一个采样值,后者都要进行更多的运算,但同时将产生周期更长的序列。 目前计算机上运行的多种应用程序,例如Matlab或C语言中均拥有的均匀随机序列 产生器,是对计算机的运算量和字长的优化算法。尽管这些随机数产生器是可靠的,但在很 多情况下,它们并不能产生具有最大周期和良好统计特性的序列。 在开发性能优越,结构合理的均匀随机数产生器方面,人们做了大量工作,提出了多种 实用的算法。这些算法计算效率高,产生的序列周期长,并且具有良好的统计特性。比较有 代表性的算法包括Wichman-Hil 算法和Marsaglia-Zaman算法等。 1.Wihm-Hill算法通过观察(c) 式(3(n) (a) -5)可以发现,利用两个短周期序列进行合理的线性组合,构建的随机数 生成器能够产生长周期序列。例如,将两个周期分别为N1、N2 的波形相加,所得到波形的 周期为 式中, N 是N1 和N2 的最小公倍数。 N=lcm(N1,N2) (3-7) 如果N1 和N2 互质,则 N =N1×N2 (3-8) 因此,通过合并几个随机数生成器的输出,就可以产生一个长周期的序列。基于上述原 则的Wichman-Hil 算法,按以下步骤合并了三个随机数生成器的输出: X(k)=[171·X(d30269 (3-9 k-1)]moa) Y(k)=[·k-1)]mo( 171Y(d30307 39b) Z(=[170·k-1)]mod30323 (3-9c) k)Z( 然后计算 X(k)Y(Z( k)k) 30269+30307+30323 U(k) = 3 (3-10) 算法中前三步是整形运算,最后一步是浮点运算,此算法得到的序列周期是 p=78×1013 30268×30306×30322≈2. 可以证明,如果处理上述算法的计算机变量字长超过24位,算法就能正常运行,并且输 出一个具有长周期和良好统计特性的随机序列。就目前计算机而言,几乎所有计算机处理 字长均超过24位,因此,Wichman-Hil 算法得到了广泛应用。当然与式(3-1)相比, Wichman-Hil 算法显得更为复杂,但是它实现便捷,在使用较小的硬件代价(24位字长)的 61 条件下,就能够产生具有较长周期的随机序列。 2.Marsaglia-Zaman算法 Marsaglia-Zaman算法是由学者Marsaglia和Zaman共同提出的。该算法是一个线性 迭代算法,它有两种相似的版本:带借位的减法和带进位的加法。下面就给出带借位的减 法形式的线性迭代算法: Z(=X(r)k--C((311) k)k--X(s)k-1) 式中 X(= Z(k), Z(k)k)≥0 Z(k)<0 k)+b,Z( 0,Z( k)≥0C( = 1,Z( k)k)<0 在该算法中,常数b、 r 和 s 均是正整数,借位位初值为0,即C(0)=0 。Marsaglia和 Zaman指出,为了保证输出的序列周期最大,即周期为 M -1,则常数b、 r 和 s 必须满足下 面的规则: 式中, M 为素数, M =br -bs +1 (3-12) b 是模 M 的本原根 。 对于字长为32 位的计算机,b=232-r=s22, 5,43,=则产生的序列周期为 M-1=br bs 65×10414 ( 1] -≈1. 需要将X(换成U(即 313) 为了得到在[0,区间上均匀分布的随机数序列, k) k), k)k)] U(=Float[X((3-14) b 3.2.2 任意概率密度函数随机数的生成 在通信系统建模仿真过程中,通常需要产生某种分布形式的随机数序列。虽然产生各 类分布形式随机数序列的方法有许多种,但是在实际仿真过程中,以下两方面需要重点 考虑 ( 。 1)准确性需求。产生的随机数序列应准确地具备所要求的分布形式。 (2)快速性需求。在建模仿真中,一次运行往往需要产生几万甚至几十万个随机数,这 样,产生随机数序列的速度将极大地影响建模仿真执行的效率。 本节将介绍4种生成随机数的方法,它们的概率密度函数可以是任意形式,这些方法包 括解析变换法、经验变换法、离散随机变量的变换法和产生随机数的接收/拒收法。 1. 解析变换法 对于概率密度函数是任意形式的随机数序列,变换法是最常使用且最为直观的随机数 产生方法,它以概率积分变换定理为基础,通过对均匀分布随机变量 U 的变换,可以得到具 有任意概率密度函数的随机变量Z。 设需要产生的随机变量 Z 的分布函数为F(Z), 为了得到该随机变量的抽样值,先在 [0,1]区间上产生均匀分布的独立随机变量U,求其反分布函数F-1(U)所得到的值,即为 所需要的随机变量,即 Z=F-1(U) (3-15) 62 由于这种方法对分布函数进行反变换,因此有时也称为解析反变换法。反变换法的原 理可用图3-1加以说明。 图3-1 产生随机数的变换方法 从图3-1可以看出,随机变量概率分布函数 F(Z)的取值范围为[0,1],以在[0,1]区间上均 匀分布的独立随机变量作为F (Z)的取值规律, 则落在ΔZ 内的样本个数的概率就是ΔF,从而 随机变量Z 在区间ΔZ 内出现的概率密度函数 的平均值为ΔF/ΔZ。当ΔZ 趋于0时,其概率 密度函数就等于dF/dZ,即符合原来给定的分布 函数。这 样看来,由任意概率密度函数生成随机数 的方法可以用以下两步实现: (1)产生在[0,1]区间上均匀分布的独立随机变量U 。 (2)根据Z 的概率密度函数确定分布函数F(Z),输出Z=F-1(U)。 如果随机变量Z 的分布函数的逆函数可以用解析式进行表述,在上述变换中步骤(2), 即Z=F-1(U)便能够准确地表示,否则,F(·)和F-1(·)必须用适当的数值方法进行计 算。例如,当已知概率密度函数f(Z)时,经过数值积分可以得到F (Z)。将结果存储在一 个表中,通过搜索和内插F(Z)表中的值,就可以得到逆变换F-1(U)。 例3-1 利用解析变换法建立一个产生指数型分布随机变量的算法。 解:指数型分布随机变量的概率密度函数为 f(Z)= λe-λZ , Z >0 0, Z ≤0 由f(Z)可得到Z 的分布函数为 F(Z)=1-e-λZ , Z >0 根据实现任意概率密度函数生成随机数的方法,令 U =F(Z)=1-e-λZ , Z >0 或者 Z =F-1(U)= -1λ . è . . .÷ln(1-U) 这里,U 是在[0,1]区间上均匀分布的独立随机变量。容易得出结论,1-U 也是在[0, 1]区间上均匀分布的独立随机变量。因此,忽略减法运算就得到 Z = -1λ . è . . .÷lnU (3-16) 式(3-16)就是产生指数型分布随机变量的算法,其中,U 是在[0,1]区间上均匀分布的 独立随机变量。 产生指数型分布随机变量的算法如下: (1)产生在[0,1]区间上均匀分布的独立随机变量U 。 (2)计算Z= -1λ . è . . .÷lnU 。 63 由上面例子可以看出,利用解析变换法产生随机变量时,首先必须用随机数发生器产生 在[0,区间上均匀分布的独立随机变量U(以此为基础得到的随机变量 X 才能保证分 1] k), 布的准确性。可见,k)的均匀性和独立性,是高质量随机数发生器的基础。 U( 2. 经验变换法 当分布函数解析表达式不存在时,就不能利用式(3-15)进行反变换,实现随机数的产 生。此时,只能利用经验搜索算法来替代解析变换法。具体做法是,首先对连续的随机变量 Z 分布函数进行量化处理,也就是将 Z 的取值范围均匀地划分为 N 份,如图3-2所示,p1, p2,…,pN 表示 N 个单元的概率,则可以采取以下方式产生随机变量 Z 的取样。 图3-2 任意分布形式产生随机数 (1)产生在[0,1]区间上均匀分布的独立随机变量U。 (2)令Fi= pj ,0,1,…, N ,且F0=0。Σ(i) i= j= (3)找到满足式最小的 i 值:Fi其中,2,…, N 。下(1) -1<U≤Fi, i=1, (4)输出Z=Zi-1+(U-Fi-1)/Ci,返回第(1)步 。 上述算法中的最后一步是为了获得区间[Zi-1,Zi]上的插值 。 3. 离散随机变量的变换法 当 Z 是离散随机变量时,其反变换法的形式略有不同,原因在于离散随机变量的分布 函数也是离散的,因而不能直接利用反函数来获得随机变量的抽样值,下面讨论这类随机变 量的反变换法。 p(p(zN )取值z1,zN ,其中0< 设离散随机变量 Z 分别以概率p(z1),z2),…,z2,…, N p(i)<1,且Σ zi)=1,其分布函数如图3-3所示。 zp( i=1 图3-3 离散随机变量分布函数 64 0,区间上按p(p(p( 为使用反变换法获得离散随机变量,先将[1] z1),z2),…,zN )的值 分成 N 个子区间,然后产生在[0,1]区间上均匀分布的独立随机变量U。根据 U 的值落在 何区间,相应区间对应的随机变量就是所需要的随机变量zi。如果 N 取有限值,则得到有 限型离散随机变量产生方法,将该方法写成相应的算法。 有限型离散随机变量 Z 的产生算法如下: (1)设定k=1。 (2)产生在[0,1]区间上均匀分布的独立随机变量U 。 (3)U≤Fk ,输出Z=zk ,并返回第(1)步,否则跳到第(4)步 。 (4)令k=k+1,返回第(3)步。 在算法中p(和F(都是预先计算出来的,并且存放在一个表中,具体产生过程见 下面的例3-2。 zi) zi) 例3-设离散随机变量 Z 的分布概率p(i)以及累积分布函数如下表,用离散随机变 2 z 量变换法产生随机变量Z。 zk 0 1 2 3 4 5 p(zk ) 0 0.1 0.51 0.19 0.15 0.05 F(zk ) 0 0.1 0.61 0.80 0.95 1.00 根据给出的算法,首先由随机数发生器产生[0,1]区间上均匀分布的独立随机变量U。 假设U=72,按算法步骤(3), 判断是否 U < F (z1); 若条件不满足,再判断是否 U < 0. 再判断是否U<F(满足F(z3), z3=3。 F(z2); 若仍不满足, z3), z2)<U<F(从而得到Z= 然后产生下一个离散随机变量Z。 在上述算法介绍中, N 取的是有限值,以此为基础,构成了有限型离散随机变量产生方 法。当然, N 有无穷多种取值情况时,就必须按无限型离散随机变量产生方法产生随机 变量。 无限型离散随机变量的产生算法如下: (1)设定k=1,令C=p1,B=C。 (2)产生在[0,1]区间上均匀分布的独立随机变量U。 (3)如果U≤B(即U≤Fk ), 输出Z=zk ,并返回第(1)步,否则跳到第(4)步。 (4)令k=k+1 。 (5)令C=Ak+1C,B=B+C,其中Ak+1=pk+1 ,返回第(3)步 。 pk 当离散随机变量 Z 有无穷多种取值情况时,p(和F(i)是无法存放在一个表中的, zi) z Ak+1 λ 只能在搜索程序中通过计算产生。例如,对于泊松分布,= k+1,因此第(5)步很容易 实现,而且整个程序的计算效率很高。 Ak 4. 舍选法 上面介绍的三种方法有一个共同的特点,即直接面向分布函数,因而可以统称为直接 法。它们均以反变换法为基础。但是,当反变换法难于使用时(例如随机变量的分布函数不 存在封闭形式), 舍选法就成为产生随机数的主要方法之一。下面介绍这种方法的基本 65 思想。设 随机变量X 的概密度函数为f(X),f(X)的最大值为C。如果独立地产生两个[0,1] 区间上均匀分布的随机变量U1 和U2,则CU1 是在[0,C]区间上均匀分布的随机变量;若 以随机变量U2 求f(U2)的值,显然,满足CU1≤f(U2)的概率可以表示为 P {CU1 ≤f(U2)} =∫1 0dX∫f(X) 0 dY/C =1C (3-17) 舍选法的做法是:若式(3-17)成立,则选取U2 为所需要的随机变量X ,即X =U2,否 则舍弃U2。 舍选法的算法实现如下: (1)确定f(X )的最大值为C。 (2)分别产生在[0,1]区间上均匀分布的独立随机变量U1 和U2。 图3-4 舍选法产生随机变量 (3)令V=CU1,这时V 变成在[0,C]区间上均 匀分布的独立随机变量。 (4)如果CU1≤f(U2),则输出X =U2;否则, 拒收U2 并返回第(2)步。 下面,结合图3-4来解释舍选法的数学机理。 从图形上看,在1×C 这块矩形面积上任意投 下一点p,p 的纵坐标为CU1,横坐标为U2。若该 点位于f(X )曲线下面,则认为抽样成功。成功的 概率为f(X )曲线下的面积除以总面积C,f(X )下 的面积的值等于分布函数的值。由于假设随机变量X 的取值范围为[0,1],因此该面积的 值为1,那么成功的概率就是1/C,成功抽样的点符合随机变量X 分布。 3.2.3 高斯随机变量的产生 在通信建模仿真中,高斯随机变量是一类重要的随机变量,其概率密度函数在本书第2 章中已经给出。标准高斯分布的概率密度函数(即均值为0,方差为1)可以表示为 f(X )= 1 2πexp -X2 2 é . êê ù . úú (3-18) 通常将标准高斯分布表示为N (0,1)。下面就介绍两种N (0,1)随机变量产生方法。 1.12求和方法 在客观实际中有这样一类随机变量,它们是由大量相互独立的随机因素综合影响所形 成的,而且其中每一个因素在总的影响中所起的作用都是微小的。这种随机变量往往近似 地服从正态分布,这种现象就是中心极限定理的客观背景。因此,产生N (0,1)随机变量的 最简单方法是利用中心极限定理,这样就可以构建出生成公式 X =Σ12 k=1 U(k)-6.0, k =1,2,…,12 (3-19) 式中,U(k)是在[0,1]上均匀分布,同时相互独立的随机变量,其均值为0.5,方差为1/12。 利用中心极限定理可以证明,式(3-19)中的随机变量X 与均值为0,方差为1的高斯随 机变量很接近。需要注意的是,尽管N (0,1)随机变量的取值范围是(- ∞,∞),而 66 式(3-19)确定的随机变量X 的取值范围是(-6.0,6.0),但是考虑到N (0,1)随机变量的产 生速度与“准确性”的相互矛盾,将k 的取值范围确定为12是一个恰当的选择。 2.Box-Muller算法 尽管正态分布随机变量的分布函数没有直接的封闭形式,但将其转换到极坐标系后,可 以得到其封闭形式,这时就可以采用反变换法产生正态分布随机变量,下面对这一方法加以 说明。设 X 和Y 是两个相互独立的N (0,1)随机变量,则其联合概率密度函数可以表示为 f(X ,Y)= 1 2πexp -X2 +Y2 2 . è . . . ÷ (3-20) 将其转换成极坐标形式: X =ρcosφ Y =ρsinφ (3-21) 则 f(ρ,φ)=f(X ,Y)· J (3-22) 式中,J 为雅可比行列式,即 J = .X .ρ .X .φ .Y .ρ .Y .φ = cosφ -ρsinφ sinφ ρcosφ =ρ (3-23) 从而可得 f(ρ,φ)=ρ 2πexp -ρ2 2 . è . . . ÷ (3-24) 在上式中,ρ ≥0,φ 在(0,2π)内取值,这样,利用概率论中的边际分布知识,可求得f(ρ): f(ρ)=∫∞ -∞ f(ρ,φ)dφ =∫2π 0 ρ 2πexp -ρ2 2 é . êê ù . úú dφ =ρexp -ρ2 2 é . êê ù . úú (3-25) 式(3-25)表示ρ 服从瑞利分布,而 f(φ)=∫∞ -∞ f(ρ,φ)dρ=∫∞ 0 ρ 2πexp -ρ22 é . êê ù . úú dρ= 1 2π (3-26) 可见,φ 服从均匀分布,且有 f(ρ,φ)=f(ρ)·f(φ) (3-27) 由式(3-27)可见,ρ 和φ 是统计独立的,它们相应的分布函数分别为 F(ρ)=∫ρ 0 ρ'exp -ρ22 . è . . . ÷ dρ=1-exp -ρ22 . è . . . ÷ F(φ)=∫φ 0 1 2πdφ'=φ 2π ì . í .. ..(3-28) 由式(3-28)可见,对随机变量ρ 和φ 来说,它们的分布函数均具有封闭形式。因而可采 用反变换法,即独立地产生两个[0,1]区间上均匀分布的随机变量U1 和U2,分别对F(ρ)及 F(φ)进行反变换,可得 ρ= -2ln(1-U2) φ =2πU1 (3-29) 67 由于1-U2 也是[0,1]区间上均匀分布的随机变量,因此式(3-29)可以写为 ρ= -2lnU2 (3-30) φ=2πU1 根据 X 和 Y 与 ρ 和 φ 之间的变换关系,可得 1/2c U2)] X=[-2ln( 1/2sos(2πU1) (3-31) Y=[-2ln(U2)]in(2πU1) 采用上述反变换法,每次能够产生 X 和 Y 两个相互独立的 N (0,1)随机变量,数值范围 在(-∞,∞)上分布。这种方法直观,易于理解,但是由于要进行三角函数及对数函数运算, 因此计算速度比式(3-19)产生 N (0,1)随机变量慢。需要强调的是,为了保证输出随机变 量的动态范围,式(3-31)必须在双精度的运算条件下执行。 3.3 独立随机序列的产生 前面已经讨论了在给定概率密度函数时,产生随机数序列的方法,下面给出独立随机变 量序列的产生方法。 3.3.1 高斯白噪声序列 第2章已经讨论了理想的白噪声有关性质,其功率谱密度通常被定义为 Pn (f)= n20, -∞< f <∞ (3-32) 式中,单位是W/Hz 。 n0 是常数, 当白噪声幅度的分布满足正态分布时,称这种噪声为高斯白噪声。如果噪声的功率谱 密度如式(3-32)所示,相应的自相关函数为 R(τ)1 ∞ n0jωτdn0 τ)( = 2π∫-∞2eω= 2δ(3-33) 显然,高斯白噪声序列是不相关序列,由于又满足高斯分布,这个序列也是统计独立的。 然而,在实际系统中,带宽总是有限的。假设带宽为B,根据采样定理,建模仿真的采样频率 fs 必须大于2B,因此,建模仿真时采用的是带宽有限的高斯白噪声,这时的噪声在仿真带 宽(-f/2,s/2)内具有恒定的功率谱密度,即 sf f Pnc(f)= n0/2, ≤fs/2 (3-34) 与式(3-34)对应,其相关函数为 0, 其他 τ)fs/2 a(τ)R(=∫-fs/2 n20ej2πfτdf= fsn0S2 ω0(3-35) 式中,π。ω0=πfs=Ts 需要注意,对于建模仿真系统而言,无论输入功率谱密度是Pn还是Pnc,系统的响应都 是一样的。这是因为,对于式(相关函数在τ=(3,…) 时,其自相关函数 为零,也就是说,如果在这些时刻进行采样,其采样值在时域上是不相关的。对于正态分布 3-35), kTsk=1,2, 68 的随机过程(即高斯白噪声)而言,在这些时刻进行采样,其采样值之间是统计独立的。因 此,带限高斯白噪声的采样值,可以用高斯变量的一个独立序列来仿真。 具体来讲,均值为零,方差为 σ2nc = n0fs 2 (3-36) 的一个序列,可以用N (0,1)随机数发生器的输出乘以σnc来产生。 3.3.2 二进制伪随机序列 二元随机序列{ak} 是由统计独立的0和1码元组成的序列。如果每个0和1发生的概 率均为0.5(等概率),它就可以通过在[0,1]区间均匀分布的随机变量U(k)来产生,即 ak = 1, U(k)>0.5 0, U(k)≤0.5 (3-37) 与上述二元随机序列对应,可以预先确定、重复实现的序列称为确定序列。而在一定条 件下,具有某些随机特性,貌似随机序列的确定序列则称为伪随机序列,或伪噪声(PN)码。 产生伪随机序列的方法很多,例如,带有反馈的移位寄存器是其中最易实现的电路。根 据结构的不同,上述电路又可进一步分为线性反馈移位寄存器和非线性反馈移位寄存器两 类。由线性反馈移位寄存器产生的周期最长的二进制数字序列,被称为最大长度线性反馈 移位寄存器序列,简称为m 序列。由于它的理论成熟、实现简便,在实际中被广泛应用。但 是,由于m 序列的种类有限,不能完全满足某些具体需要,因此,带有非线性反馈的移位寄 存器产生的一些伪随机序列也有一定的应用价值。关于这方面的内容,请参阅相关文献。 本小节将结合通信建模仿真系统的具体需求,重点讨论m 序列的产生原理,以及它的 有关性质。 1.m 序列的产生 m 序列是由带线性反馈的移位寄存器产生的周期最长的一种序列。为了掌握其工作 原理,首先给出一个关于m 序列的例子,如图3-5所示。 图3-5 m 序列产生器 在图3-5中给出了一个4级反馈移位寄存器。若其初始状态为(a3,a2,a1,a0)=(1,0, 0,0),在移位一次时,由a3 和a0 的输出模2相加产生新的输入a4=1..0=1,则新的状态 变为(a4,a3,a2,a1)=(1,1,0,0)。这样移位15次后又回到初始状态(1,0,0,0),具体输出 情况如表3-1所示。 不难看出,若初始状态为全“0”,即(0,0,0,0),则移位后得到的仍为全“0”状态。这就意 味着在这种反馈移位寄存器中应避免出现全“0”状态,不然移位寄存器的状态将不会改变。 因为4级移位寄存器共有24=16种可能的不同状态,除全“0”状态外,只剩15种状态可用, 所以由任何4级反馈移位寄存器产生的序列的周期最长为15。 69 表3- 1 各次移位后移位寄存器的状态 序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 … a3 1 1 1 1 0 1 0 1 1 0 0 1 0 0 0 1 … a2 0 1 1 1 1 0 1 0 1 1 0 0 1 0 0 0 … a1 0 0 1 1 1 1 0 1 0 1 1 0 0 1 0 0 … a0 0 0 0 1 1 1 1 0 1 0 1 1 0 0 1 0 … 通常,仿真时希望用尽可能少的级数产生尽可能长的序列。由上例可见,一个 n 级反 馈移位寄存器可能产生的最长周期等于(2n -1), 因此,反馈电路如何连接才能使移位寄存 器产生的序列最长,这就是本小节后面将要讨论的主题。 为了研究产生m序列的规律性,图3-6中给出了一个线性反馈移位寄存器组成的通用 ai = 结构。图中每一级移位寄存器的状态用ai 表示,0或1,其中 i 为整数;反馈线的连接 i ci=ci= 状态用c表示,1表示此线接通(参加反馈),0表示此线断开。可以看到,反馈线的 连接状态不同,就可能改变此移位寄存器输出序列的周期p。为了进一步研究它们之间的 关系,需要用数学表达式进行描述。 图3-6 线性反馈移位寄存器 设 n 级移位寄存器的初始状态为(a-1 a-2 … a- n ), 经过一次移位后,状态变为 (n+1); 经过 n 次移位后,状态为(1 a)。图36展示的就是线性反馈(1) 移位寄存器相应工作原理。按照图中线路(a) 连接关系,(2) 移位寄存器左端输入an 可 以写为 a0 a-… a-n-n-… a0 an =c1an-1+c2an-2+ …+cn-1a1+cna0= Σ(n) cian-i(模2) (3-38) i=1 将其推广,对于任意一状态ak ,则有 ak = Σ(n) ciak- i (3-39) = 式(3-39)中求和仍按模2运算。由于本章(i) 中类似方程都是按模2运算,(1) 故公式中不再 每次注明(模2)了。式(3-39)被称为递推方程,它给出移位输入ak 与移位前各级状态的 关系。 前面曾经指出,的取值决定了移位寄存器的反馈连接和序列的结构,故c也是一个 ci i 很重要的参量。它可以用下列方程表示: f(x)=c0+c1x+c2x2+ …+cnxn = Σ(n) cixi (3-40) = 式(3-40)称为特征方程(或特征多项式)。式中系数ci 取1(i) 或(0) 0;xi 仅指明ci 所在的位 置,其本身的取值并无实际意义。例如,若特征方程为 70 f(x)=1+x+x4 (3-41) 则它仅表示x0、x1 和x4 的系数为1(1), 其余的c为零(0)。按这一 c0=c1=c4=ic2=c3= 特征方程构成的反馈移位寄存器就是图3-6所示的。 同样,也可以将反馈移位寄存器的输出序列{用代数方程表示, ak } 即 k=1 式(3-42)被称为母函数。 G(x)=a0+a1x+a2x2+ … = Σ(∞) akxk (3-42) 当然,还可以将式(3-39)中的系数与一个 n 次多项式关联起来,构成多项式 p(x)=c0xn +c1xn-1c2xn-2+ …+cn-1x+cn (3-43) 除了上述描述线性反馈移位寄存器组成和输出的方法以外,还有许多描述方式,但是递 推方程、特征方程和母函数就是关于产生或者描述m序列的三个基本关系式,同时也是分 析移位寄存器产生m序列的有力工具。 可以证明,一个 n 级线性反馈移位寄存器的相继状态是具有周期性的,其周期最大值 为2n -1。当然,要产生这个最大周期(p=2n -1)序列的充要条件,就是线性反馈移位寄 存器的特征多项式f(x)为本原多项式。同时还可以发现,若f(x)和p(x)互为逆多项式, 则p(x)也为本原多项式。假设f(x)多项式是一个 n 次本原多项式,则f(x)多项式所需 要满足的条件如下: (1)f(x)为既约多项式,即不能分解因子的多项式。 (2)f(x)能够被(xp +1)整除,其中p=2n -1。 (3)但f(x)不能被(xq +1)整除,其中q<p。 例3- 3 要求用一个4级反馈移位寄存器产生m序列,试求其特征多项式。 解:由于给定n=4,故此移位寄存器产生的m序列的长度为p=2n -1=15 。由于其 特征多项式f(x)应能够被(xp +1)=(x15+1)整除,或者说应是(x15+1)的一个因子,故将 (x15+1)分解因式,从其因子中找f(x) (x15+1)=(x4+x+1)(x4+x3+1)(x4+x3+x2+x+1)(x2+x+1)(x+1) (3-44) f(x)不仅应为(x15+1)的一个因子,而且还应该是一个4次本原多项式。式(3-44)表 明,(x15+1)可以分解为5个既约因子,其中3个是4次多项式。可以证明,这3个4次多 项式中,前两个是本原多项式,第3个不是。因为 (x4+x3+x2+x+1)(x+1)=(x5+1) (3-45) 从式(可以看出,(不仅可以被(x15+1)整除,而且还可以被( 3-45) x4+x3+x2+x+1) x5+1) 整除,故它不是本原多项式。因此, x4+x+1) x4+x3+1 )。 找到了两个4次本原多项式:(和( 由其中任何一个都可产生m序列。其中,用(x4+x+1)作为特征多项式构成的4级反馈移 位寄存器,如图3-6所示。 由上述论述可见,只要找到了本原多项式,就能由它构成m序列产生器。但是寻找本 原多项式并不简单。经过前人大量的计算,已将常用本原多项式列成表备查,如,在表3-2 中列出了一部分。在制作m序列产生器时,本原多项式的项数确定移位寄存器反馈线(及 模2加法电路)的数目。为了使m序列产生器的组成尽量简单,希望使用项数最少的那些 本原多项式。由表3-2可见,本原多项式最少有三项,这时只需用一个模2加法器。对于某 71 些 n 值,由于不存在三项的本原多项式,只好列入较长的本原多项式。 表3- 2 常用本原多项式 n 本原多项式 n 本原多项式 代数式八进制表示法代数式八进制表示法 2 x2+x+1 7 14 x14+x10+x6+x+1 42103 3 x3+x+1 13 15 x15+x+1 100003 4 x4+x+1 23 16 x16+x12+x3+x+1 210013 5 x5+x2+1 45 17 x17+x3+1 400011 6 x6+x+1 103 18 x18+x7+1 1000201 7 x7+x3+1 211 19 x19+x5+x2+x+1 2000047 8 x8+x4+x3+x2+1 435 20 x20+x3+1 4000011 9 x9+x4+1 1021 21 x21+x2+1 10000005 10 x10+x3+1 2011 22 x22+x+1 20000003 11 x11+x2+1 4005 23 x23+x5+1 40000041 12 x12+x6+x4+x+1 10123 24 x24+x7+x2+x+1 100000207 13 x13+x4+x3+x+1 20033 25 x25+x3+1 200000011 因为本原多项式的逆多项式也是本原多项式,例如,式(3-41)中的(x4+x+1)与(x4+ x3+1)互为逆多项式,即10011与11001互为逆码,所以在表3-2中每一本原多项式可以构 成两种m序列产生器。同时在表3-2中将本原多项式用八进制数字表示,简化了原多项式 的表示方法。例如,对于n=4时,表中给出“23”,它表示: 八进制数据2 3 二进制数据010 011 对应系数ci c5c4c3 c2c1c0 根据上面的对应关系,由图3-2可见,在n=4的线性反馈移位寄存器中,反馈连接 1,0。 c4=c1=c0=c5=c3=c2= 2. m 序列的性质 (1)均衡特性。 1010 在m序列的一个周期中,“”和“”的数目基本相等。准确地说,“”的个数比“”的个 数多一个,这种特性被称为m序列的均衡特性。以图3-5构成的m序列产生器为例,产生 的m序列的周期p=15,“1”的个数为8,“0”的个数为7。 (2)游程分布。 在序列当中,取值相同的,相继的(连在一起的)元素合称为1个“游程”。这个游程中元 素的个数被称为游程长度。下面分析由图3-5产生的m序列的游程情况。首先重新写出 它的m序列输出,如下 p=15个 .. .... .... .. .... .. …10001111010110010… 72 在上述m序列的1个周期(15 个元素)中,共有8个游程,其中长度为4的游程有1个, 即“1111”;长度为3的游程有1个,即“000”;长度为2的游程有2个,即“11”与“00”;长度为 1的游程有4个,即两个“1”与两个“0”。 一般说来,在m序列中,长度为1的游程占游程总数的1/2;长度为2的游程占游程总 数的1/4;长度为3的占1/8;……, 以此规律向后递推。可以证明,长度为 k 的游程数目占 游程总数的2- k ,其中1≤k≤(1); 而且当1≤k≤(时,在长度为 k 的游程中,连“” 的游程和连“0”的游程各占一半 n 。 -n-2) 1 (3)移位相加特性。 一个周期为 p 的m序列Mp ,与其任意次移位后的序列Mr 模2相加,所得序列Ms 必 是Mp 某次移位后的序列,即仍是周期为 p 的m序列。现在仍以图3-5构成的m序列产生 器为例来说明。 假设Mp =100011110101100,左移两位后得到Mr ,即Mr =001000111101011,将Mp 与Mr 进行模2相加,得到Ms=Mp ..Mr ,即 Mp =100011110101100 Mr =001000111101011 Ms=101011001000111 从上面的计算结果可以看到,所得到的Ms 相当于将Mp 循环左移8位后得到的序列。 连续的周期函数s(的自相关函数可以表示为 T/2 式中 ( ,4T ) 是 自相关函数 s(的周期 。 。 t) R(τ)=T1∫-T/2 s(t)s(t+τ)dt (3-46) t) 对于用“0”和“1表(”) 示的二进制数序列,根据编码理论可以证明,其自相关函数的计算公 式为 R(=A-DA-D347) j)A+D= p ( 式中, A 表示该序列与其 j 次移位序列在一个周期中对应元素相同的数目; D 表示该序列 与其 j 次移位序列在一个周期中对应元素不同的数目; p 表示该序列的周期。 假设Mp 移 j 位后得到Mr ,则Mp 序列元素xi 与Mr 序列元素xi+ j 相对应,这时 式(3-47)就可以写为 R(j) = [xi ..xi+ j =0]的数目-[xi ..xi+ j =1]的数目(3-48) p 式中,0或1。 3-48) 3-48) xi= 现在就可以利用式(来计算m序列的自相关函数。式(分子当中的模2运 算相当于对Mr 与Mp 进行模2运算,由m序列的迟延相加特性可知,其产生的新序列还是 m序列,所以上式分子就等于m序列一个周期中“0”的数目与“1”的数目之差;另外,由m 序列的均衡性可知,在m序列的一个周期中“0”的数目比“1的(”) 数目少一个,所以上式分子 等于(-1)。这样式(3-48)就可以写成 R(j)=-1,j=1,2,…,p-1 p 73 式中,p 表示m 序列的周期。 当j=0时,显然R(0)=1。所以,m 序列的自相关函数可以表示为 R(j)= 1, j=0 -1 p ,j=1,2,…,p -1 ì . í .. .. (3-49) 不难看出,由于m 序列具有周期性,故其自相关函数也具有周期性,其周期为p,即 R(j)=R(j+kp), k =1,2,3,… (3-50) 而且,R(j)还是偶函数,即有 R(j)=R(-j), j=1,2,…,p -1 (3-51) 由式(3-49)m 序列自相关函数的计算结果可见,R(j)只可能有2种取值(1和-1/p), 通常把这类相关函数只有两种取值的序列称为双值自相关序列。 虽然上面数字序列的相关函数R(j)只在离散点上取值,但也可以按式(3-46)计算m 序列连续波形的自相关函数R(τ)。计算结果表明,R (τ)曲线是由R (j)各点连成的折线, 如图3-7所示。 图3-7 m 序列的自相关函数 其相应的R(τ)曲线的数学表达式为 R(τ)= 1-p +1 T τ-iT ,0≤ τ-iT ≤T p ,i=0,1,2,… -1 p ì . í .. .. (3-52) (5)功率谱密度。 在第2章已经讨论过,信号的自相关函数与功率谱密度构成一对傅里叶变换。因此,当 得到m 序列的自相关函数R (τ)以后,经过傅里叶变换,就可以求出相应的功率谱密度 P(ω),其计算结果为 P(ω)=∫∞ -∞ R(τ)e-jωτdτ =p +1 p2 · Sa ωT 2p . è . . . ÷ é . êê ù . úú 2· Σ∞ n= -∞ n≠0 δ ω -2πn T . è . . . ÷ + 1 p2δ(ω) (3-53) 按式(3-53)计算并画出相应的曲线,如图3-8所示,其中ω0=2π T 。从图上可以看到,在 T →∞时,功率谱密度P(ω)的特性趋于白噪声的功率谱特性。 (6)伪噪声特性。 对高斯白噪声进行取样,若取样值为正,则记为“+”;若取样值为负,则记为“-”。将每 次取样所得极性构成一个随机序列,它具有如下基本性质: 74 图3-8 m 序列的功率谱密度 ①序列中“+”和“-”的出现概率几乎相等。 ②序列中长度为1的游程约占1/2;长度为2的游程约占1/4;长度为3的占1/8; ……, 以此规律向后递推。一般来说,长度为 k 的游程数目占游程总数的2- k ,而且在长度 为 k 的游程中,连“1”的游程和连“0”的游程各占一半。 ③由于白噪声的功率谱密度为常数,功率谱的逆傅里叶变换,即自相关函数为冲激函 数δ(δ(=仅当τ=δ(是个面积为1的脉冲。 τ)。当τ≠0 时,τ)0; 0时,τ) 因为m序列的均衡性、游程分布、自相关特性和功率谱与上述随机序列的基本性质很 相似,所以通常认为m序列属于伪噪声序列或伪随机序列。但是,具有或基本具有上述性 质的序列不仅只有m序列一种,m序列只是其中最常见的一种。 (7)m序列具有 n 比特所有可能的组合。 线性移位寄存器的各个寄存器状态构成一个组合,每一种组合在一个周期内只出现一 次,但 n 个0的组合除外,因此,最长的0序列为n-1位(比特)。例如,利用图3-5产生的 m序列,各个寄存器状态输出如表3-1所示,在一个周期中出现了15 种状态输出组合,最长 的0序列是3比特。 为了仿真数字通信系统中滤波器引入的码间串扰(ISI),m序列的第(7)条性质特别有 用。在数字通信系统中,需 ISI 是使系统性能变坏的主要原因。为了模拟仿真ISI 的影响, 要用1个二元序列驱动这个系统,这个序列应当具有所有可能的 n 比特组合,其中 n 是系 统存储长度。 虽然1个二元随机序列能用作输入,但不能保证1个任意长度的二元随机序列绝对包 含某1个特定比特图样。然而,用 n 级反馈移位寄存器产生m序列,能够产生2n -1种所 有 n 比特的组合图样,当然这里并不包含 n 比特全0组合图样。通常,数字通信系统的记 忆长度小于10 比特,因此,要模拟仿真二元系统的ISI,采用小于1024 比特的1个PN 序列 就足够了。 在其他应用场合,如果要产生二元随机序列,则需要1个尽可能长的PN 序列。同时需 要注意,PN 序列可以比二元随机序列更迅速地产生。当然,为了启动PN 序列的产生,需要 向移位寄存器中设置初始值,这个初始值可以选择1~(2n -1)间的任何二进制数。 3.3.3 M 进制伪随机序列 很多数字通信系统为了提高通信效率而采用多进制( M 进制)波形来传输信息,例如 MASK 、MFSK 、MPSK 以及QAM 等系统。当然,如果要仿真这些系统的性能,就需要利用 M 进制PN 序列。它也可以利用反馈移位寄存器来产生,是产生二进制PN 序列方法的推 75 广。与二进制反馈移位寄存器的描述类似, M 进制反馈移位寄存器也可以用特征多项式来 表示,具体写为 f(x)=c0+c1x+c2x2+ …+cnxn = Σ(n) cixi (3-54) i=0 其相应逆多项式为 -1 p(x)=c0xn +c1xnc2xn2+ …+cn-1x+cn (3-55) 在上面两式中,系数c可在共有 q 个元素的有限区域内取值(这个有限域定义 iq 进制), 为GF()。一个在GF(域的 n 阶多项式, 这里p= n -就称该 qq) 如果能被xp +1 整除( q1), 多项式为本原多项式。与二进制情况类似,可以得到结论,以GF(域上的本原多项式构 q) 建的 M 进制反馈移位寄存器,能够产生一个最大长度为qn -1的 q 进制序列,其中 n 是该 移位寄存器的阶数。 与式(354) 355) q 进制输出序列的递推描述关系式类似于式(-于 -或式(-相对应,339), 是可以写为 i=1 式中,是时间 k 的输出。 ak = Σ(n) ciak- i (3-56) ak {ak }序列可以用线性移位寄存器产生,与式(3-39)相比,其差别在于,式(3-56)中的计 算不再是模2运算,而是模 q 运算。 22q)在 M 进制通信系统中,通常 M = n ,即q= M = n ,这时GF(中的元素可以利用系数 在GF(2)中所有次数小于 n 的多项式标识,同时在GF(2n )域上,减和加相同,相乘被定 义为 C(x)=[A(x)·B(x)]modg(x) (3-57) 式中,为GF(上某一 n 次既约多项式。 g(x) 2) 例3- 4 计算多项式A(x)= x 和B(x)=x2+ x 在GF(23)域上相乘的结果C(x), 其 中,GF(2)上某一3次既约多项式为g(x)=x3+x+1 。 解:C(x)=[A(x)·B(x)]modg(x)=[x·(x2+x)]mod(x3+x+1) =x2+x+1 式(3-54)描述了 M 进制反馈移位寄存器的特征多项式,式(3-56)描述了 M 进制输出 序列的递推关系,它们都可以对GF(2n )域上产生的PN 序列进行表示。除此之外,还有第 3种表示方法,这种方法是基于这样一个事实,即在每个有限域里都存在一个元素α,称为本 原值;在这个有限域中,每个非零元素可以用 α 的某次幂来表示。具体情况如表3-3所示, 在表中用既约多项式g(x)=x3+x+1 来产生GF(23)域的元素,表的最左边一栏表示 GF(23)域中的缩写符号。 表3- 3 GF(23)域中元素的表示方法 缩写符号多项式根的幂多项式表示二元数组表示 A α x (0,1,0) B α2 x2 (1,0,0) C α3 x+1 (0,1,1) 76 续表 缩写符号多项式根的幂多项式表示二元数组表示 D α4 x2+ x (1,1,0) E α5 x2+x+1 (1,1,1) F α6 x2+1 (1,0,1) 1 α7 1 (0,0,1) 0 0 0 (0,0,0) 为了生成一个最长的八进制PN 序列,需要一个系数属于GF(8)的本原多项式,这个多 项式将描述式(3-56)中的系数与一个 n 次多项式的关系。如果采用上面定义的GF(8)的 表示法,则这个多项式是 p1(x)=x3+x+ α ~ (101A) (3-58) 由式(3-58)表示的多项式,可以得到对应的递推关系式 ( ak =ak-1+αak-33-59) 根据式(3-58)就可以构建出这个八进制反馈移位寄存器电路,如图3-5(a)所示;同时, 根据该电路还可以产生八进制输出样本序列。如果寄存器的始值为010,则输出序列为 0101A10F 。因为f(x)是3次多项式,所以它适合于有3个符号记忆的信道。 如果要仿真两正交分量八进制PN 序列,需要两个八进制PN 序列产生器,则此时需要 第二个本原多项式。这样的三次多项式是 p2(x)=x3+x+α2 ~ (101B) (3-60) 对应的递推关系式为 ak =ak-1+αak-3 (3-61) 根据式(3-61)构建的八进制反馈移位寄存器电路,如图3-9(b)所示。 图3-9 八进制PN 序列产生器 如果要仿真16-QAM 系统,可以采用上述类似的方法,在GF(4)中选择系数,确定本原 多项式,构建两个八进制反馈移位寄存器电路,来表示I和Q信道。感兴趣的读者可以参 阅相关文献。 3.4 相关随机序列的产生 在许多实际应用中,经常需要产生具有某种特定自相关函数,或者具有某种特定功率谱 密度形式的输出序列,这类处理过程被统称为相关随机序列的产生。相关随机序列在通信 建模仿真系统中有许多应用,例如,当对随机时变的移动通信信道建模仿真时,就需要产生