Você está na página 1de 57

CENTRO FEDERAL DE EDUCAO TECNOLGICA DE MINAS GERAIS

CURSO TCNICO EM MECATRNICA (CE)

SISTEMAS DIGITAIS

Prof. Paulo Henrique Cruz Pereira

Varginha Minas Gerais - 2009

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Ementa: Representao Numrica, Sistemas Digitais e Analgicos, Circuitos Digitais, Sistemas Numricos e Cdigos, Portas Lgicas, lgebra de Booleana, Circuitos Combinacionais, FlipFlops, Contadores e Registradores, Aritmtica Digital, Circuitos Lgicos, Multivibradores, Dispositivos de Memria, Dispositivos de Lgicas Programveis (PLD) e Microprocessadores Objetivos (Competncias, habilidades e atitudes): Ao final da srie, o aluno dever: Analisar o Funcionamento de Circuitos Digitais, em geral; Projetar Circuitos Lgicos Combinacionais; Projetar e Analisar Circuitos Lgicos Seqenciais; Conhecer o Princpio de Funcionamento de Memrias; Conhecer o Princpio de Funcionamento dos Dispositivos Programveis; Conhecer e Compreender o Princpio de Funcionamento dos Microprocessadores. Processo de Avaliao: 1 Bimestre: 20 pontos Avaliaes: Maro 08 pontos (trabalhos AF) Abril 10 pontos (sem consulta AF) Abril 02 pontos (participao em sala AF) 2 Bimestre: 20 pontos Avaliaes: Maio 06 pontos (trabalhos AF) Junho 06 pontos (sem consulta AF) Junho 02 pontos (participao em sala AF) Julho 06 pontos (sem consulta AF) 3 Bimestre: 30 pontos Avaliaes: Agosto 13 pontos (trabalhos AF) Setembro 15 pontos (sem consulta AF) Setembro 02 pontos (participao em sala AF) 4 Bimestre: 30 pontos Avaliaes: Outubro 08 pontos (trabalhos AF) Novembro 10 pontos (sem consulta AF) Novembro 02 pontos (participao em sala AF) Dezembro 10 pontos (sem consulta AF) Calendrio de avaliao sujeito a alterao, conforme necessidade do calendrio letivo anual e/ou alterao de horrio de aulas.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

NDICE
I SISTEMAS NUMRICOS ..................................................................................................................................1 INTRODUO: ...................................................................................................................................................1 SISTEMA DECIMAL: .........................................................................................................................................1 SISTEMA BINRIO:..........................................................................................................................................1 SISTEMA OCTAL: .............................................................................................................................................3 SISTEMA HEXADECIMAL: ..............................................................................................................................5 ADIO E SUBTRAO SISTEMA BINRIO ............................................................................................................6 Adio Binria ...................................................................................................................................................6 Subtrao Binria..............................................................................................................................................7 Complemento de 2: ............................................................................................................................................7 II PORTAS LGICAS ..........................................................................................................................................9 INTRODUO: ...................................................................................................................................................9 PORTAS INVERSORAS (NOT): ...............................................................................................................................9 PORTAS OU (OR): .................................................................................................................................................9 PORTAS E (AND): ................................................................................................................................................10 PORTAS NO OU (NOR): ....................................................................................................................................11 PORTAS NO E (NAND):.....................................................................................................................................11 Porta NOT: ......................................................................................................................................................12 Porta AND: ......................................................................................................................................................12 Porta OR:.........................................................................................................................................................12 PORTAS OU EXCLUSIVO EXOU (EXOR): ......................................................................................................12 PORTAS EXNOR: ................................................................................................................................................13 III LGEBRA BOOLEANA E MAPAS DE KARNAUGH..............................................................................14 INTRODUO ..................................................................................................................................................14 RELAO BOOLEANAS ................................................................................................................................14 MAPAS DE KARNAUGH .................................................................................................................................15 IV - MULTIPLEXADOR: ........................................................................................................................................19 V - DEMULTIPLEXADOR: ....................................................................................................................................20 VI FLIP-FLOPS E REGISTRADORES .........................................................................................................21 INTRODUO ..................................................................................................................................................21 TIPO R-S .............................................................................................................................................................21 TIPO D .................................................................................................................................................................23 TIPO J-K .............................................................................................................................................................24 TIPO T .................................................................................................................................................................25

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

ii

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

VII CONTADORES .............................................................................................................................................26 CONTADORES CRESCENTES.................................................................................................................................26 a) Sncronos:....................................................................................................................................................26 b) Assncronos: ................................................................................................................................................26 c) Assncrono com 4 flip-flops: ........................................................................................................................27 CONTADORES DECRESCENTES ............................................................................................................................29 a) Assncronos: ................................................................................................................................................29 b) Sncronos:....................................................................................................................................................29 c) Contador Crescente/Decrescente: ...............................................................................................................30 VIII MEMRIAS ...................................................................................................................................................31 MEMRIA DE MASSA ...........................................................................................................................................31 MEMRIA SEMICONDUTORA ...............................................................................................................................32 a) b) c) d) e) ROM (Ready Only Memory): .................................................................................................................32 PROM (ROM Programvel)...................................................................................................................32 EPROM (PROM Apagvel)....................................................................................................................32 E2PROM ................................................................................................................................................32 RAM (RANDOM ACESS MEMORY) .....................................................................................................32

IX - MICROPROCESSADORES ..........................................................................................................................34 INTRODUO ..................................................................................................................................................34 A Unidade Central de Processamento (CPU)..................................................................................................35 Memria...........................................................................................................................................................35 Dispositivos de Entrada e Sada (E/S ou I/0)...................................................................................................36 Vias de Dados, Endereos e Controle..............................................................................................................36 PROGRAMAO .............................................................................................................................................37 O Microprocessador SAP-1 .............................................................................................................................37 O Microprocessador SAP-2 .............................................................................................................................42 BIBLIOGRAFIA ......................................................................................................................................................53

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

iii

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

I SISTEMAS NUMRICOS
INTRODUO: A dimenso de um certo conjunto ou seu nmero de elementos se traduz por um nmero. Para representar um nmero, podemos usar palavras, sinais ou smbolos que so chamados numerais. Assim, quando queremos representar a quantidade de elementos de um conjunto, podemos usar uma qualquer das representaes. Exemplo: os elementos do conjunto de letras do alfabeto (a, b, c, ..., x, z) so 23 ou vinte e trs. Conclui-se que um certo conjunto pode ser representado por diversos numerais. O numeral a maneira de representar um conjunto de elementos, ao passo que o nmero nos d uma idia de quantidade. SISTEMA DECIMAL: Entre os sistemas numricos existentes, o sistema decimal o mais utilizado. Os smbolos ou dgitos utilizados so os algarismos 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Os elementos so agrupados de dez em dez e, por essa razo, os nmeros podem ser expressos por intermdio de potncia de dez e recebem o nome de sistema de numerao decimal. Exemplo: 486 = 400 + 80 + 6 = 4 x 100 + 8 x 10 + 6 x 1 = 4 x 102 + 8 x 101 + 6 x 100 , ou seja,
2 10

486 = 4 x 102 + 8 x 101 + 6 x 100 Observe que o nmero 4 est numa posio tal que seu peso igual a 2 e que o nmero 6 por sua vez tem o peso igual a zero. Ento podemos concluir que o algarismo ou dgito, dependendo do seu posicionamento ter um peso. Note que aquele situado na extrema esquerda do nmero est sendo multiplicado pela potncia de dez maior, ou seja, o dgito mais significativo (most significant digit MSD). Analogamente, o que est situado na extrema direita ser multiplicado pela menor potncia, ou seja, o dgito menos significativo (least significant digit LSD) NOTA: a) O princpio de posicionamento, que formula o expoente da base 10, pode ser estendido a qualquer sistema numrico, ou seja, independe da base numrica em que est representado. b) Por ser o sistema padro de uso ( o sistema que utilizamos em nosso dia-a-dia), o sistema decimal no necessita de representao de base, a fim de simplificao de escrita. SISTEMA BINRIO: Como o prprio nome j indica, tem base 2 e o sistema de numerao mais utilizado em processamento de dados digital, pois utiliza apenas dois smbolos ou algarismos 0 e 1. Tambm vale ressaltar, que em processamentos digitais, que o dgito 1 tambm conhecido por
Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira 1

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

nvel lgico 1, nvel lgico alto, ligado, verdadeiro e energizado. J o dgito 0 poder ser nvel lgico 0, nvel lgico baixo, desligado, falso e desernegizado. Assim a cada posio de cada algarismo corresponde uma potncia de 2, como foi exposto para nmero decimal ao qual correspondia uma potncia de 10. Converso de Binrio em Decimal: o mesmo processo j estudado para base 10, ou seja: 10111(2) = 1 x 24 + 0 x 23 + 1 x 22 + 1 x 21 + 1 x 20 = 16 + 0 + 4 + 2 + 1 = 23 logo: 10111(2) = 23(10) ou 10111(2) = 23 ou 10111(2 = 23 NOTA: devido a sua importncia em sistemas digitais e processamentos de dados digitais, os dgitos binrios so denominados de bit (da contrao do ingls Binary Digit). Da mesma forma, o que falamos no sistema decimal, dependendo do posicionamento do algarismo ou bit, ter um peso; o da extrema esquerda ser o bit mais significativo (most significant bit MSB) e o da extrema direita o bit menos significativo (least significant bit LSB). Ex.: 11011(2 = 1 x 24 + 1 x 23 + 0 x 22 + 1 x 21 + 1 x 20 = 16 + 8 + 0 + 2 + 1 = 27 MSB Converso de Decimal em Binrio: Na converso decimal-binrio, podem ser utilizados dois mtodos: o primeiro que mais geral, dito das divises sucessivas, consiste m dividir sucessivamente o nmero por 2 at obtermos o cociente 0 (zero). O resto dessa diviso colocado na ordem inversa corresponde ao nmero binrio, resultado da converso de decimal em binrio de um certo nmero de dados. Ex.: 54 = ?(2 54 2 0 27 1 2 13 1 2 6 0 2 3 1 2 1 1 2 0 54 = 110110 (2 O segundo mtodo de converso consiste em, comeando como nmero decimal a ser convertido, extrair a maior potencia de 2 (menor ou igual) possvel. Repetindo este processo para o resto dessa subtrao at que o resto seja zero. Concluindo, marque com o dgito 1 os expoentes utilizados e com dgito zero os expoentes no utilizados. Ex.: 54 = ?(2 64 32 16 8 4 2 1 LSB
43 210

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

54 32 = 22

22 16 = 6

64=2

22=0

Portanto ns utilizamos as potencias 32=25, 16=24, 4=22 e 2=21, ou seja:


6 5 4 3 2 1 0

64 32 16 8 4 2 resposta = 1 1 0 1 1

1 0 (2

Este mtodo, evidentemente, exige um pouco mais de raciocnio, devido ao problema de memorizao das potncias de dois e subtraes. Converso de Nmeros Binrios Fracionrios em Decimal: A converso segue o mesmo processo binrio para decimal j visto, utilizando a mesma expresso, inclusive os dgitos aps a vrgula em que as potncias ficam com o expoente negativo. Ex.: 110,11(2 = 1 x 22 + 1 x 21 + 0 x 20 + 1 x 2-1 + 1 x 2-2 = 4 + 2 + 0 + 1 x 1 + 1 x 1 21 22 = 4 + 2 + 0 + 0,5 + 0,25 = 6,75 110,11(2 = 6,75

Converso de Nmero Decimal Fracionrio em Binrio: Neste tipo de converso vamos dividir o processo de converso em duas etapas: converso da parte inteira (j estudada) e converso da parte fracionria. Exemplo: 6, 75 6 = parte inteira 0,75 = parte fracionria

A converso da parte fracionria efetuada por um processo inverso ao da parte inteira, ou seja, em vez de divises sucessivas, so efetuadas multiplicaes sucessivas, e a parte inteira que advier desse processo isolada a cada operao. Exemplo: 0,75 x 2 = 1,50 0,50 x 2 = 1,00 1 1 logo: 6,75 = 110,11(2

NOTA: Dependendo do nmero, chegar ao resultado zero na parte fracionrio, s vezes, muito extensa ou impossvel (caso de dzima). Ento teremos de definir o nmero de casas decimais que se quer aps a vrgula, como acontece no sistema decimal. Exerccios: a) 111011(2) = ? e) 102 = (2) SISTEMA OCTAL: b) 110111(2) = ? f) 43 = (2) c) 10011(2) = ? g) 45,675 = (2) d) 1011,101(2) = ? h) 36 = (2)

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

O sistema octal ou base 8 composto por oito smbolos ou dgitos: 0, 1, 2, 3, 4, 5, 6, e 7. Os nmeros binrios, como vimos, so longos demais para manipularmos; so muito apropriados para as mquinas ou computadores, mas para seres humanos so muitos trabalhosos. Se considerarmos trs dgitos binrios, o maior que pode ser expresso por esses trs dgitos 111 ou em decimal 7. Como 0 7 tambm o algarismo mais significativo do sistema octal, conclui-se que com a combinao de trs dgitos binrios pode-se ter o algarismo octal correspondente; da tambm poder dizer que os nmeros octais tm um tero do comprimento de um nmero binrio e fornecem a mesma informao. Converso de Octal em Binrio: A converso de uma base em outra bastante simples, uma vez que se trata da operao inversa j descrita, ou seja, basta converter individualmente cada dgito octal em trs binrios. Ex.: 137(8 = ?(2 O nmero 1 equivale a 001(2), o nmero 3 igual a 011(2) e o nmero 7 vale 111(2). Portanto: 137(8) = 001011111(2) Converso de Binrio em Octal: feita pela combinao de trs dgitos binrios, como vimos, podendo assim ter todos os algarismos octais: Ex.: 11011011(2) = 1011101(2) = 11 1 011 011 011 = 3 3 3 (8) 101 = 1 3 5 (8) 11011011(2) = 333(8) 1011101(2) = 135(8) ou seja 137(8) = 1011111(2)

Converso de Octal em Decimal: Esta converso se passa pela converso em binrio e posteriormente em decimal, ou seja: 17(8) = ? 001 111 (2) 1 x 23 + 1 x 22 + 1 x 21 + 1 x 20 8+4+2+1 15

Converso Decimal para Octal: Conforme vimos anteriormente, tambm neste caso devemos passar pelo sistema binrio. 22 = ?(8) Exerccios: a) 45(8) = ?(2) = ? e) 101(2) = ? b) 1011(2) = ?(8) f) 47 = ?(2) = ? c) 56(8) = ? d) 101 = ?(8) 10110(2) 10 110 26(8)

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

SISTEMA HEXADECIMAL: O sistema hexadecimal (hexa) foi criado com o mesmo propsito do sistema octal, para minimizar a representao de um nmero binrio que o utilizado em processamento. Tanto os nmeros em hexa como em octal so os meios de manipulao do homem, porm existiro sempre conversores internos mquina que os converta em binrio, com o qual a mquina trabalha. Analogamente, se considerarmos quatro dgitos ou bits binrios, o maior nmero que se pode ser expresso por esses quatro dgitos 1111 ou em decimal 15, da mesma forma que 15 o algarismo mais significativo do sistema hexadecimal, portanto com a combinao de 4 bits ou dgitos binrios pode-se ter o algarismo hexadecimal correspondente. Assim, com esse grupamento de 4 bits ou dgitos, podem-se definir 16 smbolos, o at 15. Contudo, como no existem smbolos dentro do sistema arbico que possam representar os nmeros decimais entre 10 e 15 sem repetir os smbolos anteriores, foram usados os smbolos A, B, C, D, E e F, portanto o sistema hexadecimal ser formato por 16 smbolos alfanumricos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F. Converso Hexa para Binrio: Basta converter cada dgito hexadecimal em seu similar binrio, ou seja, cada dgito em hexa equivale a um grupo de 4 bits. Ex.: B15(16) = ? (2) B 1 5 11 1011(2) 1 0001(2) 5 0101(2)

Logo, B15(16) = 101100010101(2) Converso Binria para Hexa: De maneira anloga, basta realizar o processo inverso de hexa para binrio. Ex.: 10011011(2) = ?(16) Portanto, 10011011(2) = 9B(16) Converso Hexa nos demais sistemas e vice-versa: Como podemos perceber para realizarmos a converso nos demais sistemas basta passarmos pela binria e/ou pelo sistema decimal. Exerccios: a) 211 = ?(2) = ?(8) = ?(16) b) 1101011(2) = ?(16) = ? = ?(8) 1001(2) 1011(2) 9 11 9 (16) B(16)

c) 3747(8) = ?(16) = ?(2) = ? d) AAE(16) = ? = ?(8) = ?(2) e) Fazer um programa para sistema de converso entre as diversas bases, somente nmeros inteiros.
Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira 5

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Adio e Subtrao Sistema Binrio Devido a sua importncia no processamento de dados digitais iremos verificar como uma mquina (computador) processa a subtrao e adio, j que o sistema utilizado pelas mquinas os sistemas binrios. Adio Binria Os microprocessadores (CPU Unidade Central de Processamento, ex. Pentium III) no processam nmeros decimais; elas processam nmeros binrios. Antes que possamos entender os circuitos no interior de um microprocessador, devemos aprender como somar nmeros binrios. H cinco casos bsicos que devem ser entendidos: Caso 1: quando zero for adicionado a zero, o total ser zero, ou seja: 0 + 0 = 0 Caso 2: quando zero for adicionado a 1, o total ser 1, ou seja: 0 + 1 = 1 Caso 3: quando 1 for adicionado a zero, o total ser 1, ou seja: 1 + 0 = 1 Caso 4: quando 1 for adicionado a 1, o total ser zero e vai 1, ou seja: 1 + 1 = 10 Caso 5: quando realizarmos uma sucesso consecutiva de adio de trs dgitos 1 termos o seguinte: 1 + 1 + 1 = 11 Visto os casos anteriores podemos verificar o seguinte exemplo: 11100(2) + 11010(2) ?

Partimos com a coluna menos significativa para obtermos: 0 + 0 = 0 A seguir, adicionamos os bits da segunda coluna como indicado: 0 + 1 = 1 A terceira coluna d: 1 + 0 = 1 A quarta coluna resulta: 1 + 1 = 0 e transporta 1 (vai 1) Finalmente, a ltima coluna d: 1 + 1 + 1 = 11 Logo: 11100(2) + 11010(2) 110110(2) Exerccios: a) 101(2) + 11(2) b) 11001(2) + 111(2) c) 101011(2) + 1001(2) d) 111(2) + 1001(2) e) 1011(2) + 101(2)

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Subtrao Binria Para subtrair binrios, necessitamos discutir quatro casos: Caso 1: 0 0 = 0 Caso 2: 1 0 = 1 Caso 3: 1 1 = 0 Caso 4: 10 1 = 1

Para subtrair nmeros binrios maiores, subtramos coluna por coluna, pedindo emprestado da prxima coluna mais alta quando necessrio. Por exemplo, ao subtrair 101 de 111, procedemos assim: 111 (2) - 101 (2) 010 (2) Partindo da direita, 1 1 d 0; depois 1 0 1; finalmente 1 1 0. Um outro exemplo seria: subtrair 1010(2) de 1101(2). 1101 (2) - 1010 (2) 0011 (2)

Na coluna menos significativa, 1 0 1. Na segunda coluna, temos que pedir emprestado (vem um) da prxima coluna mais alta; ento, 10 1 1. Na terceira coluna, 0 (depois do emprstimo) 0 0. Na quarta coluna 1 1 = 0. Subtrao direta como a precedente tem sido usada em computadores; no entanto, possvel subtrair de maneira diferente. 6.2.1) Exerccios: a) 1100(2) 0101(2) Complemento de 2: Os nmeros de magnitude com sinal so fceis de entender, mas eles requerem demasiado hardware para adio e subtrao. Isso tem levado ao uso amplo de complementos para aritmtica binria. Para obtermos o completo de um nmero binrio, basta inverter (trocar) os bits deste nmero, ou seja: __ A = 0111 (2) A = 1000(2) (leia-se A barrado) O Complemento de 2 definido como a nova palavra obtida pela adio de 1 ao complemento original desta palavra, isto : _ A = A + 1 _ Onde A = complemento de 2 e A = complemento de 1 Portanto, voltando ao exemplo A = 1001(2)
Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira 7

b) 1011(2) 011(2)

c) 101(2) 010(2)

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

A utilidade do complemento de 2 de podermos transformar uma subtrao binria em um processo de adio, ou seja, vamos realizar a seguinte operao aritmtica de subtrao em uma operao de adio: 1100(2) 101(2) (em decimal 12 5 = 7) Primeiramente vamos dar representaes aos nmeros: A = 1100(2) e B = 101(2). Depois devemos igualar o nmero de dgitos de cada nmero, ou seja, adicionar zeros a esquerda, quando necessrio (B = 0101(2)) __ Vamos achar o complemento de 2 de B, ou seja: B = 1010(2) e B = 1011(2) Agora basta realizarmos a adio de A + B, isto : 1100 (2) +1011 (2) 10111 (2) Finalmente, isolamos o comprimento do resultado como sendo do mesmo nmero de dgitos dos nmeros da operao (em nosso caso 4 dgitos), logo nossa resposta ser: 111(2). Exerccios: Utilizar complemento de 2 a) 1100(2) 0101(2) b) 1011(2) 011(2) c) 101(2) 010(2)

d) Fazer um programa que realize adio e subtrao de nmeros binrios de no mximo 4 dgitos.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

II PORTAS LGICAS
INTRODUO: Durante sculos os matemticos sentiram que havia uma conexo entre a Matemtica e a Lgica, mas ningum antes de George Boole pde achar este elo ausente. Em 1854 ele inventou a lgica simblica, conhecida por lgebra booleana. Cada varivel na lgebra booleana tinha qualquer um de dois valores: verdadeiro ou falso. Aps algumas dcadas os engenheiros entenderem que a lgebra booleana podia ser aplicada Eletrnica dos Computadores. Portas Inversoras (NOT): Uma inversora uma porta com apenas um sinal de entrada e um sinal de sada, o estado da sada sempre o oposto da entrada. Simbologia:

A Tabela Verdade: A 1 0 A 0 1

Representao em lgebra Booleana: S = A Portas OU (OR): A porta OR tem dois ou mais sinais de entrada (padro 02 ou 03) mas somente um sinal de sada. Se qualquer sinal de entrada for alto (nvel 1 - fechado), o sinal de sada ser alto. A Nvel 1 B C Sada

Simbologia:

A S

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Tabela Verdade: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 S 0 1 1 1 1 1 1 1

Representao em lgebra Booleana: S = A + B + C Portas E (AND): A porta AND tem dois ou mais sinais de entrada (padro 02 ou 03) mas somente um sinal de sada. Se qualquer sinal de entrada for baixo (nvel 0 - aberto), o sinal de sada ser baixo. Nvel 1 A B C Sada

Simbologia: A B Tabela Verdade: A 0 0 1 1 B 0 1 0 1 S 0 0 0 1 Sada

Representao em lgebra Booleana: S = A . B

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

10

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Exerccios: a) Fazer o circuito de portas lgicas equivalente a seguinte equao booleana: S = (A + C) . B b) Fazer a tabela verdade para porta AND com 3 entradas. c) Fazer a tabela verdade para porta OR com 4 entradas. d) Fazer o circuito de portas lgicas equivalente a S = ((A+B).C) + (A.C) + B

e) Fazer o circuito de portas lgicas para S = ((A.B)+C) . (A+B) . C Portas No OU (NOR): As portas NOR apresentam as mesmas caractersticas das portas OR, com relao entrada e sada. Sua diferena esta no fato de ter associado a sua sada uma porta NOT, o que inverte o resultado de S, ou seja, s teremos nvel lgico 1 na sada quando todas as entradas forem de nvel 0. Simbologia: A B Representao em lgebra de Boole: S = A + B Portas No E (NAND): De maneira anloga s portas NOR, as portas NAND nada mais so que portas AND onde foram acrescentadas portas NOT em sua sada. Portanto, s obteremos nvel 0 quando todos as suas entradas forem de nvel 1. Simbologia: A B S S

Representao em lgebra de Boole: S = A . B Talvez esta porta seja a mais importante de todas pois atravs dela podemos implementar as demais:

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

11

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Porta NOT:

Porta AND: A B S

Porta OR: A

S B

Tabela Verdade: A 0 0 1 1 Exerccios: Fazer as tabelas verdades para as portas NOT e AND implementadas com portas NAND de 02 entradas. Portas OU Exclusivo EXOU (EXOR): Uma porta EXOR reconhece apenas quando houver um nmero impar de entradas em nvel alto. B 0 1 0 1 A 1 1 0 0 B 1 0 1 0 S 0 1 1 1

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

12

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Simbologia:

Para figura (a) temos o circuito equivalente real e na fig. (b) temos a representao convencionada. Representao em lgebra de Boole: Y = A B ou S = A B Tabela Verdade: A 0 0 1 1 Portas EXNOR: Como mas demais portas, para obtermos uma porta EXNOR, basta adicionarmos ao final de uma porta EXOR uma porta inversora, o que provocar a inverso dos resultados na sada. Simbologia: B 0 1 0 1 S 0 1 1 0

Representao Booleana: S = A B

ou

S=A

Exerccios (Consultar na biblioteca o livro Elementos de Eletrnica Digital do autor Idoeta) fazer os problemas 2.9.1 a 2.9.24.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

13

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

III LGEBRA BOOLEANA E MAPAS DE KARNAUGH


INTRODUO Iremos Estudar a lgebra booleana e os mapas de Karnaugh, tpicos indispensveis ao projetista digital. O projeto digital usualmente inicia-se especificando uma sada desejada com uma tabela-verdade. A pergunta ento como apresentar um circuito lgico que tenha a mesma tabela-verdade. A lgebra booleana e os mapas de Karnaugh so as ferramentas usadas para transformar uma tabela-verdade num circuito lgico prtico. RELAO BOOLEANAS O que se segue uma discusso das relaes bsicas em lgebra booleana. Muitas destas relaes so as mesmas da lgebra comum, o que facilita lembra-las. Leis Comutativa, Associativa e Distributiva: A+0=A _ A+A=1 A.0=0 _____ __ __ A+B=A.B A(A + B) = A A+B=B+A A + (B + C) = (A + B) + C A + BC = (A + B)(A + C) Exerccios: a) Desenhar o circuito AND-OR para: ___ __ a.1) S = ABCD + ABCD + ABCD ___ __ _ _ a.2) S = ABCD + ABCD + ABCD + ABCD A+1=A ___ A =A A.A = A ___ __ __ A.B = A + B _ A + A.B = A + B A.B=AB A(BC) = (AB)C A+A=A A.1=A _ A.A = 0 A + A.B = A _ A(A + B) = A.B AB = BA A(B + C) = AB + AC

vale lembrar que no se trata de lgebra comum

b) Escreva a equao do booleana para:

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

14

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

c) Determinar o circuito lgico digital e tabela verdade para a seguinte expresso booleana: _ S = BC + A (B + C) A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 BC A B+C A(B+C) S

d) Idem ao exerccio anterior para uma expresso: S = A ( B + C) + AB MAPAS DE KARNAUGH Como se pode constatar, a minimizao ou simplificao imprescindvel em um comando digital. Para realizarmos tal tarefa utilizaremos a minimizao por mapas de Karnaugh que um mtodo, uma vez entendido, muito simples. O mtodo consiste em fazer a minimizao a partir de uma tabela da verdade, ou mapa, porm a simplificao feita sobre um mapa caracterstico chamado mapa de Karnaugh, que contm os mesmos elementos de uma tabela verdade comum, porm com uma distribuio diferente. Exemplo: Tabela Verdade: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 S . 0 0 1 1 1 1 0 1
C

Mapa de Kanaurgh:
AB

0 1

00 0 0

01 1 1

11 0 1

10 1 1

Obs.: Observe que h uma inverso de seqncia no mapa.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

15

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Podemos Observar que no mapa de Karnaugh a combinao para as variveis A, B e C se obtm pela combinao de uma linha com uma coluna, ou seja, a combinao 0,0,e 0 se obtm pela combinao da primeira linha com a primeira coluna. Assim, observamos que temos todas as combinaes de entrada mostradas na tabela verdade. Vale apena ressaltar que a expresso booleana escrita a partir da tabela verdade perguntando-se quando obteremos a sada igual a nvel 1, ou seja:

S = A.B.C + A.B.C + A.B.C + A.B.C + A.B.C


Regras para Minimizao (Simplificao): A simplificao consiste em reunir clulas adjacentes que possuam a mesma sada (1), formando conjuntos denominados de subcubos e obedecendo s seguintes regras: a) O nmero de clulas reunidas deve ser o maior possvel, mesmo que para isso uma mesma clula deve pertencer a dois ou mais conjuntos diferentes; b) O nmero de clulas reunidas em um subcubo deve ser sempre potncia de 2, ou seja, 1, 2,4,8, 16,...; c) Uma mesma clula pode pertencer a subcubos diferentes para satisfazer o item A, mas no fazer agrupamentos desnecessrios (pelo menos uma clula tem de pertencer a um subcubo somente); e d) Deve-se formar tantos agrupamentos at que no reste nenhuma sada igual que no tenha sido agrupada. A expresso da sada se obtm dos subcubos formados. Cada subcubo define uma funo AND entre as variveis que no mudam de nvel lgico dentro do subcubo. Os diversos subcubos obtidos no mapa formam uma funo OR. Voltando ao exemplo anterior e aplicando-se o mapa de Karnaugh, obteremos a seguinte expresso booleana simplificada: _ _ _ _ S = AB + AC + AB ou S = AB + BC + AB Um mapa de Karnaugh para 4 variveis (A, B, C e D) seria da seguinte forma:
CD AB

00

01

11

10

00 01 11 10

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

16

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Exerccios: a) Dado a tabela verdade abaixo, determinar a expresso booleana simplificada por Karnaugh e o circuito digital resultante. A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 S 1 0 0 0 1 1 0 1

b) Um guindaste deve permitir a elevao de massas compreendidas entre 20 e 80 quilos, pela atuao do motor M ( a nossa sada S). Para isso ele possui uma plataforma repousando sobre molas. Segundo o peso das cargas a elevar, trs sensores de carga A, B e C so atuados. As condies de funcionamento so as seguintes: 1) Em vazio o guindaste deve funcionar, isto , quando nenhum dos sensores acionado; 2) Para cargas at 20 Kg, ou seja, 0 < p < 20, o guindaste no deve funcionar. Situao em que somente o sensor A est atuado; 3) Para cargas compreendidas entre 20 e 80 Kg, 20 < p < 80, o guindaste deve funcionar, quando os sensores A e B permanecem atuados; e 4) Para cargas superiores a 80 Kg, p > 80, o guindaste no deve funcionar, quando todos os sensores permanecem atuados. Com base no sistema descrito, determinar: 1) Tabela verdade de funcionamento; 2) Equao Booleana simplificada por Karnaugh; e 3) Circuito digital. c) Em um circuito digital eletrnico, utiliza-se um LED de 7 segmentos ( a, b, c, d, e, f, g) para representar os nmeros decimais positivos de um dgito somente. Com base na informao abaixo, posicionamento dos segmentos e tabela de atuao, completar a tabela e montar o circuito lgico digital simplificado que atendam as necessidades decimais.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

17

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Dec 0 1 2 3 4 5 6 7 8 9

A 0 0 0 0 0 0 0 0 1 1

B 0 0 0 0 1 1 1 1 0 0

C 0 0 1 1 0 0 1 1 0 0

D 0 1 0 1 0 1 0 1 0 1

a 1 0 1 1

b 1 1 1 1

c 1 1 0 1

d 1 0 1 1

e 1 0 1 0

f 1 0 0 0

g 0 0 1 1

LED 0 1 2 3 4 5 6 7 8 9

Obs.: 1) Os nmeros que no esto sendo utilizados na codificao ABCD, no interferem no resultado, ou seja, so condies irrelevantes (representados no mapa de Karnaugh por um X). Tais condies de irrelevncia devem ser utilizadas como sendo nvel lgico 0 ou 1, o que ir facilitar nas simplificaes. 1) Cada segmento deve ser considerado como uma sada individual do nosso circuito.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

18

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

IV - MULTIPLEXADOR:
O circuito multiplexador o circuito que coloca na sada, o sinal presente em uma das entradas selecionadas, segundo as variveis de seleo. Observando o esquema abaixo, podemos notar que nas entradas designadas por D0 a D3 (Data), so colocadas informaes (0 ou 1), e em funo das outras entradas chamadas de seleo: A0 e A1 (Adress), colocada na sada, a informao de uma das entradas (D0 a D3). O nmero de entradas que pode ser selecionado para colocar suas informaes na sada mltiplo do nmero de entradas que efetuam a seleo ou entradas de seleo.

Entradas de Dados

D0 D1 D2 D3

Multiplexador

Sada S

A0

A1

Entradas de Seleo Exemplo de Multiplexador de quatro entradas:

Se o nmero de entradas de seleo for o de A0 e A1, o nmero de combinaes possveis ser: 22 = 4, portanto, conseguiremos selecionar at quatro entradas de dados D0 a D3, como mostrado no quadro anterior, ou para cada uma das combinaes colocamos a informao de uma das entradas na sada S.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

19

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

V - DEMULTIPLEXADOR:
O circuito demultiplexador executa a funo inversa de um multiplexador, ou seja, coloca uma entrada, no caso de dados (D), em uma das sadas S0 a S3 em funo das variveis de seleo. Na entrada D, coloca-se a informao que se quer transmitir a uma ou a outra sada selecionada por variveis ditas de seleo. Da mesma forma, o nmero de sadas que pode ser selecionado para receber a informao da entrada D mltiplo do nmero de entradas que efetuam a seleo ou entradas de seleo.

Entradas de Dados

Multiplexador

D0 D1 D2 D3

Sadas

A0

A1

Seleo Exemplo de Demultiplexador de quatro entradas:

Com base no estudo do multiplexador podemos facilmente verificar como se d a sada do demultiplexador. Exerccio: Fazer o circuito lgico digital para o multiplexador e demultiplexador dos exemplos estudados.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

20

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

VI FLIP-FLOPs E REGISTRADORES
INTRODUO Um circuito biestvel, tambm chamado de circuito flip-flop ou Latch, apresenta dos estados estveis (0 e 1) na sada e, pela ao de um pulso externo a uma das entradas, passa de um estado ou nvel lgico ao outro, l permanecendo at que outro pulso ou estmulo seja dado na outra entrada. Por essa caracterstica de reter um determinado estado ou nvel lgico que se classifica como elemento de memria. __ As duas sadas Q e Q so complementares, e o flip-flop diz-se setado se a sada Q estiver ao nvel lgico 1 e resetado se ao nvel lgico 0. Representao: E1 Q _ Q

E2

Tabela Verdade: Estado 1 setado 0 - resetado Q 1 0 Q 0 1

Com relao aos flip-flops existem quatro tipos: tipo R-S, tipo D, tipo T e tipo J-K, todos construdos a partir de portas lgicas bsicas. TIPO R-S R-S provm do ingls Reset-Set, que significa desarma-arma ou desaciona-aciona, nomes esses dados a entradas do prprio flip-flop, um pulso R coloca a sada, ao nvel lgico 0 ou desarma ou desaciona a sada e um pulso na entrada S coloca a sada ao nvel lgico 1 ou arma ou aciona a sada.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

21

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Tabela verdade: R 0 0 1 1 Onde: np = no permitido O comportamento da sada para as condies das variveis de entrada pode facilmente ser entendido pela anlise das prprias portas lgicas que compem o flip-flop. Na prtica, os flip-flops apresentam uma condio adicional para a condio de R=S=1. Como pode ser observado, teoricamente as portas apresentam na sada um nvel oscilatrio, ou seja, 0 ou 1, devido a detalhes construtivos; ento, para essa condio de R=S=1 o flip-flop poder apresentar sada setada (Q=1) ou resetada (Q=0), dependendo do fabricante. Todo flip-flop tambm pode ser sncrono ou assncrono, ou seja, com entrada controlada por relgio (clock) ou no: S 0 1 0 1 QN+1 QN+1 Estado QN 1 0 np QN Mantm 0 1 np Seta Reseta Erro

Para o caso de sincronismo teremos a seguinte tabela: CLK 0 1 1 1 1 R X 0 0 1 1 S X 0 1 0 1 QN+1 QN QN 1 0 Np S Q Representao: R Q

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

22

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Uma outra maneira de se analisar a situao atravs do diagrama fasorial ou temporal, que se consiste em desenhar o grfico de estados (status) em funo do tempo: CLK

Devido s caractersticas construtivas, as portas AND da entrada de controle do flip-flop podem atuar ou responder ao nvel ou a transio do sinal (borda) de entrada:

TIPO D Consiste na interligao das entradas do flip-flop R-S por meio de um inversor, formando uma entrada nica, conhecida como entrada de dados (tipo D). Constata-s assim que a informao ou dado que colocado na entrada de dados D a que est disponvel ou se mantm na sada (memria) Simbologia:
CLK

D Q Q

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

23

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Circuito equivalente:

Tabela verdade: D X 0 1 CLK QN+1 0 1 1 QN 0 1

Observao: Um registrador de dados nada mais do que um conjunto de flip-flops dispostos de tal maneira a armazenar dados, ou seja, para cada bit que se deseja armazenar utiliza-se um flip-flop (elemento de memria). TIPO J-K semelhante ao flip-flop R-S, tendo uma caracterstica adicional, J = K = 1 implica em _ Qn+1 = Qn. Assim, para a condio no permitida da entrada, R=S=1 ou J=K=1, a sada Q ser igual ao complemento da sada no instante anterior ou estado anterior.

Simbologia: J
CLK

_ K Q

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

24

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Tabela Verdade: CLK 0 1 1 1 1 TIPO T J X 0 0 1 1 K X 0 1 0 1 QN+1 QN QN 0 1 Estado Mantm Mantm Reset Set

QN Complemento

Este tipo de flip-flop obtido a partir do flip-flop J-K e um dos mais utilizados, principalmente em contadores e circuitos de contagem seqencial, devido a sua caracterstica de dividir por dois o sinal de entrada. Neste caso, ento, se mantivermos a entrada T do flip-flop ao nvel 1, completa-se a sada a cada pulso de clock. Este flip-flop tambm pode ser obtido a partir de um flip-flop tipo D, neste caso, o resultado da sada fica sujeita as variaes do clock.

Nvel 1

Q CLK

CLK

Exerccios: a) Execute a simulao dos circuitos equivalentes com as portas lgicas digitais de cada tipo de flip-flop e compare seus valores encontrados coma tabela verdade correspondente. b) Faa a simulao no laboratrio do flip-flop tipo T utilizando ora o tipo J-K e hora o tipo D.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

25

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

VII CONTADORES
Os contadores so circuitos construdos a partir de flip-flops, que, para uma seqncia de pulsos em suas entradas, geram uma seqncia especfica de pulsos de sada. A principal aplicao de contagem, divisor de freqncia e tempo (caso do relgio digital). Podem ser classificados em crescentes e decrescentes e, dentro dessa classificao, como vimos no caso de biestveis, podem ser sncronos ou assncronos. Contadores Crescentes

a) Sncronos: Todos os flip-flops esto sob o mesmo comando de clock, e a sada de um entrada do outro flip-flop. Na figura anterior, o flip-flop A, por ter as entradas ao nvel lgico 1, a cada pulso de clock a sada complemento (0 1 ou 1 0), ao passo que o flip-flop seguinte depende do pulso do flip-flop anterior para que a sada se complemente. A tabela verdade mostra o que ocorre com as sada QA e QB a cada pulso de clock (na tabela o flip-flop sensvel a borda de descida). b) Assncronos: Neste caso cada flip-flop possui seu prprio clock, ou seja, a sada de um flip-flop entrada de clock do flip-flop seguinte. Na figura abaixo podemos verificar que como todas as entradas dos flip-flops esto ao nvel lgico 1, pelas caractersticas do flip-flop JK, a cada pulso de clock a sada se complementa. A tabela verdade mostra o que ocorre com as sadas QA e QB a cada pulso de clock. Pela tabela podemos ver tambm que o flip-flop sensvel a borda de descida. Para um
Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira 26

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

nmero maior de flip-flops, utilizam-se portas lgicas para se estabelecer seqncia de contagem (crescente ou decrescente).

c) Assncrono com 4 flip-flops:

Imaginando inicialmente que as sadas de todos os flip-flops estejam ao nvel lgico zero, observamos a partir disso que na descida do primeiro pulso de clock, a sada QA passa do
Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira 27

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

nvel lgico 0 para 1, uma vez que as entradas J e KA esto ao nvel lgico 1, mostrando tambm que o flip-flop sensvel a borda de descida. No prximo pulso de clock, a sada QA passa de 1 0. A sada do flip-flop B, QB ento, do nvel 0 1, no pulso de descida de QA. Com o desenho eltrico digital acima, podemos analisar o que ocorre a cada pulso de clock com cada uma das sadas. Constatamos assim, que a cada dois pulsos de clock temos um pulso na sada QA e a cada dois pulsos de QA temos um na sada QB e assim sucessivamente, sendo portanto cada flip-flop um divisor por dois. Na sada do primeiro flip-flop em QA, temos um divisor por dois do pulso de clock, em QB por quatro, em QC por oito e assim por diante.

ENTRADAS N. CLOCK 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

SADAS QD QC QB QA DECIMAL 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

A tabela verdade mostra, em termos numricos, o que ocorre a cada pulso de clock com as sadas de cada flip-flop. Pode-se observar que a cada pulso as sadas indicam, em binrio.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

28

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Conclui-se da que os contadores geram uma contagem de pulsos na sada de uma seqncia de pulsos de entradas. Tambm podemos observar que a contagem mxima que se pode obter em funo do nmero de flip-flops, ou seja: C = 2nmero de flip-flop no exemplo: C = 24 = 16

Os dizeres LSB e MSB, significam os bits menos significativos e mais significativos, a fim de que possamos determinar uma contagem correta. Contadores Decrescentes a) Assncronos: Os contadores assncronos destacam-se pela caracterstica de ter a sada Q complementar ligada ao clock do flip-flop seguinte. As entradas adicionais de Preset colocam as sadas Q ao nvel lgico 1, quando de um pulso nelas aplicado. Por ser um contador decrescente, inicia-se com todas as sadas ao nvel lgico 1, a partir do qual a tabela verdade mostra o que ocorre a cada pulso de clock.

Pode-se ainda estabelecer um nmero de contagens que se desejar. A partir de uma lgica combinacional, pode-se fazer o contador retornar ao seu incio, isto , sadas todas em 1, pela ao de um pulso na entrada Preset. b) Sncronos: __ Nos contadores sncronos, so combinadas as sadas Q por meio de portas lgicas e interligadas s entradas J e K. As entradas de clock esto sob o mesmo comando.

A tabela verdade mostra que a cada pulso de clock, as sadas se comportam da mesma forma que o contador assncrono. A funo das portas lgicas nas entradas J e K dos flip-flops poder tambm estabelecer uma seqncia diferente da normal; em resumo, pode-se exercer um controle sobre as entradas
Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira 29

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

e, conseqentemente, sobre as sadas ou contagem, o que fato tambm nos contadores crescentes. c) Contador Crescente/Decrescente: Um mesmo circuito pode efetuar ambas as contagens, crescente ou decrescente, dependendo de uma lgica que ora conecta a sada Q, ora Q complementar, junto entrada de clock ou J e K, respectivamente, se o controlador for assncrono ou sncrono. Coma entrada de modo ao nvel lgico 1, habilateremos o contador a contagens crescentes, ou seja, so liberadas as sadas Q, por meio das portas lgicas, entrada do clock do flip-flop seguinte. Com a entrada ao nvel lgico 0, so liberadas as sadas Q complementares.

3) Exerccio: Fazer a tabela verdade para o circuito misto anterior de modo que ora ele atue como contador crescente e ora como contador decrescente.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

30

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

VIII MEMRIAS
Os microprocessadores usam dispositivos semicondutores para armazenar programas e dados. Os mais utilizados so: RAM (Random Acess Memory): memria de acesso aleatrio ROM (Read Only Memory): memria somente de leitura Para expandir o espao de armazenamento de dados, os sistemas microprocessados usam algum dispositivo de armazenamento de massa, tais como: Discos flexveis Discos rgidos Fitas magnticas CD-Roms Etc

Existem 2 tipos de memrias:


1. 2.

Memria de Massa Memria Semicondutora

Memria de Massa So memrias utilizadas para armazenagem de grandes quantidades de informaes, ficam externamente a CPU e normalmente requerem dispositivo perifrico de interfaceamento. Exemplos: Disco Rgido (Winchester - HD), Fita Magntica, Disco ptico (CD-ROM), Disco Magntico (disquetes) e etc. SETOR TRILHA

O termo formatar um disquete ou HD consiste em criar trilhas e setores no mesmo.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

31

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Memria Semicondutora So memrias utilizadas para armazenagem de pequenas quantidades de informaes, no necessitam de interface com a CPU, velocidade elevada em relao memria de massa (para acesso) e trabalham em blocos para armazenamento de dados. Os tipos de memrias semicondutoras so:
a) b) c) d) e)

ROM PROM EPRO EEPROM ou E2PROM RAM, sendo esta subdividida em: Esttica e Dinmica gravar nada nesta memria. Possui as seguintes caractersticas: mascarada de fbrica, no voltil e no apagvel. Apresenta como estrutura interna uma matriz de diodos:

a) ROM (Ready Only Memory): memria somente de leitura, ou seja, no conseguimos

Exemplo: cartucho de vdeo game Obs.: No voltil: no ocorre a perda de dados na ausncia de alimentao eltrica.

b) PROM (ROM Programvel): programvel pelo usurio somente uma vez, no voltil e
no apagvel. Apresenta como estrutura interna uma matriz de fusvel: semelhante a matriz da ROM porm os diodos foram substitudos por fusveis. c) EPROM (PROM Apagvel): programada por pulsos eltricos, apagvel por luz ultravioleta, no se apaga parte da memria, elevada capacidade de armazenamento em relao ROM e PROM e no voltil.

Obs.: Quando se deixa esta memria sem a proteo (janela de vidro) em luz ambiente, depois de um certo tempo perdemos parte dos dados gravados.

d) E2PROM: apagvel e programvel por pulsos eltricos, no voltil, para se apagar


necessitamos selecionar a posio da memria, baixa velocidade do ciclo de erase e save, para se gravar novamente tem de apagar o que estava gravado anteriormente.

e) RAM (RANDOM ACESS MEMORY): memria de acesso aleatrio e voltil.


formada por 2 tipos:
Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira 32

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Esttica: seu elemento de memria Flip-Flop (devido a isto no existe o termo apagar a memria), fcil acesso, estrutura matricial transparente, devido ao grande nmero de flipflops a possui uma placa grande e baixa densidade de armazenamento.

Dinmica: seu elemento de memria capacitor associado a um transistor MOSFET, difcil

acesso, estrutura matricial no transparente (tem de se especificar a linha e a coluna endereo) para acesso e/ou apagar, alta densidade de armazenamento, devido presena do capacitor necessita de um circuito de REFRESH que deve ser atuado no intervalo de Linha Coluna
MOS-FET

2 a 8 ms.

CAPACITOR

AMPLIFICADOR SENSITIVO

Exerccios: a) Quais so as finalidades das memrias?; b) Quais so os tipos de memrias? Fale sobre suas caractersticas principais; c) Quais so os tipos de memrias semicondutoras? d) Descreva de maneira detalhada as memrias ROM e RAM.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

33

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

IX - MICROPROCESSADORES
INTRODUO
A velocidade com que acontece a evoluo da Informtica poderia levar a crer que a tarefa do professor de uma disciplina como a de Microprocessadores seria a de atualizar continuamente o material apresentado aos alunos, para que estes ficassem a par das constantes inovaes tecnolgicas. Esta idia no resiste porm a uma anlise mais profunda se este o tipo de conhecimento dado aos alunos que esto no meio do seu curso ento dificilmente ele lhes ser til quando se formarem, depois de alguns anos. Os conceitos fundamentais que norteiam o funcionamento dos microprocessadores so, sob este aspecto, mais importantes do que os ltimos lanamentos da indstria, porque no mudam e sero teis sempre. Por esta razo, o material aqui contido procura valorizar, sobretudo, os conceitos independentes da inovao tecnolgica. Da mesma forma, justifica-se a ementa a ser trabalhada durante o curso, pois esta apresenta a simplicidade necessria para o devido aprendizado do estudante. A finalidade fazer com que os alunos ao conclurem a disciplina, possam ser capazes de entender o funcionamento de microprocessadores. Este contedo a ser apresentado deve ser entendido como um guia para aqueles que pretendem se aprofundar em livros especficos sobre um ou outro processador ou que ir cursar uma especializao nessa direo. A densidade da exposio de cada assunto est num formato apropriado para o curso de graduao. medida que se avanam os tpicos, o aluno se aproxima de ter capacidades bsicas para trabalhar em um projeto profissional. Existem trs elementos fundamentais em um microprocessador, cada um executando uma tarefa especial. Estes elementos so: 1. A Unidade Central de Processamento (CPU) 2. A Memria 3. Os Dispositivos ou Portas de Entradas e Sadas (I/O)

BARRAMENTO DE ENDEREO

MEMRIA CPU I/O

BARRAMENTO DE DADOS

BARRAMENTO DE CONTROLE

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

34

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

A Unidade Central de Processamento (CPU)


O corao de um microprocessador a CPU. Ela executa o processamento numrico, as operaes lgicas e as funes de temporizao. As operaes da CPU so controladas por um conjunto de instrues que, quando organizadas em uma seqncia lgica, formam o chamado programa. Os programas e os dados a serem manipulados so armazenados na memria. A CPU alimentada com dados e sinais de controle, executa uma instruo por vez e produz como sada dados e sinais de controle. Internamente, uma CPU formada por 3 unidades fundamentais: 1. Os Registradores 2. A unidade Lgica e Aritmtica (ULA) 3. O Circuito de Controle Os registradores armazenam informaes temporrias tais como: endereos de memria, cdigos de estado e outras informaes teis durante a execuo do programa. Todas as CPU's possuem a Unidade Lgica Aritmtica. A ULA contm um somador que executa operaes aritmticas binrias sobre os dados obtidos da memria dos registradores ou de entradas. O Circuito de Controle coordena todas as atividades do microprocessador. Atravs de pulsos externos de temporizao chamados "clocks", o circuito de controle gera as seqncias apropriadas de eventos necessrios execuo das tarefas de processamentos. Ao decodificar os bits de uma instruo o circuito produz sinais internos e externos de controle do processamento.

Memria
Os microprocessadores usam dispositivos semicondutores para armazenar programas e dados. Os mais utilizados so: RAM (Random Acess Mernory): memria de acesso aleatrio ROM (Read Only Memory): memria somente de leitura Para expandir o espao de armazenamento de dados, os sistemas microprocessados usam algum dispositivo de armazenamento de massa, tais como: Discos flexveis; Discos rgidos; Fitas magnticas; CDs / DVDs; etc Devido ao seu grau de importncia estaremos estudando em detalhes este assunto mais frente.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

35

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Dispositivos de Entrada e Sada (E/S ou I/0)


Os dispositivos I/O, tambm conhecidos por perifricos, so os meios pelos quais a CPU se comunica com o mundo exterior. Em um sistema tpico, as portas ou canais de entrada so conectados ao teclado, e as portas ou canais de sada so interligados ao vdeo, unidade de disco, impressora, etc.

Vias de Dados, Endereos e Controle


A conexo entre CPU, memria e dispositivos I/0 realizada por um conjunto de fios ou linhas paralelas, chamadas de via ou barramento. Como vimos temos 3 vias diferentes: Via de Dados; Via de Endereo; e Via de Controle Os dados trafegam a CPU, memria e I/0 atravs de via de dados. Estes dados podero ser instrues para CPU ou informaes da CPU para portas I/0 e vice-versa. A via de endereo utilizada pela CPU para selecionar uma clula de memria ou um dispositivo 1/0 atravs de um cdigo binrio. A via de controle conduz os sinais de controle para a memria e para os dispositivos I/0, especificando as direes dos dados em relao a CPU, o momento exato da transferncia, o tipo de operao, etc. MEMRIAS Existem 2 tipos de memrias: 1. Memria de Massa 2. Memria Semicondutora 1. Memria de Massa So memrias utilizadas para armazenagem de grandes quantidades de informaes, ficam externamente a CPU e normalmente requerem dispositivo perifrico de interfaceamento. Exemplos: Disco Rgido (Winchester - HD), Fita Magntica, Disco ptico (CD-ROM), Disco Magntico (disquetes) e etc. 2. Memria Semicondutora So memrias utilizadas para armazenagem de pequenas quantidades de informaes, no necessitam de interface com a CPU, velocidade elevada em relao memria de massa (para acesso) e trabalham em blocos para armazenamento de dados. Os tipos de memrias semicondutoras so: a) b) c) d) e) ROM; PROM; EPROM; EEPROM; RAM (SRAM e DRAM)

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

36

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

As memrias DRAM possuem o adjetivo dinmica devido ao fato de que seu contedo muda com o tempo durante a operao de espera (armazenamento). Isto faz com que o projeto de memria dinmica seja mais complicado, mas chips modernos normalmente ocultam a complexidade do usurio. A principal desvantagem das DRAMs o fato de que elas no so to rpidas quando as SRAMs. A principal vantagem est no baixo custo por bit, tornando-as economicamente atrativas. Com base na situao descrita anteriormente (custo x velocidade) a soluo para esse problema foi introduo de um pequeno arranjo de memria local, chamado de memria cache. Que utiliza a memria rpida SRAM. Para manter o custo do sistema razovel, o tamanho do cache mantido relativamente baixo em relao memria principal (DRAM). Memrias cache so utilizadas como um local de armazenamento temporrio que pode ser utilizado pela CPU como se fosse a memria do sistema.

CONTROL

PRINCIPAL

CPU

DADOS

CACHE SRAMs

DADOS

DRAMs ENDERE

A ltima caracterstica importante deste tipo de memria tem haver com seu tipo de construo modular, para as DRAMs. Tal tipo de construo facilita aumentos futuros. Estes mdulos so chamados SIMMs (Single In-Line Memory Modules) ou as DIMMs (Dual In-Line Memory Modules), dependendo de seus projetos.

PROGRAMAO
Nosso objetivo ser dar uma pequena noo de programao em microprocessadores atravs da linguagem ASSEMBLER (ou ASSEMBLY). Afim de que possamos entender como funcionam os pulsos eltricos internos em um microprocessador e como o mesmo processa as informaes, vamos estudar o SAP (Simple As Possible) que um microprocessador didtico.

O Microprocessador SAP-1
O SAP-1 um microprocessador que possui 8 bits para dados e 4 bits para endereamento. Pelo diagrama de bloco podemos verificar os 12 sinais de controle e sua designao so: L = LOAD: carrega o registrador; E = ENABLE: habilita sada do registrador;
Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira 37

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Su = determina o tipo de operao da ULA (1 = subtrao e O = adio); Cp = prepara o contador de programa para contar, nas transies positivas do clock, para que o mesmo possa ler a prxima instruo. CE = Chip Enable; responsvel pela liberao da informao pela memria RAM. Definio dos Blocos do SAP-1 PC = contador de programa. Aponta o endereo da prxima instruo a ser executada. REM = registrador de endereos da memria. Armazena temporariamente o endereo da instruo a ser executada. RAM = rea de memria onde estar o programa executvel. No faz parte do conjunto, ou seja, fica fora do microprocessador. RI = registrador de instruo. Armazena o cdigo da instruo a ser executada. C/S = controlador / sequencializador. Responsvel pela temporizao e gerao das linhas de controle do microprocessador. Acumulador (A) = registrador Somador/Subtrator = responsvel pelas operaes aritmticas Registrado B = registrador Registrado de Sada = registra temporariamente os dados de sada Display = indicao visual, no faz parte do conjunto. Possui o seguinte diagrama de blocos:

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

38

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Cp Ep

PC

4 8

8 A 8 8 +/8 8 8 B

La Ea

Lm

4 REM 4

Su Eu

CE

RAM

Lb

Li Ei 4

8 RI 4

RS 8 DSP

Lo

C/S

12

A execuo de uma instruo dividida em 2 etapas (ciclos): Ciclo de Busca: consiste na leitura do cdigo da instruo armazenada na RAM e armazenamento deste cdigo no RI; e Ciclo de Execuo: consiste na execuo da instruo armazenada no RI.

O tempo do ciclo de busca e execuo equivalente a 3 perodos de clock no SAP-1 Portanto, o ciclo de instruo tem 6 perodos. No SAP-1 o clock sensvel borda de descida e o microprocessador sempre resetado no incio do processamento, iniciando sempre do endereo 0000 da memria. ANLISE DO DIAGRAMA TEMPORAL (FASORIAL) A fim de facilitar nossa compreenso iremos estudar o diagrama fasorial para instruo LDA (Load Registrador A - carregar registrador A com contedo da memria no endereo determinado) T1) Habilita Ep Contador de Programa (PC) coloca seu contedo no barramento Habilita Lm que est no barramento vai para REM na descida do clock
Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira 39

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Portanto em T1 temos Ep = 1 e Lm = 0 T2) Habilita Cp na descida do clock o PC ir apontar para o endereo 0000 + 1, ou seja, incrementa de uma unidade binria o PC. Portanto em T2 Cp = 1 T3) Habilita CE e Li ao final de T3 temos RI com a instruo que a RAM liberou no barramento (fim do eido de busca) Logo em T3 CE = 0 e Li = 0 Obs Os tempos T1, T2 e T3 so idnticos para todas as operaes da SAP-1 pois consiste no ciclo de busca da instruo. T4) Habilita Ei e Lm enderea a memria e o C/S recebe a instruo a ser executada gerando os sinais de controle necessrios Obs Em um dado de 8 bits temos XXXXYYYY onde X = instruo e Y = endereo T5) Habilita CE e La na descida do clock o contedo da RAM vai para A T6) NOP = nenhuma operao a executar, ou seja, todos os sinais de controle recebem pulsos que os desabilitem. Obs Vale lembrar da eletrnica digital que 1 =ativo e 0 = desativo mas se tivermos a indicao de sinal barrado o raciocnio oposto. TIPOS DE INSTRUES DO SAP-1 Instruo LDA YYYY = esta instruo carrega o registrador A. com o contedo da RAM do endereo (em hexadecimal) indicado. A M yyyy Cdigo binrio: 0000 YYYY Instruo ADD YYYY = soma ao registrador A o contedo da RAM do endereo indicado. A A + Myyyy

Cdigo binrio: 0001 YYYY

Instruo SUB YYYY = subtrai do registrador A o contedo da RAM do endereo indicado. A A - Myyyy

Cdigo binrio: 0010 YYYY

Instruo OUT = coloca o contedo do registrador A no registrador de sada (RS) e conseqentemente o resultado aparecer no display RS A

Cdigo binrio: 1110 XXXX (no interesse o endereamento)


Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira 40

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Instruo HLT = finaliza a execuo de um programa.

Cdigo binrio: 1111 XXXX (no interesse o endereamento) Exerccios Exerccio 1: Descreva os tempos de instruo (T1 a T6) e monte a tabela da RAM para um programa com as seguintes instrues LDA CH, ADD 7H, SUB AH, OUT HLT Sabendo-se que os endereos possuem os seguintes dados: CH = 0100 0010(2), 7H = 0100 0000(2) e AH -- 0001 0010(2). Exerccio 2: Sabendo-se que os endereos AH, 8H e CH contm 70, 48 e 08 respectivamente. Descrever os tempos das instrues abaixo e qual ser o valor do display. LDA AH SUB8H ADD CH OUT HLT Exerccio 3: O manual de programao de microprocessador diz que so necessrios 13 estados para buscar e executar a instruo LDA. Se o relgio do sistema (clock) tiver uma freqncia de 25 MHz quanto tempo levar um ciclo de instruo? Exerccio 4: Sabemos que no SAP-1 a instruo ADD gasta 6 tempos para completar o ciclo de instruo. Supondo que o SAP-1 tenha um cristal interno de 4,5 MHz, quanto tempo ele gasta para executar ADD? Exerccio 5: Fazer um programa para que o SAP-1 execute a seguinte operao decimal: 5 + 4 - 6 e dizer qual o tempo necessrio para realizao de tal tarefa. Dado: f = 3,0 MHz e usar os endereos DH, EH e FH para os dados, respectivamente. Exerccio 6: Fazer um programa para que o SAP-1 execute a seguinte operao decimal 5+4+3-6-2e dizer qual o tempo necessrio para realizao de tal tarefa. Dado: f = 4,0 MHz e usar os endereos DH, EH e FH para os dados, respectivamente. Construa a tabela RAM do programa em binrio. Exerccio 7: Em uma tabela RAM temos na primeira linha a seguinte instruo LDA 6H e na linha 6H temos 70 como contedo. Qual ser o contedo da REM em T4 para a instruo SUB AH se esta instruo estiver na linha 3 da tabela RAM? Exerccio 8: Fale sobre as memrias semicondutoras ROM e RAM. Exerccio 9: De quantas unidades podemos dizer que so constitudos um microprocessador? Com base nesta informao quais so os blocos da SAP-1 que no pertencem a CPU? Exerccio 10: Cite quais so os blocos do SAP-1 que trabalham exclusivamente com os barramentos de endereo e controle.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

41

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

O Microprocessador SAP-2
O SAP-1 um computador porque ele, primeiramente, armazena um programa e os dados antes de comear os clculos e, ento, executa automaticamente as instrues do programa sem a interveno humana. E, tambm, o SAP-1 uma mquina primitiva Ele se compara com o computador moderno da mesma forma que o homem das cavernas de compara com o homem moderno. Algo est ausente nele, algo que pode ser encontrado em qualquer computador moderno, O SAP-2 o prximo passo da evoluo em direo ao computador moderno porque inclui instrues de salto. Estas novas instrues obrigam o computador a repetir ou omitir partes de um programa. Como voc ver, as instrues de salto abrem as portas para toda uma nova capacidade computacional. Definio dos Blocos do SAP-2 Portas de Entradas: o SAP-2 tem 02 portas de entrada, numeradas com 1 e 2 Um codificador hexadecimal de teclado est ligado porta 1. Ele nos permite dar entrada a dados e instrues hexadecimais. Observe que o codificador do teclado envia um sinal de READY (pronto) para o bit 0 da porta 2. Este bit indica quando o dado da porta 1 est vlido. Observe tambm o sinal SERIAL IN indo para o pino 7 da porta 2; PC: contador de programa. Desta vez ele possui 16 bits, portanto ele pode enderear de 0000H a FFFFH, ou seja, de 0 a 65.535, em decimal. REM: registrador de endereos da memria. RAM: rea de memria onde estar o programa executvel. Esta memria est dividida em 02 blocos: uma ROM de 2K com endereos de OOOOH a 07FFH. Esta ROM contm um programa, o monitor, que inicializa o computador ao ser ligado; interpreta as entradas do teclado e assim por diante. O restante da memria uma RAM de 62K com endereos de 0800H a FFFFH. Registrador de Dados de Memria (MDR): um registrador buffer de 8 bits. A sua sada alimenta a RAM. O MDR recebe dados do barramento antes de uma operao de escrita e envia dados para o barramento depois de uma operao de leitura. RI: registrador de instruo. Como o SAP-2 tem mais instrues que o SAP-1, usaremos 8 bits em vez de 4, para o cdigo de operao. Um cdigo de operao de 8 bits pode acomodar 256 instrues e o SAP-2 possui 43 instrues, alm de ser o padro utilizado pelo 8080/8085. C/S: controlador / seqencializador. Responsvel pela temporizao e gerao das linhas de controle do microprocessador. Como o SAP-2 tem um repertrio de instrues maior, o controladorseqencializador tem mais hardware. Acumulador (A): registrador ULA e Flags: a ULA a responsvel pelas operaes lgicas e aritmticas. J o Flag um flip-flop que informa sobre uma condio varivel durante a execuo de um programa. O SAP-2 tem 2 flags, o flag de sinal (S) que setado quando o contedo do acumulador torna-se negativo durante a execuo de algumas instrues e o flag de zero (Z) que setado quando o contedo do acumulador torna-se zero. Registradores TMP. B e C: em vez de usar o registrador B guardar o dado que est sendo adicionado ou subtrado do acumulador, usa-se um registrador temporrio (TMP). Isto nos traz maior liberdade ao
Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira 42

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

usar o registrador B. Alm destes registradores, tambm temos o registrador C, o que nos d uma maior flexibilidade ao mover dados durante uma execuo do programa. Portas de Sada: o SAP-2 tem 02 portas de sada, numeradas 3 e 4. O contedo do acumulador pode ser carregado na porta 3, que alimenta um display hexadecimal, ou para porta 4. Observe que o pino 7 da porta 4 envia um sinal de ACKNOWLEDGE (reconhecimento) para o codificador hexadecimal. Os sinais ACKNOWLEDGE e READY fazem parte de um conceito chamado handshaking (aperto de mo). Possui o seguinte diagrama de blocos:

Codificador Hexadecimal de Teclado 8 Porta 1 8 B A R R A M E N T O D E 16 1 6 B I T S 8 8 8 C/S 8 8

Acumulador 8 ULA 8 TMP 2

Flags

Porta 2

PC

16

REM 16 Memria 64K 8 MDR

C 8

Porta 3

Display Hexa

Porta 4

RI

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

43

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

NOVAS INSTRUES DO SAP-2 1. INSTRUES COM REFERNCIA MEMRIA: O ciclo de busca do SAP-2 o mesmo de antes. Portanto, todas as instrues do SAP-2 usam a memria durante o ciclo de busca porque toda instruo transferida da memria para o registrador de instruo. Durante o ciclo de execuo, entretanto, a memria pode ou no ser usada dependendo do tipo de instruo que foi buscada. Uma instruo de referncia memria (IRM) aquela que usa a memria durante o ciclo de execuo. LDA e STA: LDA tem o mesmo significado de antes, a nica diferena esta no fato de termos de especificar um endereo maior de memria, por exemplo, LDA 2000H Uma outra notao que pode aparecer esta com relao ao cdigo de operao ou instruo, tambm chamado de mnemnico (LDA. no caso) e o seu operando (2000H). STA (store accumulator) um mnemnico para armazenar o acumulador Todas as instrues STA necessitam de um endereo. STA 8100H significa armazenar o contedo do acumulador no endereo 8100H da memria.

Para LDA: A Myyyy Para STA: Myyyy A 2. INSTRUES DE REGISTRADORES As instrues com referncia a memria so relativamente lentas porque necessitam de mais de um acesso memria durante o ciclo de instruo Alm disso, seguidamente queremos transferir dados de um registrador para outro sem ter de passar pela memria. MVI MVl (move immediate) o mnemnico para mova imediato Esta instruo diz para carregar um registrador indicado com o byte que especificado Por exemplo MVl A.37H , seu resultado ser: A 37H Para MVI: MVl A,byte MVI B,byte MVI C, byte MOV E o mnemnico de mova. Esta instruo diz para mover dados de um registrador para o outro. Por exemplo: MOV A,B A B ADD e SUB Operam conforme anteriormente, ou seja, ADD B Para SUB teremos SUB C A A C. A A + B. A byte B byte C byte

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

44

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

INR e DCR Muitas vezes desejamos incrementar ou decrementar o contedo de um dos registradores. INR o cdigo de operao para incrementar. DCR o cdigo de operao de decrementar. Por exemplo, INR A AA+1 DCR B B B - 1 3. INSTRUES DE JUMPs (Saltos) O SA-P-2 possui trs instrues de jump que podem alterar a seqncia de instrues dentro do programa, ou seja, em vez de buscar a prxima instruo da maneira usual (seqencial), o microprocessador pode saltar ou desviar para uma outra parte do programa Estes saltos podem ser condicionais (que dependem de uma dada condio) ou incondicionais (iro executar o salto independentemente de qualquer coisa). JMP (incondicional) Salta para o endereo especificado Por exemplo, JMP 3000H. 2000H 2001H 2002H 2003H 2004H

JMP 3000H . . . JMP endereo (em Hexa)

3000H 3001H 3002H CALL e RET (incondicional) Uma sub-rotina um programa armazenado na memria para um possvel uso num outro programa. Muitos microprocessadores tm sub-rotinas para clculo de senos, co-senos, tangentes, etc. CALL (chamar) um cdigo de operao para chamar sub-rotina. Toda instruo CALL deve incluir o endereo inicial da sub-rotina desejada bem como deve ser finalizada com a instruo RET (retornar). Caso voc esquea de colocar a instruo RET ao final de uma sub-rotina, o microcomputador no poder voltar ao ponto original e voc acabar obtendo entulho em seu programa. Uma observao importante que a instruo RET retorna a primeira instruo logo aps o CALL que lhe deu origem. Por exemplo, CALL 5000H. CALL endereo CALL 5000H

RET

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

45

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

JM (condicional) O SAP-2 tem dois flags o de sinal (S) e o zero (Z). Durante a execuo de algumas instrues estes flags sero setados ou zerados dependendo do que acontece com o contedo dos registradores em execuo. Se o contedo do registrador se tornar negativo, o flag de sinal ser setado, se no, ser zerado, ou seja: 0, se A >= 0 S= 1, se A < 0

JM e uma instruo de salto (jump if minus). O microprocessador saltar para o endereo designado somente se o flag de sinal estiver setado (S = 1). Se a condio de saltar no for verdadeira (S = 0), a seqncia de execuo das linhas de programa permanecer inalterada.

2000H 2001H 2002H 2003H 2004H

JM 3000H . . . JM endereo (em Hexa)

3000H 3001H 3002H JZ (condicional) De maneira similar instruo JM (jump if zero), aqui teremos um salto em funo do flag zero (Z). Este flag setado toda vez que o resultado do registrador em execuo se tornar zero durante a execuo de alguma instruo. 0, se A <> 0 Z= 1, se A = 0

Obs.: Os flags de Zero (Z) e de sinal (S) so afetados todas vez que se utiliza uma instruo que os afete, vide tabela de instruo. JNZ (condicional) JNZ significa saltar se no zero (jump if not zero). Ela manda o microprocessador saltar para o endereo designado apenas quando o flag de zero estiver zerado (Z = 0), quando o flag zero estiver setado (Z=1), no haver o salto. 4. INSTRUES DE LGICAS

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

46

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Um microprocessador pode fazer lgica tanto como aritmtica. A seguir, temos as instrues lgicas do SAP-2 CMA (Complementar o Acumulador) A execuo de uma CMA inverte ou nega cada um dos bits do acumulador produzindo o complemento de 1. ANA (AND Acumulador) Significa fazer uma operao AND com o Acumulador juntamente com o contedo de um registrador, o qual dever ser designado Por exemplo: A = 66H e B = F1H. uma operao ANA B resultar em A = 60H, ou seja: Inicialmente A = 1100 1100 B = 1111 0001 realizando uma operao AND Teremos A = 1100 0000 = 60H

ORA ( OR Acumulador) Significa fazer a operao lgica OR no acumulador juntamente com o registrador indicado Utilizando o mesmo exemplo da instruo ANA, aqui teremos A=FDH= 1111 1101 XRA (EXOR Acumulador) Realizar a operao EXOR com acumulador juntamente com o registrador especificado A=3DH=0011 1101 ANI (AND Imediato) O SAP-2 tambm apresenta instrues lgicas imediatas ANI manda fazer a operao AND entre o contedo do acumulador e o byte que sucede imediatamente o cdigo de operao. Por exemplo: A = 0101 1110, se realizarmos ANI C7H teremos A ... = 0101 1110 Byte = 1100 0111 A ... = 0100 0110 (resultado) ORI (OR Imediato) Ir resultar em uma operao OR entre o contedo do acumulador e o byte que foi especificado na instruo. Exemplo: ORI 5AH. XRI (EXOR Imediato) Produzir uma operao de EXOR entre o contedo do acumulador e o byte especificado no cdigo de operao. Exemplo: XRI 6FH. 5. OUTRAS INSTRUES Iremos estudar agora o restante das instrues do SAP-2. Como tais instrues no pertencem a nenhum grupo j estudado, elas foram reunidas aqui formando um grupo a parte. NOP

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

47

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Significa no operar. Durante a execuo de uma NOP, todos os estados T no fazem nada. Portanto, no ocorre nenhuma alterao nos registradores, ou seja, esta operao gera somente um retardo de tempo que ir ser determinado pelo clock do sistema. HLT Como j estudado no SAP-1, aqui ele tambm encerra o processamento dos dados. OUT Quando esta instruo usada, o contedo do acumulador carregado na porta de sada indicada. O seu formato : OUT byte Como h duas portas numeradas 3 e 4 (conforme diagrama de blocos), ns teremos de especificar qual ser usada. Exemplo OUT 03H, ir transferir o contedo do acumulador para a porta 3. IN uma instruo de entrada (input). Ela manda o computador transferir dados de uma porta designada para o acumulador. Como h duas portas, voc ter de indicar qual est sendo usada O formato da instruo IN byte Por exemplo: IN 02H, significa transferir os dados da porta 2 para o acumulador. RAL RAL uma instruo para relacionar o contedo do acumulador para a esquerda (rotate accumularot to left). Esta instruo deslocar todos os bits do acumulador para a esquerda alm de mover o bit mais significativo (MSB) para a posio do bit menos significativo (LSB). Por exemplo: A = 1011 0100, um RAL dar 0110 1001 1011 0100

RAR Esta instruo provocar uma rotao para direita no contedo do acumulador. Desta vez, os bits do acumulador se deslocam para a direita e o bit menos significativo (LSB) vai para a posio do bit mais significativo (MSB). Por exemplo, a instruo RAR dar A = 0101 1010, para o exemplo anterior. 1011 0100

CONJUNTO DE INSTRUES DO DAP-2

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

48

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Instruo

Cdigo Hexadecimal 80 81 Cdigo Hexadecimal A0 A1 E6 CD 2F 3D 05 0D 76 DB 3C 04 0C FA C3 C2 CA 3A 78

Estados - T

Flags Afetados S, Z S, Z Flags Afetados S, Z S, Z S, Z NENHUM NENHUM S, Z S, Z S, Z NENHUM NENHUM S, Z S, Z S, Z NENHUM NENHUM NENHUM NENHUM NENHUM NENHUM

Bytes

Efeito Principal

ADD B ADD C Instruo

4 4 Estados - T

1 1 Bytes

AA+B AA+C Efeito Principal

ANA B ANA C ANI byte CALL end CMA DCR A DCR B DCR C HLT IN byte INR A INR B INR C JM end JMP end JNZ end JZ end LDA end MOV A,B

4 4 7 18 4 4 4 4 5 10 4 4 4 10/7 10 10/7 10/7 13 4

1 1 2 3 1 1 1 1 1 2 1 1 1 3 3 3 3 3 1

A A and B A A and C A A and Byte Chama sub-rotina A A AA1 BB1 CC1 Fim Programa A byte AA+1 BB+1 CC+1 Salta se S=1 Salta Salta se Z = 0 Salta se Z = 1 A Myyyy AB
49

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

MOV A,C MOV B,A MOV B,C MOV C,A Instruo

79 47 41 4F Cdigo Hexadecimal 48 3E 06 0E 00 B0 B1 F6 D3 17 1F C9 32 90 91 A8 A9 EE

4 4 4 4 Estados - T

NENHUM NENHUM NENHUM NENHUM Flags Afetados NENHUM NENHUM NENHUM NENHUM NENHUM S, Z S, Z S, Z NENHUM NENHUM NENHUM NENHUM NENHUM S, Z S, Z S, Z S, Z S, Z

1 1 1 1 Bytes

AC BA BC CA Efeito Principal

MOV C,B MVI A, byte MVI B, byte MVI C,byte NOP ORA B ORA C ORI byte OUT byte RAL RAR RET STA end SUB B SUB C XRA B XRA C XRI byte

4 7 7 7 4 4 4 7 10 4 4 10 13 4 4 4 4 7

1 2 2 2 1 1 1 2 2 1 1 1 3 1 1 1 1 2

CB A byte B byte C byte Retardo A A or B A A or C A A or Byte Porta BYTE A A rotao esq A rotao dir Retorno ao CALL Myyyy A AAB AAC A A xor B A A xor C A A xor Byte

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

50

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Exerccio 1: Mostre o mnemnico (instrues) de um programa que carrega o acumulador com 49H, o registrador B com 4AH e o registrador C com 4BH. A seguir o programa armazena o contedo na posio 6285H. Exerccio 2: Converta o programa anterior para linguagem de mquina (cdigo hexadecimal) e preencha a tabela RAM iniciando o programa pelo endereo 2000H. Exerccio 3: Mostre os mnemnicos necessrios para somar os nmeros decimais 23 e 45. A resposta deve ser armazenada na posio 5600H de memria. Alm disso, a resposta incrementada de uma unidade deve ser armazenada no registrador C. Tambm dever ser mostrada a tabela RAM iniciando-se pelo endereo 3000H. Exerccio 4: Faa um programa para gerar um loop de repetio o qual dever gerar 3 giros e depois finalizar a rotina. Exerccio 5: Converta o programa do exerccio 4 para linguagem de mquina e preencha a tabela RAM iniciando pelo endereo 5000H. Exerccio 6: Os bits de um byte so numerados de 7 a 0, MSB e LSB, respectivamente. Mostre um programa que d entrada a um byte atravs do teclado hexadecimal e determine se o bit 0 de nvel alto ou baixo. Se for de nvel alto, o programa carrega no acumulador um Y em cdigo ASCII (89 em decimal). Caso contrrio, o programa carrega um N em cdigo ASCII (78 em decimal). A resposta deve ser enviada ao display. Exerccio 7: Preencha a tabela RAM iniciando pelo endereo A000H para o programa anterior. Exerccio 8: O SAP-2 tem uma freqncia de relgio de 1 MHz. Isto significa que cada estado T dura 1s. Quanto tempo necessrio para executar a sub-rotina abaixo? MVI C, 46H Again DCR C JNZ AGAIN NOP RET Exerccio 9: Para o programa abaixo, pergunta-se: a) quantas vezes a instruo DCR c executada (em decimal)? b) Quantas vezes o programa salta para LOOP? c) Como podemos alterar o programa para que o lao seja executado 210 vezes? MVI C, 78H LOOP DCR C JNZ LOOOP NOP HLT

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

51

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

Exerccio 10: Escreva um programa que multiplica o decimal 25 com 7 e armazena a resposta em 2000H. Exerccio 11: Escreva uma sub-rotina que produza um retardo de 50ms, aproximadamente (tolerncia de 5%), e monte a tabela RAM iniciando em 6000H. Para f = 1 MHz. Exerccio 12: Escreva um programa fonte que carrega o acumulador com o decimal 100, o registrador B com o decimal 150 e o registrador C com a soma dos registradores A e B.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

52

Centro Federal de Educao Tecnolgica de Minas Gerais. Varginha - MG - Curso Mecatrnica

BIBLIOGRAFIA
Tocci, R. Sistemas Digitais Princpios e Aplicaes. Rio de Janeiro: Prentice Hall, 1994. Malvino, A. Microcomputadores e Microprocessadores. So Paulo: McGraw-Hill do Brasil, 1985. Loureno, Antonio Carlos et alli. Circuitos Digitais. So Paulo: rica, 1996. Arajo, Celso de; Chui, William Soler. Praticando Eletrnica Digital. So Paulo: rica, 1997. Uyemura, John P. Sistemas Digitais: uma abordagem integrada. So Paulo: Thomson Pioneira, 2002. Monteiro, Mrio Antonio. Introduo Organizao de Computadores. Rio de Janeiro: LTC, 2000. Murdocca, Miles J ; Heuring, Vicent P Introduo Arquitetura de Computadores. So Paulo: Editora Campus. Machado, Francis B ; Maia Luiz Paulo - Arquitetura de Sistemas Operacionais. So Paulo: LTC. Malvino, A Microcomputadores e Microprocessadores So Paulo: McGraw-Hill do Brasil, 1985.

Disciplina: Sistemas Digitais Mecatrnica / Informtica Industrial - Professor: Paulo Henrique Cruz Pereira

53

Você também pode gostar