jueves, 19 de enero de 2012

Problemas con System Generator / Simulink - 2

Problema 2 - Importando Múltiples Sistemas generados por SysGen en un modulo top en ISE


Cuando se trabaja con sistemas complejos puede suceder que se genere el sistema Simulink-SysGen para cada uno de ellos, y luego en el ambiente ISE escribir el modulo (entity-architectura) que interconecta los diferentes sistemas. Teóricamente este proceso debería hacerse sin problemas, sin embargo HAY PROBLEMAS no documentados, q llevaron largas horas de debug  hasta encontrar primero la fuente del problema y luego la solución. 
El siguiente gráfico detalla los distintos archivos y flujo de síntesis en el caso de que múltiples sistemas generados por separado por System Generator desean ser integrados en un solo modulo de mas alto nivel. 




System Generator crea un archivo de proyecto con la extensión .sgp que puede agregarse como una fuente a Project Navigator en el ISE. Este archivo contiene toda la información necesaria sobre el diseño en System Generator.
Sin embargo, cuando se realiza un diseño jerárquico teniendo dos o más diseños de System Generator como componentes del modulo de mayor jerarquía, se deben renombrar las librerías HDL (autmaticamente generadas por System Generator) para evitar conflictos de nombres y otros comportamientos no deseados durante la simulación. 
System Generator tiene un comando que cambia los nombres de la librería para todos los archivos relacionados en el diseño de un proyecto de System Generator. Además, también hace una copia de seguridad en el caso de que se quiera recuperar el nombre de la biblioteca original. La siguiente es la sintaxis de este comando:

XLSWITCHLIBRARY (target_dir, FROM_LIB, TO_LIB)

Reemplaza todas las bibliotecas HDL referidas como FROM_LIB con TO_LIB en un diseño de System Generator ubicado en la carpeta target_dir.
Importante: este comando se debe ejecutar desde la consola de Matlab.


Modo de Uso 
Suponiendo que se tienen dos proyectos de System Generator cuyos nombres son 'delay_bram' y 'eco_bram', la ejecución del comando XLSWITCHLIBRARY para el cambio del nombre de la librería 'work' (nombre dado por defecto por SysGen) a otro nombre (dado por el usuario) se detalla a continuación: 



Una ejecutado este comando, los sistemas generados por SysGen pueden ser usados como componentes en ISE sin tener problemas.

PD: de nuevo gracias a Layla y Esteban por este aporte. 

No hay comentarios:

Publicar un comentario