南理工EDA2实验报告 优秀 - 图文(2)

2019-03-05 21:11

个时刻,只有一位数(4bits)能被数据选择器选中并送至显示译码器,8片数码管中也只有一块被使能显示该位数值。经过模8计数器一个周期后,所有的数值均在对应的数码管上显示一次,当扫描电路的时钟信号足够快时,人眼由于视觉暂留的效果看到8个数码管同时在亮。该电路在完美实现显示功能前提下,大大节省了资源,提高了FPGA资源的利用率。 整点报时功能则是组合逻辑电路的应用之一,根据卡诺图方法,得到报时方程,然后用门电路将蜂鸣信号输出到蜂鸣器即能实现整点报时功能。

闹钟设定和响铃主要由两部分构成,一是闹钟设定以及显示电路,而是响铃电路。闹钟设定以及显示电路主要涉及到显示电路的复用问题,而设定电路则与计时电路类似,由模24和模60计数器构成。响铃电路则用到比较器,将计时电路的时、分和闹钟设定电路的时、分比较,二者相等的时候则输出蜂鸣信号,驱动蜂鸣器工作。

LED点阵电路主要是用VHDL语言编写,用汉字字库提取软件得到某个汉字的行列信息并转换为二进制,由于该实验箱的LED 16*16点阵模块是串入数据,并出显示,故还需编写一个并串转换电路,将刚才的汉字数据转换为串行数据输出到LED点阵数据输入端,同样采用的扫描显示原理,点阵电路每接收32个二进制数据,则将其按行显示,当扫描时钟足够快,16个周期后,就能将改字符完整的显示出来。

1.3 子模块设计原理

1.3.1 脉冲信号发生电路

该实验平台已经提供了48MHz的时钟频率,而计时电路所用的时钟是1Hz的信号,蜂鸣器蜂鸣信号也需要500和1000Hz的信号,故需要用分频电路对48MHz信号进行分频得到所需信号。为提高电路设计的简便性和准确性,该分频电路主要有二分频、三分频、十分频等电路模块组装而成:

二分频电路就是一个D触发器,其原理图电路见图3-1-1。

图3-1-1 二分频原理图电路

三分频电路则用到了74160计数器,利用74160的异步清零端,在0011时立即跳转回到0000,将第二位QB作为输出信号即实现三分频功能,其原理图见图3-1-2。

5

图3-1-2 三分频原理图电路

十分频电路类似于三分频电路,利用74163的同步置数端,为实现接近50%的占空比,将最高位QD作为输出端,0000~0100五种状态下输出为0,0100后跳转至1011,后面1011~1111五种状态下输出为1,这样就完美的实现了50%占空比的十分频功能,其原理图电路见图3-1-3。

图3-1-3 十分频原理电路图

在这三个基础的分频器电路基础上,将三个二分频电路和一个三分频电路级联即可得到24分频电路,将三个十分频电路级联即可得到1000分频电路,由于最终要实现48,000,000分频,在Quartus II 软件上仿真比较困难,故我们只有对每一块仿真,只要24、48、10分频电路均正确,则最终得到的总的分频电路是不会有问题的。24分频和10分频电路的仿真结果见图3-1-4和图3-1-5。

图3-1-4 24分频电路波形仿真图

6

图3-1-5 10分频电路波形仿真图

将各个模块成功设计后,我们便能得到最终的分频电路,原理电路图见图3-1-6。输入48MHz时钟信号后便能得到所需要的1Hz、2Hz、500Hz、1000Hz时钟信号。

图3-1-6 总分频电路

相比较于原理图设计,用VHDL语言设计分频电路则方便地很多,而且稍加改动便能得到所需的分频电路,由此可见VHDL语言设计的优越性——简单方便、更容易实现。通用的分频电路VHDL语言为: library ieee;

use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity vhdldiv is

generic( N1:integer:=48; M1:integer:=24); port(

clki:in std_logic; en:in std_logic; clko:out std_logic );

end entity;

architecture d of vhdldiv is

signal count :integer range 0 to N1; begin

process(clki,en,count) begin

if en='1' then

if rising_edge(clki) then

7

if count=N1-1 then count<=0; else count<=count+1; end if; end if; end if;

end process;

clko<='1' when count

当中N1为分频后一个周期包含的CLK数量,M1为一个周期中为高电平的CLK数量。将其分装后,稍微修改M1、N1后即可以随意使用。封装结果和实际应用见图3-1-7.

图3-1-7 VHDL编写分频器封装结果和实际应用

1.3.2 二十四小时计时电路

二十四小时计时电路主要分三块:时、分、秒,分别为模24和模60计数器,每个计数器均由两块74160BCD码计数器组成,分别对应两位数字的十位和个位。计数器分别有时钟输入端CLK、异步清零端CLR、使能端EN和计满进位端Qc。模60和模24计数器的原理图电路见图3-2-1和图3-2-2.

图3-2-1 模60计数器原理图电路

8

图3-2-2 模24计数器原理图电路

对两电路分别进行波形仿真发现成功实现计数、使能、清零和进位功能。两种电路的波形仿真结果分别见图3-2-3和3-2-4.

图3-2-3 模60计数器波形仿真结果

图3-2-4 模24计数器波形仿真结果

在此基础上,将模24和两块模60级联就能得到基本的计时电路。原理电路图见图3-2-5.

图3-2-5 基本计时电路

1.3.3 快速校分校时电路

快速校分(时)电路主要涉及到两个问题:一是校分(时)开关打开后分(时)电路使能计数,其他模块暂停计数;二是,校分(时)开关打开后,分(时)电路时钟信号为2Hz。 问题一通过基本的门电路就能实现,mincheck、houcheck分别为校分、校时开关信号,nmincheck、nhoucheck分别为校分、校时开关取反信号,secc、minc分别为秒钟计满进位信号,当总使能信号为高,校分、校时开关为低时,秒钟正常计时;当校分开关为高或者秒钟计满进位,且未校时时,分钟使能计时;当校时开关为高或者分钟计满进位,且未校分时,时钟使能计时。实现电路见图3-3-1.

9


南理工EDA2实验报告 优秀 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:编者按为了更好地做到全局统一认识

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: