教学课件:第3章VHDL基础课稿.ppt
《教学课件:第3章VHDL基础课稿.ppt》由会员分享,可在线阅读,更多相关《教学课件:第3章VHDL基础课稿.ppt(136页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章第三章 VHDL设计初步设计初步v一、程序结构一、程序结构v二、语句二、语句v三、端口信号数据类型三、端口信号数据类型v四、时序逻辑电路四、时序逻辑电路组合逻辑电路组合逻辑电路3.1 组合逻辑电路的设计(复习)组合逻辑电路的设计(复习)v组合逻辑电路的最小单元是门电路组合逻辑电路的最小单元是门电路v与门,或门,非门与门,或门,非门v与非门,或非门,异或门,与或非门与非门,或非门,异或门,与或非门v三态门,三态门,OC门门1、三输入端与非门、三输入端与非门va、逻辑函数表达式、逻辑函数表达式vb、真值表、真值表(truth table)A B CY0 0 00 0 01 10 0 10 0
2、 11 10 1 00 1 01 10 1 10 1 11 11 0 01 0 01 11 0 11 0 11 11 1 01 1 01 11 1 11 1 10 0c、逻辑符号、逻辑符号1、三输入端与非门、三输入端与非门vb、真值表、真值表(truth table)A B CY0 0 00 0 01 10 0 10 0 11 10 1 00 1 01 10 1 10 1 11 11 0 01 0 01 11 0 11 0 11 11 1 01 1 01 11 1 11 1 10 03.1 组合逻辑电路的组合逻辑电路的VHDL描述描述v1、三输入端与非门、三输入端与非门v下面给出下面给出“三输
3、入端与非门三输入端与非门”的的VHDL程序程序 三输入与非门三输入与非门VHDL程序程序vLibrary ieee;vUse ieee.std_logic_1164.all;vEntity nand3_gate1 isv port(a,b,c:in std_logic;v y:out std_logic);vEnd nand3_gate1;vArchitecture ab of nand3_gate1 isvBeginv y=not(a and b and c);vEnd ab;v(程序中的英文不区分大小写程序中的英文不区分大小写)程序结构(三输入与非门)程序结构(三输入与非门)v要求:先学会
4、看程序结构要求:先学会看程序结构 三输入与非门程序三输入与非门程序(程序结构)(程序结构)vLibrary ieee;vUse ieee.std_logic_1164.all;vEntity nand3_gate1 isv port(a,b,c:in std_logic;v y:out std_logic);vEnd nand3_gate1;vArchitecture ab of nand3_gate1 isvBeginv y=not(a and b and c);vEnd ab;v(程序中的英文不区分大小写程序中的英文不区分大小写)实体实体结构体结构体库与程序包库与程序包v书中找任意程序看书
5、中找任意程序看 程序结构程序结构三输入与非门程序三输入与非门程序(程序结构)(程序结构)vLibrary ieee;vUse ieee.std_logic_1164.all;vEntity nand3_gate1 isv port(a,b,c:in std_logic;v y:out std_logic);vEnd nand3_gate1;vArchitecture ab of nand3_gate1 isvBeginv y=not(a and b and c);vEnd ab;v(程序中的英文不区分大小写程序中的英文不区分大小写)-实体开始,实体开始,nand3_gate1是该实体名称是该实
6、体名称-结构体开始,结构体开始,ab是该结构体名称是该结构体名称-ieee库库-ieee库中的程序包库中的程序包-实体结束实体结束-结构体结束结构体结束v再在书中找任意程序看再在书中找任意程序看 程序结构程序结构 三输入与非门程序三输入与非门程序(程序结构)(程序结构)vLibrary ieee;vUse ieee.std_logic_1164.all;vEntity nand3_gate1 isv port(a,b,c:in std_logic;v y:out std_logic);vEnd nand3_gate1;vArchitecture ab of nand3_gate1 isvBeg
7、inv y=not(a and b and c);vEnd ab;v(程序中的英文不区分大小写程序中的英文不区分大小写)实体实体结构体结构体库与程序包库与程序包给定程序,学会看程序结构(要求给定程序,学会看程序结构(要求1)v程序结构程序结构有几个组成部分?有几个组成部分?v库与程序包库与程序包v实体实体v结构体结构体典型的组合逻辑电路(复习)典型的组合逻辑电路(复习)v编码器编码器v译码器译码器v数据选择器数据选择器v加法器加法器v数值比较器数值比较器v奇偶校验电路奇偶校验电路2选选1数据选择器数据选择器v给出给出2选选1数据选择器的数据选择器的VHDL程序程序v加深对程序结构的理解加深对程
8、序结构的理解vLibrary ieee;v;vEntity mux21b isv port(a,b,s:in std_logic;v y:out std_logic);vEnd mux21b;vArchitecture ab of mux21b isvBeginv y=a when s=0 elsev b;vEnd ab;学会编写程序学会编写程序(要求(要求2)v用用VHDL语言编写语言编写三输入端与非门三输入端与非门v在编写此程序(第一个)时,学习编写程序在编写此程序(第一个)时,学习编写程序的方法,学习程序中的细节的方法,学习程序中的细节v(1)画出电路的端口信息画出电路的端口信息v(2)
9、写出电路的真值表)写出电路的真值表v(3)写程序)写程序v这里要求教师板书这里要求教师板书v同时请同学们跟着教师,在笔记上练习写程同时请同学们跟着教师,在笔记上练习写程序序画出电路的端口信息画出电路的端口信息写出电路的真值表写出电路的真值表A B CY0 0 00 0 01 10 0 10 0 11 10 1 00 1 01 10 1 10 1 11 11 0 01 0 01 11 0 11 0 11 11 1 01 1 01 11 1 11 1 10 0写程序写程序v写程序时要记得写程序时要记得 程序结构程序结构v程序结构中的程序结构中的v实体:对应实体:对应 电路端口信息电路端口信息 实体
10、由实体由 端口信号名称端口信号名称 端口模式端口模式 端口数据类型端口数据类型 构成构成v程序结构中的程序结构中的v结构体结构体 对应对应 真值表真值表v实体:描述电路端口信息实体:描述电路端口信息 v结构体结构体 描述电路功能描述电路功能实体(三输入与非门程序)实体(三输入与非门程序)vEntity nand3_gate1 isv port(a,b,c:in std_logic;v y:out std_logic);vEnd nand3_gate1;实体(三输入与非门程序)实体(三输入与非门程序)vEntity nand3_gate1 isv port(a,b,c:in std_logic;
11、v y:out std_logic);vEnd nand3_gate1;实体开始实体开始的关键字的关键字实体名称,也是程实体名称,也是程序的存盘名序的存盘名 实体(三输入与非门程序)实体(三输入与非门程序)vEntity nand3_gate1 isv port(a,b,c:in std_logic;v y:out std_logic);vEnd nand3_gate1;端口端口3根输入端名称根输入端名称 端口模式端口模式 端口数据类型端口数据类型 实体(三输入与非门程序)实体(三输入与非门程序)vEntity nand3_gate1 isv port(a,b,c:in std_logic;v
12、 y:out std_logic);vEnd nand3_gate1;端口端口1根输出端名称根输出端名称 端口模式端口模式 端口数据类型端口数据类型 实体(三输入与非门程序)实体(三输入与非门程序)vEntity nand3_gate1 isv port(a,b,c:in std_logic;v y:out std_logic);vEnd nand3_gate1;端口结束端口结束 实体结束实体结束 实体名称实体名称 v一条语句的结束标志是一条语句的结束标志是 ;实体(三输入与非门程序)实体(三输入与非门程序)v三输入与非门程序的实体三输入与非门程序的实体还可以写成:还可以写成:vEntity
13、nand3_gate1 isv port(a:in std_logic;v b:in std_logic;v c:in std_logic;v y:out std_logic);vEnd nand3_gate1;端口信号名称端口信号名称 端口模式端口模式 端口数据类型端口数据类型 结构体结构体v结构体结构体 描述电路功能描述电路功能结构体(三输入与非门程序)结构体(三输入与非门程序)vArchitecture ab of nand3_gate1 isvBeginv y=not(a and b and c);vEnd ab;结构体开始结构体开始的关键字的关键字结构体的名结构体的名称称指明是哪个实
14、指明是哪个实体的结构体体的结构体结构体(三输入与非门程序)结构体(三输入与非门程序)vArchitecture ab of nand3_gate1 isvBeginv y=not(a and b and c);vEnd ab;Architecture语句语句下必须有下必须有begin程序格式程序格式Begin后面的语后面的语句表示电路的逻句表示电路的逻辑功能辑功能结构体(三输入与非门程序)结构体(三输入与非门程序)vArchitecture ab of nand3_gate1 isvBeginv y=not(a and b and c);vEnd ab;Begin后面的语后面的语句表示电路的逻
15、句表示电路的逻辑功能辑功能此处的逻辑功能此处的逻辑功能是用是用逻辑函数表逻辑函数表达式达式表示的表示的结构体(三输入与非门程序)结构体(三输入与非门程序)vArchitecture ab of nand3_gate1 isvBeginv y=not(a and b and c);vEnd ab;Begin后面的语后面的语句表示电路的逻句表示电路的逻辑功能辑功能逻辑功能结束逻辑功能结束Architecture语句语句结束。结束。练习(练习(学会编写程序学会编写程序)v用用VHDL语言编写异或门程序语言编写异或门程序v(1)v(2)v(3)练习(练习(学会编写程序学会编写程序)v用用VHDL语言编
16、写半加器语言编写半加器v(1)v(2)v(3)设计设计2选选1数据选择器数据选择器v(1)画出电路的端口信息画出电路的端口信息v(2)写出电路的真值表)写出电路的真值表v(3)写程序)写程序逻辑功能的描述有:逻辑功能的描述有:v逻辑函数表达式逻辑函数表达式v真值表真值表v逻辑符号逻辑符号学习新语句(要求学习新语句(要求3)v现在想学习现在想学习 根据真值表根据真值表 写程序写程序v不写表达式不写表达式v必须学习必须学习VHDL语言中的新的语句语言中的新的语句新语句用在哪里?新语句用在哪里?v新语句新语句v用在结构体中的电路逻辑功能的描述上用在结构体中的电路逻辑功能的描述上v整个程序框架,用整个
17、程序框架,用VHDL编写电路的方法编写电路的方法 v不变不变例例1:设计:设计2选选1数据选择器数据选择器v同时学习同时学习 when else 语句语句v(1)画出电路的端口信息画出电路的端口信息v(2)写出电路的真值表)写出电路的真值表v(3)写程序)写程序例例2:用:用when-else语句设计半加器语句设计半加器v解:解:v(1)画出电路的端口信息画出电路的端口信息v(2)写出电路的真值表)写出电路的真值表v(3)写程序)写程序v(3)写程序写程序vLibrary ieee;v;vEntity hadd1 isv port(a,b:in std_logic;v s,c:out std_
18、logic);vEnd hadd1;vArchitecture ab of hadd1 isvBeginv s=0 when a=b elsev 1;v c=1 when(a=1 and b=1)elsev 0;vEnd ab;v(程序中的英文不区分大小写程序中的英文不区分大小写)要求掌握的知识点要求掌握的知识点v端口数据类型端口数据类型vVHDL程序由几个部分组成?程序由几个部分组成?v端口模式端口模式v端口信号名起名的规则端口信号名起名的规则v文件存盘名是什么?有没有规定?文件存盘名是什么?有没有规定?vwhen else 语句语句v关系表达式关系表达式vStd_logicv库与程序包库与
19、程序包+实体实体+结构体结构体vIn outv(C的规则)的规则)v文件存盘名必须是实体名。实体名尽量与电文件存盘名必须是实体名。实体名尽量与电路的功能符合,便于以后使用路的功能符合,便于以后使用v第第9章、第章、第10章目录章目录 P331P63vEntity mux21a isv port(a,b,s:in bit;v y:out bit);vEnd mux21a;vArchitecture ab of mux21a isvBeginv y=a when s=0 elsev b;vEnd ab;v端口数据类型端口数据类型 bit,std_logicv端口数据类型为端口数据类型为 Bit 时
20、,程序结构:时,程序结构:v实体实体+结构体结构体v端口数据类型为端口数据类型为 std_logic 时,程序结构:时,程序结构:v库与程序包库与程序包+实体实体+结构体结构体v端口数据类型:端口数据类型:bitvBit的取值的取值 0 或或1vBit数据类型能否模拟所有的电路状况?数据类型能否模拟所有的电路状况?v电路出现故障时?电路出现故障时?v端口数据类型:端口数据类型:std_logic(P69)v9种取值,与实际电路相接近种取值,与实际电路相接近v端口数据类型不同,程序结构不同端口数据类型不同,程序结构不同一、程序结构一、程序结构v端口数据类型:端口数据类型:bitv std_log
21、icv端口数据类型不同,程序结构不同端口数据类型不同,程序结构不同小结小结v掌握了写掌握了写VHDL程序的步骤(思维过程)程序的步骤(思维过程)v掌握了掌握了 语句(语句(when else 语句)语句)v掌握了掌握了 至少两个电路至少两个电路v例例3:用用VHDL语言编写语言编写4选选1数据选择器程序数据选择器程序4选选1数据选择器数据选择器(when else)vLibrary ieee;vUse ieee.std_logic_1164.all;vEntity mux41a isv port(s0,s1:in std_logic;v d0,d1,d2,d3:in std_logic;v y
22、:out std_logic);vEnd mux41a;vArchitecture ab of mux41a isvBeginv y=d0 when(s0=0 and s1=0)elsev d1 when(s0=1 and s1=0)elsev d2 when(s0=0 and s1=1)elsev d3;v End ab;v八选一数据选择器?八选一数据选择器?v十六选一数据选择器十六选一数据选择器v六十四选一数据选择器?六十四选一数据选择器?v数据总线数据总线标准逻辑矢量标准逻辑矢量 数据类型数据类型vstd_logic_vector(3 Downto 0)v将将4根根 std_logic的
23、数据结合在一起的数据结合在一起v用总线形式重新编写用总线形式重新编写v用用VHDL语言编写语言编写4选选1数据选择器程序数据选择器程序4选选1数据选择器数据选择器(when else)vLibrary ieee;vUse ieee.std_logic_1164.all;vEntity mux41a isv port(s:in std_logic_vector(1 downto 0);v d0,d1,d2,d3:in std_logic;v y:out std_logic);vEnd mux41a;vArchitecture ab of mux41a isvBeginv y=d0 when s=
24、“00”elsev d1 when s=“01”elsev d2 when s=“10”elsev d3;vEnd ab;v一、程序结构一、程序结构v二、语句二、语句v三、端口信号数据类型三、端口信号数据类型组合逻辑电路组合逻辑电路二、语句二、语句v并行语句并行语句 when-elsev并行语句并行语句 信号赋值语句信号赋值语句v顺序语句顺序语句 if语句语句v顺序语句顺序语句 case语句语句二、语句二、语句1、when-else语句语句v例例4:用:用when-else语句编写语句编写8/3线优先编码器线优先编码器v(1)画出电路的端口信息画出电路的端口信息v(2)写出电路的真值表)写出电
25、路的真值表v(3)写程序)写程序二、语句二、语句1、when-else语句语句v(3)写程序)写程序vLibrary ieee;vUse ieee.std_logic_1164.all;vEntity pencoder1 isv port(i7,i6,i5,i4,i3,i2,i1,i0:in std_logic;v d:out std_logic_vector(2 downto 0);vEnd pencoder1;vArchitecture ab of pencoder1 is vBeginv d=“111”when i7=1 elsev “110”when i6=1 elsev “101”w
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学 课件 VHDL 基础课
限制150内