1xc3s250e-5tq144芯片电路设计
我们选择使用FPGA来进行数据的处理与控制。根据本系统的要求,在这里我们选择XilINX公司生产的Spartan-3E系列xc3s250e-5tq144型号的芯片它能将逻辑、存储器、数学运算、数字处理器、IO以及系统管理资源完美地集合在一起,其中,包括A/D控制模块设计、分频器的设计、信号处理模块的设计、AD8400数字电压控制模块的设计。
2数据采集电路设计
AD7820是美国AD公司推出的一款微处器兼容的8位模数转化芯片,芯片采用+5V供电,无需外部时钟,内部有取样保持电路,利用半闪存技术,使转化时间达到1.36US。它和FPGA的接口简单,无需加外部电路,即可采用存储器映像编址,数据输出带锁存和三态缓冲电路。片内采用两个4位内烁ADC以获得8位输出结果,每个4位闪烁ADC以内含15个比较器,每一个闪烁ADC将未知输入模拟电压与参考电压阶梯进行比较,从而获得高4位数据,一个内部数模转化器(ADC)以获得高4位数据作为输入,输出第一个闪烁ADC数据对应模拟电压,然后用未知输入模拟电压减去该电压,经转化后得到低4位数据。2.3数据处理电路设计AD8400是单通道、256位、数字控制可变电阻(VR)器件,器件内置一个带游标触点的固定电阻,该游标触点在载入控制串行输入寄存器的数字码所确定的点位分接该固定电阻值。游标与固定电阻任一端点之间的电阻值。本质上就是用控制脉冲计数的方法来调整阻值,所以又叫数控可变电位电阻器,其实质是一种特殊形式的数模转换器,其输入经高精度A/D转化为控制数字电位器的控制信号,并由FPGA控制关系和特性给出调整信号和计数脉冲,使数字电位器改变滑动触点位置,从而改变电位器输出电压。每个VR均有各自的VR锁存器,用来保存其编程电阻值。由10个数据位构成的数据字同步传输至串行输入寄存器,该数据字经过解码,前2位可确定需要载入后8位数据的VR锁存器地址。
3控制系统软件编程
FPGA的软件编程设计,其实质也就是硬件设计,一般是采用模块化的设计方法,其实质就是系统的主要程序包括A/D数据采集控制模块、FIFO数据缓冲模块、数字电位器控制模块、以及时钟树产生模块。
3.1数据采集模块
AD7820工作分为读模式和写模式,模数转换器和数据访问由RD来控制,当CS和RD同时为低电平时启动一次转换,对于能强制进入等待状态,且能使RD保持低电平直至模数转换结束的微处理器,用一条读指令即可启动转换,等待和读转换结果,在读模式WR/RDY用作状态输出(RDY),它可用作CPU的状态查询。RDY是集电极开路输出,在CS下降沿后转为低电平,AD转换结束后变为高电平。在写读模式中,WR下降沿启动AD转化,当WR返回高电平时,结果的高4位被锁存在缓冲器中,同时开始低四位转化,INT为低电平时,表明模数转换结束。
3.2FIFO数据缓存模块的设计
先进先出的FIFO是一种比较常用的存储器单元[2],主要用来对数据进行缓存,FIFO通常有读允许端口、写允许端口、数据输入端口、数据输出端口、FIFO状态端口等信号端口。其中,FIFO状态端口输出当前FIFO的状态满、未满或空。8*8位FIFO的功能框图如下。其中,clock为系统时钟信号输入,reset为系统复位信号,read为读数据信号允许信号,write为写入FIFO允许信号,fifo_in[7:0]为数据输入,fifo_out[7:0]为数据输出,fifo_empty为指示FIFO当前是空的,这种情况下,只能对FIFO进行写入数据操作;fifo_full指示当前FIFO是满的,这种情况下,当然只能对FIFO进行读数据操作,是不能写入数据的;fifo_half指示当前FIFO队列中没空也没满,这种情况下,既可以对FIFO进行写入数据操作,也能进行读数据操作,FIFO工作示意图。
3.3数字电位器模块设计
AD8400在时钟脉冲[3]作用下将10位串行数据通过SDI脚输入,这10个数据字格式为A1、A0、D7、D6、D5、D4、D3、D2、D1、D0,它使用50M的时钟在1LS(10*4*20ns)内可将4个RDAC的数据装完,AD8400通过复位(RS)脚可复位到中位值,它含有一个标准三线串行输入控制接口。
4结果仿真
通过xilinx13.4软件[5]将各模块连接,进行编译、各模块都能正常工作。分配引脚后,将配置文件下载到xc3s250e-5tq144型FPGA开发板中,系统运转正常,验证了整个系统设计的正确性,仿真。
5总结
本文介绍了一种激光探测自适应电路的设计,利用了FPGA资源丰富、灵活性高的优点,既可以作为一个简单的电压控制测试系统单独使用,也可以作为大系统的一个分支实现相应的电压控制测试功能。本方案已经在分立器件测试仪项目的高压测试板中使用,应用中表明该系统对不同环境适应速度快、高效稳定。该电路理论误差范围为19.5mV,如需要高精度的电路,只需要选择位数更高的AD转换芯片,基于FPGA设计的优点,该方案只要做简单的扩展,就可以实现很多应用方面的移植。
全部回复(1 )
只看楼主 我来说两句 抢板凳