微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > 数字示波器中的波形存储、录制与回放

数字示波器中的波形存储、录制与回放

时间:12-19 来源:互联网 点击:

存储1幅波形(例如通道1的正常触发时候的波形)的具体过程如下:
(1)A1区中包含2个块(a、b)可以存储该波形。确定每一个块最多可以存储波形数量(count),a块的起始地址ADDR_START;b块起始地址就是ADDR_START+0x08000,定义一个实际的存储地址FLASH_addr。
(2)从FM24LC02中读取该区中已存波形的逻辑位置N1,N1+1就是现在要存波形的逻辑位置。
如果N1≤count,数据存储在a中,地址是FLASH_addr=ADDR_START+(N1-1)K1。
如果N1=count+1,数据存储在b中,地址是FLASH_addr=ADDR_START+0x08000+(N1-count-1)K1,数据存储之后擦除a中的数据。
如果count+1N12count,数据存储在b中,地址是FLASH_addr=ADDR_START+0x08000+(N1-count-1)K1。
如果N1=2count,数据存储在b中,地址是FLASH_addr=ADDR_START+0x08000+(N1-count-1)K1,存储之后,N1=0。下一幅波形存储在a中,然后擦除b中的数据。
(3)将逻辑位置N1存储在FM24CL04的X1的位置。
注意,DSP接收到采样数据后,需要根据时基通过软件再次抽点后的数据才是需要显示的波形数据。FLASH中存储的波形数据是软件抽点以前的数据,这样在调出波形数据以后可以根据用户的要求做相应处理。
调出FLASH中的波形只需要计算出该波形在FLASH中的位置就可以。根据触发模式从铁电存储器中的对应位置读出对应波形的逻辑位置N,根据N来计算数据的起始地址。如果N≤count,FLASH_addr=ADDR_START+(N-1)K,如果N>count,FLASH_addr=ADDR_START+(N-count-1)K,根据计算出的地址按照对应波形数据的大小读取数据。
存储与回放过程的重点在于对FLASH进行操作的程序,主要是对FLASH内部的命令寄存器按照一定的时序写入命令。
2.2 波形录制与回放
用户在使用示波器时,常常遇到一些瞬态信号,在还没有来得及捕捉之前信号已经消失,这样就需要波形录制与回放功能,将波形录制下来,事后再慢慢寻找并观察。波形录制是将波形数据存储在SDRAM中。本设计中最多可以录制100幅波形,并且是最近的100幅,如果已经录制满之后就会替换最先录制的波形数据,而每副波形数据大小为400个点,这样就需要分配出400×100大小的空间。本设计中使用ADSP BF531
的DMA方式,把显示缓存中的波形数据直接传送给波形录制的缓存,这样可以不经过CPU就实现了数据的高速存储,本设计中采用的是Memory到Memory之间的DMA方式。BF531中的具体配置如下:


以上是目的地址的DMA设置。注意数据源的DMA必须在目的地址的DMA使能之前使能。
每次波形显示之后启动DMA方式把波形数据存储到录制缓存中。录制满100幅波形之后就必须剔除最先录制的波形,定义一个波形数目wave_data,一个波形覆盖数目cover_data,cover_data在0~99之间循环变化。录制缓存的首地址为Luzhi_addr,每存储一幅波形wave_data加1。
如果wave_data100,波形录制的地址为Luzhi_addr+400*wave_data。
如果wave_data=100,wave_data保持100不变,cover_data加1,波形录制的地址为Luzhi_addr+400*(cover_data-1)。cover_data在0~100之间循环。
波形录制流程图如图2所示。

波形回放与录制相反,从录制缓存中调出波形数据放到显示缓存中显示波形。回放状态下不需要采集数据,直接将录制缓存中的波形显示出来。波形回放时,是从最先存进来的波形开始显示的,如果cover_data!=0,表明已经录制满100幅波形,并且有cover_data个波形被新的波形覆盖,所以回放的时候应该从luzhi_addr+400*cover_data的地址开始调出波形进行显示,依次往后调出数据进行显示,100幅波形循环调出。如果cover_data=0,表明没有波形被覆盖,从Luzhi_data的起始地址开始调出波形进行显示,wave_data个幅波形循环显示。回放的时候还要向用户显示波形的序号,注意,波形回放支持暂停。波形回放的流程图如图3所示。

3 结语
数字示波器中的波形存储、录制与回放为用户提供了多种回顾性操作方法,更好地满足了测量需要。本文采用FLASH存储正常触发模式和扫描模式的波形数据,在铁电存储器中存储波形的索引信息,方案设计保证了对FLASH存储器按块进行擦除。采用SDRAM录制难以捕获信号特征的瞬态信号。用户可以通过对波形的回放、拉伸和压缩,观察和寻找所关心的信号波形。本文所述的波形存储、录制与回放方法已经在项目手持示波表中得到了应用,到达了用户对数字式示波器波形存储功能的基本要求。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top