Download Formacion_Especifica_Tarea_ISE3_4_1

Document related concepts
no text concepts found
Transcript
Electrónica para sistemas
industriales
Tarea4_1 Microprocesadores
1
Objetivos

Introducción y principales características

Componentes básicos de MP

Conjunto de instrucciones (ISA)

Paralelismo en MP

Sistemas MP – components y tipos

Tipos especiales de MP (ASIC, DSP, FPGA etc.)

Evolución de los Microprocesadores
2
Microprocessor (MP or P)
Un chip de silicio que contiene una CPU. Los términos microprocesador y
CPU son usados indistintamente.

En todos los ordenadores personales y muchas estaciones de trabajo se
encuentra un microprocesador.

MP también controla la lógica de todos los dispositivos digitales, desde radio
relojes al sistema de inyección de combustible de autumoviles.


Tres características diferencian a un microprocesador:




Conjunto de instrucciones: El cojunto de instrucciones que el
microprocesador puede ejecutar.
Ancho de banda : Bits procesados en una instrucción.
Velocidad de reloj: (MHz) – determina cuantas instrucciones por
Segundo puede ejecutar.
Además MP se clasifican en RISC (Computador con conjunto de
instrucciones reducidas) or CISC (Computador con conjunto de
instrucciones complejas).
3
Funciones básicas de la CPU

Forma direcciones de instrucciones y operandos

Recupera y realiza las operaciones

Mantiene información del proceso en registros

Inicializa operaciones I / O

Apoya al Sistema de interrupciones y de procesamiento

Controla los intercambios, el tratamiento y errores

Mantiene un diálogo con el usuario
4
Componentes del MP






ALU (Unidad aritmético lógica)
Registros
Unidad de control
I/O y buses internos (usualmente 3 estados)
I/O y buses internos
Los buses I/O son de tres tipos:



Un bus de direcciones (que puede ser de 8, 16 or 32 bits)
Un bus de datos bidireccional (puede ser de 8, 16, 32 and 64 bits)
Un bus de control. Las típicas líneas de control son:



# Linea de RD (lectura) y WR (escritura)
# Línea de reloj
# Línea de reset
5
Organización del Microprocesador
A pesar de que los microprocesadores son cada vez más complejos, en el fondo su funcionamiento se
puede resumir como una secuencia repetida de tareas sencillas: obtener una instrucción, decodificar
la instrucción, ejecutar la instrucción, almacenar el resultado.
Cada microprocesador reconoce un único conjunto de instrucciones binarias que han sido predefinidas y
almacenadas permanentemente en el chip. Cuando la CPU recibe una instrucción esta pasa a una
unidad conocida como unidad decodificadora que contiene una secuencia de operaciones que deben
realizarse para completer la operación. La unidad decodificadora transfiere la secuencia de
instrucciones a pequeños programas conocidos como microcodigos por cada operación del
microprocesador que ha sido llevada a cabo.
6
Diagrama de un MP simplificado
 A, B, C y registros de
direcciones son simples registros
de almacenamiento basados en
triggers.
 El contador de programa es
un registro que puede incremntar
su valor en 1 ó 0 en la instrucción
apropiada. Esto ayuda a crear la
dirección de la siguiente
instrucción.
 ALU puede ser un simple
sumador de 8 bits o ser capaz de
sumar, restar, multiplicar y divider
números de 8 bits.
 Test resgristro de estados que
puede guarder los resultados de
las operaciones de la ALU.
 3-states son buffers con 3
estados.
 Clock and Reset inputs para la
sincronización y la configuración
inicial del MP.
Nota. Los nuevos procesadors como Pentium, AMD, Itanium etc. tienen
estructuras internas muy complejas.
7
Conjunto de instrcciones (ISA)

ISA, es la parte del computador relacionada con la programación,
incluidos los tipos de datos nativos, instrucciones, registros,
modos de direccionamiento, arquitectura de memoria,
interrupción y control de excepciones, y externas I/O.
ISA incluye una especificación del conjunto de códigos de
operación (lenguaje máquina), commandos nativos
implementados por un diseñador particular de CPU.
 Las instrucciones incluyen:
* instrucciones aritméticas como suma y resta

* instrucciones lógicas como and, or, y not
* instrucciones sobre datos como move, input, output, load,
y store
* instrucciones de control de flujo como goto, if ... goto, call,
y return.
8
Fetch Decode Execute Cycle in MP
Recoger
Obtener instrucción del almacenamiento de programa
instrucción
Procesador
Decodificación de
instrucción
Determinar las acciones necesarias
Entrada
Control
Memoria
Buscar
operación
Localizar y obtener datos
Ejecutar
Calcular el valor de resultado o estado
Camino
de datos
ALU
Almacenar
resultado
Depositar resultados
posterior uso
en
almacenamiento
Salida
Registros
para
Siguiente
instrucción Determinar la instrucción siguiente
9
Perspectica de los MP



Sistemas y aplicaciones integradas
◦ Los microprocesadores integrados representan el
94% de todas las ventas de microprocesadores.
◦ Los microprocesadores integrados amplían el rango de
rendimieno de los PCs.
Terminología
Sistemas GP * vs. Sistemas integrados
◦ Cuales son los parámetros clave del diseño?
10
Perspectica de los MP (cont.)

Estructura del Sistema de un microprocesador
básico
◦ Unidad central de proceso (CPU [MP])
◦ Memoria (memoria principal [DRAM], memoria
Cache[L1,L2])
◦ Entrada/Salida (I/O) – adaptadores paralelos o en
serie etc.
◦ Bus del Sistema

Un microcontrolador o SoC incluye algunos o
todos los componentes en el mismo chip de la
CPU.
11
Sistema MP – Configuración mínima
Algunos sistemas MP incluyen circuitos adicionales, como
relojes, ADC, DAC, LCD drivers etc.
Microcontrolador (SoC) = unico chip Sistema MP
12
Sistema MP– memoria
Las funciones de la memoria son:
1. Almacenar programas y datos
2. Proporcionar datos al MPU a petición
3. Aceptar nuevos datos desde MPU para almacenamiento
Tipos de memoria:
• RAM (Random Access Memory)
» Estatica (SRAM): Rápida, cara
» Dinámica(DRAM): más lenta, barata, consume menos
potencia y espacio
• ROM (Read Only Memory) – EPROM, EEPROM, FLASH
Memory
– Mantiene la memoria incluso sin alimentación
– Almacena los programas que se ejecutan al inicio(por
ejemplo. BIOS)
13
Los sistemas de entrada y saldia(I/O)
I/O es el enlace entre la MPU la salida al exterior.
(También conocidos como puertos I/O)
Un Puerto de entrada es un circuitos a través del cual
un dispositivo externo envia señales (datos) al MPU.
Un Puerto de salida es un circuito que permite a la MPU
enviar señales (datos) a dispositivos externos.
A los puertos de entrada y salida se conectan dispositivos
digitales y analógicos
14
El Bus del sistema
Los subsistemas individuales de la computadora se conectan
a través del BUS del sistema.
Un bus es una vía (pathway) de comunicaciones usado para
llevar información entre varios elementos de un sistema
informático
El término BUS se refiere a un grupo de cables o pistas de
conducción en una placa de circuito impreso (PCB) a través
de los cuales se transfiere la información binaria desde una
parte del microcomputador a otra.
Hay tres grupos principals
1. BUS DE DIRECCIONES
2. BUS DE DATOS
3. BUS DE CONTROL
Ver la siguiente diapositiva
15
CPU and Almacenamiento primario (RAM) –
buses
CPU
RAM
Unidad de control
Unidad aritmético lógica
Bus de datos
Bus de direcciones
Bus de control
Buses I/O
Dispositivos
de entrada
Almacenamiento
secundario
Dispositvos de
salida
16
Bus de datos
El bus de datos transporta los datos que son transferidos a
través del sistema. ( bi-direccional)
Ejemplos de transferencia de datos
1. Instrucciones de programa se leen de la memoria en
MPU.
2. Los datos que se envían desde MPU van al puerto I/O
3. Los datos que se leen del Puerto I/O se dirigen a MPU
4. Los resultados de MPU son enviados a la memoria
A estas se llaman operaaciones de lectura y escritura
Ancho de bus de datos: 8086 16 bits, 80486 32 bits, Pentium
64 bits
17
Bus de direcciones
Una dirección es un número binario que identifica una
localicación específica de la memoria o puerto I/O
involucrado en una transferencia de datos.
El bus de direcciones se usa para transmitir la dirección
de la localización a la memoria o al puerto de I/O.
El bus de direcciones es unidireccional (un sentido)
las direcciones son siempre emitidas por el MPU.
Ancho de banda bus de direcciones: limita la cantidad de
memoria
» Pentium: 32 bits. Locations: 232bits = 4GB
» Itanium: 64 bits. Locations 264 bits = …
18
Bus de control
Otro grupo de señales cuyas funciones son la de proporcionar
sincronización (control de tiempo) entre la MPU y otros
componentes del sistema.
Las señales de control son unidireccionales, y son
principalmente salidas de la MPU.
Ejemplo de Señales de control
RD - lectura señal que afirma lectura de datos desde MPU
WR - escritura señal que afirma escritura de datos desde MPU
RESET – señal para la configuración inicial del Sistema
19
MP system – memory interfacing
Arquitectura Von
Neumann – memoria
común: para datos e
instrucciones
Arquitectura Harvard–
memoria dual: separada para
datos e instrucciones
Arquitectura Super
Harvard – memoria dual +
instrucción cache + I/O
controlador (Las
arquitecturas Harvard son
tipicas en
microcontroladores y DSP)
20
Mejorar el rendimieno en sistemas MP
Tubería de instrucción
Una tubería de instrucción es una tecnica usada en el diseño de
computadores y otros dispositivos electrónicos para incrementar su
rendimiento.
 Tiene algunas ventajas y desventajas

21
Tubería de instrucción (continuación)
“Burbujas” – un problema
en tuberías
 Cuando
ocurre
un
"hiccup“ en ejecución ,
una "burbuja" es creada
en la tubería en la que no
pasa nada útil. En un
segundo ciclo, la obtención
de la instrucción púrpura
se retrasa y la etapa de
decodificación el el ciclo e
3 ahora contiene una
burbuja. Todo detrás de la
instrucción
púrpura
se
retrasa.
22
MP parallelism[15]
Modelo subescalar
Тa=N(k. τ)
Nivel de instrucción
Paralelismo
(tubería)
Тb=[ k + (N-1) ]. τ
N- número de
tareas
(instrucciones)
k – número de
fases
τ – ejecución
tiempo por fase
Modelo simple
superescalar
(2 tuberías)
Tc  Tb/2
23
Paralelismo MP (sumario)
Paralelismo a nivel de instrucción: Ejecución simultanea
de multiples instrucciones dentro de un programa/hilo
Paralelismo a nivel de hilos: Ejecuciones simultáneas de
multiples programas/hilos*
Paralelismo de datos: Operaciones simultáneas en
multiples piezas de datos
Instrucciones de gran tamaño. El enfoque VLIW ejecuta la
opearación en paralelo basandose en un programa fijo
cuando se compilan los programas.
Procesamiento de instrucciones explícitamente en
paralelo (EPIC) es un paradigm de programación,
similar a VLIW, usado por Intel y HP en el desarrollo de la
arquitectura Intel’s IA-64 [7]
24
Microprocesadores Multinúcleo *
Combina dos o más procesadores
independientes en un único paquete, osuelen
integrarse en un circuito integrado (IC).

Un dispositivo multinucleo contiene dos
microprocesadores independientes. Permite
que un dispositivo informatico muestre algún
tipo de paralelismo a nivel de hilo (TLP)

Esta
forma de TLP suele conocerse como
procesamiento a nivel de chip[18].
25
Tipos especiales de MP
ASIC – Aplicación específica a circuitos integrados un circuito
integrado (IC) personalizado para un uso particular (de tarea única),
en lugar de para propósito general. Por ejemplo, un chip diseñado
únicamente para ejecutar un teléfono móvil es un ASIC*.

DSP – Procesador digital de señales es un MP especializado
diseñdo específicamente para procesar señal digital, generalmente en
tiempo real .

FPGA – Field Programmable Gate Array – equivalente modern
de la serie 7400, contiene bloques lógicos programables e
interconexciones que permiten que la misma FPGA pueda ser utilizada
en muchas aplicaciones diferentes.** . (Diseño de los sistemas
FPGL- sistemas basados usualmente en HDL como Verilog y VHDL)

Procesadores Media es un Sistema avanzado en chip (SoC) ideal
para video de alta calidad, audio, graficos, imágenes y aplicaciones de
cálculo intensivas en un entorno de baja potencia.

26
Donde están los sistemas embebidos?
Un Sistema embebido es un Sistema de propósito general en el
que el equipo está completamente encapsulado por un dispositivo
que le controla. Un Sistema embebido lleva a cabo una o unas
pocas tareas predefinidas, con requisites muy específicos.
27
Pequeña lista de sistemas embebidos
28
 Evolución
de los
microprocesadroes

Visión de los microprocesadores Intel
29
Lista MP de 4- y 8-bit
Тип
Compañí Tecnolo
a /año
gía
Palabra
(bits)
Tc/ft
Intrucc Memori
iones
a
бит
us/Mhz
бр.
КВ
Registros
Acc/ind/
GPR
U
Potencia
V
4004
Intel/71
p-mos
4
10.8/
46
4
1/0/16
+5-10
8008
--“--/72
p-mos
8
12.5/
48
16
1/0/6
+5-9
8080
--“--/74
n-mos
8
2/1
78
64
--“--
+-5+12
Z80
Zilog/75
--“--
“
1.6/
158
“
1/2/14
+5
6502
MosTehn
--“--
“
1
55
“
1/2/0
“
CM630
Bulgaria
--“--
“
1
55
“
--“--
--“--
6800
Motorola
--“--
“
2/1
72
“
2/1/0
--“--
CM601
Bulgaria
--“--
“
“
“
“
--“--
--“--
8085
Intel/77
--“--
“
1.3/2
80
“
0/2/8
--“--
30
Intel 4004

Primer microcprocesador
(1971 – T. Hoff)
◦ Para calculadoras Busicom

Características
◦
◦
◦
◦
◦

10 m proceso
2300 transistores
400 – 800 kHz
4-bit ancho de palabra
16-pin DIP package
Máscaras mano cortadas
desde Rubylith
◦ Diseñados con lápices de colores
◦ 1 metal, 1 poly (jumpers)
◦ Líneas diagonales
31
Intel 8008

Sigue en 8-bit (1972)
◦ Terminales mudos

Características
◦
◦
◦
◦
◦
10 m procesos
3500 transistores
500 – 800 kHz
8-bit ancho de palabra
Chip (DIP) de 18-pin
◦ Bus de 8-bit

Transistores individuales visibles
32
Intel 8080

16-bit address bus
(1974)
◦ Used in Altair computer
 (early hobbyist PC)

Caracteristicas
◦
◦
◦
◦
◦
6 m proceso
4500 transistores
2 MHz
8-bit ancho de palabra
Chip de 40-pin
33
Intel 8086 / 8088

16-bit processor
(1978-9)
◦ IBM PC and PC XT
◦ Revolutionary products
◦ Introduced x86 ISA

Características
◦
◦
◦
◦
◦

3 m proceso
29k transistores
5-10 MHz
16-bit ancho de palabra
40-pin DIP package
Microcódigo ROM
34
Intel 80286

Memoria
virtual(1982)
◦ IBM PC AT

Características
◦
◦
◦
◦
◦

1.5 m process
134k transistors
6-12 MHz
16-bit word size
68-pin PGA
Bus regular y ROMs
claramente visibles
35
Intel 80386

Procesador de 32nit(1985)
◦ Moderno x86 ISA

Características
◦
◦
◦
◦
◦

1.5-1 m procesos
275k transistores
16-33 MHz
32-bit word size
100-pin PGA
Bus 32-bit,
microcódigo ROM,
control sintetizado
36
Intel 80486

Canalización (1989)
◦ Unidad de coma flotante en el
chip
◦ 8 KB cache

Características
◦
◦
◦
◦
◦

1-0.6 m process
1.2M transistors
25-100 MHz
32-bit word size
168-pin PGA
Cache, Integer datapath,
FPU, microcode,
synthesized control
37
Intel Pentium

Superescalar (1993)
◦ 2 instrucciones por ciclo
8KB I$ & D$ independiente

Características
◦
◦
◦
◦
◦

0.8-0.35 m procesos
3.2M transistores
60-300 MHz
32-bit ancho de palabra
296-pin PGA
Caches, bus,
FPU, control
38
Intel Pentium Pro / II / III

Ejecución dinámica
(1995-9)
◦
◦
◦
◦
◦

3 micro-ops / cycle
Out of order execution
16-32 KB I$ & D$
Multimedia instructions
PIII adds 256+ KB L2$
Características
◦
◦
◦
◦
◦
0.6-0.18 m processs
5.5M-28M transistores
166-1000 MHz
32-bit ancho de palabra
MCM / SECC
39
Intel Pentium 4

Tubería ancha(2001)
◦ Reloj muy rápido
◦ 256-1024 KB L2$

Características
◦
◦
◦
◦
◦

180 – 90 nm procesos
42-125M transistores
1.4-3.4 GHz
32-bit ancho de palabra
478-pin PGA
A esta escala la
unidades se hacen
invisibles
40
Itanium 2 (last version)

Core Tukwila (65 nm)
(2010)
◦ Reloj muy rápido
◦ 256-1024 KB L2$

Características
◦ Velocidad de reloj 1.73 GHz
◦ Cache
◦ L2 256 KiB + 512 KiB; L3 24
MiB
◦ Transistores – over 600M
◦ QuickPath4.8 GT/s
◦ Cores 4
◦ 64-bit word size
◦ Socket LGA1248
41

Incremento de transistors un 104, frecuencia del
reloj alrededor de 30 años!
Summary
42
Recursos adicionales:
1.http://www.intel.com/pressroom/kits/quickreffam.htm
2.http://www.edn.com/article/CA438294.html
3.http://subjects.ee.unsw.edu.au/elec2041/lectures/index.html
4.http://redhill.net.au/c/c-1.html
5.http://en.wikipedia.org/wiki/Central_processing_unit
6.http://en.wikipedia.org/wiki/VLIW
7.http://en.wikipedia.org/wiki/Explicitly_Parallel_Instruction_Computing
8.http://en.wikipedia.org/wiki/Multi-core
9.http://en.wikipedia.org/wiki/Microcontroller
10.http://en.wikipedia.org/wiki/Embedded_system
11.http://kmh.ync.ac.kr/PcNcMicro/student2.html
12. http://www.pattosoft.com.au/Articles/ModernMicroprocessors/
13. E. Garrison Walters "The Essential Guide to Computing", Prentice Hall
PTR
43