Prévia do material em texto
5.7 Microprocessadores • Descrever – Funções executadas e funcionamento geral de um microprocessador (CPU); – Funcionamento básico de cada um dos seguintes elementos de microprocessador: » unidade de controlo e processamento, » Relógio » Registo » unidade de aritmética lógica. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 1 5.7 Microprocessadores • Unidade de controlo – A unidade de controlo é responsável por organizar o fluxo ordenado de dados dentro do microprocessador, assim como gerar e responder a sinais do barramento de controlo. A unidade de controlo é também responsável pelo timing de todas as transferências de dados. Este processo é sincronizado utilizando uma fonte interna ou externa de relógio. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 2 5.7 Microprocessadores • Unidade de aritmética e lógica (ALU) – desempenha funções de cálculo lógico e aritmético. A ALU tem duas entradas (neste caso ambas de 8bit). Uma destas entradas está ligada ao acumulador enquanto a outra está ligada internamente ao barramento de dados por um registo temporário de dados. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 3 5.7 Microprocessadores • Unidade de aritmética e lógica (ALU) – As operações disponibilizadas pela ALU normalmente são a soma, subtracção, AND lógico, OR lógico, XOR lógico, deslocamento à esquerda (shift left), etc. O resultado das operações da ALU são disponibilizados no acumulador. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 4 5.7 Microprocessadores • Unidade de aritmética e lógica (ALU) – capaz de desempenhar funções de aritmética e lógica. Funciona com duas entradas e fornece uma saída com o resultado da operação executada. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 5 5.7 Microprocessadores • Unidade de aritmética e lógica (ALU) – O estado é actualizado no registo de estado sempre que um resultado nulo, negativo ou demasiado grande for detectado. Esta é uma propriedade muito útil, vejamos por exemplo um programa que necessite de repetir uma operação um indeterminado numero de vezes até o resultado final ser nulo. Sem a flag que indica um resultado nulo não haveria forma de fazer o programa repetir-se 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 6 5.7 Microprocessadores • Registo de estado – O resultado de uma operação na ALU é por vezes importante na determinação de qual acção se irá desenrolar de seguida. O registo de estado contém um numero de bits individuais que são postos a nível alto ou nível baixo em função do funcionamento da ALU. Estes bits são designados por flags. As seguinte flags são exemplos típicos: 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 7 5.7 Microprocessadores • Registo de estado – ZERO - fica 0 quando a operação na ALU devolve um valor zero – CARRY - fica 1 quando a operação na ALU tem um resultado com mais de um algarismo – INTERRUPT - fica 1 enquanto ocorre uma operação externa 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 8 5.7 Microprocessadores • Registo de estado – Registador: • memória temporária existente dentro do CPU. Alguns registadores têm utilização específica: program counter register ou instruction register; 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 9 5.7 Microprocessadores – Arquitetura interna de CPU de 8bit 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 10 5.7 Microprocessadores • Acumulador – funciona como um registo de origem e destino para a maioria das operações de um processador. • Como registo de origem contém os dados que serão utilizados numa determinada operação, como registro de destino será utilizado apara armazenar os dados de uma determinada operação. – O acumulador (ou registo A) caracteriza um grande número de operações, consequentemente é mais referido que qualquer outro registo. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 11 5.7 Microprocessadores • Registro de instruções – Providencia um armazenamento temporário no qual a instrução actual do processador é mantida enquanto é descodificada. Instruções do programa são passadas ao microprocessador, uma de cada vez, pelo barramento de dados interno. – Na primeira parte de cada ciclo de máquina, a instrução é “agarrada” e descodificada. A instrução é executada no segundo (e seguintes) ciclos de máquina. Cada ciclo de máquina demora um tempo finito (normalmente menos de um microssegundo)dependendo da frequência do relógio (clock) do microprocessador. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 12 5.7 Microprocessadores • Barramento de dados (D0 a D7) – O barramento de dados externo é uma “via rápida” para dados que liga todos os compomentes do sistema (como RAM, ROM e I/O). Num sistema de 8bit, o barramento de dados tem 8 linhas de dados, identificadas D0 (LSB) a D7 (MSB) e esses dados são movidos sempre em grupos de 8bit. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 13 5.7 Microprocessadores • Buffer do barramento de dados – O buffer é um registro temporário no qual os dados fluem de e para o microprocessador. – O buffer é então bidireccional com dados oriundos do cpu para operações de escrita e com destino ao cpu em operações de leitura. A direcção da transferência de dados é determinada pela unidade de controlo e depende de cada instrução do programa 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 14 5.7 Microprocessadores • Barramento de dados interno • é um barramento de alta velocidade que liga todos os elementos internos do cpu. • os dados estão sempre em constante movimento em ambos os sentidos ao longo das linhas deste barramento. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 15 5.7 Microprocessadores • Registros genéricos – Muitas operações do CPU (+ de 2 números de 8bit) requerem a utilização de vários registros. Também há a necessidade de armazenar temporariamente o resultado da operação enquanto outras operações decorrem. – Ambas as necessidades podem ser resolvidas com a existência de um determinado numero de registros genéricos. A utilização destes registros é dependente do interesse do programador 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 16 5.7 Microprocessadores • Ponteiro de pilha (Stack pointer) • Quando chega a altura de suspender uma determinada tarefa por forma a dar prioridade a uma tarefa breve, os microprocessadores fazem uso de uma região externa de memória RAM, chamada de pilha (stack). Quando o programa é interrompido, o microprocessador coloca na stack o conteúdo dos seus registos internos junto com o endereço da próxima instrução a executar do programa principal. Quando a tarefa breve é concluída e a interrupção é finalizada, o microprocessador recupera os dados anteriores que foram armazenados na stack. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 17 5.7 Microprocessadores • Ponteiro de pilha (Stack pointer) 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 18 5.7 Microprocessadores • Ponteiro de instrução (Instruction Pointer) • Armazenando o endereço da próxima instrucção a ser executada o ponteiro de instrucção (ou program counter) permite ao microprocessador manter o rasto de que ponto do programa está a executar em qualquer instante. Este registo é automaticamente incrementado a cada instrução executada 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 19 5.7 Microprocessadores • Ponteiro de instrução (Instruction Pointer) 14-Fev-17 Técnicasdigitais sistemas de instrumentação electrónicos 20 5.7 Microprocessadores • Buffer do barramento de endereçamento – Num processador simples, o buffer do barramento de endereços é unidireccional com endereços colocados no barramento de endereçamento durante processos de escrita e leitura. As linhas do barramento de endereçamento são marcadas A0 a A15, onde A0 é o LSB e A15 o MSB. – Em cada uma das localizações é possível armazenar 1 byte de dados. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 21 5.7 Microprocessadores • Barramento de controlo • O barramento de control é um conjunto de sinais de control utilizados para controlar e sinalizar a transferencia de dados no sistema e também permite a interacção com dispositivos externos. • Os sinais de controlo utilizados pelos microcontroladores tendem a diferir com diferentes tipos, no entanto os seguintes são comuns: – READ – quando o microprocessador está a efectuar uma operação de leitura – WRITE – quando o microprocessador está a efectuar uma operação de escrita – RESET – sinal que reinicia os registros internos e inicializa o ponteiro de instrução, reiniciando o programa – IRQ – sinal de requisição de interrupção externa, de forma a direccionar a “atenção” do processador 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 22 5.7 Microprocessadores • Descodificador de instruções – É um arranjo de portas lógicas que actua nos bits armazenados no registro de instrução e determina qual instrução está a ser referenciada.O descodificador de instruções fornece sinais de saída para a unidade de controlo do cpu. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 23 5.7 Microprocessadores • Timing and controlo • parte integrante do CPU e executa as funções: – Coordenação do funcionamento interno do CPU; – Mantém o clock para os pulsos de temporização; – Controla a operação da ALU e dos registadores; – Fornece os pulsos read/write para as outras unidades via control bus 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 24 • Computador – Barramentos • Barramento de Dados – é onde apenas circulam dados, isto é, neste barramento só há dados a serem transferidos de um dispositivo para outro – Através deste canal o microprocessador recebe o conteúdo do registo seleccionado pelo barramento de endereços. Os barramentos interligam todos os componentes que tenham acesso aos dados. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 25 5.7 Microprocessadores • Computador – Barramentos • Barramento de Endereços – Neste barramento circulam os endereços dos dispositivos, aos quais os dados serão enviados – é responsável por informar qual será o destino dos dados a serem colocados no barramento de dados – O microprocessador consegue seleccionar registos externos situados na memória ou na unidade de entrada/saída 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 26 5.7 Microprocessadores • Computador – Barramentos • Barramento de controlo – Controla a comunicação. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 27 MEMORY INPUT/OUTPUT UNIT CONTROL BUS DATA BUS CENTRAL PROCESSING UNIT ADDRESS BUS I/P O/P 5.7 Microprocessadores 5.7 Microprocessadores • Relógio – O relógio num sistema computorizado é simplesmente um gerador de onda quadrada preciso e estável. Na maioria dos casos a frequência da onda quadrada é determinada utilizando um cristal. Um simples oscilador de 4MHZ de onda quadrada é mostrado na Figura. Note-se que um ciclo completo de relógio é chamado de estado T 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 28 5.7 Microprocessadores • Relógio » A maioria dos microprocessadores utilizam fontes de relógio internas ligadas a cristais externos. Na Figura (a) um relógio externo é ligado a um microprocessador enquanto a Figura (b) tem um oscilador interno. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 29 5.7 Microprocessadores • Funcionamento de um microprocessador » A maioria das operações de um microprocessador envolve a movimentação de dados. Inclusive o código do programa tem de ser lido da memoria externa antes da sua execução. » O microprocessador desempenha uma sequencia continua de instruções e ciclos de execução. O acto de leitura do código de instrução (ou operando ou valor) da memoria envolve uma operação de leitura e a movimentação de dados do microprocessador para a memoria envolve uma operação de escrita 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 30 5.7 Microprocessadores • Funcionamento de um microprocessador – Cada ciclo de operação do CPU é conhecido como ciclo de máquina. Instruções do programa podem necessitar de vários ciclos máquina para serem executadas (normalmente entre 2 e 5). O primeiro ciclo de máquina em qualquer ciclo consiste na leitura de uma instrução e conhecido como ciclo M1. Os ciclos seguintes M2, M3… dependem do tipo de instrução em execução. Este processo está demonstrado na Figura 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 31 5.7 Microprocessadores • Funcionamento de um microprocessador – Os microprocessadores determinam a fonte e destino dos dados colocando um único endereço no barramento de endereçamento. O endereço no qual os dados são escritos ou de onde são lidos pode ser constituinte da memória do sistema ou estar associado a portas de entrada/saída (I/O). – Num microprocessador os dados são armazenados em diversos registos. Geralmente são capazes de armazenar grupos de 16 ou 32 bit. – Alguns registos do microprocessador podem ser reclassificados como genéricos ou dedicados. – Um microprocessador de 8bit (o Zilog Z80) e a sua arquitectura de registos é demonstrada na Figura do próximo SLIDE. Note-se que este microprocessador tem 6 registos genéricos e cada um tem 8bit de comprimento. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 32 5.7 Microprocessadores • Funcionamento de um microprocessador 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 33 5.7 Microprocessadores • Ethernet – rede aeronáutica • Ethernet é uma arquitetura de interconexão para redes locais - Rede de Área Local (LAN) [rede privada] https://pt.wikipedia.org/wiki/Ethernet https://www.youtube.com/watch?v=jH5gOJvvCSQ https://www.youtube.com/watch?v=LN6LuhRYzuA https://pt.wikipedia.org/wiki/Ethernet https://pt.wikipedia.org/wiki/Ethernet https://pt.wikipedia.org/wiki/Ethernet https://www.youtube.com/watch?v=jH5gOJvvCSQ https://www.youtube.com/watch?v=LN6LuhRYzuA 5.7 Microprocessadores http://articles.sae.org/10234/ http://articles.sae.org/10234/ 5.7 Microprocessadores • Nota: – No 5.4 - barramentos ficou por referir • CSDB e ASCB – Os standards CSDB e ASCB são propriedade da Collins e Honeywell respectivamente. Estes sistemas são comuns em jactos particulares e aviação geral. – O standard CSDB é um barramento unidireccional que permite a ligação de até 10 receptores. A velocidade típica é de 12.5kbps e 50kbps. – O barramento ASCB é centralmente controlado e bidireccional. A configuração simples é composta por um controlador de barramento e dois barramentos isolados, cada um suporta até 48 receptores. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 36 5.7 Microprocessadores • Resumo – Funções executadas e funcionamento geral de um microprocessador; – Funcionamento básico de cada um dos seguintes elementos de microprocessador: » unidade de controlo e processamento, » Relógio » Registo » unidade de aritmética lógica. 14-Fev-17 Técnicas digitais sistemas de instrumentação electrónicos 37