La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Tecnologías y Arquitecturas de SE

Presentaciones similares


Presentación del tema: "Tecnologías y Arquitecturas de SE"— Transcripción de la presentación:

1 Tecnologías y Arquitecturas de SE
Dr. Agustin Laprovitta (LCRS – UCC) Fuente: Andrés Djordjalian, Seminario de Sistemas Embebidos (FIUBA)

2 Como se implementan los SE?
Usaríamos una FPGA o un CPLD FPGAs = Field-Programmable Gate Array (arreglo de compuertas programable ‘in situ’) PLDs = Complex Programmable Logic Device (dispositivo lógico programable complejo) …o lo implementaríamos mediante un ASIC Full custom = que se diseña todo “a medida” … o mediante un Microcontrolador (mC) Procesador + Periféricos integrados

3 Que es una FPGA? Arreglo de celdas básicas programables cuyas interconexiones también son programables

4 FPGA – Flujo de diseño

5 Lenguajes de descripción de hardware
Para el diseño de circuitos digitales, los “circuitos de compuertas” fueron reemplazados por lenguajes de descripción de hardware (HDL) Los más populares son VHDL y Verilog Para diseñar un ASIC o una FPGA, normalmente se escribe un código HDL que un software puede simular y sintetizar Se puede usar en dos niveles de abstracción: Nivel de comportamiento (behavioral level): Describe la funcionalidad del circuito, similar a un programa de computación Nivel de transferencia de registros (register-transfer level, RTL): Describe cómo se implementa el anterior, pero moviendo datos de un circuito a otro

6 Que es un Microcontrolador?
Es la integración de un procesador mas periféricos en un solo dispositivo

7 Procesador (CPU) - En un procesador, la unidad de control puede ser compleja - En particular si las instrucciones nativas (o sea en Assembly) realizan operaciones complicadas o requieren varios ciclos de máquina - Esa era la tendencia hasta los ochentas con los procesadores CISC (complex instruction set computer)

8 Procesadores RISC En los primeros tiempos de los procesadores existía una falta muy grande de “software”, y por eso se intento simplificar su desarrollo agregando complejidad al CPU. En los 70s, en IBM primero, y en las universidades de Stanford y Berkeley después, se empezó a cuestionar esta tendencia de sumarle complejidad a los conjuntos de instrucciones Sus argumentos: Gracias a los compiladores, las instrucciones sofisticadas dejan de ser útiles Eliminándolas, se puede optimizar las que sí lo son …y se ahorra mucho tiempo de diseño …y se libera superficie de silicio ocupada por la unidad de control, la que puede usarse para mejorar el datapath. Por ej, para ponerle un mejor multiplicador

9 Procesadores RISC (cont)
Características principales (no excluyentes): Modo de direccionamiento simple: Arquitectura tipo load-store Las operaciones lógicas y aritméticas operan sólo sobre registros. Las únicas instrucciones que acceden a memoria son para transferir su contenido desde o hacia un registro Poseen gran cantidad de registros internos de propósito general Conjunto de instrucciones reducido (algunas decenas) …aunque, hoy en día, hay RISC con montones de instrucciones Las instrucciones tienen longitud fija (ej. 32 bits) …aunque con largo variable El ciclo de instrucción es constante

10 Procesadores RISC (cont)
Se habla de RISC vs CISC La mayoría de las arquitecturas planteadas desde entonces son RISC En algunas de las que no son RISC, se traducen internamente las instrucciones CISC a un código RISC que es ejecutado por un núcleo RISC Eso se hacen las microarquitecturas modernas para PC Una de las ventajas de RISC es que es óptimo para pipelining Es una técnica para aumentar la frecuencia de clock, y como consecuencia, la velocidad de procesamiento

11 Pipelining (segmentación de cause)

12 Periféricos Un microcontrolador es un procesador con memoria y periféricos, todo en un mismo chip Ejemplos de periféricos de uso actual: Interfase serie asincrónicas (UART) / sincrónica • pines de E/S (puerto paralelo) • Modulador de ancho de pulso (PWM) • Conversores A/D y D/A • Comparador de tensión • Temporizador (timer) • Puerto I2C / SPI • Interfase USB • Controlador CAN • Puerto I2S • reloj de tiempo real • Controlador Ethernet (MAC/PHY) • Controlador de LCD • Etc. Otros circuitos que pueden tener: Oscilador para fck • Circuito de reset • Watchdog timer • Brownout reset • Puerto JTAG Los periféricos son un factor importante a tener en cuenta para decidir qué microcontrolador usar

13 CONSULTAS ?


Descargar ppt "Tecnologías y Arquitecturas de SE"

Presentaciones similares


Anuncios Google