第2章b.Verilog入门.ppt

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

第2章 Verilog HDL入门 2.1、简介 2.2、模块 2.3、时延 2.4 、设计方法 2.2、简介 什么是Verilog HDL Verilog HDL是一种硬件描述语言 用于从算法级、门级到开关级的多种抽象设计层次的数字系统建模。 被建模的数字系统对象的复杂性可以介于简单的门和完整的电子数字系统之间。 数字系统能够按层次描述,并可在相同描述中显式地进行时序建模。 Verilog HDL 语言具有下述描述能力 设计的行为特性 设计的数据流特性 设计的结构组成 Verilog HDL语言不仅定义了语法,而且对每个语法结构都定义了清晰的模拟、仿真语义。 Ve r i l o g语言从C编程语言中继承了多种操作符和结构。Verilog HDL提供了扩展的建模能力,其中许多扩展最初很难理解。但是,Verilog HDL语言的核心子集非常易于学习和使用,这对大多数建模应用来说已经足够。当然,完整的硬件描述语言足以对从最复杂的芯片到完整的电子系统进行描述。 历史 Verilog HDL语言最初是于1 9 8 3年由Gateway Design Automation 公司为其模拟器产品开发的硬件建模语言。那时它只是一种专用语言。 由于他们的模拟、仿真器产品的广泛使用, Verilog HDL 作为一种便于使用且实用的语言逐渐为众多设计者所接受。Verilog HDL语言于1 9 9 0年被推向公众领域。 Open Verilog International(O V I)是促进Ve r i l o g发展的国际性组织。1 9 9 2年, O V I决定致力于推广Verilog OVI标准成为I E E E标准。这一努力最后获得成功, Verilog 语言于1 9 9 5年成为I E E E标准,称为IEEE Std 1 3 6 4-1 9 9 5 Verilog HDL的能力 ? 基本逻辑门,例如a n d、o r和n a n d等都内置在语言中。 ? 用户定义原语( U D P)创建的灵活性。用户定义的原语既可以是组合逻辑原语,也可以是时序逻辑原语。 ? 开关级基本结构模型,例如p m o s 和n m o s等也被内置在语言中。 ? 提供显式语言结构指定设计中的端口到端口的时延及路径时延和设计的时序检查。 可采用三种不同方式或混合方式对设计建模。这些方式包括: 行为描述方式—使用过程化结构建模; 数据流方式—使用连续赋值语句方式建模; 结构化方式—使用门和模块实例语句描述建模。 Verilog HDL中有两类数据类型:线网数据类型和寄存器数据类型。线网类型表示构件间的物理连线,而寄存器类型表示抽象的数据存储元件。 能够描述层次设计,可使用模块实例结构描述任何层次。 设计的规模可以是任意的;语言不对设计的规模(大小)施加任何限制。 Verilog HDL不再是某些公司的专有语言而是I E E E标准。 人和机器都可阅读Verilog 语言,因此它可作为E D A的工具和设计者之间的交互语言。 Verilog HDL语言的描述能力能够通过使用编程语言接口( P L I)机制进一步扩展。P L I是允许外部函数访问Verilog 模块内信息、允许设计者与模拟器交互的例程集合。 设计能够在多个层次上加以描述,从开关级、门级、寄存器传送级( RT L)到算法级,包括进程和队列级。 能够使用内置开关级原语在开关级对设计完整建模。 在行为级描述中, Verilog HDL不仅能够在RT L级上进行设计描述,而且能够在体系结构级描述及其算法级行为上进行设计描述。 能够使用门和模块实例化语句在结构级进行结构描述。 混合建模 Verilog HDL 还具有内置逻辑函数,例如(按位与)和|(按位或)。 对高级编程语言结构,例如条件语句、情况语句和循环语句,语言中都可以使用。 可以显式地对并发和定时进行建模。 提供强有力的文件读写能力。 语言在特定情况下是非确定性的,即在不同的模拟器上模型可以产生不同的结果;例如,事件队列上的事件顺序在标准中没有定义。 2.2、模块 模块是Verilog 的基本描述单位,用于描述某个设计的功能或结构及其与其他模块通信的外部端口。 一个设计的结构可使用开关级原语、门级原语和用户定义的原语方式描述; 设计的数据流行为使用连续赋值语句进行描述; 时序行为使用过程结构描述。 一个模块可以在另一个模块中使用。 一个模块的基本语法如下: 说明部分用于定义不同的项,例如模块描述中使用的寄存器和参数。 语句部分定义设计的功能和结构。 说明部分和语句可以散布在模块中的任何地方;但是变量、寄存器、线网和参数等的说明部分必须在使用前出现。为了使模块描述清晰和具有良好的可读性, 最好

文档评论(0)

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

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

1亿VIP精品文档

相关文档