ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:234.35KB ,
资源ID:10725910      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10725910.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(正负脉宽数控调制信号发生器设计报告书.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

正负脉宽数控调制信号发生器设计报告书.docx

1、正负脉宽数控调制信号发生器设计报告书课题十一 正负脉宽数控调制信号发生器一、课题目的1.熟练掌握预置计数器的描述方法。2.掌握VHDL语言反馈信号的处理。3.设计正负脉冲宽度可调的数控调制信号发生器。二、课题原理图5:正负脉宽数控调制信号发生器框图预置计数器比普通计数器多了一个预置端LD和预置数据端DATA。当LD=1(或0)时,在下一个时钟脉冲过后,计数器输出端输出预置数DATA。图5是正负脉宽数控调制信号发生器电路的框图。从图中可以看到输出脉宽调制信号由计数器A、B的进位脉冲信号控制。计数器A的进位脉冲使输出信号输出正脉冲,计数器B的进位脉冲使输出信号输出负脉冲,同时反馈信号使计数器A、B

2、分别重新置数,从而达到控制正负脉冲宽度的目的。三、课题内容1.用VHDL语言设计各功能模块。2.通过仿真或观察波形文件验证设计课题的正确性。3.编译下载并通过示波器验证结果。四、设计提示1.选择电路可用一带清零端的D触发器构成,也可以用VHDL语言的进程语句进行描述。2.注意用到反馈信号的地方,输出信号线应定义成Buffer类型。五、课题报告要求1.写出各模块的源程序。2.画出详细电路图并分析电路的工作原理。3.画出电路工作时序波形图。4.书写心得体会。1.绪论1.1EDA和Quartus的简介及起源EDA是英文“electronic design automation”(电子自动化设计)的缩

3、写,EDA技术是20世纪90年代迅速发展起来的,是现代电子设计的最新技术潮流,是综合现代电子技术和计算机技术的最新研究成果,是电子线路设计与分析的一门技术。EDA包括电子线路的设计、计算机模拟仿真和电路分析及印制电路板的自动化设计三个方面的内容。随着可编程逻辑器件迅速发展,出现了功能强大的全新的EDA工具。具有较强描述能力的硬件描述语言(VHDL、Verilog HDL)及高性能综合工具的使用,使过去单功能电子产品开发转向系统级电子产品开发。Quartus是Altera提供的FPGA/CPLD开发集成环境,Altera是世界上最大的可编程逻辑器件供应商之一。Quartus是在21世纪初推出,是

4、Altera前一代FPGA/CPLD集成开发环境MAX+plus 的更新换代产品,其界面友好,使用环境便捷。它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。Quartus设计工具完全支持VHDL、Verilog的设计流程,其内部嵌有VHDL、Verlog逻辑综合器。Quartus包括模块化的编译器。编译器包括 的功能模块有分析/综合器(Analysis & Synthesis)、适配器(Fitter)、装配器(Assembler)、时序分析器(Timing Analyzer)、设计辅助模块(Design Assistant)、EDA网表文件生成器(EDA N

5、etlist Writer)、编辑数据接口(Compiler Database Interface)等。可以通过选择Start Compilation来运行所有的编译器模块,也可以通过选择Start来单独运行各个模块。还可以通过选择Compiler Tool,在Compiler Tool窗口中运行该模块来启动编译器模块。在Compile Tool窗口中,可以打开该模块的设置文件或报告文件,或打开其它相关窗口。1.2 EDA的优势及其发展趋势EDA技术的优势体现在:用HDL对数字系统进行抽象的行为与功能描述到具体的内部线路结构,从而可以在电子设计的各个阶段、各个层次进行计算机模拟验证,保证设计过

6、程的正确性,可以大大降低设计成本,缩短设计周期。EDA工具之所以能够完成各种自动设计过程,关键是有种类库的支持,如逻辑仿真时的模拟库、逻辑综合时的综合库、版图综合时的版图库、测试综合时的测试库等。某些HDL本身也是文档型的语言(如VHDL),极大地简化了设计文档的管理。EDA中最为瞩目的功能,最具现代化电子设计技术特征的功能,是日益强大的逻辑设计仿真测试技术。极大地提高了大规模系统电子设计的自动化程度。EDA的发展趋势,表现在以下几个方面:超大规模集成电路的集成度和工艺水平不断提高,深亚微米(Deep-Submicron)工艺,如0.13um、90nm已经走向成熟,在一个芯片上完成的系统级的集

7、成已经成为可能。由于工艺不断减小,在半导体材料上的许多寄生效应已经不能简单地补码忽略,这就对EDA工具提出了更高的要求。同时,也使得IC生产线的投资更为巨大。高性能的EDA工具得到长足的发展,其自动化和智能化程度不断提高,为嵌入式系统设计提供了功能强大的开发环境。市场对电子产品提出了更高的要求,从而也对系统的集成度不断提出更高的要求。同时,设计的效率也成了一个产品能否成功的因素,促使EDA工具应用更为广泛。2. 可自加载加法计数器的设计取计数器的端口为:脉冲输入端CLK、加载使能输入端LD(高电平有效)、预置输入端D、计数进位输出端CAO。当脉冲CLK上升沿到来之时,若加载使能端LD有效,则通

8、过预置端D可对计数器进行预置数。之后,计数器就以此预置数为始,一直加1计数。至计数到255时,输出端CAO输出1。框图如图2.1。其VHDL程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY LCNT8 ISPORT(CLK,LD : IN STD_LOGIC; D: IN INTEGER RANGE 0 TO 255; CAO: OUT STD_LOGIC);END LCNT8;ARCHITECTURE BEHAVE OF LCNT8 ISSIGNAL COUNT: INTEGER RANGE 0 TO 255; BEGIN PROCES

9、S(CLK) BEGIN IF CLKEVENT AND CLK=1 THEN IF LD=1 THEN COUNT=D; ELSE COUNT= COUNT+1; END IF; END IF; END PROCESS; PROCESS(COUNT) BEGIN IF COUNT=255 THEN CAO=1; ELSE CAOCLK, LD=LD1, D=A, CAO=CAO1); U2: LCNT8 PORT MAP (CLK=CLK, LD=LD2, D=B, CAO=CAO2); PROCESS(CAO1,CAO2) BEGIN IF CAO1=1 THEN PINT=0; ELSI

10、F CAO2EVENT AND CAO2=1 THEN PINT=1; END IF;END PROCESS; LD1=NOT PINT; LD2=PINT; POUT=PINT;END BEHAVE;3.2 总体设计考虑到是数控调制,本设计对预置输入进行数码显示。因为计数器范围是0255,故而一个预置数的显示要用到3个数码管;一共两组预置数,则要用到6个数码管,所以设计一个6进制计数器COUNT6来控制数码管的位选。至于数码管的段选,先将预置8位输入D转化为12位的供3个数码管显示的数组,当COUNT6计数为0时,把第一个12位数组(对应第一个预置数)中的低4位送入译码管的输入端BEDIN;

11、当计数为1时,把中间4位送入译码管的BEDIN;当计数为2时,把高4位送入译码管的BEDIN;当计数为3时,把第二个12位数组(对应第二个预置数)中的低4位送入译码管的输入BEDIN端如此可实现对输入的数码显示。考虑到实验箱上提供的脉冲是20MHz,既不便于灯的观察又不便于数码显示,所以设计了一个1000Hz的分频器,将脉冲分频为1000Hz的脉冲输入。总体设计原理框图如附录1。4. 软件仿真及硬件验证4.1软件仿真输入取A=252,B=254。可得到仿真波形,如图4.1:图4.1 EDA仿真波形4.2 引脚锁定输入时钟CLK接16管脚PIN_16,A、B预置数输入利用16个拨码开关可实现,A

12、、B各占8个。可调脉宽的输出POUT可接PIN_104,以便用发光二极管的亮灭速度来观察结果。6进制计数器COUNT6的输出CNT接3-8译码器的输入SEL,译码器SEG7DEC的输出SEGT接数码管的段选输入端。如表4.1: 4.3 硬件验证向目标芯片Cyclone系列的EP1C3T144C8下载适配后的逻辑设计文件,通过PIN_49PIN_56对应的8个拨码开关输入控制高电平信号脉宽的预置数(对应于A输入),并显示于数码管1、2、3;再通过PIN_57PIN_62、PIN_67、PIN_68对应的8个拨码开关输入控制低电平信号脉宽的预置数(对应于B输入),并显示于数码管4、5、6。可观察到

13、,当A较低,而B输入较高时,发光二极管的点亮时间大于熄灭时间;当A较高,B输入较低时,发光二极管的点亮时间少于熄灭时间;当A输入255时,POUT=0,则发光二极管一直保持熄灭状态。也可以将POUT接入到示波器,通过观察示波器的显示波形得到结果。5. 设计总结在传统的数字电子系统或IC设计中,手工设计占了较大的比例。一般都是先按电子系统的具体功能要求进行功能划分,然后对每个子模块画出真值表,用卡诺图进行手工逻辑简化,写出布尔表达式,画出相应的逻辑线路图,再据此选择元器件,设计电路板,最后进行实测与调试。显然,手工设计的缺点让人越来越不可接受。故而,EDA技术变得越来越重要,作为当代大学生,要与

14、时俱进,更要掌握这种电子自动化设计。通过EDA的模拟编译、适配、仿真,可以大大缩短设计周期,降低设计成本。EDA仿真测试技术只需通过计算机就能对所设计的电子系统从各种不同层次的系统性能特点完成一系列准确的测试与仿真操作,在完成实际系统的安装后,还能对系统的目标器件进行所谓边界扫描测试、嵌入式逻辑分析仪的应用,这一切都极大地提高了大规模系统电子设计的自动化程度。至于课设报告中涉及到的WORD排版知识,随着一次次课设的进行,也一点点积累,现在可以说是得心应手。至少在排版时不会遇到障碍。总之本次课设,让我重新熟悉了Quartus、WORD两个常用软件,也复习了一遍VHDL语言的相关知识,又熟悉了一遍

15、用VHDL语言进行编程的过程。参考文献1潘松,黄继业.EDA技术与VHDL(第2版).北京:清华大学出版社,2007.2孟庆辉,刘辉,程继航,石静苑.EDA技术实用教程.北京:国防工业出版社,2008.3刘江海.EDA技术.武汉:华中科技大学出版社,2009.4杨跃.FPGA应用开发实战技巧精粹.北京:人民邮电出版社,2009.5王辉,殷颖,陈婷,俞一鸣等.MAX+plus II和Quartus II应用与开发技巧.北京:机械工业出版社,2007.附录1 整体原理框图附录2 设计程序可自加载加法计数器LCNT8LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;E

16、NTITY LCNT8 ISPORT(CLK,LD : IN STD_LOGIC; D: IN INTEGER RANGE 0 TO 255; CAO: OUT STD_LOGIC);END LCNT8;ARCHITECTURE BEHAVE OF LCNT8 ISSIGNAL COUNT: INTEGER RANGE 0 TO 255; BEGIN PROCESS(CLK) BEGIN IF CLKEVENT AND CLK=1 THEN IF LD=1 THEN COUNT=D; ELSE COUNT= COUNT+1; END IF; END IF; END PROCESS; PROCE

17、SS(COUNT) BEGIN IF COUNT=255 THEN CAO=1; ELSE CAO=0; END IF; END PROCESS;END BEHAVE;1000Hz分频器DIVLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY DIV ISGENERIC (DATAWIDTH : INTEGER := 25);PORT( CLK : IN STD_LOGIC; QO : OUT STD_LOGIC);END;ARC

18、HITECTURE BHV OF DIV ISSIGNAL COUNT : STD_LOGIC_VECTOR(DATAWIDTH-1 DOWNTO 0);BEGIN PROCESS(CLK) BEGIN IF RISING_EDGE(CLK) THEN IF COUNT=20000 THEN COUNT0); ELSE COUNT=COUNT+1; IF COUNT10000 THEN QO=0; ELSE QO=1; END IF; END IF;END IF;END PROCESS;END BHV;6进制计数器CNT6LIBRARY IEEE;USE IEEE.STD_LOGIC_1164

19、.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY COUNT6 ISPORT(CLK : IN STD_LOGIC; CNTOUT: BUFFER STD_LOGIC_VECTOR(2 DOWNTO 0);END;ARCHITECTURE BHV OF COUNT6 ISBEGIN PROCESS(CLK) BEGIN IF CLKEVENT AND CLK=1 THEN IF CNTOUT5 THEN CNTOUT=CNTOUT+1; ELSE CNTOUT0); END IF; END IF; END PROCESS;END;将8位预置数转化为12位数

20、组changeLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CHANGE ISPORT(D: IN STD_LOGIC_VECTOR(7 DOWNTO 0); DOUT: OUT STD_LOGIC_VECTOR(11 DOWNTO 0);END CHANGE;ARCHITECTURE BHV OF CHANGE ISBEGIN PROCESS(D) BEGIN CASE D IS WHEN 00000000 = DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT D

21、OUT DOUT DOUT SEGOUT SEGOUT SEGOUT SEGOUT SEGOUT SEGOUT SEGOUT SEGOUT SEGOUT SEGOUT NULL; END CASE; END PROCESS;END BHV;顶层文件PULSELIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY PULSE IS PORT(CLK: IN STD_LOGIC; A,B: IN STD_LOGIC_VECTOR(7 DOWNTO 0); POUT: OUT STD_LOGIC;

22、 SEGT: OUT STD_LOGIC_VECTOR(6 DOWNTO 0); CNT: OUT STD_LOGIC_VECTOR(2 DOWNTO 0);END PULSE;ARCHITECTURE BEHAVE OF PULSE IS COMPONENT LCNT8 PORT(CLK,LD: IN STD_LOGIC; D: IN STD_LOGIC_VECTOR(7 DOWNTO 0); CAO: OUT STD_LOGIC); END COMPONENT; COMPONENT COUNT6 IS PORT(CLK: IN STD_LOGIC; CNTOUT: BUFFER STD_L

23、OGIC_VECTOR(2 DOWNTO 0); END COMPONENT; COMPONENT CHANGE IS PORT(D: IN STD_LOGIC_VECTOR(7 DOWNTO 0); DOUT: OUT STD_LOGIC_VECTOR(11 DOWNTO 0); END COMPONENT; COMPONENT SEG7DEC IS PORT(BEDIN: IN STD_LOGIC_VECTOR(3 DOWNTO 0); SEGOUT: OUT STD_LOGIC_VECTOR(6 DOWNTO 0); END COMPONENT; COMPONENT DIV IS POR

24、T(CLK : IN STD_LOGIC; QO : OUT STD_LOGIC); END COMPONENT;SIGNAL CAO1,CAO2,CLKO: STD_LOGIC;SIGNAL LD1,LD2,PINT: STD_LOGIC;SIGNAL BED1: STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL CNT1: STD_LOGIC_VECTOR(2 DOWNTO 0);SIGNAL DOUT1,DOUT2:STD_LOGIC_VECTOR(11 DOWNTO 0); BEGIN U1: LCNT8 PORT MAP (CLK=CLKO, LD=LD1, D=A, CAO=CAO1); U2: LCNT8 PORT MAP (CLK=CLKO, LD=LD2, D=B, CAO=CAO2); U3: COUNT6 PORT MAP (CLK=CLKO,CNTOUT=CNT1);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1