当前位置:文档之家› EDA大作业

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*sin360o/64(V ),将64点量化值存入存储器ROM 。

正弦波形的产生是通过循环反复将存储器中的64点采样值通过DAC0832进行还原输出,得到幅值正比于64点采样值的正弦波。

t(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是否能适应此项工作?为什么?RAM/ROM 使能拨码开关滤波1A /D 使能转换结束比较器D S 8使能D S 6使能5t h 使能R O M 使能ON87654321拨码8:DAC0832输出滤波使能拨码7:ADC0809使能,默认关闭,见左图拨码6:ADC0809转换结束使能,见左图拨码5:应用LM311使能,见下图拨码4:8数码管显示开关,默认打开拨码3:6数码管显示开关,默认关闭拨码2:默认关闭 向上拨,由厂家通知升级拨码1:两个ROM/RAM 使能,即它们的CS1接地VCCHS (PIO43)VS (PIO44)B (PIO42)G (PIO41)R (PIO40)1054876321 视频接口VGA J6R78 200R77 200R76 2001413GNDPIO45PIO46513PS/2接口J74A I N 1VCC10K VR1拨码7拨码6A I N 0P I O 8(23)(24)1216272610C L O C K 750K H Z A 021+5V r e f (-)r e f (+)I N -1I N -06922257171415818192021E U 1A D C 0809P I O 16P I O 17P I O 18P I O 19P I O 20P I O 21P I O 22P I O 23P I O 32P I O 33P I O 35P I O 34m s b 2-12-22-32-42-52-62-7l s b 2-8E O C A D D -A A D D -B A D D -C A L E E N A B L E S T A R T(拨码1:“ROM 使能 ON”即将CS1接地)P29->A14)27010(PIN30->VCC,PIN3->A15,PIN29->A14)27020(PIN30->A17,PIN3->A15,PIN3->A15,PIN29->A14)27040(PIN31->A18,PIN30->A17,PIN30->A17,PIN3->A15,PIN29->A14)29C040(PIN31->WE,PIN1->A18,628128(PIN30->VCC,PIN3->A14,PIN29->WE)(拨码8:“滤波1 ON”即连接滤波电容)滤波1103连接PIO37与COMP )(拨码5:“比较器ON”即7.2K PIO31PIO29PIO30PIO28PIO27PIO26PIO25PIO24131415164D7D6D5D4D35D26D1D07PIO37+551pFC27COMPLM311VCC10K -12+124823TL082/1AIN0AOUT5.1KR72765TL082/2841+12-12COMMEU2DAC0832118171032WR1FB93211IOUT1IOUT212/CSWR2XFERA GNDD GND VREF8VCC20VCCD1PIO8D2D3D4D5D6D7D8PIO9PIO10PIO11PIO12PIO15PIO14PIO13实验电路结构图NO.5S P E A K E R扬声器FPGA/CPLD 目标芯片12345678D16D15D14D13D12D11D10D9PIO47-PIO44PIO43-PIO40PIO39-PIO36PIO35-PIO32PIO31-PIO28PIO27-PIO24PIO23-PIO20PIO19-PIO16译码器译码器译码器译码器译码器译码器译码器译码器PIO15-PIO8PIO0PIO1PIO2PIO3PIO4PIO5PIO6PIO7键1键2键3键4键5键6键7键8右侧的RAM/ROM 是PIO8左侧的RAM/ROM 是PIO62GNDVCC PIO62/PIO8PIO49RAM/ROMA18/A19A18/A15/WE PIO26PIO25PIO24PIO32PIO33PIO34PIO35PIO36PIO37PIO38PIO39PIO14PIO47PIO10PIO48PIO9PIO46PIO45PIO11PIO12PIO13PIO15PIO31PIO30PIO29PIO28PIO273231302928272625242322212019181716151413121110987654321VCC GND2708027040270202701027512272562764628128622566264VCCA17/VCC WR/A14A13A8A9A11OE A10CS1D7D6D5D4D3GNDD2D1D0A0A1A2A3A4A5A6A7A12A14(A15)A16。

相关主题