CEFET-RS Curso de Eletrônica 2 - Processadores Organização de Computadores Profs. Roberta Nobre & Sandro Silva [email protected] e [email protected] Microprocessador 8086 BIU FX ULA AH BH CH DH AL BL CL DL (AX) (BX) (CX) (DX) CS DS ES SS BP SI DI SP Σ Address 20 bits Bus IP Internal Bus 16 bits Data Bus Control Unit QUEUE EU CEFETRS - Eletrônica Organização de Computadores Unidade 02.2 n bits Control Bus Prof. Roberta Nobre & Sandro Silva Microprocessador 8088 BIU FX ULA AH BH CH DH AL BL CL DL (AX) (BX) (CX) (DX) CS DS ES SS BP SI DI SP Σ Address 20 bits Bus IP Internal Bus 8 bits Data Bus Control Unit QUEUE EU CEFETRS - Eletrônica Organização de Computadores Unidade 02.3 n bits Control Bus Prof. Roberta Nobre & Sandro Silva Endereçamento de Memória offset (16 bits) segmento (16 bits) 0000 CS DS ES SS Σ IP BX ou BP SI ou DI SP cte 8 ou 16 bits endereço físico (20 bits) somador da BIU CEFETRS - Eletrônica Organização de Computadores Unidade 02.4 Prof. Roberta Nobre & Sandro Silva Endereçamento de Memória Endereço físico: Endereço lógico: XXXXX16 (20 bits) XXXX16:XXXX16 (16 bits:16bits) segmento : offset IP (Instruction Pointer) BX (Base Register) BP (Base Pointer) SI (Source Index) DI (Destination Index) SP (Stack Pointer) Constante de 8 ou 16 bits CS (Code Segment) DS (Data Segment) ES (Extra data Segment) SS (Stack Segment) CEFETRS - Eletrônica Organização de Computadores Unidade 02.5 Prof. Roberta Nobre & Sandro Silva Endereçamento de Memória Formato do endereço lógico: • Busca do código de operação ou dado imediato: CS:IP • Acesso à pilha: SS:SP • Acesso a dados: DS:BX ou *:* CS DS ES SS IP BX ou BP SI ou DI SP cte 8 ou 16 bits • Acesso a string: DS:SI (fonte) e ES:DI (destino) CEFETRS - Eletrônica Organização de Computadores Unidade 02.6 Prof. Roberta Nobre & Sandro Silva Segmentos de Memória Memória Principal Segmento apontado por CS Segmento apontado por DS Segmento apontado por ES Segmento apontado por SS Obs: como o offset possui 16 bits, cada segmento possui 64K bytes CEFETRS - Eletrônica Organização de Computadores Unidade 02.7 Prof. Roberta Nobre & Sandro Silva Endereçamento de Memória 1M endereços (1MB) A B C D E F CEFETRS - Eletrônica Organização de Computadores Unidade 02.8 Prof. Roberta Nobre & Sandro Silva Memória Estendida (XMS) 640KB memória convencional A B C D E F 384KB memória superior XMS - Extended Memory Specification Toda memória além do 1º MB de memória CEFETRS - Eletrônica Organização de Computadores Unidade 02.9 Prof. Roberta Nobre & Sandro Silva Memória ROM POST:Power On Self Test auto teste ao ligar SETUP: gerenciador que define as características do computador (pressionar tecla DEL durante o POST) A B C D E F CEFETRS - Eletrônica Organização de Computadores BIOS: Basic Input/Output System sistema básico de entrada e saída ROM POST SETUP BIOS Unidade 02.10 Prof. Roberta Nobre & Sandro Silva Memória Expandida (EMS) A B C D E F CEFETRS - Eletrônica Organização de Computadores EMB Expanded Memory Specification Segmentos D e E Acesso à memória expandida (EMB) Unidade 02.11 Prof. Roberta Nobre & Sandro Silva Memória Expandida (EMS) Memória Expandida (memória externa em uma placa, ou memória estendida) cada um dos segmentos pode acessar uma página da memória expandida A B C D E F CEFETRS - Eletrônica Organização de Computadores EMS Requer o gerenciador de memória: EMM386.EXE Unidade 02.12 Prof. Roberta Nobre & Sandro Silva Endereçamento de Memória Memória de Vídeo A B C D E F CEFETRS - Eletrônica Organização de Computadores • Segmentos A e B: memória de vídeo em modo gráfico (EGA e VGA); • Segmento B: B800:0000 memória de vídeo em modo texto (CGA); • Segmento B: B000:0000 memória de vídeo em modo texto (MDA); Unidade 02.13 Prof. Roberta Nobre & Sandro Silva Endereçamento de Memória Segmento C • Controladora de Disco RLL • Controladora de Rede A B C D E F CEFETRS - Eletrônica Organização de Computadores Unidade 02.14 Prof. Roberta Nobre & Sandro Silva Tabela de Vetores de Interrupção Tabela de vetores de Interrupção Cada vetor de interrupção possui 4 bytes. • 2 bytes para offset (IP) • 2 bytes para segmento (CS) • 256 vetores de interrupções (00 a FF) A B C D E F nº INT * 4 nº INT * 4 + 1 nº INT * 4 + 2 nº INT * 4 + 3 CS CEFETRS - Eletrônica Organização de Computadores Unidade 02.15 : IP Prof. Roberta Nobre & Sandro Silva Memória Área de dados do BIOS endereço: 0040:0000 A B C D E F CEFETRS - Eletrônica Organização de Computadores Unidade 02.16 Prof. Roberta Nobre & Sandro Silva Memória Área de dados do Sistema Operacional e programas residentes A B C D E F CEFETRS - Eletrônica Organização de Computadores Unidade 02.17 Prof. Roberta Nobre & Sandro Silva Memória Alta (HMS) High Memory Specification D E FFFF:0000 A B C D E F HMS CEFETRS - Eletrônica Organização de Computadores F HMS 64K bytes de memória, localizada a partir do endereço FFFF:0000. Gerenciada pelo HIMEM.SYS. Unidade 02.18 Prof. Roberta Nobre & Sandro Silva Memória 640KB memória convencional A B C D E F CEFETRS - Eletrônica Organização de Computadores memória Utilizada nos PC atuais Unidade 02.19 Prof. Roberta Nobre & Sandro Silva Shadow RAM cópia dos dados ROM RAM RAM ROM RAM RAM RAM Consiste em realizar a cópia de todos os dados de uma ROM para uma RAM, e após substituir a ROM pela RAM. Vantagem: o tempo de acesso a uma RAM é menor que o tempo de acesso a uma ROM. CEFETRS - Eletrônica Organização de Computadores Unidade 02.20 Prof. Roberta Nobre & Sandro Silva Coprocessador Aritmético (FPU) A ULA somente manipula valores inteiros. • O coprocessador possui registradores próprios; • Opera como uma máquina de pilha (interna ao coprocessador); • A comunicação entre CPU e FPU é feita por interrupção; • Conectado em paralelo ao processador. • 8087 • 80287 • 80387 • 80487SX • A partir do 80486 a FPU fica interna ao processador CEFETRS - Eletrônica Organização de Computadores Unidade 02.21 Prof. Roberta Nobre & Sandro Silva Formato dos números em ponto flutuante sinal expoente mantissa Precisão simples: 32 bits mantissa: 23 bits; expoente: 8 bits; Precisão dupla: 64 bits mantissa: 52 bits; expoente: 11 bits; Precisão estendida: 80 bits mantissa: 63 bits; expoente: 15 bits; Operações: soma/subtração: expoentes iguais Æ soma/subtração entre mantissas; multiplicação/divisão: soma/subtração entre expoentes; multiplicação/divisão entre mantissas; CEFETRS - Eletrônica Organização de Computadores Unidade 02.22 Prof. Roberta Nobre & Sandro Silva Modo Real e Modo Protegido Modo Real: • Ao ligar o processador entra em modo real; • Faz com que o processador opere como um 8086; • Permite somente o uso do 1º 1MB de memória; Modo protegido • Surgiu a partir do 80286; • Endereçamento de toda a memória; • Memória Virtual; • Multitarefa (escalonamento); • Proteção de memória • Não executa programas feitos para o modo real. CEFETRS - Eletrônica Organização de Computadores Unidade 02.23 Prof. Roberta Nobre & Sandro Silva Memória Virtual Memória Secundária Consiste em utilizar uma quantidade de memória maior que a memória principal do sistema, através de escalonamento de páginas de uma memória secundária (ex: HD) Memória Principal CEFETRS - Eletrônica Organização de Computadores Unidade 02.24 Prof. Roberta Nobre & Sandro Silva Multitarefa Consiste em utilizar o processador para realizar diversas tarefas diferentes • Cada tarefa é executada em uma fatia do tempo de processamento; • O processador é capaz de salvar o contexto de cada tarefa; • O Sistema Operacional deve proporcionar um escalonador para o chaveamento das tarefas; CEFETRS - Eletrônica Organização de Computadores Unidade 02.25 Prof. Roberta Nobre & Sandro Silva Modo Virtual 86 • Permite que programas monousuários (como o DOS) funcionem normalmente no modo protegido; • O modo virtual 86 é executado como uma tarefa do modo protegido; • É cerca de 15x mais rápido que o 8086 (sob mesmo clock); • Permite a utilização de diversas tarefas feitas para o modo real. CEFETRS - Eletrônica Organização de Computadores Unidade 02.26 Prof. Roberta Nobre & Sandro Silva Pipeline 8086 Execution Unit Bus Interface Unit 80286 Execution Unit Instruction Unit Address Generation Unit Bus Interface Unit Segmentation Unit Pagination Unit Bus Interface Unit Instruction Unit Prefetch Unit Execution Unit Segmentation Unit Pagination Unit Cache Unit Floating Point Unit Control Unit Instruction Unit Prefetch Unit 80386 Execution Unit 80486 CEFETRS - Eletrônica Organização de Computadores Unidade 02.27 Bus Interface Unit Prof. Roberta Nobre & Sandro Silva RISC x CISC RISC - Reduced Instruction Set Computer • Instruções simples, que realizam operações únicas; • Todo o acesso à memória é feito por instruções load e store; • Possuem grande quantidade de registradores; • Controle simplificado. CISC - Complex Instruction Set Computer • Instruções complexas realizam operações múltiplas; • Controle complexo. Atualmente muitos processadores são internamente máquinas RISC, que emulam operações CISC através de microinstruções. CEFETRS - Eletrônica Organização de Computadores Unidade 02.28 Prof. Roberta Nobre & Sandro Silva