Verilog (二) multiplexer and decoder
1 mutiplexer 数据选择器
1) one-bit wide 2-1 mux
wire dout = sel? din1 : din0; // conditional continuous and wire assignment
2) 4-1 mux
module mux4_1(sel, din0, din1, din2, din3, dout);
input [:] sel;
input din0, din1, din2, din3;
output dout;
reg dout; always @ (sel or din0 or din1 or din2 or din3)
begin
case(sel)
'b00: dout = din0;
'b01: dout = din1;
'b10: dout = din2;
'b11: dout = din3;
default: dout = din0;
endcase
end endmodule
3) two-bit wide 8-1 mux (case statement)
| sel | din7 | din6 | din5 | din4 | din3 | din2 | din1 | din0 | dout |
| 000 | XX | XX | XX | XX | XX | XX | XX | DD | din0 |
| 001 | XX | XX | XX | XX | XX | XX | DD | XX | din1 |
| 010 | XX | XX | XX | XX | XX | DD | XX | XX | din2 |
| 011 | XX | XX | XX | XX | DD | XX | XX | XX | din3 |
| 100 | XX | XX | XX | DD | XX | XX | XX | XX | din4 |
| 101 | XX | XX | DD | XX | XX | XX | XX | XX | din5 |
| 110 | XX | DD | XX | XX | XX | XX | XX | XX | din6 |
| 111 | DD | XX | XX | XX | XX | XX | XX | XX | din7 |
2 decoder 解码器/译码器
n 个输入 => 2n 个输出
1) 3-8 binary decoder
module decoder3_8(A, Y);
input [:] A;
output [:] Y;
reg [:] Y; always @ (A)
case (A)
: Y = 'b00000001;
: Y = 'b00000010;
: Y = 'b00000100;
: Y = 'b00001000;
: Y = 'b00010000;
: Y = 'b00100000;
: Y = 'b01000000;
: Y = 'b10000000;
default: Y = 'b0;
endcase endmodule
decoder3_8
2) 3-6 binary decoder with enable
module decoder3_6(A, EN, Y);
input EN;
input [:] A;
output [:] Y;
reg [:] Y; always @ (EN or A)
case ({EN, A})
'b1000: Y = 6'b000001;
'b1001: Y = 6'b000010;
'b1010: Y = 6'b000100;
'b1011: Y = 6'b001000;
'b1100: Y = 6'b010001;
'b1101: Y = 6'b100000;
default: Y = 'b0;
endcase endmodule
decoder3_6_en
Verilog (二) multiplexer and decoder的更多相关文章
- ARM中的总线
ARM中的总线用于不同部件之间的通信.有两种不同类型的设备连接到总线:ARM处理器,它是总线的主设备,拥有对总线的仲裁权,可以通过同一总线主动发起数据传输请求:外围器件,是总线的从设备,在总线上是被动 ...
- 【Netty】(9)---Netty编解码器
Netty编解码器 在了解Netty编解码之前,先了解Java的编解码: 编码(Encode)称为序列化, 它将对象序列化为字节数组,用于网络传输.数据持久化或者其它用途. 解码(Decode)称为反 ...
- NodeJS学习笔记 (29)二进制解码-string_decoder(ok)
原文:https://github.com/chyingp/nodejs-learning-guide 自己过一遍: 模块简介 string_decoder模块用于将Buffer转成对应的字符串.使用 ...
- System Verilog基础(二)
这一篇笔记主要记录Procedural,Process,Task and function,Interface和Communication中值得注意的点. 1.Procedural 写testbenc ...
- Verilog MIPS32 CPU(二)-- Regfiles
Verilog MIPS32 CPU(一)-- PC寄存器 Verilog MIPS32 CPU(二)-- Regfiles Verilog MIPS32 CPU(三)-- ALU Verilog M ...
- 【第一季】CH05_FPGA设计Verilog基础(二)Enter a post title
[第一季]CH05_FPGA设计Verilog基础(二) 5.1状态机设计 状态机是许多数字系统的核心部件,是一类重要的时序逻辑电路.通常包括三个部分:一是下一个状态的逻辑电路,二是存储状态机当前状态 ...
- 在SublimeText3中搭建Verilog开发环境记录(二)
接上文 SublimeText3中搭建Verilog开发环境记录(一) 在实现了基础功能后,继续添加插件,让功能更为完善: 快速创建代码模块(snippet) Ctrl+鼠标左键实现模块跳转 通过iV ...
- CRC校验原理和verilog实现方法(二)
1 前言 在 前面的博客 CRC校验原理和verilog实现方法(一) 中,介绍了CRC校验的原理和手动计算过程.本文说一下我在学习CRC校验FPGA实现的一点心得体会. 2 线性反馈移位寄存器 ...
- Verilog学习笔记简单功能实现(二)...............全加器
先以一位全加器为例:Xi.Yi代表两个加数,Cin是地位进位信号,Cout是向高位的进位信号.列表有: Xi Yi Cin Sum Cout 0 0 0 0 0 0 0 1 1 0 ...
随机推荐
- HDU 2577---How to Type
HDU 2577 Description Pirates have finished developing the typing software. He called Cathy to test ...
- python面向对象(一),Day6
connfigparser模块 xml模块 shutil模块以及压缩解压 subprocess模块 面向对象(上) 类和对象 onfigParser 用于对特定的配置进行操作,当前模块的名称在 pyt ...
- stl空间配置器线程安全问题补充
摘要 在上一篇博客<STL空间配置器那点事>简单介绍了空间配置器的基本实现 两级空间配置器处理,一级相关细节问题,同时简单描述了STL各组件之间的关系以及设计到的设计模式等. 在最后,又关 ...
- Webform(内置对象-Response与Redirect、QueryString传值、Repeater删改)
一.内置对象(一)Response - 响应请求对象1.定义:Response对象用于动态响应客户端请示,控制发送给用户的信息,并将动态生成响应.Response对象只提供了一个数据集合cookie, ...
- HTML5中的canvas基本概念及绘图
* Canvas(画布) * 基本内容 * 简单来说,HTML5提供的新元素<canvas> * Canvas在HTML页面提供画布的功能 * 在画布中绘制各种图形 * Canvas绘制的 ...
- js中this的理解
平常用this很多,对this的理解就是this是对应执行环境,然而很多时候效果并不是想要的,最近看了一些谈到this的笔记和书籍,总结下. 对this的误解: this是指向函数本身 先上个demo ...
- SharePoint 2013中Office Web Apps的一次排错
转自http://www.cnblogs.com/awpatp/archive/2013/06/06/3121420.html, 仅供自己查看 笔者尝试在自己的测试环境中为SharePoint 201 ...
- Force.com微信开发系列(七)OAuth2.0网页授权
OAuth是一个开放协议,允许用户让第三方应用以安全且标准的方式获取该用户在某一网站上存储的私密资源(如用户个人信息.照片.视频.联系人列表),而无须将用户名和密码提供给第三方应用.本文将详细介绍OA ...
- Sharepoint学习笔记—习题系列--70-573习题解析 -(Q97-Q99)
04 }Which code segment should you add at line 03?A. currentItem["ClassificationMetadata"] ...
- MQTT for UWP
老规矩,先简单介绍下MQTT: MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分.该协 ...