数电第二周总结_by_yc
数电第二周总结_CC
重点:
模块实例化、仿真测试、数值表示、参数、表达式、
模块实例化端口连接方法:
A.顺序端口连接:需严格按照模块定义时的顺序
B.明明端口连接:对端口信号顺序不做要求

Ex-1
//通过例化二路选择器(mux21)实现四路选择器(mux41)。要求采用“名称连接方式”进行例化。
module mux41(
input a, b, c, d, sel0, sel1,
output out);
mux21 mux1(
.data0(a),
.data1(b),
.sel(sel0 & ~sel1),
.out(out0));
mux21 mux2(
.data0(out0),
.data1(c),
.sel(~sel0 & sel1),
.out(out1));
mux21 mux3(
.data0(out1),
.data1(d),
.sel(~sel0 & ~sel1),
.out(out2));
assign out = out2;
endmodule
- 仿真测试: 测试通过Verilog编写的电路功能是否正确

Ex-2
// 为四路选择器(mux41)编写测试平台,验证其功能正确性。
module mux41_tb();
reg a, b, c, d, sel0, sel1;
wire out;
mux41 u1(out, a, b, c, d, sel0, sel1);
initial begin
a=0; b=1; c=1; d=1; sel0=1; sel1=1;
#10 a=1; b=0; c=1; d=1; sel0=0; sel1=1;
#10 a=1; b=0; c=1; d=0; sel0=1; sel1=0;
#10 a=1; b=1; c=0; d=1; sel0=0; sel1=0;
#10 a=0; b=1; c=0; d=1; sel0=1; sel1=1;
#10 a=1; b=0; c=0; d=0; sel0=0; sel1=1;
#10 a=0; b=1; c=1; d=1; sel0=1; sel1=1;
#10 a=0; b=0; c=1; d=1; sel0=1; sel1=0;
#10 a=0; b=0; c=0; d=0; sel0=1; sel1=0;
#10 a=0; b=0; c=0; d=0; sel0=0; sel1=0; //Q:为什么需要添加这样的复位操作?
end
initial
$display($time, "a=%b b=%b c=%b d=%b sel0=%b sel1=%b out=%b", a, b, c, d, sel0, sel1, out);
endmodule
- 数值表示——进制:

(1) 4'b1001表示的十进制数为:\(\underline 9\)
(2) -4'b1001表示的十进制数为:\(\underline {-7}\)
(3) 4'sb1001表示的十进制数为:\(\underline {-7}\)
(4) -4'sb1001表示的十进制数为:\(\underline 7\)
数值表示——位宽对齐:
- 位宽大于实际位数:最高位为x/z,左补x/z;最高位为0/1,左补0.
- 位宽小于实际位数:低位截断.
参数:
// 参数的申明
module AAAA
#(
parameter MSB=3,
parameter LSB=0
)
(
input [MSB:LSB] in,
input clk,
output [MSB:LSB] out,
output full, empty
);
......
endmodule
// 参数传递——顺序列表连接
AAAA
#(MSB3, LSB2) //不可直接写后者,会对前者的值进行覆盖
AAAA_inst(
.in(in),
.clk(clk),
.out(out),
.full(full),
.empty(empty)
);
// 参数传递——参数名称连接
AAAA
#(.MSB(MSB3),
.LSB(LSB2)) //无关乎先后顺序
.in(in),
.clk(clk),
.out(out),
.full(full),
.empty(empty)
);
- 表达式:
A.算术运算符:

以下式为例:
Y = (A + C) + (B + D)
}\]
\({(A+C)+(B+D)}\)的结果长度取每个操作的最大操作数的长度,最终\(Y\)的结果取决于\(Y\)的长度。
B.位运算: 输出长度取决于输入


C.逻辑运算: 输出长度为1

D.缩位运算: 单目运算

E.关系运算符:

F.移位运算符:

G.拼接运算符:


H.条件运算符: (? :)
运算符练习题:
已知变量定义为:reg [3:0] a, b; reg [2:0] c; reg[4:0] d; 若a = 4'b0000; b = 4'b1101; c = 3'b100; d = b + c; 请给出下列函数的对应二进制输出
(1) (b + c) 输出结果为:\(\underline {0001}\)
(2) d 输出结果为: \(\underline {10001}\)
(3) (d? c : a) 输出结果为:\(\underline {0100}\)
(4) (d? a : c) 输出结果为:\(\underline {0000}\)
已知d=6'001010,e=5'bx1100,$display(d|e): 6b'0x1110
数电第二周总结_by_yc的更多相关文章
- 模电&数电知识整理(不定期更新)
模电总复习之爱课堂题目概念整理 Chapter 1 1) 设室温情况下某二极管的反偏电压绝对值为1V,则当其反偏电压值减少100mV时,反向电流的变化是基本不发生变化. 2) 二极管发生击穿后,在击穿 ...
- python课程第二周重点记录
python课程第二周重点记录 1.元组的元素不可被修改,元组的元素的元素可以被修改(字典在元组中,字典的值可以被修改) 2.个人感觉方便做加密解密 3.一些方法的使用 sb = "name ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145304 刘钦令 Java程序设计第二周学习总结
20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...
- 20145330孙文馨 《Java程序设计》第二周学习总结
20145330孙文馨第二周学习总结 第二周相比于第一周对java语言有了深一点的了解,也意识到多敲代码才是学习计算机语言的最好方法. 教材内容总结 类型.变量与运算符 *基本类型 整数(short. ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20169212《Linux内核原理与分析》第二周作业
<Linux内核原理与分析>第二周作业 这一周学习了MOOCLinux内核分析的第一讲,计算机是如何工作的?由于本科对相关知识的不熟悉,所以感觉有的知识理解起来了有一定的难度,不过多查查资 ...
- 20145218 《Java程序设计》第二周学习总结
Java中的注释格式 单行注释 //注释文字 多行注释 /注释文字/ 文档注释 /**注释文字*/ 注释不仅仅是对代码进行解释,在上一篇博客中也写过,注释也可以用来检查程序中的错误,可以说是一个小窍门 ...
- 《Java程序设计》第二周学习总结
20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...
- 20155304田宜楠 2006-2007-2 《Java程序设计》第二周学习总结
20155304田宜楠 2006-2007-2 <Java程序设计>第二周学习总结 教材学习内容总结 一.类型与变量 1.类型 整数: 可细分为为short整数(占2字节),int整数(占 ...
随机推荐
- 无线WIFI连接
家里的无线网络覆盖一直不全, 最近想改善一下.买了一个mercury的小路由器MW156RM 其实,我还是不理解WDS, repeater, bridge模式有什么区别. 目标就是实现最少的改动,保持 ...
- 海康摄像机使用GB28181接入SRS服务器的搭建步骤---源码安装的方式
下载代码 地址:https://github.com/ossrs/srs-gb28181 https://github.com/ossrs/srs-gb28181.git 注意:使用的是含有gb281 ...
- Elastic:应用程序性能监控/管理(APM)实践
在今天的文章里,我们将介绍Elastic的一个重要的应用:应用程序性能管理(Application Performance Monitoring/Management),简称APM.那么到底什么是AP ...
- STM32F10x SPL V3.6.2 集成 FreeRTOS v202112
STM32F10x SPL 集成 FreeRTOS 在整理 GCC Arm 工具链的Bluepill代码示例, 常用外设都差不多了, 接下来是 FreeRTOS, 网上查到的基本上都是基于旧版本的集成 ...
- 为什么 MES 管理系统是智能制造的核心?
不能说MES 管理系统是智能制造的核心,只能说MES管理系统是智能制造的核心的一部分,并且是一小部分.智能制造的核心的为高端制造装备和工业互联网平台,引用工信部赛迪研究院软件所所长潘文的话" ...
- 跳过nsis Error强制运行程序
NSIS编译的程序在运行之初,都会有一个程序完整性的自我检测,一旦检测到数据不完整,比如文件资源被篡改,下载过程中有数据丢失等情况,就会报错停止运行,也就是大名鼎鼎的nsis Error ,其实想跳 ...
- 220722 T2 序列(ST表+分治)
题目描述 小 B 喜欢玩游戏. 有一天,小 B 在玩一个序列上的游戏,他得到了正整数序列{ai}以及一个常数c . 游戏规则是,玩家可以对于每一个ai 分别加上一个非负整数x ,代价为 x2,完成所有 ...
- 20220925 - CSP-S 模拟赛 #2
20220925 - CSP-S 模拟赛 #2 时间记录 \(8:00-8:20\) 浏览题面 \(8:20-8:45\) T1 想到了分块计算,但是在手推样例的过程中,发现样例的数据并不能真正构成一 ...
- 在某网站的登录页面登录时如果选择“记住用户名”,登录成功后会跳转到一个中间层(页面代码将登录的用户名和密码存在cookie),中间页面中存在一个超链接,单击超链接可以链接到第三个页面查看信息。若选择“
Response实现登录并记录用户名和密码信息 在某网站的登录页面登录时如果选择"记住用户名",登录成功后会跳转到一个中间层(页面代码将登录的用户名和密码存在cookie),中间页 ...
- 【SSM】学习笔记(二)——SpringMVC入门
原视频链接:https://www.bilibili.com/video/BV1Fi4y1S7ix/?p=43&spm_id_from=pageDriver&vd_source=8ae ...