Professional Documents
Culture Documents
Tipos de dados e de operaes Tipos e formatos de instrues Parmetros das instrues de mquina Suporte recurso Modos de endereamento
Assembly de IBM/PC
Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
Bibliografia adotada
Bibliografia adotada
1. Microcontrolador 8051 Detalhado 6. Edio
NICOLOSI, D. E. C. Editora rica
Programa
4/mar Viso geral sobre organizao e arquitetura/ Apresentao 7/mar Mquina de Von Neumann, IAS e memria 11/mar Tecnologias de hardware 14/mar Caractersticas de instrues, tipos de operandos e operaes 18/mar Modos de endereamento / formatos de instruo 21/mar Feriado (Semana Santa) 25/mar Organizao de registradores / Pipeline 28/mar RISC x CISC, superpipeline, superescalares, VLIW, Clusters 01/abr Assembly (Instrues bsicas) 04/abr Assembly (Instrues bsicas) 08/abr Assembly (Instrues bsicas) 11/abr Reviso para prova 15/abr 1 Exerccio escolar
Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
Programa
18/abr Linguagens de descrio de hardware 22/abr Linguagens de descrio de hardware 25/abr Linguagens de descrio de hardware 29/abr FPGA 02/mai Recesso Escolar 06/mai FPGA 09/mai Linguagens de descrio de arquitetura 13/mai Linguagens de descrio de arquitetura 16/mai Microcontroladores 20/mai Microcontroladores 23/mai Microcontroladores 27/mai Reviso para prova 30/mai 2 Exerccio escolar
Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
PROJETO
03/jun Acompanhamento de projeto 06/jun Acompanhamento de projeto 10/jun Acompanhamento de projeto 13/jun Projetos 17/jun Projetos 20/jun Projetos
Transmisso serial de dados entre um 8051 e um PC (Assembly) Genius com microcontrolador 8051 Pong com sada para VGA (FPGA) Calculadora c/ clculos em ponto flutuante (Assembly) (GUI em VGA) Driver PS2 (FPGA) MIDI player (8051) Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
2 2 2 2 2 2
Aplicaes futuras
dinheiro virtual, rodovias inteligentes, realidade virtual...
n 1
b .k
i i= m
Organizao
Tecnologia de memria Interfaces Implementao das instrues Interconexes (barramentos)
Arquitetura x Organizao
Arquitetura constituda pelos os atributos visveis ao programador
Famlia Intel x86 tem a mesma arquitetura Exemplo: Vai ter instruo de multiplicao?
Programas Aplicativos Linguagens de Alto Nvel Linguagem de Montagem (Assembly) Controle Microprogramado Unidades Funcionais (ALU, memria..) Portas Lgicas
Disco
Memria
1 timing & size timing & size Information Information 2 3
Mesa
Pastas
O fichrio = disco rgido (alta capacidade de armazenamento) A pasta sobre a mesa = memria (acesso rpido e fcil) Mesa e usurio = CPU OBS: Memria voltil e disco no (faxineira)
Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
Macroestrutura de um computador
Perifricos
Computador
Unidade de Processamento central Memria principal
Computador
Sistemas de Interconeco
Linhas de comunicao
CPU
Computador Registradores
CPU
Interconexes
Unidade De controle
Mecanismo De controle
Processamento de dados
Exemplos:
1946 - Eckert/Mauchkley - Eniac 1 30 toneladas, 93 m2 18.000 vlvulas e 1500 rels Muito mais rpido do que o eletromecnico = 5.000 adies ou 357 multiplicaes por segundo Usado para determinar se a bomba H poderia ser construda Funcionou at 1955
3 nveis:
nvel de montadores (assembly) nvel de mquina convencional (binrio) nvel de hardware
IAS
Programa Armazenado
De onde veio esta idia?!
Projeto de um novo computador eletrnico de programa armazenado
Conceito de Programa Armazenado: O programa e os dados so armazenados na memria do computador antes de serem processados. Isto possibilitou o desenvolvimento de compiladores e sistemas operacionais.
Desenvolvido no Instituto avanado de Princeton Concludo 1952 Constitui o prottipo de todos os computadores de propsito geral subseqentes
Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
Prerrogativas! (IAS)
Unidade de Memria
Linhas de dados Linhas de Controle
Unidade de Sada
Unidade de Entrada
Unidade de Controle
Uma memria principal que armazena dados e instrues Uma unidade lgica e aritmtica (ULA), capaz de realizar operaes com dados binrios Uma unidade de controle, que interpreta e executa instrues armazenadas na memria Dispositivos de entrada e sada, operados pela unidade de controle
Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
Memria do IAS 1000 posies de 40 bits Dados e instrues armazenados juntos na memria Dados 1 bit de sinal e valor com 39 bits Instruo uma palavra contm duas instrues de 20 bits
8 bits para o Opcode 12 bits para o endereo (0 a 999)
Estrutura IAS
MBR (registrador temporrio de dados)
Contm uma palavra com dados a ser armazenada na memria ou utilizado para receber uma palavra da memria
IR (registrador de instrues)
Contm o cdigo de operao de 8 bits que est sendo executado
Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
Estrutura IAS
IBR (registrador de armazenamento temporrio de instrues)
utilizado para armazenar temporariamente a instruo contida na poro direita de uma palavra de memria
PC (Contador de programa)
Contm o endereo de memria do prximo para de instrues a ser buscado da memria
IR Circuitos de Controle
endereos
Execuo de Cdigo!!!
Incio
Busca a prxima Busca a prxima instruo instruo Executa a Executa a instruo instruo
Trmino
Busca operando Busca operando Executa instruo Executa instruo Armazena resultado Armazena resultado
sinal
magnitude 3 4 15
Instruo
Opcode
300
PC (endereo) AC (operando)
...
940 941
1940
IR (Instruo)
0003 00 02
Registradores da CPU
PC AC IR
...
940 941
0003 00 02
PC AC IR
...
940 941
0003 00 02
PC AC IR
...
940 941
0003 00 02
3 16 + 2 16 = 5 16
PC AC IR
...
940 941
0003 00 05
Dcada de 60 Nmero de transistores dobrava a cada ano Apartir da dcada de 70 Nmero de transistores dobrava a cada 18 meses
Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
CI MicroProcessador 4044
Exemplos:
1960 - DEC - PDP 11, Primeiro minicomputador (50 unidades vendidas) 1964 - IBM 360, Primeira famlia
Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
Memria
Barramento de dados: Transporta a informao sendo transmitida Barramento de Endereos: Identifica para onde a informao est sendo enviada Barramento de Controle: Coordena o acesso aos barramentos de dados e de endereo Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
5 nveis:
Nvel de linguagem de programao nvel de montadores/compiladores nvel de sistema operacional nvel de mquina convencional (binrio) nvel de hardware mais complexo
Vista de dentro
Exemplos:
1974 - Intel 8080, Primeira CPU de uso geral em um chip 1975 Altair 8800 (interpretador BASIC desenvolvido por Bill Gates e Paul Allen)
Placa de CPU 8080 Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
Vdeos (Evoluo)
Vdeos relativos a evoluo da computao
Histria do computador O Computador parte-I O Computador parte-II O Computador parte-III Surgimento da Microsoft
Linguagem C
4 nveis:
nvel de montadores/compiladores nvel de sistema operacional nvel de mquina convencional (binrio) nvel de hardware mais simples
Velocidade do 5Mhz, 8Mhz Clock Largura do barramento N de Transistores Memria enderevel 8 bits 29.000 (3) 1MBytes
Abstrao na linguagem
Linguagem Assembly swap: MOV AX,byte ptr[SI] MOV BX,byte ptr[SI+1] MOV byte ptr[SI],BX MOV AX,byte ptr[SI],AX Linguagem C swap(int v[], int k) {int temp: temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; } Cdigo executvel 00000000101000010000000000011000 00000000100011100001100000100001 10001100011000100000000000000000 10001100111100100000000000000100 10101100111100100000000000000000 10101100011000100000000000000100 00000011111000000000000000001000
Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE
Presente
Desempenho = Funo(memria.estrutura && processamento.paralelo)
Cache x Memria principal Muitos nveis de cache?
Prof. Dr. Abel Guilhermino da Silva Filho
Arquitetura de Computadores, PPGEC/DSC/EPP/UPE