西安电子科技大学verilogPPT课件
合集下载
西电verilog课件第九章

例9.1-6:门级结构描述中间产生信号类型定义。
module xor_t3(in1,in2,in3,out1); input in1,in2,in3; output out1; xor U1(w1,in1,in2); xor U2(out1,w1,in3); endmodule
5/31/2016
Microelectronics School Xidian University
(2)采用补码赋值。 module reg_test2; reg[3:0]a; reg[7:0]b; initial begin a=4’b1111; b=16’b11111111; $display("%b",a); $display("%b",b); end endmodule
5/31/2016
5
直接赋值。
module reg_test1; reg[3:0]a; reg[7:0]b; initial begin a=-1; //实际赋值为4’b1111 b=-1; //实际赋值为16’b11111111 $display("%b",a); $display("%b",b); end endmodule
5/31/2016
Microelectronics School Xidian University
11
9.3 always语句中敏感事件表在时序电路中的使用
很多综合工具(如Quartus II)不允许边沿变化信号和电平变化信号同时出现在敏感事 件表中。例如 always @(posedge clk , negedge rst ) 是正确的,可以被综合。 always @(posedge clk , rst ) 是错误的,不可以被综合。
西安电子科技大学verilog教程

2013-8-7 17
西安电子科技大学
雷达信号处理国防科技重点实验室
Verilog 数字系统设计教程
第一讲 Verilog 的基本概念
宋万杰
西安电子科技大学 雷达信号处理国家重点实验室
1.1 硬件描述语言HDL
• 硬件描述语言HDL(Hardware Description Language)是 硬件设计人员和电子设计自动化(EDA)工具之间的接
2013-8-7
16
西安电子科技大学
雷达信号处理国防科技重点实验室
第一竞争对数字系统提出了越来越高的 要求,特别是需要设计具有实时信号处理能力的专用 集成电路,要求把包括多个CPU内核的整个电子系统 综合到一个芯片(SOC)上。 VHDL和Verilog HDL这两种工业标准的产生 顺应了历史的潮流,因而得到了迅速的发展。作为新 世纪的中国大学生应该尽早掌握这种新的设计方法, 使我国在复杂数字电路及系统的设计竞争中逐步缩小 与美国等先进的工业发达国家的差距。为我国新世纪 的深亚微米千万门级的复杂系统的设计培养一批技术 骨干。
2013-8-7 2
西安电子科技大学
雷达信号处理国防科技重点实验室
课时及考试安排
授课时数:30课时 上机时数;14课时
考试时数:90分钟
成绩计算:大作业*40%+考试*60%
2013-8-7
3
西安电子科技大学
雷达信号处理国防科技重点实验室
课程内容安排
第一部分 初级篇
第一章. 概述及设计工具介绍 第二章. Verilog HDL的基本知识 第三章. Verilog HDL基本概念 第四章. 常用Verilog语法之一 第五章.常用Verilog语法之二 第六章.常用Verilog语法之三 第七章.常用Verilog语法之四 第八章.常用Verilog语法之五
西安电子科技大学
雷达信号处理国防科技重点实验室
Verilog 数字系统设计教程
第一讲 Verilog 的基本概念
宋万杰
西安电子科技大学 雷达信号处理国家重点实验室
1.1 硬件描述语言HDL
• 硬件描述语言HDL(Hardware Description Language)是 硬件设计人员和电子设计自动化(EDA)工具之间的接
2013-8-7
16
西安电子科技大学
雷达信号处理国防科技重点实验室
第一竞争对数字系统提出了越来越高的 要求,特别是需要设计具有实时信号处理能力的专用 集成电路,要求把包括多个CPU内核的整个电子系统 综合到一个芯片(SOC)上。 VHDL和Verilog HDL这两种工业标准的产生 顺应了历史的潮流,因而得到了迅速的发展。作为新 世纪的中国大学生应该尽早掌握这种新的设计方法, 使我国在复杂数字电路及系统的设计竞争中逐步缩小 与美国等先进的工业发达国家的差距。为我国新世纪 的深亚微米千万门级的复杂系统的设计培养一批技术 骨干。
2013-8-7 2
西安电子科技大学
雷达信号处理国防科技重点实验室
课时及考试安排
授课时数:30课时 上机时数;14课时
考试时数:90分钟
成绩计算:大作业*40%+考试*60%
2013-8-7
3
西安电子科技大学
雷达信号处理国防科技重点实验室
课程内容安排
第一部分 初级篇
第一章. 概述及设计工具介绍 第二章. Verilog HDL的基本知识 第三章. Verilog HDL基本概念 第四章. 常用Verilog语法之一 第五章.常用Verilog语法之二 第六章.常用Verilog语法之三 第七章.常用Verilog语法之四 第八章.常用Verilog语法之五
[工学]西安电子科技大学verilog教程1-2
![[工学]西安电子科技大学verilog教程1-2](https://img.taocdn.com/s3/m/7e9aa877240c844768eaeea1.png)
西安电子科技大学
雷达信号处理国防科技重点实验室
2. 数字信号处理
数字信处理系统往往要进行一些复杂的数字运算和数据处理, 并且又有实时响应的要求,他们通常是由高速专用数字逻辑系统或专 用数字信号处理器所构成,电路是相当复杂的。因此只有在高速大规 模集成电路设计制造技术进步的基础上,才有可能实现真正有意义的 实时数字信号处理系统。对实时数字信号处理系统的要求不断提高, 也推动了高速大规模集成电路设计制造技术的进步。现代专用集成电 路的设计是借助于电子电路设计自动化(EDA)工具完成的。学习和 掌握硬件描述语言(HDL)是使用电子电路设计自动化工具的基础。
• 由传统的观点出发,可以从三个不同的方面来研究计算,即从数 学、科学和工程的不同角度;由比较现代的观点出发,可以从四 个主要的方面来研究计算,即从算法和数据结构、编程语言、体 系结构、软件和硬件设计方法学。
• 一个复杂的数字系统设计往往是从算法到由硬线连接的门级逻辑 结构,再映射到硅片的逐步实现的过程。
&Moorby,刘明业等译。
西安电子科技大学
雷达信号处理国防科技重点实验室
课时及考试安排
授课时数:30课时 上机时数;14课时 考试时数:90分钟 成绩计算:大作业*40%+考试*60%
西安电子科技大学
雷达信号处理国防科技重点实验室
课程内容安排
第一部分 初级篇
第一章. 概述及设计工具介绍 第二章. Verilog HDL的基本知识 第三章. Verilog HDL基本概念 第四章. 常用Verilog语法之一 第五章.常用Verilog语法之二 第六章.常用Verilog语法之三 第七章.常用Verilog语法之四 第八章.常用Verilog语法之五
《Verilog设计入门》PPT课件

精选PPT
18
3.1 组合电路的Verilog描述
3.1.2 4选1多路选择器及其case语句表述方式 6.赋值操作符 “<=”,只能用于顺序语句,不能用于assign引 导的并行语句
两种过程赋值操作: (1)阻塞式赋值“=”:语句执行结束,右侧表达式的值立刻赋给左侧 目标变量。
对于always引导的块语句中含有多条阻塞式赋值语句时,当执行某 一条语句时,其它语句不允许执行,被阻塞了,具有顺序执行的特点。
精选PPT
23
3.1 组合电路的Verilog描述
3.1.4 4选1多路选择器及其if语句描述方式
精选PPT
24
3.1 组合电路的Verilog描述
3.1.4 4选1多路选择器及其if语句描述方式 1.if_ else条件语句 if(表达式) begin 语句1;语句2;…..语句n; end else begin 语句n+1;语句n+2;…..语句n+n; end
input a,b;
output so,co;
assign so = a ^ b;
assign co = a & b;
endmodule
精选PPT
28
3.1 组合电路的Verilog描述
3.1.5 加法器及其Verilog描述
2.基于always @引导的过程语句和逻辑操作符的描述
module h_adder2(a,b,so,co);
endmodule
精选PPT
34
3.1 组合电路的Verilog描述
3.1.5 加法器及其Verilog描述 5. 全加器描述----用半加器、或门模块及例化语句描述
精选PPT
verilog数字系统设计教程PPT课件

数字系统设计的核心知识
• 复杂数字系统的构成; • 基本电路和 Verilog 的对应关系; • 同步有限状态机在电路中的作用; • 时钟树与自动综合技术
数字逻辑电路的构成
- 组合逻辑:输出只是输入逻辑电平的函
数(有延时),与电路的原始状态无关。
• 时序逻辑:输出不只是输入的逻辑电
平的函数,还与电路所处的状态有关。
8 ‘ d 31
8‘d
t
out[15:0]
202
16 ‘ d
16‘ d
t
Sn 开
93
606
t 关
全局时钟网和平衡树结构
触发器1
全局时钟网络 触发器 图1 全局时钟网示意图
缓冲器
触发器n
图2 平衡树结构示意图
避免冒险和竞争
• 由于组合逻辑和布线的延迟引起
a
c
b
a
b
t
c
t
clock
避免冒险和竞争与流水线
t
t
带寄存器的八位数据通路控制器的波形
ControlSwitch
in[7]
out[7]
CLOCK
out[7]
D Q[7]
ControlSwitch
in[0]
out[0]
CLOCK
out[0]
D Q[0]
带寄存器的八位数据通路控制器的Verilog描述
`define ON 1 ‘b 1 `define OFF 1 ‘b 0 wire ControlSwitch; wire clock wire [7:0] out, in;
ControlSwitch in[7]
out[7]
…... …...
in[0]
• 复杂数字系统的构成; • 基本电路和 Verilog 的对应关系; • 同步有限状态机在电路中的作用; • 时钟树与自动综合技术
数字逻辑电路的构成
- 组合逻辑:输出只是输入逻辑电平的函
数(有延时),与电路的原始状态无关。
• 时序逻辑:输出不只是输入的逻辑电
平的函数,还与电路所处的状态有关。
8 ‘ d 31
8‘d
t
out[15:0]
202
16 ‘ d
16‘ d
t
Sn 开
93
606
t 关
全局时钟网和平衡树结构
触发器1
全局时钟网络 触发器 图1 全局时钟网示意图
缓冲器
触发器n
图2 平衡树结构示意图
避免冒险和竞争
• 由于组合逻辑和布线的延迟引起
a
c
b
a
b
t
c
t
clock
避免冒险和竞争与流水线
t
t
带寄存器的八位数据通路控制器的波形
ControlSwitch
in[7]
out[7]
CLOCK
out[7]
D Q[7]
ControlSwitch
in[0]
out[0]
CLOCK
out[0]
D Q[0]
带寄存器的八位数据通路控制器的Verilog描述
`define ON 1 ‘b 1 `define OFF 1 ‘b 0 wire ControlSwitch; wire clock wire [7:0] out, in;
ControlSwitch in[7]
out[7]
…... …...
in[0]
第四章 Verilog基本语法(一)PPT教学课件

16
2020/12/11
玉溪师范学院
参数
➢ 参数是一个常量。用parameter定义一个标识符来代表 一个常量。参数经常用于定义时延和变量的宽度。
格式: parameter param1 = const_expr1,
param2 = const_expr2,
…,
paramN = const_exprN;
assign #XOR_DELAY S=A^B;
assign #AND_DELAY C=A&B;
endmodule
19
TOP HA
2020/12/11
玉溪师范学院
参数值的模块引用
module TOP3(NewA,NewB,NewS,NewC); input NewA, NewB; output NewS,NewC; HA #(5,2) Ha1 (NewA, NewB, NewS, NewC);ut
selb
26
2020/12/11
玉溪师范学院
reg型
寄存器是数据存储单元的抽象 reg型数据常用来表示always块内的指定信号,常代表触
发器 reg型数据用initial或者always块中指定信号 reg型数据的缺省值是x。可以被赋正值或者负值。当它作
为一个表达式中的操作数时候,作为无符号数。 reg数据类型定义格式为
2.0 ; -0.1等
科学记数法,例如:
235.1e2 等于23510.0
234_12e2
等于2341200.0
实数小数通过四舍五入被隐式地转换为最相近的整数。例如:
42.446, 42.45 转换为整数42
92.5, 92.699 转换为整数93
-5.62 转换为整数-6
2020/12/11
玉溪师范学院
参数
➢ 参数是一个常量。用parameter定义一个标识符来代表 一个常量。参数经常用于定义时延和变量的宽度。
格式: parameter param1 = const_expr1,
param2 = const_expr2,
…,
paramN = const_exprN;
assign #XOR_DELAY S=A^B;
assign #AND_DELAY C=A&B;
endmodule
19
TOP HA
2020/12/11
玉溪师范学院
参数值的模块引用
module TOP3(NewA,NewB,NewS,NewC); input NewA, NewB; output NewS,NewC; HA #(5,2) Ha1 (NewA, NewB, NewS, NewC);ut
selb
26
2020/12/11
玉溪师范学院
reg型
寄存器是数据存储单元的抽象 reg型数据常用来表示always块内的指定信号,常代表触
发器 reg型数据用initial或者always块中指定信号 reg型数据的缺省值是x。可以被赋正值或者负值。当它作
为一个表达式中的操作数时候,作为无符号数。 reg数据类型定义格式为
2.0 ; -0.1等
科学记数法,例如:
235.1e2 等于23510.0
234_12e2
等于2341200.0
实数小数通过四舍五入被隐式地转换为最相近的整数。例如:
42.446, 42.45 转换为整数42
92.5, 92.699 转换为整数93
-5.62 转换为整数-6
西安电子科技大学verilog教程(3-7)

选择数据类型时常犯的错误举例
example.v
修改后: 修改前: module example(o1, o2, a, b, c, d); input a, b, c, d; output o1, o2; reg c, d; reg o2 and u1(o2, c, d); always @(a or b) if (a) o1 = b; else o1 = 0; endmodule
//(共有k个双向总线
端口) I/O说明也可以写在端口声明语句里。其格式如下: module module_name(input port1,input port2,… output port1,output port2… );
西安电子科技大学
雷达信号处理国防科技重点实验室
3.1 模块的结构
内部信号说明
3.2 数据类型及其常量及变量
负数。一个数字可以被定义为负数,只需在位宽表达式前加一个减号,减号
必须写在数字定义表达式的最前面。注意减号不可以放在位宽和进制之间也不 可以放在进制和具体的数之间。 -8'd5 //这个表达式代表5的补数(用八位二进制数表示) 8‘d-5 //非法格式
下画线(underscore_)。下划线可以用来分隔开数的表达以提高程序可
module mod1( out, in1, in2); ... parameter cycle = 20, prop_ del = 3, setup = cycle/2 - prop_del, p1 = 8, x_ word = 16‟bx, file = "/ usr1/ jdough/ design/ mem_ file. dat"; ... wire [p1: 0] w1; // A wire declaration using parameter ... endmodule 注意:参数file不是string,
西安电子科技大学NCverilog教程

谢谢!
NC-Verilog概述
❖ 在SimVision分析环境下进行对设计中的问 题的调试。 SimVision是一个candence 仿真器统一的 图形化的调试环境。SimVision可以用于调 试用verilog,vhdl,SystemC或者它们混合 写成的数字,仿真,或数模混合电路的设计。
两种模式运行SimVision
SimVision让你控制和查询你的 设计仿真。SimVision中你可以 存储个别目标或者范围的仿真 数据,这可以使得仿真数据尽 量的小。 因此需要设置探测类型: 在设计窗口中,点击 test_drink _machine 图示旁边的加号,展开设计的 层次结构。选择顶层模块--> 选择菜单Simulation--〉 Create Probe
VHDL 编译器(compiler)
Verilog 编译器(compiler)
描述器(Elaboretor)
仿真/仿真器(Simulator)
NC浏览(NCBrowse)
波形察看窗口(Waveform Window)
选中2个.v文件 点击
进行编译,之后会 在右边窗口中看到 帽子图标(工作库) 下面产生2个文件。
NC-Verilog
NC-Verilog概述
❖ Cadence的仿真工具NC-Verilog simulator ❖ 在NC-Launch上进行设计仿真 ❖ 在SimVision分析环境下对设计中的问题进
行调试
NC-Verilog概述
❖ 在NC-Launch(用于管理大型设计的图形交 互接口)上进行设计的仿真。NCLaunch帮 助你配置和启动编译器,描述器和仿真器。
本例中是对所有的模表和范围进 行探测,因此是从顶层开始的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四章 Verilog HDL数字逻辑 电路设计方法
9/26/2020
Microelectronics School Xidian University
1
4.1 Verilog HDL 语言设计思想和可综合特性
例4.1-1:用Verilog HDL设计模256(8bits)计数器 (a)可综合程序描述方式 module counter (count,clk,reset); output count; input clk,reset; reg [7:0] count; reg out; always @(posedge clk)
not
U1 (w1,sel[1]);
U2 (w2,sel[0]);
and
U3 (w3,w1,w2,data[0]);
U4 (w4,w1,sel[0],data[1]);
U5 (w5,sel[1],w2,data[2]);
U6 (w6,sel[1],sel[0],data[3]);
or
U7 (out,w3,w4,w5,w6);\
A
B
C
OUT
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
1
1
1
1
0
1
1
1
1
0
1
1
1
1
1
9/26/2020
Microelectronics School Xidian University
6
在Verilog HDL中,可以使用“case”语句对电路进行 描述性设计,表4.2-1真值表设计代码如下: module desingn (OUT,A,B,C); output OUT; input A,B,C; reg OUT;
endmodule
assign w1=(~sel[1])&(~sel[0])&data[0]; assign w2=(~sel[1])&sel[0]&data[1]; assign w3=sel[1]&(~sel[0])&data[2]; assign w4=sel[1]&sel[0]&data[3]; assign out=w1|w2|w3|w4; endmodule
9/26/2020
Microelectronics School Xidian University
4
4.2 Verilog HDL组合电路设计
组合电路的特点是:电路中任意时刻的稳态输出仅仅取决于该时刻的 输入,而与电路原来的状态无关。
组合电路的设计需要从以下几个方面考虑:
•所用的逻辑器件数目最少,器件的种类最少,且器件之间的连线最简单。这 样的电路称“最小化”电路; •其次,为了满足速度要求,应使级数尽量少,以减少门电路的延迟;电路的 功耗应尽可能的小,工作时稳定可靠。
endmodule
在现阶段,作为设计人员熟练掌 握Verilog HDL程序设计的多样性和可 综合性,是至关重要的。作为数字集 成电路的基础,基本数字逻辑电路的 设计是进行复杂电路的前提。本章通 过对数字电路中基本逻辑电路的 Verilog HDL程序设计进行讲述,掌握 基本逻辑电路的可综合性设计,为具 有特定功能的复杂电路的设计打下基 础。
if (!reset) count<=0; else if (count==8'b11111111) count<=0;
else count<=count+1; endmodule
(b)常见的错误描述方式 module counter (count,clk,reset); output count; input reset,clk; reg [7:0] count; reg out; integer i; always @(posedge clk,reset) begin if (!reset) count<=0; else for (i=0;i<=255;i=i+1) count<=count+1;
end
endmodule
9/26/2020
Microelectronics School Xidian University
2
同时Verilog HDL的电路描述方式具有多样性,这也决定了对于电路 设计的多样性。
例4.1-2: 用Verilog HDL设计数字多路选择器 (a)采用真值表形式的代码: module MUX (out,data,sel); output out; input [3:0] data; input [1:0] sel; reg out;
always @(A or B or C) case ({A,B,C}) 3'b000 : OUT<=0; 3'b001 : OUT<=0; 3'b010 : OUT<=0; 3'b100 : OUT<=0; 3'b011 : OUT<=1; 3'b101 : OUT<=1; 3'b110 : OUT<=1; 3'b111 : OUT<=1;
描述组合逻辑电路有四种方式:结构描述、逻辑代数、真值表、抽象 描述。
9/26/2020
Microelectronics School Xidian University
5
例4.2-1:设计一个3个裁判的表决电路,当两个或两个以上裁判同意 时,判决器输出“1”,否则输出“0”。
方法1:真值表方式
真值表是对电路功能最直接和简单的描述方式。根据电路的功能,可 以通过真值表直接建立起输出与输入之间的逻辑关系。例4.2-1有三个 输入端A、B、C和一个输出端OUT。
(b)采用逻辑表达式形式的代码: module MUX (out,data,sel); output out; input [3:0] data; input [1:0] sel; wire w1,w2,w3,w4;
always @(data or sel) case (sel) 2'b00 : out<=data[0]; 2'b01 : out<=data[1]; 2'b10 : out<=data[2]; 2'b11 : out<=data[3]; endcase
9/26/2020
Microelectronics School Xidian University
3
(c)采用结构性描述的代码: module MUX (out,data,sel); output out; input [3:0] data; input [1:0] sel; wire w1,w2,w3,w4;
9/26/2020
Microelectronics School Xidian University
1
4.1 Verilog HDL 语言设计思想和可综合特性
例4.1-1:用Verilog HDL设计模256(8bits)计数器 (a)可综合程序描述方式 module counter (count,clk,reset); output count; input clk,reset; reg [7:0] count; reg out; always @(posedge clk)
not
U1 (w1,sel[1]);
U2 (w2,sel[0]);
and
U3 (w3,w1,w2,data[0]);
U4 (w4,w1,sel[0],data[1]);
U5 (w5,sel[1],w2,data[2]);
U6 (w6,sel[1],sel[0],data[3]);
or
U7 (out,w3,w4,w5,w6);\
A
B
C
OUT
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
1
1
1
1
0
1
1
1
1
0
1
1
1
1
1
9/26/2020
Microelectronics School Xidian University
6
在Verilog HDL中,可以使用“case”语句对电路进行 描述性设计,表4.2-1真值表设计代码如下: module desingn (OUT,A,B,C); output OUT; input A,B,C; reg OUT;
endmodule
assign w1=(~sel[1])&(~sel[0])&data[0]; assign w2=(~sel[1])&sel[0]&data[1]; assign w3=sel[1]&(~sel[0])&data[2]; assign w4=sel[1]&sel[0]&data[3]; assign out=w1|w2|w3|w4; endmodule
9/26/2020
Microelectronics School Xidian University
4
4.2 Verilog HDL组合电路设计
组合电路的特点是:电路中任意时刻的稳态输出仅仅取决于该时刻的 输入,而与电路原来的状态无关。
组合电路的设计需要从以下几个方面考虑:
•所用的逻辑器件数目最少,器件的种类最少,且器件之间的连线最简单。这 样的电路称“最小化”电路; •其次,为了满足速度要求,应使级数尽量少,以减少门电路的延迟;电路的 功耗应尽可能的小,工作时稳定可靠。
endmodule
在现阶段,作为设计人员熟练掌 握Verilog HDL程序设计的多样性和可 综合性,是至关重要的。作为数字集 成电路的基础,基本数字逻辑电路的 设计是进行复杂电路的前提。本章通 过对数字电路中基本逻辑电路的 Verilog HDL程序设计进行讲述,掌握 基本逻辑电路的可综合性设计,为具 有特定功能的复杂电路的设计打下基 础。
if (!reset) count<=0; else if (count==8'b11111111) count<=0;
else count<=count+1; endmodule
(b)常见的错误描述方式 module counter (count,clk,reset); output count; input reset,clk; reg [7:0] count; reg out; integer i; always @(posedge clk,reset) begin if (!reset) count<=0; else for (i=0;i<=255;i=i+1) count<=count+1;
end
endmodule
9/26/2020
Microelectronics School Xidian University
2
同时Verilog HDL的电路描述方式具有多样性,这也决定了对于电路 设计的多样性。
例4.1-2: 用Verilog HDL设计数字多路选择器 (a)采用真值表形式的代码: module MUX (out,data,sel); output out; input [3:0] data; input [1:0] sel; reg out;
always @(A or B or C) case ({A,B,C}) 3'b000 : OUT<=0; 3'b001 : OUT<=0; 3'b010 : OUT<=0; 3'b100 : OUT<=0; 3'b011 : OUT<=1; 3'b101 : OUT<=1; 3'b110 : OUT<=1; 3'b111 : OUT<=1;
描述组合逻辑电路有四种方式:结构描述、逻辑代数、真值表、抽象 描述。
9/26/2020
Microelectronics School Xidian University
5
例4.2-1:设计一个3个裁判的表决电路,当两个或两个以上裁判同意 时,判决器输出“1”,否则输出“0”。
方法1:真值表方式
真值表是对电路功能最直接和简单的描述方式。根据电路的功能,可 以通过真值表直接建立起输出与输入之间的逻辑关系。例4.2-1有三个 输入端A、B、C和一个输出端OUT。
(b)采用逻辑表达式形式的代码: module MUX (out,data,sel); output out; input [3:0] data; input [1:0] sel; wire w1,w2,w3,w4;
always @(data or sel) case (sel) 2'b00 : out<=data[0]; 2'b01 : out<=data[1]; 2'b10 : out<=data[2]; 2'b11 : out<=data[3]; endcase
9/26/2020
Microelectronics School Xidian University
3
(c)采用结构性描述的代码: module MUX (out,data,sel); output out; input [3:0] data; input [1:0] sel; wire w1,w2,w3,w4;