24小时制时钟—EDA课程设计报告

更新时间:2024-06-13 19:33:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

石家庄铁道大学

EDA课程设计报告

24小时制数字钟

学院 电气与电子工程学院 专业 电子信息专业 班级 电0904-2班 学号 20092360 学生姓名 指导教师 赵晓博

课程成绩 完成日期 2012年3月30日

石家庄铁道大学

数字钟设计与制作

2

课程设计任务书

电气与电子工程学院 电子信息专业 课程名称 学生姓名 题 目 主要内容: 本课程设计主要是利用硬件描述语言VHDL的设计思想,采用自顶向下的方法、划分模块来设计数字钟的几个模块。通过课程设计深入理解计算机的基本原理和方法,加深对计算机组成的理解。 要求: 1. 具有时、分、秒计数显示功能,且以24小时循环计时。 2. 具清零的功能,且能够对计时系统的小时、分钟进行调整。 3. 具有整点报时功能。 扩展: 1. 设置启/停开关。当按下启/停开关,将启动时钟开始计时,当再按一下启/停开关时,将终止计时操作。 2. 计时精度为1s。 3. 复位开关可以在任何情况下使用,即便在计时过程中,只要按一下复位开关,计时器就清零,并做好下次计时的准备。 4. 随意给定频率能分频至1s。

EDA课程设计 数字钟的设计与制作 时间 2011~2012学年第二学期2~6周 赵晓博 指导老师 石家庄铁道大学

数字钟设计与制作

3

数字钟的设计与制作

学生姓名: 指导老师:赵晓博

摘 要 系统使用EDA技术设计了数字钟,采用硬件描述语言VHDL按模块化方式进行设计,然后进行编程,时序仿真等。利用VHDL语言完成了数字钟的设计。该数字钟能实现时、分、秒计数的显示功能,且以24小时循环计时,具清零的功能,且能够对计时系统的小时、分钟进行调整,具有整点报时功能。整个系统使用方便,功能齐全,精度高,具有一定的开发价值。

关键字 数字钟;EDA;VHDL;

石家庄铁道大学

数字钟设计与制作

4

目录

1引言 .......................................................................5

1.1课题的背景、目的......................................................5 1.2设计的内容............................................................5 2 EDA、VHDL简介 .............................................................6

2.1EDA技术...............................................................6 2.2硬件描述语言——VHDL..................................................6

★VHDL的简介 .........................................................6 ★VHDL语言的特点 .....................................................7 ★VHDL的设计流程 .....................................................7

3 数字钟设计.................................................................8

3.1数字钟的工作原理......................................................8 3.1数字钟的实现流程......................................................8 3.2晶体振荡器...........................................................12 3.3分频电路.............................................................12 3.2部分程序实现.........................................................12 4 系统仿真..................................................................22

1.小时24制电路仿真图 ...................................................22 2.分钟59电路仿真图 .....................................................23 3.秒59制电路仿真图 .....................................................23 4.59转码电路仿真图.....................................................233 5.24转码电路仿真图......................................................24 6.动态扫描电路仿真图 ....................................................24 7.整点报时电路仿真图 ....................................................25 结束语......................................................................26 致谢........................................................................26 参考文献....................................................................26 附录........................................................................27

石家庄铁道大学

数字钟设计与制作

5

随着社会的发展,科学技术也在不断的进步。特别是计算机产业,可以说是日新月异,数字钟作为计算机的一个组成也随之逐渐进入人们的生活,从先前的采用半导体技术实现的数字钟到现在广泛应用的采用高集成度芯片实现的数字钟。数字钟正在向着功能强,体积小,重量轻等方向不断发展,本设计主要介绍的是一个基于超高速硬件描述语言VHDL对数字钟中显示电路进行编程实现。

近年来,集成电路和计算机应用得到了高速发展,现代电子设计技术已迈入一个崭新的阶段,具体表现在:(1)电子器件及其技术的发展将更多地趋向于为EDA服务;(2)硬件电路与软件设计过程已高度渗透;(3)电子设计技术将归结为更加标准、规范的EDA工具和硬件描述语言VHDL的运用;(4)数字系统的芯片化实现手段已成主流。因此利用计算机和大规模复杂可编程逻辑器件进行现代电子系统设计已成为电子工程类技术人员必不可少的基本技能之一。

1 引 言

1.1课题的背景、目的

本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,了解EDA技术,加深对计算机体系结构的理解。通过学习的VHDL语言结合电子电路的设计知识理论联系实际,掌握所学的课程知识,学习VHDL基本单元电路的综合设计应用。通过对实用数字钟的设计,巩固和综合运用计算机原理的基本理论和方法,理论联系实际,提高IC设计能力,提高分析、解决计算机技术实际问题的独立工作能力。通过课程设计深入理解计算机的组成原理,达到课程设计的目标。

1.2 设计的内容

利用VHDL设计数字钟显示电路的各个模块,并使用EDA工具对各模块进行仿真验证。数字钟显示电路的设计分为下面几个模块:秒计数模块、分计数模块、小时计数模块、整点报时.、动态扫描显示、转码、分频。完成以后把各个模块

石家庄铁道大学

数字钟设计与制作

6

整合后,显示相应的输出状态。

2 EDA、VHDL简介

2.1 EDA技术

EDA是电子设计自动化(Electronic Design Automation)缩写,EDA是以计算机为工具,根据硬件描述语言HDL( Hardware Description language)完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布局布线、仿真以及对于特定目标芯片的适配编译和编程下载等工作。典型的EDA工具中必须包含两个特殊的软件包,即综合器和适配器。综合器的功能就是将设计者在EDA平台上完成的针对某个系统项目的HDL、原理图或状态图形描述,针对给定的硬件系统组件,进行编译、优化、转换和综合,最终获得我们欲实现功能的描述文件。综合器在工作前,必须给定所要实现的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用一定的方式联系起来。

2.2 硬件描述语言——VHDL

★ VHDL的简介

VHDL的英文全名是Very-High-Speed Integrated Circuit

HardwareDescription Language,诞生于1982年。1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言 。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,

石家庄铁道大学

数字钟设计与制作

7

已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。

★ VHDL语言的特点

1.用VHDL代码而不是用原理图进行设计,意味着整个电路板的模型及性能可用计算机模拟进行验证。

2.VHDL元件的设计与工艺无关,与工艺独立,方便工艺转换。 3.VHDL支持各种设计方法,自顶向下、自底向上或者混合的都可以。 4.可以进行从系统级到逻辑级的描述,即混合描述。

5.VHDL区别于其他的HDL,已形成标准,其代码在不同的系统中可交换建模。

★ VHDL的设计流程 1.设计规范的定义

明确这个系统有哪些设计要求,和你要想到达的目标。 2.采用VHDL进行设计描述

这部分包括设计规划和程序的编写。设计规划主要包括设计方式的选择及是否进行模块划分。设计方式一般包括直接设计,自顶向下和自底向下设计,这个和其他软件语言差不多。最重要还是模块划分。 3.VHDL程序仿真

4.综合、优化和布局布线

综合指的是将设计描述转化成底层电路的表示形式,其结果是一个网表或者是一组逻辑方程;优化,这个主要是为了提高程序的执行效率及减少资源的利用;布局布线,指的是将逻辑关系转化成电路连接的方式。 5.仿真

石家庄铁道大学

数字钟设计与制作

8

这个与VHDL程序仿真不同,这个不仅是对逻辑方面的验证,还要进行时序功能验证。 6.器件编程

3 数字钟设计

3.1数字钟的工作原理

数字钟是一个将“ 时”,“分”,“秒”显示于人的视觉器官的计时装置。它的计时周期为24小时,显示满刻度为23时59分59秒,另外应有设置启/停开关。当按下启/停开关,将启动数字钟开始计时,当再按一下启/停开关时,将终止数字钟操作。复位开关可以在任何情况下使用,即便在数字中工作过程中,只要按一下复位开关,数字钟就清零,并做好下次工作的准备。具清零的功能,且能够对数字钟系统的小时、分钟进行调整。具有整点报时功能等附加功能。因此,一个基本的数字钟电路主要由译码显示器、“时”,“分”,“秒”,计数器、校时电路、报时电路和振荡器组成。干电路系统由秒信号发生器、“时、分、秒”计数器、译码器及显示器、校时电路、整点报时电路组成。秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,一般用石英晶体振荡器加分频器来实现。将标准秒信号送入“秒计数器”,“秒计数器”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲。“分计数器”也采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时计数器”。“时计数器”采用24进制计时器,可实现对一天24小时的累计。

3.2数字钟的实现流程

晶体震荡电路 20M 分频电路 1Hz 石家庄铁道大学

数字钟设计与制作

9

动态扫描: 思路一:

位选信号

时十位 时个位 分十位 分个位 秒十位 秒个位 译码驱动 段选信号

小时转码 分转码 秒转码 小时计数0~24 分计数0~59 秒计数0~59 晶体震荡电路 20M 分频电路 1Hz 石家庄铁道大学

数字钟设计与制作

10

思路二:

秒个位计数 0~2 秒个位计数 0~9 秒个位计数 0~5 秒个位计数 0~9 秒个位计数 0~5 秒个位计数 0~9 20M 1Hz

晶体震荡电路 分频电路

石家庄铁道大学

数字钟设计与制作

11

报时:

否 是

调整小时、分钟

否 调整键 是

否 是 调整键

数字钟工作 分、秒为 0 驱动报时 数字钟工作 按下 按下 加1调整 石家庄铁道大学

数字钟设计与制作

12

3.2晶体振荡器

晶体振荡电路是构成数字式时钟的核心,它保证了时钟走时准确及稳定。晶体振荡器它的作用是产生时间标准信号。数字钟的精度主要取决于时间标准信号的频率及其稳定度。因此,一般采用石英晶体振荡器经过分频得到这一信号。

3.3分频器电路

分频器电路将20MHZ的高频方波信号经20M次分频后得到1Hz的方波信号供秒计数器进行计数。分频器实际上也就是计数器。

3.4 部分程序实现 思路一实现:

(1)具有调整功能的24、59进制程序

LIBRARY IEEE ;

USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY cnt24 IS PORT( CLK1,RES,EN,KONGZHI,CLK2: IN STD_LOGIC;

COUNT:

OUT STD_LOGIC_VECTOR(4 DOWNTO 0);

END;

CQ : OUT STD_LOGIC);

ARCHITECTURE behav OF cnt24 IS

SIGNAL CLK : STD_LOGIC; BEGIN

PROCESS(CLK1,EN,KONGZHI,RES) VARIABLE CQI:STD_LOGIC_VECTOR(4 DOWNTO 0);

BEGIN

CASE KONGZHI IS WHEN '0'=> CLK <=CLK1; WHEN '1'=> CLK <=CLK2; WHEN OTHERS =>CLK<='0'; END CASE;

IF RES='1' THEN CQI:=\

ELSIF CLK'EVENT AND CLK='1' THEN

石家庄铁道大学

数字钟设计与制作

13

IF EN='1' THEN

IF CQI<24 THEN CQI:=CQI+1; ELSE CQI:=(OTHERS=>'0'); END IF; END IF;

END IF;

IF CQI=24 THEN CQ<='1'; ELSE CQ<='0'; END IF; COUNT<=CQI;

END PROCESS; END behav;

(2)具有清零 暂停、复位功能的59进制程序

LIBRARY IEEE ;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY cnt59m IS PORT( CLK,STOP,RES,EN: IN STD_LOGIC; COUNT: OUT STD_LOGIC_VECTOR(5 DOWNTO 0); CQ : OUT STD_LOGIC); END;

ARCHITECTURE behav OF cnt59m IS SIGNAL CK : STD_LOGIC; BEGIN PROCESS(CLK,EN,STOP,RES) VARIABLE CQI:STD_LOGIC_VECTOR(5 DOWNTO 0); BEGIN CK<=(CLK OR STOP); IF RES='1' THEN CQI:=\ ELSIF CK'EVENT AND CK='1' THEN IF EN='1' THEN

IF CQI<59 THEN CQI:=CQI+1; ELSE CQI:=(OTHERS=>'0'); END IF; END IF; END IF; IF CQI=59 THEN CQ<='1'; ELSE CQ<='0'; END IF; COUNT<=CQI; END PROCESS;

石家庄铁道大学

数字钟设计与制作

14

END behav;

(3)转码功能程序

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL; USE IEEE.STD_LOGIC_ARITH.ALL;

ENTITY zhuanma IS PORT(SHURU: IN INTEGER RANGE 0 TO 59; GE : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); SHI : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END;

ARCHITECTURE bahave OF zhuanma IS BEGIN PROCESS(SHURU) BEGIN CASE SHURU IS WHEN 0|10|20|30|40|50 => GE <=\ WHEN 1|11|21|31|41|51 => GE <=\ WHEN 2|12|22|32|42|52 => GE <=\ WHEN 3|13|23|33|43|53 => GE <=\ WHEN 4|14|24|34|44|54 => GE <=\ WHEN 5|15|25|35|45|55 => GE <=\ WHEN 6|16|26|36|46|56 => GE <=\ WHEN 7|17|27|37|47|57 => GE <=\ WHEN 8|18|28|38|48|58 => GE <=\ WHEN 9|19|29|39|49|59 => GE <=\ WHEN OTHERS => GE <=\ END CASE; CASE SHURU IS WHEN 0|1|2|3|4|5|6|7|8|9 => SHI <=\ WHEN 10|11|12|13|14|15|16|17|18|19 => SHI <=\ WHEN 20|21|22|23|24|25|26|27|28|29 => SHI <=\ WHEN 30|31|32|33|34|35|36|37|38|39 => SHI <=\ WHEN 40|41|42|43|44|45|46|47|48|49 => SHI <=\ WHEN 50|51|52|53|54|55|56|57|58|59 => SHI <=\ WHEN OTHERS => SHI <=\ END CASE; END PROCESS; END bahave;

(4)动态扫描程序

石家庄铁道大学

数字钟设计与制作

15

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY dtsm IS

PORT(CLK : IN STD_LOGIC;

SR1 : IN STD_LOGIC_VECTOR(3 DOWNTO 0); SR2 : IN STD_LOGIC_VECTOR(3 DOWNTO 0); SR3 : IN STD_LOGIC_VECTOR(3 DOWNTO 0); SR4 : IN STD_LOGIC_VECTOR(3 DOWNTO 0); SR5 : IN STD_LOGIC_VECTOR(3 DOWNTO 0); SR6 : IN STD_LOGIC_VECTOR(3 DOWNTO 0); WEI : OUT STD_LOGIC_VECTOR(5 DOWNTO 0); DUAN : OUT STD_LOGIC_VECTOR(7 DOWNTO 0));

END;

ARCHITECTURE behave OF dtsm IS SIGNAL cnt6 : STD_LOGIC_VECTOR(2 DOWNTO 0); SIGNAL A :STD_LOGIC_VECTOR(3 DOWNTO 0);

BEGIN

P1 : PROCESS(cnt6)

BEGIN CASE cnt6 IS WHEN \ <=SR1; WHEN \ <=SR2;

WHEN \ <=SR3; WHEN \ <=SR4; WHEN \ <=SR5; WHEN \ <=SR6; WHEN OTHERS => NULL;

END CASE; END PROCESS P1; P2 : PROCESS(CLK) BEGIN

IF CLK'EVENT AND CLK = '1' THEN IF cnt6<6 THEN cnt6<=cnt6+1; ELSE cnt6<=(OTHERS=>'0');

--IF cnt4 =\ --cnt4<=\ --ELSE cnt4<=cnt4+1; END IF;

END IF;

END PROCESS P2; P3: PROCESS(A)

石家庄铁道大学

数字钟设计与制作

16

BEGIN

CASE A IS WHEN \ WHEN \ WHEN \

WHEN \WHEN \WHEN \WHEN \WHEN \WHEN \WHEN \

WHEN OTHERS =>NULL; END CASE;

END PROCESS P3; END behave;

(5)具整点报时程序

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY baoshi IS PORT(CLK :IN STD_LOGIC; FENZHONG : IN STD_LOGIC_VECTOR(5 DOWNTO 0);

XIAOSHI : IN STD_LOGIC_VECTOR(4 DOWNTO 0); CQ : OUT STD_LOGIC);

END;

ARCHITECTURE behav OF baoshi IS

BEGIN

PROCESS(CLK)

VARIABLE FENBIAN :STD_LOGIC_VECTOR(10 DOWNTO 0); VARIABLE EN :STD_LOGIC;

BEGIN

FENBIAN(0):=FENBIAN(0);

FENBIAN(1):=FENBIAN(1); FENBIAN(2):=FENBIAN(2); FENBIAN(3):=FENBIAN(3); FENBIAN(4):=FENBIAN(4); FENBIAN(5):=FENBIAN(5); FENBIAN(6):=XIAOSHI(0); FENBIAN(7):=XIAOSHI(1); FENBIAN(8):=XIAOSHI(2);

石家庄铁道大学

数字钟设计与制作

17

FENBIAN(9):=XIAOSHI(3);

FENBIAN(10):=XIAOSHI(4); CASE FENBIAN IS WHEN \ WHEN OTHERS => EN :='0'; END CASE;

IF EN='1' THEN CQ<=CLK; END IF;

END PROCESS; END behav;

思路二实现:

(1)非压缩BCD码的24、59进制程序

library ieee;

use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity Minute is port(clk:in std_logic; clk2:in std_logic; tiao:in std_logic;

clr:in std_logic;

qh,ql:out std_logic_vector(3 downto 0); co:out std_logic );end;

architecture a of Minute is

signal zqh,zql:std_logic_vector(3 downto 0); signal clk_temp: std_logic; begin

process(clk,clk2,tiao,clk_temp) variable co_temp: std_logic;

石家庄铁道大学 数字钟设计与制作

18

begin

if tiao='1' then clk_temp<=clk2; co<='0'; else

clk_temp<=clk; co<=co_temp; end if; if clr='1' then zqh<=\ zql<=\ co<='0';

elsif clk_temp'event and clk_temp='1' then if zqh=\ zqh<=\ zql<=\ co_temp:='1'; elsif zql=\ zql<=\ else zql<=zql+1; co_temp:='0'; end if; end if; end process; qh<=zqh; ql<=zql; end;

石家庄铁道大学

数字钟设计与制作

19

(2)动态扫描程序

library ieee;

use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity scan is

port( clk: in std_logic;

sh: in std_logic_vector(3 downto 0); sl: in std_logic_vector(3 downto 0); mh: in std_logic_vector(3 downto 0); ml: in std_logic_vector(3 downto 0); hh: in std_logic_vector(3 downto 0); hl: in std_logic_vector(3 downto 0); leda:out std_logic;

xuan0:out std_logic; xuan1:out std_logic; xuan2:out std_logic; xuan3:out std_logic; xuan4:out std_logic; xuan5:out std_logic

ledb:out std_logic; ledc:out std_logic; ledd:out std_logic; lede:out std_logic; ledf:out std_logic; ledg:out std_logic;

石家庄铁道大学

数字钟设计与制作

20

); end scan;

architecture behvd of scan is

SIGNAL xuan: std_logic_vector(5 downto 0); signal qtemp: std_logic_vector(2 downto 0); signal num: std_logic_vector(3 downto 0); signal led: std_logic_vector(6 downto 0); begin

p1:process (clk) begin

if (clk'event and clk= '0') then if( qtemp < 5) then qtemp <=qtemp+1; else

qtemp <= \ end if; end if;

end process;

p2:PROCESS(qtemp,sh,sl,mh,ml,hh,hl) begin

case qtemp is

when \ when \ when \

石家庄铁道大学

数字钟设计与制作

21

when \ when \ when \ when others =>xuan<=\ end case; end process; p3:process(num) begin case num is

when \ when \ when \ when \ when \ when \ when \ when \ when \ when \ when others => null; end case; end process; xuan0<=xuan(0); xuan1<=xuan(1); xuan2<=xuan(2); xuan3<=xuan(3); xuan4<=xuan(4);

石家庄铁道大学

数字钟设计与制作

22

xuan5<=xuan(5);

ledg<=led(0); ledf<=led(1); lede<=led(2); ledd<=led(3); ledc<=led(4); ledb<=led(5); leda<=led(6); end behvd;

4 系统仿真

1.秒表计数器电路仿真图

秒表计数器电路仿真图如图4.1:将标准秒信号送入“秒计数器”,“秒计数器”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲。

图4.1 秒计数器电路仿真图

2 小时计数器电路仿真图

时计数器电路仿真图如图4.2:“时计数器”采用24进制计时器,可实现对一天24小时的累计。

石家庄铁道大学

数字钟设计与制作

23

图4.2 小时计数器电路仿真图

3分计数器电路仿真图

分计数器电路仿真图如图4.3:“分计数器”也采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时计数器”。

图4.3 分计数器电路仿真图

4 59转码电路仿真图

59转码电路仿真图如图4.4:输入0~59,输出十位、个位。为动态扫描输入提供可能性。

石家庄铁道大学

数字钟设计与制作

24

图4.4 59转码电路仿真图

5 24转码电路仿真图

24转码电路仿真图如图4.5:输入0~24,输出十位、个位。为动态扫描输入提供可能性。

图4.5 59转码电路仿真图

6 动态扫描代码

动态扫描电路仿真图如图4.6:输入0~9 进行转码是能用数码管显示。由位选与段选信号控制。

图4.6 59转码电路仿真图

石家庄铁道大学

数字钟设计与制作

25

7 整点报时代码

整点报时仿真图如图4.7:每到整点时时钟报时。

图4.7 整点报时仿真图

石家庄铁道大学

数字钟设计与制作

26

结束语

通过几个星期的紧张工作,最后完成了我的设计任务——数字钟的设计与制作。通过本次课程设计的学习,我深深的体会到设计课的重要性和目的性所在。本次设计课不仅仅培养了我们实际操作能力,也培养了我们灵活运用课本知识,理论联系实际,独立自主的进行设计的能力。它不仅仅是一个学习新知识新方法的好机会,同时也是对我所学知识的一次综合的检验和复习,使我明白了自己的缺陷所在,从而查漏补缺。希望学校以后多安排一些类似的实践环节,让同学们学以致用。

课程设计中要求要有耐心和毅力,还要细心,稍有不慎,一个小小的错误就会导致结果的不正确,而对错误的检查要求我要有足够的耐心,通过这次设计和设计中遇到的问题,也积累了一定的经验,对以后从事集成电路设计工作会有一定的帮助。在应用VHDL的过程中让我真正领会到了其并行运行与其他软件(C语言)顺序执行的差别及其在电路设计上的优越性。用VHDL硬件描述语言的形式来进行数字系统的设计方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发成本,这种设计方法必将在未来的数字系统设计中发挥越来越重要的作用。

致 谢

本课程设计在选题和设计过程中得到了赵晓博老师的悉心指导,赵老师多次

询问课程设计进程,并多次指导我对课程设计进行修改,帮助我完善了该课程设计。在此对赵老师表示衷心的感谢。

参考文献

[1] 杨刚 VHDL数字控制系统设计 北京:电子工业出版社 2004 [2] 曾繁泰 VHDL程序设计 北京:清华大学出版社 2001 [3] 黄仁欣 DEA技术使用教程 北京:清华大学出版社 2006 [4] 曹欣燕 DEA技术实验与课程设计 北京:清华大学出版社 2006

石家庄铁道大学

数字钟设计与制作

27

本文来源:https://www.bwwdw.com/article/lk36.html

Top