Sunteți pe pagina 1din 38

ARQUITECTURA DE COMPUTADORAS

Unidad N 4 Unidad de Control Buses

Profesor: Fabio Bruschetti

Unidad de control (UdC o CU)


n

Estructura

UdC
n n

La UDC es la esencia funcional del computador Ser la responsable de decodificar las instrucciones, generar todas las seales elctricas necesarias para su ejecucin tanto dentro como fuera de la CPU En un principio, las UDC estaban internamente cableadas; es decir, se las construa con circuitos discretos fijos para decodificar y ejecutar instrucciones. Esto tena como ventaja una alta velocidad de ejecucin pero el inconveniente de no poder incorporar nuevas instrucciones al set original; prcticamente haba que realizar un nuevo diseo. Actualmente no son cableadas, son microprogrmadas. Estas unidades poseen una Memoria de Control donde se encuentran almacenados los Microprogramas correspondientes para cada una de las instrucciones que es capaz de ejecutar la CPU

UdC
n

Para cada instruccin del set, existe una secuencia de eventos necesaria para lograr su objetivo Cada uno de estos eventos se llama microinstrucciones El conjunto de microinstrucciones se llama microprograma Para cada instruccin, existir un microprograma dentro de la UC, ms precisamente en la Memoria de Control Un Microprograma es una secuencia de microinstrucciones, denominando as al conjunto de seales elctricas necesarias para dicha ejecucin La ejecucin de dichas microinstrucciones tienen como base la seal de reloj que marca el paso de los acontecimientos
4

n n n

UdC
n

Los 1 y 0 almacenados en la Memoria de Control se correspondern con los valores elctricos que tomarn las seales de control que emita la UDC La ventaja de las unidades de control microprograrnadas es que es posible agregar muevas instrucciones con solo almacenar los microprogramas correspondientes a la Memoria de Control La Memoria de Control es inaccesible al usuario y es grabada por el fabricante del Microprocesador o por un proceso especial que el fabricante pone a disposicin

UdC Ciclo de Instruccin


n n n

Un programa est compuesto por instrucciones Cada instruccin se compone de diferentes ciclos Cada ciclo se compone de microinstrucciones
MOV AX,4C00h

Ciclo de Instruccin 1

Instruction Fetch Instruction Decode

CALC.EXE
Ejecucin del programa

INC AX

0000101010110

Ciclo de Instruccin 2

Microinstruccin 1
1111101011001

Microinstruccin 2 Operand Fetch


1011010110000 INT 20h

Ciclo de Instruccin m

Execution
IF=1

Microinstruccin n

Interruption

UdC Ciclo de Instruccin


n

Instuction Fetch (Bsqueda del cdigo de operacin COP)


n n

Sucede al inicio de cada ciclo de instruccin Consiste en leer de la MP la siguiente instruccin Se decodifica el cdigo de operacin y se determina la necesidad de operandos Lectura de uno o ms operandos desde la MP La ALU realizar la operacin indicada por el COP (ADD, SUB, MUL, NOT, etc) Se almacenar el resultado en el registro o posicin de la MP segn indique la instruccin
7

Instruction Decode
n

Operand Fetch
n

Execution
n

UdC Ciclo de Innterrupcin


n

Como las CPUs estn diseadas para ser interrumpidas durante la ejecucin de sus programas (y por consiguiente en cada una de sus instrucciones), existen mecanismos para esta situacin que generan una interrupcin Al suceder esto, la CPU inicia un ciclo de interrupcin, el que consiste en la ejecucin de un programa (otro diferente al corriente) que atiende la interrupcin. Este programa est compuesto tambin por instrucciones Esto ocurrir si la bandera de habilitacin de interrupciones (Interrupt flag) est en 1 (IF=1)
8

UdC Ejecucin de microinstrucciones


n

Ejecucin de una microinstruccin


n

Cuando el DEC (decodificador) apunta a una posicin de la Memoria de Control (MdC), indica que esta deber ejecutarse Ejecutar esa microoperacin implica que los 0 y 1 que hay en esa posicin de la MdC, aparecern como seales elctricas que actuarn sobre los circuitos digitales de la CPU Estas seales activarn las conexiones y desconexiones necesarias para que, en el siguiente pulso de CLK, la informacin fluya de un dispositivo a otro segn lo requerido

UdC Paralelismo
n

Paralelismo Temporal y Espacial


n

Espacial: Existen varias unidades funcionales (simultaneidad) Temporal: Se solapan tiempos. IF = Instruction Fetch ID = Instruction Decode OF = Operand Fetch EX = Instruction Execution
10

Ciclo de ejecucin
n n n n

UdC Paralelismo
n

Pipeline
n

Tipos
n n n n n n

En la segmentacin de instrucciones, cada etapa o segmento de la cadena est especializada en una tarea especfica de la lnea de ejecucin y lleva a cabo siempre la misma actividad Esta tecnologa es propia de procesadores eficientes Aritmticos de Instruccin de Procesador Uni/Multifuncionales Estticos/Dinmicos Escalares/Vectoriales
11

UdC Problemas en los Pipelines


n

Problemas de datos Forwarding


n

Un dato que es modificado, es leido inmediatamente luego. Como la modificacin puede no haber finalizado, la lectura puede ser errnea
n n

i1.R2 = R1 + R3 i2.R4 = R2 + R3

Problemas de control Predictores de saltos


n

Ocurren cuando una instruccin de salto deber ejecutarse pero no se puede saber si la condicin de salto ser satisfactoria con lo cual la prxima instruccin a ejecutar no es la que fsicamente est a continuacin del salto
n n n

i1.A = B - C i2.JMP A = 0 to i.n i3.D = A x B


12

UdC Problemas en los Pipelines


n

Problemas de estructura Ms unidades estructurales


n

Ocurren cuando dos instrucciones requieren una misma unidad estructural (por ejemplo la ALU)
n n

i1.JMP A = 0 Requiere la ALU para comparar i2.CMP A,B Requiere la ALU para comparar

13

UdC Ejemplos de Paralelismo


n

Pipeline Sumador de Punto Flotante en 4 etapas

14

Arquitecturas RISC y CISC


n

RISC (Reduced Instruction Set Computing)


n n n

n n

CISC (Complex Instruction Set Computing)


n

Conjunto de instrucciones simples que hacen menos cosas en poco tiempo Arquitectura LOAD-STORE Alpha, ARC, MIPS, PA-RISC, PIC, Power Architecture (que incluye el PowerPC), SuperH, SPARC Basados en el modelo de Harvard Intel Core 2 y AMD K6 tienen unidades de ejecucin internas del tipo RISC Cada instruccin puede requerir ejecutar una o varias instrucciones de bajo nivel (load, calculate y store en una misma instruccin) IBM System/360, PDP-11, VAX, 68000, y familia x86 Otorga muy buena productividad en Assembler, Fortran, Algol
15

n n

Arquitecturas RISC y CISC


Principales caractersticas
Cantidad de instrucciones en lenguaje mquina Cantidad de modos de direccionamiento Cantidad de formatos de instruccin Cantidad de ciclos de reloj necesarios para ejecutar cada instruccin Instrucciones para acceder a la memoria Registros de propsito especfico

CISC
Muchas Muchos Varios Muchas, ms de uno Muchas Si

RISC
Pocas Pocos Unico Uno 2, Load y Store No

16

Buses Seales
n

Seales
n

Continuas
n

El valor de la seal no cambia con el tiempo, es constante

Alternadas o alternas peridicas


n n

El valor de la seal depende del tiempo Frecuencia = cantidad de ciclos por unidad de tiempo (seg). Se mide en Hertz (Hz) y:
n n n n

1 Hz = 1 ciclo / seg. Perodo = 1 / Frecuencia Vp = Valor pico Vm = Valor medio


17

Buses Seales
n

Analgicas
n

Representables por una funcin matemtica continua Ondas sonoras, luz

Digitales
n

Pueden tomar un conjunto de valores discreto nicamente Cdigo morse, interruptor


18

Buses
n n

Dentro de un computador, la CPU, Memoria y E/S se comunican entre s mediante varias vas de conexin Al grupo de vas que realiza esta conexin se lo denomina Sistema de Interconexin o Buses Los buses tambin pueden interconectar computadores entre s (USB) Interconexin de Bus
n n n n n n

Conecta dos o ms dispositivos. Transmite informacin en modo compartido Todos los dispositivos reciben la misma informacin del bus Un dispositivo a la vez puede transmitir informacin con xito Est compuesto por mltiples lneas de comunicacin Est regido por normas o reglas de conexin
19

Buses Propiesdades
n

Ciclo: Llamaremos ciclo de bus a la operacin bsica del bus en que se realiza una transferencia elemental completa de informacin entre dos dispositivos conectados al bus
n

Bus de ciclo completo: Si la transferencia de informacin se hace sin interrupciones Bus de ciclo partido: el tiempo del bus se divide en pequeos perodos (time slots) en donde se manda parte de los datos en cada uno de ellos

20

Buses Propiedades
n

Paralelismo: Generalmente se transmiten todos los datos o (bits) al mismo tiempo. Si el bus es menos ancho que la palabra a transmitir, se usarn buses multiplexados o de ciclo partido, es decir, se transfiere la palabra en partes

21

Buses Propiedades
n n

Ancho: Nmero de lneas (bits) que se utilizan para transmitir una palabra Banda base: La informacin se enva si necesidad de una seal portadora Sincronizacin: Si hay una nica seal de reloj (CLK) que regula la transmisin de informacin, diremos que el bus es sincrnico. Cuando cada dispositivo regula la sincronizacin segn sus necesidades, ser un bus asincrnico. Velocidad: se referir a la velocidad de transmisin del medio fsico empleado para realizar las conexiones entre los dispositivos (cobre, plata, etc.)
22

Buses Propiedades
n n

Capacidad de conexin: Dado por el mximo nmero de dispositivos que pueden conectarse al bus Aplicacin: se los diferenciar segn su uso, como ser el bus de un canal DMA, SATA, AGP, etc. Soporte: materiales fsicos utilizados para soportar y realizar las conexiones fsicas: circuito impreso, cables, aislamiento, etc. Funcin: Se los clasifica en tres grupos: Control (Control), Direcciones (Address) y Datos (Data)

23

Buses Niveles de especificacin


n n n

Mecnico: cantidad de hilos, conectores, etc. Elctrico: circuito equivalente, niveles de tensiones, etc. Lgico: define la equivalencia lgica de los valores elctricos Temporizacin bsica: cronograma temporal de un ciclo completo del bus

24

Buses de un computador
n

Bus de Datos (Data bus): Contiene las lneas necesarias para mover los datos entre los diferentes mdulos del sistema. Posee un ancho de 8, 16, 32, 64 bit y an mayores (longitud de palabra) Bus de Direcciones (Address bus): La informacin que contiene designa el origen y el destino de los datos presentes en el bus de datos. Su anchura determina la mxima capacidad de direccionamiento, es decir, si su ancho es n su capacidad de direccionamiento ser 2n.

25

Buses de un computador
n

Bus de Control (Control bus): Utilizado para coordinar y controlar el acceso a los mdulos y la transferencia de informacin entre ellos. Provee la temporizacin y el control de validez de las operaciones que se realizan Las seales ms comunes son:
n n n n n n n n

R/W (read / write)= lectura / escritura en un dispositivo IO/ M (input-output / memory) = acceso a E/S o Memoria
BR (bus request) = solicitud del bus para su uso BRA (bus request acknowledge) = aceptacin del pedido del bus INT (interrupt) = solicitud de interrupcin INTA (interrupt acknowledge) = aceptacin de interrupcin CLK (clock) = reloj del sistema INIT (initialize) = reiniciar todos los mdulos del sistema
26

Buses Arquitecturas
n

Algunas arquitecturas de bus conocidas:


n

n n

RS-232 (Recommended Standard 232) Electronic Industries Association 1969 Comunicacin serie entre el computador y dispositivos externos, modems, impresoras, ratones ISA (Industry Standard Architecture) IBM 1981 PC PATA (Parallel Advanced Technology Attachment) 1986 Western Digital Discos rgidos MCA (Micro Channel Architecture) IBM 1987 PS/2, RS600, AS/400, Sysytem/370 EISA (Extended Industry Standard Architecture) Gang of Nine 1988 PC compatibles, AlphaServer, HP-9000D ESDI (Enhanced Small Disk Interface) Maxtor Corporation 1989 Discos rgidos USB (Universal Serial Bus) - Compaq, DEC, IBM, Intel, Microsoft, NEC y Nortel 1990 Comunicacin y alimentacin de dispositivos electrnicos conectados a un computador
27

Buses Arquitecturas
n

Algunas arquitecturas de bus conocidas:


n

SCSI (Small Computer System Interface) Adaptec 1990 Conexin con perifricos, CDs, discos VLB (Vesa Local Bus) - Video Electronics Standards Association 1992 I/O y DMA PCI (Peripheral Component Interconnect) Intel 1993 Conectar dispositivos de hardware a la computadora FireWire (IEEE 1394 interface) Apple 1995 Transferencia de datos en tiempo real, audio, video, aeronavegacin SBus (SPARC bus) Sun Microsystems 1997 Interconexin CPU con perifricos AGP (Accelerated Graphics Port) Intel 1997 Conectar placas de vdeo a la motherboard SATA (Serial Advanced Technology Attachment) The Serial ATA International Organization 2003 Dispositivos de almacenamiento masivo PCI-Express (Peripheral Component Interconnect Express) 2004 Intel, Dell, IBM y HP Conectar perifricos montados en la motherboard 28

Buses
n

Buses en el subsistema de Entrada-Salida

29

Bus ISA (Industry Standard Architecture)


n

Arquitectura de bus creada por IBM en 1981 para el procesador IBM AT (8086-8088) 20 bits de direccionamiento demultiplexados Lneas de +5V y + 12V para alimentacin de placas 4 canales de DMA (Acceso Directo a Memoria (RAM, Diskette, Disco Rgido y otras). Cada canal puede ser utilizado simultneamente por 4 dispositivos de 8 bits Soportaba hasta 6 dispositivos de 8 bits Operaba a 4, 6 u 8 MHz y en clones hasta 22 Mhz Fue la base del posterior bus ATA Actualmente se utiliza en equipos industriales Otra derivacin del bus es la interfaz PCMCIA (Personal Computer Memory Card International Association )

n n n

n n n n n

30

Bus EISA (Extended ISA)


n

Arquitectura de bus creada por el grupo formado por AST, Compaq, Epson, HewlettPackard, NEC Corporation, Olivetti, Tandy, Wyse y Zenith Data SystemsIBM en 1988 para PC compatibles Se us hasta mediado de 1990 Es de 32 bits con la CPU y Memoria y soporta ms de un procesador conectado Soporta tener otros buses ISA como esclavos Era compatible con placas ISA Transmisin sincrnica de alta velocidad (33 Mb/seg)
31

n n

n n n

Bus PCI (Peripheral Component Interconnect)


n

Arquitectura de bus creada por Intel en 1990 para familia de procesadores x86 Espacios de direccionamiento
n n n

32 bits para Memoria Pricipal (4 GB) opcional 64 bits 64 bits para Perifricos 256 bytes para configuracin de 32 dispositivos x 1 byte =5 bits para id + 3 bits para funciones Extiende a 4096 bytes para configuracin x 16 bits

PCI-X
n

32

Bus PCI
n

Especificaciones
n n

Reloj de 33,33 MHz con transferencias sincrnicas Tasa de transferencia mxima de 133 MB por segundo en el bus de 32 bits (33,33 MHz 32 bits 8 bits/byte = 133 MB/s) Cache de datos con posibilidad de transmisin en modo de rfagas Tasa de transferencia mxima de 266 MB/s en el bus de 64 bits. 3,3 V o 5 V, dependiendo del dispositivo

33

Bus PCI Registro


n

Device ID y Vendor ID: identifican el fabricante Subsystem ID y Subsystem Vendor ID: identifican el dispositivo Status: caractersticas soportadas y errores ocurridos Command: conjunto de bits que activan las prestaciones Cache Line Size: sincronizacin con cach
34

Bus PCI
n

Operacin
n

La BIOS o el S.O. direcciona cada uno de los dispoitivos y los enumera de #0 en adelante a travs de la controladora PCI Inicialmente, los dispositivos estn inactivos. Al detectarse se configuran y se les asigna los BARs (Base Address Registers) que mantiene mientras est conectado Permite la funcin de Plug-and-play Permite conectar y gestionar un bus PCI secundario A traves de dos registros:
n n

n n

Software de acceso
n

CONFIG_ADDRESS: id del dispositivo y comando a ejecutar PCI CONFIG_DATA: datos a escribir o leer
35

Bus PCI
n

Interrupciones
n

Comparte 4 lneas de interrupciones autoconfigurables Versiones modernas implementan interrupciones a travs de mensajes de sealizacin

36

Bus USB (Universal Serial Bus)


n n

n n n

Arquitectura creada por siete empresas IBM, Intel, Northern Telecom, Compaq, Microsoft, DEC y NEC en 1996 Permite conecectar todo tipo de dispositivos electrnicos incluyendo cmaras de fotos digitales y scanners No hace falta detener el computador para conectar o desconectar un dispositivo (plug-and-play) Dispositivos no usados pasan a estado de bajo consumo Trafico full-duplex Tipos
n n n n

1.0: 1.1: 2.0: 3.0:

Baja velocidad. 1,5 Mbps Velocidad completa. 12 Mbps Alta velocidad. 488 Mbps Super Alta velocidad. 4,8 Gbps
37

Bus USB
n n

n n n

Permite el funcionamiento simultneo de 127 dispositivos Tambin administra la energa a los dispositivos conectados El cable de interfaz puede legar a 5 m. mximo Variados tipos de conectores Se pueden conectar:
n

Adaptadores de memorias, Cmaras de fotos, Cmaras de video, Telfonos mviles, Disqueteras externas, Discos duros externos, Grabadoras de DVD externas, Impresoras, Ratones USB, Multifunciones, Teclados USB, MP3, MP4, Pendrives, PDA, Pedales, Sintonizadoras de TV, Volantes, Joysticks, Webcams, Tarjetas de sonido, Mini altavoces
38

S-ar putea să vă placă și