Programa de Ensino 20201
Aprovado pelo Departamento em: 5-8-2020
- Identificação:
- Disciplina: INE5406 - Sistemas Digitais
- Carga horária: 90 horas-aula
Teóricas: 54
Práticas: 36
- Período:
1º semestre de 2020 até a presente data
- Curso(s):
- Ciências da Computação (208)
- Engenharia Eletrônica (235)
- Requisito(s):
- Ciências da Computação (208)
- EEL5105 - Circuitos e Técnicas Digitais
- Engenharia Eletrônica (235)
- EEL5105 - Circuitos e Técnicas Digitais
- Ementa:
- Máquinas seqüenciais síncronas (Mealy e Moore) e sua representação (diagramas de transição e descrição em HDL). Síntese de circuitos seqüenciais (minimização e codificação de estados). Mapeamento e alternativas de implementação de máquinas de estado ("hardwired", PLA, ROM e PLD). Estudos de casos: controladores de memória, de interrupção, de DMA. Simulação de sistemas digitais descritos em HDL no nível de transferência entre registradores. CPU vista como um sistema digital (datapath e unidade de controle). Unidade de controle de uma CPU simples ("hardwired" e microprogramada).
- Objetivo(s):
- Geral: Abordar aspectos da implementação física dos sistemas computacionais, complementando os assuntos abordados pela disciplina pré-requisito (EEL 5105 - Circuitos e Técnicas Digitais).
- Específicos:
- Introduzir o modelo clássico de sistema digital (datapath x controle), relacionando-o com a organização de processadores.
- Estudar os princípios do projeto de sistemas digitais no nível RT (transferência entre registradores).
- Familiarizar o aluno com a descrição de sistemas digitais no nível RT.
- Familiarizar o aluno com o uso de uma linguagem de descrição de hardware (HDL) e com o fluxo de projeto de sistemas digitais, visando sua implementação em FPGAs.
- Fornecer ao aluno uma visão geral dos elementos envolvidos na exploração do espaço de soluções no projeto de sistemas digitais.
- Conteúdo Programático:
- Formas de implementação de sistemas digitais. [3 horas-aula]
- Soluções masked.
- Componentes configuráveis (PLDs, SPLDs e FPGAs).
- Projeto de unidade lógico-aritmética (ULA). [6 horas-aula]
- Adição de números sem sinal.
- Adição de números com sinal.
- O somador paralelo ripple-carry.
- O subtrator.
- Somador-subtrator.
- Overflow.
- Funcionamento e características temporais de registradores.
- Máquinas seqüenciais síncronas. [21 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.
- Estudos de caso: controladores de memória, de interrupção e de DMA.
- Projeto de sistemas digitais no nível de transferência entre registradores (RT). [24 horas-aula]
- Componentes do nível 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 x desempenho.
- Uso de linguagem de descrição de hardware (HDL). [8 horas-aula]
- Estudo de caso (VHDL): histórico, construções da linguagem, comandos, processos.
- Projeto de sistemas digitais com ferramentas computacionais.
- Descrição de circuitos combinacionais com HDL, síntese e simulação para FPGAs.
- Descrição de circuitos seqüenciais com HDL. [12 horas-aula]
- Síntese para FPGAs e simulação.
- Estudos de caso.
- Descrição de sistemas digitais no nível RT com HDL. [16 horas-aula]
- Síntese para FPGAs e simulação.
- Exploração do espaço de soluções.
- Bibliografia Básica:
- HARRIS, David M.; HARRIS, Sarah L. Digital Design and Computer Architecture. Second edition. Waltham, MA, USA: Morgan Kaufmann Publishers, 2013. ISBN 978-0-12-394424-5 Disponível em https://www.sciencedirect.com/book/9780123944245/digital-design-and-computer-architecture
- PATTERSON, David A.; HENNESSY, John L. Organização e Projeto de Computadores: a interface hardware/software. Rio de Janeiro: Elsevier, 2005. ISBN 85-352-1521-2
- CHU, Pong P. RTL Hardware Design Using VHDL: coding for efficiency, portability, and scalability. Hoboken, N.J.: Wiley-Interscience, 2006. ISBN 0471720925 Recurso on-line disponível em: http://ieeexplore.ieee.org/xpl/bkabstractplus.jsp?bkn=5237648
- Bibliografia Complementar:
- VAHID, Frank. Sistemas Digitais: projeto, otimização e HDLs. Porto Alegre: Bookman, 2008. ISBN 978-85-7780-190-9
- BROWN, Stephen; VRANESIC, Zvonko. Fundamentals of Digital Logic with VHDL Design. Third Edition. Boston, MA.: McGraw-Hill, 2009. ISBN 978–0–07–352953–0
- PEDRONI, Volnei. Circuit Design with VHDL. Third edition. Cambridge, MA: MIT Press, 2020. ISBN 978-0-262-04264-2
- ASHENDEN, Peter J. The Designer’s Guide to VHDL.
Third Edition. Burlington, MA .: Morgan Kaufmann Publishers , 2008. ISBN: 978-0-12-088785-9
Disponível em: https://www.sciencedirect.com/book/9780120887859/the-designers-guide-to-vhdl