第2章Verilog硬件描述语言概述(已排)分解.ppt

第2章Verilog硬件描述语言概述(已排)分解.ppt

  1. 1、本文档共71页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* Verilog的历史 Verilog HDL是在1983年由GDA(GateWay Design Automation)公司的Phil Moorby所创。Phi Moorby后来成为Verilog-XL的主要设计者和Cadence公司的第一个合伙人。 在1984~1985年间,Moorby设计出了第一个Verilog-XL的仿真器。 1986年,Moorby提出了用于快速门级仿真的XL算法。 1990年,Cadence公司收购了GDA公司 1991年,Cadence公司公开发表Verilog语言,成立了OVI(Open Verilog International)组织来负责Verilog HDL语言的发展。 1995年制定了Verilog HDL的IEEE标准,即IEEE1364。 * Verilog HDL 的应用方面 ASIC 和FPGA设计师可用它来编写可综合的代码。 描述系统的结构,做高层次的仿真。 验证工程师编写各种层次的测试模块,对具体电路设计工程师所设计的模块进行全面细致的验证。 库模型的设计:可以用于描述ASIC 和FPGA的基本单元(Cell)部件,也可以描述复杂的宏单元(Macro Cell)。 * 2.2.3 Verilog HDL的抽象级别 语言本身提供了各种层次抽象的表述,可 以用详细程度有很大差别的的多层次模块 组合来描述一个电路系统。 行为级:技术指标和算法的Verilog描述 RTL级:逻辑功能的Verilog描述 门级 :逻辑结构的Verilog描述 开关级:具体的晶体管物理器件的描述 * 行为级:有关行为和技术指标模块,逻辑容易理解; RTL级 :有关逻辑执行步骤的模块,逻辑较难理解; 门级 :有关逻辑部件互相连接的模块。逻辑很难理解; 开关级:有关物理形状和布局参数的模块,逻辑非常难理解。 * 抽象级(Levels of Abstraction) 在抽象级上需要进行折衷 系统说明 -设计文档/算术描述 RTL/功能级 -Verilog 门级/结构级 -Verilog 版图/物理级 -几何图形 详细程度 低 高 输入/仿真速度 高 低 * 抽象级(Levels of Abstraction) Verilog可以在三种抽象级上进行描述 行为级 用功能块之间的数据流对系统进行描述 在需要时在函数块之间进行调度赋值。 RTL级/功能级 用功能块内部或功能块之间的数据流和控制信号描述系统 基于一个已定义的时钟的周期来定义系统模型 结构级/门级 用基本单元(primitive)或低层元件(component)的连接来描述系统以得到更高的精确性,特别是时序方面。 在综合时用特定工艺和低层元件将RTL描述映射到门级网表。 * 抽象级(Levels of Abstraction) 设计工程师在不同的设计阶段采用不同的抽象级 首先在行为级描述各功能块,以降低描述难度,提高仿真速度。 在综合前将各功能模块进行RTL级描述。 用于综合的库中的大多数单元采用结构级描述。在本教程中的结构级描述部分将对结构级(门级)描述进行更详细的说明。 Verilog还有一定的晶体管级描述能力及算法级描述能力 * 例子:RTL级(即逻辑描述)-方法1 两路MUX的逻辑描述为:只要信号a或b或sel发生变化,如果sel为0则选择a输出;否则选择b输出。 module muxtwo (out, a, b, sel); input a, b, sel; output out; wire out; assign out=(sel)?b:a; endmodule * 例子:RTL级(即逻辑描述)-方法2 两路MUX的逻辑描述为:只要信号a或b或sel发生变化,如果sel为0则选择a输出;否则选择b输出。 module muxtwo (out, a, b, sel); input a, b, sel; output out; reg out; always @( sel or a or b) if (! sel) out = a; else out = b; endmodule * 例子:结构级(即门级)描述 下面是MUX的门级描述,采用Verilog基本单元(门)描述。 综合工具产生的结果网表是门级的。用户可以用门级描述粘接(glue)逻辑。 module twomux (ou

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档