FPGA之16:1复选器

每个slice 都有一个F8MUX。F8MUX原语:

MUXF8 MUXF8_inst(

.0(0),Il Output of MUX to general routing

.I0(10),//Input(tie to MUXF7L/LO out)

.I1(11),/IInput(tie to MUXF7 L/LO out)

.S(S)

//Input select to MUX

):

F8MUX T FIAMUX fI F7BMUX H.UE 27 1(16:1#T-个 slice 中只能实现一个16:1多路复选器,如图下图所示。

16:1复选器不经过 D触发器的对应代码:always@(*)

case((BX,AX,SELB[1:0]))

4b0000:AMUX=DATA_A[O]:

4b0001:AMUX=DATA_A[1]:

4b0010:AMUX=DATA_A[2]:

4'b0011:AMUX=DATA_A[3]:

4'b0100:AMUX=DATA_B[O]:

4'b0101:AMUX=DATA B[I]:

4b0110:AMUX=DATA B[2]:

4b0111:AMUX=DATA B[3]:

4b1000:AMUX=DATA_C[O]:

4b1001:AMUX=DATA_C[I]:

4b1010:AMUX=DATA_C[2]:

4b1011:AMUX=DATA_C[3]:

4b1100:AMUX=DATA_D[O]:

4b1101:AMUX=DATA D[1]:

4b110:AMUX=DATA_D[2]:

4b1111:AMUX=DATA D[3]:

default:AMUX=l'bx:

endcase

16:1复选器经过D触发器的对应代码:

always@(posedge CLK)

case((BX.AX,SELB[L:0])

4'b0000:AMUX <=DATA_A[0]:

4b0001:AMUX <=DATA_A[1]:

4b0010:AMUX <=DATA_A[2]:

4b0011:AMUX <=DATA_A[3]:

4b0100: AMUX <=DATA_B[0]:

4b0101:AMUX <=DATA B[1):

4'b0110: AMUX <=DATA B[2]:

4b0111:AMUX <=DATA B[3]:

4b1000: AMUX <=DATA_C[0]:

4b1001: AMUX<=DATA_C[I]:

4b1010: AMUX <=DATA_C[2]:

4b1011:AMUX <=DATA_C[3]:

4b1100: AMUX <=DATA_D[O];

4b1101: AMUX <=DATA_D[1]:

4b1110: AMUX <=DATA_D[2]:

4b1111:AMUX<=DATA_D[3]:

default: AMUX <= l'bx;

endcase

相关推荐
千穹凌帝38 分钟前
SpinalHDL之结构(二)
开发语言·前端·fpga开发
一口一口吃成大V7 小时前
FPGA随记——FPGA时序优化小经验
fpga开发
贾saisai7 小时前
Xilinx系FPGA学习笔记(九)DDR3学习
笔记·学习·fpga开发
redcocal12 小时前
地平线秋招
python·嵌入式硬件·算法·fpga开发·求职招聘
思尔芯S2C1 天前
高密原型验证系统解决方案(下篇)
fpga开发·soc设计·debugging·fpga原型验证·prototyping·深度调试·多fpga 调试
坚持每天写程序1 天前
xilinx vivado PULLMODE 设置思路
fpga开发
redcocal2 天前
地平线内推码 kbrfck
c++·嵌入式硬件·mcu·算法·fpga开发·求职招聘
邹莉斯3 天前
FPGA基本结构和简单原理
fpga开发·硬件工程
悲喜自渡7213 天前
易灵思FPGA开发(一)——软件安装
fpga开发
ZxsLoves3 天前
【【通信协议ARP的verilog实现】】
fpga开发