Está en la página 1de 254
Ml TE an er CS San Y CET CHD 2* EDICION ACTUALIZADA PL OD i) Ae eee) Penton ot VHDL Lenguaje para sintesis y modelado de circuitos 2? Edicion Fernando Pardo Carpio José A. Boluda Grau Departamento de Informatica Universitat de Valéncia ap Ra-Ma’° La ley prohibe fotocopiar este libro VHDL. Lenguaje para sintesis y modelado de circuitos, 2 edicién. © Femando Pardo Carpio y José A. Boluda Grau © De la edicién: RA-MA 2004 MARCAS COMERCIALES. Las designaciones utilizadas por las empresas para distinguir sus productos (hardware, software, sistemas operativos, etc.) suelen ser marcas registradas. RA-MA ha intentado a lo Largo de este libro distinguir las marcas comerciales de los {érminos descriptivos, siguiendo el estilo que utiliza el fabricante, sin intencidn de infringir a marea y s6lo en beneficio del propictario de la misma. Los datos de los ejemplos y pantallas son ficticios a no ser que se especifique lo contrario. RA-MA es marca comercial registrada, Se ha puesto el maximo empeiio en ofrecer al lector una informacién completa y precisa ‘Sin embargo, RA-MA Editorial no asume ninguna responsabilidad derivada de su uso, ni tampoco por cualquier violacidn de patentes ni otros derechos de terceras partes que pudieran ‘curr. Esta publicacién tiene por objeto proporcionar unos conocimientos precisos y acreditados sobre el tema tratado, Su venta no supone para el editor ninguna forma de asistencia legal, administrativa ni de ningiin otro tipo. En caso de previsarse asesorfa legal w otra forma de ayuda experta, deben buscarse los servicios de un profesional eompetente Revervados todos los derechos de publicacién en cualquier idioma, Seguin lo dispuesto en el Cédigo Penal vigente ninguna parte de este libro puede ser reproducida, grabada en sistema de almacenamiento o transmitida en forma alguna ni por cualquier procedimiento, ya sea clectrénico, mecdnico, reprografico, magnético 0 cualquier otro, sin autorizacisn previa y por escrito de RA-MA; su contenido esta protegido por la Ley vigente que establece penas de prisién y/o multas a quienes intencionadamente, eprodujeren o plagiaren, en todo o en parte, una obra literaria,antistica o cientifica, Editado por: RA-MA Editorial Calle Jarama, 3A - Poligono Industrial Igarsa 28860 PARACUELLOS DE JARAMA (Madrid) Teléfono: 91 658 42.80 Telefax: 91 662 81 39 Correo electrénico: editorial@ra-ma.com Tnvemet: wwwucacmaes ¥ www.ra-ma.com ISBN: 84-7897-595.0 Deposito Legal: M-46095-2003 Autoedicién: Autores Filmacion e impresin: Franjograf, 8. L. Impreso en Espaia 012 PROLOGO . CAPITULO 1. 13.1 CAPITULO 2. 2.41 Captura 2.2 Generacién de simbolos . . 2.3. Disefio modular 2.4 Disefio jerdrquico . ist 2.5 El Netli: 2.5.1 2.5.2 CAPITULO 3. 3.1 El lenguaje VHDL VHDL describe estructura y comportamiento los de descripcién en VHDL . 3.1.1 3.2. Ejemplo basico y e: sor | 3.2.2 Descripcién flujo de datos . . . METODOLOGIA DE DISENO . 1.1 Concepto de herramientas CAD-EDA 1.2 Disefio Bottom-Up - 13. Disefio Top-Down . . . . Ventajas del diseito Top-D 1.4 Ingenieria concurrente DESCRIPCION DEL DISENO . . de esquemas El formato EDIF . . Otros formatos de Netlist... . 2.5.3 Ejemplo de diferentes Netlist INTRODUCCION AL LENGUAJE VHDL ..... . Descripcién algoritmica aauee vi_VHDL: LENGUAJE PARA SINTESIS Y MODELADO DE CIRCUITOS @RAMA 3.2.3. Descripeién estructural... 2.2... eee ee eee 32 S3) VHDES)yVBDUOS 33 CAPITULO 4, ELEMENTOS SINTACTICOS DEL VHDL . 4.1 Operadores y expresiones . . . 37 4.1.1 Operador de concatenacién 37 4.1.2 Operadores aritméticos 37 4.1.3 Operadores de desplazamiento . . . . . 38 4.14 Operadores relacionales 38 4.1.5 Operadores Idgicos 38 4.1.6 Precedencia de operadores 39 4.2. Tipos de datos 39 4.2.1. Tiposescalares . . . 40 4.2.2. Tipos compuestos . . 4 4.2.3 Subtipos de datos . . a2 4.2.4 Cualificaci6n de tipos 43 4.2.5 Conversién de tipos . goca5 44 43 Atributos 2... eee 45 4.3.1 Atributos definidos por el usuario 47 4.4 Declaracién de constantes, variables y sefiales 49 4.4.1 Constantes 49 4.4.2 Variables 49 44.3 Seffales 2... .. 50 44.4 Comparacién entre constantes, sefales y variables 50 4.5 Declaracién de entidad y arquitectura 51 4.5.1 Declaraci6n de entidad . 52 4.5.2 Declaracién de arquitectura 54 CAPITULO 5. DESCRIPCION FLUJO DEDATOS.......... 57 5.1 Ejecucién concurrente y ejecucién serie 58 5.2. Descripcin concurrente flujo de datos . . . 59 5.3. Estructuras de la ejecucién flujo de datos . . 60 5.3.1 Asignacién condicional: wHgN. . ELSE 61 5.3.2 Asignaci6n con selecci6n: wrTH. .sELECT..WHEN.... 2... 62 5 Bloque concurrente: BLOCK... 2.22... : .. 63 5.4 Ejemplos de descripcién flujo de datos... 2... 2... eee 66 CAPITULO 6. DESCRIPCION COMPORTAMENTAL ALGORITMICA...................... 69 6.1 Diferencias entre variable y sefial. 2... ee 71 @RAMA. INDICE vii 6.2 Estructuras de la ejecucién serie .. 2... 6... 74 6.2.1 El bloque de ejecucién serie: PRocEsS . . . 74 6.2.2 Sentencia de espera: WAIT oe 75 6.2.3 Sentencia condicional: IF. . THEN. .ELSE . 771 6.2.4 Sentencia de seleccién: casE . . 7B 6.2.5. Bucles: Loop, FOR y WHILE . . 79 6.3 Ejemplos de ejecucién serie 81 1 Descripcién de cerrojos 0 late hes 81 6.3.2 Descripcién de registros 82 CAPITULO 7. DESCRIPCION ESTRUCTURAL .........-- 89 7.1 Componentes, referencia y enlace 90 71.1 Definicién de componentes 90 7.1.2 Referencia de componentes : 91 7.1.3 Enlace entre componentes y entidades. Sentencia F FOR . 92 7.1.4 Repeticién de estructuras: GENERATE... 1.0... L294 7.2 Launidad de configuracion... 2.2... been eee eee 96 2A Ejemplo. 2... eee 99 CAPITULO 8. PONIENDO ORDEN: SUBPROGRAMAS, PAQUETES Y BIBLIOTECAS ...........-- 101 8.1 Subprogramas 6... 2. eee 101 8.1.1 Declaracién de procedimientos y funciones . 102 8.1.2 Llamadas a subprogramas 105 8.1.3 Sobrecarga de operadores 106 8.2 Paquetes a 108 8.2.1 Definicion de paquetes: PACKAGE y PACKAGE Bopy ....... 109 eB tie Pe gn 110 CAPITULO 9. CONCEPTOS AVANZADOS EN VHDL 9.1 Buses y resolucién de sefiales . 9.2. Punteros en VHDL 9.3. Ficheros boc 93.1. Abriry cerratficheros . =... 9.3.2 Lectura y escritura de ficheros . . 9.33 Ficheros de texto y entrada/salida esténdar CAPITULO 10. VHDL PARA SIMULACION ...........--- 131 10.1 Asignaci6n con retrasos . . . . « . 131 10.1.1 Sintaxis completa de la 2 viii_VHDL: LENGUAJE PARA SINTESIS Y MODELADO DE CIRCUITOS @©RAMA 10.1.2 Especificacién de retrasos . 132 10.1.3 Retrasos inerciales y transportados . . . . 133 10.1.4 Simulacién guiada por eventos... . . . 136 10.1.5 Avance de tiempo por incremento fijo . . . 138 10.1.6 Ejemplo de modelado de un registro . . 140 10.2 Niveles légicos para simulacién . 141 10.3 Notificacién de sucesos . . . . 143 10.4 Procesos pasivos ..... . 2. 144 10.5 Descripcién de un banco de pruebas . . .. 145 10.5.1 Método tabular... 2.2... A .. 146 10.5.2 Utilizacién de ficheros con vectores de test... . . eee. 149 10.5.3 Metodologia algoritmica . 152 CAPITULO 11. VHDL PARA SINTESIS ......... 155 11.1 Restricciones y consejos en la descripcién oe 156 11.2 Construcciones basicas «+ 159 11.2.1 Descripe .. 160 11.2.2. Descripcién de Iégica secuencial . . A eelol 11,3 Descripcién de méquinas de estados . . . .. 163 11.3.1 Maquinas asincronas .... 2... ee 11.3.2. Maquinas sincronas . ae 11.4 Légica programable . . . .. 168 11.4.1 Tecnologfas de programacién . . 168 11.4.2, PALs, PLDs y FPGAs clasicas . . ey 11.4.3 Arquitecturas hibridas (CPLDs avanzadas) .. 173 11.4.4 Mega-estructuras ...... . 175 CAPITULO 12. UTILIZACION DEL LENGUAJE VHDL .... . . 177 12.1 Errores mas comunes al utilizar VHDL... 2.2.0... 2. i 12.2 Ejemplos para simulacién y sintesis God Gocecuodan 179 12.2.1 Elboton..... eee 19 12.2.2 Los seméforos ~ + 183 12.2.3 Elascensor . . ne 12.2.4 La memoria ROM ke 12.2.5 El microprocesador -.. 190 12.2.6 La lavadora . . aa 12.2.7 Elconcurso . . 12.28 El pin-ball 12.3 Ejercicios propuestos . @RAMA INDICE ix APENDICE A. TUTORIAL Y HERRAMIENTAS PARA VHDL . . 215 A.1 Instalacion de MAX+PLUSII .... ole) A.2. Tutorial de un disefio para sintesis 2 218 A.2.1_ Descripcién del disefio . . .. 219 Perle Mes | fs EE ae ae [oe A.2.3 Simulaci6n ........-- . 220 A.3_ Instalacién y tutorial del simulador de VHDL VeriBest . . . .. 221 eee lh «+ 222 A.3.2. Tutorial basico para modelado . . . . 223 APENDICE B. VHDL Y HERRAMIENTAS EI . 225 APENDICE C. NOTACION BNF DEL VHDL'93 . . 229 C.l Notaci6n BNF... 1... ee pe eee) ee ee eee eee eee eee ee ee 231 BIBLIOGRAFIA. 2.2.00. ee 243 INDICE ALFABETICO ...............-- PROLOGO En el campo de la realizacién de sistemas digitales existen dos lineas que han se- guido una evolucién muy pareja; por un lado la tecnologia de realizaci6n de circuitos, y por otro, la metodologia de disefio de estos circuitos. Se puede decir que la evoluci6n de la tecnologia se ha desarrollado hacia los circuitos de I6gica programable y hacia los circuitos de alta escala de integracién, mientras que la evolucién de la metodologia ha ido encaminada hacia la utilizacién de lenguajes de descripcién de circuitos. Ambas lineas, metodologia y tecnologia, van necesariamente unidas; sin la apari- cidn de la l6gica programable, y el abaratamiento de fabricacién de los circuitos integra- dos, no hubieran estado tan disponibles las herramientas que, a partir de una descripci6n mediante lenguaje, permiten la realizacién de un circuito, Por otro lado, sin la evoluci6n de la metodologfa de disefio, no hubiera sido posible integrar y abordar disefios con la complejidad que los dispositivos actuales permiten. La pieza clave, en cualquier metodologia actual de disefio de circuitos, es la es- pecificacin y descripci6n del circuito. La captura de esquemas ya no es adecuada si se pretende abordar un sistema realmente complejo con miles de elementos. Se hace necesaria por tanto la utilizacién de un lenguaje para la especificacién del hardware. Existen muchos lenguajes para la descripcién de circuitos digitales, pero es preci- samente el VHDL el que esta alcanzando mayor popularidad, debido a que nacié como un estindar de descripcién de circuitos. El resto de lenguajes de descripcién suelen ser propios de una determinada herramienta o fabricante de chips, por ello resultan a ve- ces los Gptimos, pero no son esténdar. VHDL, aparte de ser esténdar, tiene un amplio campo de aplicacién, desde el modelado para simulacién de circuitos, hasta la sintesis, automatica de los mismos xii_ VHDL: LENGUAJE PARA SINTESIS Y MODELADO DE CIRCUITOS @RA-MA Dada la importancia del VHDL, pero sobre todo de la metodologia actual de di- sefio de circuitos digitales, se est incorporando Ia ensefianza de este lenguaje en la mayorfa de titulaciones de informatica, electronica y telecomunicaciones. Por tanto, el objetivo a la hora de escribir este libro ha sido doble: por un lado, servir al estudiante y al profesor como guia en el aprendizaje y ensefianza del lenguaje y la metodologia de disefio; por el otro, servir también al ingeniero que disefia circuitos digitales como referencia del lenguaje, asf como de guia, si pretende empezar con él. La estructura del libro, asf como su contenido, estén inspirados en la experiencia docente de un curso de disefio digital en la titulaci6n de Ingenieria Informatica de la Universitat de Valéncia. El objetivo del curso es explicar a los alumnos una metodologia de disefio, desde la descripcién hasta la implementacién, pasando por la simulacién, El contenido del libro abarca completamente pues, los aspectos de descripcién, simulacién € implementacién. El curso contenido en estas paginas ha sido también impartido en otras instituciones fuera de Espafta, como en el CINVESTAV (Centro de Investigacién y Estudios Avanza- dos del IPN) de México. Impartir este curso fuera de Espafia ha sido muy enriquecedor; la influencia recibida de alumnos y docentes de este centro es patente en muchas de las hojas de este libro. La estructura del libro sigue, a grandes rasgos, la metodologfa tipica de disefio de circuitos digitales, Este orden parece también el més adecuado para estructurar Ia en- sefianza del lenguaje y la metodologfa de disefio. En el Capitulo 1 se describe la me- todologia de disefio de circuitos digitales. En el Capitulo 2 se muestran las diferentes maneras de describir circuitos, desde Ia captura de esquemas hasta la descripcién a partir de lenguajes. A partir del Capitulo 3 y hasta el 9 inclusive, se expone el lenguaje en sf: se em- pieza con una introducci6n en la que se muestra un ejemplo y diferentes estilos para su descripcin; a continuacién sigue otro capitulo con la sintaxis del lenguaje; posterior- mente siguen tres capitulos dedicados a los tres estilos de descripcién al utilizar VHDL; se contintia con un capitulo dedicado a las funciones y bibliotecas. Esta parte dedica- da a los elementos del lenguaje termina con el Capitulo 9, donde se explican aquellos conceptos de uso menos frecuente, pero no por ello menos importantes. Los tres Gltimos capitulos estén dedicados al uso del lenguaje. En el Capitulo 10 se presenta el uso del lenguaje para el modelado de circuitos, es decir, para emplearlo en simulacién, Como complemento se dan también algunas nociones sobre simulacién digital. En el Capitulo 11 se explica el uso del lenguaje con el objetivo de realizar un cir- @RAMA PROLOGO xii cuito; no sélo se explican las estructuras tipicas de sintesis, sino que se muestran ademas las tecnologfas actuales para sintesis automética de circuitos. Por ultimo, el Capitulo 12 expone varios ejemplos comentados de problemas digitales de la vida cotidiana. En el Apéndice A se muestra el contenido del CD-ROM del libro y se incluye un breve tutorial para que el estudiante empiece a disefiar circuitos de forma répida y senci- Ila. El Apéndice B contiene varias direcciones donde se pueden encontrar herramientas y documentos de uso ptiblico sobre VHDL. El Apéndice C muestra toda la sintaxis del VHDL utilizando la notacién BNF. La lista de agradecimientos podria ser tan larga que resultaria imposible nombrar a todos. No obstante queremos agradecer las sugerencias y comentarios recibidos, dentro del Departamento de Informatica de 1a Universitat de Valéncia, por parte de alumnos y docentes, durante estos afios de ensefianza del VHDL y de la tecnologia digital. Impor- tante también ha sido la influencia recibida de las personas del CINVESTAV (Centro de Investigacién y Estudios Avanzados del IPN) que tanto han contribuido a la difusién y uso del VHDL en México. En la direccién http://tapec.uesIVHDLilibro.html se puede encontrar la presenta- cién de este libro, asi como ejercicios resueltos. Se han afiadido también algunos enlaces interesantes para acceder a herramientas, documentacién adicional, etc. Segunda Edicién El répido cambio que esta sufriendo 1a tecnologia en los tiltimos afios ya no nos sorprende, aunque nos sigue maravillando. Algunos de los comentarios de la primera edicién sobre la evolucién de los circuitos integrados y programables han sido superados por la realidad actual. El cambio es tan rapido que es necesario renovar y actualizar los libros cada poco tiempo. En esta nueva edicién se incluyen estos avances y se refuerzan algunos contenidos. Se han afiadido algunas secciones y contenidos sobre el uso de ficheros, conversion de tipos, tltimos avances en I6gica programable, etc. Se han mejorado los ejemplos y se han actualizado y afiadido algunos elementos del lenguaje. La estructura general ha cambiado poco, pero se ha intentado acentuar el cardcter pedagégico del libro al mejorar los ejemplos y resaltar el tutorial al final del libro. También el software se ha renovado con la inclusién de la ultima versién de va- rias herramientas de Altera para el disefio de circuitos. Estas herramientas incluyen los xiv_ VHDL: LENGUAJE PARA SINTESIS Y MODELADO DE CIRCUITOS @RAMA Uiltimos avances en el disefio de sistemas en un solo chip, procesadores empotrados, FPGAs de iiltima generacién, etc. Confiamos en que esta nueva versién actualizada permita el acercamiento de los estudiantes al cada vez més automatizado, y por lo tanto sencillo, mundo del disefio digital. Fernando Pardo Jose Antonio Boluda Valencia, octubre de 2003 CAPITULO 1 METODOLOGIA DE DISEN 1.1 CONCEPTO DE HERRAMIENTAS CAD-EDA En su sentido més modemo, CAD (disefio asistido por ordenador, del inglés Compu- ter Aided Design) significa proceso de disefio que emplea sofisticadas técnicas gréficas de ordenador, apoyadas en paquetes de software para ayuda en los problemas analiticos, de desarrollo, de coste y ergonémicos asociados con el trabajo de disefio. En principio, el CAD es un término asociado al dibujo como parte principal del proceso de disefio, sin embargo, dado que el disefio incluye otras fases, el término CAD se emplea tanto para el dibujo, o el disefio grafico, como para el resto de herramientas que ayudan al disefio (por ejemplo, la comprobacién de funcionamiento, anilisis de costes, etc.) El impacto de las herramientas de CAD sobre el proceso de disefio de circuitos electrénicos y sistemas procesadores es fundamental. No sélo por la adicién de inter- faces gréficas para facilitar la descripcin de esquemas, sino por la inclusién de herra- mientas, como los simuladores, que facilitan el proceso de disefio y la conclusién con éxito de los proyectos. EDA (Electronic Design Automation) es el nombre que se le da a todas las herra- mientas (tanto hardware como software) que sirven de ayuda en el disefio de sistemas electrnicos. Dentro del EDA, las herramientas de CAD juegan un importante papel. Sin embargo, no sélo el software es importante: computadoras cada dia mas veloces, ele- mentos de entrada de disefio cada vez mas sofisticados, etc. son también caracteristicas que ayudan a facilitar el disefio de circuitos electrénicos. 2_ VHDL: LENGUAJE PARA SINTESIS Y MODELADO DE CIRCUITOS @RAMA El disefio hardware tiene un problema fundamental que no existe, por ejemplo, en la produccién del software. Este problema es el alto coste del ciclo disefio-prototipacién- testeo-vuelta a empezar, ya que el coste del prototipo suele ser, cn general, bastante elevado. Se impone la necesidad de reducir este ciclo de disefio para no incluir la fase de prototipacién més que al final del proceso, evitando asf la repeticién de varios pro- totipos que es lo que encarece el ciclo. Para ello se introduce la fase de simulacién y comprobacién de circuitos utilizando herramientas de CAD, de forma que no es nece- sario realizar fisicamente un prototipo para comprobar el funcionamiento del circuito, economizando asi el ciclo de disefio. Este ciclo de disefio hardware se muestra con detalle en la figura 1.1. descripcién testeo: sf sintesis extraceién de ea) + Es Ee i er : mmelaio. | "| simaacn snapeato | rpiedes {—___ ———— 5 tesco ore = | simtacon > 5] saicscion |= . ° depurado acabado Figura 1.1: Flujo de diseito para sistemas electrénicos y digitales En el ciclo de disefio hardware las herramientas de CAD estan presentes en todos los pasos. En primer lugar en la fase de descripcién de Ia idea, que sera un esquema eléctrico, un diagrama de bloques, etc. En segundo lugar en la fase de simulacién y comprobacién de circuitos, donde diferentes herramientas permiten realizar simulacién por eventos, funcional, digital o eléctrica de un circuito atendiendo al nivel de simula- cién requerido. Por tltimo existen las herramientas de CAD orientadas a la fabricacién. En el caso de disefio hardware estas herramientas sirven para la realizacién de PCBs (Printed Circuit Boards 0 placas de circuito impreso), y también para la realizacién de ASICs, 0 Circuitos Integrados de Aplicacin Especifica (Application Specific Inte- grated Circuits). Estas herramientas permiten la realizacién de microchips, asi como la realizacién y programacién de dispositivos programables. Herramientas CAD para el disefio hardware: Lenguajes de descripcién de circuitos. Son lenguajes mediante los cuales es posible describir un circuito eléctrico o digital. La descripcidn puede ser estructural, don- de se muestra la arquitectura del disefio, o bien de comportamiento, donde se @RA-MA CAPITULO 1, METODOLOGIA DE DISENO_ 3 describe el comportamiento del circuito en vez de los elementos de los que esté compuesto. Captura de esquemas. Es la forma clasica de describir un disefio electrénico y la mas, extendida, ya que era la dnica usada antes de la aparicin de las herramientas de CAD. La descripcin esté basada en un diagrama en el que se muestran los diferentes componentes de un circuito y sus interconexiones. Grafos y diagramas de flujo. Es posible describir un circuito, o sistema, mediante dia- gramas de flujo, redes de Petri, méquinas de estados, etc. En este caso serfa una descripeién gréfica pero, al contrario que en la captura de esquemas, la descrip- cin seria comportamental en vez de ser una descripcién de componentes. Simulaci6n de sistemas. Estas herramientas se usan sobre todo para la simulacién glo- bal de sistemas. Los componentes de la simulacién son elementos de alto nivel como discos duros, buses de comunicaciones, etc. Se aplica la teoria de colas para Ia simulaci6n. Simulaci6n funcional. Bajando al nivel de circuitos digitales se puede realizar una simulacién funcional. Este tipo de simulacién comprueba el funcionamiento de circuitos digitales de forma funcional, es decir, a partir del comportamiento l6gico de sus elementos (sin tener en cuenta problemas eléctricos como retrasos, etc.) se genera el comportamiento del circuito frente a unos estimulos dados. Simulaci6n digital. Esta simulacién, también exclusiva de los circuitos digitales, es como la anterior con la diferencia de que se tienen en cuenta retrasos en la propa- gacién de las sefiales digitales, Es una simulaci6n muy cercana al comportamiento real del circuito y practicamente garantiza el funcionamiento correcto del circuito a realizar. Simulaci6n eléctrica. Es la simulacién de mas bajo nivel donde las respuestas se ela- boran a nivel del transistor. Sirven tanto para circuitos analégicos como digitales y su respuesta es practicamente idéntica a la realidad. Realizacién de PCBs. Con estas herramientas es posible realizar el trazado de pistas para la posterior fabricacién de una placa de circuito impreso. Realizaci6n de circuitos integrados. Son herramientas de CAD que sirven para el di- sefio de circuitos integrados. Las capacidades grificas de estas herramientas per- miten Ia realizacion de las diferentes mdscaras que intervienen en la realizacién de circuitos integrados. Realizaci6n de dispositivos programables. Con estas herramientas se facilita la pro- gramacién de este tipo de dispositivos, desde las simples PALs (Programmable 4_ VHDL: LENGUAJE PARA SINTESIS Y MODELADO DE CIRCUITOS @RAMA And Logic) hasta las més complejas FPGAs (Field Programmable Gate Arrays), pasando por las PLDs (Programmable Logic Devices 1.2. DISENO BOTTOM-UP El término disefto Bottom-Up (disefio de abajo hacia arriba) se aplica al método de disefio mediante el cual se realiza la descripcién del circuito, o sistema que se pretende realizar, empezando por describir los componentes més pequefios del sistema para, mas tarde, agruparlos en diferentes médulos, y éstos a su vez en otros médulos hasta llegar a uno solo que representa el sistema completo que se pretende realizar, En la figura 1.2 se muestra esta metodologfa de disefio. sistema Figura 1.2: Metodologia de diseio Bottom-Up Esta metodologia de disefio no implica una estructuracién jerdrquica de los elemen- tos del sistema, sino que esta estructuraci6n, al contrario de lo que ocurre en el disefio Top-Down, que se verd después, se realiza tras de la descripcién del circuito y, por tanto, no resulta necesaria. @RA-MA CAPITULO 1. METODOLOGIA DE DISENO_5 En un disefio Bottom-Up se empieza por crear una descripcién, con esquemas por ejemplo, de los componentes del circuito. Estos componentes pertenecen normalmente a.una biblioteca que contiene chips, resistencias, condensadores, y otros elementos que representan unidades funcionales con significado propio dentro del disefio. A estas uni- dades se las puede conocer por el nombre de primitivas, puesto que no es necesario disponer de elementos de mds bajo nivel para describir el circuito que se pretende reali- zat. En general, esta forma de disefiar no es muy buena, ya que supone un flujo de disefio bastante ineficiente. Para disefios muy grandes, como los actuales, no se puede esperar unir miles de componentes a bajo nivel y pretender que el disefio funcione adecuada- mente. El hecho de unir un nimero elevado de componentes entre sf, sin una estructura més elevada que permita separarlos en bloques, hace que sea complejo el andlisis del circuito, lo que provoca dificultades a la hora de detectar fallos en el circuito, anomalfas de funcionamiento, etc. Con esto, la probabilidad de cometer errores de disefio se hace mas elevada, Esta metodologia es la que se venfa utilizando en los primeros tiempos de la auto- matizacién del proceso de disefio, Esto es asi porque esta parte se habia conseguido au- tomatizar completamente, ya que las herramientas de disefio permitian una descripeién sencilla a bajo nivel (captura de esquemas) y, a partir de ahi, mediante otras herramien- tas integradas en el proceso, era posible su implementacién, es decir, la realizaci6n de un ASIC (Application Specific Integrated Circuit) 0 un PCB (Printed Circuit Board). Siel disefio era muy complejo, habfa una primera parte “manual” que consistia en la particién del disefio en bloques o médulos, es decir, se establecia una jerarquia, pero toda esta fase previa no habja sido integrada como herramienta en el proceso de diseit ‘Aesta parte previa se le llama disefio Top-Down y se expone a continuacién. 1.3 DISENO TOP-DOWN El disefio Top-Down es, en su més pura forma, el proceso de capturar una idea en un alto nivel de abstraccién e implementarla partiendo de esa descripcin abstracta, y después ir hacia abajo incrementando el nivel de detalle segtin sea necesario, Esta forma de disefiar se muestra gréficamente en la figura 1.3, donde el sistema inicial se ha dividido en diferentes médulos, cada uno de los cuales se encuentra a su vez subdividido hasta llegar a los elementos primarios de la descripcién.

También podría gustarte