Verilog funções

A

avimit

Guest
Alguém pode me sugerir como escrever uma função em Verilog que leva um vetor como entrada e produz como saída um vetor, ea função propriamente dita é independente da duração ou tamanho do vetor.I need a sintaxe da função.
Em VHDL posso fazê-lo muito eaisly
Myabs FUNÇÃO (S1: std_logic_vector) return std_logic_vector é
- esta função retorna absoluto da entrada std_logic_vector
Variável V: std_logic_vector (s1'low downto s1'high);
BEGIN
V: = s1;
for i in V'low para V'high loop
V (i): = V (i) XOR V (V'HIGH);
end loop;
V: = V V (V'HIGH);
return V;
myabs final; - Função final

Note que a função não faz qualquer menção a "dimensão de" ou a "largura" a entrada ou saída de vetores, em vez disso, "alta e baixa vhdl atributos são usados.
Pode alguém escrever isto em Verilog?

 
Em Verilog, ALSTO Você pode usar a função ou a tarefa de terminá-lo.
É muito semelhante ao VHDL sobre a função.
Eu sugiro que você encontrar uma linguagem Verilog para se referir, então você pode obtê-lo em breve

 
Eu não acho que Verilog tem nada parecido.A melhor alternativa que eu sei é para passar um parâmetro (possivelmente chamado "comprimento") para o módulo Verilog.
Código:

Top Module (in, out);

parâmetro comprimento = 16;

input [comprimento-1: 0] in;

output [comprimento-1: 0] out;# foo (comprimento. (comprimento)) u1 (. de (in). out (fora));

endmodulefoo módulo (in, out);

comprimento do parâmetro = 0;

input [comprimento-1: 0] in;

output [comprimento-1: 0] out;assign out = a 1;

endmodule
 
Echo47 Bem, muito obrigado pela sua resposta.Mas há construído em funções de dizer, por exemplo '& &', que não conhecem a 'duração' ou 'tamanho' ou 'width' de vetores passados para eles, mas a fazer o trabalho.Eu me pergunto como eles funcionam?
kr,
Aviral Mittal

 
O compilador sabe o valor internamente, mas os autores de língua simplesmente não nos deu um operador para acessá-lo.Big supervisão na minha opinião.Imagine a linguagem C sem que o operador sizeof.Acho SystemVerilog fornece a função $ bits.

 

Welcome to EDABoard.com

Sponsor

Back
Top