Verilog HDL设计自动数据采集系统
随着数字时代的到来,数字技术的应用已经渗透到了人类生活的各个方面。
数字系统发展在很大程度上得益于器件和集成技术的发展,著名的摩尔定律(Moore's Law)的预言也在集成电路的发展过程中被印证了,数字系统的设计理念和设计方法在这过程中发生了深刻的变化。从电子CAD、电子CAE到电子设计自动化(EDA),随着设计复杂程度的不断增加,设计的自动化程度越来越高。目前,EDA技术作为电子设计的通用平台,逐渐向支持系统级的设计发展;数字系统的设计也从图形设计方法向硬件描述语言设计方法发展。可编程器件在数字系统设计领域得到广泛应用,不仅缩短了系统开发周期,而且利用器件的现场可编程特性,可根据应用的要求对器件进行动态配置或编程,简单易行地完成功能的添加和修改。
在现代工业的发展中,实时测控系统得到广泛应用,这就对高速数字信号处理系统提出了更高的要求。因为要涉及大量的计算,为了提高运算速度,应用了大量DSP器件。数据采集系统是整个系统的核心部分之一,传统方法是应用MCU或DSP通过软件控制数据采集的模/数转换,这样必将频繁中断系统的运行从而减弱系统的数据运算能力,数据采集的速度也将受到限制。因此,DSP+CPLD的方案被认为是数字信号处理系统的最优方案之一,由硬件控制模/数转换和数据存储,从而最大限度地提高系统的信号采集和处理能力。
1 系统总体方案
数据采集系统是基于DSP的信号处理系统中的一部分,框图如图1所示。该数字信号处理系统用于随机共振理论在弱信号检测中的应用研究中。整个系统由信号放大、信号滤波、信号采样、高速数字信号处理、与主计算机的高速数据传输接口等部分组成。其中,信号放大是对输入信号进行调理以满足采样的要求;信号滤波是防止信号产生混叠现象;信号采样是完成模拟信号的数字化;高速数字信号处理是在建立随机共振模型的基础上完成各种算法;与主计算机的高速数据传输接口是满足信号检测的实时性,将DSP处理的数据传给计算机以进行进一步的处理。 基于Verilog HDL设计的自动状态机由硬件控制A/D转换以及自动向FIFO中存储数据,采样频率由DSP系统的输出时钟确定,当采样数据达到一帧时,FIFO向DSP申请中断,DSP系统启动DMA完成数据读取。这期间数据采集不中断,从而实现连续的实时数据采集和实时数据处理。数据采集系统由A/D芯片MAX196、逻辑控制芯片EPM7128、FIFO芯片CY7C425组成。控制逻辑用Verilog HDL语言描述,并进行了仿真和实际验证。
2 硬件电路设计
2.1 A/D转换芯片
系统A/D转换由MAX196芯片实现。MAX196的特点为:
①12位A/D转换精度,1/2 LSB线性度;
②单5V电源供电;
③软件选择模拟量输入范围,分别为:±10V、±5V、0~5V、0~10V;
④6模拟量输入通道;
⑤6μs转换时间,100ksps采样速率;
⑥内部或外部采样控制;
⑦内部或外部时钟控制转换。
在MAX196的控制字中:
①A2A1A0为通道选择字:000~101分别代表通道0~5;
②BIP、RNG为输入范围和极性选择;
③ACQMOD:采样控制模式,0为内部控制采样,1为外部控制采样;
④PD1、PD0为时钟与省电模式选择。
内部转换模式时序如图2所示。当向MAX196写入包含通道选择、量程选择、极性选择的控制字时,完成A/D转换的初始化。控制字的ACQMOD位用来选择内部转换模式和外部转换模式,当写入ACQMOD位为0的控制字时,将启动内部转换模式,这里采用内部采样模式,一次转换需要12个时钟周期,转换周期由芯片内部时钟确定。写入一个写脉冲(WR+CS)可以启动一次转换。当在A/D转换期间写入新的控制字时,将中止转换并启动一次新的采样周期。A/D转换结束,输出低电平信号INT有效,信号RD读取A/D转换结果并复位INT信号,完整的一个转换周期结束。
2.2 数据缓存器
系统采集的数据常常放在数据缓存器中。数据缓存区要求既要有与A/D芯片的接口又要有与系统DSP的接口以提高数据吞吐率,因此常选用双口RAM或FIFO。由于FIFO不需要地址寻址,为了简化控制信号,本模块采用FIFO芯片CY7C425作为数据缓存区。FIFO存储器允许数据写入和读出不依赖于数据速率,并且总是以写入的顺序读出。根据Full和Empty标志来判断存储器全满或空。FIFO芯片可以进行数据宽度和存储深度的扩展而不会增加额外的时间延迟。当写信号(W)为低电平时发生写操作,当读信号(R)为低电平时发生读操作。A/D转换的结果通过写操作不断存入FIFO中,当FIFO满时,Full标志有效,向系统申请中断,DSP响应中断,立即启动DMA读FIFO中的数据,当读到空时,Empty标志有效,DSP停止读入操作。采用两片CY7C425扩展为18位102
- PCM串行数据流同步时钟提取设计(02-25)
- 一种数模混合SoC设计协同仿真的验证方法(04-09)
- 基于FPGA的∑-△D/A转换器的设计与实现(04-23)
- 基于ISP芯片的可编程数字移相器设计(06-23)
- 一种锁定相位编程可调全数字锁相环设计(06-24)
- 基于Virtuoso平台的单片射频收发系统电路仿真与版图设计(07-18)