2-Verilog语言基础1.pptVIP

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

Verilog HDL 语言基础 Verilog HDL 语言介绍 Verilog HDL 语法的基本概念 Verilog在VLSI设计过程中的位置 简单设计 模块及端口声明 //与或非门的Verilog 代码 module AOI (A, B, C, D, F); input A, B,C,D; output F; assign F = ~((A B) | (C D)); endmodule // Verilog 代码结束 Verilog的基本构建块。 模块 1、用声明语句(不能够嵌套) 2、用实例元件 接口由端口定义 可能包含其他模块实例 所有模块同时运行 简单设计 Endmodule 模块定义由verilog的关键字endmodule来结束。 //与或非门的Verilog 代码 module AOI (A, B, C, D, F); input A, B,C,D; output F; assign F = ~((A B) | (C D)); endmodule // Verilog 代码结束 简单设计 功能 以上就是模块的接口,那么模块的功能是什么样的? 在此模块主体,只有一个语句,并且语句中所引用的名字事实上都是设计的端口。模块主体中使用的名字都在模块开头和端口声明中声明过了,所以在模块主体中不再对内部要素进行声明。Assign是verilog的一个关键词,表示并行的连续的任务,描述了该模块的功能。只要A,B,C,D四个端口有一个值发生变化,任务就执行。~, 及| 三种符号分别代表取反、按位与及按位或。 //与或非门的Verilog 代码 module AOI (A, B, C, D, F); input A, B,C,D; output F; assign F = ~((A B) | (C D)); endmodule // Verilog 代码结束 Verilog module AOI (input A, B, C, D, output F); //与或非门的Verilog 代码 module AOI (A, B, C, D, F); input A, B,C,D; output F; assign F = ~((A B) | (C D)); endmodule // Verilog 代码结束 Wire型变量 上面提到的与或非门的功能模块采用一个连续的赋值语句,即输出是输入的方程式结果。这已经是最简单的描述方法。一般地,其他模块都比上述模块要复杂的多,内部连接部分是必需的。要给内部信号连续赋值的话,这个信号首先必须声明为wire型变量。 Verilog中wire型变量代表电气连接。 Wire型变量 //与或非门的Verilog 代码 module AOI (input A, B, C, D, output F); input A, B, C, D; output F; wire F; // the default wire AB, CD, O; // necessary assign AB = A B; assign CD = C D; assign O = AB | CD; assign F = ~O; endmodule // Verilog 代码结束 Wire型变量 Wire变量声明 这是wire变量声明的语法,跟verilog-1995标准的端口声明类似,可以定义wire变量的位宽和名字或者一系列名字。可以根据你的意愿单独声明wire变量,例如 由于端口变量默认为wire型,所以在定义F变量时可以不加以强调变量类型。 wire AB, CD, O; wire AB, CD; wire O; 设计级别 模块内可以调用其他模块。这里我们看到二选一多路器由一个与或非门和一对非门组成。 模块实例 该MUX_2模块包含了每个低层次模块的引用,并描述了它们之间的相互联系。在Verilog的行话来说,一个低层次模块的引用被称为模块实例。 每个实例是一个独立的,并行的模块副本。每个模块由实例化的模块(如AOI或INV),一个实例名称(在当前模块的唯一实例)和一个端口连接列表组成。 该模块端口的连接可以按顺序给出(位置映射),或者端口可以明确地命名为它们连接(命名映射)。命名映射通常是首选的长连接列表,因为它可避免不必要的错误。 Verilog: 二选一多路器模块 // 二选一多路器的Verilog代码 module INV (inp

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档