数字逻辑 第2版 教学课件 作者 武庆生 第8章2014).pptVIP

数字逻辑 第2版 教学课件 作者 武庆生 第8章2014).ppt

  1. 1、本文档共91页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数字逻辑 第2版 教学课件 作者 武庆生 第8章2014).ppt

第八章 硬件描述语言Verilog HDL; 知识要点; 重点与难点;8.1 概述;Verilog的主要功能;设计规模可大可小 人机对话方便(设计者与EDA工具间交互) 设计能在多个抽象级别上描述:开关级、门级、RTL级、算法级、系统级等 能够使用内置开关级原语对设计完整建模 可以创建测试激励Testbench(特殊型module) 在行为级描述中能运用:RTL、结构、算法 内置逻辑函数:如(按位与)、|(按位或) 高级语言结构:if语句、case语句、循环语句 提供强有力的文件读写能力 可以显式地对并发和定时进行建模;ASIC 和FPGA设计师可用它来编写可综合的代码 描述系统的结构,做高层次的仿真 验证工程师编写各种层次的测试模块对具体电 路设计工程师所设计的模块进行全面细致的验证 库模型的设计:可以用于描述ASIC 和FPGA的基本单元(Cell)部件,也可以描述复杂的宏单元(Macro Cell) Verilog HDL 语言的描述能力能够通过使用编程语言接口( PLI )机制进一步扩展;8.2 Verilog HDL基本语法;2、算法级(Algorithem-level):用高级语言结构实现设计算法的模型。;二、Verilog HDL具有的功能;4、提供了条件(如if_else,case等)循环程序结构;;9、提供了双向通路和电阻器件的原语;;8.2.1 数据类型及常量、变量; 常量:;数字表达方式有以下3种:;8‘ //位宽为8的数的二进制表示,‘b表示二进制。 8‘ha2 //位宽为8的数的十六进制表示,‘h表示十六进制。;一个数字可以被定义为负数,只需在位宽表达式前加一个减号,减号必须写在数字定义表达式的最前面。注意,减号不可以放在位宽和进制之间,也不可以放在进制和具体的数之间。如: -8‘d5 //这个表达式代表5的补数(用8位二进制表示); 8’d-5 //非法格式; 下画线可以用来分隔数的表达以提高程序可读性,但不可以用在位宽和进制处,只能用在具体的数字之间。如: 16‘b1010_1011_1111_1010 //合法 8’b_0011_1010 //非法;一个常量,称为符号常量,即标识符形式的常量。主要是提高程序的可读性和可维护性,格式如下:;Module decode(A, F); parameter width=1, polarity=1; ………… Endmodule; 变量; 网络数据类型表示结构实体(如门)之间的物理连接。网络类型的变量不能储存值,而且它必须受到驱动器(门或连续赋值语句,assign)的驱动。如果没有驱动器连接到网络类型的变量上,则该变量就是高阻的,即其值为z。常用的网络数据类型包括wire型和tri型。如果wire型和tri型变量没有定义逻辑强度(logicstrength),在多驱动源的情况下,逻辑值会发生冲突,从而产生不确定值。下表是wire型和tri型变量的真值表。;Wire/tri;一、 wire型;二、reg型; 对于reg型数据,其赋值语句的作用就如同改变一组触发器的存储单元的值。在Verilog中有许多构造()来控制何时或是否执行这些赋值语句。这些控制构造用来描述硬件触发器的状态,如时钟上升沿,或用来描述判断逻辑,如多路选择器。; Verilog HDL通过对reg型变量建立数组来对存储器建模,可以描述RAM存储器、ROM存储器和reg文件。数组中的每一个单元通过一个数组索引进行寻址。在Verilog语言中没有多维数组存在。;如:parameter wordsize =16, memsize =256; reg [wordsize-1:0] mem[memsize-1:0], writereg, readreg;; rega =0; //合法赋值语句 mema =0; //非法赋值语句;8.3 Verilog的操作符;(6)位运算符(~、|、^、、^~);; clock = ~clock;// ~单目取反运算符 c = a | b //|是二目运算符 r = s ? t : u //? : 是三目运算符。;(4)/(除法运算符);;(4)^ ——按位异或;;(1) ——逻辑与;; 在进行关系运算时,如果声明的关系是假的(false),则返回值是0;如果声明的关系运算是真的(true),则返回值是1;如果某个操作数的值不定,则关系是模糊的,返回值是不定值。; 在Verilog HDL语言中存在4种算术运算符:; “===”和

您可能关注的文档

文档评论(0)

带头大哥 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档