Está en la página 1de 9

ARQUITECTURA DEL COMPUTADOR PLD, MEMORIAS, LENGUAJES DE DESCRIPCION DE HARDWARE, VHDL

Presentado por: Hector Leonardo Lpez Avila Cod. 20081020051

Presentado a: Dagoberto Rodrguez Cedeo Arquitectura del Computador I y Laboratorio

Universidad Distrital Francisco Jos de Caldas Bogot D.C. Noviembre de 2010

PLD
(Programmable Logic Device - Dispositivo Lgico Programable). Componente electrnico empleado para la fabricacin de circuitos digitales. A diferencia de las puertas lgicas, que tienen una funcin fija, un PLD tiene una funcin indefinida al mismo de fabricarse. Antes de que un PLD pueda ser usado en un circuito, este puede ser programado. Un PLD est constituido por puertas lgicas AND y OR. Un programador quema los fusibles en el PLD para controlar las operaciones en las puertas. Algunos PLD son: PROM (Programmable Read Only Memory) PLA (Programmable Logic Array) PAL/GAL Programmable Array Logic/Generic Array Logic).

PAL MMI introdujo un dispositivo revolucionario en 1978, la Programmable Array Logic (Matriz lgica programable). La arquitectura era ms sencilla que la FPLA de Signetics porque omita la matriz OR programable. Esto hizo los dispositivos ms rpidos, ms pequeos y ms baratos. Estaban disponibles en encapsulados de 20 pines y DIP de 300 milsimas de pulgada, mientras que las FPLAs venan en encapsulados de 28 pines y DIP de 600 milsimas de pulgada. Ciertas publicaciones sobre PALs desmitificaban el proceso de diseo. El software de diseo PALASM (PAL Assembler, ensamblador PAL) converta las ecuaciones Booleanas de los ingenieros en el patrn de fusibles requerido para programar el dispositivo. Los PAL de MMI pronto fueron distribuidos por National Semiconductor, Texas Instruments y AMD. Tras el xito de MMI con los PAL de 20 pines, AMD introdujo los 22V10 de 24 pines con caractersticas adicionales. Tras comprar a MMI (1987), AMD desarroll una operacin consolidada como Vantis, adquirida por Lattice Semiconductor en 1999. GAL Una innovacin del PAL fue la matriz lgica genrica (Generic array logic) o GAL. Ambas fueron desarrolladas por Lattice Semiconductor en 1985. Este dispositivo tiene las mismas propiedades lgicas que el PAL, pero puede ser borrado y reprogramado. La GAL es muy til en la fase de prototipado de un diseo, cuando un fallo en la lgica puede ser corregido

por reprogramacin. Las GALs se programan y reprograman utilizando un programador PAL, o utilizando la tcnica de programacin circuital en chips secundarios. Un dispositivo similar llamado PEEL (programmable electrically erasable logic o lgica programable elctricamente borrable) fue introducido por la International CMOS Technology (ITC) corporation.

CPLDS Las PALs y GALs estn disponibles slo en tamaos pequeos, equivalentes a unos pocos cientos de puertas lgicas. Para circuitos lgicos mayores, se pueden utilizar PLDs complejos o CPLDs. Estos contienen el equivalente a varias PAL enlazadas por interconexiones programables, todo ello en el mismo circuito integrado. Las CPLDs pueden reemplazar miles, o incluso cientos de miles de puertas lgicas. Algunas CPLDs se programan utilizando un programador PAL, pero este mtodo no es manejable para dispositivos con cientos de pines. Un segundo mtodo de programacin es soldar el dispositivo en su circuito impreso. Las CPLDs contienen un circuito que descodifica la entrada de datos y configura la CPLD para realizar su funcin lgica especfica. Cada fabricante tiene un nombre propietario para este sistema de programacin. Por ejemplo, Lattice Semiconductor la llama in-system programming (programacin dentro del sistema). Sin embargo, estos sistemas propietarios estn dejando paso al estadndar del Joint Test Action Group (JTAG). FPGAS Mientras el desarrollo de las PALs se enfocaba hacia las GALs y CPLDs (ver secciones superiores), apareci una corriente de desarrollo distinta. Esta corriente de desarrollo desemboc en un dispositivo basado en la tecnologa de matriz de puertas y se le denomin field-programmable gate array (FPGA). Algunos ejemplos de las primeras FPGAs son la matriz 82s100 y el secuenciador 82S105 de Signetics, presentados a finales de los 70. El 82S100 era una matriz de trminos AND, y tambin tena funciones de biestable. Las FPGAs utilizan una rejilla de puertas lgicas, similar a la de una matriz de puertas ordinarias, pero la programacin en este caso la realiza el cliente, no el fabricante. El trmino field-programmable (literamente programable en el campo) se refiere a que la matriz se define fuera de la fbrica, o "en el campo". Las FPGAs se programan normalmente tras ser soldadas en la placa, en una forma similar a los CPLDs grandes. En las FPGAs ms grandes, la configuracin es voltil y debe ser reescrita cada vez que se enciende o se necesita una funcionalidad diferente. La configuracin se guarda normalmente en una PROM o EEPROM. Las versiones EEPROM pueden ser programadas mediante tcnicas como el uso de cables JTAG.

Las FPGAs y los CPLDs son buenas opciones para una misma tarea. Algunas veces la decisin sobre una u otra es ms econmica que tcnica, o puede depender de la preferencia personal o experiencia del ingeniero.

MEMORIAS
DEFINICIN Una memoria hace referencia a los componentes de una computadora, dispositivos y medios de almacenamiento que retienen datos informticos durante algn intervalo de tiempo. Las memorias de computadora proporcionan unas de las principales funciones de la computacin moderna, la retencin o almacenamiento de informacin. Es uno de los componentes fundamentales de todas las computadoras modernas que, acoplados a una unidad central de procesamiento (CPU por su sigla en ingls, central processing unit), implementa lo fundamental del modelo de computadora de Von Neumann, usado desde los aos 1940. En la actualidad, memoria suele referirse a una forma de almacenamiento de estado slido conocido como memoria RAM (memoria de acceso aleatorio, RAM por sus siglas en ingls random access memory) y otras veces se refiere a otras formas de almacenamiento rpido pero temporal. De forma similar, se refiere a formas de almacenamiento masivo como discos pticos y tipos de almacenamiento magntico como discos duros y otros tipos de almacenamiento ms lentos que las memorias RAM, pero de naturaleza ms permanente. Estas distinciones contemporneas son de ayuda porque son fundamentales para la arquitectura de computadores en general. Adems, se refleja una diferencia tcnica importante y significativa entre memoria y dispositivos de almacenamiento masivo, que se ha ido diluyendo por el uso histrico de los trminos "almacenamiento primario" para memorias de acceso aleatorio, y "almacenamiento secundario" para dispositivos de almacenamiento masivo. BENEFICIOS Los componentes fundamentales de las computadoras de propsito general son la unidad aritmtico-lgica (ALU), la unidad de control, espacio de almacenamiento y

los dispositivos de entrada/salida. Si se elimina el almacenamiento, el aparato sera una simple calculadora en lugar de un computadora. La habilidad para almacenar las instrucciones que forman un programa de computadora y la informacin que manipulan las instrucciones es lo que hace verstiles a las computadoras diseadas segn la arquitectura de programas almacenados. Una computadora digital representa toda la informacin usando el sistema binario. Texto, nmeros, imgenes, sonido y casi cualquier otra forma de informacin puede ser transformada en una sucesin de bits, o dgitos binarios, cada uno de los cuales tiene un valor de 1 0. La unidad de almacenamiento ms comn es el byte, igual a 8 bits. Una determinada informacin puede ser manipulada por cualquier computadora cuyo espacio de almacenamiento es suficientemente grande como para que quepa el dato correspondiente o la representacin binaria de la informacin. Por ejemplo, una computadora con un espacio de almacenamiento de ocho millones de bits, o un megabyte, puede ser usado para editar una novela pequea. Se han inventado varias formas de almacenamiento basadas en diversos fenmenos naturales. No existen ningn medio de almacenamiento de uso prctico universal y todas las formas de almacenamiento tienen sus desventajas. Por tanto, un sistema informtico contiene varios tipos de almacenamiento, cada uno con su propsito individual, como se muestra en el diagrama.

CARACTERISTICAS

Volatilidad de la informacin La memoria voltil requiere energa constante para mantener la informacin almacenada. La memoria voltil se suele usar slo en memorias primarias. La memoria RAM es una memoria voltil, ya que pierde informacin en la falta de energa elctrica. La memoria no voltil retendr la informacin almacenada incluso si no recibe corriente elctrica constantemente, como es el caso de la memoria ROM. Se usa para almacenamientos a largo plazo y, por tanto, se usa en memorias secundarias, terciarias y fuera de lnea. Memoria dinmica es una memoria voltil que adems requiere que peridicamente se refresque la informacin almacenada, o leda y reescrita sin modificaciones.

Habilidad para acceder a informacin no contigua Acceso aleatorio significa que se puede acceder a cualquier localizacin de la memoria en cualquier momento en el mismo intervalo de tiempo, normalmente pequeo. Acceso secuencial significa que acceder a una unidad de informacin tomar un intervalo de tiempo variable, dependiendo de la unidad de informacin que fue leda anteriormente. El dispositivo puede necesitar buscar (posicionar correctamente el cabezal de lectura/escritura de un disco), o dar vueltas (esperando a que la posicin adecuada aparezca debajo del cabezal de lectura/escritura en un medio que gira continuamente). Habilidad para cambiar la informacin Las memorias de lectura/escritura o memorias cambiables permiten que la informacin se reescriba en cualquier momento. Una computadora sin algo de memoria de lectura/escritura como memoria principal sera intil para muchas tareas. Las computadoras modernas tambin usan habitualmente memorias de lectura/escritura como memoria secundaria. Las memorias de slo lectura retienen la informacin almacenada en el momento de fabricarse y la memoria de escritura nica (WORM) permite que la informacin se escriba una sola vez en algn momento tras la fabricacin. Tambin estn las memorias inmutables, que se utilizan en memorias terciarias y fuera de lnea. Un ejemplo son los CD-ROM. Las memorias de escritura lenta y lectura rpida son memorias de lectura/escritura que permite que la informacin se reescriba mltiples veces pero con una velocidad de escritura mucho menor que la de lectura. Un ejemplo son los CDRW. Direccionamiento de la informacin En la memoria de localizacin direccionable, cada unidad de informacin accesible individualmente en la memoria se selecciona con su direccin de memoria numrica. En las computadoras modernas, la memoria de localizacin direccionable se suele limitar a memorias primarias, que se leen internamente por programas de computadora ya que la localizacin direccionable es muy eficiente, pero difcil de usar para los humanos.

En las memorias de sistema de archivos, la informacin se divide en Archivos informticos de longitud variable y un fichero concreto se localiza en directorios y nombres de archivos "legible por humanos". El dispositivo subyacente sigue siendo de localizacin direccionable, pero el sistema operativo de la computadora proporciona la abstraccin del sistema de archivos para que la operacin sea ms entendible. En las computadoras modernas, las memorias secundarias, terciarias y fuera de lnea usan sistemas de archivos. En las memorias de contenido direccionable (content-addressable memory), cada unidad de informacin legible individualmente se selecciona con una valor hash o un identificador corto sin relacin con la direccin de memoria en la que se almacena la informacin. La memoria de contenido direccionable pueden construirse usando software o hardware; la opcin hardware es la opcin ms rpida y cara. Capacidad de memoria Memorias de mayor capacidad son el resultado de la rpida evolucin en tecnologa de materiales semiconductores. Los primeros programas de ajedrez funcionaban en mquinas que utilizaban memorias de base magntica. A inicios de 1970 aparecen las memorias realizadas por semiconductores, como las utilizadas en la serie de computadoras IBM 370. La velocidad de los computadores se increment, multiplicada por 100.000 aproximadamente y la capacidad de memoria creci en una proporcin similar. Este hecho es particularmente importante para los programas que utilizan tablas de transposicin: a medida que aumenta la velocidad de la computadora se necesitan memorias de capacidad proporcionalmente mayor para mantener la cantidad extra de posiciones que el programa est buscando.

LENGUAJES DE DESCRIPCIN DE 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) Comprobacin de la sintaxis y simulacin del programa. 3) 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. Existen algunas categoras de HDL que son: 1. ABEL: Es la abreviatura de Advanced Boolean Expression Language, es un lenguaje de descripcin de hardware y un conjunto de herramientas de diseo para programar dispositivos lgicos programables (PLDs). Se caracteriza por permitir el descubrimiento de un diseo concurrentemente mediante tablas de verdad o ecuaciones lgicas; al igual que tambin permite la programacin secuencial con mquinas de estados. 2. AHDL (sigla en ingls de "Altera Hardware Description Language", Lenguaje de Descripcin de Hardware de Altera) es un lenguaje de descripcin de hardware (HDL) proprietario de Altera Corporation para la programacin de CPLDs (Complex Programmable Logic Devices o Dispositivos Complejos de Lgica Programable) y FPGAs (Field Programmable Gate Arrays o Campo de Matrices de Puertas Programables). Compilado con el Quartus de Altera y la serie de compiladores Max+, este lenguaje tiene una sintaxis parecida al lenguaje de programacin C y una funcionalidad similar a VHDL. 3. SystemC, es frecuentemente descrito como un lenguaje de descripcin de hardware como son VHDL y Verilog, pero es ms adecuado describirlo como un lenguaje de descripcin de sistemas, puesto que es realmente til cuando se usa para modelar sistemas a nivel de comportamiento. En general es un conjunto de libreras y macros implementadas en C++ que hacen posible una simulacin de procesos concurrentes con la sintaxis del lenguaje C++ ordinario. As los objetos descritos pueden comunicarse durante una simulacin de tiempo real usando seales de cualquier tipo ofrecido por C+, adems algunas otras ofrecidas por las libreras de SystemC y tambin otras definidas por el usuario. La metodologa de diseo es comenzar con un modelo de alto nivel escrito en C++ y aplicar un proceso iterativo consistente en transformar el cdigo para usar slo los elementos que tengan su equivalente en un lenguaje de descripcin de hardware.

4. VHDL es el acrnimo que representa la combinacin de VHSIC y HDL, donde VHSIC es el acrnimo de Very High Speed Integrated Circuit y HDL es a su vez el acrnimo de Hardware Description Language. Es un lenguaje usado por ingenieros definido por el IEEE (Institute of Electrical and Electronics Engineers) (ANSI/IEEE 1076-1993) que se usa para disear circuitos digitales. Otros mtodos para disear circuitos son la captura de esquemas (con herramientas CAD) y los diagramas de bloques, pero stos no son prcticos en diseos complejos. Otros lenguajes para el mismo propsito son Verilog y ABEL. Aunque puede ser usado de forma general para describir cualquier circuito se usa principalmente para programar PLD (Programable Logic Device Dispositivo Lgico Programable), FPGA (Field Programmable Gate Array), ASIC y similares.