2012VHDL辅导

合集下载

第四讲VHDL语言基础知识

第四讲VHDL语言基础知识

关键词 VHDL 实体 逻辑功能
此两处必须同名
逻辑行为描述
1、实体
格式
ENTITY 实体名 IS [GENERIC ( 类属表 );] [PORT ( 端口表 );] END 实体名;
说明
实体说明所设计的逻辑电路的输入、输 出信号及其特性(输入(in)输出(out)、双向 (inout)、buffer)
•文件(FILES)是传输大量数据的客体,包含一些专门数据 类型的数值。
对象说明的一般格式是: <对象类型> < 标识符表>:<子类型说明> <信号种类>: =<表达式>; 说明 标识符 <子类型说明>是类型名或类型名加限制条件 <信号种类>为BUS或REGISTER,该项为任选项 :=<表达式>为对象赋初值
IS
一个包集合由包集合标题和包集合体两 大部分组成。 包集合体是一个可选项。
5、库
格式
LIBRARY 库名; USE 库名. 程序包名. All;
USE语句的使用有两种常用格式: USE 库名.程序包名.项目名 ; USE 库名.程序包名.ALL ;
VHDL库的种类
• IEEE库:IEEE标准库, 是按IEEE组织制定的 工业标准进行编写的, 是内容丰富的资源库 使用需声明 • •STD_LOGIC_1164 程序包 •STD_LOGIC_ARITH 程序包 •STD_LOGIC_UNSIGNED 程序包
STD库:VHDL标准库,STANDARD和 TEXTIO程序包即收入在STD库中 使用无需声明
VHDL库的种类
• • •
ASIC库:EDA厂商提供库 使用需声明 WORK库:现行作业库,当前工作目录的所有设计 使用无需声明 USER库:用户自定义库 使用需声明

VHDL语言入门教程学习教案

VHDL语言入门教程学习教案

位: ( Bit ) 取值为0和1,用于逻辑运算
TYPE BIT IS (‘0’,’1’); --
位矢量: ( Bit_Vector )
TYPE BIT_VECTOR IS ARRAY (Natural range<>) OF BIT; -- 基于(jīyú)Bit类 型的数
辑运算
第9页/共112页
第5页/共112页
第六页,共112页。
数据(shùjù)对象(Date Objects)
数据对象包括常量、变量、信号和文件四种类型。
➢ 常量(chángliàng)Constant
常量是对某一常量名赋予一个固定的值,而且只能赋值一次。通常赋值 在程序开始前进行,该值的数据类型则在说明语句中指明。
Constant 常数名:数据类型:=表达式 Constant Vcc:real:=5.0; --定义Vcc的数据类型是实数,赋值为5.0V
VHDL语言的不足之处:
设计的最终实现取决于针对(zhēnduì)目标器件的编程器,工具的不同会导致综 合质量不一样。
第3页/共112页
第四页,共112页。
3.1 VHDL语言(yǔyán)基础
标识符(Identifiers)
标识符用来定义常数、变量、信号、端口、子程序或参数的名字,
由字母(A~Z,a~z)、数字(0~9)和下划线(_)字符组成。
字符串:(String) 大V小AR写IA;BLE string_var: STRING (1 TO 7);
来,区分
string_var:=“A B C D” ;
-- 通常用“”引起(yǐnqǐ)来,区分大小写;
整数:(Integer) 取值范围 -(231-1) ~(231-1),可用32位有符号的二进制数表示 variable a:integer range -63 to 63 在实际应用中,VHDL仿真器将Integer做为有符号数处理,而VHDL综 合器将Integer做为无符号数处理; 要求用RANGE子句为所定义的数限定范围,以便根据(gēnjù)范围来 决定表示此信号或变量的二进制数的位数。

vhdl课后习题答案

vhdl课后习题答案

vhdl课后习题答案VHDL课后习题答案在学习VHDL(VHSIC Hardware Description Language)这门课程时,课后习题是巩固知识、提高能力的重要方式。

通过认真完成课后习题并查看答案,我们可以更好地理解和掌握VHDL的相关知识,提高自己的编程能力。

下面我们将通过几个典型的VHDL课后习题答案来展示VHDL的魅力和应用。

1. 课后习题一题目:使用VHDL编写一个简单的门电路,包括AND门、OR门和NOT门,并进行仿真验证。

答案:首先,我们定义AND门、OR门和NOT门的输入输出信号。

然后,使用VHDL语言编写各个门电路的逻辑实现,并进行仿真验证。

最后,我们可以观察仿真波形图,验证门电路的功能是否符合预期。

2. 课后习题二题目:使用VHDL编写一个4位全加器,并进行综合、布线和时序分析。

答案:首先,我们定义全加器的输入输出信号。

然后,使用VHDL语言编写4位全加器的逻辑实现,并进行综合、布线和时序分析。

最后,我们可以观察综合和布线报告,分析全加器的资源利用情况和时序性能。

3. 课后习题三题目:使用VHDL编写一个有限状态机(FSM),实现一个简单的计数器,并进行状态转移图和状态转移表的分析。

答案:首先,我们定义有限状态机的状态和状态转移条件。

然后,使用VHDL 语言编写有限状态机的逻辑实现,并进行状态转移图和状态转移表的分析。

最后,我们可以观察状态转移图和状态转移表,验证有限状态机的状态转移是否符合预期。

通过以上几个VHDL课后习题答案的展示,我们可以看到VHDL在数字电路设计和硬件描述方面的强大应用。

通过学习VHDL并完成课后习题,我们可以提高自己的编程能力,掌握数字电路设计的基本原理和方法。

希望大家在学习VHDL的过程中能够认真完成课后习题,并不断提高自己的编程水平。

《VHDL实用教程》完整版【汉语版】-10第八章

《VHDL实用教程》完整版【汉语版】-10第八章
可以由图文编辑器产生的或直接由用户编辑输入的 VHDL 文本送入 VHDL 编译器进行 编译 VHDL 编译器首先对 VHDL 源文件进行语法及语义检查 然后将其转换为中间数据
160
KONXIN 杭州康芯电子有限公司 KONXIN
VHDL 实用教程
格式 中间数据格式是 VHDL 源程序描述的一种内部表达形式 能够保存完整的语义信息
§ 8.1 VHDL 仿真
VHDL 源程序可以直接用于仿真 许多 EDA 工具还能将各种不同表述方法 包括图形
第8章 仿 真
159
的 或用 VHDL 本身表述 的设计文件在综合后输出以 VHDL 表述的可用于时序仿真的文 件 这是 VHDL 的重要特性 完成 VHDL 仿真功能的软件工具称为 VHDL 仿真器
158
KONXIN 杭州康芯电子有限公司 KONXIN
VHDL 实用教程
第8章 仿 真
仿真 也称模拟 Simulation 是对电路设计的一种间接的检测方法 对电路设 计的逻辑行为和运行功能进行模拟测试 可以获得许多对原设计进行排错 改进的信息 对于利用 VHDL 设计的大型系统 进行可靠 快速 全面的仿真测试尤为重要
aaa : IN std_logic; bbb : IN std_logic; ccc : OUT std_logic); END and1; ARCHITECTURE EPF10K10LC84_a3 OF and1 IS SIGNAL gnd : std_logic; SIGNAL vcc : std_logic; SIGNAL n_8, n_9, n_10, n_11, n_12, a_a4_aOUT, n_14, n_15, n_16, n_17, n_18, n_20,

(完整word版)2对4译码器VHDL实验报告.doc

(完整word版)2对4译码器VHDL实验报告.doc

通信与信息工程学院2012 /2013学年第二学期软件设计实验报告模块名称二对四译码器专业电子信息工程学生班级B100109学生学号学生姓名指导教师梅中辉、王奇、周晓燕、孔凡坤实验目的:本软件设计的目的和任务: 1.使学生全面了解如何应用该硬件描述语言进行高速集成电路设计; 2.通过软件使用、设计与仿真环节使学生熟悉 EDA-VHDL 开发环境; 3. 通过对基本题、综合题的设计实践,使学生掌握硬件系统设计方法(自底向上或自顶向下),熟悉 VHDL 语言三种设计风格,并且培养学生应用 VHDL 语言解决实际问题的能力。

实验设备: 1:微型计算机2:quartus II 开发软件实验课题: 2 对 4 译码器实验描述:设计一个 2 对 4 译码器(输入: A B 输出: Y3 Y2 Y1 Y0 ),真值表如图:A B Y3 Y2 Y1 Y00 0 1 1 1 00 1 1 1 0 11 0 1 0 1 11 1 0 1 1 1一:实验目的1:能了解组合逻辑中译码器电路的设计原理。

2:能利用 CPLD数字发展实验系统设计一个二对四译码器。

3:能自行验证所设计电路的正确性。

二:实验内容及要求设计一个 2-4 译码器,并验证输出数值的正确性。

三:实验器材1. 软件: Altera公司的Quartus ||软件。

2. 芯片: Altera公司的EP2C8T144C8。

1)、选择 Block Diagran/Schenatic File,单击 OK 按钮,打开图形2)、进入原理图编辑页面如下:导入逻辑门电路符号、输入/输出符号,用导线连接各逻辑单元如下:工程建立与编译建立工程:在 D 盘建立 test 文件夹,进入 quartusII7.2 主界面,新建编辑代码页面,选择 VHDL file ,点击 OK代码输完后存盘,文件名必需为 test8(文件名必须与实体名一致),目录为,按 project 菜单下 set as top-level entity 命令。

vhdl实验指导1-2

vhdl实验指导1-2

FPGA/CPLD Ä¿± Ð¾Æ ¬ ê PIO15-PIO8 PIO7 PIO6 PIO5 PIO4 PIO3 PIO2 PIO1 PIO0
DD11
D10
D9
¼ü 8
¼ü 7
¼ü 6
¼ü 5
¼ü 4
¼ü 3
¼ü 2
¼ü 1
ʵ µ · á ¹¼ Ñé ç ½ ¹Í NO.3
结构图NO.2 -可用于作VGA视频接口逻辑设计
结构图NO.3
-特点是有8个琴键式键控发生器,可用于设计 八音琴等电路系统。也可以产生时间长度可控的单次脉冲。
8 7 6 5 4 3 2 1 Ñï Æ ÷ Éù
PIO19-PIO16 PIO23-PIO20 PIO27-PIO24 PIO31-PIO28 PIO35-PIO32 PIO39-PIO36 PIO43-PIO40 PIO47-PIO44 D8 PIO15 D7 PIO14 D6 PIO13 D5 PIO12 D4 PIO11 D3 PIO10 D2 PIO9 D1 PIO8
结构图NO.5(续)
结构图NO.6 -电路与NO.2相似,但增加了两个4位2进制数发生器
结构图NO.7 -此电路适合于设计时钟、定时器、秒表等
8 7 6 5 4 3 2 1 扬 器 声
译 器 码
译 器 码
译 器 码
译 器 码
译 器 码
译 器 码 PIO19-PIO16 PIO23-PIO20 PIO27-PIO24 PIO31-PIO28 PIO35-PIO32 PIO39-PIO36
◆ e是琴键式信号发生器,当按下键时,输出为高电平,对应的发光管发亮;当松
开键时,输出为低电平,此键的功能可用于手动控制脉冲的宽度

《VHDL应用教程》课后习题参考答案

《VHDL应用教程》课后习题参考答案

第1章绪论1.1电子设计自动化1.2EDA技术,是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门新技术。

1.31、用软件的方式设计硬件。

2、用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的。

3、设计过程中可用有关软件进行各种仿真。

4、系统可现场编程,在线升级。

5、整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。

因此,EDA技术是现代电子设计的发展趋势。

1.4可编程逻辑器件(Programmable Logic Device,PLD)是一种由用户编程以实现某种逻辑功能的新型逻辑器件。

FPGA和CPLD分别是现场可编程门阵列和复杂可编程逻辑器件的简称。

1.51、自顶向下设计方法是一种模块化设计方法。

它对设计的描述从上到下,逐步由粗略到详细,符合常规的逻辑思维习惯。

由于高层设计与器件无关,设计易于在各种集成电路工艺或可编程器件之间移植。

2、适合多个设计者同时进行设计。

随着技术的不断进步,许多设计由一个设计者已无法完成,而必须经过多个设计者分工协作来完成。

在这种情况下,应用自顶向下的设计方法便于多个设计者同时进行设计,对设计任务进行合理分配,并用系统工程的方法对设计进行管理。

第2章可编程逻辑器件2.1按结构的复杂程度分类、按互连结构分类、按可编程特性分类、按可编程器件的编程元件分类2.2主动串行配置式、主动并行配置模式、外设配置模式、从动串行配置模式、菊花链配置模式2.31、编程单元。

查找表型FPGA的编程单元为SRAM结构,可以无限次编程,但它属于易失性元件,掉电后芯片内的信息会丢失;而CPLD则采用EEPROM编程单元,不仅可无限次编程,且掉电后片内的信息不会丢失。

VHDL习题解答

VHDL习题解答

V H D L习题解答(共15页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--VHDL 程序设计教程习题参考解答第一章习题参考答案1.什么是VHDLVHDL的实现有哪几种形态硬件描述语言(Hardware Description Language,HDL),顾名思义,是电子系统硬件行为描述、结构描述、数据流描述的语言。

VHDL语言的英文全名是Very High Speed Integrated Circuit Hardware Description Language,即超高速集成电路硬件描述语言。

2.简述VHDL的发展史。

1981年6月VHDL工作小组成立,提出了一个满足电子设计各种要求的能够作为工业标准的硬件描述语言。

1983年第三季度,由IBM公司、TI公司、Inter metrics公司签约,组成开发小组,工作任务是提出语言版本和开发软件环境。

1986年IEEE标准化组织开始工作,讨论VHDL语言标准,历时一年有余,于1987年12月通过标准审查,版本宣布实施,即IEEE STD 1076-1987。

1993年经过重新修订,发布版本,从而形成新的标准即IEEE STD 1076-1993。

2006年VHDL发布版本;2008年8月,VHDL 版本发布,解决了版本中发现的多个问题。

2009年1月,IEEE公布了VHDL 的标准版本,最新VHDL标准IEEE 1076-2008在2009年1月实施。

3. 详述VHDL设计IP模块的流程。

第1种设计形态,VHDL程序以IP模块的形态存在,VHDL-IP设计流程如图所示。

IP模块是与集成电路工艺无关的芯片设计方案,可以移植到不同的设计环境。

IP产品形态有规范,有IP包装规则和复用规则,是原生态的芯片硬件设计产品。

图 VHDL-IP设计流程4. 简答VHDL设计用FPGA实现的意义。

可编程器件FPGA具有容量大、密度高等特点,是科学实验、小批量生产、样机研制的载体。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3、一个基本的VHDL语言程序由哪两个部分构成,每个部分作用 是什么? 答:实体和构造体,实体描述外部引脚构成,构造体描述内部功 能结构。 4. 简述实体描述与原理图的关系、构造体描述与原理图的关系。 答:实体的端口描述相当于原理图器件的引脚说明,实体描述的 是器件的外部特征构造体的说明语句描述的是原理图器件的内部 逻辑关系。 5.VHDL语言构造体的描述方式有几种?每一种描述方式之间的差 异如何? 答:行为描述,RTL描述方式,结构描述方式。行为描述主要是对 系统数学模型的描述,一般进行仿真难以进行逻辑综合;RTL描述 主要是对系统内部构造与逻辑关系的描述,可以进行逻辑综合; 结构描述大量使用模块化描述方式,采用component语句,block语 句,便于实现积木化结构,能够进行逻辑综合。
18.在VHDL中,含WAIT语句的进程PROCESS的括号中后( ) 再加敏感信号,否则是非法的。 A、可以; B、不能; C、任意; D、只能 19、在VHDL的端口声明语句中,用( )声明端口为双向方向。 A、IN; B、OUT; C、INOUT; D、BUFFER 20、如果a=1,b=1,则逻辑表达式(a AND b) OR( NOT b AND
10. 进程语句是如何启动的? 答:进程由敏感信号列表中的敏感信号的变化启动。有两种格式:一种 是PROCESS(敏感信号表)IS,一种是PROCESS进程内部使用 WAIT ON语句 11.简述元件例化语句的作用、组成及格式? 答:把已经设计好的设计实体称为一个元件或一个模块,它可以被高层 次的设计调用。调用时就会用到元件声明和元件例化语句。二者缺一 不可。 元件声明格式如下 COMPONENT 元件实体名 PORT(元件端口信息); END COMPONENT; 元件例化格式如下 标号名:元件名 PORT MAP (端口列表);
6、VHDL语言的客体有哪几种?它们分别对应的物理含义 是什么? 答:VHDL语言的客体包括:信号,常数,变量。信号所指 具体中间电路的连线,引脚。常数指向具体电路中常量, 如:电源,电流等。变量随时赋值,随时改变,指向具体 电路中一些变化参数,没有具体的物理载体。 7. Bit数据类型和std_logic数据类型有什么区别。 • 答:Bit表示一位的信号值,取值只能为1或0;std-logic取 值为9值逻辑系统有1,0,高阻态等;std-logic前需要加 入下列语句:Library ieee;Use ieee.std_logic_1164.all; Bit前不需要加。
VHDL知识点3
1. 一个构造体可以使用几个子结构,即相对比较独立的几个 模块来构成。VHDL语言可以有以下3种形式的子结构描述: 语句; 语句; SUBPROGRAMS语句结构。 FPGA 和
2. 目前可编程逻辑器件的两种主要类型是 CPLD 。
3. COMPONENT语句中映射方式包括
和ห้องสมุดไป่ตู้


4. VHDL有
5. VHDL最常用的库是 。 A、IEEE;B、STD;C、WORK; D、PACKAGE。
6. 以下对于WAIT语句的使用,哪一项是正确的: (A)process(a,b) (B)process begin begin Y<= a and b; Y<=a and b; wait on a,b; wait for a,b; end process; end process; (C)process (a,b) (D)process begin begin Y<= a and b; Y<=a and b; wait for a, b; wait on a,b; end process; end process;
14. 当前最流行的并成为IEEE标准的硬件描述语言包括 _VHDL_____ 和__Verilog HDL____ 。 15. 硬件描述语言HDL给PLD和数字系统的设计带来了更新的设 计方法和理念,产生了目前最常用的并称之为自上至下 的设 计法。
16. 表示‘0’‘1’;两值逻辑的数据类型是 等九值逻辑的数据类型是_____ 。 17. VHDL程序的基本结构由 、 、 五部分组成。 ,表示‘0’‘1’‘Z’ 、 、和____
7、在下列标识符中,()是VHDL合法的标识符。 A、4h_addeB、h_adde_; C、h_adder; D、_h_adde 8、基于硬件描述语言的数字系统设计目前最常用的设计方法称为 ( ) 设计法。 A、自底向上;B、自顶向下;C、积木式;D、顶层。 9、在VHDL中,()的数据传输是立即发生的,不存在任何延时 的行为。 A、信号; B、常量; C、数据; D、变量 10、在VHDL中,()的数据传输是不是立即发生的,目标信号的 赋值需要一定的延时时间。 A、信号; B、常量; C、数据; D、变量 11、在VHDL中,为目标变量赋值的符号是( )。 A、=: ; B、= ; C、:= ; D、<= 12、VHDL的实体声明部分用来指定设计单元的( ) A、输入端口; B、输出端口; C、引脚; D、以上均可
8、简单描述信号与变量的区别。 答:信号与变量都是VHDL的客体,且在语言程序中都是作为可变 参数使用,但是二者有很大不同: 1)信号有实际的物理意义,即具体的设计系统的中间引脚;变量 则没有具体的物理意义,仅仅作为可变数学量使用。 2)在具体的进程执行过程中,信号的赋值是进程一次执行完成方 进行改变,而变量则是立即赋值,立即改变。 3)信号的赋值符号用”<=”,而变量则用”:=”. 9、 顺序语句和并行语句有什么区别?VHDL编程中需要注意些什 么? 答:并行语句主要有一般信号赋值语句、条件信号赋值语句、选 择信号赋值语句; 顺序语句主要有顺序控制语句(如:if语句、 case语句、循环语句等)和wait语句。 并行语句存在于进程外,并发执行,与语句所处的位值无关;顺 序语句存在于进程内,语句按顺序执行,与语句所处的位值有关。 VHDL编程中,顺序控制语句(如:if语句、case语句、循环语句 等)必须存在于进程内。
a)的值是 A. 0
。 B. 1 C. 2 D. 不确定
21. 如果a=1,b=0,则逻辑表达式(a XOR b) OR( NOT b AND a)的值 是 。 A. 0 B. 1 C. 2 D. 不确定
VHDL考试程序分析题举例
分析程序,写出程序具体功能。
library IEEE; begin use IEEE.std_logic_1164.all; if (clr=’1’) then use IEEE.std_logic_unsigned.all; count_6<=(other=>’0’); entity JS64 is elsif (clk’event and clk=’1’) port(clk,clr,updn: in std_logic; if (updn=’1’) then qa,qb,qc,qd,qe,qf: out std_logic); count_6<=count_6+’1’; end entity JS64; else architecture rtl of JS64 is count_6<=count_6–’1’; signal count_6:std_logic_vector(5 downto 0); end if; begin end if; qa<=count_6(0); end process; qb<=count_6(1); end architecture rtl; qc<=count_6(2); 答:该程序采用if多嵌套语句描述的是一个64进制的可逆计数器。 clk是时钟信号;clr是高电平信号有效的复位信号;UPDN为控制端, qd<=count_6(3); 当其为“1”时,进行加法计数,为“0”时进行减法计数。 qe<=count_6(4); qa,qb,qc,qd,qe,qf为6位输出位。程序第三行调用了标准逻辑无 qf<=count_6(5); process(clr,clk) is 符号程序包。构造体内部使用了进程语句。进程语句内使用if语
VHDL知识点2
1. 数100在VHDL语言中既可以表示整数又可以表示实数。 (×) 2. 在进程中任意交换语句的顺序,其执行结果不变。(×) 3. WAIT FOR 语句后面要求接敏感信号量。(×) 4. 在IF语句的条件表达式中只能使用关系运算操作及逻辑 运算操作的组合表达(√) 5. 在使用进程时,敏感信号量必须跟在PROCESS()的 括号中。(√) 6. WORK库是现行作业库。设计者所描述的VHDL语句不 需要任何说明,将都存放在WORK库中。(√) 7. 在端口方向的描述中,BUFFER定义的信号不能供构造 体再使用,而OUT定义的信号则可以再供构造体使用。 (×) 8. 一条信号代入语句,不能用一个进程来描述。(×) 9. 代入符号两边信号量只要求数据类型一致。(×) 10.VHDL语言中,逻辑运算左右有优先级别,且是从左至 右运算(×)
VHDL考试拟采用题型
• • • • • 简答题20分 填空题10分 选择题10分 程序分析题30分 编程题30分
1.课本中第八章中逻辑电路设计,是考试重点, 一些程序和类似程序会在考试中以程序分析题 和编程题形式出现。(以课本及上课PPT为参 考) 2.除了第八章外,例1-1 例1-2 例5-2 例5-5 例6-8 例6-9 例6-10 例6-12 例6-13,这些程序 也很经典,
2、VHDL 的全称是什么?利用它设计硬件电路有哪些优点? 答:VHDL 的全称Very High Speed Integrated Circuit Hardware Description Language(超高速集成电路硬件描述语言,利用 VHDL 设计硬件电路具有以下特点: (1) 设计文件齐全、方法灵活、支持广泛 (2) 系统硬件描述能力强 (3) VHDL 语言可以与工艺无关编程 (4) VHDL 语言标准、规范、易于共享和复用
相关文档
最新文档