登录站点

用户名

密码

DSP在智能仪器中的应用(下)

已有 1530 次阅读  2009-09-22 14:38   标签DSP  智能仪器  应用 
4  基于DSP的相干欠采样数字仪
随着集成电路技术的不断发展,各公司相继出现各种高性能的器件,例如TI公司集成电路芯片的时钟速率远远超过1MHz。在电路设计时,必须对这些高速集成电路产品的主要性能及它们间的制约关系有一个全面了解,并提出解决办法。
在高速集成电路芯片中,如高速ADC,将涉及到分辨率和速度制约的关系,并且相互存在矛盾。在过去,要解决这个问题,可使用欠采样技术,它是利用一个扫描延迟发生器来对周期波形进行采样处理,如图6-3l所示。从图中看到,延迟时间△与采样波形的周期T并不总是相等的,即T≠m△(m为整数)。这种不连续性将在采样波形中引入非相干,换句话说,扫描延迟发生器并不能够为相干采样提供所需要的延迟分辨率。另外,△并不总是为恒定值,这是因为产生延迟的器件是模拟芯片。相干是一种极重要的技术,它能使试验波形在多个周期(正数)里完成采样处理。为了使用离散快速傅里叶变换(Discrete Fast FourierTransform,DFFT)技术,在一个采样波形中,必须优先选择相干技术,这样就能够较方便地测量有关波形的增益、失真和信噪比等参数。非相干采样波形的主要问题之一是在非整数周期条件下进行采样,这样就能在模拟波形中存在不需要的断点,致使频域中出现不需要的谐波分量。

 


补偿相干技术的一种方法是在处理数据前进行加窗,但是开窗口要牺牲一些分辨率和增加额外的处理时间。在过去,可使用拍频试验来解决相干问题,这也是一种可行的方法,但是几位字长必须在每个采样点上完成,从而可以看出,高频采样是不可能完成的。

本文提出一种改进的SAR新方法,能在整数周期里和每一个采样点上完成几位字长的采样,这样就能对速度极快、频率极高的信号进行数字化处理。

相干是解决高速欠采样A/D转换的主要技术,为了解决这个问题,应该设计相干欠采样数字仪。这种仪器是基于使用新技术的DSP电路,并由DSP进行运算和控制。它不仅克服了上述诸多方法中的缺点,而且具有线路简单、分辨率高、采样速度快和使用方便的特点。因此,这种相干欠采样数字仪特别适合任何器件接口板(Device Interface Board,DIB)中的子插件板。

4.1  电路结构

    (1) 框图

相干欠采样数字仪的框图如图6-32所示,从图中看出,该仪器是由5个芯片组成,其中DSP是关键器件。

 


 a.数字信号处理器(DSP)

由于该仪器采样信号的速度极高,通常设定时间为1μs。另外,要临时存储数字的采样结果,需要一个波形捕获随机存储器(RAM)的存储体。

DSP是相干欠采样数字仪的重要芯片,它不仅能满足高速采样信号的处理和存储采样结果,而且还能对仪器中的各种外设(DAC、DUT、比较器电平转换器)进行控制和运算。为了能完成上述这些任务,特选择TI公司生产的TMS320F206DSP。

TMS320F206 DSP是一种16位定点处理器,它是TMS320C2××系列:DSP中的一个品种。该系列DSP是采用静态CMOS集成电路工艺制造的,其结构以TMS320C5×为基础。由于采用了先进的改进型哈佛结构(程序存储器和数据存储器具有各自的总线)、多级流水线、芯片内外设、芯片内存储器和专用指令集,所以它具有下列优点:

改进TMS320的结构设计,使其性能和通用性明显提高;

采用模块化结构设计,可以更快地开发各种产品;

采用先进的集成电路工艺,以提高性能;

其码源与’Cl×和’C2 x兼容,这样就能更快、更容易地对’C1×和’C2×进行产品升级;

适用于快速算法和优化高级语言操作的增强型指令集;

采用新的静态设计技术使其功耗达到最低。

TMS320F206 DSP的主要特性:

    (a) 速度

单周期指令执行时间为50ns、35ns或25ns;

20MIPS、28.5MIPS或40MIPS。

(b) 与TMS320系统其他定点DSP的代码兼容性源代码与’C1×’和’C2×’系列所有品种兼容;
    与’C5x’产品向上兼容。
    (c) 存储器
    可寻址的存储器空间为224KB(程序空间64KB,数据空间64KB,I/O空间64KB,全
局储存空间32KB);

芯片内双访问RAM为544B(数据为288B,程序/数据为256B);

芯片内具有闪速存储器32KB;

芯片内有单访问的RAM,容量为4.5KB。

(d) CPU

32位算术逻辑单元(CALU);

32位累加器;

16位×16位并列乘法器,乘积为32位;

3个比例移位器;

8个辅助寄存器(用于问接寻址数据存储)。

(e) 程序控制

4级流水线操作;

8级硬件堆栈;

用户可屏蔽的中断线。

(f) 指令集

单指令重复操作;

单周期相乘/累加指令;

存储器块移动指令,能有效地管理程序/数据;

复址寻址能力;

适合基2的FFT倒位序复址寻址能力。

(g) 芯片内外设

软件可编程的定时器;

适用于程序、数据和I/O存储空间的软件可编程等待状态发生器;

振荡器与锁相环,可实现时钟多种选择:×1,×2,×4和÷2;

CLK寄存器,能控制CLKOUTI引脚的开启与关闭;

同步串行口;

异步串行口。

(h) 用于仿真和测试的片内扫描逻辑电路(IEEE标准1149.1)

( i ) 电源

5V或3.3V静态CMOS工艺;

节电模式,它能减少功率消耗。

( j ) 封装

100线薄型四边有引线扁平封装。

b.DAC

DAC是数/模转换器,它能将DSP处理后的数字信号转换为比较器所需的模拟信号,然后与DUT(Device Undei Test,DUT)的输出信号一起馈入比较器进行比较。在电路设计时,DAC的选择是根据仪器的分辨率和设定时间来进行。为此,可采用分辨率为12位的并列输入型TLV5619芯片,它能为信号数字化处理提供足够的分辨率和运行速度。

TLV5619是TI公司提供的字符串DAC,它是一种中等精度的并行接口器件。由于采用先进制造工艺技术,所以该芯片在低功耗小封装内具有极好的线性性能。另外,它还具有多个负载驱动功能,从而大大简化输出接口的复杂性。

TLV5619主要特性:

分辨率:12位;

线性误差:±0.08%;

适应时间:lμs;

接口形式:并列;

负载数:20个;

电源电压:2.7~5V;

功耗:4.3mW。

c.比较器

数字仪中的比较器是逐次比较(SAR)的一部分,它能把采样的模拟信号转换成数字信号。而比较器输出信号的逻辑电平和DSP所需要的逻辑电平不一样,为此,必须经电平转换后才能满足要求。

在电路设计时,比较器的选择需根据采样信号的速率来进行。为了满足高采样速率的要求,比较器可采用MCIOE 1651。

(2) 工作原理

为了更好地说明工作原理,特对某些问题和有关参数进行分析和假设。

    a.Futp和Fsar
在本数字仪中有两个重要频率Futp和Fsar,其中Fsar是比较器的选通速率,而Futp是被采样信号的频率。为了产生一个线性控制(滑动),它们之间必须有一个精密的比率,即遵循下列等式


其中,S是变量,表示在一个采样信号周期里所花费的采样数。为了DFFT分析方便,通常S的值应该选择为2的幂,即S=2m(m是整数)。在本仪器设计时,S=4。

b.B

B是每次采样所对应的数字位数。在电路设计时,B可选择3位。

c.Futp

Futp是被采样信号的频率。在电路设计时,这里假设它是正弦波信号,其频率取1000Hz。

当采样信号(Futp=1000Hz)经调理检测设备(Device Under Test,DUT)调理处理后,使它满足比较器输入信号的要求,然后与DAC的输入信号一起馈入比较器的输入端作为比较信号。比较器是SAR的一部分,具有比较和锁存两种功能,主要决定DSP输出锁存信号的电平。当锁存允许端为逻辑高电平,则比较器进行比较;当锁存允许端为逻辑低电平,则比较器对输出数据进行锁存。在比较时,即使用一种扫描延迟过程,普通的逐次比较程序仍然能够利用n位比较在每个点对每次采样进行数字化处理。而位的比较是以n倍时间交叉分布在许多周期中,这样就能得到一种极高的和有效的采样速率。如前面假设采样信号Futp是周期性变化的,如图6-33所示。图中仅标出4次采样(1,2,3,4),主要为了简化草图,而每次采样的输出值可用3位数字表示,即B=3位。在锁存时,比较器输出的是ECL电平,必须经电平转换(ECL/TTL),才能把比较器输出送入DSP。从而可以看出,比较器选通速率是一个很重要的参数,通常用N表示,它说明每个比较选通之间必须通过的总时钟周期数,这样,Fsar=处理器时钟速率/N,式中的DSP处理器速率通常为20MHz。

经比较器多次比较和锁存输出,最后SAR型ADC转换的输出波形如图6-34所示。图中有12位数字,分别与图6-33中4次采样相对应,而每一次采样均由3位数字的字长构成,即图6-33中采样1由图6-34中的“1.1”、“1.2”和“1.3”数字位组成。同样,图6-33中的采样“2”由图6-34中的“2.1”“2.2”和“2.3”数字位构成,图6-33中的采样“3”由图6-34中的“3.1”、“3.2”和“3.3”组成,图6-33中的采样“4”由图6-34中的“4.1”、“4.2”和“4.3”组成。先从“1.1”开始,此时可利用改进的SAR算法对第一次采样的MSB进行计算。比较器在“1.1”开始第一次比较时,它的消逝时间间隔计算为



由式(6-2)得出,是式(6-1)的倒数,即比较器消逝时间间隔等于比较器选通速率的倒数。当比较器又一次选通时,则产生第二次采样的第一位,符号为“2.1”,它的消逝时间间隔T0用式(6-2)计算。当比较器又一次选通时,则产生第三次采样的第一位,命名为“3.1”,它的消逝时间间隔也可用式(6-2)计算。当比较器又一次选通时,则产生第四次采样的第一位,命名为“4.1”与前面相似,在T0后,周期波形将自动移行,以致确定第一次采样的第二位,第二次采样的第二位,第三次采样的第二次,第四次采样的第二位。因为信号是周期性变化,所以后面的选通将使位序列产生右移,即把相应每次采样的三位字长右移。在本转换器中,需要12次(B·S=3×4=12)。

综上分析得出,这种累计效应能将图6-33中的采样“1”转换成图6-34中的由3位数字字长构成的“1.1”、“1.2”和“1.3”位。同理,图6-33中的采样“2”由“2.1”、“2.2”和“2.3”位数字构成,图6-33中的采样“3”由“3.1”、“3.2”和.“3.3”位数字构成,图6-33中的采样“4”由“4.1”、“4.2”和“4.3”位数字构成。

4.2  软件设计

(1) 软件流程图

DSP算法的流程框图如图6-35所示。


(2) 软件运行步骤

为了软件分析方便,软件运行必须按照下列步骤进行。

步骤1,在算法开始时,首先对波形捕获存储器cmem进行初化处理,并使其阵列(128×12)为零(其中128是试验测量时每周期里所花费的采样数,即S=128,而12是ADC的分辨率)。然后对变量循环进行初始化,使循环值等于数字仪的分辨率(12位)。变量位选择能够控制和管理逐次比较程序中的位选择。初始化设置能够使DAC为满刻度值的一半(相当于逐次比较程序中的100000000000地址的第一位)。

步骤2:只要循环是有限值,就能对采样信号继续进行数字化处理,此时程序将转到步骤3。否则,这个过程就结束,此时数字化波形是有效的,并能从DSP下载。

步骤3:对变量i进行初始化处理,并使它置1。在电路软件设计时,这个变量的范围可在1~5任选,它相应于DSP芯片内存储器的某一个地址。使用这个步骤能够通过捕获存储器阵列(1×12)行矢量中的每一个矢量。在软件编程时,使用符号cmem[i]表示S存储器位置中的每一个位置。

步骤4:利用“异”操作运算,把cmem[i]的内容设置为一个新的搜索电压,随后把cmem[i]当前的值装到DAC。经几个DSP时钟周期后,就允许DAC输出稳态值。

步骤5:DAC的输出和模拟输入信号的值进行比较,如果DAC的输出电压大于模拟信号的电压(采样信号的电压),则程序转到步骤6,否则程序跳到步骤7。

步骤6:清除捕获存储器早先设置位,然后转到下一个步骤。

步骤7:增加捕获(捉)存储器的地址。

步骤8:如果捕获存储器增加后的地址i等于采样数(128),则转到步骤9,否则返回到步骤4。

步骤9:利用一个二进制右移操作,就能把位选择寄存器中的值除以2,此时循环计数变成递减计数,然后程序返回到步骤2。

(3) 软件分析

为了详细说明软件流程图,特考虑一个特殊例子,它的波形图如图6-36所示,该图是12次迭代中的3次迭代图,并在第一次迭代图中注明电压值。图中虚线表示相应每次迭代捕获存储器的DAC输出电压,而实心圆点表示波形上希望进行数字化处理的实际位子。为了简单起见,假设数字化处理信号的采样次数为16(即S=16),而每次采样是用12位表示。初始化后,阵列元件设置值为零,假设波形上第二点的电压为2.656029V。

    首先对cmem[2]处理,并在000000000000上初始化,用100000000000进行“异”操作,从而产生100000000000。其次把位赋值传送给DAC,并产生输出电压(4/212)(211)=2V,这个电压相应于图6-36中迭代=l的第一个实心圆点。由于2<2.656029,所示cmem[i]中的内容是一个有效的初始估算值。在16个选通(i=3,…,16)后,更新位选择寄存器,即bit_sel=bit_-sel/2,它是把寄存器bit_sel右移一个单元来完成的,此
时循环计数器为递减计数。随后,对相应i=1点的存储器内容进行更新,最后回到与i=2一致的那个点上,并在那个点上对捕获寄存器内容进行更新和运算100000000000○×010000000000=110000000000,从而使DAC(卷积)产生3V输出电压。由于3>2.656029,所以这位赋值是不正确的,此时对cmem[2]又一进行“异”操作,直到最近“异”操作无效为止(1000000000○×010000000000=110000000000),也就是图6-36中迭代=2的波形。如果碰到这种情况,则继续对其他15个采样点进行数字化处理,然后回到相应i=2的点,并转到位赋值的第三次迭代。随后把位赋值100000000000○×001000000000=101000000000传送给DAC,并产生2.5V。由于2.5<2.656029,所以这个赋值是有效的,它是cmem[2]中的第3位,如图6-36中迭代=3的波形。从而可以看出,DAC的输出电压(经迭代后)与数字化处理的希望值更接近。利用上述相似方法连续迭代,最后能使cmem[2]中的合适位分配变成101010011111,致使DAC的输出电压与数字处理的实际值基本一致。


4.3  试验结果与分析

为了更好说明,现以一个典型的例子进行试验。首先选择一个正弦波,因为这些信号的数学表达式在计算指标性能(如SNR)时具有易处理的特性。经试验得到的数据绘制的相干数字化正弦波曲线如图6-37所示,图中信号频率为121.4240kHz,而采样数为128,每次采样量化的分辨率为12位。另外可以看出正弦波波瓣的最高和最低极值出现平坦,这是因为从采样到采样电压的变化是在比较器磁带电压(30mV)之上,从而可以预防精确量化和最低的SNR。本文推荐的数字仪具有相干特性,它根据欠采样改进SAR技术进行测量。为了能在试验条件下完成数字化处理,必须对仪器中关键芯片的参数作些规定:DSP的时钟速率为20.1206MHz,比较器选通速率Fsar为121.4234kHz,N=167。因此,比较器选通间通过的时钟为167DSP时钟周期,这样就能得到所需要的Fsar,它的计算公式为Fsar=[167·(1/(20·1206MHz))]-1=120.4826kHz,这个值与式(6-1)计算值是一致的,从而说明实验结果是与理论分析相符合的。


转换信号的数字采样频谱曲线如图6-38所示,从图中看出,该曲线含有直流分量。因此,在使用DFT时,必须把频谱曲线中的直流分量去掉。

 

转换信号的信噪比(SNR)计算为


经计算,这个信号的信噪比为41.0495dB。

为了说明推荐的采样技术的性能是如何减轻比较器的性能,必须对数字时钟信号的上升时间进行分析。另外,还要增加算法控制采样技术,这样才能对更高频率的信号进行数字化处理。首先,将式(6-2)变换成T0=(1+1/s)(1/Futp),这样就可以得出,选通比较器是按照“试验信号的每一个周期加子周期的小数”的速率进行工作,这是因为有效采样速率是在整个迭代处理后的一个试验信号周期内捕捉许多采样来确定的。这样增加采信号的频率就能增加采样速率。因此,为了得到更高的采样速率,选通比较器可以假设按照“试验信号每两个周期加一个小数子周期”的速率进行,如果这种速率不能满足要求,它还可以假设法按照“每三个周期加一个小数字周期”的速率进行,直到符合要求为止。这样就允许比较器迭通之间的传播是在许多周期内完成并能增加试验信号的频率。根据实验室试验的结果,并把试验数据绘制成一个相干数字方波曲线,如图6-39所示,图中曲线频率为20000235Hz。采样数为512,每次量化的分辨率为12位。从曲线上可以看出,当幅度上升到满刻度值的10~90%时,所花费的采样数大约为6次(上升时间为0.5958ns)。即使转换处理是分布在试验信号的许多周期中,但因512次采样控制在一个周期里,这样就能使有效采样速率达到20000235×512=10.2401GHzo在实际应用中,虽然用其他方法(如拍频)也能获得如此高的采样速率,但两者的区别是:前者(推荐)具有相干特性。



5  任意波形发生器

在实际应用中,波形发生器通常为系统提供一种标准信号,所以在很多领域中获得广泛应用。例如,雷达设备、通信系统、仿真、检测和DSP应用系统。其中DSP应用和嵌入系统中,波形发生器作为DSP的外时钟信号源,所以它的质量和优劣直接影响DSP和嵌入系统的性能。为此,必须选择性价比高的信号波形发生器,这样才能为DSP提供一个高性能的时钟信号。

在当前市场上,波形发生器是由模拟电路或数字电路组成。前者为分离电路,特别当信号复杂程度增加时,它的硬件电路显得更多。另外,当宽带非正弦信号增加,模拟电路发生器就无能为力。此时,最好使用数字电路和微处理器构成的波形发生器。这种发生器不仅能克服模拟电路发生器的不足,而且具有体积小,精度高和使用方便的特点。

随着计算机、通信和微电子技术的不断发展,从而相继出现很多新技术、新工艺、新器件和新电路,另外,对应用电路也提出各种新的要求。而目前波形发生器难以适应这种快速、多变和高性能的要求。为此,本节提出一种基于样条技术和数字信号处理的任意波形发生器。这种波形发生器是由一个DSP、一个FIFO存储器、一个视频调色板和一个PC接口组成。其中FIFO作为DSP和视频调色板之间传送数据的存储器,这种形式的结构,使得本系统具有下列特点:

    a.分时操作

在波形发生器中,FIFO存储器的这种配置形式能使DSP对I/O带宽进行分时操作,从而大大提高程序执行效率(与写入单个采样值相比较)。

b.可变采样速率

在实时运行过程中,可变采样速率的使用是很重要的。由于使用FIFO存储器,所以在传输数据时,可使用可变速率(用户希望使用的任何采样速率,但以FIFO不溢出为原则)。这样不仅满足不同采样速率器件的需要,而且还可以产生相干采样速率。

c.高速串行口

在DSP芯片上具有一个性能极好的高速串行口,因此,它能快速下载数据/程序和实时交换操作(与其他系统进行实时通信)。

d.优化系统设计

由于使用FIFO存储器,所以系统中各模块电路的速度可以不一致,这样就能为系统优化设计和芯片选择提供宽松的环境。

5.1  硬件结构

任意波形发生器的框图如图6-40所示。从图中看出,它由多块电路组成,现将主要模块进行说明。


 (1) DSP

本系统中所使用的DSP是TI公司新近推出的32位定点芯片TMS320C6202。由于它采用了Veloci TI甚长指令字(Very Long Instruction Word,VLIW)结构和RISC指令集,所以它具有极好的性能。主要性能指标见表6-11。

 


在波形发生器中,DSP主要有三个作用:首先要为视频调色板(TVP 3206)和TIFO存储器(IDT72V3640)提供程序;其次与PC进行通信;最后输出连续波形点。另外,它在系统中能很好协调各个模块有序进行工作。因此,它是系统中的核心电路,其内部结构如图6-41所示。由图得出TMS320C6202主要特点包括:
32位定点芯片;
具有先进的VLIW结构内核;
片内具有8个独立运算单元,其中6个为ALU(32/40位)另外2个为乘法器(16×16),这样就能在一个指令周期内支持8条32位指令;


具有RISC指令;

高性能的外部存储器接口(EMIF),能与SDRAM、SBSRAM和SRAM等同步/异步存储器进行“无缝”接口。

芯片内具有多种外设

多通道DMA控制器;

多通道缓冲串行口(McBSP);

支持引导(BOOTUP);

内置灵活的PLL锁相时钟电路。

芯片内外不同供电模式

内核电源电压为1.8V;

周边I/O电源电压为3.3V。

从TMS320C6202的结构图和特点中知道,其片内具有多通道直接存储器访问(DirectMemory Access,DMA)功能,它能在没有CPU干预下,由DMA控制器完成DSP存储空间内的数据搬移,也可以和芯片外外设或外部器件进行数据传送。在本系统中,利用DMA控制器能把数据从:DSP中搬出或把外部数据馈人DSP。而具有自动初始化的DMA控制器,它能在一个周期里把内部存储器的数据搬移到32位外部总线接口,并能对这些数据搬移进行重复操作。

DSP通过多通道缓冲串行口(Multichannel Buffered Serial Port,McBSP),能从PC中快速下载程序和数据文件,其中含有波形点的数据文件存储在内部存储器。另外,DSP通过外部存储器接口(External Memory Interface,EMIF)能够给视频调色板和FIFO存储器编程,同样也能为芯片内ROM配置有关程序。在实时操作时,当需要把数据据写入FIFO存储器时,则写允许(Write Enable,WEN)就能允许DSP控制总线,使之写操作完成;当需要从FIFO存储器读出数据时,则读允许(Read Enable,REN)就能允许视频调色板控制总线,使之读操作实现。

(2)FIFO存储器

FIFO是先进先出存储器的简称,它能作为两个设备之间进行单向数据传输,也可作为“慢进快出”或“快进慢出”的数据缓冲器。在实际应用电路中,它能为DSP和其他设备(ADC或DAC)间的数据提供缓冲(存),从而可以减少DSP为读写数据而进行的握手操作。另外,它能为系统中不同速度的器件提供最佳接口,从而为电路设计和外围电路的选择创造有利环境。

FIFO存储器实际上也像一个长度有限的队列,一般情况,它只能进行单向数据传送。它的内部结构和引脚均很简洁,通常只有数据线和读/写控制线,其中数据输入口有写信号,数据输出只有读信号。另外还有清除信号和三个状态输出标志:空、全满和半满。当三个状态输出标志分别为低电平时,则表示FIFO存储器中没有数据、放满数据和一半数据。

在波形发生器中,DSP以25MHz(最大值)速率和脉冲方式进行发送数据。此时波形的完整性(逼真性)主要由视频调色板(三通道DAC)锁存输人数据的质量决定。为了保证波形稳定性,在视频调色板像素总线上出现的数据必须以正规间隔排列,否则波形会出现抖动。

因为所需要的传输速率均是在DSP的I/O带宽内,这样大部分高速数据转换器都不可能直接与DSP相连,而FIFO存储器是解决它们连接的最佳方案。在实时处理时,FIFO存储器能够缓存大块数据,而DSP能够以脉冲模式把数据写入FIFO,其效率较以前那种单个数据写入方式高得多。在传送和存储过程中,FIFO存储器是作为暂时存储的缓冲器,即临时把DSP发送的数据存储,然后由视频调色板单独读入,并锁存到它的像素总线。FIFO存储器具有多种标志信号(满、半满、空),它能显示出任何瞬间存储器存储数据的多少。在实际操作时,FIFO存储器中的写指针总是在读指针操作前进行,否则要使波形遭到破坏。另外,当读指针大于512字,并远离写指针时,应配置半满标志(Partially Full Flag,PAF)信号,该信号触发中断,使读指针赶上写指针。当读指针位于写指针的512字内,PAF信号停止配置(即无效),此时DMA传递数据将继续进行,新数据写入FIFO存储器。为了使FIFO存储器能在系统中发挥应有的作用,必须对它进行编程,其内容将涉及到设备的工作模式,数据特性和标志特征。PAF的容量为1024字,在系统中编程花费为512字,仅为容量的一半。利用PAF的平衡作用,能使DSP和视频调色板的每部分的数据能很好达到平衡状态。

FIFO存储器在实时操作时应注意下列几个问题:

当FIFO存储器是满状态时,则不能进行写操作,否则,写入数据无效;

当FIFO存储器是空状态时,则不能进行读操作,否则,读出数据无效;

当FIFO存储器是半满状态时,则能进行读操作或写操作。

在进行FIFO存储器操作时,一定要遵循写操作在读操作前进行,否则要破坏波形。

(3) 视频调色板

为了产生波形,系统中最后模块必须设置一级数/模转换器(DAC),这里使用视频调色板(TVP3026)作为三通道DAC。视频调色板是基于三种伪彩色模块工作,这与数据库中的模式是一致的。在这种模式中,到达像素总线的数据均能指向内部RAM的地址,而内部RAM通常分成容量为8×256的三个模块,分别为红(R)、绿(G)和蓝(B)模块,其中每个模块相应一路DAC输出。在显示时,对于DAC输出电平的最低值用O表示,而最高值用255表示。在对RAM编程时,将涉及到波形所需的值,这些值可能是三个并行或单个任意波形或混合波形。调色板的时钟RCLK输出是由DSP内部打点时钟(200MHz)驱动,它由调色板中的CSR间接索引寄存器编程设置。在系统中,RCLK有两个作用:一个是把数据锁存到像素总线;另一个是同步FTFO存储器的读指针,同样也能对多路间接索引寄存器进行编程,并控制像素总线上的数据分离。在调色板中,如果在32位像素总线上有4个点(8位),那么信号分离比率应该选择4:1,这个4:l也是调色板像素总线的分离比率。如果一个32位宽的总线和8位分辨率,那么数据分离和解压缩的比率应为4:1。调色板中的RAM应根据地址构成,而每个地址包含8位数据,这里特别注意的是调色板中RAM的数据是由DSP运算和处理后提供的,从而能够建立并产生任何虚拟波形。这些波形如满足要求,则可输出;否则重新修改后再输出。

综上分析可以看出,视频调色板的R—G—B输出能够产生三个独立运行的任意波形。例如,假设锯齿波是在红色通道上产生,方波在绿色通道上产生,而其他波形在蓝色通道上产生。此时,DSP首先把产生一个锯齿波函数(00000000)所需8位信号的电压发送到红色通道的存储器存储单元0×00000000(这里使用0×表示与寻址有关的16进制数转换)。其次把产生一个方波函数(00000000)所需电压的8位信号存储到绿色通道的存储器存储单元0×00000000。最后把产生另一个方波函数(11111111)所需电压的8位信号存储到蓝色通道的存储器存储单元0×00000000中。这里必须指出的是视频调色板上的内部计数器将自动进行递增计数,从而使下一个数据信号能够存储到红色通道的存储器存储单元0×00000000中,这个过程继续重复上述变化,直到构成调色板RAM的所有三个寄存器达到最大空量为止。    这里还要指出的是DSP能够对产生各种实际波形的信息进行处理,同样也能够用来给视频调色板发送前的数据进行数学函数处理。在波形发生器中,DSP主要用来产生访问视频调色板的RAM存储器存储单元指定的点,由于DSP的输出是32位总线,所以它第一次发送8个点可以表示为


(4) 引导

在本系统中,8位引导ROM的作用是配置DSP的McBSP。当RESET后,则DSP将自动地完成从EMIF总线上的ROM芯片空间到DSP的程序存储器之间传输。程序配置的MeBSP寄存器,就能使程序和数据方便地快速从PC下载。

在实际操作时,通常把DSP配置成大尾数模式。这种模式由引导确定,并由印刷电路板上的硬件引脚分配来完成。在引导时,能把设置在EPROM的数据(32KB)复制到DSP的内部程序SRAM。在处理退出RESET模式后,所有寄存器均进入系统设定模式,例如,确定内部外设控制寄存器以便能够通过McBSP装载数据点和程序。

对于TMS320C6202处理器,变量部分说明不同代码配置的可用实际存储器,详细配置见表6-12。

 


从表中看出,程序代码(text)和复位指令(vectors一指一个文件,它包含设定RESET中断服务取包所需的汇编指令)均被存储到内部程序存储器(Program Memory,PMEM),相反,其他代码配置到内部数据存储器(Data Memory,DMEM)。根据波形发生器中存储器映射结果可知:PMEM的原点=0×00000000,长度=0×00010000,而DMEM的原点=0×80000000,长度=0×00010000。

5.2  软件说明

本系统的软件实质上是一种样条技术,为了说明该技术的原理,首先假定一组有限数据为ƒ(t1)、ƒ(t2)、…、ƒ(tp),然后将ƒ(t)定义为具有下列特性的内插函数:

ƒ′(t)和,ƒ″(t)是连续函数(t1≤t≤tp);

ƒk=ƒ (tk),k=l,2,…,p;

ƒ″(t1)=0和ƒ″(tp)=0;

内插函数ƒ (t),是由(p—1)立方样条函数平滑连接的一组分段序列组成,而每个分段是由ƒk(t)表示并在tk≤t≤tk+1里定义,这里k=l,2,…,(p-1)。这样就能把关联的三阶多项式定义为ƒ k(t)=ak+bkt+ckt2+dkt3,式中k=1,2,…,(p-1);并利用标准样条内插技术确定式中各个系数(ak,bk,ck,dk)值。

  只要找到一个函数能说明二阶导数是连续的,那么就能满足内插函数ƒ(t)的第一个特性,即ƒ′(t)和ƒ″(t)是连续函数(t1≤t≤tp)。这样拉格朗日多项式将为它提供必要的数学基础。为了分析这个多项式,特定义一阶拉格朗日多项式为


ψ(t)能连接两个点(t=a和t=β),并分别在{a,ψ(a)}和{β,ψ(β)}进行定义。

同样,为了保证内插函数ƒ (t)满足二阶导数的特性,特使用一阶拉格朗日多项式,那么就能把ƒ″k(t)分别在tk和tk+1两个连续点之间定义为一个连续函数,其形式如


ƒ″k和ƒ″k+1分别为采样点,因此,△k=tk+1-tk。就能定义为时间间隔,并对式(6-5)进行两次积分,这样就能确定ƒk(t)在每个间隔上的表达式,如

 


利用内插函数以ƒ(t)的第二个特性,就能确定式(6-6)中的积分常数CkDk的值。因此,在时间tkƒk(tk)时,根据式(6-6)就能够确定ƒk为下式


ƒk+1,确定为下式时


则式(6-7)和式(6-8)可用下列矩阵形式表示


这种矩阵表达式能方便地对两个未知常数求解,即[CkDk]T


将这个结果代入式(6-6),则能得到在每个间隔中的立方样条表达式,为


最后,经简化就能得到在tktk+1之间的样条多项式表达式,为


这个等式能够确定二阶导数的值,以便式(6-12)在每个(p-1)间隔上进行定义。根据内插函数ƒ(t)的第三个特性,就能在工ƒ1=0ƒp=0定义第一个和最后一个间隔的边界条件。

 

为了说明样条技术的实用性,特进行模似试验,试验曲线如图6-42所示。样条多项式技术不仅能为系统提供数据压缩功能,而且还能避免因大量谐波失真引入而影响直线近似的缺点。
 


5.3  设计要点

    (1) 印刷电路板

为了使系统达到最佳性能,减少噪声和其他干扰的影响,在电路设计时,印刷电路板推荐使用6层板,这是因为TMS320C6202是一种高引脚密度(352引脚)的芯片,它需要四个跟踪层。在设计时,印刷电路板中的主要元件排列如图6-43所示。其中DSP位于板的左边,FIFO存储器在板的中间,而视频调色板(三通道DAC)位于板的右边,它的三个输出口(R、G和B)落在这芯片的下面。


(2) 多电源供电

为了提高电源供电质量,满足各芯片对电源数量和精度的要求,在电源配置时,特采用多组电源独立供电。由于DSP、FIFO存储器和视频调色板电源电压是不同的,所以必须要有三组不同电源供电(1.8V、3.3V和5.0V)。其中DSP处理器需要1.8V和3.3V两组电源,1.8V是为:DSP核提供低电压供电,而3.3V是为DSP的I/O口供电,这样既能保证DSP在低电压下工作,实现节电目的,又能为周边外围其他器件提供宽松的匹配电源(3.3V)。

1.8V和3.3V两组电源分别由芯片内调节器PT6501N和PT6505(6)N提供,它们均为窄的14引脚,并位于印刷电路左下方(U10)和右上方(U11)。而5.0V电源是由片外提供,它可通过片上连接器与印刷电路板相连接。

(3) 地线配置

在印刷电路板设计时,除了把电源按不同电压分别设置外,还要把地线平面分成两个区域:一个模拟地平面和数字地平面。它们分别将各自的地线连到相应的地平面,而后这两个地平面又连到一个由铁氧体珠组成的地线,使电阻达到最低值(几乎为零电阻)。这种铁氧体珠直流耦合结构的地线能有效地使模似地和数字地隔开,从而消除数字地平面上的数字噪声对模拟电路的影响,这样就能进一步提高系统运行性能。

(4) 时钟信号的选择

在波形发生器中,需要多种时钟信号才能正常工作。尽管时钟信号多,但最终可归纳为三种独立时钟信号通道,并由视频调色板相同的时间基线驱动,这也是本系统重要特点之一。为了方便分析时钟网络,必须列出本系统中所需要的时钟信号,它们分别是:FIFO和DSP之间的读/写时钟、FIFO和视频调色板之间的读/写时钟、DSP的内部时钟、视频调色板的输出时钟和DsP的外部时钟(输出时钟)。在这些时钟中,它们的电平形式是不同的,其中DSP和FIFO是TTL电平,而视频调色板是PECL电平,这里必须进行电平转换,否则视频调色板和FIFO就不可能正常进行数据传送。为了解决这个问题,特使用一个外部标准时钟(100MHz、’TTL电平),并把它转接成PECL电平,再除以2,这样才能作为视频调色板的时钟输入信号CLK。在实时运行时,这个时钟信号能记录视频调色板的输出,并在每个时钟上升沿时,视频调色板就能为后面输出4个数据点。视频调色板产生一个,TTL电平的时钟信号,然后,这个信号馈入FIFO作为时钟源(50MHz),它能控制FIFO和视频调色板之间的数据传送。

DSP的时钟是由外时钟源(50MHz晶体振荡器)提供,并通过片内锁相环(PLL)电路,使频率达到200MHz(在PLL电路里,使用内部乘法器实现的,即乘4.50×4=200MHz。另外,使用内部乘法器也可以减轻噪声的影响)。200MHz的信号是DSP内部时钟频率,也是TMS320C6202的额定速度。根据DSP的内部时钟(200MHz),并通过DSP的控制寄存器,就能导出50MHz时钟信号,这个信号立即在输出引脚上出现。通常它能用来控制DSP和FIFD之间的数据传送。

5.4  试验结果

根据图6-40线路组成如图6-43印刷电路板经试验测量(样条技术)得到任意波形的实际图如图6-44所示。这个波形的输出带宽最大值为50MHz,尽管理论值为80MHz,但并不矛盾,这是因为调色板在某一个时间能从FIFO存储器读出4个点,而每个点为20MHz,因此,它的带宽也为4×20=80MHz。从上分析可以看出,试验测量结果与理论值仍然是一致的。另外,任意波形发生器输出波形的完整性是由视频调色板的三个模拟通道管理和控制的。因此,本系统输出波形的性能基本上与视频调色板的输出相同。

上一篇: DSP 下一篇: c语言中的精确延时程序举例

分享 举报