dout_mux.v

来自「Verilog语言描述的Intel8255 IP Core」· Verilog 代码 · 共 49 行

V
49
字号
`timescale 1ns /10ps
module dout_mux (doutselect, controlreg, portainreg, pain, portbinreg, pbin, portcstatus, dout);

   input[2:0] doutselect; 
   input[7:0] controlreg; 
   input[7:0] portainreg; 
   input[7:0] pain; 
   input[7:0] portbinreg; 
   input[7:0] pbin; 
   input[7:0] portcstatus; 
   output[7:0] dout; 
   reg[7:0] dout;

   always @(doutselect or pain or portainreg or pbin or portbinreg or portcstatus or 
            controlreg or doutselect)
   begin : mux_proc
      case (doutselect)
         3'b000 :
                  begin
                     dout = pain ; 
                  end
         3'b001 :
                  begin
                     dout = portainreg ; 
                  end
         3'b010 :
                  begin
                     dout = pbin ; 
                  end
         3'b011 :
                  begin
                     dout = portbinreg ; 
                  end
         3'b100 :
                  begin
                     dout = portcstatus ; 
                  end
         3'b110 :
                  begin
                     dout = controlreg ; 
                  end
         default :
                  begin
                     dout = 8'b11111111 ; 
                  end
      endcase 
   end 
endmodule

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?