版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、电气工程及其自动化EDA课程设计课程设计报告题 目: 数字频率计的设计 院 (系): 机电与自动化学院 专业班级: 电气工程及其自动化 学生姓名: XXX 学 号: 2011XXXXXXX 指导教师: XXX 2014年1月6日至2014年1月10日华中科技大学武昌分校电气工程及其自动化EDA课程设计设计任务书一、设计题目数字频率计的设计二、设计主要内容1设计目的:(1)巩固和加深对EDA技术及应用及数字电子技术基本知识的理解,提高学生综合运用本课程所学知识的能力; (2)培养学生根据课题需要选学参考书籍、查阅手册、图表和文献资料的自学能力;通过独立思考,深入钻研有关问题,学会自己分析解决问题
2、的方法; (3)以学生的动手为主要内容,培养学生系统软、硬件设计、调试的基本思路、方法和技巧,并能熟练使用集成软件Quartus进行有关电路设计与分析; (4)掌握FPGA器件的正确使用方法,提高学生动手能力,能在教师指导下,完成课程任务;(5)培养严肃认真的工作作风和科学态度。通过课程设计实践,帮助学生逐步建立正确的生产观念、工程观念和全局观点。2设计内容:(1)位频率计输入端分别为:系统基准时钟100MHZ(CLK)、被测信号输入(Fx);及输出端为(DOUT),皆采用BCD码计数方式;(2)可测量范围从1Hz到99999999Hz;(3)将被测信号的频率直接送到个LED显示; 也可选择其
3、它题目,但分量不能低于上述题目。三、原始资料1频率测量方法的基本原理是计算每秒内待测信号的脉冲个数,这就要求TESTCTL的计数使能信号TSTEN能产生一个1秒脉宽的周期信号,并对频率计的每一个计数器CNT10的ENA使能端进行同步控制。当TSTEN高电平时,允许计数,并保持其所计的数。在停止计数期间,首先需要一个锁存信号LOAD的上跳沿将计数器在前1秒的计数值锁存进32位锁存器REG32B中,并由外部的7段译码器译出并稳定的显示。此方法测量精度高。数字频率计由多频信号源模块、测频控制模块、CNT计数模块、32位锁存器模块及频率显示模块组成,其框图为图1所示:信号源计数模块锁存器显示器控制信号
4、100MHzCLK1Hz用于测量用于扫描显示被测信号fsinTESTENLOADCLR产生1MHz信号产生多种频率输出 图1 数字频率计组成框图2在QuartusII软件中,编写各个模块VHDL源程序;并上机调试通过;3下载顶层文件到目标芯片;4将被测信号fx输入到系统,数码管将会显示被测信号频率。四、要求的设计成果1、基本要求:在QuartusII软件中新建原理图文件,编译,仿真,锁定管脚并下载到目标芯片。将被测信号fx输入到系统,数码管将会显示被测信号频率。 (1) 根据设计要求, 设计系统的原理框图,说明系统中各主要组成部分的功能; (2) 在QuartusII软件中,编写各个模块VHD
5、L源程序;并上机调试通过; (3) 根据软件编好用于系统仿真的测试文件;(4) 编好用于硬件验证的管脚锁定文件;(5) 记录系统各个模块仿真结果; (6) 记录仿真结果中出现的问题及解决办法。2、备选要求:学生可根据课堂教学对EDA技术及应用所掌握知识点的实际情况,也可选择其它方案完成设计,从而形成难易程度不同的设计方法。注意:基本要求学生必须完成,学有余力的学生可以在基本要求完成的前提下,选择其它方案完成设计。一般来说,测频精度越高,考查评价就越高。五、进程安排表2 进度安排及学时分配表序号课程设计内容学时分配备注1集中学生学习课程设计的关键理论知识、分配设计任务、明确设计要求、查找资料等。
6、1天2根据任务的要求进行方案构思,初选方案,绘制系统原理框图并与指导教师讨论,方案定稿。 1天完成各模块的VHDL程序设计、编译和时序仿真1天3编程、下载,结合硬件平台,进行调试。完成顶层文件图绘制,对编制好的封图交给老师检查,并按照老师要求修改。1天4撰写课程设计说明书1天5答辩及验收课程设计1 天合计5天六、主要参考资料1 侯伯享. VHDL硬件描述语言与数字逻辑电路设计. 西安:西安电子科技大学出版,2010.2 潘松. EDA技术实用教程. 成都:电子科技大学出版社,2010.3 李玉山. 电子系统集成设计技术. 北京:电子工业出版社,2010.6.4 李国丽.EDA与数字系统设计.北
7、京:机械工业出版社,2009.5 周彩宝.VHDL语言及其应用. 上海:华东计算机技术研究所:2009.6 谭会生.EDA技术中和应用实例与分析.西安:西安电子科技大学出版社,2008. 指导教师(签名): 20 年 月 日目录摘要(1)一课程设计要求及内容(1)1.1 主要技术指标(1)1.2 工作内容及要求(1)二 数字频率计的基本原理 (1)2.1 数字频率计的组成(1)2.2 数字频率器的原理(2)三 具体电路模块设计 (2)3.1 100MHz分频器 CLK_GEN的设计(2)3.2 带时钟使能的十进制计数器CNT10的设计(3)3.3 32位锁存器REG32B的设计 (5)3.4
8、测频控制信号发生器TESTCTL的设计(6)3.5 动态输入编译译码器HC4511的设计 (7)四 数字频率计系统模块的设计 (9)4.1 系统模块程序设计及仿真波形(9)4.2 数字频率计系统顶层设计 (10)五 心得体会(13)课程设计成绩评定表 (14)摘要数字频率计是一种用十进制数字显示被测信号频率的一种数字测量仪器,其功能是测量正弦信号,方波信号,尖脉冲信号以及其他各种单位时间内变化的物理量,因此已经成为电路设计的常用元器件之一,有它不可替代的地位。在电子技术中,频率与许多电参量的设计测量方案,测量结果都有着十分紧密的关系,因此频率的测量就显得更为重要。测量频率的方法有很多种,其中数
9、字计数器测量频率具有精度高,使用方便,测量迅速,以及便于实现测量过程自动化等优点,是频率测量的重要手段之一。其原理为通过测量一定闸门时间内信号的脉冲个数。本文阐述了利用VHDL语言在CPLD器件的基础上设计一个简单的数字频率计的过程。采用VHDL编程技术设计实现的数字频率计,除被测信号的整形部分,键输入部分和数码显示部分以外,其余全部在一片集成电子芯片上实现,整个系统非常精简,而且具有灵活的现场可更改性。关键词:数字频率计,测量,VHDL语言,设计一课程设计要求及内容1.1 主要技术指标(1)可测量范围从1Hz到99999999Hz;(2)位频率计输入端分别为:系统基准时钟100MHZ(CLK
10、)、被测信号输入(Fx);及输出端为(DOUT),皆采用BCD码计数方式;(3)将被测信号的频率直接送到个LED显示。1.2 工作内容及要求(1)根据任务的要求进行方案构思,初选方案,绘制系统原理框图并与指导教师讨论,方案定稿。(2)根据选定的方案,在QuartusII软件中,编写各个模块VHDL源程序;并上机调试通过,记录系统各个模块仿真结果;(3)对各个模块进行综合仿真,调试,实现数字频率计的基本功能和硬件实现;(4)记录仿真结果中出现的问题及解决办法。二 数字频率计的基本原理2.1 数字频率计的组成本课程设计设计的数字频率计正常工作时,可测量0Hz-100MHz的频率。设 (1)计系统是
11、有五部分组成:一个100MHz分1Hz的分频器CLK_GEN,一个测频控制信号发生器TESTCTL,带时钟使能的十进制计数器CNT10(设计中需要八个),一个32位锁存器REG32B,以及动态输入译码器HC4511电路设计(设计中需要八个)。2.2 数字频率器的原理数字频率计的基本原理是用一个频率稳定度高的频率源作为基准信号,对比测量出其他信号的频率。通常情况下计算每秒内待测信号的脉冲个数,即闸门时间为一秒。闸门时间可以根据取值大于或小于1秒都可以。闸门时间越长,则每测一次频率的间隔就越长,闸门时间越短,测得的频率值刷新就越快,单侧的的频率精度就越受影响。一般取1秒作为闸门时间。其原理框图如下
12、: 设计的数字频率计工作过程如下:被测信号接入频率计的输入端FSIN,下载板上100M时钟通过频率计的分频器模块中CLK端口输入,经过分频器的分频,变成1Hz的工作频率提供给测频器。当被测频率和工作频率进入测频器模块时,测频器TESTCTL工作进行测频,TESTCTL的计数使能信号CLR_CNT产生一个1秒脉宽的周期信号,并对频率集中的十进制计数器CNT10的ENT使能端进行同步控制。当ENT高电平时允许计数,低电平时停止计数,并保持其所记得脉冲数。在停止计数期间,首先需要一个锁存信号LOAD的上升沿将计数器所计的值锁存进32位锁存器REG32B中,数字频率计的源程序综合以上模块并且通过对硬件
13、的链接,实现8个数码管显示出计数值。三 具体电路模块设计3.1 100MHz分频器 CLK_GEN的设计100MHz工作时钟接入分频器,用一个计数器进行计数,计满二分之一100M个,CLK信号取反一次,分频后频率变为1Hz,周期由1/100000000秒变大为1秒,满足数字频率计时序工作频率的要求。 分频器程序设计如下:- 100MHz分频器:clk_gen.vhd-library ieee;use ieee.std_logic_1164.all;entity clk_gen is port(clk: in std_logic; newclk: out std_logic);end entit
14、y clk_gen; (2) architecture art of clk_gen is signal clk2:std_logic; begin process(clk) is variable cnter: integer range 0 to 99999999; begin if clkevent and clk=1 then if cnter=99999999 then cnter:=0; else cnter:=cnter+1; end if; if cnter50000000 then clk2=1; else clk2=0;end if; end if; end process
15、; newclk=not clk2;end architecture art; 分频器编译仿真波形如下:3.2 带时钟使能的十进制计数器CNT10的设计计数器模块是对输入脉冲信号的频率进行测量技术的部分,有八个带时钟使能的十进制计数器组成。其中ENA为计数器选通控制信号,CLR为计数清零信号。在计数清零信号清零后,当使能信号ENA有效时,开始对待测信号进行计数。如果使能信号ENA的宽度为1时,那么计数结果就为待测信号的频率。 (3) 带时钟使能的十进制计数器程序设计如下:- 带时钟使能的十进制计数器:CNT10.vhd-LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.
16、ALL;ENTITY CNT10 IS PORT (CLK:IN STD_LOGIC; CLR,ENA: IN STD_LOGIC; CQ:OUT INTEGER RANGE 0 TO 15; CO:OUT STD_LOGIC);END ENTITY CNT10;ARCHITECTURE ART OF CNT10 IS SIGNAL CQI:INTEGER RANGE 0 TO 15; BEGIN PROCESS(CLK,CLR,ENA)IS BEGIN IF CLR=1THEN CQI=0; ELSIF CLKEVENT AND CLK=1THEN IF ENA=1THEN IF CQI9
17、THEN CQI=CQI+1; ELSE CQI=0;END IF; END IF; END IF; END PROCESS; PROCESS(CQI)IS BEGIN IF CQI=9 THEN CO=1; ELSE CO=0;END IF; END PROCESS; CQ=CQI;END ARCHITECTURE;十进制计数器编译仿真波形如下: (4)3.3 32位锁存器REG32B的设计当锁存信号上升沿到来时,将计数器的计数值锁存。设置锁存器的好处是显示的数据稳定,不会由于周期的清零信号而闪烁。锁存器的位数应该和计数器一样,都是32位。寄存器在计数结束后,利用触发器的上升沿把最新的频率测
18、量值保存起来,这样在计数过程中不必一直看数码显示管,显示器将最终的频率读数定期进行更新,其输出将作为动态扫描电路的输入。32位锁存器程序设计如下:- 32位锁存器:reg32b.vhd-Library ieee;use ieee.std_logic_1164.all; entity reg32b is port(lk: in std_logic; din: in std_logic_vector(31 downto 0); dout: out std_logic_vector(31 downto 0); end reg32b; architecture behav of reg32b is b
19、egin process(lk,din) begin if lkevent and lk=1 then dout=din; end if; end process;end architecture behav; 32位锁存器编译仿真波形图如下: (5)3.4 测频控制信号发生器TESTCTL的设计 频率测量的基本原理就是计算每秒钟内待测信号的脉冲个数。这就要求TESTCTL的计数使能信号TATEN能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT10的ENA使能端进行同步控制。当TSTEN高电平时,允许计数,低电平时停止计数,并保持所记的数。在停止计数期间,首先需要一个锁存信号LOAD
20、的上升沿将计数器所计的值锁存进32位锁存器REG32B中,并有外部的译码器译出并稳定显示。锁存信号之后,必须有一清零信号CLR_CNT对计数器进行清零,为下一秒做好准备。 测频控制信号发生器程序设计如下:- 测频控制信号发生器:TESTCTL.vhd-Library ieee;use ieee.std_logic_1164.all;use IEEE.std_logic_unsigned.all;entity testctl is port(clk:in std_logic; tsten:out std_logic; clr_cnt:out std_logic; load:out std_log
21、ic);end entity testctl;architecture art of testctl is signal div2clk:std_logic; begin process(clk) is begin if clkevent and clk=1 then div2clk=not div2clk; end if; end process; process(clk,div2clk) is begin if clk=0 and div2clk=0 then clr_cnt=1; else clr_cnt=0; end if; end process; load=not div2clk;
22、 tsten a=0;b=1;c=1;d=0;e=0;f=0;g a=1;b=1;c=0;d=1;e=1;f=0;g a=1;b=1;c=1;d=1;e=0;f=0;g a=0;b=1;c=1;d=0;e=0;f=1;g a=1;b=0;c=1;d=1;e=0;f=1;g a=0;b=0;c=1;d=1;e=1;f=1;g a=1;b=1;c=1;d=0;e=0;f=0;g a=1;b=1;c=1;d=1;e=1;f=1;g a=1;b=1;c=1;d=1;e=0;f=1;g NULL; end case; end process; end architecture ART;动态输入编译译码器
23、编译波形如下: (8)四 数字频率计系统模块的设计4.1 系统模块程序设计及仿真波形 系统模块实现对各个模块的整合,实现整个系统的功能。FSIN为输入被测频率信号,CLK为分频器输出的1Hz工作频率,DOUT为数字频率计输出的频率测试结果。在整个模块的设计中,需要使用以上各个模块的功能和应用,通过系统模块程序的子程序调用,实现对整个系统的控制。数字频率计系统模块源程序设计如下:- 数字频率计:FREQ.vhd-LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; ENTITY FREQ IS PORT(FSIN:IN STD_LOGIC; CLK:IN STD_L
24、OGIC; DOUT:OUT STD_LOGIC_VECTOR(31 DOWNTO 0); END ENTITY FREQ; ARCHITECTURE ART OF FREQ IS COMPONENT CNT10 IS PORT(CLK,CLR,ENA:IN STD_LOGIC; CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); CO:OUT STD_LOGIC); END COMPONENT CNT10; COMPONENT REG32B IS port(lk: in std_logic; din: in std_logic_vector(31 downto 0);
25、dout: out std_logic_vector(31 downto 0); END COMPONENT REG32B; COMPONENT TESTCTL IS port( clk:in std_logic; tsten:out std_logic; clr_cnt:out std_logic; load:out std_logic); END COMPONENT TESTCTL; SIGNAL SE,SC,SL:STD_LOGIC; SIGNAL S1,S2,S3,S4,S5,S6,S7,S8:STD_LOGIC; SIGNAL SD:STD_LOGIC_VECTOR(31 DOWNT
26、O 0); BEGINU0:TESTCTL PORT MAP(CLK=CLK,TSTEN=SE,CLR_CNT=SC,LOAD=SL);U1:CNT10 PORT MAP(CLK=FSIN,CLR=SC,ENA=SE,CQ=SD(3 DOWNTO 0),CO=S1);U2:CNT10 PORT MAP(CLK=S1,CLR=SC,ENA=SE,CQ=SD(7 DOWNTO 4),CO=S2); (9)U3:CNT10 PORT MAP(S2,SC,SE,SD(11 DOWNTO 8),S3);U4:CNT10 PORT MAP(S3,SC,SE,SD(15 DOWNTO 12),S4);U5:
27、CNT10 PORT MAP(S4,SC,SE,SD(19 DOWNTO 16),S5);U6:CNT10 PORT MAP(S5,SC,SE,SD(23 DOWNTO 20),S6);U7:CNT10 PORT MAP(S6,SC,SE,SD(27 DOWNTO 24),S7); U8:CNT10 PORT MAP(S7,SC,SE,SD(31 DOWNTO 28),S8);U9:REG32B PORT MAP(lk=SL,DIN=SD(31 DOWNTO 0),dout=DOUT);END ARCHITECTURE ART;数字频率计系统模块编译仿真波形如下:4.2 数字频率计系统顶层设计
28、数字频率及系统顶层设计需要一个在工作时钟下,将系统模块输出的32位DOUT信号转化为8个4位信号,并且送入显示译码器HC4511中进行显示。其程序设计如下:- 信号转化模块:SELTIME.vhd-LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY SELTIME IS PORT( CLK : IN STD_LOGIC; (10) DIN : IN STD_LOGIC_VECTOR(31 DOWNTO 0); DAOUT: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); SEL : OUT STD_LOGIC_VECTOR(2 DOWNTO 0); END SELTIME; ARCHITECTURE behav OF SELTIME ISSIGNAL SEC : STD_LOGIC_VECTOR(2 DOWNTO 0); BEGIN PROCESS(CLK)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 船用桁项目运营指导方案
- 利用可再生资源生产电能行业营销策略方案
- 玩具棱镜项目营销计划书
- 侦探服务行业经营分析报告
- 药用薄荷醇项目运营指导方案
- 含药物的糖果产业链招商引资的调研报告
- 人寿保险承保行业市场调研分析报告
- 医用充气软垫产品供应链分析
- 化妆台梳妆台产业链招商引资的调研报告
- 市场调查的设计行业经营分析报告
- 《城市设计》2课件
- 教科版科学五年级上册《摆的快慢》学习任务单
- 三年级数学上册课件-8.1分数的初步认识 - 人教版(共15张PPT)
- 小学数学 青岛版 六年级上册 比的认识部优课件
- 中国古代舞蹈史
- 摩托罗拉328-338系列写频软件教程
- 中国华能集团公司风力发电设备选型技术导则
- 林地养鸡技术的课件
- 生活自理能力评价量表完整优秀版
- 应急供货方案及紧急供货措施
- 人工神经网络6HOPFIELD神经网络ppt课件
评论
0/150
提交评论