Introducción a los sistemas basados en microprocesador

Anuncio
Historia
Introducción a los sistemas basados en
microprocesador
Lección 1.1
Ing. Jorge Castro-Godı́nez
Escuela de Ingenierı́a Electrónica
Instituto Tecnológico de Costa Rica
I Semestre 2013
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
1 / 34
Historia
Contenido
1
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
2 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Era mecánica
¿Desde cuando existen las computadoras?
Aún antes de dispositivos eléctricos y electrónicos, habı́a
computación.
El ábaco, el odómetro, máquina analı́tica.
Ábaco y diseño de la máquina analı́tica
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
3 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Era eléctrica
(1)
Surgimiento del motor eléctrico.
Tarjetas y código de Hollerith, IBM.
ENIAC: primer sistema computacional programable.
ENIAC: 17000 tubos al vacı́o, + 500 millas de cable, 30
toneladas, 100000 operaciones/segundo.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
4 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Era eléctrica
(2)
La Whirlwind fue una computadora diseñada a finales de los 40’s
en el MIT para controlar el simulador de bombarderos. Fue la
primera que soportaba tiempo real. Fı́sicamente era muy grande,
contenı́a alrededor de 4000 tubos al vacı́o.
Circuiterı́a y pila de memoria de la Whirlwind.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
5 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Cronologı́a
(1)
1939 - Tecnologı́a de computadoras: John Atanasoff y
Clifford Berry crearon el primer prototipo de Atanasoff-Berry
Computer (ABC), la primera computadora digital.
1945 - Depuración: La primera “pulga” de computadoras
fue encontrada por Grace Hopper.
1946 - Tecnologı́a de computadoras: ENIAC la primera
computadora digital con programas almacenados del mundo
fue creada.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
6 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Cronologı́a
(2)
El primer bug reportado.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
7 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Cronologı́a
(3)
1950s - Evolución de lenguajes: Los lenguajes de
ensamblador fueron creados.
1952 - Compiladores: Grace Hopper escribió el primer
compilador para una computadora digital.
1954 - Evolución de lenguajes: John Backus y su equipo en
IBM empezaron el desarrollo de FORTRAN (FORmula
TRANslator).
1958 - Electrónica: Jack St. Clair inventó el circuito
integrado en Texas Instruments.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
8 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Cronologı́a
(4)
Primer CI desarrollado.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
9 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Cronologı́a
(5)
1962 - Electrónica: Texas Instruments introdujo la serie
7400 de circuitos integrados.
1965 - Tecnologı́a de computadoras: Gordon Moore
publica en un artı́culo la famosa ley de Moore.
1967 - Evolución de lenguajes: Niklaus Wirth empieza el
desarrollo de PASCAL.
1970 - Electrónica: Texas Instruments desarrolla un circuito
integrado programable llamado PLA (programmable logic
array).
1970 - Tecnologı́a de computadoras: Intel libera el chip
1103, el primer chip de memoria DRAM.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
10 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Cronologı́a
(6)
1971 - Tecnologı́a de computadoras: Intel libera el primer
microprocesador, el 4004, que es una unidad central de
proceso (CPU) de 4 bits. El mismo fue creado para el diseño
de la primera calculadora digital.
1971 - Electrónica: General Electric desarrolla el primer
dispositivo de lógica programable y borrable (PLD), basado en
la tecnologı́a PROM.
1972 - Evolución de lenguajes: Dennis Ritchie desarrolla C
en los laboratorios Bell para ser empleado en el sistema
operativo UNIX.
1973 - Tecnologı́a de computadoras: Ethernet fue
desarrollado.
1975 - Compiladores: Bill Gates and Paul Allen enviaron el
compilador BASIC a MITS. Microsoft fue fundado.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
11 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Cronologı́a
(7)
1979 - Evolución de lenguajes: Bjarne Stroustrup
desarrolló C++ en los laboratorios Bell como una mejora al
lenguaje C.
1979 - Tecnologı́a de computadores: Laboratorios Bell
introdujo el primer procesador de señales digitales (DSP).
1981 - Tecnologı́a de computadores: Un equipo liderado
por John L. Hennessy en la Universidad de Standford
empezaron a trabajar en el primer procesador MIPS.
1983 - Sistemas operativos: Richard Stallman anuncia el
sistema operativo GNU.
1984 - Electrónica: Xilinx desarrolló el FPGA.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
12 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Cronologı́a
(8)
1984 - Tecnologı́a de computadoras: Fujio Masuoka
inventó la memoria flash (NAND y NOR) mientras trabajaba
para Toshiba.
1985 - Tecnologı́a de computadoras: Acorn Computers
lanza el ARM1.
1991 - Sistemas operativos: Linux es diseñado por un
estudiante avanzado de universidad llamado Linus Torvarlds.
1993 - Tecnologı́a de computadoras: IBM, Apple y
Motorola liberan la arquitectura PowerPC.
1990s - Métodos de programación: Agile aparece en
escena.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
13 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Cronologı́a
(9)
1995 - Evolución de lenguajes: Sun Microsystems libera
Java.
1996 - Sistemas operativos: Microsoft libera la primera
versión de Windows Embedded CE.
2005 - Tecnologı́a de computadoras: IBM, Intel y AMD
liberan sus primeros procesadores de múltiple núcleo.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
14 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Era del microprocesador
Primer microprocesador: Intel 4004.
4 bits, 4096 posiciones de memoria (4 bits)
ISA: 45 instrucciones.
Tecnologı́a MOSFET de canal tipo p.
50000 instrucciones/segundo.
Aplicaciones de videojuegos.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
15 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
4004
(1)
Encapsulado DIP del 4004.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
16 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
4004
(2)
Arquitectura del 4004.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
17 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Chips de soporte del 4004
(1)
4001: ROM de 256 bytes (256 instrucciones de programa de
8bits), y un puerto incorporado de I/O de 4 bits.
4002: RAM de 40 bytes (80 palabras de datos de 4 bits), y un
puerto de salida incorporado de 4 bits. La porción de RAM del
chip está organizada en cuatro “registro” de veinte palabras
de 4 bits:
16 palabras de datos (usadas para los dı́gitos significativos en
el diseño original de la calculadora).
4 palabras de estado (usadas para los dı́gitos de exponente en
el diseño original de la calculadora).
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
18 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Chips de soporte del 4004
(2)
4003: shift register (registro de desplazamiento) de salida
paralela de 10 bits para explorar teclados, pantallas,
impresoras, etc.
4008: latch de 8 bits de dirección para acceso a chips de
memoria estándar, y un chip incorporado de 4 bits de
selección y puerto de I/O.
4009: programa y convertidor de acceso I/O a memoria
estándar y a chips de I/O.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
19 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
8008
Versión extendida de 8 bits del microprocesador 4004.
Direccionamiento de memoria de 16 Kbytes (recordar que 1 B
= 8 bits y 1 K son 1024).
48 instrucciones.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
20 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
8080
(1)
Microprocesador de 8 bits.
10x más rápido que el 8008
Compatible con tecnologı́a TTL.
4x direccionamiento de memoria (64 Kbytes)
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
21 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
8080
(2)
Primera computadora personal MITS Altair 8800.
Bill Gates y Paul Allen desarrollan intérprete de BASIC escrito
para esta computadora, 1975.
MITS Altair 8800.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
22 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
8080
(3)
Publicidad impresa del MITS Altair 8800.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
23 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
8080
(4)
Apple I basada en 8080.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
24 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
8085
El 8085 fue una versión actualizada del 8080.
1,3 µs / instrucción.
Ventas por más de 100 millones de microprocesadores.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
25 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Microprocesador moderno
Intel lanza el microprocesador 8086 en 1978.
Un año después lanza el 8088.
Ambos de 16, con tasa de procesamiento de 400
ns/instrucción.
Direccionamiento 1M de memoria, 16x más que el 8085.
Caché o cola de 4 - 6 bytes, precargar instrucciones.
CISC (computadoras de conjunto de instrucciones complejas)
debido al número y la complejidad de las instrucciones.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
26 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Arquitectura 8086 y 8088
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
27 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Diagrama de bloque de los microprocesadores 8086 y 8088
1
Bloque de registros de propósito general.
2
Bloque de registros de segmento y registro IP.
3
Sumador de direcciones.
4
Bus de direcciones interno.
5
Cola de instrucciones (4 bytes para el 8088 y 6 bytes para el
8086)
6
Unidad de control (muy simplificada).
7
Interfaz del bus.
8
Bus de datos interno
9
Unidad aritmético lógica (ALU).
10
Bus de direcciones, datos y control externos.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
28 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Diagrama Bloques 8086
Diagrama Bloques 8086.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
29 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Diagrama Bloques 8088
Diagrama Bloques 8088.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
30 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Computadora genérica
Diagrama Bloques Computadora.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
31 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Memoria von Neumman
Memoria von Neumman.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
32 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Memoria Hardvard
Memoria Hardvard.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
33 / 34
Historia
Cronologı́a
Desde el 4004 hasta el 80x86
Referencias I
B. Brey.
Microprocesadores Intel: Arquitectura, Programación e
Interfaz.
Pearson, 7ma edición, 2008.
Jorge Castro-Godı́nez
Sistemas Basados Microprocesador
34 / 34
Descargar