可编程的脉冲干扰仿真器的制作方法

文档序号:89364阅读:653来源:国知局
专利名称:可编程的脉冲干扰仿真器的制作方法
本发明为一种产生高频脉冲干扰的装置,属于通信干扰和电脉冲产生技术领域

在现有技术中,阿尔伯特在博士论文“脉冲干扰对数示通信系统影响的研究”(Albert-Osaghae V.K.I. An In-vestigation of Impulsive Noise and its Ef-fects on a Digital Radio Communication Sys-tem.ph.O Thesis,May 1979,Universty of Bir-mingham),利用PDP-11-20小型计算机建立产生脉冲干扰实验系统,其方法是用同余法产生均匀分布的随机数。在使用实验系统时,先将三个文档的随机数转移到计算机的内存,然后顺序地取出。一组随机数用来控制时延程序的循环次数,造成相应的时延,脉冲出现的时间由此而决定。另一组数经数/模变换之后送到调制器控制高频脉冲的幅度。原始的均匀分布随机数经数/模变换后送到移相器控制高频的相位。
阿尔伯特实验系统的优点是可以独立地对脉冲的幅度和间隙编程,使它们各自满足规定的概率分布函数。但是,这个系统由于执行取数程序、时延程序的各条指令共需50μs的时间,因此相邻脉冲的最小间隔为50μs,脉冲序列的短时速率最高只能达到20KP/S,而这离起初脉冲干扰的最高速率相差甚远。其次,用同余法产生随机数虽然比较简单,但此系统中随机数列的周期仅8192,这从仿真的角度来看是太短了。第三,实验系统中包括PDP-11-20计算机,使用不便。
由于上述三个缺陷,该系统並未付诸实用。为此阿尔伯特曾提出用AmZ8002或Plessey MIPROC等16位高速微型机代替PDP-11小型机,推算短时脉冲速率可达100KP/S。如按这种设想来制造仿真器,不仅价格昂,而且短时脉冲速率和序列周期这两个关键性的指标均不能令人满意,所以这也不是一个理想的解决问题的途径。
该领域的另一项现有技术是用硬件实现的随机数发生器,帕里(Perry)等人用数字电路产生了均匀分布、正态分布和三角形分布的随机数(“电气与电子工程师协会志”声学与电子分册)(IEEE Tran.on Audio and Electronics Vol.Au-20,No.4,1972)。用硬件产生随机数的优点是速度快、周期长。例如帕里的随机数发生器输出一个数仅需0.375μs,序列周期长达14,942,265。可惜的是,所有的硬件方案只能产生有限的几种分布规律的随机数,要想根据需要任意地改变随机数的分布函数是不可能的,这就决定了脉冲干扰仿真器不可能全部用硬件实现。
本发明的目的是针对上述方案的不足之处提出一种高速高精度的可编程的脉冲干扰仿真器。该仿真器包括一个具有四个並行接口的M6800微机系统,一个均匀分布随机数发生器URNG、一个12位×12位的单片乘法累加器JDC1009J,两个16位的先入先出(FIFO)存贮器(每一个由两片AM2812 ADC並联组成)、一个16位的数模变换器DAC、一个数字定时器、一个高频调制器和少量的辅助电路。
下面对照图1所示的系统方框和图2所示的时间波形图来详细说明产生脉冲干扰的全部过程均匀分布的随机数发生器URNG输出一个3比特的随机数序列和一个16比特的随机数序列。3比特的随机数序列在必要时可以用来控制高频脉冲的相位。
16比特的随机数分成高8位和低8位。如果相继输出的两个16比特数分别是u和v,则它们可表示为u=uj28+Δu (1)v=vj28+Δv其中uj和vj表示u和v的高8位所代表的数,而Δu和Δv则表示两个数的低8位所代表的数。
由图1可见,高8位数经①直接送到M6800的两个输入口PIA1和PIA2。中央处理器CPU先从PIA1取得uj,並以uj为地址去查阅随机存贮器RAM中存放的一个256点的函数表y(u)=f(u),读出相应点的函数值y(u)j和函数在该点的斜率S(u)j。这里用上标(u)表示所得的函数值和斜率都是根据第一个数U查表的结果。接着,CPU将函数值y(u)j送到输出口PIA4,而斜率S(u)j送到输出口PIA3。PIA3和PIA4这两个输出口编程为脉冲方式,所以当CPU送数完毕时,从接口的CB2线上将输出一个负脉冲。这两个CB2负脉冲经⑥和⑦送到控制器,使之产生三个控制脉冲C1,C2和C3。在这三个控制脉冲的作用下PIA4中的函数值y(u)j将经⑧和⑨装入乘法累加器中的R3寄存器,PIA3中的斜率值S(u)j将经③送入乘法累加器中的R1寄存器,而URNG输出的16比特数的低8位将经②进入乘法累加器中的R2寄存器(见图2)。装数完毕,乘法累加器由C2脉冲启动,进行运算,並在70μs的时间内得出结果存入寄存器R3。运算结果是y(u)=y(u)j+s(u)jΔv (2)根据线性内插的要求,由自变量u求得的函数值y(u)应该是y(u)=y(u)j+s(u)jΔu (3)而实际运算的结果中,乘数不是Δu而是Δv,这是因为当PIA1上的数uj被CPU读过后,URNG已经被重新触发而输出了第二个数v,这一点可以从时间波形图图2上清楚地看出。URNG产生的16比特数的高8位数和低8位数之间的相关系数为0.013,且Δu和Δv本身都是均匀分布的随机数,因此可以认为根据(2)式和(3)式计算的y(u)具有相同的统计特性。
寄存器R3中存放的运算结果y(u)经⑩和(11)加到两个16位×32字的先入先出(FIFO)存贮器,两个存贮器都是用两个8位×32字的FIFO存贮器並联而成。利用FIFO存贮器暂存随机数列,以满足短时内高速取数的需要是本方案不同于现有技术的一个重要标志。加在FIFO输入端的数据当SI出现脉冲时移入FIFO(当32个寄存器全部装满时则不能进入)。两个SI端经④和⑤分别和PIA1和PIA2的CA2端相连,每当PIA1或PIA2上的数据被CPU读过之后,相应的PIA的CA2线上将出现负脉冲。如PIA1的CA2有负脉冲,FIFO1装数。如PIA2的CA2呈现负脉冲,则PIA2装数。现在,当运算结果y(u)出现在寄存器R3中时,正值CPU向PIA2取数,所以y(u)在PIA2的CA2脉冲控制下经(11)进入FIFO2。
与上述过程类似,URNG输入的下一个随机数v也是经过查表(另一个函数y(v)=ψ(v))和线性内插而得到运算结果y(v)=y(v)j+s(v)jΔu (4)上标(v)表示有关数是起源于随机数vo与公式(2)相类似,这里线性内插的乘数不是Δv而是URNG产生的再下一个数的低8位所代表的数Δu。运算结果也是出现在乘法累加器的R3寄存器中,但是,在y(v)出现后接着发生的事是CPU从PIA1读数,因此由PIA1的CA2端有脉冲经④送到FIFO1的SI端,使y(v)经⑩移入FIFO10。
由此可见,如果URNG产生的数列x1,x2,……,xixi+1,……中的xi(i=2n,n=0,1,2,……)经查表和线性内插得到yi(i=2n,n=0,1,2,……),xi+1(i=2n,n=0,1,2,……)经查表和线性内插得到yi+1(i=2n,n=0,1,2,……),则yi依次进入FIFO2,而yi+1依次进入FIFO1。
每当一个数进入FIFO时,FIFO的IR端就从它的逻辑高电平变到逻辑低电平,同时这个数自动向FIFO的输出端转移直到遇到某个已经装有数的寄存数为止。IR端的电平跃变经(12)和(13)传到URNG,使URNG的状态发生一次改变,推出一个新的随机数。如果在某一时刻,FIFO的32个寄存器已全部装满,而新的数又到达其输入端,这时即使SI端出现脉冲,新的数也不能进入FIFO,IR端也不会出现电位的跃变,URNG因此也不会输出下一个数。这时虽然查表和线性内插仍按M6800内时钟的节奏继续进行,运算的结果却是一成不变的,仿真器相当处于停顿状态。这样的设计便干扰脉冲的平均输出速率与微机的时钟无关而完全受外时钟的控制。而且,URNG产生随机数的速率也完全和输出速率相适应,不论外时钟频率的高低,整个序列14×106个数中的每一个都将经过变换而送到输出端。
FIFO2的输出端经(15)接到一个数字定时器。定时器受外时钟的驱动对FIFO2输出端上的数字计数,计数完毕时送出一个定时脉冲。因此,如外时钟的周期为Te,则定时脉冲出现的时间将是T(u)=y(u)Te(5)由于y(u)是一个16比特的二进制数,T(u)的变化范围可从Te至65535Te。
从定时器输出的定时脉冲经(16)和(17)加到两个FIFO的SO端,每当这个正脉冲到达SO端,FIFO中最后一个寄存器中的数便被取出,而排队在前的数自动向输出端移动。从FIFO1取出的16比特数经(14)加到数模变换器DAC,DAC输出的模拟电压经(18)送到高频调制器,控制输出高频脉冲的幅度,而高频脉冲出现的时刻完全由定时脉冲决定。
随机数y(u)(从FIFO2输出)的概率分布函数完全由RAM中的函数表y(u)=f(u)决定。随机数y(v)(从FIFO1输出)的概率分布函数完全由RAM中的函数表y(v)=ψ(v)决定。RAM中可以存放多个函数表供产生y(u)和y(v)时选用。因此,脉冲的幅度分布规律和出现时间的分布规律可以方便地改变以适应仿真的需要。至于输出脉冲的平均速率,也能方便地进行控制。事实上,只要改变外时钟的频率就行了。
按本发明构成的装置,只要输出脉冲的平均速率不超过随机数y(u)(或y(v))的产生速率的88%,FIFO实际上在任何时候都不会被取空。系统采用的是低速微机,其时钟频率为833KHZ(一个时钟周期为1.2μs),为了产生一个y(u)(或一个y(v)),CPU需要执行27条指令,共需130个时钟周期,即130×1.2=156μs,所以产生随机数y(u)的速率是6410个数/秒,这就是说,输出脉冲的平均速率不应超过6410×0.88=5641。如果外时钟的频率调得过高,使脉冲的平均速率超过了这个限度,那么在输出脉冲序列特别密集的时候,FIFO中的数就会因“入不敷出”而被取空。一旦FIFO被取空,其输出端上就保持着最后一个寄存器中的数,再对它取数,就重复地得到这最后一个数了。因此,FIFO的被取空意味着在脉冲密集的部分短时间地出现一串幅度相同、间隔相同的脉冲。这种周期性的脉冲串夹杂在整个脉冲序列中,使概率分布函数的精度降低,这是不希望出现的情况。为了避免这种情况的发生,仿真器的面板上有一个“取空”指示灯,它受FIFO的OR端电位的控制。当FIFO被取空,OR端的电压降到逻辑低电平,“取空”放光二极管亮,提醒操作人员输出脉冲速率已超过极限。
上面说到的5641P/S这个平均速率的极限值是使用标准M6800微机系统时的极限值,如果将微机硬件作一点改变,这个极限值可以大幅度地提高。
对高频调制器的要求是速度快和动态范围大。本仿真器的样机中用的是由两个HP10514型平衡调制串联构成的高频调制器,总的动态范围达80dB。高频调制器的特性一般都呈非线性,但只要这非线性特性是已知的,就可以通过修改RAM中函数表的方法将它消除。
线性化前后的调制器特性示于图3。
图1中的ACIA1和ACIA2是M6800的两个串行接口。ACIA1经过调制解调器MODEM和磁带机相联,ACIA2则直接和显示终端VDU相联,这些都是M6800的外围设备,与本发明没有直接的关系。
本发明所取得的效果与现有技术相比具有以下特点1、脉冲幅度和脉冲间隔可以独立编程,可事先设定任何所需的概率分布函数。
2、脉冲幅度和脉冲间隔都具有16位二进制数的精度,其变化范围都在84dB以上,能满足测试通信系统的要求。
3、仿真器输出的最高脉冲速率既不取决于硬件随机数发生器的工作速率,又不取决于微机的运算(查表和传数)速率,而是取决于先入先出存贮器的极限存取速率。本系统采用AM2812ADC型FIFO,极限存取速率大于1MHZ,因此短时脉冲速率可超过1000KP/S,相当于阿尔伯特实验系统的50倍。如果采用高速FIFO,最高脉冲速率也能相应地提高。
4、序列周期长达7.5×106脉冲(相当于阿尔伯特实验系统的900倍)。如系统以500P/S的平均速率输出脉冲干扰,则在4小时之内脉冲序列不会重复,而这已经可以认为很接近实际情况了。
5、由于微机中只需存放若干个256点的函数表,所需的内存容量很小。例如,测试中经常需用八种不同的概率分布函数(包括幅度和脉冲间隔),存放八个函数表共需8K内存空间。
6、输出脉冲序列的平均速率是连续可调的,但其最大值取决于随机数产生。变换和内插所需的时间。由于硬件URNG和硬件内插器的工作时间很快,所以平均速度的最大值实际上只取决于微型机执行程序所需的时间。本系统采用标准的MSI6800微机系统,最大平均速率为6.4KP/S。若将PIA的联接方式略加修改,可简化查表的程序,使最大平均速率提高为13.4KP/S(每秒的千脉冲数)。如果用直接存贮器存取(DMA)技术,这个最大平均速率还可进一步提高为104KP/S。
7、仿真器与微机系统做成一个整体,体积小,造价低,使用方便。
测试结果1、概率分布密度函数的测量为了测量概率密度分布函数,使用标准MSI-6800微机系统。仿真器的方框图如图1所示,但测试是在数字电路部分进行的。测试概率密度分布函数的设备接在FIFO1的输出端。FIFO2中的数列的分布函数可以任意选择,但为了读数的方便,宜采用均匀分布。外时钟的频率也可任意选择,但为了使测试进行得快些,宜将频率尽量调高,只要不出现FIFO存贮器被取空的情况即可。因仿真器面板上有“FIFO取空”指示灯,这一点很容易做到。
曾对FIFO1的数列编制了三种不同的概率密度分布函数,它们是指数分布、瑞利分布和均匀分布,测试结果如下指数分布取平均值
y=1000,
概率分布密度函数为fy(y)=ae-ay=10-3e-10-3y,存在RAM中的变换函数为y=-10001n(1-x),0≤x≤1,测试时,y的跨距取128,样本大小取63810,每10秒记录一次。理论上预期的频率分布曲线为128×6381×fy(y)=816.8e(-10(-3y))这条曲线在图4上用实线表示。
实测结果也由图4给出,用阶梯线(直方图)表示。由图可见,测得的概率密度分布曲线与理论曲线相符。
瑞利分布取平均值
y=1000μ=
=797.9
密度分布函数为fy(y)=yμ2e-y22 μ2=]]>=y797.92e-y22 × 797. 92, y ≥ 0]]>存在RAM中的变换函数为y=μ- 21nx]]>=797.9-21nx]]>测量y的分布规律时,其跨距取64,样本大小为64706个数,每10秒记录一次结果。
理论理论予期的频率分布曲线是64×6470.6fy(y)=0.65ye
这条曲线画在图5,用实线表示。
测试结果在同一图上,用阶梯线(直方图)表示。测试结果与理论予测曲线相符。
均匀分布存在RAM中的变换曲线是一条直线y=(216-1)x,0≤x≤1测试跨距取1024,样本容量取100896个数,测试结果示于图6。这个结果也和理论曲线(一条水平线)相符。
2、测量FIFO被取空的概率。
FIFO存贮器上有一个OR端,如果OR端是高电压,表示FIFO输出端的数是有效的,如果FIFO被取空,则OR端转为低电压,表示其输出端上的数是无效的。利用OR端提供的信息,很容易测量FIFO被取空的概率,测试结果示于图7。进行这个测试时,样本大小取5×106个数。由图7可见,对于指数分布的随机数,允许的最大平均输出速率是输入速率的1/1.25倍,这个比值与计算机模拟的结果十分接近。
权利要求
1.一种由低速微型电子计算机[1][8][9][10][11]和一个硬件随机数发生器[2],一个乘法累加器[3]二个先入先出(FIFO)存贮器[4],一个数字定时器[5],一个高频调制器[6]以及少量辅助电路[7]、[12]、[14]互相连接构成可编程序脉冲干扰仿真器。其特征在于a、一个FIFO存贮器接在乘法累加器[3]和数模转换器[7]之间,另一个FIFO存贮器接在乘法累加器[3]和数字定时器[5]之间,使仿真器输出脉冲的最高速率和FIFO存贮器的极限存取速率相等。b、乘法累加器[3]接在计算机的输出接口[9]、硬件随机数发生器[2]和两个FIFO发生器[4]之间,以完成线性内插的功能。c、硬件随机数发生器[2]的十六个输出头中有8个头接到计算机的输入接口[10],[11],另8个头接到乘法累加器[3],实现分布函数的变换和提高精度。d、两个FIFO存贮器[4]IR端通过或门[12]与硬件随机数发生器[2]的触发端相联。
2.按照权利要求
1所述的仿真器,其特征在于随机数发生器输出的数列由微机控制分解成两个独立的数列使用。
3.按照权利要求
1或2所述的仿真器,其特征在于面板上有一个“FIFO取空”指示灯。
专利摘要
本发明属于通信干扰和电脉冲产生技术领域
。用一个低速的8位微型计算机,配以一个硬件随机数发生器URNG、一个乘法累加器、两个先入先出存贮器FIFO、一个定时器、一个数模变换器DAC和一个高频调制器M便能产生周期长达7.5×10
文档编号G06G7/00GK85100582SQ85100582
公开日1986年8月20日 申请日期1985年4月1日
发明者程时昕 申请人:南京工学院导出引文BiBTeX, EndNote, RefMan
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1