Top Down
Top Down
Top Down
Diseo
Verificacin
Prototipacin
Figura 2.1
14
Por lo tanto se busca minimizar el costo del ciclo anterior, incluyendo la fase de prototipacin nicamente al final del mismo. Esto se consigue mediante la inclusin de una fase de simulacin y verificacin que elimina la necesidad de elaborar fsicamente un prototipo. En el ciclo de diseo hardware las herramientas CAD estn presentes en todos los pasos. En primer lugar en la fase de descripcin de la idea, que ser un sistema elctrico, un diagrama en bloques, etc. Luego en la fase de simulacin y verificacin en donde las diversas herramientas permiten realizar simulacin por eventos, funcional, digital o elctrica considerando el nivel de simulacin requerido. La ltima etapa es comprendida por herramientas especializadas en la fabricacin del circuito propiamente dicho y se orientan a la fabricacin de circuitos impresos o Circuitos Integrados de Aplicacin Especfica (Application Specific Integrated Circuits, ASIC). Estas herramientas permiten realizar microcircuitos as como la programacin de dispositivos que as lo requieran. A continuacin se enumeran y explican brevemente algunas de la posibles herramientas que pueden utilizarse durante el diseo e implementacin del hardware: Descripcin mediante esquemas: Consiste en describir el circuito mediante un esquema que representa la estructura del sistema. Mas all de un simple diagrama de lneas puede incluir informacin sobre tiempos, referencias, cables, conectores, etc. Grafos y diagramas de flujo: La descripcin se realiza por medio de grafos, autmatas o redes de Petri. La diferencia con la captura de esquemas es que este tipo de descripcin es funcional o de comportamiento y no de estructura como sucede en el caso anterior. Lenguajes de descripcin: Son lenguajes de computadora especializados que permiten describir un circuito digital. Esta descripcin usualmente se puede llevar a cabo a diferentes niveles. Puede ser estructural, en donde se muestra la arquitectura del diseo, o bien de comportamiento, en donde se describe el comportamiento o funcionamiento del circuito global y no de los componentes por los cuales est compuesto. Simulacin de sistemas: Estas herramientas se utilizan para la simulacin global del sistema. Los componentes que se simulan son de alto nivel, es decir del producto una vez terminado. Simulacin funcional: Este tipo de simulacin se utiliza para validar el funcionamiento de un sistema digital a bajo nivel (nivel de compuertas), sin embargo no se toman en consideracin factores fsicos de los componentes a simular como ser retrasos, problemas elctricos, etc. Unicamente de registra el comportamiento del circuito frente a ciertos estmulos dados. Simulacin digital: Esta simulacin es muy parecida a la simulacin funcional, pero considerando los retrasos y factores que no se consideran en la anterior. De esta forma se garantiza el funcionamiento correcto del circuito digital a ser implementado. Simulacin elctrica: Es la simulacin de mas bajo nivel ya que se realiza a nivel de componentes bsicos (transistores, resistencias, etc). El resultado de dicha simulacin es prcticamente el mismo que en la realidad. Se utiliza tanto para circuitos analgicos como digitales. Impementacin de circuitos impresos: Con estas herramientas se realiza el trazado de lneas e implementacin posterior de los circuitos impresos en donde irn montados los componentes.
15
Implementacin de circuitos integrados: Son las herramientas que se emplean al final del ciclo de implementacin. Permiten la realizacin de diferentes mscaras que intervienen en la implementacin del circuito final. Programacin de dispositivos: Alternativamente a la implementacin de los circuitos mediante mscaras, se puede emplear lgica programable. Los dispositivos de lgica programable permiten la implementacin el circuito mediante la programacin de los mismos. Posteriormente pueden ser reutilizados en caso de querer modificar el diseo o el circuito por completo. Ejemplos de dichos dispositivos son: PAL (Programmable And Logic), FPGA (Field Programmable Gate Arrays) y PLD (Programmable Logic Devices).
Figura 2.2
16
Esta metodologa de diseo es til para diseos medianamente pequeos. Para diseos mayores sta metodologa resulta imprctica, debido a que el funcionamiento adecuado del producto final no est garantizado luego de unir decenas de componentes. El hecho de unir un nmero elevado de componentes entre s, sin una estructura jerrquica que permita organizarlos (en bloques, por ejemplo) dificulta el anlisis del circuito, aumentando la posibilidad de cometer errores. La metodologa Bottom-Up es la que se utiliza desde los primeros tiempos de diseo, ya que el proceso de integracin de elementos bsicos se haba logrado automatizar completamente. Las primeras herramientas de diseo permitan llevar a cabo una descripcin sencilla a bajo nivel y posteriormente se proceda a la implementacin. La implementacin se realizaba empleando otras herramientas que se integraban al proceso. De esta manera se obtena un Circuito Integrado de Aplicacin Especfica o un Circuito Impreso (Printed Circuit Board, PCB).
Figura 2.3
17
Sin embargo actualmente, es necesario realizar diseos ms complejos en menos tiempo. De sta manera se deja de lado la metodologa de diseo Bottom-Up. La metodologa Top-Down evita los problemas que surgen con el empleo de la metodologa Bottom-Up ya que el diseo inicial es subdividido en subdiseos que a su vez se pueden seguir subdividiendo hasta llegar a diseos mucho menores y ms sencillos de tratar. En el caso del diseo de hardware, esto se traducira en subdividir el diseo inicial en mdulos hasta llegar a los componentes primarios o primitivas. Las herramientas actuales permiten utilizar en forma automtica la metodologa Top-Down, lo que permite a las herramientas de sntesis sofisticadas llevar a cabo la implementacin de un circuito final, partiendo de una idea abstracta y sin necesidad de que el diseador deba descomponer su idea inicial en componentes concretos [19] [20].
18
19