实验二硬件描述语言(VerilogHDL)软件基本使用方法综述
Verilog HDL硬件描述语言实验报告

Verilog HDL实验报告学院:应用科学学院班级:电科13-2班姓名:学号:实验一组合逻辑电路设计(1)实验目的(1)熟悉FPGA设计流程;(2)熟悉DE2开发板的基本元件使用(开关、发光二极管);(3)学习基本组合逻辑元件的Verilog HDL设计以及实现(数据选择器);(4)掌握连续赋值语句使用;实验内容本实验的目的是学习如何连接一个简单的外部输入、输出器件到FPGA 芯片以及如何在FPGA器件上实现逻辑电路控制简单外部器件。
考虑使用DE2开发板上拨动开关SW17-0(toggle Switch)作为电路的输入。
使用发光二极管(Light Emitt-ing Diodes,LEDs)和7段显示数码管(7-segment Display)作为电路的输出。
第1部分连续赋值语句步骤1、新建Quartus II工程,选择Cyclone II EP2C35F672C6作为目标芯片,该芯片是DE2开发板上的FPGA芯片;2、编写Verilog HDL代码加入到Quaruts II工程;3、引脚分配,并编译工程该工程;4、将编译好的电路下载到FPGA器件。
扳动拨动开关观察相应的发光二极管显示,验证电路功能是否正确;代码module part1(input wire[2:0]SW,output wire LEDR);wire r_g,s_g,qa,qb;and u1(r_g, SW[0], SW[1]);and u2(s_g, SW[1], SW[2]);nor u3(qa, r_g, qb);nor u4(qb, qa, s_g);assign LEDR = qa;endmodule第2部分简单的数据选择器步骤1 .新建Quartus II工程;2.在工程中加入8位宽的2选1数据选择器Verilog HDL代码。
使用DE2开发板上的SW17作为输入s,开关SW7-0作为输入X,SW15-8作为输入Y。
实验讲义verilogQuartusII软件的使用资料

《硬件描述语言及应用》实验讲义2015-2016年度第二学期实验一、EDA软件使用一、实验目的:1、掌握MAX+PLUS Ⅱ软件的使用;2、掌握文本编辑器和波形编辑器的使用。
二、实验仪器微机一台。
三、实验原理1、MAX+PLUS Ⅱ软件MAX+PLUS II 9.3界面友好,使用便捷,被誉为业界最易学易用的EDA 软件。
支持原理图、VHDL和Verilog语言文本文件,以及波形与EDIF等格式的文件作为设计输入,并支持这些文件的任意混合设计。
MAX+PLUS II 具有门级仿真器,可以进行功能仿真和时序仿真,能够产生精确的仿真结果。
在适配之后,MAX+PLUS II生成供时序仿真用的EDIF、VHDL和Verilog 三种不同格式的网表文件。
MAX+PLUS II支持主流的第三方EDA工具,如Synopsys、Cadence、Synplicity、Mentor、Viewlogic、Exemplar和Model Technology等。
MAX+PLUS II支持除APEX20K系列之外的所有Altera FPG/CPLD 大规模逻辑器件。
2、Verilog语言简介(1) 什么是Verilog HDLVerilog HDL是硬件描述语言的一种,用于数字电子系统设计。
它允许设计者用它来进行各种级别的逻辑设计,可以用它进行数字逻辑系统的仿真验证、时序分析、逻辑综合。
它是目前应用最广泛的一种硬件描述语言之一。
(2) Verilog HDL的历史Verilog HDL是在1983年由GDA(GateWay Design Automation)公司的Phil Moorby首创的。
Phil Moorby后来成为Verilog-XL的主要设计者和Cadence公司(Cadence Design System)的第一个合伙人。
在1984年~1985年,Moorby设计出了第一个关于Verilog-XL的仿真器,1986年,他对Verilog HDL的发展又做出了另一个巨大贡献:即提出了用于快速门级仿真的XL 算法。
Verilog HDL 实验报告

Verilog实验报告班级:学号:姓名:实验1 :用 Verilog HDL 程序实现直通线1 实验要求:(1) 编写一位直通线的 Veirlog HDL 程序.(2) 编写配套的测试基准.(3) 通过 QuartusII 编译下载到目标 FPGA器件中进行验证.(4) 建议用模式 52 试验程序:module wl(in,out);input in;output out;wire out;assign out=in;endmodule3 测试基准:`include “wl.v”module wl_tb;reg in_tb;wire out_tb;initialbeginin_tb =0;#100 in_tb =1;#130 in_tb =0;endendmodule4 仿真图形:实验2 :用 Verilog HDL 程序实现一位四选一多路选择器1实验要求:(1) 编写一位四选一多路选择器的 Veirlog HDL 程序.(2) 编写配套的测试基准.(3) 通过 QuartusII 编译下载到目标 FPGA器件中进行验证.(4)建议用模式 52 试验程序:module mux4_to_1 (out,i0,i1,i2,i3,s1,s0);output out;input i0,i1,i2,i3;input s1, s0;reg out;always @ (s1 or s0 or i0 or i1 or i2 or i3)begincase ({s1, s0})2'b00: out=i0;2'b01: out=i1;2'b10: out=i2;2'b11: out=i3;default: out=1'bx;endcaseendendmodule3 测试基准:`include "mux4_to_1.v"module mux4_to_1_tb1;reg ain,bin,cin,din;reg[1:0] select;reg clock;wire outw;initialbeginain=0;bin=0;cin=0;din=0;select=2'b00;clock=0;endalways #50 clock=~clock;always @(posedge clock)begin#1 ain={$random} %2;#3 bin={$random} %2;#5 cin={$random} %2;#7 din={$random} %2;endalways #1000 select[0]=!select[0];always #2000 select[1]=!select[1];mux4_to_1 m(.out(outw),.i0(ain),.i1(bin),.i2(cin),.i3(din),.s1(select[1]),.s0(select[0])); endmodule4 仿真图形:实验3:用 Verilog HDL 程序实现十进制计数器1实验要求:(1) 编写十进制计数器的 Veirlog HDL 程序. 有清零端与进位端, 进位端出在输出为 9 时为高电平.(2) 编写配套的测试基准.(3) 通过 QuartusII 编译下载到目标 FPGA器件中进行验证.(4) 自行选择合适的模式2 实验程序:module counter_10c (Q, clock, clear, ov);output [3:0] Q;output ov;input clock, clear;reg [3:0] Q;reg ov;initial Q=4'b0000;always @ (posedge clear or negedge clock)beginif (clear)Q<=4'b0;else if (Q==8)beginQ<=Q+1;ov<=1'b1;endelse if (Q==9)beginQ<=4'b0000;ov<=1'b0;endelsebeginQ<=Q+1;ov<=1'b0;endendendmodule3 测试基准:`include"./counter_10c.v"module counter_10c_tb;wire[3:0] D_out;reg clk,clr;wire c_out;reg[3:0] temp;initialbeginclk=0;clr=0;#100 clr=1;#20 clr=0;endalways #20 clk=~clk;counter_10c m_1(.Q(D_out),.clear(clr),.clock(clk),.ov(c_out)); endmodule4 仿真波形:实验4 :用 Verilog HDL 程序实现序列检测器1 实验要求:、(1) 编写序列检测器的 Veirlog HDL 程序. 检测串行输入的数据序列中是否有目标序列5'b10010, 检测到指定序列后, 用一个端口输出高电平表示.(2) 编写配套的测试基准.(3) 通过 QuartusII 编译下载到目标 FPGA器件中进行验证.(4) 自行选择合适的模式2试验程序:module e15d1_seqdet( x, z, clk, rst);input x,clk, rst;output z;reg [2:0] state;wire z;parameter IDLE = 3 'd0,A = 3'd1,B = 3'd2,C = 3'd3,D = 3'd4,E = 3'd5,F = 3'd6,G = 3'd7;assign z =(state==D && x==0)?1:0;always @(posedge clk or negedge rst)if(!rst)beginstate<=IDLE;endelsecasex(state)IDLE: if(x==1)state<=A;else state<=IDLE;A: if (x==0)state<=B;else state<=A;B: if (x==0)state<=C;else state<=F;C: if(x==1)state<=D;else state<=G;D: if(x==0)state<=E;else state<=A;E: if(x==0)state<=C;else state<=A;F: if(x==1)state<=A;else state<=B;G: if(x==1)state<=F;else state <=G;default: state<=IDLE;endcaseendmodule3测试基准:`include"e15d1_seqdet.v"`timescale 1ns/1ns`define halfperiod 20module e15d1_seqdet_tb;reg clk, rst;reg [23:0] data;wire z;reg x;initialbeginclk =0;rst =1;#2 rst =0;#30 rst =1;data= 20 'b1100_1001_0000_1001_0100;#(`halfperiod*1000) $stop;endalways #(`halfperiod) clk=~clk;always @ (posedge clk)begin#2 data={data[22:0],data[23]};x=data[23];ende15d1_seqdet m(.x(x),.z(z),.clk(clk),.rst(rst)); endmodule4仿真波形:。
Verilog HDL使用简介

Shandy @ IME of Tsinghua Univ. 2004
什么是Verilog HDL?
Verilog HDL是一种硬件描述语言,用于从算 法级、结构级、门级到开关级的多种抽象设计 层次的数字系统建模。
被建模的数字系统对象的复杂性可以介于开关
级电路(例如pmos/nmos)、简单的门(例如 库单元描述)和完整的复杂电子数字系统之间 (例如CPU)
Top = 3'b001; #2 Top = 3'b011 ;
end
在Verilog HDL中有两种形式的注释: /*第一种形式:可以扩展至 多行*/ //第二种形式:在本行结束。
Shandy @ IME of Tsinghua Univ. 2004
Verilog HDL语法 - 值集合
Verilog HDL有下列四种基本的值:
Verilog HDL使用简介
张建良 shandy98@
数字大规模集成电路讲义
Shandy @ IME of Tsinghua Univ. 10/11/2004
提纲
什么是Verilog HDL? Verilog HDL vs. VHDL Verilog HDL语法 设计描述层次 设计的测试与验证 可综合的设计 有限状态机(FSM) 一个除法器的设计实例 常用仿真器和综合软件 网络资源
1) 0:逻辑0或“假”
2) 1:逻辑1或“真” 3) x:未知 4) z:高阻 在门或一个表达式的输入中有为“z”的值则输出通常解释成“x”。 此外, x值和z值都是不分大小写的。 Verilog HDL中的常量是由以上这四类基本值组成的。
Shandy @ IME of Tsinghua Univ. 2004
Verilog HDL 实验报告

实验一Modelsim仿真软件的使用一、实验目的(1)熟悉Modelsim 软件(2)掌握Modelsim 软件的编译、仿真方法(3)熟练运用Modelsim 软件进行HDL 程序设计开发二、实验内容1、实验要求用Verilog HDL 程序实现一个异或门,Modelism仿真,观察效果。
2、步骤1、建立工程2、添加文件到工程3、编译文件4、查看编译后的设计单元5、将信号加入波形窗口6、运行仿真3、方法moduleyihuo (a,b,c);inputa,b;output c;assign c=a^b;endmodule测试程序:module t_yihuo;reg a,b;wire c;initialbegina=0;forever #20 a=~a;endinitialbeginb=0;forever #30 b=~b;endyihuou1(a,b,c);endmodule二、实验结果波形图:三、分析和心得通过这次的实验,我基本熟悉Modelsim软件,掌握了Modelsim软件的编译、仿真方法。
同时在编写程序的过程中,加深了我对课上所讲的HDL的语法的认识。
实验二简单组合电路设计一、实验目的(1)掌握基于Modelsim的数字电路设计方法(2)熟练掌握HDL 程序的不同实现方法二、实验内容1、实验要求设计一个三人表决器(高电平表示通过),实验内容如下:(1)三个人,一个主裁判,两个副裁判;(2)规则:只要主裁判同意,输出结果为通过;否则,按少数服从多数原则决定是否通过。
使用 Verilog HDL 程序实现上述实验内容,并使用modelsim 仿真。
2、方法module test(a,b,c,s);inputa,b,c;output s;assign s=c|(b&a);endmodulemodulet_test;rega,b,c;wire s;initialbegina=0;forever#10 a=~a;endinitialbeginb=0;forever #20 b=~b;endinitialbeginc=0;forever#40 c=~c;endtest u1(a,b,c,s);endmodule三、实验结果四、分析和心得通过本次实验,我掌握基于Modelsim的简单数字电路设计方法,且尝试了用不同方法实现功能,三人表决器可以通过testbench测试程序实现,也可以利用always模块实现,可见程序的设计思想是很重要的。
3.Verilog_HDL硬件描述语言

的结束都属于注释语句
Verilog HDL基本语法
标识符
注释
格式 数字值集合
数据类型
运算符和表达式 条件语句 Case语句
格式
Verilog HDL是区分大小写的,即大小写不同的标识
符是不同的 Verilog书写格式自由,一条语句可多行书写;一行可 写多个语句 空白(新行、制表符、空格)没有特殊意义 如 与 是一样的
1.Verilog HDL概述
1.5 Verilog HDL与 C语言
虽然Verilog的某些语法与C语言接近,但存在本 质上的区别 •Verilog HDL是一种描述硬件的语言,最终是为 了产生实际的硬件电路或对硬件电路进行仿真。 •C语言是一种软件语言,是控制硬件来实现某 些功能 利用Verilog编程时,要时刻记得Verilog是硬件语 言,要时刻将Verilog与硬件电路对应起来
2.Verilog HDL建模概述
结构化描述方式例2:两位全加器
两位全加器结构示意框图
2.Verilog HDL建模概述
两 位 全 加 器 代 码 注意: .A(FA[1])的含义
2.Verilog HDL建模概述
2.7 三种建模方式
数据流描述方式
通过对数据流在设计中的具体行为的描述来建模
2.Verilog HDL建模概述
2.7 三种建模方式
行为描述方式
采用对信号行为级的描述(不是结构级的描述)的方
法来建模 一般采用initial块语句或always块语句 通常采用行为级的运算符如加法(+),减法(-)运 算符等
2.Verilog HDL建模概述 行为描述方式例1
verilog hdl实验报告

verilog hdl实验报告《Verilog HDL实验报告》Verilog HDL(硬件描述语言)是一种用于描述电子系统的硬件的语言,它被广泛应用于数字电路设计和硬件描述。
本实验报告将介绍Verilog HDL的基本概念和使用方法,并通过实验展示其在数字电路设计中的应用。
实验目的:1. 了解Verilog HDL的基本语法和结构2. 掌握Verilog HDL的模块化设计方法3. 熟悉Verilog HDL的仿真和综合工具的使用实验内容:1. Verilog HDL的基本语法和结构Verilog HDL是一种硬件描述语言,其语法和结构类似于C语言。
它包括模块定义、端口声明、信号赋值等基本元素。
在本实验中,我们将学习如何定义Verilog模块,并使用端口声明和信号赋值描述数字电路的行为。
2. Verilog HDL的模块化设计方法Verilog HDL支持模块化设计,可以将复杂的电路分解为多个模块,每个模块描述一个子电路的行为。
在本实验中,我们将学习如何设计和实现Verilog模块,并将多个模块组合成一个完整的数字电路。
3. Verilog HDL的仿真和综合工具的使用Verilog HDL可以通过仿真工具进行功能验证,也可以通过综合工具生成实际的硬件电路。
在本实验中,我们将使用Verilog仿真工具对设计的数字电路进行功能验证,并使用综合工具生成对应的硬件电路。
实验步骤:1. 学习Verilog HDL的基本语法和结构2. 设计一个简单的数字电路,并实现Verilog模块描述其行为3. 使用仿真工具对设计的数字电路进行功能验证4. 使用综合工具生成对应的硬件电路实验结果:通过本实验,我们学习了Verilog HDL的基本概念和使用方法,并成功设计和实现了一个简单的数字电路。
我们使用仿真工具对设计的数字电路进行了功能验证,并使用综合工具生成了对应的硬件电路。
实验结果表明,Verilog HDL在数字电路设计中具有重要的应用价值。
VerilogHDL硬件描述-2

数字表达方式有以下三种:
1) [size] 'base value:这是一种全面的描述方式。 size :位宽,定义了以位(bit) 计的常量的位宽,位宽以十进制数字表示; 如:一个4位二进制数的位宽为4; 一个4位十六进制数的位宽为16(每十六进制数用4位二进制数表示)。 base:为o或O,b或B,d或D,h或H之一; value:base进制下的常量的数值。 2) 'base value:数的位宽采用缺省位宽(由具体的机器系统决定,但至少32位)。 3) Value:在这种描述方式中,采用缺省进制十进制。
wire或者reg向量名[常数表达式1:常数表达式2]
reg [5:0] State; wire [0:3] Prt; State [4:1] Prt [3:2] //寄存器部分选择。 //线网部分选择。
2013年7月25日
15
存储器
通过对reg型变量建立数组来对存储器建模。
reg [n-1:0] 存储器名[m-1:0];
2013年7月25日
2
整数
例:
4'b1111 12'habc 16'd255 (2+3)„b10 'hc3 'o21 // This is a 4-bit binary number // This is a 12-bit hexadecimal number // This is a 16-bit decimal number. //非法:位长不能够为表达式 // This is a 32-bit hexadecimal number // This is a 32-bit octal number
参数(parameters)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
⑸Verilog 模块的模板
•module <顶层模块名> (<输入输出端口列表>); •output 输出端口列表; //输出端口声明 •input 输入端口列表; //输入端口声明 •/*定义数据,信号的类型,函数声明*/ •reg 信号名; •//逻辑功能定义 •assign <结果信号名>=<表达式>; //使用assign语句定义逻辑功能 •//用always块描述逻辑功能 •always @ (<敏感信号表达式>) • begin • //过程赋值 • //if-else,case语句 • //while,repeat,for循环语句 • //task,function调用 • end •//调用其它模块 • <调用模块名module_name > <例化模块名> (<端口列表port_list >); •//门元件例化 • 门元件关键字 <例化门元件名> (<端口列表port_list>); •endmodule
更多控制端口设置
lpm_counter计数器功能仿真波形
模24方向可控计数器电路
⑷Verilog模块的结构特点 • Verilog程序是由若干模块构成的。每个模块的内容 都嵌在module和endmodule两个关键字之间;每个 模块实现特定的逻辑功能。 • 每个模块首先要进行端口定义,并说明输入和输出 口(input、output或inout),然后对模块的功能 进行定义。 • Verilog程序书写格式自由,一行可以写几个语句, 一个语句也可以分多行写,。 • 除了endmodule等少数语句外,每个语句的最后必 须有分号。 • 可用 /*……*/ 和 //……对Verilog程序作注释。 • Verilog程序书写区分大小写,关键字必须小写。
Ai 0 0 0 0 1 1 1 1
Si Ai Bi Cin Cout Ai Bi Cin ( Ai Bi )
输入 Bi 0 0 1 1 0 0 1 1
Cin 0 1 0 1 0 1 0 1
输出 Si Cout 0 0 1 0 1 0 0 1 1 0 0 1 0 1 1 1
补充内容
⑶、Verilog模块的结构 ( 例如“数字选择”电路)
module sel(a,b,s,y); /* 模块名为sel,端口列表a,b,s ,y */ input a,b,s; //模块的输入端口为a,b,s output y; //模块的输出端口为y reg y; //定义信号的数据类型 always@(a,b,s) begin //逻辑功能描述 if(s) y=b; else y=a; end endmodule
2、 Verilog设计过程(以数字选择器为例)
⑴建立工程 点击file→new project wizard,新建工程目录和工程文件sel,得如图所示。
Next后进入工程文件选择,输入新文件sel,必须注意该文件名必须与 将要编辑的程序模块名相同。
以后的过程就如实验一一样进行相关设计直到完成。
EDA课程 实验二
硬件描述语言(Verilog HDL)软件介绍与基本使用
EDA课组
一、实验目的:
1、了解Verilog HDL软件特点; 2、学习Verilog HDL软件设计数字系统基本方 法;
二、实验内容
1、 Verilog HDL软件功能介绍。 2、 设计几种简单数字电路系统。
1、 Verilog HDL软件功能介绍。
⑴ Verilog简介 • Verilog语言是1983年由GDA(Gateway Design Automation)公司的Phil Moorby首创的,之后 Moorby又设计了Verilog-XL仿真器,Verilog-XL 仿真器大获成功,也使得Verilog语言得到推广使用。 • 1989年,Cadence收购了GDA,1990年, Cadence公开发表了Verilog HDL,并成立了OVI 组织专门负责Verilog HDL的发展。 • Verilog于1995年成为IEEE标准,称为IEEE Standard 1364-1995(Verilog-1995) • IEEE“1364-2001”标准(Verilog-2001)也获得通 过,多数综合器、仿真器都已支持Verilog-2001标 准
下面的clk,d分布是时钟输入信号和输入信号;q,qb是触发器输出端和负 逻辑输出端。
//时钟上升沿有效
⑶保存,编译,无错误进入波形设置状态,最后进行时序仿真,可以看到符 合D触发器要求。
编译结果报告如下:
生成的逻辑电路结构图:
实验报告作业
通过Verilog HDL软 件设计一位二进制全加 器。给出设计过程,并 仿真验证。
基于宏功能模块的设计
Megafunction库是Altera提供的参数化模块库。 从功能上看,可以把Megafunction库中的元器件分 为: 算术运算模块(arithmetic) 逻辑门模块(gates) 储存模块(storage) IO模块(I/O)
算数运算模块库
通过乘法器宏模块(lpm_mult)设计一个乘法器
编译通过后系统信息窗口:报告相关的使用芯片类型、使用的逻辑元素个数 等信息
⑷建立波形文件,设置相关端口信号,同实验一基本相同,设置之后保存波形文 件,重新进行编译。
⑸点击时序仿真按钮,进行仿真,观察结果可知完全符合数字选择电路功能。 这种通过Verilog HDL编程实现的功能与电路设计完成的功能完全相同。
参数化乘法器lpm_mult宏功能模块的基本参数表
(1)调用lpm_mult(同样建立工程和原理图文 件,插入宏模块。)
(2)lpm_mult参数设置
输入输出位宽设置
Hale Waihona Puke 乘法器类型设置(3)编译仿真
8位有符号乘法器电路
功能仿真波形
计数器模块设计
计数器输出端口宽度和计数方向设置
计数器模和控制端口设置
⑹观察生成的电路,点击tools→Netlist viewers →RTL viewer。
三、实验步骤
1、采用Verilog HDL硬件描述语言设计一个二进制半加器。
⑴同样采用前面步骤,新建工程目录、工程文件及源文件,名字皆为h_adder
根据二进制半加器原理可知有如下逻辑关系
S A B AB A B C AB
将该逻辑关系用Verilog HDL语言描述出来,及进行源文件的输入: //定义输入端口 //定义输出端口 //异或输出 //与输出
⑵进行文件编译,无错误后建立波形文件,设置相应端口及波形,保存后进行时 序仿真。
从以上图示可知完全符合半加器逻辑关系, 其生成的电路如图。
观察硬件描述语言所生成的逻辑电路,点击tools→Netlist viewers →RTL viewer,有如下生成的电路,可见与实验一电路设计方法的原始逻辑电路相同,充分 说明用软件描述方法是可以完全设计所要求电路,这种方法是设计复杂逻辑控制电路 最有效方法。
也可以将半加器程序描述如下,直接修改上面程序,编译、仿真结果也是相同的。
//运用了位置连接符{}
这种描述更接近电路系统设计的行为描述,是这种硬件描述语言优势之 处,它不需了解硬件具体结构是如何实现,只给出所要实现的电路功能就可 以设计数字电路系统。其生成的电路结构如图。
2、设计一个时序电路:D触发器
⑵点击新建文件按钮
,进入下面选择界面,选择Verilog HDL File→OK
进入文本编辑状态,输入源程序,要注意书 写格式,关键字一般是蓝色。
⑶保存,点击编译按钮,检查设计中的语法错误,若有错误将根据提示修改程 序中的错误,并重新编译,直到没有错误为止。若通过将给出相关设计信息。
错误信息提示窗口:
⑴列出逻辑真值表 真值表
Q
Q
clk
D
D Qn(当前状态) Qn+1 (时钟有效沿输入时对应d的输出状态) 0 0 0 clk 0 1 0 1 0 1 1 1 1
由真值表可知,当clk=0时,触发器处于维持状态;当clk上升沿到来时, 它下一个状态的输出完全由输入状态决定,与当前状态无关,即Qn+1=D。 ⑵建立工程及文件sy_d_ff,输入源程序如下:
⑵Verilog语言的特点
• 既适于可综合的电路设计,也可胜任电路与系统的仿真。 • 能在多个层次上对所设计的系统加以描述,从开关级、门级、 寄存器传输级(RTL)到行为级,都可以胜任,同时语言不 对设计规模施加任何限制。 • 灵活多样的电路描述风格,可进行行为描述,也可进行结构 描述;支持混合建模,在一个设计中各个模块可以在不同的 设计层次上建模和描述。 • Verilog的行为描述语句,如条件语句、赋值语句和循环语 句等,类似于软件高级语言,便于学习和使用。 • 内置各种基本逻辑门,便于进行门级结构描述;内置各种开 关级元件,可进行开关级的建模。 • 易学易用,功能强,可满足各个层次设计人员的需要。