EDA大作业

  • 格式:pdf
  • 大小:304.54 KB
  • 文档页数:12

------------------------------------------------------------------------------------------------

—————————————————————————————————————— EDA大作业 信号发生器的设计 要求: (1) 产生方波、三角波、锯齿波、正弦波 (2)产生波形的模式可选 (3)频率为10KHz 设计方案: 1.总体设计思路 1.1 设计步骤 此设计将按模块式实现,据设计要求,设计总共分四大步份完成:(1)产生波形(四种波形:方波、三角波、矩形波和锯齿波)信号;(3)频率为10KHZ幅度固定; 1.2设计思想 利用VHDL编程,依据基本数字电路模块原理进行整合。系统各部分所需工作时钟信号由输入系统时钟信号得到。总体设计框图如下图1所示: 波形输出 2. 方案论证 2.1方案 采用VHDL语言来编程,然后下载文件到FPGA来实现。VHDL语言是电子设计领域的主流硬件描述语言,具有很强的电路描述和建模------------------------------------------------------------------------------------------------

—————————————————————————————————————— 能力,能从多个层次对数字系统进行建模和描述,从而大大降低了硬件设计任务,提高了设计效率和可靠性,要比模拟电路快得多。该方案是利用FPGA具有的静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改,极大地提高了电子系统设计的灵活性和通用性,设计图如图2。 图2 FPGA总体设计图 (需要修改) 通过FPGA软件扫描方式将波形数据读出传输给DAC0832(为8分辨率的D/A转换集成芯片)产生波形输出。这种方法在软、硬件电路设计上都简单,且与我们的设计思路紧密结合。 ㈠ 3硬件选择 4软件设计 4.1.1 波形产生模块 本设计用VHDL语言根据傅立叶函数采集点进行扫描,分别产生正弦波、三角波和矩形波。以下介绍各种常用周期信号的傅立叶函数展开式。 4.1.3正弦波 (1)设计思想 正弦波发生分为两个步骤,即正弦波幅值采样存储和正弦波波形的还原输出。幅值采样是将一个周期正弦波进行64等分,如图3所示,将64个采样点 进行量化处理,量化值=255*sin360/64(V),将64点量化值存入存储器ROM。正弦波形的产生是通过循环反复将存储器中的64点采------------------------------------------------------------------------------------------------

—————————————————————————————————————— 样值通过DAC0832进行还原输出,得到幅值正比于64点采样值的正弦波。 ot (2)VHDL实现 1.正弦信号波形数据文件建立 正弦波波形数据由64个点构成,此数据经DAC0832,可在示波器上观察到正弦波形。源程序见附录: 4.1.2 矩形波 1设计思路 矩形波的实现较之正弦波发生简单,由于矩形波是两个电平值间的交替变换,因此波形采样值的预存只要有两个不同的数值就行了,为了使矩形波发生的频率灵活可调,采用60个采样值扫描输出来实现,每半个矩形波周期采用三十个采样值,循环反复将存储器中的60点采样值通过DAC0832进行还原输出,得到幅值正比于点采样值的矩形波。采样图如图4所示。 2 VHDL实现 源程序见附录。 4.1.3 三角波 1设计思路 由于三角波是线性的,比较简单就可以产生,如果最低电压设为15V,最高是255V,那么根据它的公式255/15=17,每个点的电压只要依次加17就可以得到,一个波形所以采用简单的加减算法就可实------------------------------------------------------------------------------------------------

—————————————————————————————————————— 现,如图5所示三角波的采样图: 图5 三角波采样图 2 VHDL实现 具体源程序见附录。 4.1.4 基波 通过VHDL编程产生的正弦波、方波、三角波三种周期性波形即为基波。 4.1.5谐波的产生 采用与基波产生的同样原理,编程产生三种波形的谐波,所不同的是一个波 形的周期采样的点数不同,如果基波采样点为63个,谐波采样点数则为21个,其每点的电压值为255*(sin360/60+sin360/20)(V),在对其进行循环扫描即可实现基波与谐波的线性叠加。 4.1.6 波形模块图 最终波形的设计模块图如图6所示,L1是三角波,L2是方波,L3是正弦波,L4是谐波。 4.2 频率控制模块 本课题要求频率控制是在10KHZ。在本题设计中只需借助FPGA便可完 成。如下图7所示: 4.3 选择波形模块 这一部分主要是通过一个按键对波形进行循环选择,按下确认按------------------------------------------------------------------------------------------------

—————————————————————————————————————— 钮后进 行波形的调用。设计流程图如下图7所示 图6 波形模块图 图7 选择波形电路设计流程图 【实验9】 波形发生与扫频信号发生器电路设计 1、实验目的:学习用VHDL设计波形发生器和扫频信号发生器,掌握FPGA对D/A的接口和控制技术,学会LPM_ROM在波形发生器设计中的实用方法。 2、实验原理:如实验图5所示,完整的波形发生器由4部分组成: ? FPGA中的波形发生器控制电路,它通过外来控制信号和高速时钟信号,向波形数据ROM发出地址信号,输出波形的频率由发出的地址信号的速度决定;当以固定频率扫描输出地址时,模拟输出波形是固定频率,而当以周期性时变方式扫描输出地址时,则模拟输出波形为扫频信号。 ? 波形数据ROM中存有发生器的波形数据,如正弦波或三角波数据。当接受来自FPGA的地址信号后,将从数据线输出相应的波形数据,地址变化得越快,则输出数据的速度越快,从而使D/A输出的模拟信号的变化速度越快。波形数据ROM可以由多种方式实现,如在FPGA外面外接普通ROM;由逻辑方式在FPGA中实现(如例6);或由FPGA中的EAB模块担当,如利用LPM_ROM实现。相比之下,第1种方式的容量最大,但速度最慢;,第2种方式容量最小,但速------------------------------------------------------------------------------------------------

—————————————————————————————————————— 度最最快;第3种方式则兼顾了两方面的因素; ? D/A转换器负责将ROM输出的数据转换成模拟信号,经滤波电路后输出。输出波形的频率上限与D/A器件的转换速度有重要关系,本例采用DAC0832器件。 DAC0832是8位D/A转换器,转换周期为1μs,其引脚信号以及与FPGA目标器件典型的接口方式如附图2-7所示。其参考电压与+5V工作电压相接(实用电路应接精密基准电压)。DAC0832的引脚功能简述如下: ? ILE(PIN 19):数据锁存允许信号,高电平有效,系统板上已直接连在+5V上。 ? WR1、WR2(PIN 2、18):写信号1、2,低电平有效。 ? XFER(PIN 17):数据传送控制信号,低电平有效。 ? VREF(PIN 8):基准电压,可正可负,-10V~+10V。 ? RFB(PIN 9):反馈电阻端。 ? IOUT1/ IOUT2(PIN 11、12):电流输出1和2 。D/A转换量是以电流形式输出的,所以必须如实验结构图NO.5所示的连接方式将电流信号变为电压信号。 ? AGND/DGND(PIN 3、10):模拟地与数字地。在高速情况下,此二地的连接线必须尽可能短,且系统的单点接地点须接在此连线的某一点上。 例6中的正弦波波型数据由64个点构成,此数据经DAC0832,并经滤波器后,可在示波器上观察到光滑的正弦波(若接精密基准电------------------------------------------------------------------------------------------------

—————————————————————————————————————— 压,可得到更为清晰的正弦波形)。 3、实验内容1:根据示例例6,及以上的设计原理,完成波形发生器和扫频信号源的设计,仿真测试及实验系统上的硬件测试。 硬件实验中注意DAC0832及滤波电路须接+/-12V 电压。然后将实验系统左下角选择插针处用短路帽短路“D/A直通”,而“滤波1”,“滤波0”处通过短路或不接短路帽达到不同的滤波方式。将示波器的地与EDA实验系统的地相接,信号端与“AOUT” 信号输出端相接;建议CLK接clock0,由此50MHz频率,此频率扫描波形数据;CLK1接clock5,由此接“1024Hz”,此频率决定扫频速度;选电路模式1;KK接键8,当为高电平时,正弦波点频输出,11位输入数据DATA由键3、键2和键1控制,信号源的输出频率由此3键输入的12位二进制数决定,数值越大,输出频率越高;“FD0”时为最高频率;键8低电平时,正弦波扫频输出,扫频速度由clock5的频率决定。输向0832的8位数据由DD输出。 实验图5 波形发生器电路系统结构图 4、实验内容2:在例6中插如一个LPM_ROM,将原例中的波形数据放在内部ROM中。必要时增加波形点数,以利低频输出时,仍保持良好波形。波形数据可由其它方式自动生成,然后重复以上的测试和硬件实验。 5、实验思考题:如果CLK的输入频率是50MHz,ROM中一个周期的正弦波数据是128个,要求输出的正弦波频率不低于150KHz,DAC0832是否能适应此项工作?为什么? ------------------------------------------------------------------------------------------------

—————————————————————————————————————— PIO48PIO10PIO47PIO14PIO39PIO38PIO37PIO36PIO35PIO34PIO33PIO32PIO24PIO25PIO26GND A18/A19A16 A14(A15)A12A7A6A5A4A3A2A1A0D0D1D2GND VCC A18/A15/WEA17/VCCWR/A14 6264A1362256A8628128A92764A1127256OE27512A1027010CS127020D727040D627080D5 D4D3RAM/ROM VCCPIO9PIO49PIO46PIO4527020(PIN30->A17,PIN3->A15,PIN29->A14)PIO1127010(PIN30->VCC,PIN3->A15,P29->A14)PIO12左侧的RAM/ROM是PIO62右侧的RAM/ROM是PIO8PIO15VCCPIO31PIO30PIO29PIO28PIO27 GND 628128(PIN30->VCC,PIN3->A14,PIN29->WE) 29C040(PIN31->WE,PIN1->A18, PIN30->A17,PIN3->A15,PIN29->A14) 27040(PIN31->A18,PIN30->A17, PIN3->A15,PIN29->A14)