SISTEMAS DIGITAIS Registos Prof. Carlos Sêrro Prof. João Paulo Carvalho Adaptados para lógica positiva por Guilherme Arroz Novembro de 2005 Sistemas Digitais 1 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registos Um registo é um circuito sequencial síncrono que permite memorizar um conjunto de bits O registo permite tratar esse conjunto de bits como um todo e não apenas bit a bit Novembro de 2005 Sistemas Digitais 2 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registos Assim sendo, torna-se possível manipular e guardar a informação constituída por um determinado número (fixo) de bits, pelo que se pode passar a falar de uma palavra como uma unidade básica de informação Novembro de 2005 Sistemas Digitais 3 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registos Por exemplo uma palavra de 16 bits com 4 dígitos BCD uma palavra de 16 bits com 2 números de 8 bits em complemento para 2 uma palavra de 8 bits com um carácter ASCII (sendo 7 bits do código e um bit de paridade) Novembro de 2005 Sistemas Digitais 4 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registos Exemplo de registo com 4 bits QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. FFs D Relógio comum a todos os registos: a informação é tratada simultaneamente Novembro de 2005 Sistemas Digitais 5 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registos Registo de 4 bits com Clear QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Clear assíncrono. Quando activado (a 0), o Registo fica no estado 0000 Novembro de 2005 Sistemas Digitais 6 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registos Símbolos IEC Registo formado por FFs D ET Novembro de 2005 Registo formado por latches D controlados Sistemas Digitais 7 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registo com carregamento controlado Neste caso, a activação de LOAD permite o carregamento em paralelo síncrono do registo Notar como é mantido o estado, no caso de não haver carregamento em paralelo Novembro de 2005 Sistemas Digitais QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. 8 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registo com carregamento controlado Símbolo IEC do registo anterior O carregamento em paralelo é síncrono. Quando M2 está inactivo não há carregamento e, por omissão, admite-se que o registo mantém o seu estado Novembro de 2005 Sistemas Digitais 9 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registos de deslocamento Na sua versão mais básica, trata-se de um registo cuja entrada de dados é feita em série, i.e., bit a bit, em vez de ser feita em paralelo Para carregar o registo, os bits têm que ser deslocados dentro do circuito até chegarem à “posição pretendida” Novembro de 2005 Sistemas Digitais 10 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registos de deslocamento Exemplo de um um registo de deslocamento para a direita com 4 andares QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Novembro de 2005 Sistemas Digitais 11 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registos de deslocamento Símbolo IEC do registo de deslocamento anterior Shift Register com 4 andares A cada flanco ascendente há o deslocamento de uma posição para a direita No símbolo, para a direita significa de cima para baixo Novembro de 2005 Sistemas Digitais 12 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registos de deslocamento Os registos de deslocamento têm inúmeras aplicações Basta, por exemplo, lembrarmo-nos que um deslocamento para a direita equivale a dividir por 2 um número sem sinal (com 0 na entrada série, isto se não ejectarmos um 1 para o exterior) um deslocamento para a esquerda equivale a multiplicar por 2 um número sem sinal (com um 0 na entrada série, isto se não ejectarmos um 1 para o exterior) Novembro de 2005 Sistemas Digitais 13 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registo de desloc. universal Um registo de deslocamento universal apresenta 4 modos de funcionamento mantém o conteúdo desloca para a direita desloca para a esquerda carrega em paralelo Novembro de 2005 Sistemas Digitais 14 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registo de desloc. universal Símbolo IEC Selectores do modo de funcionamento M M0: mantém; M1: desloca p/ direita; M2: desloca p/esquerda; M3: carrega em paralelo Reset assíncrono Entradas série nos FFs situados nos 2 extremos Entradas paralelas em todos os FF Novembro de 2005 Sistemas Digitais 15 Prof. Carlos Sêrro Prof. João Paulo Carvalho Registo de desloc. universal Andar genérico QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Novembro de 2005 Sistemas Digitais 16 Prof. Carlos Sêrro Prof. João Paulo Carvalho Interligação de registos A transferência de informação entre registos é uma das operações mais comuns nos microprocessadores Como tal, a interligação entre registos torna-se numa das aplicações mais importantes a nível da Arquitectura de Computadores Novembro de 2005 Sistemas Digitais 17 Prof. Carlos Sêrro Prof. João Paulo Carvalho Interligação de registos Como a transferência de informação envolve vários bits em simultâneo, é importante introduzir a noção de barramento (“Bus” em inglês) Quem nunca ouviu falar do termo BUS quando nos referimos a um computador? Novembro de 2005 Sistemas Digitais 18 Prof. Carlos Sêrro Prof. João Paulo Carvalho Interligação de registos Um barramento não é mais que um conjunto de linhas que transportam sinais do mesmo tipo, e que devem ser tratadas de forma semelhante Por exemplo, o conjunto das linhas de saída de um registo é um barramento E o conjunto das entradas de carregamento em paralelo de um registo é outro barramento Novembro de 2005 Sistemas Digitais 19 Prof. Carlos Sêrro Prof. João Paulo Carvalho Interligação com muxs Objectivo: conseguir trocar informação entre vários registos simultaneamente Em cada impulso de relógio, cada registo pode receber informação de qualquer outro registo Novembro de 2005 Sistemas Digitais 20 Prof. Carlos Sêrro Prof. João Paulo Carvalho Interligação com muxs Exemplo: suponhamos que pretendemos interligar 4 registos de 5 bits cada um Vamos ver que é uma solução muito dispendiosa Ver nos 3 acetatos a seguir Novembro de 2005 Sistemas Digitais 21 Prof. Carlos Sêrro Prof. João Paulo Carvalho Interligação com muxs QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Novembro de 2005 Sistemas Digitais 22 Prof. Carlos Sêrro Prof. João Paulo Carvalho Interligação com muxs Vamos ver o que precisamos associar a um dado registo de entre os 5 disponíveis, digamos o registo i (registo destino) Ao Regi vamos juntar um multiplexer por cada uma das entradas Cada mux tem 2 entradas de selecção e 4 entradas de dados Novembro de 2005 Sistemas Digitais QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. 23 Prof. Carlos Sêrro Prof. João Paulo Carvalho Interligação com muxs Cada entrada de dados recebe a saída de peso correspondente de um dos 4 registos O que permite transferir de qualquer registo para qualquer registo, incluindo do Regi para o Regi QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. As entradas de selecção dos Muxs escolhem o registo fonte Novembro de 2005 Sistemas Digitais 24 Prof. Carlos Sêrro Prof. João Paulo Carvalho Buffers tri-state Felizmente, há uma alternativa à solução anterior, que utiliza buffers 3-state QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Símbolo de uma saída Tri-state Novembro de 2005 A saída do buffer vem em alta impedância quando o Enable está inactivo. Caso contrário funciona como um buffer normal, que copia o nível de tensão da entrada para a saída Sistemas Digitais 25 Prof. Carlos Sêrro Prof. João Paulo Carvalho Buffers tri-state Símbolo IEC de um buffer 3-state quádruplo Este símbolo significa uma capacidade acrescida de “drive” (maior “fanout”) das saídas Novembro de 2005 Sistemas Digitais 26 Prof. Carlos Sêrro Prof. João Paulo Carvalho Buffers tri-state Com 2 buffers 3-state podemos fazer multiplexagem temporal IN0 para OUT se SEL.IN1 inactivo No caso contrário, IN1 vem ligado a OUT Novembro de 2005 Sistemas Digitais 27 Prof. Carlos Sêrro Prof. João Paulo Carvalho Buffers tri-state Com um descodificador de n entradas e um conjunto de buffers tri-state é possível implementar um mux de 2n entradas de dados Novembro de 2005 Sistemas Digitais 28 Prof. Carlos Sêrro Prof. João Paulo Carvalho Buffers tri-state Podemos ainda utilizar buffers 3-state para formar barramentos bidireccionais Novembro de 2005 Sistemas Digitais 29 Prof. Carlos Sêrro Prof. João Paulo Carvalho Interligação com 3-states Novembro de 2005 Sistemas Digitais 30