EDA简易数字频率计课程设计说明书.doc
《EDA简易数字频率计课程设计说明书.doc》由会员分享,可在线阅读,更多相关《EDA简易数字频率计课程设计说明书.doc(22页珍藏版)》请在三一文库上搜索。
1、课程设计说明书课程设计说明书 1 1 引言 在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、 测量结果都有十分密切的关系,因此频率的测量就显得更加重要。稳定的时钟在 高性能电子系统中有着举足轻重的作用,直接决定系统性能的优劣。随着电子技 术的发展,测频系统使用时钟测频,提高频技术有了相当大的发展,但不管是何 种测频方法,1 个计数误差始终是限制测频精度进一步提高的一个重要因素。 数字频率计是数字电路中的一个典型应用,实际的硬件设计用到的器件较多, 连线比较复杂,而且会产生比较大的延时,造成测量误差、可靠性差。随着现场 可编程门阵列 FPGA 的广泛应用,以 EDA 工具作为开
2、发手段,运用 VHDL 等硬件 描述语言语言,将使整个系统大大简化,提高了系统的整体性能和可靠性。 本次课设所设计的为易数字频率计,用于测量方波信号的频率并显示测量结 果。 课程设计说明书课程设计说明书 2 2 总体介绍 2.1EDA、FPGA、VHDL 介绍 EDA 是电子设计自动化(Electronic Design Automation)的缩写,在 20 世纪 90 年代初从计算机辅助设计(CAD) 、计算机辅助制造(CAM) 、计算机辅助测试 (CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA 技术就是以计算机 为工具,设计者在 EDA 软件平台上,用硬件描述语言 HDL 完
3、成设计文件,然后 由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真, 直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。 FPGA 是英文 Field Programmable Gate Array 的缩写,即现场可编程门阵列, 它是在 PAL、GAL、EPLD 等可编程器件的基础上进一步发展的产物。它是作为 专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不 足,又克服了原有可编程器件门电路数有限的缺点。FPGA 的基本特点主要有:采 用 FPGA 设计 ASIC 电路,用户不需要投片生产,就能得到合用的芯片;FPGA 可 做其它全定制或
4、半定$0ASIC 电路的中试样片;FPGA 内部有丰富的触发器和 IO 引脚;FPGA 是 ASIC 电路中设计周期最短、开发费用最低、风险最小的器件之一; FPGA 采用高速 CHMOS 工艺,功耗低,可以与 CMOS、TTL 电平兼容。 VHDL 的英文全名是 VeryHighSpeed Integrated Circuit Hardware Description Language,诞生于 1982 年。1987 年底,VHDL 被 IEEE 和美国国防部认为标准硬 件描述语言。自 IEEE 公布了 VHDL 的标准版本,IEEE-1076(简称 87 版)之后,各 EDA 公司相继推出
5、了自己的 VHDL 设计环境,或宣布自己的设计工具可以和 VHDL 接口。此后 VHDL 在电子设计领域得到了广泛的接受,并逐步取代了原有 的非标准的硬件描述语言。1993 年,IEEE 对 VHDL 进行了修订,从更高的抽象 层次和系统描述能力上扩展 VHDL 的内容,公布了新版本的 VHDL,即 IEEE 标 准的 10761993 版本,(简称 93 版)。现在,VHDL 和 Verilog 作为 IEEE 的工业 标准硬件描述语言,又得到众多 EDA 公司的支持,在电子工程领域,已成为事实 上的通用硬件描述语言。VHDL 主要用于描述数字系统的结构,行为,功能和接 口。除了含有许多具有
6、硬件特征的语句外,VHDL 的语言形式和描述风格与句法 是十分类似于一般的计算机高级语言。VHDL 的程序结构特点是将一项工程设计, 或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部 分及端口)和内部(或称不可视部分)。在对一个设计实体定义了外部界面后,一旦 其内部丌发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成 内外部分的概念是 VHDL 系统设计的基本点。VHDL 丰富的仿真语句和库函数, 使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进 课程设计说明书课程设计说明书 3 行仿真模拟。 2.2 技术指标 2.2.1 整体功能要
7、求 本次课设所设计的简易数字频率计可用于对 1HZ-10MHZ 的方波信号进行测量, 并在 4 位数码管上显示。并且根据不同的待测方波信号,频率计分为 4 个量程进 行测量,四个量程分别为乘 1,乘 10,乘 100,乘 1000 量程。此频率计具有记忆 功能,在测量过程中不刷新数据,等数据测量过程结束后才显示测量值,显示测 量的频率值,并保存到下一次测量结束;此频率计要设有一个整体复位控制。 数字频率计的整体结构要求如图 2-1 所示。图中被测信号为外部信号,送入测 量 电路进行处理、测量,档位转换用于选择测试频率进一步选择量程。 2.2.2 设计思路 用于频率测量的方法有很多,频率测量的准
8、确度主要取决于所测量的频率范围以 及被测对象的特点。而测量所能达到的精度,不仅仅取决于作为标准使用的频率 源的精度,也取决于所使用的测量设备和测量方法。 所谓频率,就是周期性信号在单位时间(1s)内变化的次数。若在一定时间间隔 T 内 测得这个周期性信号的重复变化次数为 N,则其频率可表示为 f=N/T 。 数字频率计的主要功能是测量周期信号的频率。频率是单位时间( 1S )内信号 发生周期变化的次数。如果我们能在给定的 1S 时间内对信号波形计数,并将计 档位转换 被测信号测量电路 显示电路存储电路 图 2-1 系统结构图 课程设计说明书课程设计说明书 4 数结果显示出来,就能读取被测信号的
9、频率。数字频率计首先必须获得相对稳定 与准确的时间,同时将被测信号转换成幅度与波形均能被数字电路识别的脉冲信 号,然后通过计数器计算这一段时间间隔内的脉冲个数,将其换算后显示出来。 因此本次课设中使用 3MHZ 的 clk 作为基准频率,用于对系统计时。当对 clk 上升沿计数的同时对被测频率 clkin 出现的上升沿进行计数。若 clk 出现 3000000 个时钟上升沿时则为 1 秒钟时长,此时被测频率 clkin 出现的时钟上升沿个数即为 clkin 乘 1 档的频率值;若需测量乘 10 档的 clkin 的频率值,则当 clk 出现 300000 个时钟上升沿时为 0.1 秒钟时长,此
10、时停止对 clk、clkin 时钟上升沿的计数,此时 clkin 上升沿的个数即为乘 10 档的 clkin 频率值;同理若需测量乘 100 档的 clkin 的 频率值,则当 clk 出现 30000 个时钟上升沿时则为 0.01 秒钟时长,此时停止对 clk、clkin 时钟上升沿的计数,此时 clkin 数即为乘 100 档的 clkin 的频率值;若需 测量乘 1000 档的 clkin 频率值,当 clk 出现 3000 个时钟上升沿时则为 0.001 秒钟 时长,此时停止对 clk、clkin 时钟上升沿的计数,此时 clkin 的计数个数即为乘 1000 档的频率值。从而实现根据
11、不同的待测方波信号,频率计分为乘 1,乘 10, 乘 100,乘 1000 量程。 当测量结束后,将测量结果送入所设计的 RAM 中进行存储。若本次测量值与 上次测量值相同则直接对测量值进行存储,将测量结果存入 Mem0单元中。若不 相同,则将上次测量值存入 Mem1单元中,将本次测量结果存入 Mem0单元中。 存储结束后,若需显示本次测量结果,则直接输出 RAM 中 Mem0单元的值,若 需输出上次测量结果,则输出 RAM 中 Mem1单元的值。从而实现显示本次测量 的频率值,并保存到下一次测量结束,可以显示上次测量结果。 2.3 方案论证 本次课设中使用 3MHZ 的基准频率做为测频的时钟
12、脉冲,通过基准脉冲确定 时间,从而确定 1S 内被测 clkin 的频率,来确定被测频率的大小。通过不同的时 间量程来确定不同档位切换后该频率值大小的,来实现在不同量程下进行测量。 将被测频率送入 RAM 中存储,实现显示测量的频率值,并保存到下一次测量结束 的要求;此频率计设有一个整体复位控制,实现对存储单元以及计数单元的清零 工作。从理论上认为本次课设可行并付诸实践。 课程设计说明书课程设计说明书 5 3 单元电路设计 通过整体设计思路与可以确定本次课设的模块部分为计数单元和 RAM 存储单 元元两个基本模块。 3.1 QUARTUS 简单介绍 本次课设使用的软件为 Quartus ,以下
13、对其使用进行简单介绍。打开 Quartus 进入其主机面,在“File”菜单下选中“New Progect Wizard”选项根据 提示进行新工程的创建,需要注意顶层文件名应与工程的实体名称一致;并需注 意所选器件为“ACEX1K”系列的“EP1K30TC144-3” 。新建工程完成后新建 VHDL 文件,在“File”菜单下选中“New”选项选择“VHDL File”选项新建 完成,开始程序的编写,其程序参考附录“计数部分程序段”内容。程序编写完 成之后对其进行保存,执行“Processing” “Start Compilation”进行编译。 编译结束后,会出现对话框显示编译的错误和警告的
14、情况。若有错误,则可 以先双击编译器界面下方出现的第一个错误提示,是第一个错误处改变颜色。检 查纠正第一个错误后保存再次编译,如有错误重复上述操作,直到最后通过。最 后通过时应没有错误提示,但可以有警告。 编译结束后进行时序仿真,通过“File” “New” 选项,选择“Vector Waveform File”选项新建波形文件,如图 3-1 所示。 图 3-1 新建波形文件仿真 课程设计说明书课程设计说明书 6 在图 3-1 左侧空白处双击出现图中对话框,选择“Node Finder” ,出现 “Node Finder”对话框,单击“List”在列表中选择需要的输入输出引脚,确定选 择,对仿
15、真文件进行保存。在“Edit” “End Time”选项下可以设置仿真时间。 根据需要设置信号数值后,保存波形文件,执行“Processing” “Start Simulation”命令,进行仿真。 执行“Processing” “Greate/Updata” “Create Symbol Files For Current File” 命令,将涉及电路封装生成一个原件符号,供以后在原理图编辑器下进行 层次设计时的调用。 仿真完成之后进行引脚的锁定工作,选择“Assignments” “Pin”命令根据 弹出界面进行引脚锁定。锁定引脚完成后保存,再编译一次,把引脚锁定信息编 译进编译下载文件中
16、,就可以准备将编译好的 SOF 文件或是 POF 文件下载到 FPGA 器件中。选择“Tool” “Programmer”命令,根据弹出的编辑窗口进行下 载。下载成功之后就可以观察硬件结果是否与设计要求一致。 以上均为对 Quartus 的简要介绍,对其中各种参数的设定需深入学习并参考 部分资料。 3.2 计数单元的设计 计数单元实现本次课设所设计的简易数字频率计可用于对 1HZ-10MHZ 的方波 信号进行测量,同时可以实行不同档位下对 clkin 频率的测量。则该设计模块的封 装图如图 3-2 所示。 如图 3-1 所示,图中输入端信号:clk 为基准信号输入端,硬件模拟中使用的 基准脉冲
17、为 3MHZ 的方波信号;clkin 为被测信号输入端,输入的为 1HZ-10MHZ 的方波信号;rst 为复位信号输入端,对计数单元以及计数变量进行清零控制 rst=1 时复位信号有效;k30为量程控制信号输入端,定义其数据类型为 std_logic_logic(3 downto 0) ,当 k=“0001”时为乘 1 档量程,当 k=“0010”时为 图 3-2 计数模块 课程设计说明书课程设计说明书 7 乘 10 档量程,当 k=“0100”时为乘 100 档量程,当 k=“1000”时为乘 1000 档量 程,在引脚锁定时,将其锁定在 4 个按键上,对应按键按下时表示选择该量程。 输出
18、信号:sound 做为所测信号是否超出量程的报警信号,锁定引脚为 99 引脚, 当超出量程时,根据程序输出高低电平,控制硬件上的蜂鸣器发出声音,做为警 报,并且此时数码管输出为“FFFF” ;count130、count230、count330、 count430作为被测频率值的输出信号,分别为测量值的个位、十位、百位和千位, 定义数据类型为 std_logic_logic(3 downto 0) ;ss 作为闸门信号,当测量结束输出 测量结果时此信号输出高电平,作为下一个模块对数据存储时的闸门信号。 在模拟仿真过程中为了便于模拟与仿真,其中 CLK 仿真信号所用频率为 100000HZ 的方
19、波信号,而在实际硬件仿真中仍然使用 3MHZ 的方波信号。此次仿 真中使用的 clkin 信号为 0.1270MHZ 的方波信号,选用乘“0100”档即乘 100 档 时的仿真结果如图 3-3 所示。由图可见仿真结果为 1270*100HZ,与所设定频率吻 合,量程与设定量程吻,且当开始输出结果时 ss=1,说明计数部分电路设计成功。 为了加深验证则应进一步验证。则选用乘“1000”档即乘 1000 档时的仿真结果如 图 3-4 所示。 图 3-3 clkin 频率为 0.1270MHZ 乘 100 档时的测量结果 图 3-4 clkin 频率为 0.1270MHZ 乘 1000 档时的测量结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 简易 数字频率计 课程设计 说明书
链接地址:https://www.31doc.com/p-5014478.html