HdL Verilog: Pino bidirecional

author-image

Por

Este exemplo implementa um pino bidirecional com clock no HDL Verilog. O valor da EE determina se bidir é uma entrada, alimentando-se em inp ou um tri-estado, impulsionando o valor b.
Para obter mais informações sobre como usar este exemplo em seu projeto, acesse:

bidir.v
module bidirec (oe, clk, inp, outp, bidir);

// Port Declaration

input   oe;
input   clk;
input   [7:0] inp;
output  [7:0] outp;
inout   [7:0] bidir;

reg     [7:0] a;
reg     [7:0] b;

assign bidir = oe ? a : 8'bZ ;
assign outp  = b;

// Always Construct

always @ (posedge clk)
begin
    b <= bidir;
    a <= inp;
end

endmodule

 

O conteúdo desta página é uma combinação de tradução humana e por computador do conteúdo original em inglês. Este conteúdo é fornecido para sua conveniência e apenas para informação geral, e não deve ser considerado completo ou exato. Se houver alguma contradição entre a versão em inglês desta página e a tradução, a versão em inglês prevalecerá e será a determinante. Exibir a versão em inglês desta página.