Entrelazar Verilog y el esquema en un FSM

0

Soy un noobee al diseño basado en HDL.

Construí una memoria de puerto doble simple usando las herramientas IP de fpga y la instalé en un esquema.

Estoy implementando una interfaz de cpu externa personalizada (con apretón de manos) con fpga y una de las operaciones es escribir un byte de datos en la celda de memoria fpga definida anteriormente

Estoy intentando escribir, en verilog, un FSM que controlará las operaciones en el lado "Escribir" de la memoria.

Pregunta: la memoria se crea una instancia en un esquema junto con su registro / contador de direcciones asociado.

Para un estado específico en el FSM, quiero escribir datos (provenientes de la entrada fpga, identificados como un bus) en la memoria (los datos de la memoria son un bus) e incrementar el contador de direcciones asociado con la memoria.

Por lo tanto, los datos entrantes (bus), los datos de memoria en (bus) y el registro / contador de direcciones de memoria son todos externos al FSM verilog y todos están definidos en un esquema

¿Cómo puedo hacer que el FSM (verilog) tenga conocimiento de estos componentes relacionados con el esquema y hacer que el código verilog trabaje con ellos, especialmente la operación del contador de direcciones de memoria de incremento?

Espero haber explicado esto bien.

Todos los documentos que he encontrado en verilog / FSM / FSMD no hablan de los registros / buses de control externos al código FSM.

Gracias

    
pregunta JHinkle

1 respuesta

0

No dices qué FGPA o qué herramientas estás usando, por lo que esta respuesta solo puede ser muy genérica.

Debe elegir si el "nivel superior" de su diseño será esquemático (diagrama de bloques) o HDL (Verilog).

Si se trata de un esquema, entonces debe crear una instancia de su módulo Verilog como un bloque en el diagrama de bloques. Los puertos del módulo en el código de Verilog corresponderán a los "pines" en el bloque en el diagrama de bloques, y los conectará a los pines correspondientes en la otra IP que ya tiene allí.

Si es HDL, entonces el diagrama de bloques que contiene su otra IP debe tener conexiones externas, que luego se convertirán en los puertos de módulo de un módulo de "caja negra" que usted instancia en su módulo de nivel superior Verilog. Realice las conexiones entre este módulo y el resto de su código FSM utilizando las declaraciones de Verilog normales.

    
respondido por el Dave Tweed

Lea otras preguntas en las etiquetas