Apostila de org de arq de computadores

Apostila de org de arq de computadores

(Parte 6 de 10)

Não existe limite para o número de entradas que podem ser aplicadas em uma porta AND. Porém, por razões práticas, portas AND comerciais são usualmente manufaturadas com 2, 3 ou 4 portas. Um circuito integrado (CI) padrão contém 14 ou 16 pinos, para praticidade de tamanho e manipulação. Um CI de 14 pinos, por exemplo, pode conter 4 portas de 2 entradas ou 3 portas de 3 entradas ou 2 portas de 4 entradas, sendo reservadas duas portas para as conexões de força.

A figura 3.5 mostra um exemplo de aplicação da porta AND como elemento de controle em transferências de dados. Para cada bit do registrador, um sinal da unidade de controle (UC) serve de entrada, juntamente com o sinal correspondente ao bit do registrador origem (registrador A); quando o sinal da UC for igual a 1, a combinação dos sinais de entrada produz na saída um valor, sempre igual ao do bit do registrador de entrada, o qual será armazenado no registrador de destino (registrador B). Com isso, obteve-se a transferência dos bits do registrador origem para o registrador de destino durante o período em que a linha da UC esteve com o bit 1 ativo.

X = A.B A B X 0 0 0 0 1 0 1 0 0 1 1 1

= 1 (sinal da UCP) Registrador A

Registrador B Figura 3.5 – Exemplo de utilização de porta AND na movimentação de dados de um registrador para outro

3.2.4 Porta OR (OU)

A porta OR é definida para produzir um resultado verdade (=1) na sua saída, se pelo menos uma das entradas for verdade. Esta definição pode ser expressa pela tabela verdade e símbolos mostrados na figura 3.6:

Figura 3.6 – Porta lógica OR

Tal como a porta AND, a porta OR pode ter qualquer número de entradas. Porém, portas OR comerciais são limitadas a 2, 3 e 4 entradas, tais como as portas AND.

3.2.5 Porta NOT (Inversor)

A porta NOT é um circuito lógico que requer apenas um valor na entrada: inverte o sinal de entrada (executa a negação do sinal de entrada), ou seja, se o sinal de entrada for 0 ela produz uma saída 1, se a entrada for 1 ela produz uma saída 0.

Figura 3.7 – Porta lógica NOT

X = A+ B A B X 0 0 0 0 1 1 1 0 1 1 1 1

X = NOT(A) A X 0 1 1 0

3.2.5 Porta NAND – NOT AND

A porta NAND equivale a uma porta AND seguida por uma porta NOT, isto é, ela produz uma saída que é o inverso da saída produzida pela porta AND. Esta porta produzirá uma saída falsa se e somente se todas as entradas forem verdade.

Figura 3.8 – Porta lógica NAND

Esta porta é muito comum de ser encontrada em complexos circuitos lógicos, visto que é possível simplificar a fabricação de circuitos lógicos, reduzindo a quantidade de componentes eletrônicos, se usarmos apenas circuitos NAND.

3.2.6 Porta NOR – NOT OR

A porta NOR equivale a uma porta OR seguida por uma porta NOT, isto é, ela produz uma saída que é o inverso da saída produzida pela porta OR. Esta porta produzirá uma saída verdade se e somente se todas as entradas forem falsas.

Figura 3.9 – Porta lógica NOR

3.2.7 Porta XOR – EXCLUSIVE OR

A porta (ou operação lógica) XOR, abreviação do termo EXCLUSIVE OR, pode ser considerada um caso particular da função OR, ou seja, sua definição: “a saída será verdade se exclusivamente uma ou outra entrada for verdade”. A porta XOR compara os bits: ela produz saída 0 quando todos os bits de entrada são iguais e saída 1 quando pelo menos um dos bits de entrada é diferente dos demais.

Figura 3.10 – Porta lógica XOR

Ao contrário das portas OR/NOR e AND/NAND, a porta XOR tem exatamente duas entradas. Com as portas XOR, é possível se fabricar um testador de igualdade entre valores, por exemplo, para

X = A ⊕ B A B X 0 0 0 0 1 1 1 0 1 1 1 0 testar de modo rápido se duas palavras são iguais (ver figura 3.1). Se as duas palavras forem iguais, as saídas dos circuitos XOR serão todas falsas. A figura mostra o exemplo completo do teste, que inclui uma porta NOR para receber, como entrada, a saída de todos os circuitos XOR e produzir uma única saída.

Bit m-1

m-1Bit 1Bit 1Bit 0

Bit Bit 0

Palavra 1

Palavra 2 RF

Figura 3.1 – Exemplo de emprego de circuitos XOR para teste de igualdade entre palavras

3.3 EXPRESSÕES LÓGICAS – APLICAÇÕES DE PORTAS

Uma expressão lógica ou função lógica pode ser definida como sendo uma expressão algébrica formada por variáveis lógicas (binárias), por símbolos representativos de uma operação lógica (+, .,

⊕, etc.), por parênteses (às vezes) e por um sinal de igual.

Por exemplo:

F, que é uma função lógica, é representada pela expressão lógica mostrada. E como função lógica, somente poderá assumir os valores 0 ou 1, dependendo dos valores das variáveis X, Y e Z. É possível representar F de duas maneiras:

9 Pela expressão algébrica ou expressão lógica acima mostrada; e 9 Por um diagrama interligando os símbolos gráficos correspondentes às operações lógicas.

E o valor do resultado de uma expressão lógica pode ser obtido por uma tabela verdade construída com todas as possibilidades de entrada e as correspondentes saídas. A figura 3.12 mostra a função F representada das duas maneiras citadas e sua correspondente tabela verdade. Esta, por se tratar de 3 entradas (X, Y e Z), possui 23 combinações possíveis.

F = X + Y.Z (a) Expressão lógica da função F

X Y Z F 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1

(b) Diagrama lógico da função F (c) Tabela verdade da função F

Z F Figura 3.12 – Exemplo de emprego de circuitos XOR para teste de igualdade entre palavras

3.3.1 Cálculo de Expressões Lógicas

Assim como podemos obter todos os possíveis resultados de uma expressão lógica para cada um dos valores de entrada componentes da expressão (através da construção progressiva da tabela verdade), também poderemos obter o valor da expressão para um valor específico de cada uma das entradas (usar apenas uma linha da tabela verdade).

Na avaliação de uma expressão lógica, as seguintes regras devem ser seguidas:

a) Uma expressão pode ou não conter parênteses; quando contêm, eles têm a mesma prioridade que nos cálculos da álgebra comum; b) A prioridade da operação AND é maior que a do cálculo de uma operação OR, como na aritmética comum.

Assim: X+Y.Z = X + (Y.Z) c) A prioridade da operação OR é maior que a operação XOR

Exemplos:

1) Seja A=1, B=0, C=1 e D=1. Calcular X = D B.CA⊕+ Solução:

a) B.C = 0.1 = 0 b) 1 B.C= c) A + B.C= 1 + 1 = 1 d) (A + B.C) ⊕ D = 1 ⊕ 1 = 0

Ö Resultado: X = 0

(Parte 6 de 10)

Comentários