当前位置:文档之家› 现代数字系统设计方法

现代数字系统设计方法

PORT ( setup_k : IN STD_LOGIC; adjust_k : IN STD_LOGIC; clk : IN STD_LOGIC; clr : IN STD_LOGIC; LEDout : OUT STD_LOGIC_VECTOR(0 to 6); SCAN : OUT STD_LOGIC_VECTOR(0 to 3); alarm : OUT STD_LOGIC
(1)按键消抖电路
A
T2
T4
Setup_k和adjust_k都需要一同步 消抖电路,如右图所示:
T1
单个按键消抖VHDL程序如下:
ENTITY ksy IS
T3
PORT(A:IN std_logic;
B:IN std_logic;
B
C:OUT std_logic);
END ksy
ARCHITECTURE ksy_arc ksy IS
COMPONENT knand2 IS
PORT(A,B:IN std_logic;
C:OUT std_logic); END COMPONENT;
SIGNAL T1,T2,T3,T4,T5,T6:std_logic; BEGIN
U0:knand2 PORT MAP(A,T1,T2);
C T6
T5
五 、各个功能模块的具体实现(续)
越紧密、协调,以求数字系统获
得良好的性能和正确的结果。
四、现代数字系统设计流程 计算机辅助分析与设计(CAD)
早期电子设计自动化(EDA) 近期EDA工具
从上层系统级开始,对电路功 能描述,从上至下地跨越各个 层次完成整个设计。
近几年来,综合、验证等都由 EDA完成。EDA软件还在优化、 发展,使从上至下的设计方法得 到广泛的应用。
END key_debounce;
ARCHITECTURE key_arc OF key_debounce IS COMPONENT ksy IS PORT( A,B:IN STD_LOGIC; C:OUT STD_LOGIC); END COMPONENT;
(2)第一次按setup键,系统进入小时 设置状态。此状态下按adjust键进行小时的 校正。
(3)第二次按setup键,系统进入分钟 设置状态。此状态下按adjust键进行分钟的 校正。
(4)第三次按setup键,系统键入闹钟 小时部分设定状态,此时显示上次存储的闹 钟时间,并可按adjust键设置新的闹钟的小 时。
END digitaຫໍສະໝຸດ _);clock1;三、顶层结构体的设计及VHDL实现
从上至下的精神是将系统划分为几个部分,如不同的功能模块。 (1)首先系统需要一个分频模块,提供系统其他模块所需要的时钟信号。 (2)其次,系统有一个控制模块,控制电子钟的不同模式之间的转换。 (3)电子钟需要进行计时,因此有一个计数模块。 (4)电子钟要显示时间,因此有一个显示模块。 (5)按键消抖模块。
现代数字系统设计方法
现代数字系统设计方法
从上至下(from top to down):
优点:
设计者从整个系统逻辑出发,进行最上层的系统设计,而后按一定的原则
将全局系统分成若干子系统,逐级向下,再将适每合个大子规系模统数分字为系若统干系个统功设能计模,块、
子模块、基本模块。
使得设计步骤之间相互联系越来
(4)系统需要一个复位键以便恢复 到初始状态和系统复位。
输出电路:
(1)时间显示采用6位7段数码管,因此系统输出有7位段选LEDout[0..6] 和3位位选信号SCAN[0..2]。
(2)当闹钟定时到时,需要一个指示信号alarm。
数字钟工作过程如下:
(1)系统复位后为正常计时状态,此 时adjust键无效;
四 、各个功能模块的具体分析(续)
(4)计时模块。
计时模块有 哪些输入和 输出信号?
四 、各个功能模块的具体分析(续)
(5)显示模块。
显示模块有 哪些输入和 输出信号?
clk_dis没有在分频 模块中产生!
四 、各个功能模块的具体分析(续)
(6)修改相关模块。
新建输出端口
五 、各个功能模块的具体实现
(1)按键消抖电路(续)
ENTITY key_debounce IS
PORT (
setup_k : IN STD_LOGIC; adjust_k : IN STD_LOGIC; clock_deb : IN STD_LOGIC; k_setup : OUT STD_LOGIC; k_adjust : OUT STD_LOGIC );
(5)第四次按setup键,系统进入闹钟 分钟部分设定状态,并可按adjust键设置新 的闹钟的分钟。
(6)第五次按setup键,系统回到正常计时状态。
二、顶层实体的VHDL程序
第一步:为系统建立系统名。 第二步:描述顶层的接口,包括输入信号、 输出信号、信号方向、数据类型等。
LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY digital_clock1 IS
四 、各个功能模块的具体分析
(1)按键消抖模块。由于按键产生引起电平抖动,最好加入同步消抖电路。
按键消抖模块有 哪些输入和输出
信号?
四 、各个功能模块的具体分析(续)
(2)分频模块。
系统需要几 种时钟信号?
分频模块有 哪些输入和 输出信号?
四 、各个功能模块的具体分析(续)
(3)控制模块。
控制模块有 哪些输入和 输出信号?
分),附加要求能够实现闹钟功能(定时,闹响),以及提示功能(如校 时的字符闪烁)。
输入电路:
(1)开始进行计时前,需要对数字 钟进行设置,因此需要一个setup键,用 来选择系统的不同状态。
(2)当数字钟进入校时或者闹钟定 时状态后,需要调整时间,需设置一个 adjust键。
(3)数字钟需要一个时钟脉冲信号 给系统提供计时时基和系统其他部分所 需的同步时钟。
例:24进制数字钟的设计
下面讨论一个24进制数字钟系统,用它了解 从上至下的设计概念和方法。
设计步骤: 1.系统级分析,确定初步方案; 2.将设计细分,进行模块划分; 3.VHDL综合.
一、24进制数字数字钟顶层设计 1.顶层方案设计 系统具有24小时计数显示(HH-MM-SS),并具有校时功能(时,
相关主题