novembro de 2005 sistemas digitais 1 registos prof. carlos sêrro prof. joão paulo carvalho...
TRANSCRIPT
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 11
RegistosRegistos
Prof. Carlos SêrroProf. João Paulo Carvalho
Adaptados para lógica positiva por Guilherme Arroz
SISTEMAS DIGITAISSISTEMAS DIGITAIS
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 22
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
RegistosRegistos
Um registo é um circuito sequencial Um registo é um circuito sequencial síncrono que permite memorizar um síncrono que permite memorizar um conjunto de bitsconjunto de bits
O registo permite tratar esse conjunto O registo permite tratar esse conjunto de bits como um todo e não apenas bit de bits como um todo e não apenas bit a bita bit
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 33
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
RegistosRegistos
Assim sendo, torna-se possível Assim sendo, torna-se possível manipular e guardar a informação manipular e guardar a informação constituída por um determinado constituída por um determinado número (fixo) de bits, pelo que se número (fixo) de bits, pelo que se pode passar a falar de uma pode passar a falar de uma palavrapalavra como uma unidade básica de como uma unidade básica de informaçãoinformação
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 44
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
RegistosRegistos
Por exemploPor exemplo uma palavra de 16 bits com 4 dígitos BCDuma palavra de 16 bits com 4 dígitos BCD uma palavra de 16 bits com 2 números de uma palavra de 16 bits com 2 números de
8 bits em complemento para 28 bits em complemento para 2 uma palavra de 8 bits com um carácter uma palavra de 8 bits com um carácter
ASCII (sendo 7 bits do código e um bit de ASCII (sendo 7 bits do código e um bit de paridade)paridade)
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 55
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
RegistosRegistos
Exemplo de registo com 4 bitsExemplo de registo com 4 bits
FFs D
Relógio comum a todos os registos: a informação é tratada simultaneamente
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 66
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
RegistosRegistos
Registo de 4 bits com ClearRegisto de 4 bits com Clear
Clear assíncrono.
Quando activado (a 0), o Registo fica no estado 0000
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 77
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
RegistosRegistos
Símbolos IECSímbolos IEC
Registo formado por FFs D ET
Registo formado por latches D controlados
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 88
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
oRegisto com carregamento Registo com carregamento controladocontrolado Neste caso, a activação Neste caso, a activação
de LOAD permite o de LOAD permite o carregamento em carregamento em paralelo síncrono do paralelo síncrono do registoregisto
Notar como é mantido o Notar como é mantido o estado, no caso de não estado, no caso de não haver carregamento em haver carregamento em paraleloparalelo
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 99
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
oRegisto com carregamento Registo com carregamento controladocontrolado
Símbolo IEC do registo anteriorSí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 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 1010
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Registos de deslocamentoRegistos de deslocamento
Na sua versão mais básica, trata-se de Na sua versão mais básica, trata-se de um registo cuja entrada de dados é um registo cuja entrada de dados é feita em série, i.e., bit a bit, em vez de feita em série, i.e., bit a bit, em vez de ser feita em paraleloser feita em paralelo
Para carregar o registo, os bits têm Para carregar o registo, os bits têm que ser deslocados dentro do circuito que ser deslocados dentro do circuito até chegarem à “posição pretendida” até chegarem à “posição pretendida”
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 1111
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Registos de deslocamentoRegistos de deslocamento
Exemplo de um um registo de Exemplo de um um registo de deslocamento para a direita com 4 deslocamento para a direita com 4 andaresandares
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 1212
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Registos de deslocamentoRegistos de deslocamento
Símbolo IEC do registo de Símbolo IEC do registo de deslocamento anteriordeslocamento 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 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 1313
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Registos de deslocamentoRegistos de deslocamento
Os registos de deslocamento têm Os registos de deslocamento têm inúmeras aplicações inúmeras aplicações
Basta, por exemplo, lembrarmo-nos queBasta, por exemplo, lembrarmo-nos que um deslocamento para a direita equivale a um deslocamento para a direita equivale a
dividir por 2 um número sem sinal (com 0 dividir por 2 um número sem sinal (com 0 na entrada série, isto se não ejectarmos um na entrada série, isto se não ejectarmos um 1 para o exterior)1 para o exterior)
um deslocamento para a esquerda equivale um deslocamento para a esquerda equivale a multiplicar por 2 um número sem sinal a multiplicar por 2 um número sem sinal (com um 0 na entrada série, isto se não (com um 0 na entrada série, isto se não ejectarmos um 1 para o exterior)ejectarmos um 1 para o exterior)
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 1414
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Registo de desloc. universalRegisto de desloc. universal
Um registo de deslocamento universal Um registo de deslocamento universal apresenta 4 modos de funcionamento apresenta 4 modos de funcionamento mantém o conteúdomantém o conteúdo desloca para a direitadesloca para a direita desloca para a esquerda desloca para a esquerda carrega em paralelocarrega em paralelo
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 1515
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Registo de desloc. universalRegisto de desloc. universal
Símbolo IECSímbolo IEC
Entradas série nos FFs situados nos 2 extremos
Entradas paralelas em todos os FF
Selectores do modo de funcionamento M
M0: mantém; M1: desloca p/ direita; M2: desloca p/esquerda; M3: carrega em paralelo
Reset assíncrono
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 1616
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Registo de desloc. universalRegisto de desloc. universal
Andar genéricoAndar genérico
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 1717
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Interligação de registosInterligação de registos
A transferência de informação entre A transferência de informação entre registos é uma das operações mais registos é uma das operações mais comuns nos microprocessadorescomuns nos microprocessadores
Como tal, a interligação entre registos Como tal, a interligação entre registos torna-se numa das aplicações mais torna-se numa das aplicações mais importantes a nível da Arquitectura de importantes a nível da Arquitectura de ComputadoresComputadores
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 1818
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Interligação de registosInterligação de registos
Como a transferência de informação Como a transferência de informação envolve vários bits em simultâneo, é envolve vários bits em simultâneo, é importante introduzir a noção de importante introduzir a noção de barramentobarramento (“ (“BusBus” em inglês)” em inglês)
Quem nunca ouviu falar do termo BUS Quem nunca ouviu falar do termo BUS quando nos referimos a um quando nos referimos a um computador?computador?
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 1919
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Interligação de registosInterligação de registos
Um barramento não é mais que um Um barramento não é mais que um conjunto de linhas que transportam conjunto de linhas que transportam sinais do mesmo tipo, e que devem ser sinais do mesmo tipo, e que devem ser tratadas de forma semelhantetratadas de forma semelhante
Por exemplo, o conjunto das linhas de Por exemplo, o conjunto das linhas de saída de um registo é um barramentosaída de um registo é um barramento
E o conjunto das entradas de E o conjunto das entradas de carregamento em paralelo de um carregamento em paralelo de um registo é outro barramentoregisto é outro barramento
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 2020
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Interligação com muxsInterligação com muxs
Objectivo: conseguir trocar informação Objectivo: conseguir trocar informação entre vários registos simultaneamenteentre vários registos simultaneamente
Em cada impulso de relógio, cada Em cada impulso de relógio, cada registo pode receber informação de registo pode receber informação de qualquer outro registoqualquer outro registo
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 2121
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Interligação com muxsInterligação com muxs
Exemplo: suponhamos que Exemplo: suponhamos que pretendemos interligar 4 registos de 5 pretendemos interligar 4 registos de 5 bits cada umbits cada um
Vamos ver que é uma solução muito Vamos ver que é uma solução muito dispendiosadispendiosa
Ver nos 3 acetatos a seguirVer nos 3 acetatos a seguir
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 2222
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Interligação com muxsInterligação com muxs
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 2323
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Interligação com muxsInterligação com muxs
Vamos ver o que Vamos ver o que precisamos associar a precisamos associar a um dado registo de um dado registo de entre os 5 disponíveis, entre os 5 disponíveis, digamos o registo i digamos o registo i ((registo destinoregisto destino))
Ao Regi vamos juntar Ao Regi vamos juntar um multiplexer por um multiplexer por cada uma das cada uma das entradasentradas
Cada mux tem 2 Cada mux tem 2 entradas de selecção entradas de selecção e 4 entradas de dados e 4 entradas de dados
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 2424
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Interligação com muxsInterligação com muxs
Cada entrada de dados Cada entrada de dados recebe a saída de peso recebe a saída de peso correspondente de um correspondente de um dos 4 registosdos 4 registos O que permite transferir O que permite transferir
de qualquer registo para de qualquer registo para qualquer registo, qualquer registo, incluindo do Regi para o incluindo do Regi para o RegiRegi
As entradas de As entradas de selecção dos Muxs selecção dos Muxs escolhem o escolhem o registo registo fontefonte
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 2525
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
Buffers tri-stateBuffers tri-state
Felizmente, há uma alternativa à Felizmente, há uma alternativa à solução anterior, que utiliza buffers 3-solução anterior, que utiliza buffers 3-statestate
A saída do buffer vem em alta impedânciaquando o Enable está inactivo. Caso contráriofunciona como um buffer normal, que copia o nível de tensão da entrada para a saída
Símbolo de uma saída Tri-state
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 2626
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Buffers tri-stateBuffers tri-state
Símbolo IEC de um buffer 3-state Símbolo IEC de um buffer 3-state quádruploquádruplo
Este símbolo significauma capacidadeacrescida de “drive”(maior “fanout”)das saídas
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 2727
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Buffers tri-stateBuffers tri-state
Com 2 buffers 3-state podemos fazer Com 2 buffers 3-state podemos fazer multiplexagemmultiplexagem temporal temporal
IN0 para OUT se SEL.IN1 inactivo
No caso contrário, IN1 vem ligado a OUT
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 2828
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Buffers tri-stateBuffers tri-state
Com um descodificador de n entradas Com um descodificador de n entradas e um conjunto de buffers tri-state é e um conjunto de buffers tri-state é possível implementar um mux de 2n possível implementar um mux de 2n entradas de dadosentradas de dados
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 2929
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Buffers tri-stateBuffers tri-state
Podemos ainda utilizar buffers 3-state Podemos ainda utilizar buffers 3-state para formar para formar barramentos barramentos bidireccionaisbidireccionais
Novembro de 2005Novembro de 2005 Sistemas DigitaisSistemas Digitais 3030
Pro
f. C
arl
os
Sêrr
oPro
f. C
arl
os
Sêrr
oPro
f. João P
aulo
Carv
alh
oPro
f. João P
aulo
Carv
alh
o
Interligação com 3-statesInterligação com 3-states