- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2010年 春 季学期创新研修课程考核
(读书报告、研究报告)
考核科目 :SOPC(片上可编程系统)及EDA技术 学生所在院(系) :电气工程及其自动化学院 学 生 姓 名 : 学 号 : 考核结果 阅卷人
第 1 页 (共 页)
基于VHDL语言的十进制计数显示设计
1 引言
我们熟知的各种数字系统终端设备都需要对于十进制的信息进行数码显示,从万用表,电压源等等仪器仪表到生活中的各种电气设备,其中最常用的显示器件就是LED和LCD。在大规模可编程逻辑器件FPGA的硬件基础上,根据译码器原理运用VHDL语言对十进制计数译码显示电路进行了设计,同时通过Quartus II 8.0的软件开发环境对设计电路进行了仿真,同时下载到课程所发的实验箱中验证了硬件功能。
2 十进制译码器显示的原理
计数器是一种中规模的集成电路,其种类繁多,不但可以实现计数分频,而且可以实现测量、运算、定时、延时等等控制功能。目前各类计数器均有典型产品,二进制计数器74LS161、十进制计数器74LS90、十六进制计数器74LS191等。
十进制计数器的工作原理,同二进制计数器相比较为复杂。一般分析步骤是:
(1)从逻辑图上得出每个触发器的输入信号表达式;
(2)将上述表达式带入 各触发器的状态方程,得到表示该计数器工作状态的状态方程;
(3)根据状态方程得到计数器的状态转换表;
(4)判断计数器的功能;
图1 为由D触发器组成的四位数码计数电路图
在上图所示的同步十进制加法计数器中有:
将上述关系代入各JK触发器的特征方程,则计数器的状态方程为:
设计数器初始状态为0000,第一个计数脉冲来到后有:
即计数器的状态为0001。同理计数可得,第2个计数脉冲来到后,状态为0010,类推可得到表1所示的状态转换表。由于是这里是十进制计数器,所以在计数器状态为1001时,即计数为9时需要跳过后面的6个状态,在下一个脉冲到来时,状态变为0000,完成一次十进制计数循环。
表1 同步十进制加法计数器状态表
计数 Q4Q3Q2Q1 十进制数 0 0000 0 1 0001 1 2 0010 2 3 0011 3 4 0100 4 5 0101 5 6 0110 6 7 0111 7 8 1000 8 9 1001 9 10 1010 X 11 1011 X 12 1100 X 13 1101 X 14 1110 X 15 1111 X 其中利用开发箱上的开关1作为计数脉冲给出端,开关2作为清零信号给出端,显示由7段LED给出,计数与数码显示所需七位二进制数对应关系表2所示:
表2 7段数码管显示对应二进制数
计数值 数码管对应七位二进制数 0000 1111110 0001 0110000 0010 1101101 0011 1111001 0100 0110011 0101 1011011 0110 0011111 0111 1110000 1000 1111111 1001 1111011 其他 0000000
3 程序框图及程序清单
根据上述原理,利用VDHL语言在Altera公司研发的Quartus II的仿真环境中进行程序设计。
程序流程图如下:
图2 十进制显示计数器程序流程图
按上述流程图在用VHDL语言在仿真环境里的编程代码如下:
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity rr is port(
rst,clk:in std_logic;
y:out std_logic_vector(13 downto 0));
end rr;
architecture Behavioral of rr is
signal oc:std_logic;
signal data:std_logic_v
文档评论(0)