****
四选一数据选择器和基本触发器的设计
第 1页 共 15 页
四选一数据选择器和基本触发器的设计
学生姓名:****
指导老师:肖晓丽
摘 要 系统基于数据选择器及 D 触发器,JK 触发器,T 触发器的原理,使用 EDA 技
术在 FPGA 中设计了四选一数据选择器和基本触发器,采用硬件描述语言 VHDL 按模
块化方式进行设计,然后进行编程,时序仿真等。在数据选择器中,用拨码开关作四位
数据及两位控制端的输入,LED 作输出,通过拨码开关组成控制输入端 s1 和 s0 不同组
合,观察 LED 与数据输入端 a,b,c,d 的关系,验证 4 选一数据选择器设计的正确性,通
过 VHDL 语言实现了本设计的控制功能,按不同的键实现不同的功能,根据数据选择器
的特性方程设计输出状态。在基本触发器中通过 VHDL 语言实现了本设计的控制功能,
按不同的键实现不同的功能,根据三钟触发器的特性方程设计输出状态。整个系统结构
简单,使用方便,值得推广使用。
关键字 FPGA;VHDL;EDA;数据选择器;触发器
****
四选一数据选择器和基本触发器的设计
第 2页 共 15 页
目录
1 引言 .................................................................... 3
1.1 设计的目的 .........................................................3
1.2 设计的基本内容 .....................................................3
1.四选一数据选择器 .................................................3
2.基本触发器 .......................................................4
2 EDA、VHDL 简介 .......................................................... 4
2.1EDA 技术 ............................................................4
2.2 硬件描述语言——VHDL ...............................................6
3 设计规划过程 ............................................................ 7
3.1 四选一数据选择器的工作原理 .........................................7
3.2 基本触发器器的工作原理 .............................................7
3.3 课程设计中各个模块的设计 ...........................................8
1.数据选择器的设计 .................................................8
2.基本触发器的设计 .................................................9
4 结束语 ................................................................. 11
参考文献 .................................................................12
附录 .....................................................................13
****
四选一数据选择器和基本触发器的设计
第 3页 共 15 页
1 引 言
20 世纪 60 年代初,美国德克萨斯仪器公司 TI(Texas Instruments)将各种基本逻
辑电路以及连线制作在一片体积很小的硅片上,经过封装后提供给用户使用,这就是集
成电路。从先前的采用半导体技术实现的计算机到现在广泛应用的采用高集成度芯片实
现的计算机。基本门电路和数值比较器作为基本逻辑电路的 “细胞”,因而成为深入研
究和了解基本逻辑电路的基石。
计算机组成原理与设计是计算机科学与技术专业本科生的必修课程。在完成理论学
习和必要的实验后,本科学生掌握了它的基本原理和各种基本功能的应用,但对硬件实
际应用设计和其完整的用户程序设计还不清楚,实际动手能力不够,因此对该课程进行
一次课程设计是有必要的。
计算机组成原理与设计的课程设计既要让学生巩固课本学到的理论,还要让学生学
习硬件电路设计和用户程序设计,同时学习查阅资料、参考资料的方法。
计算机原理与设计的课程设计主要是通过学生独立设计方案并自己动手用计算机
电路设计软件,编写和调试用户程序,来加深对该课程的认识和理解,充分发挥我们的
个体创新能力。
1.1 设计的目的
学习基本触发器的设计,进一步了解 VHDL 语言。巩固和运用所学课程,理论联系
实际,提高分析、解决计算机技术实际问题的独立工作能力,本次设计的目的就是学习
基本触发器的设计,了解并掌握 VHDL 硬件描述语言的设计方法和思想,通过对基本触
发器的设计,巩固和综合运用所学课程,理论联系实际,提高 IC 设计能力,提高分析、
解决计算机技术实际问题的独立工作能力。通过课程设计深入理解 VHDL 语言的精髓,
达到课程设计的目标。
1.2 设计的基本内容
本设计主要是利用超高速硬件描述语言VHDL对四选一数据选择器和基本触发器电
路进行编程实现。用原理图输入法或VHDL文本输入法设计4选1数据选择器基本触发器
电路,建立4选1数据选择器和基本触发器的实验模式。通过电路仿真和硬件验证,进一
步了解4选1数据选择器和基本触发器的功能。
1. 四选一数据选择器
****
四选一数据选择器和基本触发器的设计
第 4页 共 15 页
用拨码开关作四位数据及两位控制端的输入,LED 作输出,通过拨码开关组成控制
输入端 s1 和 s0 不同组合,观察 LED 与数据输入端 a,b,c,d 的关系,验证 4 选一数据选
择器设计的正确性。
2. 基本触发器
先按键选择一种触发器(按键 0--2 分别代表 D,JK,T 触发器),再拨动拨码开关(SW0
为 D 触发器输入,SW1,SW2 为 JK 触发器输入,SW3 为 T 触发器输入),观察验证小 LED
上显示的结果。
2.1 EDA技术
2 EDA、VHDL 简介
20 世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社
会的各个领域,有力地推动了社会生产力地发展和社会信息化程度地提高,同时也使现
代电子产品性能进一步地提高,产品更新换代的节奏也越来越快。EDA 技术是伴随着
计算机、集成电路、电子系统的设可阶计发展起来的。回顾近 30 年电子设计技术的发
展历程,将 EDA 技术由浅到深分为 CAD 阶段、CAE 阶段、ESDA 段这 3 个阶段:(1) CAD
阶段。20 世纪 70 年代,随着中小规模集成电路的开发应用,传统的手工制图设计印刷
电路板和集成电路的方法已无法满足设计精度和效率的要求,因此工程师们开始进行二
维平面图形的计算机辅助设计,以便解脱繁杂、机械的版图设计工作,这就产生了第 1
代 EDA 工具— CAD(计算机辅助设计)。这是 EDA 发展的初级阶段,其主要特征是利用
计算机辅助进行电路原理图编辑,PCB 布同布线。它可以减少设计人员的繁琐重复劳动,
但自动化程度低,需要人工干预整个设计过程。这类专用软件大多以微机为工作平台,
易于学用,设计中小规模电子系统可靠有效,现仍有很多这类专用软件被广泛应用于工
程设计。(2) CAE 阶段。20 世纪 80 年代,为适应电子产品在规模和制作上的需要,应
运出现了以计算机仿真和自动布线为核心技术的第 2 代 EDA 技术,即 CAE 计算机辅助
工程设计阶段。这一阶段的主要特征是以逻辑摸拟、定时分析、故障仿真、自动布局布
线为核心,重点解决电路设计的功能检测等问题,使设计能在产品制作之前预知产品的
功能与性能,已经具备了自动布局布线、电路的逻辑仿真、电路分析和测试等功能,其
作用已不仅仅是辅助设计,而且可以代替人进行某种思维。与 CAD 相比,CAE 除了纯
****
四选一数据选择器和基本触发器的设计
第 5页 共 15 页
粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将
两者结合在一起,从而实现工程设计。(3) ESDA 阶段。20 世纪 90 年代,尽管 CAD/CAE
技术取得了巨大的成功,但并没有把人从繁重的设计工作中彻底解放出来。在整个设计
过程中,自动化和智能化程度还不高,各种 EDA 软件界面千差万别,学习使用比较困
难,并且互不兼容,直接影响到设计环节间的衔接。基于以上不足,EDA 技术继续发
展,进人了以支持高级语言描述、可进行系统级仿真和综合技术为特征的第 3 代 EDA
技术—ESDA 电子系统设计自动化阶段。这一阶段采用一种新的设计概念自顶而下(Top -
Down)的设计程式和并行工程(Concurrent Engineering)的设计方法,设计者的精力主要集
中在所要电子产品的准确定义上,EDA 系统去完成电子产品的系统级至物理级的设计。
EDA 技术主要是指面向专用集成电路设计的计算机技术, 将 EDA 技术与传统电子设
计方法进行比较可以看出,传统的数字系统设计只能在电路板上进行设计,是一种搭积
木式的方式,使复杂电路的设计、调试十分困难;如果某一过程存在错误.查找和修改
十分不便;对于集成电路设计而言,设计实现过程与具体生产工艺直接相关,因此可移
植性差;只有在设计出样机或生产出芯片后才能进行实泅,因而开发产品的周期长。而
电子 EDA 技术则有很大不同,采用可编程器件,通过设计芯片来实现系统功能。采用
硬件描述语言作为设计输入和库(LibraIy)的引入,由设计者定义器件的内部逻辑和管脚,
将原来由电路板设计完成的大部分工作故在芯片的设计中进行。由于管脚定义的灵活
性,大大减轻了电路图设计和电路板设计的工作量和难度,有效增强了设计的灵活性,
提高了工作效率。并且可减少芯片的数量,缩小系统体积,降低能源消耗,提高了系统
的性能和可靠性。能全方位地利用计算机自动设计、仿真和调试。
现代电子设计技术的核心是 EDA(Electronic Design Automation)技术,EDA 技术
就是依赖功能强大的计算机,在 EDA 工具软件平台上,对以硬件描述语言 HDL 为系统
逻辑描述手段完成的设计文件,自动地完成逻辑编译,逻辑化简,逻辑分割,逻辑综合,
结构综合,以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。EDA 是电
子设计自动化(Electronic Design Automation)的缩写,在 20 世纪 90 年代初从计算机辅
助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程
(CAE)的概念发展而来的。EDA 技术就是以计算机为工具,设计者在 EDA 软件平台
上,用硬件描述语言 HDL 完成设计文件,然后由计算机自动地完成逻辑编译、化简、
分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射
和编程下载等工作。
****
四选一数据选择器和基本触发器的设计
第 6页 共 15 页
2.2 硬件描述语言——VHDL
VHDL(Very-High-Speed Integrated Circuit HardwareDescription )语言是一种用于电
路设计的高级语言。
VHDL 主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件
特征的语句外,VHDL 的语言形式和描述风格与句法是十分类似于一般的计算机高级语
言。VHDL 的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个
电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既
涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内
部开发完成后,其他的设计就可以直接调用这个实体。
VHDL 语言有如下特点:
1.与其他的硬件描述语言相比,VHDL 行为描述能力强,是系统设计领域最佳的硬件
描述语言。强大的行为描述能力可以避开具体的器件结构,从逻辑行为上描述和设计大
规模的电子系统。
2.VHDL 有丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系
统的功能可行性,随时可对设计进行仿真模拟。
3.对于用 VHDL 完成的一个确定的设计,可以利用 EDA 工具进行逻辑综合和优化,
并自动的把 VHDL 描述设计转变成门级网表。
4.VHDL 对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最
终设计实现的目标器件是什么,而进行独立的设计。
设计流程为:
1.文本编辑:用任何文本编辑器都可以进行,也可以用专用的 HDL 编辑环境。 通
常 VHDL 文件保存为.vhd 文件。
2.功能仿真(前仿真) :将文件调入 HDL 仿真软件进行功能仿真,检查逻辑功能
是否正确。
3.逻辑综合:将源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表
达式和信号的连接关系。逻辑综合软件会生成.edf(edif)的 EDA 工业标准文件。
4.布局布线:将.edf 文件调入 PLD 厂家提供的软件中进行布线,即把设计好的逻辑
安放到 PLD/FPGA 内
****
四选一数据选择器和基本触发器的设计
第 7页 共 15 页
5.时序仿真(后仿真):需要利用在布局布线中获得的精确参数,用仿真软件验证
电路的时序。
6.编程下载:确认仿真无误后,将文件下载到芯片中。
3 设计规划过程
3.1四选一数据选择器的工作原理
数据选择器又叫“多路开关”。 数据选择器在地址控制端(或叫选择控制)的控制
下,从多个数据输入通道中选择其中一通道的数据传输至输出端。4 选 1 数据选择器的
元件符号如图*.1 所示,其中 a,b,c,d 是 4 位数据输入端,s1 和 s0 是控制输入端,y 是数
据输出端。当 s1s0=00 时,输出 y=a;s1s0=01 时,y=b;s1s0=10 时,y=c;s1s0=11,y=d。
四选一数据选择器的框图如图 3.1 所示 。
图 3.1 四选一数据选择器的框图
3.2基本触发器器的工作原理
****
四选一数据选择器和基本触发器的设计
第 8页 共 15 页
触发器是数字系统中广泛应用的能够记忆一位二进制信号的基本逻辑单元电路。
触发器具有两个能自行保持的稳定状态,用来表示逻辑“1”和“0”。在不同的输入信
号作用下其输出可以置成 1 态和 0 态,且当输入信号消失后,触发器获得的新状态能保
持下来。将 D 触发器,JK 触发器,T 触发器实行按键控制。按不同的键实现不同的功
能,根据三钟触发器的特性方程设计输出状态。基本触发器的框图如图 3.2 所示。
qq
nqnq
trigger
dd
jj
kk
tt
clkclk
key [2..0]
key [2..0]
inst
图 3.2 基本触发器器的框图
3.3课程设计中各个模块的设计
1. 数据选择器的设计
数据选择器可由 VHDL 程序来实现,下面是数据选择器的一部分 VHDL 代码:
BEGIN
s<=s1&s0;
PROCESS(s1,s0,a,b,c,d)
BEGIN
CASE s IS
WHEN "00"=>Y_TEMP<=a;
WHEN "01"=>Y_TEMP<=b;
WHEN "10"=>Y_TEMP<=c;
WHEN "11"=>Y_TEMP<=d;
WHEN OTHERS=>Y_TEMP<='X';
END CASE;
y<=Y_TEMP;
END PROCESS;
END rtl;
四选一数据选择器由 VHDL 程序实现后,其仿真图如图 3.3 所示: