首页 > 其他分享 >数字电路设计--for循环实现mux

数字电路设计--for循环实现mux

时间:2023-12-10 13:11:20浏览次数:35  
标签:wire -- 数字电路 mux 8bit input sel

多路选择器mux是数字电路设计中很常见的一种电路结构,平时写verilog也经常会需要用到。

但想象一个场景,输入是256bit信号,输出是8bit信号,选通信号是8bit,如果写一个组合逻辑电路,用case来描述,未免太麻烦了。

因此用for循环来构造mux就更方便了,示例代码如下:

 1 module test1(input wire clk,
 2                 input wire     [15:0]     datain,
 3                 input wire     [3:0]    sel,
 4                 output    reg [3:0]    dataout);
 5 
 6 integer i;
 7 
 8 //always @(*) begin
 9 always @(sel) begin            
10     dataout = 'd0;
11     for(i=0;i<4;i=i+1)begin:mux
12         if(sel[i])begin
13             dataout = datain[i*4+:4];
14             disable mux;
15         end
16     end
17 end
18 
19 endmodule
View Code

简单构造一个tb看看效果,是可以实现对应功能的

 

参考来源:https://mp.weixin.qq.com/s/5HpilLOonRPc2U-5No0pwA

标签:wire,--,数字电路,mux,8bit,input,sel
From: https://www.cnblogs.com/Achilles7/p/17892438.html

相关文章

  • 2023-2024-1 20231421 《计算机基础与程序设计》第十一周学习总结
    ------------恢复内容开始------------------------恢复内容开始------------------------恢复内容开始------------------------恢复内容开始------------------------恢复内容开始------------------------恢复内容开始------------------------恢复内容开始------------......
  • 驱动绑定 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/driver-api/driver-model/binding.html驱动绑定驱动绑定是将设备与能够控制它的设备驱动程序关联起来的过程。通常由总线驱动程序处理这一过程,因为总线特定的结构用于表示设备和驱动程序。使用通用设备和设备驱动程序结构后,大部分绑定可......
  • PCIe 4.0天花板级性能!致态Ti600 4TB固态硬盘上手
    沉寂已久的固态硬盘市场终于迎来了破局者,长江存储·致态在TiPlus7100固态硬盘一炮走红之后,继续对产品进行迭代,并在今年10月推出了Ti系列的首款产品——致态Ti600固态硬盘。致态Ti600固态硬盘拥有更高的性价比,针对不同玩家提供了500GB,1TB及2TB多个容量版本,同时在性能方面丝毫不含......
  • 博客分类汇总
    汇总一下,自己写的博客分类,方便自己日常的学习与积累。AI聊聊基于AI模型MGeo实现行政区识别聊聊日志聚类算法及其在工作中的应用场景聊聊神经网络模型流程与卷积神经网络的实现聊聊神经网络模型预训练生成超参数实现聊聊神经网络模型传播计算逻辑聊聊神经网络模型示例......
  • 动态表单存储设计
    转载:https://www.yesdotnet.com/archive/post/1637668579.html目录前言方案一:动态添加字段方案二:预留空白字段,动态分配方案三:属性使用KEY/VALUE格式存储方案四:MongoDB方案设计总结前言Flowable,Activiti等开源解决方案所提供的表单引擎是没有业务表单数据持久化......
  • 硬件自旋锁框架 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/locking/hwspinlock.html硬件自旋锁框架简介硬件自旋锁模块为异构处理器和不在单一共享操作系统下运行的处理器之间的同步和互斥提供硬件辅助。例如,OMAP4具有双核Cortex-A9、双核Cortex-M3和一个C64x+DSP,每个处理器运行不同的操作系......
  • Go-web应用部署的方式——(2)nohup、supervisor后台运行
    摘要:本系列文章记录了几种Go-web应用的部署方式,记录并解释所有相关的命令。参考:部署Go语言项目的N种方法|李文周的博客(liwenzhou.com)1.nohupnohup用于在系统后台不挂断地运行命令,不挂断指的是退出执行命令的终端也不会影响程序的运行。主流的Linux发行版中都会默认......
  • 驱动模型 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/driver-api/driver-model/index.htmlDriverModel(驱动程序模型)DriverBinding(驱动绑定)BusTypes(总线类型)DeviceDriverDesignPatterns(设备驱动程序设计模式)TheBasicDeviceStructure(基本设备结构)Devres-ManagedDeviceResou......
  • ADC温敏电阻测温
    一、ADC采样电路使用热敏电阻与连续逼近型寄存器(SAR)模数转换器(ADC)直接监测温度的电路。温度检测电路使用负温度系数(NTC)热敏电阻与电阻串联构成分压器。参考电压:VCC分压器:R1(已知阻值)、RX(温敏电阻)采样电压:V=RX/(RX+R1)VCCRX=VCCR1/(VCC-V)二、温阻对......
  • python算法
    目录: 回溯算法:  回溯算法:一般模型:results=[]defbacktrack(路径,选择列表):passif路径结束,满足约束条件:results.append(路径)#保存结果return#注意,返回到上一个分支,而不是返回结果,退出回溯if路径结束,不满足约束条件:......