


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、可控脉冲发生器的设计一、设计目的1. 了解可控脉冲发生器的实现机理。2. 学会用示波器观察 FPGA 产生的信号。3. 学习用 VHDL 编写复杂功能的代码。二、设计原理1. EDA 是电子设计自动化 (Electronic Design Automation)的缩写。 EDA 技术就是依赖功能强大的计算机,在 EDA 工具软件 平台上,对 以硬件描述语言 HDL (Hardware Description Language) 为系统逻辑描述手 段完成的设计文件,自动地完成逻 辑编译、化简、分割、综合、布局布线以及 逻辑优化和仿真测试, 直至实现既定的电子线路系统功能。 EDA 技术使设计 者
2、的工作仅 局限于利用软件的方式来完成对系统硬件功能的实现, 可以说 EDA 技术的产生与开展是电子设计技术的一个巨大进步。 EDA 技 术融合了众多电子设计技术和计算机辅助技术, 使得它在现代电 子学方面的 应用越来越广泛, 也成为电子、电气类大学生必须熟 练掌握的一种设计工具。2. VHDL 是英文全名是 VHSIC(Very High Speed IntegratedCircuit) Hardware Description Language, 是硬件描述语言的 业界标准之一。 VHDL 语言功能强大、设计灵活。 VHDL 语言可 以用简洁明确的源代码来描述复杂的逻辑控制, 它具有多层 次
3、的设计描述功能, 层层细化,最后可直接生成电路级描述。VHDL 支持同步电路、异步电路和随机电路的设计,这是 其他硬件描述既支持自底向上的设计,又支持自顶向下的设计;既支持模 块化设计,又支持 层次化设计。由于 VHDL 已经成为 IEEE 标准所规定的硬件描述性语言, 目前大多数 EDA 工具几乎都支持 VHDL 因为 VHDL 易读和结 构化且易于修改设计所以在 硬件电路设计过程中, VHDL 语 言得到广泛应用。VHDL 语言易于共享和复用。 VHDL 采用基于库 (Library )的设计方法, 可以建立各种可再次利用的模块。这些模块可 以预先设计或使用以前设计中的 存档模块,将这些模
4、块存放 到库中,就可以在以后的设计中进行复用,可以使 设计成果 在设计人员之间进行交流和共享,减少硬件电路设计。VHDL 丰富的仿真语句和库函数,使得在任何大系统的设 计早期就能查 验设计系统的功能可行性,随时可对设计进行 仿真模拟。 VHDL 语句的行为描 述能力和程序结构决定了它具 有支持大规模设计的分解和已有设计的再利用功 能。这个特 点很好的符合了市场需求。 对于用 VHDL 完成的一个确定的设 计, 可以利用 EDA 工具进行逻辑综合和优化, 并自动的把 VHDL 描述的设计转变 成门级网表。总之,由于 VHDL 语言有的这些 优良的特点,它被广泛的应用在电子线路和电子系统的设计 中
5、。3. Quartus II 是 Altera 公司的综合性 PLD/FPGAT 发软件, 支持原理图、 VHDL 、 VerilogHDL 以及 AHDL ( Altera Hardware Description Language ) 等多种设计输入形式,内嵌自有的综合 器以及仿真器,可以完成从 设计输入到硬件配置的完整 PLD 设计 流程。Quartus II 可以在 XP、 Linux 以及 Unix 上使用,除了可以使用 Tcl 脚本完成设计流程外, 提供了完善的用户图形界面设计 方式。具有 运行速度快, 界面统一, 功能集中,易学易用等特点。Quartus II 支持 Altera
6、 的 IP 核,包含了 LPM/MegaFunction 宏功能模块 库, 使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方 EDA 工具的良好支持也使用 户可以在设计流程的各个阶段使用 熟悉的第三方EDA 工具。此外, Quartus II 通过和 DSPBuilder 工具与 Matlab/Simulink 相结合,可以方便地实现各种 DSP 应用系统;支持 Altera 的片 上可编程系统 (SOPC 开发,集系统级设计、嵌入式软件开发、 可编程逻辑设计于一体,是 一种综合性的开发平台。4. 脉冲发生器就是要产生一个脉冲波形,而可控脉冲发生器 那么是要产生一 个
7、周期和占空比可变的脉冲波形。 可控脉冲发生器 的实现原理比拟简单, 可 以简单的理解为一个计数器对输入的时 钟信号进行分频的过程。 通过改变计 数器的上限值来到达改变周 期的目的,通过改变电平翻转的阈值来到达改变占 空比的目的。 下面举个简单的例子来说明其工作原理。假设有一个计数器 T 对时钟分频,其计数的范围是从0? N,另取一个M(0 M N),假设输出为Q那么Q只要满足条件0 汀::M M T N时,通过改变 N 值,即可改变输出的脉冲波的周期;改变M 值, 即可改变脉冲 波的占空比。这样输出的脉冲波的周期和占空比分别为:周期=(N 1)T CLOCK占空比 M 100%N +1二、设计
8、内容编写实现可控脉冲发生器程序,通过脉冲周期和占空比改变 实现不同脉冲的输出。用Quartusll软件对设计进行编译、综合、仿真,给出相应的时序仿真波形和硬件电路图。四、设计流程1. 程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CC ISPORT( CLK: IN STD_LOGIC;- 时钟输入RST : IN STD_LOGIC;- 复位输入NU,ND : IN STD_LOGIC; - 输入:控制频率的改 变MU
9、,MD : IN STD_LOGIC; - 输入:控制占空比的 改变FOUT : OUT STD_LOGIC - 波形输出);END CC;ARCHITECTURE BEHAVE OF CC ISSIGNAL N_BUFFER,M_BUFFER:STD_LOGIC_VECTOR(10 DOWNTO0);SIGNAL N_COUNT :STD_LOGIC_VECTOR(10 DOWNTO 0);SIGNAL CLKIN : STD_LOGIC;SIGNAL CLK_COUNT : STD_LOGIC_VECTOR(12 DOWNTO0); - 产生一个低速时钟,用于按键判断BEGINPROCES
10、S(CLK) - 计数器累加BEGINIF(CLKEVENT AND CLK=1) THENIF(N_COUNT=N_BUFFER)THENN_COUNT=00000000000;ELSEN_COUNT=N_COUNT+1;END IF;END IF;END PROCESS;PROCESS(CLK) - 波形判断BEGINIF(CLKEVENT AND CLK=1) THEN IF(N_COUNTN_BUFFER)THEN FOUTM_BUFFER AND N_COUNTN_BUFFER) THENFOUT=0;END IF;END IF;END PROCESS;PROCESS(CLK)BEG
11、INIF(CLKEVENT AND CLKIN=1) THENCLK_COUNT=CLK_COUNT+1;END IF;CLKIN=CLK_COUNT(12);END PROCESS;PROCESS(CLKIN) - 频率及占空比的改变 1BEGINIF(CLKEVENT AND CLKIN=0) THENIF(RST=0) THENM_BUFFER=01000000000;ELSIF(NU=0)THENN_BUFFER=N_BUFFER+1;ELSIF(ND=0) THENN_BUFFER=N_BUFFER-1;ELSIF(MU=0)THENM_BUFFER=M_BUFFER+1;ELSIF
12、(MD=0) THENM_BUFFER FourO/pc/tPINJBH411 MOIqxxPW.M1l4 MJtnpRZPIN/CIsl他p ;! jtPIN JLI1Z8&1 MJin putPINJJll871 RstErpdtP1N.B333. 时序仿真图:1/1/rIfr-1-E-Iak a Dn ej1r皿讪恤帧恤皿i伽?! mmram?IIIIIIiIIIIIIIHnRo miJMj_LmMH I -HUFo o4.硬件电路图:66軸C z 4卩 1 T . |迫* U M k=4i i H r3 A 7 L弁辽Jrt=siI t -H tdJ LT卜T也H-列|ta jta 卜
13、丄丄丄丘f * 14 1 二* 1 X 1 * 1 二1二1 11* 1VRT 15.现象:五、心得体会通过这次 EDA 课程设计,我对课堂上所学到的理论知识的理 解加深了许多,自己动脑、动手设计的能力也得到了较大提高。在这次课程设计的过程中,我对 VHDL 语言有了更深的认识。 通过 查阅相关资料和动手设计我发现我以前对 VHDL 语言的认识 太过浅薄, 认为 VHDL 语言只能用于设计小型的电路系统。 但有 了更深刻的认识之后 我发现学好 VHD 语言可以设计出大规模的、 功能复杂的电路系统。 以 前之所以会有错误的认识是因为自己对 VHDL 语言的了解和掌握还不够。 现在仔细想想, 这次
14、课程设计使 得我对 VHDL 语言的理解与应用能力得到 了较大的提升,也让我 认识到只要升入学习,提升的空间永远的存在的。另一方面我也发现了动手实践的重要性。 动手实践是理论知 识得以 灵活运用的必要前提, 也是今后今后走上工作岗位之后能 够很好的完成 设计工作的技术保证。 只有遇到实际问题并根据自 己对课堂上获得的专 业知识的理解来解决它才能真正的提高自 己的能力。这也提醒我在平时的 学习生活中不能一味埋头于课本 知识,当今社会竞争越来越剧烈, 社会 对人才的要求越来越全面, 只有理论知识是远远不够的, 必须靠动手能 力做支撑。因此在学 习之余我们应该积极参加各种与专业知识有关的实践 活动和
15、知 识竞赛,稳固所学的理论知识,多注重培养实际动手能力和专业 技术能力,这样才能在以后的工作岗位上有所作为。数字秒表设计一、设计目的本设计的任务就是设计一个数字钟, 要求显示格式为小时 分钟 秒钟。系统时钟选择时钟模块的 50MHz 要得到 1Hz 时钟 信号,必须对 系统时钟进行 50000000 次分频。用 S1 按键作为系 统时钟复位,复位后全部显示 00 00 00 。二、设计原理数码管的八个段 a,b,c,d,e,f,g,h h 是小数点都分别连 接到 SEG0SEG78 个数码管分别由八个选通信号 DIG0DIG7 来 选择,被选 通的数码管显示数据,其余关闭。如果希望 8 个数码
16、 管显示希望的数据, 就必须使得 8 个选通信号 DIG0DIG7 分别被 单独选通,并在此同时,在 段信号输入口 SEG0SEG 加上该对应 数码管上显示的数据, 于是随着 选通信号的扫描就能实现动态扫 描显示的目的。 虽然每次只有 1 个数码 管显示, 但只要扫描显示 速率足够快,利用人眼的视觉余辉效应,我们 仍会感觉所有的数 码管都在同时显示。三、设计主要内容本设计要求掌握使用 QuartusII 设计数字系统的设计思路和 设计方法。 学习 VHDL 根本逻辑电路的综合设计应用。 掌握 VHDL 语言的语法标准, 掌握时序电路描述方法。 掌握多个数码管动态 扫描显示的原理及设计方法。设计
17、一个由共阴八位数码管作为显示、按键作为控制系统的 数字钟电 路,要求利用实验室设备完成系统设计并运行调试四、设计流程1.程序:library ieee;use ieee.std_logic_1164.all;use ieee.stdo gic_arith.all;use ieee.stdo gic_ un sig ned.all; en tity stopwatch isport( Clk :inreset :instart,over :inledag:0);-七段码管显示输出SELdownto 0)-七段码管扫描驱动std_logic;-时钟输入std_logic;-复位输入std_logi
18、c;-秒表控制输入out stdo gic_vector(6 dow nto:bufferstd_logic_vector(2end stopwatch;sig nal Disp_Temp sig nalDisp_Decode sig nal mSEC1,mSEC10 sig nal SEC1,SEC10 sig nal MIN1,MIN10 sig nal HOUR1,HOUR10:std_logic;:std_logic; :std_logic;);architecture behave of stopwatch is in teger range 0 to 15;stdo gic_vec
19、tor(6 dow nto 0); : in teger range 0 to 9;in teger range 0 to 9;:in teger range 0 to 9;:in teger range 0 to 9;sig nal Clk1kHz sig nal Clk100Hz sig nal Start_Flagsig nal Music_C ount:stdo gic_vector(2 dow nto 0);beginPROCESS(clk) -ge nerate 100hz clock sig nalvariable ent : INTEGER RANGE 0 TO 499999;
20、- 产生 100Hz 时 钟的分频计数器BEGINIF clk=1 AND clkeve nt THENIF cn t=499999 THEN cn t:=0;ELSEIF cnt250000 THEN clk100hz=1;ELSE clk100hz=0;END IF;cnt:=cnt+1;END IF;END IF;END PROCESS;PROCESS(clk) -generate 1khz clock signal variable cnt1 : INTEGER RANGE 0 TO 49999;- 产生 1kHz 时 钟的分频计数器BEGINIF clk=1 AND clkevent
21、 THENIF cnt1=49999 THEN cnt1:=0;ELSEIF cnt125000 THEN clk1khz=1; ELSE clk1khz=0; END IF;cnt1:=cnt1+1;END IF;END IF;END PROCESS;process(Clk100Hz)beginif(reset=0) then - 系统复位 mSEC1=0; mSEC10=0; SEC1=0; SEC10=0; MIN1=0; MIN10=0; HOUR1=0;HOUR10=0;Start_Flag=0;elsif(start=0 and Start_Flag=0) thenStart_Fl
22、ag=1;elsif(over=0 and Start_Flag=1) thenStart_Flag=0;elsif(Clk100Hzevent and Clk100Hz=1) then - 正常运行 if(Start_Flag=1) then if(mSEC1=9) then mSEC1=0;if(mSEC10=9) thenmSEC10=0;if(SEC1=9) thenSEC1=0;if(SEC10=5) thenSEC10=0;if(MIN1=9) thenMIN1=0;if(MIN10=5) thenMIN10=0;if(HOUR1=9) thenHOUR1=0; if(HOUR10
23、=9) then HOUR10=0; elseHOUR10=HOUR10+1;end if;elseHOUR1=HOUR1+1; end if;elseMIN10=MIN10+1;end if;elseMIN1=MIN1+1; end if;elseSEC10=SEC10+1; end if;elseSEC1=SEC1+1; end if; else mSEC10=mSEC10+1; end if;else mSEC1Disp_TempDisp_TempDisp_TempDisp_TempDisp_TempDisp_TempDisp_TempDisp_TempDisp_TempDisp_Tem
24、pDisp_TempDisp_TempDisp_TempDisp_TempDisp_TempDisp_Temp=HOUR10; end case;end if;end process;process(Clk1khz)begin if(Clk1khzevent and Clk1khz=1) then - 扫描 累加 SEL=SEL+1;ledagDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeH/TTi(defaJt)z尬edA 6OiAputmmTB2 N03.3-VLVTTL(dAait)3 OutputF1N.M52BZJfl3,AHVTTL(defdt)4*Ieddi40就卩止WN.H62B2.N03.3-lfLVTTL(defajt)5神窗OutputFN M2B2.N13.3-VLVTTLt)&4*两 2OutputPRUB282.N13LVT(W4i*)7曲宓UOutputPJN.MS1B1.N03.3-HVTTL (drfait)8聊硼OutputF1N M6iELJU3.?-VLYTTL(def
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 巡察三个聚焦培训课件
- 杂交构树生态恢复及产业化建设示范项目可行性研究报告
- 年产25吨帕博利珠单抗原液项目可行性研究报告
- 2025版绿色环保窗帘生产与安装合作协议
- 2025短视频平台用户互动与社群运营合作协议
- 2025版跨境电商航次运输及清关服务合同
- 2025版粮食仓储设施维护保养服务合同范本
- 2025版干粉砂浆原材料采购与检测合同
- 二零二五年房屋租赁日常租住服务协议(强力)
- 二零二五年养老护理帮工服务合同
- 建筑施工现场签证单(模板)
- GBZ(卫生) 49-2014职业性噪声聋的诊断
- GB/T 9729-2007化学试剂氯化物测定通用方法
- GB/T 7588.2-2020电梯制造与安装安全规范第2部分:电梯部件的设计原则、计算和检验
- GB/T 13560-2017烧结钕铁硼永磁材料
- 三视图及尺寸标注课件
- 混凝土配合比验证检验委托书模板
- 住房公积金投诉申请书
- 众辰变频器说明书3400
- 小学教师量化考核表
- 《财务管理》课程教学实施方案
评论
0/150
提交评论