Mapeo de rangos de direcciones en Verilog

2

En Verilog, qué técnicas se pueden usar para asignar un bus de direcciones a diferentes módulos de memoria. Caso típico: un núcleo de microprocesador cuyo espacio de direcciones se asigna a varios módulos de memoria: RAM, ROM, RAM de video, etc ...

He visto dos enfoques para esto:

  • asignando el bus de datos de acuerdo con el rango de direcciones seleccionado.
  • utilizando una selección de chip en los módulos de memoria de destino y habilitando el apropiado según la dirección.

¿Hay otras técnicas?

Entiendo que para el enfoque de selección de chip, los módulos de memoria deben poner sus direcciones y puertos de datos en un estado de alta impedancia para desconectarse efectivamente del bus. ¿Es correcto y es posible sintetizar esto?

    
pregunta Brad Robinson

1 respuesta

1

Verilog puede manejar el enfoque de selección de chip, el estado de alta impedancia se llama Z.

Sin embargo, si la síntesis puede manejarlo, depende de si lo que intenta sintetizar tiene los controladores necesarios de tripulación disponibles y si el programa de síntesis sabe cómo usarlos.

No es necesario desconectar las entradas del bus; solo las salidas.

Funcionó de esta manera cuando me especialicé en simulación lógica ASIC y FPGA usando Verilog.

Su asignación del método del bus de direcciones no es lo suficientemente clara como para poder decir mucho sobre eso.

    
respondido por el user6030

Lea otras preguntas en las etiquetas