» RAM /abr./: RARELY ADEQUATE MEMORY, BECAUSE THE MORE MEMORY A COMPUTER HAS, THE FASTER IT CAN PRODUCE ERROR MESSAGES « Anonymous TC –

Slides:



Advertisements
Apresentações semelhantes
Flip-Flops e Dispositivos Correlatos
Advertisements

Contadores e Registradores
Eletrônica Digital Flip-Flops e Registradores de Deslocamento
Aritmética Computacional
Lógica booleana e implementação de funções booleanas
INTRODUÇÃO À LÓGICA DIGITAL
Miguel Gonçalves Wanzeller
Capítulo 2 - Introdução aos Circuitos Lógicos
Circuitos Lógicos e Organização de Computadores Capítulo 3 – Tecnologia de Implementação Ricardo Pannain
Circuitos Lógicos e Organização de Computadores Capítulo 4 – Implementações Otimizadas de Funções Lógicas Ricardo Pannain
SISTEMAS DIGITAIS FUNÇÕES E PORTAS LÓGICAS
Portas lógicas
Fig. 2 Pontos críticos na característica de transferência vo(vi) de um inversor genérico. Microelectronic Circuits - Sedra/Smith (resumo sobre circuitos.
Lógica Booleana A álgebra booleana é baseada totalmente na lógica. Desta forma, os circuitos lógicos executam expressões booleanas. As expressões booleanas.
Projecto de Hardware com FPGAs
VISÃO GERAL Profa. Fernanda Denardin Walker
Eletrônica Digital Contadores
Unidades de Execução e de Controle Sistemas Digitais.
Eletrônica Digital Funções e Portas Lógicas
Eletrônica Digital Álgebra de Boole e Simplicação
Processador Fluxo de Dados e Controle
Portas e Funções Lógicas, Tabelas Verdade e Circuitos Lógicos
Ivan Saraiva Silva Aula 1 - Álgebra Booleana
Circuitos Lógicos Sequenciais
FAFIMAN – Prof. Flávio Uber FAFIMAN – Departamento de Informática Curso: Ciência da Computação Professor: Flávio Rogério Uber Arquitetura e Organização.
MC542 Organização de Computadores Teoria e Prática
MC542 Organização de Computadores Teoria e Prática
MC542 Organização de Computadores Teoria e Prática
Soma de Produtos Soma de produtos é uma forma padrão de representação de funções Booleanas constituida pela aplicação da operação lógica OU sobre um conjunto.
Dispositivos de Lógica Programável
Projeto de Circuitos Sequenciais Síncronos
Circuitos Sequenciais
Uma chave é normalmente aberta e a outra normalmente fechada
Registradores de deslocamento (Shift Register)
Registradores de deslocamento (Shift Register)
Eletrônica Digital Circuitos Combinacionais: O seu estado (os valores) de todas as saídas depende apenas dos valores das entradas neste mesmo instante.
1ª aula - Álgebra de Boole
Eletrônica Digital Projeto de Circuitos Combinacionais
Circuitos Combinacionais Portas Lógicas
Organização e Arquitetura de Computadores
Arquitetura de Computadores
Minimização de Circuitos Lógicos
ÁLGEBRA DE CHAVEAMENTO
Curso Técnico em Informática Disciplina: Hardware PORTAS LÓGICAS
Índice SUMÁRIO Introdução ao projeto de lógica seqüencial.
Engenharia de Software para Computação Embarcada
Conceitos de Lógica Digital
Teoremas Booleanos e Simplificação Algébrica
Dispositivos Lógicos Programáveis (DLP) Ideia e Arquiteturas
Latches e Flip-Flops GSI008 – Sistemas Digitais
Circuitos Seqüenciais
Conceitos de Lógica Digital
Lógica Seqüêncial Bruno Silvério Costa.
Infra-Estrutura de Hardware
Tópicos em Arquitetura de Computadores João Angelo Martini Universidade Estadual de Maringá Departamento de Informática Mestrado em Ciência.
ELETRÔNICA DIGITAL II PORTAS LÓGICAS Prof.: Leo
Circuitos Lógicos e Álgebra de Boole
Circuitos Combinacionais Exercícios 2 POSCOMP e ENADE
Lógica Programável PTC2527 – EPUSP Guido Stolfi.
Sistemas Microprocessados e Microcontrolados
Aula 1: Introdução aos Sistemas Digitais
Eletrônica Digital II ELT013
Colégio da Imaculada Colégio da Imaculada Curso Técnico em Informática
Cap. V – Análise e Síntese de Circuitos Sequenciais Síncronos
Lei de Moore O número de transistores num circuito integrado duplica todos os 18 meses. Isto é extremamente relevante porque... as gates são feitas a partir.
Famílias Lógicas: CMOS, TTL – Tensões como Variáveis Lógicas
Descrevendo Circuitos Lógicos Capítulo 3 Parte I
Unidade 1 – Portas Lógicas Básicas – NOR, NAND, XOR e XNOR.
Instituto Federal do Ceará - IFCE Campus Aracati Disciplina: Introdução a Computação Chico Anysio Óleo sobre tela 60x40 cm.
Introdução aos Sistemas Digitais
Transcrição da apresentação:

» RAM /abr./: RARELY ADEQUATE MEMORY, BECAUSE THE MORE MEMORY A COMPUTER HAS, THE FASTER IT CAN PRODUCE ERROR MESSAGES « Anonymous TC – DEI, 2005/2006

Introdução aos Sistemas Digitais Paulo Marques pmarques@dei.uc.pt http://www.dei.uc.pt/~pmarques Tecnologia dos Computadores 2005/2006

Domínios da Informação Um termómetro marca a temperatura numa escala real, contínua 1 1 1 Um computador manipula informação discreta, em termos de zeros e uns 74.53 ANALÓGICO DIGITAL TC – DEI, 2005/2006

Domínios da Informação (2) Nos sistemas electrónicos, tipicamente a informação é representada em termos de tensão num determinado ponto do circuito Tensão (V) Tensão (V) +5V (H ou 1) 0V (L ou 0) Tempo (s) Tempo (s) ANALÓGICO DIGITAL TC – DEI, 2005/2006

Sistemas Digitais Existem diversas famílias de circuitos integrados para sistemas digitais. Duas das mais famosas são: TTL (Transistor-Transistor Logic) CMOS (Complementary Metal Oxide Semiconductor) Cada família possui um conjunto de tensões que reconhece como sendo 0 ou 1 1 1 2.4V Níveis TTL 2.0V 0.8V 0.4V Saída Entrada TC – DEI, 2005/2006

Gates (ou Portas) Uma gate representa uma função lógica básica que se pode a um conjunto de bits NOT AND OR XOR NAND NOR TC – DEI, 2005/2006

Gates NOT (Inversor) Expressão Booleana Diagrama Tabela Verdade 74LS04 Y 1 74LS04 TC – DEI, 2005/2006

Gates AND (“E”) Tabela Verdade Expressão Booleana Diagrama 74LS08 A B Y 1 74LS08 TC – DEI, 2005/2006

Gates OR (“Ou”) Tabela Verdade Expressão Booleana Diagrama 74LS32 A B Y 1 74LS32 TC – DEI, 2005/2006

Gates XOR (“Ou Exclusivo”) Tabela Verdade Expressão Booleana Diagrama A B Y 1 74LS86 TC – DEI, 2005/2006

Gates NAND e NOR Correspondem às gates AND e OR com um inversor à frente Tabela Verdade Expressão Booleana Diagrama A B Y 1 Tabela Verdade Expressão Booleana Diagrama A B Y 1 TC – DEI, 2005/2006

NAND e NOR As portas NAND e NOR são importantes pois podem ser ligadas para se comportar como todas as outras Portas Universais NAND COMO INVERSOR NAND COMO AND NAND COMO OR TC – DEI, 2005/2006

Tabela de Verdade Uma das ferramenta básica de trabalho de sistemas digitais Para todas as entradas possíveis, enumera quais as saídas que se quer obter A partir da tabela de verdade extrai-se a função a implementar. Tipicamente, na forma SOMA DE PRODUTOS. TC – DEI, 2005/2006

Exemplo: Circuito de Votação Dadas três entradas distintas, determinar a maioria O LED acende quando existem duas entradas activas TC – DEI, 2005/2006

Tabela de Verdade A B C Y 1 TC – DEI, 2005/2006

Tabela de Verdade A B C Y 1 TC – DEI, 2005/2006

Circuito Votador TC – DEI, 2005/2006

Algumas notas importantes É possível descrever um circuito em termos de: Entradas e Saídas Tabela de Verdade que mapeia as entradas na saída Caso não tenhamos um integrado com portas suficientes, pode-se sempre construir a partir de outras (e.g. Criar um AND de 3 portas a partir de um AND de 2 portas) A forma SOMA DE PRODUTOS exprime a funcionalidade do circuito. No entanto, a forma “soma de produtos” directa não está simplicada. Lógica de Bool, Teoremas de DeMorgan, Mapas de Karnaught, etc. É tipicamente possível simplificar as expressões. TC – DEI, 2005/2006

Algebra de Bool A + A = A AA = A A + 0 = A A0 = 0 A + 1 = 1 A1 = A Idempotência A + 0 = A A + 1 = 1 A0 = 0 A1 = A Elementos neutro e absorvente A + A = 1 AA = 0 Complementariadade A + AB = A + B AB + AB = B Teoremas de Simplificação A + AB = A A(B+C) = AB + AC Comutatividade e Distributividade AB = BA A+B = B+A (AB) = A + B (A+B) = AB Leis de DeMorgan TC – DEI, 2005/2006

Expressões simplificadas Y = ABC + ABC + ABC + ABC = BC(A+A) + ABC + ABC = BC + ABC + ABC = C(B+AB) + ABC = C(A+B) + ABC = AC + BC + ABC = AC + B(C+AC) = AC + B(A+C) = AC + AB + BC Nós não faremos isto porque os computadores já nos simplificam as expressões!!! TC – DEI, 2005/2006

Simplificado vs. Não Simplificado TC – DEI, 2005/2006

Lei de Moore O número de transistores num circuito integrado duplica todos os 18 meses. Isto é extremamente relevante porque... as gates são feitas a partir de transistores! TC – DEI, 2005/2006

Níveis de Integração SSI MSI LSI VLSI Número de Gates Exemplos 2-10 Small Scale Integration SSI 2-10 Lógica discreta (Portas AND, OR, etc.) Medium Scale Integration MSI 50-100 Somadores, Multiplicadores, Contadores, etc. Large Scale Integration LSI 100-10.000 Unidades Aritméticas e Lógicas, processadores simples, etc. Very Large Scale Integration VLSI > 10.000 Processadores, Memórias, Chipsets, etc. TC – DEI, 2005/2006

A placa que iremos usar nas práticas... Equivalente a 2.500 gates Equivalente a 70.000 gates PS: “Gate” não está relacionado com o Sr. Bill Gates  TC – DEI, 2005/2006

Primeiro Trabalho Prático TC – DEI, 2005/2006

PONTOS IMPORTANTES Nunca se ligam duas saídas juntas Excepto em alguns circuitos, isso é um curto-circuito Não se deixam entradas não utilizadas a flutuar (i.e. sem estarem ligadas) Um circulo numa entrada, ou um traço por cima do nome de um sinal quer dizer “activo a 0”  lógica negativa. Um triângulo numa entrada, quer dizer que é activo por flanco (i.e. um sinal de relógio) Em lógica negativa, “activo” quer dizer estar a 0 Por exemplo, o contador é limpo usando o sinal CLR, que é activo a zero. Quando o sinal está a 1, não tem efeito. Quando está a 0, faz com que o contador faça um reset. TC – DEI, 2005/2006

Quiz Como é que se pode alterar o circuito apresentado para que o número a seguir a 9 seja 0? TC – DEI, 2005/2006

Para saber mais... Digital Design with CPLD Applications and VHDL, by Robert K. DueckDelmar Learning, ISBN0766811603, June 2000 Capítulo 2 (todo) Capítulo 3 (3.1, 3.2, 3.3*, 3.4*) * Não ver em profundidade, ler apenas para ficar com uma noção do que está envolvido TC – DEI, 2005/2006

TC – DEI, 2005/2006

Sistemas Digitais Circuitos Sequenciais Paulo Marques pmarques@dei.uc.pt http://www.dei.uc.pt/~pmarques Tecnologia dos Computadores 2003/2004

O que faz este circuito? TC – DEI, 2005/2006

Colocando 1 em cima, 0 em baixo... ? 1 1 ? O ‘1’ surge em baixo! TC – DEI, 2005/2006

Colocando o ‘1’ de cima a ‘0’ 1 1 1 O ‘1’ mantem-se! TC – DEI, 2005/2006

ACABAMOS DE CRIAR UMA CÉLULA DE MEMÓRIA! TC – DEI, 2005/2006

Colocando ‘0’ em cima e ‘1’ em baixo... 1 1 A entrada de baixo passa a ‘0’, a de cima a ‘1’! TC – DEI, 2005/2006

Latch (ou báscula) SR S R Qn+1 Qn 1 ??? SET Q S Q R Q Q RESET Tabela de Excitação S R Qn+1 Qn 1 ??? Combinação proibida TC – DEI, 2005/2006

Dois tipos fundamentais de circuitos COMBINACIONAIS SEQUENCIAIS As saídas dependem unicamente das entradas As saídas dependem das entradas e do estado corrente da memória O sistema evolui ao longo do tempo através de um conjunto de estados TC – DEI, 2005/2006

Circuitos síncronos e assíncronos As básculas são assíncronas, levando a imensos problemas a nível de sincronização. Na prática, os sistemas sequenciais utilizam o conceito de relógio e células de memória síncronas. Existe um pulso de relógio que mantém o sistema sincronizado Só existem alterações à saída dos circuitos de memória na transição (ou flanco) de 0 para 1 1 TC – DEI, 2005/2006

Flip-Flop D A célula de memória básica! D Qn+1 1 D CLK Q Tabela de Excitação D Qn+1 1 Note-se que o 0 ou o 1 só surgem no próximo evento de clock! TC – DEI, 2005/2006

Registo de 4 bits TC – DEI, 2005/2006

Exemplo de um circuito síncrono Um contador de dois bits Dois bits => dois flip-flops (Q1 e Q2) O número de estados possíveis da máquina de estados reflecte-se directamente no número de flip-flops (i.e. células de memória) necessárias para a implementar 01 10 11 00 Máquina de Estados TC – DEI, 2005/2006

Contador Síncrono de 2 bits Tabela de Transição de Estado 01 10 11 00 Q1n Q2n Q1n+1 Q2n+1 1 Saídas Q Entradas D D CLK Q D1 = Q1Q2 + Q1Q2 D2 = Q1Q2 + Q1Q2 (simplificável...) TC – DEI, 2005/2006

Esquemático D1 = Q1Q2 + Q1Q2 D2 = Q1Q2 + Q1Q2 TC – DEI, 2005/2006

Simulação TC – DEI, 2005/2006

Exercício para casa Implemente um contador que conte até de 0 até 6, regressando a 0. Caso o contador “acorde” num número superior a 6, o valor seguinte deverá ser 0! Nível seguinte de dificuldade: Considere que existe uma entrada extra chamada UP/DOWN que especifica se o contador conta para cima ou para baixo. Implemente-o. Desenhe o circuito no Quartus II e simule-o. TC – DEI, 2005/2006

Porque é que o pôr-do-sol é vermelho? TC – DEI, 2005/2006

» Keep the design as simple as possible, but not simpler. « Albert Einstein TC – DEI, 2005/2006

Sistemas Digitais Lógica Programável Paulo Marques pmarques@dei.uc.pt http://www.dei.uc.pt/~pmarques Tecnologia dos Computadores 2003/2004

SSI/MSI  Programmable Logic Devices (Spartan-3: 1.000.000 gates, €12) (SSI, MSI: funções simples, ~1€) TC – DEI, 2005/2006

Circuitos programáveis Em vez de ter um conjunto de circuitos com funcionalidades pré-definidas... Custos elevados em manutenção de stocks Necessidade de utilizar muitos integrados para implementar uma certa funcionalidade Não existência de determinadas funções Baixa velocidade devido às interligações Utiliza-se um circuito genérico, programável! PLD  Programmable Logical Device PAL  Programmable Array Logic GAL  Generic Array Logic CPLD  Complex Programmable Logic Device FPGA  Field Programmable Gate Array TC – DEI, 2005/2006

Vejamos os dois circuitos anteriores... Circuito votador (não simplificado) TC – DEI, 2005/2006

Contador (não simplificado) TC – DEI, 2005/2006

Estrutura de uma PAL (simplificado) TC – DEI, 2005/2006

Implementando uma função... B C D ABCD ABCD BD + ABCD BD ABCD Fusível Intacto TC – DEI, 2005/2006

Programação de PLDs Uma PLD possui blocos que são configuráveis, queimando fusíveis internos (ou equivalente). Existem pinos genéricos de entrada e de saída Blocos AND-OR + Flip-flops + Buffers Interligações em blocos Utiliza-se uma linguagem de alto nível capaz de exprimir o design de um circuito electrónico E.g. PALASM, Abel, AHDL, Verilog, VHDL O programa é compilado, explicitando de que forma é que as gates presentes no circuito devem de ser configuradas TC – DEI, 2005/2006

PAL22v10 TC – DEI, 2005/2006

PAL22v10 TC – DEI, 2005/2006

O Estado da Arte Hoje em dia utilizam-se: CPLDs (Complex Programmable Logic Devices) FPGAs (Field Programmable Gate Arrays) Uma CPLD / FPGA é basicamente um conjunto enorme de PLDs interligadas por um sistema de interligação programável TC – DEI, 2005/2006

Estructura de uma CPLD (FPGA similar) TC – DEI, 2005/2006

Nas aulas práticas... Hardware: Software Objectivos Altera UP2 board MAX7000S CPLD (2.5k gates)  EPM7128SLC84-7 FLEX10K CPLD (70k gates)  EPF10K70RC240-4 Software Altera QuartusII 5.1 Web Edition Objectivos Introdução prática a circuitos digitais importantes Preparação para as cadeiras de Arquitectura de Computadores TC – DEI, 2005/2006

Altera UP2 2.5k + 70k gates disponíveis Relógio a 25MHz Programação via porto paralelo Iremos utilizar VHDL 4 botões (2 pré-ligados) 24 interruptores (8 pré-ligados) 16 LEDs 2 displays 7-segmentos de 2 dígitos (1 pré-ligado) Saída VGA Entrada rato/PS2 TC – DEI, 2005/2006

Altera Quartus II Design de sistemas digitais por “captura gráfica” Design de sistemas digitais por linguagem de programação VHDL + Verilog + AHDL Simulação do sistema Programação física dos dispositivos TC – DEI, 2005/2006

Para saber mais... Computer Organization and Architecture, Secção 3.6 Digital Design with CPLD Applications and VHDL Capítulo 8 (8.1, 8.2, 8.4, 8.6*, 8.7*) Capítulo 4 * Não ver em profundidade, ler apenas para ficar com uma noção do que está envolvido  ver as anotações que estão nas folhas do quiosque TC – DEI, 2005/2006