【实验二】段数码显示译码器设计教程.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA实验 【实验二】7段数码显示译码器设计 实验目的 学习7段数码显示译码器设计。 进一步熟悉VHDL设计技术,掌握CASE语句的使用。 掌握文本输入法的顶层设计方法。 实验原理 组合电路的VHDL描述 (1)实体表达 ENTITY e_name IS PORT ( p_name : port_m data_type; ... p_namei : port_mi data_type ); END ENTITY e_name; 实验原理 以关键词ENTITY引导,END ENTITY e_name 结尾的语句部分称为实体,VHDL实体描述了电路 器件的外部情况及各信号端口的基本性质。 e_name为实体名,p_name 是端口信号名, port_m 表达端口模式, 可综合的端口模式有4 种,它们分别是“IN”、“OUT”、“INOUT”和 “BUFFER”,用于定义端口上数据的流动方向和方 式。 实验原理 data_type是数据类型名。在VHDL中,预先定义 好的数据类型有多种,如整数数据类型INTEGER、 布尔数据类型BOOLEAN、标准逻辑位数据类型 STD_LOGIC(和BIT数据类型相比,STD_LOGIC 具有更宽的取值范围)和位数据类型BIT等。 实验原理 BIT数据类型的信号规定的取值范围是逻辑位‘1’ 和‘0’。在VHDL中,逻辑位0和1的表达必须加单 引号‘ ’,否则VHDL综合器将0和1解释为整数数据 类型INTEGER。 实验原理 (2)结构体表达 ARCHITECTURE arch_name OF e_name IS [说明语句] BEGIN (功能描述语句) END ARCHITECTURE arch_name ; 实验原理 关键词ARCHITECTURE引导, END ARCHITECTURE one结尾的语句部分称为结构 体,VHDL结构体负责描述电路器件的内部逻辑功 能和电路结构。 实验原理 “说明语句”包括在结构体中,用以说明和定义数据对象、数据类型、元件调用声明等。说明语句并非是必须的。 SIGNAL e : STD_LOGIC; “功能描述语句”,必须在结构体中给出相应的电路功能描述语句,可以是并行语句、顺序语句或其组合。 实验原理 进程语句和顺序语句 由PROCESS引导的语句称为进程语句。所有顺序 描述语句都必须放在进程语句中。 PROCESS(a,b,s)称为进程的敏感信号表, 通常要求把进程中的所有输入信号都放在敏感信 号表中。 实验原理 PROCESS语句的执行由敏感信号的变化启动,引 导语句被执行一遍,然后返回进程的起始端,进 入等待状态,直到下一次任意敏感信号的变化。 实验原理 7段数码显示译码器设计 7段数码显示器是纯组合电路。为了满足十六进制 数的译码显示,最方便的方法就是利用译码程序 在FPGA/CPLD中实现。7段译码器的VHDL的程 序,A[3..0]是二进制码输入端,LED7S是7段输 出信号。 实验原理 输出信号LED7S的位分别接数码管的7个段,高位 在左,低为在右。例如当LED7S输出为 “1101101”时,数码管的7个段:g、f、e、d、c、 b、a分别接1、1、0、1、1、0、1;接有高电平 的段发亮,于是数码管显示“5”。 实验内容 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY DECL7S IS PORT( A: IN STD_LOGIC_VECTOR(3 DOWNTO 0); END DECL7S; ARCHITECTURE ONE OF DECL7S IS BEGIN 实验内容 PROCESS(A) BEGIN CASE A IS WHEN 0000 = LED7S=0111111; WHEN 0001 = LED7S=0000110; WHEN 0010 = LED7S=1011011; WHEN 0011 = LED7S=1001111; WHEN 0100 = LED7S=1100110; 实验内容 WHEN 0101 = LED7S=1101101; WHEN 0110 = LED7S=1111101; WHEN 0111 = LED7S=0000111; WHEN 1000 = LED7S=1111111; WHEN 1001 = LED7S=1101111; WHEN 1010 = LED7S=1110111; WHEN 101

您可能关注的文档

文档评论(0)

挺进公司 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档