CIDM normalizados programables

Interfase JEDEC (Joint Electron Devices Engineering Council) Estándard IEEE. Formato para transferir datos de programación independiente del fabricante.
4MB Größe 15 Downloads 64 vistas
Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Tema 1

Parte 1: Clasificación de circuitos digitales Parte 2: Lenguajes de descripción de Hardware

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Parte 1. Introducción Circuitos Integrados:

Microelectrónica

Área de la electrónica aplicada

Estudio de métodos y procesos de realización de circuitos integrados

• Component es pasivos: • Resistencias y diodos • Dispositivos electrónicos • Transistores BJT, MOS, CMOS • Conexiones entre ellos. En uno o varios substratos

Circuitos integrados monolíticos • Único substrato o bloque semicondu ctor

Electrónica digital

Circuitos integrados digitales monoliticos

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la realización física. Según el nro de dispositivos

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la realización física. Evolución de la capacidad de integración

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la realización física. Evolución del tamaño del transistor y del área del CI

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la realización física. Evolución del tiempo de propagación y del costo de compuerta

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la realización física.

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los circuitos integrados digitales monolíticos

Según la forma en que se realiza el diseño Normalizados o Estándar

Especificados por el usuario

“Standard off-the-self integrated circuit”

ASIC

Determinados por el fabricante

Realizados a medida del usuario

Características eléctricas

Diseño asistido por Computadora

Arquitectura Conjunto de elementos interrelacionados entre sí

Características funcionales

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Normalizados Normalizados Según la funcionalidad Fija

Programable

Según el campo se aplicación:

Según la arquitectura:

General

SSI

MSI

Fija:

Configurable:

Conexiones fijas entre los elementos lógicos

Conexiones modificables por el usuario

Específica

LSI

ASIC

PAL

PLA

uC

DSP

VLSIULSI

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM Según la forma en que se realiza el diseño CIDM normalizados de función fija de aplicación gral  Se utilizan en la realización de numerosos circuitos y sistemas

electrónicos y pueden, a su vez, ser de función única o multifuncionales. Constituyen bloques funcionales que se utilizaron en la realización de numerosos sistemas digitales.

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño CIDM normalizados de función fija de aplicación gral Multifuncional  Circuitos expansibles (Bit slice)  Comenzaron a realizarse en MSI: ejemplo el contador 74LS160 de

tecnología TTL.  Al alcanzarse la LSI y VLSI empezó a utilizarse la denominación de expansible.

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño . CIDM normalizados de función fija de aplicación específica  CIDM que contiene un sistema digital completo que realiza una función

compleja determinada o específica, o una parte de un sistema digital complejo.  Son ejemplos del primer caso  un sistema de riego automático o  un sistema de telemando,

 y del segundo caso  las unidades de interfaz (Interfaces) complejas de procesadores digitales

programables (como un procesador de comunicaciones, una unidad de visualización gráfica, etc.).

 No existe una denominación de estos circuitos universalmente aceptada.

La mayoría de los fabricantes los denominan circuitos integrados de aplicación específica normalizados [Standard Application Specific Integrated Circuits (Standard ASIC)], y otros los denominan productos normalizados de aplicación específica [Application Specific Standard Products (ASSP)].

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño CIDM normalizados de función fija de aplicación específica Transmisor –Receptor Asíncrono Universal

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño. CIDM normalizados programables  Pueden a su vez ser:  CIDM normalizados programables de arquitectura fija  CIDM normalizados programables de arquitectura configurable

ARQUITECTURA DE UN CIRCUITO O SISTEMA ELECTRÓNICO Conjunto de elementos que lo forman y las interconexiones entre los mismos.

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño. CIDM normalizados programables de arquitectura fija  Los elementos que lo componen están unidos entre sí

directamente  Las conexiones entre ellos no pueden ser modificadas por el usuario.  Se clasifican en combinacionales o secuenciales.  Los secuenciales pueden contener:  La unidad central de proceso de un computador (CPU)  Un computador completo: Microcontrolador  Un procesador digital de señales

 Características:  Bajo costo y Gran fiabilidad para fabricación en grandes series  Disponibilidad de varias fuentes de suministro

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño.

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño NORMALIZADOS PROGRAMABLES DE ARQUITECTURA CONFIGURABLE -La flexibilidad de los CIDM programables de arquitectura fija no es suficiente ya que están formados por elementos unidos directamente entre sí. Sólo pueden cambiar la función que realizan modificando el contenido de una memoria.

- Los CIDM programables de arquitectura configurable cuentan con elementos con conexiones modificables cambiando el estado de unas variables binaria -Son Circuitos digitales cuya función se puede modificar utilizando sólo una parte de los elementos que lo componen y/o cambiando la interconexión entre ellos. --Dicha modificación se hace mediante la programación de un conjunto de variables que forman una determinada estructura de memoria.

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

NORMALIZADOS PROGRAMABLES DE ARQUITECTURA CONFIGURABLE

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño Especificados por el usuario. “ASIC” Los inconvenientes de los circuitos normalizados, en especial los de función fija y el interés de muchos fabricantes de distintos tipos de máquinas por automatizarlas con productos muy difíciles de copiar hizo que a principios de la década de 1980 los fabricantes de circuitos integrados ofreciesen a los citados fabricantes la posibilidad de desarrollar circuitos integrados de aplicación específica conocidos por el acrónimo ASIC (Application Specific Integrated Circuits). DEFINICIÓN Circuito integrado diseñado para implementar un sistema electrónico que implementa una función práctica concreta que no es de aplicación general.

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño Especificados por el usuario. “ASIC” CIDM A MEDIDA (CUSTOM INTEGRATED CIRCUITS) De acuerdo con el nivel hasta el que se llega en el diseño, los CIDM a medida se clasifican en dos grandes tipos: -CIDM totalmente a medida (Full-custom). El diseñador llega hasta el nivel de transistor - CIDM semimedida (Semicustom) Utilizan elementos predefinidos y el diseñador adopta decisiones al nivel de descripción lógica sin alcanzar el de descripción eléctrica

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño Especificados por el usuario. “ASIC” CIDM SEMIMEDIDA (SEMICUSTOM) El diseñador utiliza elementos preespecificados denominados celdas (Cells) y actúa a un nivel más alto de descripción que en el diseño totalmente a medida Existen diversas variantes de los circuitos integrados semimedida que se diferencian en la complejidad de las celdas utilizadas y la forma de interconectarlas. Entre ellas las más utilizadas son: - Conjuntos de puertas programables mediante máscara (Mask Programmable Gate Arrays) - Celdas estándar (Standard Cells)

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño Especificados por el usuario. “ASIC” CIDM SEMIMEDIDA (SEMICUSTOM)

CONJUNTOS DE PUERTAS PROGRAMABLES MEDIANTE MÁSCARA (Mask Programmable Gate Arrays) Están formadas por un conjunto de elementos básicos dispuestos de forma regular . Suelen ser puertas NAND o NOR. Los fabricantes pueden establecer el circuito mediante la máscara final de interconexión.

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño Especificados por el usuario. “ASIC” CIDM SEMIMEDIDA (SEMICUSTOM)

CELDAS ESTÁNDAR (STANDARD CELLS) Consisten en un conjunto o biblioteca de celdas normalizadas que constituyen bloques funcionales de mayor complejidad que las puertas lógicas universales La colocación de las celdas y los canales para su interconexión no están predefinidos

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño Especificados por el usuario. “ASIC”

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Clasificación de los CIDM según la forma en que se realiza el diseño Especificados por el usuario. “ASIC”

Parte 2  LENGUAJES DE DESCRIPCIÓN DE HARDWARE

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

METODOS PARA DESCRIBIR CIRCUITOS LÓGICOS  Descripción verbal  Tablas de verdad

 Diagrama esquemático  Expresiones del álgebra booleana  Diagrama de tiempos

 Lenguajes de descripción de hardware (HDL)

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Ejemplo  Representar un circuito digital que capaz de controlar un indicador de

advertencia del cinturón de seguridad un automóvil

Descripción verbal

Expresión booleana luz _ advertencia  conductor _ presente  c int uron _ enganchado  int eruuptor _ encendido

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Ejemplo Diagrama Esquemático

Diagrama de tiempos

Tabla de verdad

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Lenguajes de descripción de hardware - HDL  Hardware Description Language  Permite  Describir circuitos digitales complejos mediante lenguaje basado en texto  Diseñar e implementar circuitos digitales complejos  Un HDL estandarizado por el IEEE es el VHDL  VHSIC (Very High Speed Integrated Circuit ) Description Language.  Un HDL propio de Altera es AHDL  Altera Hardware Description Language

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Concurrente Vs Secuencial Lenguaje de descripción de hardware

Lenguajes de computadoras

Lenguaje para programar un dispositivo

Lenguaje para programar un dispositivo

Hardware

Software

Instrucciones ejecutadas en forma concurrente (todas al mismo tiempo)

Instrucciones ejecutadas en forma secuencial

La velocidad en la ejecución del programa depende sólo de la rapidez del circuito digital y de los retardos de propagación de las señales de salidas que responden a las señales de entrada

La velocidad en la ejecución del programa depende de la velocidad de la computadora

EJEMPLO: Parada en boxes de autos de carrera Un cjto de mecánicos haciendo en paralelo todas las tareas

Un solo mecánico haciendo todas las tareas en forma secuencial. El tiempo en boxes depende de la rapidez de la persona

CONCLUCION: Los lenguajes HDL se implementan en forma similar a los lenguajes de computadoras (BASIC, C, JAVA) pero son de comportamientos muy diferentes.

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Implementación de sistemas digitales complejos-Componentes  En gral se implementan en CI normalizados configurables.  Dos grupos: PLD “Programmable Logic Devices”  Son de organización matricial  Evolución de CI PLA, PAL y ROM de LSI.  FPGA “Field Programmable Gate Array”  Son de recursos distribuidos  Se configuran en forma electrónica y sus circuitos internos se interconectan en forma electrónica para formar un circuito eléctrico.  Esta configuración se hace mediante los HDL que con un software especial (compilador) traduce el lenguaje en matrices de 0 y 1. 

Configuración de conexiones de hardware con FPGA En cada conexión se puede programar un 1 o un 0

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Formato del HDL  Formato de archivos HDL  Documentación 

Comentarios que no generan hardware

 Definición de bibliotecas  Definición de tipos de datos  Permite diseños jerárquicos  Definición del componente.  Definición de E/S  Descripción lógica del componente  Descripción funcional

Documentación Definición de bibliotecas Definición de E/S

Descripción Funcional

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

AHDL vs VHDL

Elementos esenciales en AHDL

Elementos esenciales en VHDL

& AND #

OR

!

NOT

$

XOR

Librerías: Modo -> IN, OUT, INOUT, BUFFER Tipo -> Nro de Bit

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Esquema de la arquitectura VHDL Parte declarativa: Señales intermedias Componentes Tipo Cuerpo de la arquitectura: Operadores Declaraciones concurrentes Declaraciones secuenciales

Operadores

Descripción de Flujo de datos

Declaraciones concurrentes

Descripción de estructuras

Descripción secuenciales

Descripción de comportamiento

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Operadores VHDL lógicos And OR Xor NAND NOR not

S1 valor absoluto

relacionales = --> igual /= --> distinto < --> menor menor o igual > --> mayor >= --> mayor o igual

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Declaraciones concurrentes VHDL Selección

with select

Componente

port map

Asignamiento condicional

when else

Bucle

for generate

Bloque

block

Avisos

assert report

Procesos

process

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Declaraciones secuenciales VHDL Espera

wait on ; wait for ; wait until ;

Condicional

if then elsif

Selección

case

Bucle

for loops

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

AHDL vs VHDL. Señales intermedias

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Programación de un CI configurable  Programar significa realizar conexiones abiertas (‘0’) o cerradas (‘1’) de una

matriz de interconexiones  Dos maneras de programar

 Remover el chip de su sistema y colocándolo en un programador  Interfase JEDEC (Joint Electron Devices Engineering Council) Estándard IEEE. Formato para transferir datos de programación independiente del fabricante  Programación en sistema (ISP). El chip no necesita extraerse para su

programación 

Interfase JTAG (Joint Test Action Group). Estándad IEEE. Se usa tanto para programar como para testear el sistema

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Software de desarrollo: Software de referencia: MAX+PLUS II de Altera Descarga: https://www.altera.com/download/legacy/maxplus2/dnl-student.jsp Licencia: http://www.altera.com/download/licensing/lic-choose.html

Permite:  Describir un sistema digital mediante:  HDL: VHDL, AHDL, Verilog  Diagrama esquemático  Formas de ondas

 Compilar  Verificar  Programar

DISEÑO JERARQUICO

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Proceso de diseño

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Representación de datos en HDL  Designación de sistemas numéricos en HDL

 Arreglos de bits/vectores de bits

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Bibliotecas y paquetes en VHDL  “Libraries”  Elementos Fundamentales del VHDL  Normalizadas

Tipos de datos predefinidos  Definidas por el usuario  Elementos definidos por el diseñador  Se usan para diseño jerárquico  Formada por paquetes 

 Sintaxis

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Tipos de datos en VHDL .Biblioteca IEEE STD_LOGIC : Tipo predefinido en el estándar IEEE 1164. Este tipo representa una lógica multivaluada de 9 valores. Además del ‘0’ lógico y el ‘1’ lógico, posee alta impedancia ‘Z’, desconocido ‘X’ ó sin inicializar ‘U’ entre otros. Igual que se permite crear un vector de bits se puede crear un vector de std_logic, STD_LOGIC_VECTOR. Para poder utilizar el tipo std_logic hay que añadir la librería que lo soporta. use ieee.std_logic_1164.all Para poder utilizar las funciones aritmeticológicas definidas (suma, resta, multiplicación) use ieee.std_logic_arith.all Si los vectores están en representación binaria pura use ieee.std_logic_unsigned.all Los vectores están en CA2 use ieee.std_logic_signed.all

Diseño de Sistemas Embebidos en FPGA – Curso de Posgrado Facultad de Ciencias Exactas y Tecnología – UNT.

Tipos de datos comunes en VHDL .Biblioteca IEEE std_logic_1164 de VHDL Tipo de datos

Declaraciones de ejemplo

Posibles valores

Uso

BIT

y: OUT BIT;

„0‟, „1‟

Y