Title | [cliqueapostilas - apostila resumidas |
---|---|
Author | JORGE oliveira |
Course | Organização de Computadores |
Institution | Universidade Paulista |
Pages | 116 |
File Size | 4.4 MB |
File Type | |
Total Downloads | 33 |
Total Views | 141 |
apostila resumidas...
www.cliqueapostilas.com.br
Apostila sobre
Organização e Arquitetura de Computadores Autor: Eder Santana Freire
Versão 1.3
www.cliqueapostilas.com.br
Apresentação A idéia de preparar uma apostila que abordasse o tema de Organização e Arquitetura de Computadores surgiu ainda durante a graduação, mas foi durante a realização de uma pós-graduação nesta área que pude compilar os tópicos de maior interesse dentro desta área, com o objetivo e de ajudar outras pessoas em busca de conhecimento, além de me ajudar a fixar e aprofundar os conhecimentos na área. Esta apostila está estruturada em tópicos e sub-tópicos, retirados de livros, notas de aula e outras fontes na Internet, e fornecem o conhecimento básico necessário ao entendimento da operação do hardware dos computadores digitais. A sua leitura é bem objetiva e simples, e procurou-se abordar os temas de forma bastante direta, de modo a facilitar uma rápida consulta por parte do leitor. Deve-se salientar que o objetivo desta apostila é transmitir a idéia geral por trás do tema, e não um conhecimento aprofundado a respeito dos tópicos cobertos. Portanto, o texto aqui apresentado serve como ponto de partida para quem se interessar pelo assunto, cujo conhecimento adquirido não só pode, como deve ser aprofundado por meio de livros e de outras fontes. Este arquivo PDF é de livre distribuição, impressão, cópia e reprodução, desde que respeitados os créditos para o autor. O mesma pode ser baixado originalmente em: www.ederfreire.tk, onde também pode ser encontrado o meu currículo, além de trabalhos futuros. A sua comercialização, em todo ou em parte, é proibida de todas as formas devendo neste caso o autor ser contactado imediatamente através do e-mail [email protected]. Críticas, sugestões e avisos de erros também podem ser enviados para este endereço.
Sobre o autor: Eder Freire é bacharel em Engenharia de Computação pela Universidade Estadual de Feira de Santana (Bahia), onde adquiriu interesse pela área de Arquitetura de Computadores e Sistemas Digitais. Desenvolveu o seu trabalho de conclusão de curso baseado na arquitetura do sistema computacional Atari 2600, vídeo-game de grande sucesso nos anos 1980. Foi selecionado como bolsista no Programa CI Brasil, do CNPq / Governo Federal, tendo concluído com sucesso a pós-graduação em Projeto de Circuitos Integrados, com ênfase em Sistemas Digitais, no Centro de Treinamento 2, localizado no Centro de Tecnologia da Informação Renato Archer (Campinas-SP). Atualmente é bolsista do CI BRASIL / CNPq em uma Design House em Salvador, e mestrando em Mecatrônica / Sistemas Computacionais pela Universidade Federal da Bahia – UFBA.
www.cliqueapostilas.com.br
Índice Introdução ........................................................................................................................................................ 5 1. Circuitos Lógicos Digitais ............................................................................................................................ 6 1.2 Organização, Projeto e Arquitetura de Computadores ........................................................................ 7 1.3 Portas Lógicas ........................................................................................................................................ 7 1.4 Álgebra Booleana................................................................................................................................. 10 1.4.1 Identidades básicas da Álgebra Booleana ............................................................................................ 11 1.4.2 Teorema de De-Morgan....................................................................................................................... 11 1.4.3 Complemento de uma função .............................................................................................................. 12 1.5 Simplificação por Mapas de Karnaugh ............................................................................................... 13 1.5.1 Mapas de Variáveis ............................................................................................................................. 13 1.5.2 Simplificação por Soma-de-Produtos .................................................................................................. 14 1.5.3 Simplificação por Produto-das-Somas ................................................................................................. 15 1.5.4 Condições Irrelevantes (don't care) ..................................................................................................... 17 1.6 Circuitos Combinacionais.................................................................................................................... 18 1.6.1 Meio-Somador .................................................................................................................................... 18 1.6.2 Somador Completo ............................................................................................................................. 19 1.6.3 Flip-Flops ........................................................................................................................................... 19 1.7 Circuitos Seqüenciais ........................................................................................................................... 23 1.7.1 Procedimento para o Projeto de Circuitos Seqüenciais ......................................................................... 24 2. Circuitos Integrados .................................................................................................................................. 25 2.1 Circuitos Integrados ............................................................................................................................ 25 2.2 Decodificadores .................................................................................................................................... 26 2.3 Codificadores ....................................................................................................................................... 29 2.4 Multiplexadores ................................................................................................................................... 29 2.5 Registradores ....................................................................................................................................... 30 2.6 Registradores de Deslocamento ........................................................................................................... 31 2.7 Contadores Binários ............................................................................................................................ 32 2.8 Unidade de Memória ........................................................................................................................... 32 2.8.1 Memória de Acesso Aleatório (Random Access Memory – RAM) ........................................................ 33 2.8.2 Memória Somente-Leitura (Read-Only Memory – ROM) .................................................................... 33 3. Unidade Central de Processamento........................................................................................................... 35 3.1 A CPU ................................................................................................................................................... 35 3.2 Organização Geral dos Registradores ................................................................................................. 35 3.2.1 Organização da Pilha .......................................................................................................................... 39 3.2.2 Pilha da Memória ................................................................................................................................ 40 3.2.3 Formatos de Instrução ......................................................................................................................... 41 3.2.4 Modos de Endereçamento ................................................................................................................... 43 3.3 Manipulação e Transferência de Dados .............................................................................................. 44 3.3.1 Instruções de Transferência de Dados .................................................................................................. 45 3.3.2 Instruções de Manipulação de Dados ................................................................................................... 46 3.3.3 Instruções Lógicas e de Manipulação de Bits....................................................................................... 47 3.3.4 Instruções de Deslocamento ................................................................................................................ 48 3.4 Controle de Programa ......................................................................................................................... 49 3.4.1 Condições de Bits de Estado ............................................................................................................... 50 3.4.2 Instruções de Desvio Condicional ....................................................................................................... 50 3.4.3 Tipos de Interrupção ........................................................................................................................... 51 3.5 RISC (Reduced Instruction Set Computer) ........................................................................................... 52 4. Organização de Entrada e Saída ............................................................................................................... 53 4.1 Dispositivos Periféricos ........................................................................................................................ 53 4.2 Caracteres Alfanuméricos ASCII ........................................................................................................ 56 4.3 Interface de Entrada e Saída ............................................................................................................... 58
www.cliqueapostilas.com.br
4.3.1 Módulos de Barramento de E/S e Interface .......................................................................................... 59 4.3.2 E/S versus Barramento de Memória .................................................................................................... 61 4.3.3 E/S Isolada versus Mapeada na Memória ............................................................................................ 61 4.3.4 Exemplo de Uma Interface de E/S ....................................................................................................... 62 4.4 Transferência de Dados ....................................................................................................................... 63 4.4.1 Transferência Síncrona ........................................................................................................................ 63 4.4.3 Controle por Strobe ............................................................................................................................. 64 4.4.4 Handshaking ....................................................................................................................................... 66 4.4.5 Transmissão Serial e Paralela .............................................................................................................. 69 4.4.6 Interface de Comunicação Assíncrona ................................................................................................. 71 4.4.7 Buffer First In First Out – FIFO.......................................................................................................... 72 4.5 Modos de Transferência....................................................................................................................... 74 4.5.1 Exemplo de E/S Programada ............................................................................................................... 75 4.5.2 E/S Iniciada por Interrupção................................................................................................................ 76 4.6 Interrupção por Prioridade ................................................................................................................. 76 4.6.1 Prioridade por Daisy Chaining ............................................................................................................ 77 4.6.2 Interrupção por Prioridade Paralela ..................................................................................................... 78 4.6.3 Codificador de Prioridade ................................................................................................................... 81 4.6.4 Ciclo de Interrupção............................................................................................................................ 81 4.6.5 Rotinas de Software ............................................................................................................................ 82 4.6.6 Operação Inicial e Final ...................................................................................................................... 84 4.7 Acesso Direto à Memória ..................................................................................................................... 84 4.7.1 Controlador DMA ............................................................................................................................... 85 4.7.2 Transferência por DMA ...................................................................................................................... 87 4.8 Processador de Entrada e Saída .......................................................................................................... 89 4.8.1 Comunicação CPU – IOP .................................................................................................................... 90 4.9 Comunicação Serial ........................................................................................................................ 92 4.9.1 Protocolo Orientado a Caracteres ........................................................................................................ 93 4.9.2 Exemplo de Transmissão..................................................................................................................... 94 5. Organização da Memória .......................................................................................................................... 96 5.1 Memória principal ............................................................................................................................... 96 5.1.1 Chips ROM e RAM ............................................................................................................................ 97 5.1.2 Mapa de Endereços de Memória ......................................................................................................... 99 5.1.3 Conexão da Memória com a CPU ....................................................................................................... 99 5.2 Memória Associativa.......................................................................................................................... 101 5.2.1 Organização do Hardware ................................................................................................................. 102 5.3 Memória Cache .................................................................................................................................. 102 5.3.1 Mapeamento Associativo .................................................................................................................. 103 5.3.2 Mapeamento Direto .......................................................................................................................... 103 5.4 Memória Virtual ................................................................................................................................ 105 5.4.1 Espaço de Endereço e Espaço de Memória ........................................................................................ 105 5.4.2 Tabela de Páginas da Memória Associativa ........................................................................................ 106 5.4.3 Substituição de Páginas ..................................................................................................................... 107 Exercícios ...................................................................................................................................................... 111 Seção I ....................................................................................................................................................... 111 Seção II .....................................................................................................................................................113 Seção III ....................................................................................................................................................114 Bibliografia ................................................................................................................................................... 116
www.cliqueapostilas.com.br
Organização e Arquitetura de Computadores
Introdução Todos sabemos que os computadores se tornaram parte da vida rotineira. O trabalho inteligente que eles executam com uma dada instrução vale à pena a sua exploração. À primeira vista, uma questão comum que surge quando começamos a estudar o funcionamento dos computadores é: “que tipo de processo está acontecendo dentro de um computador quando lhe damos uma instrução ou comando? o que acontece dentro dele?” É isto que vai ser explorado nesta apostila. Como o tema abordado é Organização e Arquitetura de Computadores, deve-se primeiramente diferenciar os termos organização e arquitetura. A Organização de Computadores está focada na forma com que os componentes de hardware estão interconectados para formar um sistema computacional. A Arquitetura de Computadores preocupa-se com a estrutura e comportamento dos vários módulos funcionais de um computador, e como eles interagem para atender às necessidades de processamento do usuário. Primeiramente, serão abordados os circuitos lógicos digitais, com a idéia de um computador básico, introdução às portas lógicas e suas características, álgebra booleana, simplificação por mapas, e circuitos combinacionais e seqüenciais. Em seguida, a apostila trata dos circuitos integrados, como codificadores, decodificadores, registradores, registradores de deslocamento e unidades de memória. Posteriormente, é abordada a unidade central de processamento, com a organização interna dos seus registradores, instruções, transferência e manipulação de dados, controle de programa e arquiteturas RISC. A organização do sistema de entrada e saída é também discutida, citando dispositivos periféricos, interfaces, modos de transferência de dados, interrupções, acesso direto à memória, processador de E/S, comunicação serial e paralela, entre outros. Por fim, o texto trata da organização de memória, que abrange a memória principal, memórias auxiliares, cache e seus tipos, e a memória virtual, com algoritmos de substituição de páginas. A apostila ainda conta com alguns exercícios, que servem como recurso para fixação do aprendizado.
Eder Santana Freire
5
www.cliqueapostilas.com.br
Organização e Arquitetura de Computadores
1. Circuitos Lógicos Digitais Este capítulo introduz o conceito fundamental para o projeto de sistemas digitais construídos a partir de portas lógicas individuais e flip-flops. O mesmo cobre álgebra booleana, e circuitos combinacionais e seqüenciais. Assim, é fornecida a base necessária para compreensão dos circuitos digitais a serem apresentados. 1.1 Computadores Digitais • Computadores digitais usam o sistema numérico binário, o qual possui dois dígitos, 0 e 1. • Um dígito binário é chamado de ...