常州大学本科生毕业设计(论文)
转换器(TLC5620)、时钟信号源。
1.波形发生器的组成电路主要有:信号输入电路,A/D采样电路,时钟电路,FPGA芯片。除FPGA芯片需自行设计外,其他电路在开发板上面实现,只需对它们进行合理控制即可。
2.考虑D/A采样方法。在设计波形发生器时,对于D/A采用何种方法对信号进行采样也是很关键的,采样方法主要有实时采样和等效采样两种。一般来说,对于使用哪种取样类型取决于测试信号的形式:如果是重复信号波形,采用实时取样和等效取样都行,但使用等效取样方法更为经济。对观察非周期信号和瞬态信号,实时取样方法能更好的处理和分析。
3.FPGA设计。FPGA设计是关键,它是整个波形发生器的控制中心和数据处理中心,负责完成D/A的控制。在FPGA芯片中,至少需要设计的模块有:D/A控制器,时序产生器,同步器等。D/A控制器:生成采样时钟及D/A采样芯片的控制信号,并读取D/A采样结果。时序产生器:产生各单元所需的各种时钟信号。同步器:产生各种所需的同步信号,用来实现对相应数据的同步传送。 3.3.2
波形ROM方案
首先在FPGA中设计预先定制好的波形发生ROM表,然后键盘控制FPGA读取ROM表中写好的数据,送至D/A转换芯片,再经过低通滤波器将信号输出的波形进行进一步调整,滤波后由示波器观察输出波形。
同时,由键盘输入控制,转换读取数据的ROM表格,来转换输出波形的种类;改变FPGA读取ROM表的读数间隔来改变输出信号的频率,以实现调频。
幅度值:首先对被测信号调整,将被测信号放大,满足A/D的采集范围,然后送至A/D,将信号变为8为的数字信号,经过FPGA将数据变为人们可以视觉上认识的字符在LCD上显示出来。
频率值:将被测信号经过放大器放大到可以被比较器识别的幅度值,经过比较器过零比较,产生同频率的方波信号,可以被FPGA直接识别,进行计数,经过FPGA内部数据处理,计算出被测信号的频率值,再由液晶显示。 3.3.3
方案比较
经过上述分析,可以发现两种方案都可以满足本设计的要求。但是基于ROM的方案有其独特的优势,即可以产生任意波形。例如,本设计中要求产生正弦波,所以在ROM中存储正弦波的波形数据,但是如果需要产生其他波形时,只需要向ROM中存入不同的波形数据即可,而不需要改变程序。所以,ROM方案可以用于产生任意波形,所以本设计选择ROM方案产生正弦波。
3.4 硬件方案设计
3.4.1
设计平台与仿真工具选择
Quartus II是一种强有力的提供了EDA工具,是美国Altera公司推出的,它完全集成且与电路结构无关的开发包环境,具有数字逻辑设计的全部特性,包括:可利用原理
第6页 共34页
常州大学本科生毕业设计(论文)
图、结构框图、Verilog HDL、AHDL和VHDL完成电路描述,并将其保存为设计实体文件;芯片(电路)平面布局连线编辑;Logic Lock增量设计方法,可建立并优化系统,然后添加对原始系统的性能影响较小或无影响的后续模块;功能强大的逻辑综合工具;完备的电路功能仿真与时序逻辑仿真工具;定时/时序分析与关键路径延时分析;可使用Signal Tap II逻辑分析工具进行嵌入式的逻辑分析;支持软件源文件的添加和创建,并将它们链接起来生成编程文件;使用组合编译方式可一次完成整体设计流程;自动定位编译错误;高效的期间编程与验证工具;可读入标准的EDIF网表文件、VHDL网表文件和Verilog网表文件;能生成第三方SOPC软件使用的VHDL网表文件和Verilog网表文件。
测试采用了Quartus II的内嵌式逻辑分析仪 内嵌式逻辑分析仪三项主要优点:
1. 它们的使用不增加引脚。可通过FPGA 上已有的专门JTAG引脚访问,即使没有其它可用引脚,这种调试方法也能得到内部可视能力。
2. 简单的探测。探测包括把结点路由到内部逻辑分析仪的输入,不需要担心为得到有效信息,应如何连接到电路板上,也不存在信号完整性问题。
3. 内核是便宜的。FPGA厂商把他们的业务模型建立于用芯片所获取价值的基础上,所以所用的调试IP 通常能以低于$1,000美元的价格获得。 3.4.2
芯片选择方案
(1)FPGA器件的选择
由于Altera大学计划较为普及,设计并平台搭建方便,故采用Altera FPGA。 Altera 的主流FPGA分为两大类,一种侧重低成本应用,容量中等,性能可以满足一般的逻辑设计要求,如Cyclone,Cyclone II;还有一种侧重于高性能应用,容量大,性能满足各类高端应用,如Startix,Stratix II等,用户可以根据自己实际应用要求进行选择。在性能可以满足的情况下,优先选择低成本器件。
Cyclone(飓风):Altera中等规模FPGA,2003年推出,0.13um工艺,1.5v内核供电,与Stratix结构类似,是一种低成本FPGA系列,是目前主流产品,其配置芯片也改用全新的产品。
Cyclone II: 2005年开始推出,90nm工艺,1.2v内核供电,属于低成本FPGA,性能和Cyclone相当,提供了硬件乘法器单元
Cyclone 即可以满足本次课题的设计需求,所以本课题选用Cyclone。 (2)D/A芯片选型
根据资料,TLC5620,DAC0832都是逐次逼近型D/A 转换器,性能指标接近。 DAC0832是8分辨率的D/A转换集成芯片。电流稳定时间1us;只需在满量程下调整其线性度;单一电源供电(+5V~+15V);低功耗,200mW。
TLC5620的正常工作温度是0-70 ℃,Vcc的范围是4.5V至8V,提供5V的电压使其正常工作,转换时间为1~2微秒,模拟信号电压输入范围是-0.1至Vcc+0.1V,Vef+的范围是Vef-到Vcc,Vef+的范围是GND到Vef+。系统采用8位D/A,精确度可达到0.01。读写模式的tw的范围是0.5至50μs,即频率范围是2×104至2×106,能够采集前级
第7页 共34页
常州大学本科生毕业设计(论文)
的输出信号。
TLC5620状态机时序与DAC0832相比较为简单,转换速度相对于其他数据转换器较快。由于本设计采用FPGA为处理器,工作频率尽量高的原则,以保证能够测量尽量高频率的信号,本设计采用TLC5620。
第8页 共34页
常州大学本科生毕业设计(论文)
4 FPGA的介绍
4.1 FPGA的简介
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。图4.1为FPGA内部结构框图:
图4.1 FPGA内部结构框图
4.1.1 背景
目前以硬件描述语言(Verilog 或 VHDL)所完成的电路设计,可以经过简 单的综合与布局,快速的烧录至 FPGA 上进行测试,是现代 IC 设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的FPGA里面,这些可
编辑的元件里也包含记忆元件例如触发器(Flip-flop)或者其他更加完整的记忆块。 系统设计师可以根据需要通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。一个出厂后的成品FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。 FPGA一般来说比ASIC(专用集成芯片)的速度要慢,无法完成复杂的设计,而且消耗更多的电能。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。厂商也可能会提供便宜的但是编辑能力差的FPGA。因为这些芯片有比较差的可编辑能力,所以这些设计的开发是在普通的FPGA上完成的,然后将设计转移到一个类似于ASIC的芯片上。另外一种方法是用CPLD(复杂可编程逻辑器件备)。 1. CPLD与FPGA的关系
早在1980年代中期,FPGA已经在PLD设备中扎根。CPLD和FPGA包括了一些相对大数量的可以编辑逻辑单元。CPLD逻辑门的密度在几千到几万个逻辑单元之间,
第9页 共34页
常州大学本科生毕业设计(论文)
而FPGA通常是在几万到几百万。 CPLD和FPGA的主要区别是他们的系统结构。CPLD是一个有点限制性的结构。这个结构由一个或者多个可编辑的结果之和的逻辑组列和一些相对少量的锁定的寄存器。这样的结果是缺乏编辑灵活性,但是却有可以预计的延迟时间和逻辑单元对连接单元高比率的优点。而FPGA却是有很多的连接单元,这样虽然让它可以更加灵活的编辑,但是结构却复杂的多。CPLD和FPGA另外一个区别是大多数的FPGA含有高层次的内置模块(比如加法器和乘法器)和内置的记忆体。一个因此有关的重要区别是很多新的FPGA支持完全的或者部分的系统内重新配置。允许他们的设计随着系统升级或者动态重新配置而改变。一些FPGA可以让设备的一部分重新编辑而其他部分继续正常运行。
2. 特点
1) 采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。 2) FPGA可做其它全定制或半定制ASIC电路的中试样片。 3) FPGA内部有丰富的触发器和I/O引脚。
4) FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。 5) FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。 可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。 目前FPGA的品种很多,有XILINX公司的Virtex系列、TI公司的TPC系列、ALTERA公司的Stratix系列等。
FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。
加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。
FPGA有多种配置模式:并行主模式为一片FPGA加一片EPROM的方式;主从模式可以支持一片PROM编程多片FPGA;串行模式可以采用串行PROM编程FPGA;外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。 4.1.2
FPGA与单片机的区别
单片机可以理解为集成在单一芯片上的微型计算机系统,麻雀虽小可是五脏俱全,也有运算器、控制器、存储器、总线及输入输出设备,采用也是存储程序执行的方式,对单片机的编程就是对其中的ROM写入程序,在加电后ROM中的程序会像计算机内存中的程序一样得到逐条的执行。当今的单片机还集成了A/D、D/A转换,并串口等多种与外界进行数据交换的手段。单片机计算速度和性能有限,但在一些基本控制上搓绰绰有余。
FPGA则是操控层次更低,所以自由度更大的芯片,对FPGA的编程在编译后是转化为FPGA内的连线表,相当于FPGA内提供了大量的与非门、或非门、触发器(可以用
第10页 共34页