标签:blog http os 使用 sp 数据 2014 log bs
Verilog HDL语法的I/O端口分为三类:input、output、inout。input端口不能被定义成寄存器变量型,只能是线网型;output端口信号可定义成寄存器型变量,并在always块内可以被赋值使用;而inout型双向端口信号不能被定义成reg型变量,因此只能采用assign赋值语句,不能再always块内使用。
当Z=0时,上面的管子导通,数据从器件内部端口(din)向器件外部端口 (dinout)输出。
当Z=1时,上面的管子被置为高阻态,数据不能从上面的管子输出,此时数据只 可以从下面的管子由外部端口(dinout)向 内部端口(dout)输入。
module data(clk,z,din,dinout,dout);
input clk;
input z;
input[15:0] din;
inout[15:0] dinout;
output[15:0] dout;
reg[15:0] dout;
reg[15:0] din_t;
assign dinout=(!z) din_t : 16‘bz;
always @(posedge clk)
begin
if(!z)
din_t<=din;
else
dout<=dinout;
end
endmodule
标签:blog http os 使用 sp 数据 2014 log bs
原文地址:http://www.cnblogs.com/360beida/p/4063472.html