EDA设计 六位频率计的设计 精品.doc_第1页
EDA设计 六位频率计的设计 精品.doc_第2页
EDA设计 六位频率计的设计 精品.doc_第3页
EDA设计 六位频率计的设计 精品.doc_第4页
EDA设计 六位频率计的设计 精品.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

EDA技术课程设计报告六位频率计的设计一 概述 1.1设计背景及意义 技术是以大规模为设计载体,以硬件语言为系统逻辑描述的主要方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计,通过有关的开发软件,自动完成用软件设计的系统到硬件系统的设计,最终形成集成电子系统或专用的一门新技术。其设计的灵活性使得EDA技术得以快速发展和广泛应用。在电子领域内,频率是一种最基本的参数,并与其他许多电参量的测量方案和测量结果都有着十分密切的关系。由于频率信号抗干扰能力强、易于传输,可以获得较高的测量精度。因此,频率的测量就显得尤为重要,测频方法的研究越来越受到重视。频率计作为测量仪器的一种,常称为电子计数器,它的基本功能是测量信号的频率和周期频率计的应用范围很广,它不仅应用于一般的简单仪器测量,而且还广泛应用于教学、科研、高精度仪器测量、工业控制等其它领域。在数字电路中,数字频率计属于时序电路,它主要由具有记忆功能的触发器构成。在计算机及各种数字仪表中,都得到了广泛的应用。在CMOS电路系列产品中,数字频率计时量程最大、品种很多的产品,是计算机、通讯设备、音频视频的科研生产领域不可缺少的测量仪器,并且与许多电参量的测量方案、测量结果都有十分密切的关系。因此,频率的测量就显得更为重要。本设计设计6位频率计,以触发器和计数器为核心,由信号输入、触发、计数、数据处理和数据显示等功能模块组成。本次采用QuartusII的宏元件和VHDL语言设计两种方法来设计6位频率计,提高了测量频率的范围。 1.2设计任务与要求1.21设计任务:采用原理图设计并制作六位十进制频率计,用VHDL语言方法设计并制作六位十六进制频率计。 1.22设计要求:a) 参考信号频率为1Hz;b) 测量频率范围:六位十进制频率计:1Hz100kHz; 六位十六进制频率计:1Hz4MHz;c) 结果能用数码显示器显示二 六位频率计的工作原理2.1频率计的设计框图数字频率计的关键组成部分包括测频控制、锁存器、译码驱动和显示电路,其原理框图如图1所示。2.2频率计的工作原理根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1秒的输入信号脉冲计数允许的信号;1秒计数结束后,计数值锁入锁存器的锁存信号并为下一测频计数周期作准备的计数器清零信号。三 六位频率计的设计与仿真3.1六位十进制频率计的设计与仿真3.1.1 2位十进制计数器的设计与仿真 利用Quartus软件平台,建立工作目录,创建工程,构建电路图如图(3-1)所示:图(31)二位十进制计数器电路图 完成构建电路图后,进行编译和仿真测试,以了解设计结果是否满足设计需求,其仿真波形图如图(32)所示:图(32) 二位十进制计数器的仿真波形图 74390连接成两个独立的十进制计数器,CLK通过一个与门进入74390的计数器“1”端的时钟输入端1CLKA。与门的另一端由计数使能信号end控制:当end=1时允许计数,当end=0时禁止计数。 3.1.2时序控制器的设计与仿真 在原理图编辑框中根据图(34)完成电路设计,该电路由4位二进制计数器7493、416译码器74154和两个由双与非门构成的RS触发器。 图34 时序控制器的电路图时序控制器的仿真时序波形图 如图(35)所示: 图35时序控制器的仿真波形图3.1.3 顶层元件的设计和仿真 构建顶层文件,创建新的工程,工程命名为TOP,顶层原理图文件名为TOP.bif。在元件输入窗口的本工程目录中找到已包装好的2位十进制计数器和时序控制器,调入原理图的编辑窗中,然后构建原理图 如图37所示: 图 3-7 顶层文件原理图顶层文件的仿真波形图如图(3-8)所示:图 3-8 顶层文件的仿真波形图(二)六位十六进制频率计的设计与仿真1.测频控制电路VHDL描述;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY FTCTRL IS PORT (CLKK:IN STD_LOGIC; T_EN:OUT STD_LOGIC; RST_T:OUT STD_LOGIC; LOAD:OUT STD_LOGIC); END FTCTRL;ARCHITECTURE behav OF FTCTRL IS SIGNAL Div2CLK: STD_LOGIC;BEGIN PROCESS (CLKK) BEGIN IF CLKKEVENT AND CLKK = 1 THEN Div2CLK = NOT Div2CLK; END IF;END PROCESS;PROCESS (CLKK, Div2CLK)BEGIN IF CLKK = 0 AND Div2CLK = 0 THEN RST_T = 1; ELSE RST_T = 0; END IF;END PROCESS;LOAD = NOT Div2CLK; T_EN = Div2CLK;END behave测频控制电路仿真波形图如图3-9所示: 图(3-9)2.二十四位锁存器VHDL源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY REG24B IS PORT ( LK: IN STD_LOGIC; DIN: IN STD_LOGIC_VECTOR (23 DOWNTO 0); DOUT:OUT STD_LOGIC_VECTOR(23 DOWNTO 0);END REG24B;ARCHITECTURE behav OF REG24B ISBEGIN PROCESS (LK, DIN) BEGIN IF LKEVENT AND LK =1 THEN DOUT = DIN; END IF; END PROCESS;END behav 二十四位锁存器仿真波形图如图3-10所示: 图(3-10)3.二十四位计数器VHDL源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY COUNTER24B IS PORT (FIN: IN STD_LOGIC; CLR: IN STD_LOGIC; ENABL: IN STD_LOGIC; DOUT: OUT STD_LOGIC_VECTOR(23 DOWNTO 0);END COUNTER24B;ARCHITECTURE behav OF COUNTER24B IS SIGNAL CQI: STD_LOGIC_VECTOR(23 DOWNTO 0);BEGIN PROCESS (FIN,CLR,ENABL) BEGIN IF CLR = 1 THEN CQI 0); ELSIF FINEVENT AND FIN =1 THEN IF ENABL = 1 THEN CQI = CQI + 1; END IF; END IF; END PROCESS; DOUT CLK1HZ, T_EN = TSTEN1,RST_T = CLR_T1, LOAD = LOAD1); U2: REG24B PORT MAP(LK = LOAD1, DIN = DTO1, DOUT =DOUT); U3: COUNTER24B PORT MAP(FIN = FSIN, CLR = CLR_T1,ENABL = TSTEN1, DOUT = DTO1);END struc;频率计顶层设计仿真波形图如图3-12所示: 图(3-12)四 调试过程、测试结果及分析(一)六位十进制频率计的调试过程、测试结果与分析 打开六位十进制频率计的工程TOP,将输入、输出信号锁定在芯片的引脚上,确定锁定引脚编号后进行引脚锁定操作。 图4-1引脚锁定对话框引脚锁定完成后对配置文件进行下载 图4-2 配置文件下载 对话框调试过程:(1)测频控制电路调试:观察输出的波形。enb输出的是时钟信号clk的16分频信号,而清零信号clr和锁存信号输出的都是时钟信号clk的二分频信号。(2)计数器电路调试:观察输出波形,使能信号enb为高电平1时开始计数,时钟信号出现上升沿,输出信号q自加一,当计满9时,进位信号cout1产生1段高电平,当清零信号clr为高电平1时,输出q清零,使能信号为低电平0时,输出q停止计数。(3)综合电路调试:观察波形图,实验设置的被测信号clk1与对比信号clk的比为10:1,输出a从000000计数到000080,以此循环计数,锁存信号b一直处于000080。在源程序的编写过程中,由于语句遗漏、单词拼写错误、分号遗漏这些因粗心大意引起的错误,而导致一些不必要的错误。表1 六位十进制频率计的测试结果CLK1=1Hz(测试门限为8s)clk1Hz10Hz100Hz1kHz10kHz100kHz测试结果880800800080000800000分析:(1)测频控制电路中计数器时钟信号enb、计数器清零信号clr和输出锁存信号lock。首先是7493这个器件,可以相当于4个二分频电路,QA是二分频、QB是四分频、QC是八分频、QD是十六分频,所以QD端产生的信号频率就是计数器使能信号的频率。锁存信号lock就是当计数器计满一个周期时锁存计数结果,锁存信号频率也要和计数器周期频率保持一致。而清零信号仅仅在计数初期出现一段清零。(2)计数器电路满足的就是计数功能,当时钟信号clk出现上升沿,并且计数器使能信号enb为高电平时,计数器自加1,当使能信号为低电平0时,停止计数,并且保持不变;当清零信号clr为高电平1时,计数器清零。当计数器计满9时,进位信号出现高电平1。(3)综合电路要求就是能够对频率进行循环计数。实验结果与真实值存在8倍的关系,这于实验中所选的器件有关系,在上面所讲的7493的作用,而计数器的使能信号就是时钟信号clk的十六分频信号QD,而能够计数的信号又是使能信号的一半,所以实验结果与真实值存在8倍的关系。(二)六位十进制频率计扩展功能的调试过程、测试结果与分析调试过程:把测频控制电路进行改进或者更换,改进就是将T_EN的输入设置为:,更换就是换成如图2所示的电路。其他调试过程都保持不变。 表2 六位十进制频率计的测试结果CLK1=1Hz(测试门限为1s)Clk1Hz10Hz100Hz1kHz10kHz100kHz测试结果110100100010000100000分析:把T_EN的输入设置为:,这样就把时钟信号clk与计数器使能信号enb之间的频率比值定为1:0.5,然而实现计数的使能信号与时钟信号的频率比值为1:1。(三)六位十六进制频率计的调试过程、测试结果及分析打开目录工程,将输入、输出信号锁定在芯片的引脚上,确定锁定引脚编号后进行引脚锁定操作。图4-2引脚锁定对话框引脚锁定完成后对配置文件进行下载: 图4-3 配置文件下载对话框调试过程:(1)测频控制调试:波形显示时钟使能信号t_en和输出锁存信号load都是时钟信号的二分频信号清零信号rst-en也按规律显示。(2)24位锁存器调试:波形显示时钟信号lk出现上升沿时,就把此状态下的计数器的值赋给输出dout信号。(3)计数器调试过程与原理图中的计数器相似,唯一的区别就是当计数器计满F时,进位信号才会出现高电平,其他的调试过程都一样。(4)顶层电路调试:设置时钟时,被测信号的周期clk1与对比信号clk的周期比是10:1。结果显示的数据用十六进制来显示。在这些调试过程中出现的问题,比如原理图连线出现短接、导线接触不良、license参数、而导致的一系列错误。通过耐心解决,最终达到了实验要求。 表3 六位十六进制频率计的测试结果CLK1=1Hz(测试门限为1s)clk1Hz10Hz100Hz1kHz10kHz100kHz1MHz2MHz4MHz测试结果1A643E82710186A0F42401E84803D0900分析:(1)测频控制电路输出的3个信号必须满足要求。程序实现的就是两个功能,二分频和产生计数器清零信号,若时钟信号clk和时钟使能信号enb都为低电平0时,则产生的清零信号clr为高电平1,否则为低电平0。(2)锁存器的作用就是将计数器的数据锁存到输出信号dout中,当锁存信号出现上升沿时,将此刻的计数器的数据赋给输出信号dout,其他时刻保持不变。(3)计数器的功能和原理图中的计数器功能几乎一样,只是计数显示方式不同,原理图是十进制计数显示,VHDL程序是十六进制计数显示;第二就是进位不同,原理图是满9才出现高电平进位信号,VHDL程序是满E才出现高电平进位信号。其他原理都相同。(4)顶层电路调试:观察波形图,实验设置的被测信号与对比信号的比为10:1,因此输出为00000A。五 课程设计体会 在一个多月的EDA课程学习中我收获诸多。在这次课程设计中我主要负责电路图的构建和EDA硬件实验部分,期间我和搭档也遇到许多问题,在老师和同学的指导和帮助下,自身的努力下最终得到解决。此次设计进一步加深了对EDA的了解,让我对它有了更加浓厚的兴趣。特别是当每一个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论