Sei sulla pagina 1di 111

AOC - UD I - ISL (Introdução aos Sistemas Lógicos)

Referências:

(OECTB4ed/5ed): Organização Estruturada de Computadores, A.S. Tanenbaum (4ª e 5ª. Ed): cap 3, apêndices A e B

Introdução à Organização de Computadores, M. Monteiro: cap 3, 4 e apêndice A.

Arquitetura e Organização Computadores, W. Stallings (5ª. Ed.): cap 8, apêndices A e 8A.

AOC – UD I - Parte I:

Sistemas de numeração e aritmética binária

Referências:

Mário Monteiro (IOC) : cap 3, 4 e apêndice A. William Stallings (AOC) : cap 8, apêndices A e 8A. A.S. Tanenbaum (OEC) : cap 3, apêndices A e B

Bits, Bytes e a Memória

• Um Byte é composto de 8 Bits.

• • •

Um Bit é a menor unidade de informação e corresponde a 0 ou 1.

Dentro de cada célula (posição) de memória, podemos colocar geralmente um byte.

Cada posição de memória é endereçada por um ou mais bytes.

Memória

É o componente de um computador que armazena dados e instruções du- rante o processamento.

Ela é composta de células (posições) que são locali- zadas através de um número (endereço) único.

0 instrução ou dado 1 2 16 2 -1 endereços
0
instrução ou dado
1
2
16
2
-1
endereços
célula = 8 bits
célula =
8 bits

Sistemas de numeração

Um SISTEMA NUMÉRICO é o conjunto de símbolos, palavras e regras que permitem escrever e representar todos os números.

NUMERAL

é

um

símbolo

representar um número.

designado

para

NÚMERO é um conceito abstrato que representa uma certa quantidade, ou seja, é a idéia que um grupo de símbolos representa.

Bases numéricas:

É a quantidade de símbolos (numerais) usados para representar os números em um sistema numérico.

Exemplos:

Base 2 (binária) : 2 símbolos (0 e 1) Base 8 (octal) : 8 símbolos (0 a 7) Base 10 (decimal) : 10 símbolos (0 a 9) Base 16 (hexadecimal) : 16 símbolos (0 a 9, A a F)

Tabela de conversão

     
     

DECIMAL

OCTAL

HEXADECIMAL

BINÁRIO

0

0

0

0000

1

1

1

0001

2

2

2

0010

3

3

3

0011

4

4

4

0100

5

5

5

0101

6

6

6

0110

7

7

7

0111

8

10

8

1000

9

11

9

1001

10

12

A

1010

11

13

B

1011

12

14

C

1100

13

15

D

1101

14

16

E

1110

15

17

F

1111

Notação Posicional

Os algarismos componentes de um número assumem valores diferentes, dependendo de sua posição relativa no número (N) :

N b = (d n-1 d n-2 dn -3

d

1 d 0 ) b

n

indica o número de dígitos

d

indica cada algarismo do número

n-1, n-2, 1, 0 são índices que indicam a posição de cada algarismo

b indica a base do sistema de numeração

Posições

As posições são numeradas da direita para a esquerda iniciando-se em zero. Exemplo:

3

2

1 0

N 10 = 1 9 6 8 10

posições

( número na base 10)

Valor da posição

• Corresponde ao valor associado ao símbolo (alga-rismo ou dígito) da posição considerada. O valor do i-ésimo digito, d, é calculado por: d X base i , ou seja, este valor é calculado multiplicando-se o valor do símbolo pelo valor da base elevada à posição. • Exemplo:

Para N = 1 9 6 8 10 , o algarismo 9 está na posição 2, deste modo, o valor desta posição é :

9 X 10 2 = 9 X 100 = 900

Valor numérico

Corresponde ao somatório (soma) dos valores

de

determinado número:

todas

posições

as

N = d n-1 x b n-1 + d n-2 xb n-2 +

que

compõem

+ d 0 xb 0

um

Exemplo: N = 1 9 6 8 10

1968 10 = 1X10 3 + 9X10 2 + 6X10 1 + 8X10 0

= 1X1000 + 9X100 + 6X10 + 8x1 = 1000 + 900 + 60 + 8

Conversão para a base decimal

A conversão de qualquer base para a base decimal é feita calculando-se o valor numérico na base decimal. Exemplos:

a) Binário Decimal

3 2 1 0

(posições)

1 0 1 0 2 =

1 X 2 3 + 0 X 2 2 + 1 X 2 1 + 0 X 2 0

= 1 X 8 + 0 X 4 + 1 X 2 + 0 X 1

= 8 + 0 + 2 + 0 = 10 10

Conversão octal decimal

b) Octal Decimal

2 1 0 (posições)

3 0 2 8 =

3 X 8 2 + 0 X 8 1 + 2 X 8 0

= 3 X 64 + 0 X 8 + 2 X 1

= 192 + 0 + 2

= 194 10

Conversão hexadecimal decimal

c) Hexadecimal Decimal

1

3

0 (posições)

5 16 =

3 X 16 1 + 5 X 16 0

= 3 X 16 + 5 X 1

= 48 + 5

= 53 10

Base decimal Outra base

A conversão da base decimal para qualquer outra base utiliza o método das divisões sucessivas. Para converter um número da base decimal para uma base b basta dividí-lo sucessivamente por b até chegar ao quociente zero. O número representado na base b será formado pelos restos das divisões sucessivas, lidos de cima para baixo.

Decimal Binário (exemplo)

19 | 2

9

1

| 2

1 4 | 2

0

2 |

2

0

1

|

2

1

Os restos são 1, 0, 0, 1 e 1, portanto:

0

19 10

= 10011 2

Decimal Octal (exemplo)

157 | 8

5 19 | 8

3

2

| 8

2

0

Os restos são 2, 3 e 5, portanto:

157 10 = 235 8

Decimal Hexadecimal (exemplo)

157 | 16

13 9 | 16

9

0

Os restos são 13 (D em hexadecimal ) e 9, portanto:

157 10 = 9D 16

Conversão entre Bases Potência de 2

Entre bases 2 e 8: agrupamento de 3 em 3 bits Obs: 8 = 2 3 Entre bases 2 e 16: agrupamento de 4 em 4 bits Obs: 16 = 2 4

Entre bases

intermediária Obs: o a agrupamento de bits é sempre da direita para a esquerda.

base 2 como

8

16:

é

usada a

e

Potências de 2

2 0 =

1

2 9

=

512

2 18 = 262144 (256Ki)

2 1 =

2

2 10 =

1024

(1Ki) 2 19 = 524288 (512Ki)

2 2 =

4

2 11 =

2048

(2ki) 2 20 = 1024K

= 1Mi

2 3 =

8

2 12 =

4096

(4Ki) 2 30 = 1024M = 1Gi

2 4 =

16

2 13 =

8192

(8Ki) 2 40 = 1024G = 1Ti

2 5 =

32

2 14 = 16384 (16ki) 2 50 = 1024T = 1Pi

2 6 =

64

2 15 =

32768 (32Ki) 2 60 = 1024P = 1Ei

2 7 = 128

2 16 =

65536 (64Ki) 2 70 = 1024E = 1Zi

Potências de 2

2 0 =

1

2 9

=

512

2 18 = 262144 (256K)

2 1 =

2

2 10 =

1024

(1K) 2 19 = 524288 (512K)

2 2 =

4

2 11 =

2048

(2k) 2 20 = 1024K

= 1M

2 3 =

8

2 12 =

4096

(4K)

2 30 = 1024M = 1G

2 4 =

16

2 13 =

8192

(8K)

2 40 = 1024G = 1T

2 5 =

32

2 14 =

16384 (16k) 2 50 = 1024T = 1P

2 6 =

64

2 15 =

32768 (32K) 2 60 = 1024P = 1E

2 7 = 128

2 16 =

65536 (64K) 2 70 = 1024E = 1Z

2 8 = 256

2 17 = 131072 (128K) 2 80 = 1024Z = 1Y

Quantificação de Memória

Unidade

Sigla

 

Quantidade

     

(bytes )

1 Kilobyte

1 KB

= 1.024

1.024

1 Megabyte

1 MB

= 1.024 2

1.048.576

1 Gigabyte

1 GB

= 1.024 3

1.073.741.824

1 Terabyte

1 TB

= 1.024 4

1.099.511.627.776

Conversão Base 2 8 (exemplo)

1000001 2

= X 8

1 000 001 base 2

1

0

1

base 8

X 8 =

101 8

Conversão Base 2 16 (exemplo)

1000001 2

= Y 16

100 0001 base 2

4 1

base 16

Y 16 =

41 16

Aritmética binária (adição)

É semelhante à adiçao (soma) em decimal, levando-se em conta que há apenas dois algarismos disponíveis: 0 e 1.

0

+ 0 = 0

0

+ 1 = 1

1

+ 0 = 1

1

+ 1 = 0, com “vai 1”.

Adição binária (exemplo)

1 1111 (vai “um”)

+

101101

101011

----------

1011000

Conversão entre comprimentos de palavra diferentes

Números positivos são completados com zeros à esquerda (extensão de sinal) :

+18 =

+18 = 00000000 00010010

Números negativos são completados com unsos à esquerda (extensão de sinal) :

-18 =

-18 = 11111111 10010010

00010010

10010010

Aritmética binária (subtração)

É semelhante a subtração em decimal. No caso de “empréstimo” deve-se utilizar o valor da base (2).

Exemplo:

-

2

002

101101

100111

----------

000110

Aritmética binária (mult/div)

• A multiplicação de números binários é seme- lhante à multiplicação em decimal (somas sucessivas).

• A divisão de números binários é semelhante à divisão decimal. Considerando que:

0/1 = 0

e que a divisão por zero acarreta erro

1/1 = 1

e

Multiplicação binária (exemplo)

 

1011

X

101

------

1011

0000

1011

-------------

110111

Divisão binária (exemplo)

100’1’0 |11

- 11

110

-----

0011

11

---

000

Conversão de Números Fracionários

É semelhante aos números inteiros, porém com expoentes negativos:

N = d -1 Xb r -1 + d -2 Xb r -2 +

+ d -m Xb r

-m

onde m é a quantidade de algarismos fracionários. Exemplo:

Converter o número 0,7265625 10 oara a base 2.

Conversão de Números Fracionários

-i

Valor a ser multiplicado Resultado Parte Inteira = d -i Parte Fracionária por B r = 2

1

0,7265625

1,453125

1

0,453125

2

0,453125

0,90625

0

0,90625

3

0,90625

1,8125

1

0,8125

4

0,8125

1,625

1

0,625

5

0,625

1,25

1

0,25

6

0,25

0,50

0

0,50

7

0,50

1,00

1

0,00

Álgebra Booleana

A Álgebra de Chaveamento (“Switching Álgebra”) é um ramo da Álgebra Booleana (George Boole 1815-1864) que é utilizada para descrever, projetar e analisar os sistemas digitais (lógicos) de um computador. As variáveis na Álgebra Booleana, Xi, assumem apenas dois valores: 0 e 1. Xi {0,1}

Operações lógicas básicas

OU (OR) X = A + B (A|B bit a bit C/C++)

AND (E)

X= A . B = AB (A&B bit a bit C/C++)

NÃO (NOT) X = A‘ = ~A (~A bit a bit C/C++)

Portas Lógicas

Uma porta lógica é um elemento de hardware que recebe um ou mais sinais de entrada e produz um sinal de saída.

Tabela Verdade: forma tabular de representar os possíveis valores de saída gerados a partir das possíveis combinações de valores de entrada.

Portas Lógicas Básicas

AND

OR

NOT (inversor)

NAND (AND seguido de NOT)

NOR (OR seguido de NOT)

XOR (eXclusive OR)

Circuitos Digitais

Em um computador digital, as informações são representadas pelo bits 0 (p. ex. : 0V a 1V) e 1 (p. ex.:

2V a 4V).

Circuitos digitais: circuitos eletrônicos que armazenam os sinais binários e realizam certos tipos de operações com eles.

Os circuitos digitais são compostos de pequenos elementos (portas lógicas) capazes de manipular apenas grandezas binárias.

Materiais e Componentes Eletrônicos

Condutores:

ferro(Fe), cobre(Cu), prata(Ag), ouro(Au), etc.

Isolantes:

vidros, borrachas, plásticos, etc.

Semicondutores:

silício (Si), germânio(Ge), etc.

Transistores

Substituiu as válvulas

Menor

Mais barato

Menos dissipação de calor

Dispositivo de estado sólido

Feito de Silício (Terra e areia)

Inventado 1947 pelo Sino Labs

William Shockley et al.

Transistor – 1

Transistor – 1

Transistor - 2

Transistor - 2

Transistor - 3

Transistor - 3

Transistor - 4

Transistor - 4

célula de memória: Flash NAND

célula de memória: Flash NAND

Portas Lógicas (OECTB5ed)

Portas Lógicas (OECTB5ed) (a) Inversor com transistor (b) Porta NAND (c) Porta NOR.

(a) Inversor com transistor (b) Porta NAND (c) Porta NOR.

Portas (operadores) lógicas e as respectivas tabela(s) verdade (OECTB5ed)

Portas (operadores) lógicas e as respectivas tabela(s) verdade (OECTB5ed)

Circuitos integrados

Circuitos integrados

Pastilha (“chip”) SSI – 4 x NAND

Pastilha (“chip”) SSI – 4 x NAND

Classificação de pastilhas (chips) quanto à integração

• Integração: quantidade de portas lógicas

• SSI (Small Scale Integration) - 1 a 10 portas

• MSI (Medium Scale Integration) - até 100 portas

• LSI (Large Scale Integration) - até 100.000 portas

• VLSI (Very LSI) - acima de 100.000 portas

Números binários negativos

Representação Sinal-Magnitude

Representação em Complemento-1

Representação em Complemento-2

Representação Sinal-Magnitude

O bit MSB (mais significativo = bit da esquerda) é o bit de sinal

MSB = 0 (número positivo)

MSB = 1 (número negativo)

Exemplos: +18 = 00010010 e -18 = 10010010

Problemas:

- É necessário considerar o sinal e a magnitude nas operações aritméticas.

- Existem duas representações para o zero:

(+0 e -0)

Representação em Complemento-1

A Representação em Complemento a 1

de um número

binário é obtida efetuando-se a negação booleana de todos os bits do número. É usado o operador lógico NÃO (NOT = ~ bit a bit C/C++). Para negar o valor de um número deve-se substituir cada bit 1 pelo bit 0 cada bit 0 pelo bit 1.

(Complemento

Booleano)

Exemplo:

3 10 = 00000011 2

-3 10 = ~00000011 2 = 11111100 2 (NÃO bit a bit)

Representação em Complemento-2

A Representação em Complemento a 2 de

um número binário de m bits é obtida somando- se 1 ao complemento 1. Caso ocorra um “carry” no bit MSB, este bit é descartado. Deve-se completar previamente com zeros à esquerda até completar os m bits.

Exemplo:

3 10 = 00000011 2 (m= 8 bits)

~00000011 2 = 11111100 2 (complemento-1)

+ 1 -3 10 = 11111101 2 (complemento-2)

Representação em Complemento-2

A Representação em Complemento a 2 de

um número binário de m bits é obtida somando- se 1 ao complemento 1. Caso ocorra um “carry” no bit MSB, este bit é descartado. Deve-se completar previamente com zeros à esquerda até completar os m bits.

Exemplo:

3 10 = 00000011 2 (m= 8 bits)

~00000011 2 = 11111100 2 (complemento-1)

+ 1 -3 10 = 11111101 2 (complemento-2)

Complemento-2 (exemplos)

+3 = 00000011

+2 = 00000010

+1 = 00000001

+0 = 00000000

-1 = 11111111

-2 = 11111110

-3 = 11111101

Vantagens do Complemento-2

Representation única do zero

Operações aritméticas simplificadas

É a representação mais usada. Revisando:

+3 10 = 00000011 2

Complemento Booleano !00000011 2 = 11111100 2

Somar 1

+1 2

-3 10 = 11111101 2

Complemento-2 (exemplo : overflow) Caso especial 1

0 =

Não bit a bit

somar 1

Resultado

Overflow (O bit carry 1 MSB is ignorado), então:

- 0 = 0 ÷

00000000

11111111

+1

1 00000000

Complemento-2 (exemplo : overflow) Caso especial 2

-128 =

not bit a bit

Somar 1

Resultado

Então:

-(-128) = -128

Monitorar MSB (bit de sinal) para o caso do menor número negativo representável com m bits, no caso (-128 10 ) = 10000000, ou seja, (+128 10 ) não pode ser representado com 8 bits em complemento-2.

10000000

01111111

+1

10000000

?

Faixa de valores - Complemento-2

Complemento-2 de 8 bits

+127 = 01111111 = 2 7 -1

-128 = 10000000 = -2 7

Complemento-2 de 16 bits

+32767 = 011111111 11111111 = 2 15 - 1

-32768 = 100000000 00000000 = -2 15

Funções Lógicas

• São expressas pelas expressões lógicas que podem ser representadas por circuitos lógicos e tabelas da verdade (e vice-versa).

• Diversos circuitos podem representar a mesma função lógica (Equivalência de Circuitos).

Expressões Lógicas

• 1, 0 e Xi são expressões lógicas;

• Se Xi é uma expressão lógica, então Xi' e (Xi) são expressões lógicas;

• Se Xi e Xj são expressões lógicas, então Xi + Xj e Xi . Xj são expressões lógicas.

• Prioridade dos operadores: ( ) , `, . , +

• As Operações . (AND) têm prioridade sobre as operações + (OR) (Obs: a prioridade pode ser alterada com o uso de parênteses).

Algumas identidades da álgebra Booleana

Algumas identidades da álgebra Booleana

Princípio da Dualidade

Em uma equação lógica pode-se trocar:

0 por 1; 1 por 0 ; + por . ; . por + ; Xi por Xi' e Xi' por Xi a equação continua válida.

Exemplos:

0 + 0 = 0 1 . 1 = 1 x = a + b x' = a' . b'

Teoremas Básicos (1)

1) Equipotência

X + X = X

Y . Y = Y

2) Existência do Elemento Identidade

X + 0 = X

Y . 1 = Y

3) Existência do Elemento Nulo

X + 1 = 1

Y . 0 = 0

Teoremas Básicos (2)

4) Complemento X + X' = 1

Y . Y'

=

0

5) Comutatividade X1 + X2 = X2 + X1 Y1 . Y2 = Y2 . Y1 6) Associatividade (X1 + X2) + X3 = X1 + (X2 + X3) (Y1 . Y2) . Y3 = Y1 . (Y2 . Y3)

Teoremas Básicos (3)

7) Distributividade X1. (X2 + X3) = X1 . X2 + X1 . X3 Y1 + Y2 . Y3 = (Y1+ Y2) . (Y1 + Y3) 8) Absorção Direta X1 + X1 . X2 = X1 Y1 . (Y1 + Y2) = Y1 9) Absorção com o Complemento X1 + X1' . X2 = X1 + X2 Y1 . (Y1' + Y2) = Y1 . Y2

Teoremas Básicos (4)

10) De Morgan (X1 + X2)' = X1' . X2' (Y1 . Y2)' = Y1' + Y2'

Portas completas : NAND e NOR

Portas completas : NAND e NOR

Equivalência de circuitos (3) (OECTB5ed)

Equivalência de circuitos (3) (OECTB5ed) Símbolos alternativos para algumas portas: (a) NAND , (b) NOR ,

Símbolos alternativos para algumas portas:

(a) NAND, (b) NOR, (c) AND, (d) OR

Tipos de Circuitos Lógicos

Circuitos Combinacionais: conjunto de portas cuja saída em qualquer instante de tempo é função somente das entradas.

Circuitos Seqüenciais: conjunto de portas cuja saída em qualquer instante de tempo é função das entradas e do estado atual (memória). Geralmente contém elementos de armazena-mento (flip-flops).

Circuitos Combinacionais: exemplos

• Funções Lógicas Simples

• Decodificadores

• Arranjos Lógicos Programáveis (PLA)

• Comparadores

• Somadores

• Unidades Lógicas e Aritméticas (ULAS)

Função XOR (OECTB5ed)

Função XOR (OECTB5ed) (a) Tabela-verdade para a função XOR. (b-d) Três circuitos para calcular essa tabela.

(a) Tabela-verdade para a função XOR. (b-d) Três circuitos para calcular essa tabela.

Equivalência de circuitos (OECTB5ed)

Equivalência de circuitos (OECTB5ed) Duas funções equivalentes (a) AB + AC, (b) A(B + C).

Duas funções equivalentes (a) AB + AC, (b) A(B + C).

FUNÇÃO M (MAIORIA) (OECTB5ed)

FUNÇÃO M (MAIORIA) (OECTB5ed) (a) Tabela-verdade para a função majoritária de três variáveis. (b) Um circuito

(a) Tabela-verdade para a função majoritária de três variáveis. (b) Um circuito que implementa a função descrita em (a).

Multiplexador

Seleciona para saída, F, uma das 2 n

) em

função das n linhas de endereço (A, B, C,

linhas de entrada, (D0, D1, D2,

Multiplexador – Tabela verdade

Entradas Saída

A

B

C

F

0

0

0

D0

0

0

1

D1

0

1

0

D2

0

1

1

D3

1

0

0

D4

1

0

1

D5

1

1

0

D6

1

1

1

D7

Multiplexador de oito entradas (OECTB5ed)

Multiplexador de oito entradas (OECTB5ed)

Multiplexador (OECTB5ed)

Multiplexador (OECTB5ed) (a) Multiplexador MSI. (b) O mesmo multiplexador ligado para calcular a função

(a)

Multiplexador MSI.

(b)

O mesmo multiplexador ligado para calcular a função majoritária.

Decodificador

• É um circuito combinacinal de média integração (MSI), que possui n linhas de entrada e 2 n linhas de saída.

• Ativa apenas uma das 2 n saídas (D0, D1, D2, em função das n linhas de entrada (A, B, C,

)

).

Decodificador - Tabela verdade

Entradas

Saídas

A

B

C

D0 D1 D2 D3 D4 D5 D6 D7

0

0

0

1

0

0

0

0

0

0

0

0

0

1

0

1

0

0

0

0

0

0

0

1

0

0

0

1

0

0

0

0

0

0

1

1

0

0

0

1

0

0

0

0

1

0

0

0

0

0

0

1

0

0

0

1

0

1

0

0

0

0

0

1

0

0

1

1

0

0

0

0

0

0

0

1

0

1

1

1

0

0

0

0

0

0

0

1

Decodificador 3 para 8 (OECTB5ed)

Decodificador 3 para 8 (OECTB5ed)

Decoder 3 to 8 (OECTB4ed)

Decoder 3 to 8 (OECTB4ed)

16 Mb DRAM Típico (4M x 4)

16 Mb DRAM Típico (4M x 4) RAS row address select CAS column address select WE

RAS row address select CAS column address select WE write enable OE output enable

Decodificador em memórias

(OECTB4ed)

Decodificador em memórias (OECTB4ed)

Comparador de 4 bits (OECTB5ed)

Comparador de 4 bits (OECTB5ed)

Outros Circuitos Combinacionais

Arranjos Lógicos Programáveis (PLA)

(circuito programável que implementa um conjunto de funções lógicas)

Somadores

Unidades Lógicas e Aritméticas (ULAS)

Arranjos Lógicos Programáveis (OECTB5ed)

Arranjo lógico programável de 12 entradas e 6 saídas. Os quadradinhos representam fusíveis que podem ser queimados para determinar a função a ser calculada. Os fusíveis são arranjados em duas matrizes: a superior para as portas AND e a inferior para as portas OR.

calculada. Os fusíveis são arranjados em duas matrizes: a superior para as portas AND e a

Arranjo Lógico Programável: PLA(OECTB4ed)

Arranjo Lógico Programável: PLA(OECTB4ed)

Somador Parcial (“half-adder”) (OECTB4ed)

Somador Parcial (“half-adder”) (OECTB4ed)

Somadores (1) (OECTB5ed)

Somadores (1) (OECTB5ed) (a) Tabela-verdade para adição de 1 bit. (b) Circuito para um meio-somador.

(a)

Tabela-verdade para adição de 1 bit.

(b)

Circuito para um meio-somador.

Somador Completo (OECTB4ed)

Somador Completo (OECTB4ed)

Somadores (2) (OECTB5ed)

Somadores (2) (OECTB5ed) (a) Tabela-verdade para um somador completo. (b) Circuito para um somador completo.

(a)

Tabela-verdade para um somador completo.

(b)

Circuito para um somador completo.

ULA de 1 bit

F1

F0

Saída

0

0

A AND B

0

1

A OR B

1

0

B'

1

1

A Plus B

Unidade de Lógica e Aritmética

Unidade de Lógica e Aritmética

ALU de 1 bit (OECTB5ed)

ALU de 1 bit (OECTB5ed)

ULA Completa (OECTB4ed)

ULA Completa (OECTB4ed)

Unidades Lógica e Aritmética (OECTB5ed)

Unidades Lógica e Aritmética (OECTB5ed) Oito segmentos de ALU de 1 bit conectados para formar uma

Oito segmentos de ALU de 1 bit conectados para formar uma ALU de 8 bits.

Os sinais de habilitação e de inversão não são mostrados por simplicidade.

Circuitos Seqüenciais (Temporização)

• A coordenação dos eventos nos circuitos sequenciais precisam de sincronização.

• As transições de estado são sincronizados pelo sinal do relógio (clock)

• Todos os eventos são determinados pelo sinal do relógio (clock)

Relógios (OECTB5ed)

Relógios (OECTB5ed) (a) Relógio. (b) Diagrama de temporização para o relógio. (c) Geração de um relógio

(a)

Relógio.

(b)

Diagrama de temporização para o relógio.

(c) Geração de um relógio assimétrico.

Diagramas de tempo

Diagramas de tempo

Alguns Circuitos Seqüenciais

• Latches e Flip-flops (armazenam um bit)

• Registradores em geral

• Memórias Estáticas

• Registradores de Deslocamento (“Shift Registers”): Deslocam os bits de entrada para a direita ou para a esquerda.

Latches e Flip-flops

• São elementos biestáveis (podem armazenar os valores 0 ou 1 enquanto estiverem energizados).

• Funcionam como dispositivos de memória

• Tipos de latches e Flip-flops:

• SR

• SR com relógio

• D

• JK

Latch NOR (OECTB5ed)

Latch NOR (OECTB5ed) (a) Latch NOR no estado 0. (b) Latch NOR no estado 1. (c)

(a)

Latch NOR no estado 0.

(b)

Latch NOR no estado 1.

(c) Tabela-verdade para NOR.

Latch SR com relógio (OECTB5ed)

Latch SR com relógio (OECTB5ed)

Latch D com relógio (OECTB5ed)

Latch D com relógio (OECTB5ed)

Latches e flip-flops tipo D (OECTB5ed)

Latches e flip-flops tipo D (OECTB5ed)

CI Flip-flop D dual (OECTB5ed)

CI Flip-flop D dual (OECTB5ed)

CI Flip-flop octal (OECTB5ed)

CI Flip-flop octal (OECTB5ed)

Diagrama lógico de uma memória 4 x 3

Diagrama lógico de uma memória 4 x 3

4 x 3 SRAM Memory (OECTB5ed)

4 x 3 SRAM Memory (OECTB5ed)