Programa de Ensino 20082
Aprovado pelo Departamento em: 25-6-2008
- Identificação:
- Disciplina: INE5348 - Lógica Programável
- Carga horária: 54 horas-aula
Teóricas: 36
Práticas: 18
- Período:
Início da oferta da disciplina até a presente data
- Curso(s):
- Ciências da Computação (208)
- Requisito(s):
- Ciências da Computação (208)
- INE5309 - Linguagem Assembly (b2)
- INE5366 - Arquitetura de Computadores I (b2)
- Ementa:
- Aspectos de micro eletrônica: portas de diodo; lógica programável PLA; máquinas sequenciais universais. Bit-Slice. Microprocessador utilizado como elenco de projeto em sistemas digitais. Tecnologias. Interfaces.
- Objetivo(s):
- Geral: Complementar o conteúdo da disciplina de Sistemas Digitais, apresentando aspectos práticos do projeto de sistemas digitais completos por meio de estudos de caso.
- Específicos:
- Apresentar detalhes da implementação de circutos seqüenciais.
- Familiarizar o aluno com a descrição de sistemas digitais em nível RTL.
- Familiarizar o aluno com a noção e o uso de linguagens de descrição de hardware (HDLs).
- Introduzir o uso de componentes programáveis atuais (FPGAs).
- Conteúdo Programático:
- Unidade Lógico-Aritmética (ULA) [6 horas-aula]
- Multiplexadores e decodificadores.
- Adição de números com e sem sinal (e overflow).
- O somador paralelo ripple-carry.
- O subtrator e o somador-subtrator.
- Funcionamento e características temporais de latches, flip-flops e registradores.
- Uso de Linguagem de Descrição de Hardware (HDL) [6 horas-aula]
- Estudo de caso (VHDL): histórico, construções da linguagem, comandos, processos em VHDL.
- Fluxo de projeto de sistemas digitais com ferramentas computacionais.
- Descrição de circuitos combinacionais com HDL, síntese e simulação para FPGAs.
- Máquinas Seqüenciais Síncronas: teoria [12 horas-aula]
- Sincronismo com sinal de relógio (período, freqüência, escorregamento).
- Modelos de Moore e de Mealy: estrutura, representações do comportamento (equações de estados e de saídas, tabelas de transição, diagramas de estados).
- Análise de circuitos seqüenciais síncronos.
- Minimização e codificação de estados. Exemplos.
- Mapeamento e alternativas de implementação de máquinas de estado: "hardwired", PLA, ROM e PLD.
- Máquinas Seqüenciais Síncronas: descrição em HDL, síntese e simulação. [9 horas-aula]
- Síntese para FPGAs e simulação.
- Estudos de caso.
- Formas de Implementação de Sistemas Digitais. [3 horas-aula]
- Soluções masked.
- Componentes configuráveis (PLDs, SPLDs e FPGAs).
- Modelo Clássico de Sistemas Digitais [9 horas-aula]
- Componentes do nível de transferência entre registradores (RT).
- O modelo clássico de sistema digital: bloco operativo x bloco de controle (datapath x controle).
- Estudos de caso e exploração do espaço de soluções: análise de custo e de desempenho.
- Exemplos de sistemas digitais: descrição em HDL, síntese e simulação [9 horas-aula]
- Síntese para FPGAs e simulação.
- Exploração do espaço de soluções.
- Bibliografia Básica:
- KATZ, Randy; BORRIELLO, Gaetano. Contemporary Logic Design. 2nd Edition. Upper Saddle River, NJ: Prentice Hall, 2005. 590p.
- Bibliografia Complementar:
- ASHEDEN, Peter J. The Student’s Guide to VHDL. San Francisco, California: Morgan Kaufmann Publishers, 1998. 312p.
- BROWN, Stephen; VRANESIC, Zvonko. Fundamentals of Digital Logic with VHDL Design. 2nd Edition. New York: McGraw Hill, 2004. 939p.
- DEWEY, Allen. Analysis and Design of Digital Systems with VHDL. Boston: International Thomson Publishing, 1997. 682p.
- CARRO, Luigi. Projeto e Prototipação de Sistemas Digitais. Porto Alegre: Editora da Universidade (UFRGS), 2001.
- PEDRONI, Volnei. Circuit Design with VHDL. Cambridge, MA: MIT Press, 2004. 363p.
- YALAMANCHILI, Sudhakar. Introductory VHDL: From simulation to synthesis. Upper Saddle River: Prentice Hall, 2001. 401p.
- UYEMURA, John P. Sistemas Digitais: uma abordagem integrada. São Paulo: Pioneira Thomson Learning, 2002. 433p.