Vous êtes sur la page 1sur 3

Captulo 1 - LENGUAJES DE DESCRIPCIN DEL HARDWARE

Un lenguaje de descripcin de hardware (HDL, Hardware Description Language) permite documentar las interconexiones y el comportamiento de un circuito electrnico, sin utilizar diagramas esquemticos. El flujo de diseo suele ser tpico: 1. Definir la tarea o tareas que tiene que hacer el circuito. 2. Escribir el programa usando un lenguaje HDL. Tambin existen programas de captura de esquemas que pueden hacer esto, pero no son tiles para diseos complicados. 3. Comprobacin de la sintaxis y simulacin del programa. 4. Programacin del dispositivo y comprobacin del funcionamiento. Un rasgo comn a estos lenguajes suele ser la independencia del hardware y la modularidad o jerarqua, es decir, una vez hecho un diseo ste puede ser usado dentro de otro diseo ms complicado y con otro dispositivo compatible.

1.1. Introduccin 1.2. Gnesis 1.3. Caractersticas 1.4. Aplicaciones 1.5. Limitaciones 1.6. El lenguaje VHDL 1.6.1. Historia 1.6.2. Caractersticas 1.7. Ventajas de VHDL para el diseo de sistemas digitales 1.8. Otros lenguajes de descripcin del hardware 1.1 INTRODUCCIN

La evolucin espectacular de la tecnologa y del diseo microelectrnicas ha permitido la realizacin de sistemas electrnicos digitales complejos en un nico circuito integrado de escala de integracin progresivamente elevada (muy alta (VLSI), ultra alta (ULSI), giga (GSI)) que llegan a contener en su interior ms de 1.000.000 puertas lgicas. Pero esto slo se ha podido llevar a cabo mediante un cambio profundo de las tcnicas de diseo de circuitos integrados. Los circuitos de escala de integracin media y alta (MSI y LSI respectivamente) se disearon mediante la realizacin de un prototipo formado por mdulos ms sencillos y la comprobacin de su funcionamiento antes de proceder a la integracin. Esta forma de diseo recibe el nombre de abajo a arriba (bottom-up) porque se enlazan diversos mdulos para constituir un bloque funcional ms complejo. Pero en el caso de los circuitos integrados de complejidad VLSI y superiores no resulta prctica la realizacin fsica de un prototipo y por ello es necesario simular y verificar su correcto comportamiento antes de integrarlos. Ello trajo consigo la necesidad del desarrollo de mtodos de diseo asistido por computador divididos en varias fases que, a partir de la especificacin del funcionamiento, llevan hasta la descripcin fsica del circuito, por lo que reciben el nombre de arriba a abajo (top-down). As,

mediante simulacin es posible una rpida deteccin de errores en fases tempranas del diseo, resulta factible la reutilizacin del mismo para diferentes tecnologas y se pueden utilizar las herramientas de sntesis actuales para obtener rpidamente un esquema lgico o estructural y, en definitiva, una netlist* de entrada para el trazado fsico (layout) del ASIC, MCM, etc. o la asignacin de recursos (mapping) en el caso de la lgica programable (PLDs y FPGAs).Todo ello, obviamente, incrementa la productividad y la eficacia del diseo. No existe unanimidad en lo que se refiere al establecimiento de las distintas fases del diseo de un sistema digital complejo, aunque la necesidad de sistematizar esta metodologa ha llevado al establecimiento y progresiva aceptacin de algunas propuestas. En la figura 1.1 se representa una bastante aceptada que divide el diseo en siete niveles o formas de caracterizacin, tambin denominados niveles de abstraccin por cuanto establecen la cantidad de informacin que se especifica de un circuito o el nivel de detalle en que se encuentra una descripcin respecto de su implementacin fsica.

Nivel sistema. Describe el sistema como un conjunto de mdulos semiautnomos y cooperantes, cuya interaccin se analiza para obtener un conjunto ptimo. No se especifica la forma de realizar cada uno de los mdulos. Nivel algortmico, funcional o de comportamiento. Cada mdulo del nivel superior se define mediante un algoritmo en un lenguaje de alto nivel (HLL). Dada la naturaleza paralela del hardware, en el que varios procesos pueden necesitar un mismo recurso (por ejemplo, un bus de datos) o en el que se deben sincronizar procesos independientes, se utilizan instrucciones muy similares a las de los lenguajes de programacin concurrentes, como por ejemplo, semforos y regiones crticas. Nivel RTL (Register Transfer Level) o de flujo de datos (Data-Flow). En l se describe el sistema mediante diagramas de transferencias entre registros, tablas de verdad o ecuaciones lgicas. Se le concede ms importancia a lo que hace el sistema que a como lo hace. Los elementos bsicos de este nivel son registros, memorias, lgica combinacional y buses. Se distingue entre elementos con capacidad de almacenamiento y elementos sin ella. Nivel lgico. Consiste en la descripcin del sistema mediante la interconexin de bloques bsicos, como puertas lgicas y biestables. No se realiza una descripcin del comportamiento, sino de la estructura del mismo. Si se incluyen adems otro tipo de bloques, en general a este nivel se le suele denominar tambin estructural. Nivel conmutador. Las puertas se sustituyen por transistores considerados como conmutadores ideales que toman los valores cero o uno. La descripcin es, por lo tanto, bsicamente la misma que en el nivel anterior con la nica diferencia de que en algunas

tecnologas, como por ejemplo CMOS, surgen nuevos tipos de circuitos porque los conmutadores pueden ser bidireccionales mientras que las puertas son unidireccionales. Nivel elctrico. Se describe el sistema mediante modelos reales del transistor, con sus diferentes parmetros elctricos. Nivel fsico. Est constituido por la descripcin geomtrica o simblica de las mscaras que se emplean para la fabricacin el circuito. En la figura 1.2 se representa el mtodo de diseo conceptual propuesto por Lemmert y Nebel, que utiliza un lenguaje de descripcin del hardware (HDL) a travs de los distintos niveles. El diseo del circuito o sistema comienza de la forma ms generalizada posible, habitualmente con una especificacin algortmica en un lenguaje de alto nivel. En cada nivel se refina la descripcin correspondiente y se compara con la de nivel superior. Este mtodo implica la utilizacin de herramientas de diseo asistido por computador para simulacin y prueba en cada nivel, y por ello los lenguajes deben proporcionar compatibilidad y consistencia entre niveles. De esta manera se trabaja de forma flexible y se logra que en un determinado momento coexistan descripciones de diferentes niveles que se pueden probar conjuntamente.

Vous aimerez peut-être aussi