Arquitetura de Computadores Arquitetura de Computadores • Arquitetura de Computadores (ou Organização de Computadores) é estrutura como são organizados os módulos funcionais de um computador, como processador, memória, entrada/saída, etc. • Pode também denotar as propriedades lógicas e abstratas dos computadores, em conjunto com os métodos de projeto utilizados para implementar estas características Arquitetura de Computadores • Questões estudadas: – – – – O conjunto de instruções disponíveis Os tipos de dados utilizados A organização da memória O projeto dos módulos funcionais e questões de desempenho – A maneira como os módulos são interconectados (ligados uns aos outros) – Qual e como a informação trafega entre os módulos Arquitetura von Neumann • Módulos básicos: – O processador, também conhecido como CPU (Central Processing Unit, ou Unidade Central de Processamento), é responsável pela realização de todo o processamento – A memória principal, utilizada para armazenar programas e dados – O barramento, que é o canal de comunicação entre o processador e a memória Arquitetura von Neumann CPU BARRAMENTO MEMÓRIA PRINCIPAL Arquitetura von Neumann CPU BARRAMENTO MEMÓRIA PRINCIPAL Arquitetura von Neumann CPU BARRAMENTO UUNIDADE DE E/S MEMÓRIA PRINCIPAL Arquitetura von Neumann BARRAMENTO CPU (a) UUNIDADE DE E/S MEMÓRIA PRINCIPAL Construção de Computadores • Computadores são fabricados a partir de componentes eletrônicos, como transistores, diodos, capacitores, etc. • Componentes são miniaturizados em circuitos integrados (CIs) feitos com materiais semicondutores, como o silício • CIs são encapsulados em chips, que podem assumir várias funções, como CPU, memória, unidade de E/S, entre outras Chip • Chips também são utilizados em várias máquinas e equipamentos, como automóveis ou fornos microondas Placas • Os principais componentes de um computador (chips, barramento e outros componentes eletrônicos) são agrupados em placas • Funções das placas: – Placa-mãe (IBM-PC): contém a CPU e a memória – Placa de vídeo: exibe informações na tela – Placa de Fax/Modem: transmissão de dados através de linhas telefônicas – Placa de Som: produz sons de alta qualidade Placas CPU • Unidade Central de Processamento - UCP • A CPU é o “cérebro” do computador • Executa programas armazenados na memória principal, buscando as instruções, examinandoas, e então executando uma após outra • ATENÇÃO: O gabinete do computador, onde ficam localizados, placa-mãe, fonte, discos, além de outros componentes é erroneamente chamado de CPU CPU • Unidade Central de Processamento - UCP • A CPU é o “cérebro” do computador • Executa programas armazenados na memória principal, buscando as instruções, examinandoas, e então executando uma após outra • ATENÇÃO: O gabinete do computador, onde ficam localizados, placa-mãe, fonte, discos, além de outros componentes é erroneamente chamado de CPU Componentes da CPU • Unidade de Controle: busca as instruções da memória e determina o seu tipo (adição, subtração, comparação, etc.) • Unidade Lógica e Aritmética (ULA ou ALU): executa efetivamente as operações lógicas (comparações) e aritméticas (adição, etc.) • Registradores: formam uma memória pequena, de alta velocidade, usada para armazenar resultados temporários e informações de controle Componentes da CPU UNIDADE DE REGISTRADORES A B C D PC IR CONTROLE UNIDADE LÓGICA E ARITMÉTICA Registradores • Registradores gerais para dados temporários: A, B, C, D, etc. • Registradores de controle: PC, IR, SP, etc. • Contador de Programa (PC) – indica qual a próxima instrução a ser executada (na realidade, ele contem o endereço da próxima instrução). O nome “contador de programa” é um pouco enganador, porque ele não é realiza contagem • O Registrador de Instruções (IR) – contém a instrução que está sendo executada. Execução de Instruções 1. Busca a próxima instrução da memória para o registrador de instrução (IR) 2. Atualiza o contador de programa (PC) para que ele aponte para a instrução seguinte 3. Determina o tipo da instrução 4. Se a instrução usa dados na memória, determina onde eles estão 5. Busca os dados, se houver algum, para os registradores internos da CPU 6. Executa a instrução 7. Armazena os resultados em locais apropriados 8. Volta ao passo 1 para iniciar a execução da próxima instrução Conjunto de Instruções • A coleção de todas as instruções disponíveis ao programador (a nível de máquina) é chamada de conjunto de instruções daquela CPU • O número de instruções varia de máquina para máquina, dependo das decisões do seu projeto • Nem todos os processadores são CPUs • Alguns processadores possuem conjuntos de instruções com finalidades específicas, como processadores aritméticos ou gráficos