Verilog 二选一多路选择器 Modelsim设计。

Posted crazystranger

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Verilog 二选一多路选择器 Modelsim设计。相关的知识,希望对你有一定的参考价值。

一个简单的二选一多路选择器

逻辑图

技术分享图片

 

Verilog源程序

module Mux_Two
(
    input   a,     //Data
    input   b,     //Data 
    input   sl,    //High: b  ;Low: a
    
    output reg out  
);
always@(sl or a or b)
    if(!sl)  out=a;
    else     out=b;
endmodule 

Modelsim架构文件

a为输入25MHz方波,b为输入12.5MHz的方波,sl为输入6.25MHz的方波。sl为高电平时,out输出b;sl为低电平时,out输出a。

`timescale 1ns/1ns
module Mux_Two_TB;
localparam PERIOD=20;
reg a;    //25Mhz
reg b;    //12.5Mhz
wire out; //6.25Mhz 
reg sl;   //High: b  ;Low: a  
initial
begin 
    a=0;
    forever #(PERIOD) //25Mhz
    a=~a;
end 

initial
begin
    b=0;
    forever #(PERIOD*2)   //12.5Mhz
    b=~b;
end 

initial
begin 
    sl=0;
    forever #(PERIOD*4) //6.25Mhz 
    sl=~sl;
end 

Mux_Two u_Mux_Two
(
    .a        (a),
    .b        (b),
     
    .sl      (sl),  //High: b  ;Low: a  
    .out     (out)
);
initial 
begin
end 
endmodule

 

仿真结果

技术分享图片

 

以上是关于Verilog 二选一多路选择器 Modelsim设计。的主要内容,如果未能解决你的问题,请参考以下文章

2选1多路选择器的Verilog hdl

vhdl 数据选择器设计8选1 用CASE语句

二选一数据选择器的设计

Verilog组合逻辑写法

请用结构描述法,将RTL图给出Verilog程序?

怎样用Verilog实现4选1数据选择器