¿Cómo accedemos a las señales individuales que se agrupan en un bus: entrada [4: 0] in1; en verilog

-2

Necesito reventar

input [4:0] in1;

en subpartes para que pueda mostrar cada bit por separado. No sé cómo puedo hacerlo.

las señales deben ser accedidas de esta manera

input in1:0
input in1:1
input in1:2
input in1:3

o de una manera similar, pero no tener la forma de un autobús.

Editado:

Esto es según la limitación de una herramienta de síntesis. En esa herramienta después de la síntesis en la lista de redes generada, es como este

module test ( in1, in2, out);
input [3:0] in1;
input [3:0] in2;

output [4:0] out;

así que quiero que pregunte cuál es la forma alternativa de escribir

input [3:0] in1;
    input [3:0] in2;

    output [4:0] out;

Por supuesto, no en forma de bus ([4: 0]) pero con ráfagas o en forma de explosión.

    
pregunta shailendra

1 respuesta

5

Si te refieres a acceder a un elemento en la matriz, entonces debería ser más como esto

Para modelado estructural

module input_set 
     ( input wire [4:0] in,
       output wire out
     );

out = in[0]


endmodule

o

module input_set 
     ( input wire in0, in1, in2, in3,
       output wire out
     );

output = in0


endmodule

En el modelado de comportamiento es común usarlo siempre, pero la principal diferencia son las asignaciones continuas.

module input_set 
     ( input reg [4:0] in,
       output reg out
     );

always @ (in[0], in[1], in[2], in[3])
assign output = in[0]


endmodule

Conocimiento de fondo:

En general, hay dos grupos principales de tipos de datos: Red y Variable . Acabo de mostrarle cómo usar un tipo de datos de red ( cable ). Los tipos de variables son reg , Integer , Real , Time y Realtime

Utilizamos asignaciones continuas para tipos de datos de red y asignaciones de procedimiento para tipos de datos variables.

Debe leer sobre los diferentes tipos de modelado: primitivos estructurales, de comportamiento y definidos por el usuario (UDP) Recomiendo leer algunos libros, aquí hay uno bueno enlace

    
respondido por el Iancovici

Lea otras preguntas en las etiquetas