Aula Expositiva 03 2 2 5 Sntese de

  • Slides: 56
Download presentation
Aula Expositiva 03 2. 2. 5 Síntese de Circuitos Combinatórios (7 segmentos) 2. 2.

Aula Expositiva 03 2. 2. 5 Síntese de Circuitos Combinatórios (7 segmentos) 2. 2. 6 Multiplexadores e Demultiplexadores 2. 3 Circuitos Sequenciais 2. 3. 1 Flip-flops e registradores 2. 3. 2 Barramentos e Controle de Fluxo de Dados 2. 3. 3 Memórias 2. 3. 4 Acumuladores 2. 4 Processadores 2. 4. 1 Uma Calculadora 2. 4. 2 Osciladores ou Clocks DCC 001 Programação de Computadores 2 o Semestre de 2011 Prof. Osvaldo Carvalho DCC 001 - 2011 -2 1

Display Hexadecimal com Lâmpada de 7 Segmentos DCC 001 - 2011 -2 2

Display Hexadecimal com Lâmpada de 7 Segmentos DCC 001 - 2011 -2 2

Lâmpada de 7 Segmentos n Dispositivo simples e eficaz para visualização de algarismos e

Lâmpada de 7 Segmentos n Dispositivo simples e eficaz para visualização de algarismos e algumas letras n O Logisim oferece este componente, na biblioteca (Library) Input/Output n Cada pino acende ou apaga um dos sete segmentos n Um pino acende um ponto decimal, que não vamos usar DCC 001 - 2011 -2 3

O Circuito Sete. Segmentos. circ Center Upper Right Lower Left Lower Right DCC 001

O Circuito Sete. Segmentos. circ Center Upper Right Lower Left Lower Right DCC 001 - 2011 -2 4

Display Hexadecimal 4 bits de entrada DCC 001 - 2011 -2 Circuito queremos 5

Display Hexadecimal 4 bits de entrada DCC 001 - 2011 -2 Circuito queremos 5

Construção da Tabela da Verdade para Display Hexadecimal DCC 001 - 2011 -2 6

Construção da Tabela da Verdade para Display Hexadecimal DCC 001 - 2011 -2 6

O (sub-)Circuito 4 bits 2 hexa n Complicado? Pode ser, mas isso não é

O (sub-)Circuito 4 bits 2 hexa n Complicado? Pode ser, mas isso não é um problema: n n DCC 001 - 2011 -2 O circuito foi construído automaticamente, usando uma tabela da verdade Pode ser usado como um módulo, e seus detalhes internos não interessam 7

Multiplexadores, Demultiplexadores e Decodificadores DCC 001 - 2011 -2 8

Multiplexadores, Demultiplexadores e Decodificadores DCC 001 - 2011 -2 8

Controle de Fluxo de Dados n Além de operações aritméticas e comparações, circuitos lógicos

Controle de Fluxo de Dados n Além de operações aritméticas e comparações, circuitos lógicos são também utilizados para conduzir fluxos de dados n Multiplexador n n Demultiplexador n DCC 001 - 2011 -2 dirige uma única entre várias fontes de dados para um destino; a fonte é designada por um endereço dirige uma entrada de dados para um entre vários destinos; o destino é designado por um endereço 9

MUX / DMX Determina qual das entradas fica conectada à saída DCC 001 -

MUX / DMX Determina qual das entradas fica conectada à saída DCC 001 - 2011 -2 Determina qual das saídas fica conectada à entrada 10

Multiplexador 1 bit Circuito DCC 001 - 2011 -2 11

Multiplexador 1 bit Circuito DCC 001 - 2011 -2 11

Multiplexador 2 bits O binário a 1 a 0 designa qual entrada fica ligada

Multiplexador 2 bits O binário a 1 a 0 designa qual entrada fica ligada à saída Endereço 0 0 0 1 1 DCC 001 - 2011 -2 MUX 1 bit 12

Demultiplexador 1 bit Circuito DCC 001 - 2011 -2 13

Demultiplexador 1 bit Circuito DCC 001 - 2011 -2 13

Demultiplexador 2 bits DMX 1 bit DCC 001 - 2011 -2 Endereço 0 0

Demultiplexador 2 bits DMX 1 bit DCC 001 - 2011 -2 Endereço 0 0 0 1 1 14

Decodificador construído com Demultiplexador Entrada codificada em binário Constante 1 Saída decodificada DCC 001

Decodificador construído com Demultiplexador Entrada codificada em binário Constante 1 Saída decodificada DCC 001 - 2011 -2 15

Circuitos Sequenciais Flip-Flops e Registradores DCC 001 - 2011 -2 16

Circuitos Sequenciais Flip-Flops e Registradores DCC 001 - 2011 -2 16

Limitações de Circuitos Combinatórios n Sua saída depende exclusivamente dos valores aplicados às suas

Limitações de Circuitos Combinatórios n Sua saída depende exclusivamente dos valores aplicados às suas entradas n Com poucas variáveis de entrada, podem ser obtidos da tabela da verdade n Com arranjos em cascata, podem tratar de entradas da ordem de algumas dezenas de bits n Mas como fazer para somar, digamos, 50 inteiros de 32 bits cada um? DCC 001 - 2011 -2 17

Circuitos Sequenciais n São circuitos digitais cuja saída depende n dos sinais aplicados às

Circuitos Sequenciais n São circuitos digitais cuja saída depende n dos sinais aplicados às suas entradas n de valores armazenados em memórias n Possuem Memórias: n Flip-flops n Registradores n Memórias RAM n Podem realizar operações como a soma de 50 inteiros de 32 bits, realizando uma soma de cada vez, com resultados parciais acumulados em uma memória DCC 001 - 2011 -2 18

Flip-Flop tipo D Poderia ser “click”; funciona como um obturador de máquina fotográfica A

Flip-Flop tipo D Poderia ser “click”; funciona como um obturador de máquina fotográfica A entrada D é “fotografada” no instante em que o clock passa de 0 para 1 DCC 001 - 2011 -2 Bit Armazenado Complemento do Bit Armazenado Pino Auxiliar: Impõe 1 Pino Auxiliar: Impõe 0 19

Carta de Tempo FF tipo D Clock Entrada D Saída Q 1 0 1

Carta de Tempo FF tipo D Clock Entrada D Saída Q 1 0 1 0 Tempo DCC 001 - 2011 -2 20

Registrador 4 bits Clock único para os 4 FFs Saídas Entradas DCC 001 -

Registrador 4 bits Clock único para os 4 FFs Saídas Entradas DCC 001 - 2011 -2 21

Registradores Logisim - 1 n Encontram-se na biblioteca “Memory” n Permitem escolher a largura

Registradores Logisim - 1 n Encontram-se na biblioteca “Memory” n Permitem escolher a largura de dados (no. de bits armazenados) n Têm possibilidade de digitação direta do conteúdo armazenado n Também têm um pino de “clear” DCC 001 - 2011 -2 22

Registradores Logisim - 2 Registradores Valor armazenado no registrador, em hexadecimal Largura de dados

Registradores Logisim - 2 Registradores Valor armazenado no registrador, em hexadecimal Largura de dados DCC 001 - 2011 -2 23

Barramentos e Largura de Dados DCC 001 - 2011 -2 24

Barramentos e Largura de Dados DCC 001 - 2011 -2 24

Largura de Dados n Estes circuitos são equivalentes n No de baixo, entradas, saídas,

Largura de Dados n Estes circuitos são equivalentes n No de baixo, entradas, saídas, registradores e fios têm largura de bits (bit width) igual a 4 DCC 001 - 2011 -2 25

Ramificações (Splitters) n Arquivo Splitter. circ 5 bits 2 bits 8 bits 1 bit

Ramificações (Splitters) n Arquivo Splitter. circ 5 bits 2 bits 8 bits 1 bit DCC 001 - 2011 -2 26

Barramentos Toda saída ligada ao barramento passa por um “Controlled Buffer” A todo instante,

Barramentos Toda saída ligada ao barramento passa por um “Controlled Buffer” A todo instante, no máximo um controlled buffer pode ter o controle do barramento O dado no barramento é igual à saída com o controlled buffer ligado DCC 001 - 2011 -2 27

Controle de Fluxo de Dados n Os sinais de clock dos registradores e dos

Controle de Fluxo de Dados n Os sinais de clock dos registradores e dos controlled buffers podem ser usados para controlar o fluxo de dados entre componentes ligados a um barramento n Dados são transferidos de um ponto para outro conectando e desconectando esses sinais em uma sequência apropriada para a transferência desejada DCC 001 - 2011 -2 28

Controle de Fluxo de Dados Exemplo 1 DCC 001 - 2011 -2 29

Controle de Fluxo de Dados Exemplo 1 DCC 001 - 2011 -2 29

Controle de Fluxo de Dados Exemplo 2 DCC 001 - 2011 -2 30

Controle de Fluxo de Dados Exemplo 2 DCC 001 - 2011 -2 30

Controle de Fluxo de Dados Exemplo 3 DCC 001 - 2011 -2 31

Controle de Fluxo de Dados Exemplo 3 DCC 001 - 2011 -2 31

Memórias DCC 001 - 2011 -2 32

Memórias DCC 001 - 2011 -2 32

Memórias - 1 n O Logisim oferece memórias RAM (Random Memory) e ROM (Read

Memórias - 1 n O Logisim oferece memórias RAM (Random Memory) e ROM (Read Only Memory) Access n Uma memória é composta por muitas unidades de armazenamento chamadas palavras n Cada palavra possui um endereço que deve ser usado para ler ou escrever seu conteúdo n Facilidades do simulador (não existem em circuitos reais) para alteração de conteúdo, e mesmo para a leitura de um arquivo com todo o conteúdo da memória DCC 001 - 2011 -2 33

Memórias - 2 n Memórias têm como atributos n a largura de dados, que

Memórias - 2 n Memórias têm como atributos n a largura de dados, que é o número de bits em cada palavra n a largura de endereço, que é o número de bits que compõem um endereço n o tamanho, que é o número de palavras que a memória contém n No Logisim o tamanho de uma memória é determinado por sua largura de endereço: n com n bits de largura de endereço, temos 2 n palavras na memória DCC 001 - 2011 -2 34

Memórias – 3 Memory Address Register Entrada e também saída de dados Na subida,

Memórias – 3 Memory Address Register Entrada e também saída de dados Na subida, copia D na posição A Controle de posse do barramento DCC 001 - 2011 -2 35

RAM – Fluxo 1 DCC 001 - 2011 -2 36

RAM – Fluxo 1 DCC 001 - 2011 -2 36

RAM DCC 001 - 2011 -2 – Fluxo 2 37

RAM DCC 001 - 2011 -2 – Fluxo 2 37

Acumuladores e Loops DCC 001 - 2011 -2 38

Acumuladores e Loops DCC 001 - 2011 -2 38

Acumulador - 1 n Um registrador acumulador n Tem sua entrada alimentada por um

Acumulador - 1 n Um registrador acumulador n Tem sua entrada alimentada por um circuito aritmético, como um somador n Sua saída é também uma das entradas deste circuito aritmético n Este arranjo permite p. ex. somar 100 números, sequenciando as somas ao longo do tempo DCC 001 - 2011 -2 39

Acumulador – 2 Registrador Acumulador Circuito Soma (combinatório) DCC 001 - 2011 -2 40

Acumulador – 2 Registrador Acumulador Circuito Soma (combinatório) DCC 001 - 2011 -2 40

Acumulador – Fluxo 1 DCC 001 - 2011 -2 41

Acumulador – Fluxo 1 DCC 001 - 2011 -2 41

Acumulador – Fluxo 2 DCC 001 - 2011 -2 42

Acumulador – Fluxo 2 DCC 001 - 2011 -2 42

Uma Calculadora DCC 001 - 2011 -2 43

Uma Calculadora DCC 001 - 2011 -2 43

Uma Calculadora Registrador de Dados Luzes para acompanhamento Unidade Lógico. Aritmética DCC 001 -

Uma Calculadora Registrador de Dados Luzes para acompanhamento Unidade Lógico. Aritmética DCC 001 - 2011 -2 44

Uso da Calculadora n Problema: n Somar os conteúdos das posições 1 e 2

Uso da Calculadora n Problema: n Somar os conteúdos das posições 1 e 2 da memória, e colocar o resultado na posição 3 n Pode ser feito pelas etapas: 1. Carregar no acumulador o conteúdo da posição 1 da RAM 2. Somar ao acumulador o conteúdo da posição 2 da RAM 3. Armazenar o conteúdo do acumulador na posição 3 da memória DCC 001 - 2011 -2 45

Etapa 1 Entrada de Operando DCC 001 - 2011 -2 46

Etapa 1 Entrada de Operando DCC 001 - 2011 -2 46

Etapa 2 DCC 001 - 2011 -2 47

Etapa 2 DCC 001 - 2011 -2 47

Etapa 3 DCC 001 - 2011 -2 48

Etapa 3 DCC 001 - 2011 -2 48

Clocks DCC 001 - 2011 -2 49

Clocks DCC 001 - 2011 -2 49

De Calculadora a Processador n Um processador é um circuito similar à calculadora, mas

De Calculadora a Processador n Um processador é um circuito similar à calculadora, mas n A emissão de sinais de controle e a entrada de operandos é automatizada, e segue um programa n Vamos adicionar circuitos à calculadora para transformá-la em um processador DCC 001 - 2011 -2 50

Osciladores ou Clocks n O “propulsor” de qualquer circuito digital é um oscilador ou

Osciladores ou Clocks n O “propulsor” de qualquer circuito digital é um oscilador ou clock n Um clock é um circuito cuja saída oscila entre 0 e 1 com uma frequência conhecida n Um computador de 1 GHz (1 giga hertz) utiliza um clock cuja saída varia entre 0 e 1 um milhão de vezes por segundo n Deste sinal básico circuitos como registradores circulares obtêm sinais de tempo que são usados para “coreografar” o fluxo de dados de um circuito DCC 001 - 2011 -2 51

Clocks no Logisim DCC 001 - 2011 -2 52

Clocks no Logisim DCC 001 - 2011 -2 52

Registrador Circular DCC 001 - 2011 -2 53

Registrador Circular DCC 001 - 2011 -2 53

Registrador Circular Carta de Tempo t 2 t 1 t 0 Clock Reset DCC

Registrador Circular Carta de Tempo t 2 t 1 t 0 Clock Reset DCC 001 - 2011 -2 54

Resumo - 1 n (De)Multiplexadores são usados para conduzir dados em um circuito digital

Resumo - 1 n (De)Multiplexadores são usados para conduzir dados em um circuito digital n Um flip-flop armazena 1 bit n Registradores são conjuntos de flipflops n Memórias armazenam muitas palavras (conjuntos de bits) identificadas por um endereço DCC 001 - 2011 -2 55

Resumo - 2 n A informação desloca-se entre dois pontos de armazenamento seguindo controles

Resumo - 2 n A informação desloca-se entre dois pontos de armazenamento seguindo controles de fluxo de dados n A informação é transformada por circuitos combinatórios colocados entre dois pontos de armazenamento n Osciladores, divisores de frequência e circuitos correlatos permitem o controle no tempo do fluxo de dados DCC 001 - 2011 -2 56