Prévia do material em texto
1 Eletrônica Digital Módulo de Circuito Sequencial Prof. João Onofre Pereira Pinto n Nesta seção, desenvolveremos alguns circuitos sequenciais básicos, os quais podem ser usados como blocos de subsistemas para sistemas lógicos sequenciais maiores. n Primeiro introduziremos o “shift register”. Este dispositivo é então usado para construir diversos circuitos aritméticos e circuitos contadores. Milton Text Box ANA Beatriz 2 Aplicações 1. Shift Registers 2. Aplicações de Shift Register 1. Circuitos Aritiméticos 1. Somador Serial 2. Acumulador Serial 2. Circuitos Contadores 1. Contador em Anel (Ring) 2. Contador em Anel Torcido (Twisted Ring) 3. Geradores de Sinais Shift Registers 3 n Definição n Um shift register é um módulo lógico sequencial, construido de flip-flops, que manipula as posições de bits de dados binários através do defasamento de bits binários para a esquerda ou para a direita. Shift Register Genérico de n Bits n Um shift register de n bits normalmente é construido através da conexão de flip-flops, um flip-flop para cada bit dos dados. n Os flip-flops são conectados de tal maneira que os bits dos dados podem ser defasados ou deslocados (shifted), para a direita ou equerda, para o flip-flop adjacente com um comando apropriado. 4 Símbolo do Circuito Shift Register de n bits Saída ParalelaEntrada Paralela Saída SerialEntrada Serial Clear Shift Preset Controle 1 1 nn Entrada / Saída n Entrada Paralela – n Uma porta de entrada consistindo de n linhas de dados, uma linha por célula de dados. n Usando esta porta, n-bits podem ser transferidos para dentro simultaneamente. n Saída Paralela – n Uma porta de saída consistindo de n linhas de dados, uma linha por célula de dados. n Usando esta porta, n-bits podem ser transferidos para fora simultaneamente. 5 Entradas de Controle n Clear – n Um comando de controle que leva todas as células de dados para o valor lógico 0. n Preset – n Um comando de controle que carrega em cada célula de dado o valor binário 1 presente na linha de entrada paralela para aquela célula. n Shift – n Um comando de controle resultando no deslocamento (shifting) dos bits de dados de uma célula para a direita (ou para a esquerda). n Entrada Serial – n Uma porta de entrada consistindo de uma linha de dados que alimenta a primeira célula de dados. n Uma palavra de n-bits pode ser transferida para dentro por um comando de deslocamento de n. n Saida Serial – n Uma porta de saída consistindo de uma linha de dados que é conectado a última célula de dados. n Uma paralavra de n bits pode ser transferida para fora através de comando de deslocamento de 2n. 6 Estrutura Básica n A estrutura de um shift register básico consiste de n células indexadas da esquerda para a direita, n-1, n-2, …, 1, 0. n Cada célula consiste de um flip-flop SR. n Os flip-flops são conectados em cascata de modo que cada valor armazenado na célula i é transferido para a célula i-1 quando ocorrer um sinal de deslocamento (shift). saída serialS Q Q C R S Q Q C R S Q Q C R shift Entrada serial S R 0 1 1 0 Q Q’ 0 1 1 0 7 n Lembre-se que a equação característica para o flip- flop SR é Q* = S + R’Q. n Para a célula n-1, S = x e R = x’. n Então, Q* = x + x Q = x. n Isto significa que o flip-flop n-1 comporta-se como um flip-flop D com D = x. n Para a célula i, n n-2 ≥ i ≥ 0, S = yi+1 e R = yi+1’ n Então, Q* = yi+1 + yi+1 è yi = yi+1. n Isto significa que o flip-flop i comporta-se como um flip-flop D com D = yi+1. n Portanto, em cada clock, o valor armazenado na célula de entrada é transferido para a célula i-1. Como há n células, são necessários exatamente n ciclos de clock para mover um dígito da porta serial de entrada para a porta serial de saída. 8 Característica Clear n O flip-flop SR para cada célula é configurado com uma entrada clear (CL). Quando ativa alta, esta entrada assincronamente leva o estado do flip-flop para zero. n A entrada clear do shift register é conectada a cada uma das entradas clear das n células. Então, um comando clear leva o valor de todas as células do shift register para zero. Característica Clear S Q Q C R S Q Q C R S Q Q C R shift Entrada serial clear CL CL CL 9 Entrada Serial – Saída Serial n No modo de operação entrada serial – saída serial, os bits dos dados de entrada são apresentados sequencialmente na porta de entrada serial. n Em cada ciclo de clock, cada valor da célula é deslocado uma célula para a direita e o próximo bit dos dados de entrada é transferido para a célula n-1. n Após n ciclos de clock, uma palavra de n bits é transferida para o the shift register. Após mais n ciclos de clock, a palavra de n bits é transferida para fora via porta de saída serial. n Seja x = ( 0 0 … 0 0 1). Suponha que um comando clear tenha sido dado, e então x é apresentado na porta de entrada serial. Clock 0 1 2 3 ……… n-1 n Yn-1 0 1 0 0 ……… 0 0 Y0 0 0 0 0 ……… 0 1 Y1 0 0 0 0 ……… 1 0 Yn-3 0 0 0 1 ……… 0 0 Yn-2 0 0 1 0 ……… 0 0 10 Característica – Saída Paralela n A saída (estado) de cada célula está usualmente disponível na porta de saída paralela. Isto permite o shift register funcionar como um conversor série-to- paralelo de dados. n Neste modo, n Uma comando clear inicialmente leva todas as células a zero. n Na sequência, n comandos de deslocamento (shift) são usados para ler uma palavra de n bits serialmente. n Esta palavra de n bits pode então ser lida na forma paralela na saída paralela. S Q Q C R S Q Q C R S Q Q C R shift Entrada Serial clear CL CL CL Yn-1 Yn-2 Y0Saída Paralela 11 Característica – Entrada Paralela n O flip-flop SR para cada célula é configurado com um valor de entrada pre-definido (preset - PS). Quando ativado alto, esta entrada assíncronamente leva (sets) o estado do flip-flop para um. n Um shift register normalmente tem uma porta de entrada paralela. n Esta porta consiste de n linhas de entrada, uma linha para cada célula do shift register. n Estas linhas recebem os nomes xn-1, xn-2, …, x1, x0, onde o subscrito da linha corresponde ao nome associado à célula. n O shift register também tem uma entrada “preset”. n A entrada preset para cada célula i é levada a saída de uma porta AND. As entradas para esta porta AND são o preset do shift register e a linha xi da entrada paralela. n Esta configuração de circuito permite uma palavra digital de n-bits ser transferida para o shift register na forma paralela. 12 S Q Q C R S Q Q C R S Q Q C R shift Entrada Serial clear CL CL CL Yn-1 Yn-2 Y0 Saída Paralela PS PS PS Preset da Entrada Paralela xn-1 xn-2 x0 n A entrada clear é usada para “limpar” todas as células do shift register (faze-las igual a zero). Note que este passo é essencial para a operação apropriada do dispositivo. n Na sequência, uma palavra de n bits ´s apresentada na porta de entrada paralela. n Então o comando preset é dado. n Em cada célula onde xi = 1, um comando preset da célula, leva aquela célula para um. n Em cada célula onde xi = 0, nenhum comando preset para a célula é dado e o conteúdo da célula permanece inalterado. 13 Modos de Operação 1. Entrada Serial (Serial In) – Saída Serial (Serial Out) n Atraso no sinal de n ciclos de clock. 2. Entrada Serial (Serial In) – Saída Paralela (Parallel Out) n Conversor de dados de serial para paralelo. 3. Entrada Paralela (Parallel In) – Saída Serial (Serial Out) n Conversor de dados paralelo para serial. 4. Entrada Paralela (Parallel In) – Saída Paralela (Parallel Out) n Armazenagem temporária de palavras de n bits. Somador Serial 14 n Definição n Um somador serial de n bits é um circuito sequencial projetado para somar dois números de n bits. O circuito usa um somador completo (full-adder) e os digitos dos números sãosomados serialmente. n Quando comparado com o somador carregador de ruídos (“ripple carry”), o somador serial usa menos hardware mas requer mais tempo para efetuar uma adição. Diagrama do Circuito 15 Sequência de Operação - A n CLEAR – leva todas as células do shift register nos resgistradores X, Y, e Z para zero; leva o estado do flip-flop D para zero. n Aplica entradas – Números X e Y são aplicados para a porta de entrada paralela dos registradores X e Y, respectivamente. O bit mais significativo (MSB) está a esquerda, e o bit menos significante (LSB) está a direita. Sequência de Operação - B n PRESET – carrega todos os bits com valor 1 em x e y para os registradores X e Y, respectivamente. n Atividades do Somador Completo n xi = x0 = LSB de X n yi = y0 = LSB de Y n ci-1 = c-1 = 0 = Estado Inicial do Flip-Flop n si = s0 = bit de soma de x0 + y0 + c-1 n ci = c0 = bit “vai um” (carry) de x0 + y0 + c-1 16 Sequência de Operação - C n SHIFT – 1 n X = ( 0 xn-1 xn-2 … x2 x1 ) n Y = ( 0 yn-1 yn-2 … y2 y1 ) n Z = ( s0 0 0 … 0 0 ) n Q = c0 n Atividades de Somador Completo n xi = x1, yi = y1, ci-1 = c0 n si = s1 = bit soma de x1 + y1 + c0 n ci = c1 = bit carry de x1 + y1 + c0 Sequência de Operação - D n SHIFT – 2 n X = ( 0 0 xn-1 … x3 x2 ) n Y = ( 0 0 yn-1 … y3 y2 ) n Z = ( s1 s0 0 … 0 0 ) n Q = c1 n Atividades de Somador Completo n xi = x2, yi = y2, ci-1 = c1 n si = s2 = bit soma de x2 + y2 + c1 n ci = c2 = bit carry de x2 + y2 + c1 17 Sequência de Operação - E n SHIFT – 3 n X = ( 0 0 0 … x4 x3 ) n Y = ( 0 0 0 … y4 y3 ) n Z = ( s2 s1 s0 … 0 0 ) n Q = c2 n Atividades de Somador Completo n xi = x3, yi = y3, ci-1 = c2 n si = s3 = bit soma de x3 + y3+ c2 n ci = c3 = bit carry de x3 + y3 + c2 Sequência de Operação - F 11. SHIFT – n n X = ( 0 0 0 … 0 0 ) n Y = ( 0 0 0 … 0 0 ) n Z = ( sn-3 sn-2 sn-1 … s1 s0) n Q = cn-1 12. Conclusão n Registrador Z contém a soma X + Y se cn-1 = 0; n cn-1 = 1 indica um overflow (error).