zoukankan      html  css  js  c++  java
  • 三态门实现“一读多写”总线结构

     1 //三态门完成总线选择功能
     2 module tri_state_gate(input request0,request1,request2,request3,input[7:0] unit0_out,unit1_out,unit2_out,unit3_out,
     3  output[7:0]unit0_in,unit1_in,unit2_in,unit3_in);
     4  reg[7:0]bus;
     5  reg[3:0] en;
     6 always@(request0,request1,request2,request3)
     7 begin 
     8     casex({request0,request1,request2,request3})
     9     4'b0001:en=4'b0001;    //注意,这里区别于MUX结构对于三态门而言,每个门电路都有自己的使能端
    10     4'b001x:en=4'b0010;
    11     4'b01xx:en=4'b0100;
    12     4'b1xxx:en=4'b1000;
    13     default:
    14     en=4'b0000;
    15     endcase
    16 end
    17 //写总线
    18 always@(en,unit0_out,unit1_out,unit2_out,unit3_out)
    19 begin 
    20     case(en)
    21          4'b0001:bus=unit0_out;
    22          4'b0010:bus=unit1_out;
    23          4'b0100:bus=unit2_out;
    24          4'b1000:bus=unit3_out;
    25         default:
    26         bus=8'hzz;  //总线空闲的时候,处于断开的状态,属于高阻态,这个特性很重要!
    27     endcase
    28 end        
    29 assign unit0_in=bus;
    30 assign unit1_in=bus;
    31 assign unit2_in=bus;
    32 assign unit3_in=bus;
    33 endmodule
  • 相关阅读:
    PHP输出日志,json美化
    php获取项目路径
    16进制颜色,正则
    doctrine/instantiator
    cn.archive.ubuntu.com 慢的问题
    yzalis/identicon 像素头像
    Shell 判断进程是否存在
    shell 2>&1
    shell 判断是否继续
    shell
  • 原文地址:https://www.cnblogs.com/shaonianpi/p/9396234.html
Copyright © 2011-2022 走看看