数字逻辑第八章2017.pptVIP

  • 4
  • 0
  • 约5.57千字
  • 约 33页
  • 2020-01-29 发布于辽宁
  • 举报
* * * 电路行为的先后顺序通过时钟节拍顺序来体现。 Verilog HDL是一种硬件语言,最终是为了产生实际的硬件电路或对硬件电路进行仿真。 利用Verilog HDL编程时,要时刻牢记Verilog是硬件语言,要时刻将Verilog HDL语句与硬件电路对应起来; 电路在物理上是并行工作(只要电源接通,所有电路都同时工作),要求在Verilog HDL的module中,所有描述语句(包括连续赋值语句assign、行为语句块always/initial、模块实例化)都是并发执行的; 第八章 硬件描述语言Verilog HDL * 创建灵活,可以创建组合逻辑和时序逻辑电路; 能够实现端口到端口时延、路径时延、设计的时序检查; 能够描述多层次设计,设计规模可大可小; 人机对话方便(设计者与EDA工具间交互),ASIC和FPGA设计师可用它来编写可综合的代码;; 可以创建测试激励Testbench(特殊型module); 提供强有力的文件读写能力; 可以显式地对并发和定时进行建模; 描述系统的结构,做高层次的仿真; 验证工程师编写各种层次的测试模块对具体电路设计工程师所设计的模块进行全面细致的验证; 库模型的设计:可以用于描述ASIC和FPGA的基本单元(Cell)部件,也可以描述复杂的宏单元(Macro Cell); Verilog HDL语言的描述能力能够通过使用编程语言接口(PLI)机制进一步扩展。 Verilog的主要功能 * Verilog的多种描述方式 提供了多种描述方式:开关级描述方式(开关级建模)、门级描述方式(门级建模)、数据流级描述方式(数据流级建模)和行为级描述方式(行为级建模); 设计能在多个抽象级别上进行:开关级、门级、RTL级、算法级等。 * (1)Verilog的开关级描述方式 能够使用内置开关级原语对设计完整建模; 开关级基本结构模型:内置pmos、nmos等。 (2)Verilog的门级描述方式 能够使用内置门级原语对设计完整建模; 门级基本结构模型:内置and、or、nand等。 (3)Verilog的数据流级描述方式 能够使用内置数据流级原语assign和位运算符对设计完整建模; 位运算符有:、︳、~、 ?、~?等。 * (4)Verilog的行为级描述方式 能够使用结构和算法对设计完整建模; 常用语句有:initial(只执行一次) always (循环执行) 还提供一些高级语言结构,如if语句、case语句、循环语句等。 * 8.1 数值、常量、数据类型及变量 Verilog HDL的数值有四类:0(逻辑0)、1(逻辑1)、Z/z(高阻)、X/x(未知)。 1)整数型常量 定义格式:位宽’进制数字 1、数值 其中:o(O)表示八进制;b(B)表示二进制;d(D)表示十进制;h(H)表示十六进制。 2、常量 注意:单引号和进制之间不能有空格。 例:3’b001、3’b01、3’b1111001、’b001。 * 由十进制计数法或科学计数法的形式组成。 2)实数型常量 例:12.56、1.345、1234.6567。 例:1.56E2、5E-3。 3)字符串型常量 由双引号内的字符序列组成,用一串8位二进制ASCII码的形式表示,每一个8位二进制ASCII码表示一个字符。 例:”hello”、”abc”。 * 3、数据类型及变量 数据类型与基本逻辑单元建库有关,由半导体厂家和EDA工具厂家共同提供。 Verilog HDL有两大类数据类型 1)线网类型 nets type表示Verilog结构化元件间的物理连线。它的值由驱动元件的值决定,例如:连续赋值或门的输出。如果没有驱动元件连接到线网,线网的缺省值为Z(高阻)。 register type表示一个抽象的数据存储单元,它只能在always语句和initial语句中被赋值,并且它的值从一个赋值到另一个赋值被保存下来。寄存器类型的变量的缺省值为X(未知)。 2)寄存器(变量)类型 * nets型变量指输出始终根据输入变化而更新其值的变量,一般是指硬件电路中的各种物理连接。 1)线网类型 Verilog HDL中提供了多种nets型变量,但最常用的是wire型变量。Verilog HDL模块中的输入/输出信号类型缺省时自动定义为wire型。 wire型变量的定义格式如下: wire 数据名1,数据名2,……..数据名n; 例1:wire a,b; //定义了两个1位的wire型变量a,b 例2:wire[7:0] databus;//定义了8位宽度的数据总线 * 2)寄存器(变量)类型 register型变量对应的是具有状态保持作用的电路元件,如触发器、寄存器等。 register型变量与nets型变量的根本区别

文档评论(0)

1亿VIP精品文档

相关文档