|
- module cd4052( //具有低导通泄漏电流2通道4:1模拟开关 VCC:Pin16 GND:Pin8 VEE:Pin7
- input A, //译码地址低位 Pin10
- input B, //译码地址高位 Pin9
- input INH, //低电平使能 高电平高阻 Pin6
- //双向IO口
- inout [3:0] XS, //[4位宽] 双向X通道 Pin:11,15,14,12
- inout [3:0] YS, //[4位宽] 双向Y通道 Pin:4,2,5,1
- inout X, //双向X通道 Pin13
- inout Y //双向Y通道 Pin3
- );
- wire [1:0] j = {B,A};
- assign X = INH ? 1'bz : XS[j];
- assign Y = INH ? 1'bz : YS[j];
- genvar i;
- generate
- for(i=0;i<4;i=i+1) begin:gen
- assign XS[i] = (!INH && i == j) ? X : 1'bz;
- assign YS[i] = (!INH && i == j) ? Y : 1'bz;
- end
- endgenerate
- endmodule
- module main(
- input A,
- input B,
- input INH,
- inout [3:0] XS,
- inout [3:0] YS,
- inout X,
- inout Y
- );
- cd4052 U1(
- .A(A),
- .B(B),
- .INH(INH),
- .XS(XS),
- .YS(YS),
- .X(X),
- .Y(Y)
- );
- endmodule
复制代码 |
|