EDA技术与应用3.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA技术与应用3.ppt

第3章 VHDL 本章概要:本章介绍硬件描述语言VHDL的语言要素、程序结构以及描述风格,并介绍最基本、最典型的数字逻辑电路的VHDL描述,作为VHDL工程设计的基础。 ?知识要点: (1)VHDL设计实体的基本结构。 (2)VHDL的语言要素。 (3)用VHDL实现各种类型电路及系统的方法。 (4)VHDL设计流程 3.1 VHDL基本知识 关于符号的一些说明: 语句结构描述中,方括号“[ ]”内的内容为可选内容,“{ }”内的内容为可重复选项。 对于VHDL的编译器和综合器来说,程序文字的大小写是不加区分的。教材中对于关键字使用大写,其余用小写。 为了使程序结构清晰,易于阅读与调试,书写和输入程序时,使用层次缩进格式,同一层次的语句对齐,低层次的语句较高层次缩进两个字符。 程序中的注释使用双横线”--“。在VHDL程序的任何一行中,双横线”--“后的文字都不参加编译和综合。 USE语句的使用有两种格式 USE 库名. 程序包名. 项目名; USE 库名. 程序包名. ALL; 例: LIBRARY IEEE USE IEEE.STD_LOGIC_1164.ALL 描述器件的输入、输出端口数据类型中将要用到的IEEE的标准库中的STD_LOGIC_1164程序包。 3.2 VHDL语言要素 1. 数字型文字——由数字、小数点和下划线组成 (1)整数文字 5,678,156E2,45_234_287( (2)实数文字 188.993, 88_670_551.453_909 (3)以数制基数表示的文字 格式:数制#数值# 例如: 10#170# 16#FE# 2 8#376# 3.3?? VHDL顺序语句 3.4 VHDL并行语句 注意: 过程或函数的参数表中,若不加SIGNAL,属变量型端口,所以赋值符号使用“:=” (事实上MAX+plus II不支持信号参数;不过,Modelsim支持) 过程体或函数体中不能声明信号,可声明变量、常数 在过程调用语句中,出口参数的实参与形参的数据类型必须一致 3.5 VHDL的库和程序包 VHDL编译中的常见错误: 没有对MAX+plus指定授权文件 在根目录下进行设计 VHDL源程序文件名与实体名不一致 单条信号线(端口)的声明用STD_LOGIC_VECTOR ELSIF 写成ELSE IF 用CASE语句时,条件涵盖不全 关键字拼写错误 数字‘0’拼写成字母’o’ 另外,在层次化设计时常见错误: 顶层原理图和所调用的元件同名,导致无法调用。 ARCHITECTURE CPU_ALU_REG8 OF CPU IS SIGANL ibus,dbus:STD_LOGIC_VECTOR(31 DOWNTO 0); --定义全局量 BEGIN ALU:BLOCK SIGNAL Qbus:STD_LOGIC_VECTOR(31 DOWNTO 0);--定义局域量 BEGIN --ALU块行为描述语句 END ALU; REG8: BLOCK SIGNALZbus:STD_LOGIC_VECTOR(31 DOWNTO 0);--定义局域量 BEGIN REG1: BLOCK SIGNAL Zbus1:STD_LOGIC_VECTOR(31 DOWNTO 0);--定义子局域量 BEGIN --REG1子块行为描述语句 END REG1; … END REG8; END REG_8; END CPU_ALU_REG8; 说明:在结构体中定义的全局量可以在各块结构中使用;块结构中定义局域量只能在本块及所属的子块中使用;子块中定义子局域量只能在子块中使用。 1. 简单信号赋值语句 格式:赋值目标=表达式; 例如:output1=a AND b; 规则:赋值目标必须是信号,而且出现在结构体或块语句中 3.4.3 并行信号赋值语句 2. 条件信号赋值语句 格式: 赋值目标=表达式 WHEN 赋值条件 ELSE 表达式 WHEN 赋值条件 ELSE … 表达式; 例如:对4选1多路选择器的描述 … z=a WHEN s=”00” ELSE b WHEN s=”01” ELSE c WHEN s=”10” ELSE d; … 3. 选择信号赋值语句 格式: WITH 选择表达式 SELECT 赋值目标信号=表达式 WHEN 选择值, --以“,”号结束 表达式 WHEN

文档评论(0)

docindpp + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档