怎样改写成三选一多路选择器的VerilogHDL 程序?

怎样改写成三选一多路选择器的VerilogHDL 程序?,第1张

//----------------------------------------------------------------------------------------

// File name:           Eighth_Select

// Last modified Date:  2020年5月19日10点31分

// Last Version:        V1.1

// Descriptions:        8选一多路选择器设计

//----------------------------------------------------------------------------------------

module Eignth_Select(out,in0,in1,in2,in3,in4,in5,in6,in7,sel)

output out

input in0,in1,in2,in3,in4,in5,in6,in7

input[2:0] sel

reg out     //输出信号,可观察输出信号波形判断仿真是否正确

always @(in0 or in1 or in2 or in3 or in4 or in5 or in6 or in7 or sel)

    case(sel)    //根据sel的不同选通in0,in1,in2,in3,in4,in5,in6,in7

        3'b000: out=in0

        3'b001: out=in1

        3'b010: out=in2

        3'b011: out=in3

        3'b100: out=in4

        3'b101: out=in5

        3'b110: out=in6

        3'b111: out=in7

        default: out=1'bx

endcase

endmodule

典型的FPGA器件主要包含3类基本资源可编程逻辑块(configurablelogicblock,CLB)、布线资源和可编程输入/输出模块。可编程逻辑块四周被预制的布线资源通道包围,可编程输入/输出模块分布在FPGA四周,除了上述3种资源以外,通常在FPGA中还包含块RAM、乘法器等可选资源。

在FPGA各种资源中,可编程逻辑块是实现用户功能的基本单元,每个可编程逻辑块包含1个互连开关矩阵和4个SLICEs,其中每个SLICE包括2个查找表(Look-Up-Table,LUT)、2个触发器和一些多路选择器。互连开关矩阵主要由不同长度导线和多个布线开关组成。

module shift_reg8(clk, ldn, d, k, q)

input clk

input ldn, k

input [7:0]d

output [7:0]q

always@(posedge clk or ldn)

begin

if(ldn == 1'b0)

q <= d

else

if(k == 1'b0)

q <= {q[6:0], 1'b0}

else

q <= {1'b0, q[7:1]}

end

endmodle


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/yw/7779519.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存