El documento describe los principios del diseño para la reutilización. Explica que las macros deben ser fácilmente integrables, robustas, configurables para diferentes aplicaciones, compatibles con múltiples tecnologías y simuladores, basadas en estándares e independientemente verificadas. También destaca que el diseño para la reutilización requiere buenas prácticas de diseño y documentación exhaustiva para que las macros sean completamente reutilizables.
0 calificaciones0% encontró este documento útil (0 votos)
34 vistas15 páginas
El documento describe los principios del diseño para la reutilización. Explica que las macros deben ser fácilmente integrables, robustas, configurables para diferentes aplicaciones, compatibles con múltiples tecnologías y simuladores, basadas en estándares e independientemente verificadas. También destaca que el diseño para la reutilización requiere buenas prácticas de diseño y documentación exhaustiva para que las macros sean completamente reutilizables.
El documento describe los principios del diseño para la reutilización. Explica que las macros deben ser fácilmente integrables, robustas, configurables para diferentes aplicaciones, compatibles con múltiples tecnologías y simuladores, basadas en estándares e independientemente verificadas. También destaca que el diseño para la reutilización requiere buenas prácticas de diseño y documentación exhaustiva para que las macros sean completamente reutilizables.
El documento describe los principios del diseño para la reutilización. Explica que las macros deben ser fácilmente integrables, robustas, configurables para diferentes aplicaciones, compatibles con múltiples tecnologías y simuladores, basadas en estándares e independientemente verificadas. También destaca que el diseño para la reutilización requiere buenas prácticas de diseño y documentación exhaustiva para que las macros sean completamente reutilizables.
Descargue como PDF, TXT o lea en línea desde Scribd
Descargar como pdf o txt
Está en la página 1de 15
3.2.
2 Metodología Design & Reuse
Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 56
Antecedentes • Los diseños de SoC son posibles gracias a la tecnología submicrón profunda. • Esta tecnología presenta todo un conjunto de desafíos de diseño que incluyen retardos de interconexión, distribución de las señales de reloj, distribución de energía y la ubicación y enrutamiento de millones de compuertas. • Estos problemas de diseño físico pueden tener un impacto significativo en el diseño funcional de los SoC y en el propio proceso de diseño. • Los problemas de interconexión, la planificación de la ubicación y el diseño de tiempos deben considerarse desde el inicio del proceso de diseño, al mismo tiempo que el desarrollo de los requisitos funcionales. Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 57 Diseño Para Reuso: Generalidades • El desafío de utilizar una metodología de diseño eficaz basada en bloques requiere una amplia biblioteca de bloques reutilizables o macros. • Los desarrolladores de estas macros deben, a su vez, emplear una metodología de diseño que produzca de forma coherente macros reutilizables. • Esta metodología de reutilización de diseño se basa en los siguientes principios: • La macro debe ser extremadamente fácil de integrar en el diseño general del chip. • La macro debe ser tan robusta que el integrador no tenga que realizar ninguna verificación funcional de los aspectos internos de la macro. Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 58 Diseño para el Uso • El diseño para la reutilización presenta desafíos específicos para el equipo de diseño. • Para ser reutilizable, un diseño primero debe ser utilizable: un diseño robusto y correcto. • Muchas de las técnicas para la reutilización del diseño son sólo buenas técnicas de diseño: • Buena documentación. • Buen código con comentarios exhaustivos. • Entornos de verificación bien diseñados. • Scripts robustos.
Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 59
Diseño para el Uso • Los ingenieros aprenden estas técnicas en su formación profesional pero en las presiones de un proyecto de diseño real, a menudo toman atajos. • Un atajo puede parecer que acorta el ciclo de diseño, pero en realidad solo cambia el esfuerzo de la fase de diseño a la fase de integración del proyecto. • Inicialmente, cumplir con las buenas prácticas de diseño puede parecer una carga innecesaria. • Pero estas técnicas aceleran los procesos de diseño, verificación y depuración de cualquier proyecto al reducir las iteraciones a través del bucle de codificación y verificación.
Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 60
Diseño para la Reutilización • Además de los requisitos anteriores para un diseño sólido, hay algunos requisitos adicionales para que una macro de hardware sea totalmente reutilizable. • La macro debe ser: • Diseñada para resolver un problema general: esto a menudo significa que la macro debe ser fácilmente configurable para adaptarse a diferentes aplicaciones.
Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 61
Diseño para la Reutilización • La macro también debe ser: • Diseñada para su uso en múltiples tecnologías: • Ser macros suaves, esto significa que los scripts de síntesis deben producir una calidad satisfactoria de los resultados con una variedad de bibliotecas. • Ser macros duras, esto significa tener una estrategia de migración eficaz para asignar la macro a nuevas tecnologías.
Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 62
Diseño para la Reutilización • La macro también debe ser: • Diseñado para la simulación con una variedad de simuladores • Una macro o un banco de pruebas de verificación que funciona con un solo simulador no es portátil. • Algunos simuladores nuevos admiten Verilog y VHDL. • Sin embargo, las buenas prácticas de reutilización de diseño requieren que una versión de Verilog y VHDL de cada modelo y banco de pruebas de verificación deben estar disponibles, y deben funcionar con todos los simuladores comerciales principales.
Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 63
Diseño para la Reutilización • La macro también debe ser: • Diseñada con interfaces basadas en estándares • Las interfaces únicas o personalizadas deben utilizarse sólo si no existe ninguna interfaz basada en estándares.
Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 64
Diseño para la Reutilización • La macro también debe ser: • Verificada independientemente del chip en el que se utilizará. • A menudo, las macros se diseñan y solo se prueban parcialmente antes de integrarse en un chip para su verificación, ahorrando así el esfuerzo de desarrollar un banco de pruebas completo para el diseño. • Los diseños reutilizables deben tener bancos de pruebas completos e independientes y conjuntos de verificación que ofrecen niveles muy altos de cobertura de prueba.
Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 65
Diseño para la Reutilización • La macro también debe ser: • Verificada a un alto nivel de seguridad • Esto significa una verificación muy rigurosa, así como la construcción de un prototipo físico que se prueba en un sistema real que se ejecuta con software real.
Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 66
Diseño para la Reutilización • La macro también debe ser: • Completamente documentada en términos de aplicaciones y restricciones apropiadas • En particular, se deben documentar las configuraciones válidas y los valores de parámetros. • Cualquier restricción en las configuraciones o valores de parámetro debe indicarse claramente. • Se deben documentar los requisitos de interfaz y las restricciones sobre cómo se puede usar la macro. • Estos requisitos aumentan el tiempo y el esfuerzo para el desarrollo de una macro, pero proporcionan la ventaja de que la macro sea reutilizable. Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 67 Conclusiones del Diseño para la Reutilización • La primera conclusión es que la reutilización proporciona alrededor de un beneficio de 2-3x. • Es decir, reutilizar algún código de un diseño anterior, o usar un bloque que no ha sido diseñado explícitamente para su reutilización, requiere entre la mitad y un tercio del esfuerzo de diseñarlo desde cero. • Este beneficio puede no ser lo suficientemente grande como para satisfacer las necesidades de la mayoría de los diseños de SoC. • La mayoría de los bloques de la mayoría de los diseños de SoC deben diseñarse explícitamente para su reutilización. Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 68 Conclusiones del Diseño para la Reutilización • Los buenos diseñadores pueden diseñar a un ritmo de aproximadamente 100 puertas por día, o aproximadamente 30 líneas de código RTL al día, si no se emplea ninguna reutilización. • Este valor ha sido la constante durante los últimos cinco años y no hay indicios de que cambie mucho en el futuro. • Para una puerta de 100K ASIC (un diseño típico de la década de 1990), esto significa 1000 días de diseño, o un equipo de 5 personas durante aproximadamente un año.
Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 69
Conclusiones del Diseño para la Reutilización
• Para un diseño de puerta de 10M, esto significaría 100,000
días de diseño, o un equipo de 500 personas durante un año. • Incluso con una mejora de 2-3x debido a la reutilización casual, este es un costo prohibitivo para la mayoría de los chips.
Eddie Galarza Zambrano – ESPE Latacunga Sistemas Embebidos - 70