基于FPGA的任意波形发生器设计与实现

[09-12 18:32:10]   来源:http://www.88dzw.com  EDA/PLD   阅读:8713

文章摘要:IFCLK是同步时钟信号,FLAGA、FLAGB和FLAGC是CY7C68013内部FIFO的状态标志,EP2C20F484通过通用I/O口获得CY7C68013内部FIFO的空、半满(由用户设定半满阈值)和满这三个状态信号,ISLCS、SLOE、SLRD、SLWR对CY7C680l3进行读写操作控制,FD[15:0]是数据线,ADD[1:0]是选择4个FIFO的地址线。其工作过程为:PC机通过USB向FPGAP发送波形数据时,USB通过请求方式通知FPGA读取波形数据,FPGA首先查看空、半满和满这三个状态信号,选择一个FIFO,然后控制USB接收适当大小的数据,以保证数据不会溢出,并存入S

基于FPGA的任意波形发生器设计与实现,标签:eda技术,eda技术实用教程,http://www.88dzw.com


  IFCLK是同步时钟信号,FLAGA、FLAGB和FLAGC是CY7C68013内部FIFO的状态标志,EP2C20F484通过通用I/O口获得CY7C68013内部FIFO的空、半满(由用户设定半满阈值)和满这三个状态信号,ISLCS、SLOE、SLRD、SLWR对CY7C680l3进行读写操作控制,FD[15:0]是数据线,ADD[1:0]是选择4个FIFO的地址线。其工作过程为:PC机通过USB向FPGAP发送波形数据时,USB通过请求方式通知FPGA读取波形数据,FPGA首先查看空、半满和满这三个状态信号,选择一个FIFO,然后控制USB接收适当大小的数据,以保证数据不会溢出,并存入SRAM中。

  2.2 DAC功能模块

  从总体工作过程分析可知,从USB接口下载的波形数据存储在SRAM中,SRAM循环输出数据到DAC芯片,根据DDS原理产生模拟波形。具体电路如图3所示。


  IS6lLV25616是256k×16高速CMOS工艺3.3V单电源供电的静态随机存储器(SRAM),在FPGA控制下存储从USB下载的数据,并将数据循环输出到DAC芯片。AD9726是一款16位高性能LVDS DAC,具有出色的噪声与杂散性能以及真16位直流线性度。它采用CMOS工艺制造,并利用专有开关技术来增强动态性能。该器件具有较宽的满量程电流调节范围(2mA至20mA),能够以较低功耗水平工作。其电流输出配置简便,可以用于各种单端或差分电路拓扑结构。

  3 系统软件设计与实现

  3.1 固件程序设计

  CY7C68013内嵌有8051微处理器,用于控制芯片的工作状态设置,写入微处理器的程序文件称为固件程序(Firmware),为了便于维护和移植,一般采用单片机的C语言编写。主要有以下几种功能:a.初始化工作,包括设置一些特殊功能寄存器的初值以实现所需的设备属性或者功能,例如开中断、使能端点、配置端口等。b.辅助硬件完成设备的重新列举过程,包括模拟设备的断开与重新连接,对接收到的设置包进行分析判断,从而对主机的设备请求作出适当的响应,完成主机对设备的配置任务。c.对中断的处理。d.数据的接收和发送。e.外围电路的控制。固件程序的流程如图4所示。


  3.2 FPGA程序设计

  在本系统中FPGA作为主控制器,提供USB控制、DA控制、SRAM控制、I2C控制及全局时钟控制等功能模块。这里重点介绍USB接口控制模块。固化程序将CY7C68013A设置为Slave FIFO工作模式,需要FPGA提供FIFO端口的读写操作控制时序。CY7C68013A为每个端口提供了”空”标志、”满”标志和”可编程级”标志。FPGA检测这些信号,用于控制读写的过程,FPGA再完成这些端口FIFO的操作时序控制。USB控制器的状态转移如图5所示,控制器工作在五个状态中,上电复位后工作在IDLE状态,当读/写事件发生时进入状态1;在状态1中根据读/写事件使能FIFOADR[1:0]指向相应FIFO并进入状态2;在状态2,如果FIFO空/满,在当前状态等待,否则进入状态3;在状态3中,驱动数据总线,完成读/写操作,进入状态4;在状态4中,如需传输更多数据,进入状态2,否则进入状态IDLE。本系统采用Verilog HDL硬件描述语言实现了FIFO的读写时序,并在ALTERA公司提供的QuartusII8.0开发工具中综合编译并映射到FPGA中运行。


  4 结果及分析

  在设计结果中,最后的波形图是使用泰克公司的TDSl012型示波器得到的。经过实际的测试,该信号发生器产生的波形精度高、失真小,完全满足设计的要求。图6是产生的正弦波、锯齿波的波形结果。(电子科技 作者:唐建东)


上一页  [1] [2] 


Tag:EDA/PLDeda技术,eda技术实用教程EDA/PLD
分类导航
最新更新
热门排行