




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、常熟理工学院课程设计报告 课程设计报告课 程 EDA课程设计 题 目 数字频率计 院 系 物理与电子工程学院 年 级 专 业 电子信息工程 班 级 学 号 学生姓名 指导教师 设计时间 2015.1.122015.1.17 目录第一章 绪论31.1 设计背景 31.2 设计目的4第二章 设计内容与要求42.1 数字频率计42.2 设计要求5第三章 设计原理及程序53.1设计流程即电路原理图53.2各单元模块功能介绍及电路设计63.2.1分频器模块设63.2.2测频器83.2.3计数器93.2.4锁存器113.2.5扫描仪133.2.6连接扫描仪和38译码器子模块143.2.7数码管1
2、5第四章模块仿真及实物调试184.1分频器模块184.2测频器模块184.3计数器模块194.4锁存器模块194.5扫描仪模块194.6 实物调试20第五章实验小结20第六章 参考文献21 第一章 绪论1.1 设计背景 在电子工程,资源勘探,仪器仪表等相关应用中,频率计是工程技术人员必不可少的测量工具。频率测量也是电子测量技术中最基本最常见的测量之一。不少物理量的测量,如转速、振动频率等的测量都涉及到或可以转化为频率的测量。目前,市场上有各种多功能、高精度、高频率的数字频率计,但价格不菲。为适应实际工作的需要,本文在简述频率测量的基本原理和方法的基础上,提供一种基于FPGA的数字频率
3、计的设计和实现过程,本方案不但切实可行,而且具有成本低廉、小巧轻便、便于携带等特点。EDA技术是以大规模可编程逻辑器件为设计载体,以硬件语言为系统逻辑描述的主要方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件设计的电子系统到硬件系统的设计,最终形成集成电子系统或专用集成芯片的一门新技术。其设计的灵活性使得EDA技术得以快速发展和广泛应用。伴随着集成电路(IC)技术的发展,电子设计自动化(EDA)逐渐成为重要的设计手段,已经广泛应用于模拟与数字电路系统等许多领域。电子设计自动化是一种实现电子系统或电子产品自动化设计的技术,它与电子技术,微
4、电子技术的发展密切相关,它吸收了计算机科学领域的大多数最新研究成果,以高性能的计算机作为工作平台,促进了工程发展。EDA的一个重要特征就是使用硬件描述语言(HDL)来完成的设计文件,VHDL语言是经IEEE确认的标准硬件语言,在电子设计领域受到了广泛的接受。 1.2 设计目的在熟练掌握数字频率计工作原理及内部构造等的基础上,通过本次课程设计更加深入的了解数字频率计的功能。了解EDA技术,并掌握VHDL硬件描述语言的设计方法和思想。通过学习的VHDL语言结合数字频率计的组成原理等相关知识掌握所学的课程知识。第二章 设计内容与要求2.1 数字频率计数字频率计是采用数字电路制做成的能实现对周期性变化
5、信号频率测量的仪器。频率计主要用于测量正弦波、矩形波、三角波和尖脉冲等周期信号的频率值。其扩展功能可以测量信号的周期和脉冲宽度。通常说的,数字频率计是指电子计数式频率计。测量频率的方法有很多,按照其工作原理分为无源测量法、比较法、示波器法和计数法等。计数法在实质上属于比较法,其中最常用的方法是电子计数器法。电子计数器是一种最常见、最基本的数字化测量仪器。数字计数式频率计能直接计数单位时间内被测信号的脉冲数,然后以数字形式显示频率值。这种方法测量精确度高、快速,适合不同频率、不同精确度测频的需要。电子计数器测频有两种方式:一是直接测频法,即在一定闸门时间内测量被测信号的脉冲个数;二是间接测频法,
6、如周期测频法。2.2 设计要求1、了解频率计的基本功能和设计原理;2、设计一个频率计,能够检测由信号发生器发生的1HZ到1KHZ信号的频率;3、将测试得到的频率值用数码管实时显示出来,单位Hz。第三章 设计原理及程序3.1设计流程即电路原理图3.2各单元模块功能介绍及电路设计3.2.1分频器模块设(1)程序library IEEE; use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity fpq isport(clk: in std_logic; out1:b
7、uffer std_logic);end fpq;architecture Behavioral of fpq issignal count: integer range 0 to 25000000;beginprocess(clk)beginif(clk'event and clk='1')thencount<=count+1;if(count =20000000)thenout1<=not out1;count<=0;end if;end if;end process;end Behavioral;(2) 器件原理图(3) 程序功能解释此模块是分频
8、器电路模块,由此程序将晶振分频,得到要求频率。在本次实验中,两次用到分频器,分别将40MHz晶振分成1Hz和1000Hz。注:仿真时,为方便仿真,用5分频。3.2.2测频器(1)程序library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity cpq isport(CLK:in std_logic; CLR,LOCK,ENA:OUT STD_LOGIC);end cpq;ARCHITECTURE cpq OF cpq IS SIGNAL Y
9、:STD_LOGIC:='0' BEGIN PROCESS(CLK) BEGIN IF(CLK'EVENT AND CLK='1') THEN Y<=NOT Y; END IF; END PROCESS; PROCESS(CLK,Y) BEGIN IF(CLK='0' AND Y='0') THEN CLR<='1' ELSECLR<='0' END IF; END PROCESS; LOCK<=NOT Y;ENA<=Y; END cpq; (2)器件原理图(3
10、) 程序功能解释由闸门信号产生电路可知,闸门信号产生电路由分频器和测频器组成。时钟信号是给定的一个已知频率的信号,本设计中已知频率为1024HZ经过分频器和测频器得到频率为1HZ的闸门信号,闸门信号的CLR、ENA端和LOCK端分别控制十进制计数器和锁存器工作。3.2.3计数器(1)程序library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity art isport(clk,clr,ena: in std_logic; cq: out s
11、td_logic_vector(3 downto 0); carry_out: out std_logic);end art;architecture Behavioral of art is signal cqi: std_logic_vector(3 downto 0); begin process (clk,clr) begin if clr='1' then cqi<="0000" elsif clk'event and clk='1' then if ena='1' then if (cqi<10
12、) then cqi<=cqi+1; else cqi<="0001" end if; end if; end if; end process; process(cqi) begin if cqi="1010" then carry_out<='1' else carry_out<='0' end if; end process; cq<=cqi;end Behavioral;(2)器件原理图(3)程序功能解释闸门电路产生的CLR、ENA端分别与十进制计数器的CLR、ENA端相接。当十进制计数
13、器每接受到信号时计数器复位并启动新的计数过程。3.2.4锁存器(1)程序library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL; entity scq isport(LOCK:IN STD_LOGIC;DIN:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);end scq;ARCHITECTURE scq OF scq IS BEGIN PROCESS(LO
14、CK,DIN) BEGIN IF LOCK'EVENT AND LOCK='1' THEN DOUT<=DIN; -锁存输入数据 END IF; END PROCESS; END scq; (2) 器件原理图(3)程序功能解释闸门电路产生的LOCK端接至锁存器的LOCK端,十进制计数器输出端接至锁存器的DIN端,当锁存器接收到信号时,锁存器刷新当前结果,并将计数器新一轮计得的结果进行锁存。3.2.5扫描仪(1) 程序library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use I
15、EEE.STD_LOGIC_UNSIGNED.ALL;entity smy isPORT(CLK:IN STD_LOGIC;COUNT1,COUNT2,COUNT3,COUNT4:IN STD_LOGIC_VECTOR(3 DOWNTO 0);S:OUT STD_LOGIC_VECTOR(2 DOWNTO 0);DOUT:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); end smy;ARCHITECTURE smy OF smy IS SIGNAL DQ: STD_LOGIC_VECTOR(2 DOWNTO 0):="000" BEGIN PROCES
16、S(CLK)IS BEGIN IF CLK'EVENT AND CLK='1' THEN IF(DQ="011") THEN DQ<="000" ELSE DQ<=DQ+1; END IF; END IF; END PROCESS; PROCESS (DQ) IS BEGIN CASE DQ IS WHEN "000"=>S<="011"DOUT<=COUNT1; WHEN "001"=>S<="010"DOU
17、T<=COUNT2; WHEN "010"=>S<="001"DOUT<=COUNT3; WHEN "011"=>S<="000"DOUT<=COUNT4; WHEN OTHERS=>S<="000"DOUT<="1111" END CASE; END PROCESS; END smy; (2) 器件原理图(3) 程序功能解释锁存器将记录的结果送至扫描仪的COUNT端经扫描仪扫描由S和DOUT端分别送至数码管和38译
18、码器3.2.6连接扫描仪和38译码器子模块(1) 程序library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY S IS PORT(S: IN STD_LOGIC_VECTOR(2 DOWNTO 0); A,B,C:OUT STD_LOGIC); END S; ARCHITECTURE E OF S IS BEGIN A<=S(0);B<=S(1);C<=S(2); END E; (2)器件原理图(3) 程序功能解释连
19、接扫描仪和38译码器3.2.7数码管(1) 程序library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity SMG isPORT(NUM: IN STD_LOGIC_VECTOR(3 DOWNTO 0); A,B,C,D,E,F,G:OUT STD_LOGIC); end SMG;ARCHITECTURE ART OF SMG IS SIGNAL LED:STD_LOGIC_VECTOR(6 DOWNTO 0); BEGIN PROCES
20、S(NUM) -将二进制转化为十进制数显示 BEGIN CASE NUM IS WHEN "0000"=>LED<="1111110" WHEN "0001"=>LED<="0110000" WHEN "0010"=>LED<="1101101" WHEN "0011"=>LED<="1111001" WHEN "0100"=>LED<="0110
21、011" WHEN "0101"=>LED<="1011011" WHEN "0110"=>LED<="1011111" WHEN "0111"=>LED<="1110000" WHEN "1000"=>LED<="1111111" WHEN "1001"=>LED<="1111011" WHEN "1010"
22、;=>LED<="1111110" WHEN "1011"=>LED<="0110000" WHEN "1100"=>LED<="1001110" WHEN "1101"=>LED<="0111101" WHEN "1110"=>LED<="1001111" WHEN OTHERS=>LED<="1000111" END CA
23、SE; END PROCESS; A<=LED(6);B<=LED(5);C<=LED(4);D<=LED(3);E<=LED(2);F<=LED(1);G<=LED(0); END ART; (2) 器件原理图(3) 程序功能解释 显示数字第四章模块仿真及实物调试4.1分频器模块4.2测频器模块4.3计数器模块4.4锁存器模块4.5扫描仪模块4.6 实物调试 第五章实验小结时光荏苒,白驹过隙,经过几天的奋斗,三人一个组合,我们通过分工合作,一起努力完成了此次的EDA课程设计。 在这次课程设计的过程中,我们对 VHDL 语言有了更深的认识。通过查阅相关
24、资料和动手设计我们发现我们以前对 VHDL 语言的认识太过肤浅,认为 VHDL 语言只能用于设计小型的电路系统。但有了更深刻的认识之后我发现学好 VHDL 语言可以设计出大规模的、功能复杂的电路系统。对于这次的课程设计,我们遇到了很多问题,首先小组成员对程序进行分工,在计数器的程序上出现问题,影响了整个程序和课程设计的进程。在硬件调试的时候,对电路板的的结构和数据手册的不太熟悉,影响了我们的进程,花费了很大一部分时间研究电路板。最终在小组成员的努力下解决问题。通过这次的课程设计,我们发现了动手实践的重要性。动手实践是理论知识得以灵活运用的必要前提,也是今后走上工作岗位之后能够很好的完成设计工作的技术保证。只有遇到实际问题并根据自己对课堂上获得的专业知识的理解来解决才能真正的提高自己的能力。这也提醒我们在平时的学习生活中不能一味埋头于课本知识,当今社会竞争越来越激烈,社会对人才的要求越来越全面,只有理
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年03月安徽亳州市蒙城县就业见习人员招募125人(第二批)笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 中级网络工程师-2018年下半年(下午)《网络工程师》案例分析真题
- 金属丝绳制品项目风险评估报告
- 汽车电喷项目安全风险评价报告
- 蛋挞皮项目风险评估报告
- 公安消防部队高等专科学校《现代信息检索》2023-2024学年第一学期期末试卷
- 大学生网络安全教育主题班会课件
- 2025年安徽省高考历史模拟试卷(含答案)
- 中秋佳节合家欢乐主题班会高一上学期
- 2025进出口贸易物流清关代理合同
- 司法雇员考试题目及答案
- 2025年03月广西玉林博白县总工会社会化工会工作者13人笔试历年典型考题(历年真题考点)解题思路附带答案详解
- GB/T 37133-2025电动汽车用高压连接系统
- 2024年榆林市榆阳区公立医院招聘考试真题
- Unit 2 Go for it!Understanding ideas教学设计 -2024-2025学年外研版(2024)七年级英语下册
- 电缆桥架国标10216-2013
- 管理学基础-形考任务一-国开-参考资料
- 法律实务案例分析卷集及参考答案解析
- 小学生风电知识科普课件
- 建筑施工各岗位安全生产责任书标准范本
- 2025-2030年中国可降解塑料行业发展状况及投资前景规划研究报告
评论
0/150
提交评论