Mudanças entre as edições de "DLP2-EngTel (página)"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 271: Linha 271:
 
{{collapse bottom}}
 
{{collapse bottom}}
  
{{collapse top |expand = true| AE3 - Circuitos Sequencias (prazo 04/11/2016 23h59)}}
+
{{collapse top | AE3 - Circuitos Sequencias (prazo 04/11/2016 23h59)}}
 
* Formar equipes com 2 ou 3 alunos. A formação das equipes deve ser informado no [https://www.facebook.com/groups/DLP29007/ Facebook] de DLP29007. Cada equipe deverá trabalhar com um dos temas de 1 a 6. (todos os contadores devem ser genéricos para N bits)
 
* Formar equipes com 2 ou 3 alunos. A formação das equipes deve ser informado no [https://www.facebook.com/groups/DLP29007/ Facebook] de DLP29007. Cada equipe deverá trabalhar com um dos temas de 1 a 6. (todos os contadores devem ser genéricos para N bits)
  
Linha 320: Linha 320:
 
* Envie o artigo em pdf para (<tt>moecke AT ifsc.edu.br</tt> E <tt>arliones.hoeller AT ifsc.edu.br</tt>), com o ASSUNTO: DLP29007 - AE3 - Circuitos Sequencias.
 
* Envie o artigo em pdf para (<tt>moecke AT ifsc.edu.br</tt> E <tt>arliones.hoeller AT ifsc.edu.br</tt>), com o ASSUNTO: DLP29007 - AE3 - Circuitos Sequencias.
 
{{collapse bottom}}
 
{{collapse bottom}}
 +
 +
{{collapse top |expand = true| AE4 - FSM/RTM (prazo 14/12/2016)}}
 +
 +
Nesta atividade, cada dupla entregará uma implementação do jogo QuickFinger (explicado em aula).
 +
Além da implementação padrão, cada dupla realizará uma modificação diferente (lista ao final, por dupla).
 +
Um relatório final em forma de artigo PDF contendo os itens abaixo deve ser entregue:
 +
* Introdução descrevendo os objetivos do trabalho e apresentando uma visão geral do jogo;
 +
* Descrição da implementação padrão e da modificação do jogo contendo, para cada um:
 +
** Algoritmo em pseudo-código que resolve o problema;
 +
** Diagrama de máquina de estados com datapath (FSMD ou ASMD - preferível ASMD);
 +
** Diagrama de blocos do sistema;
 +
** RTL do circuito gerado por sua implementação;
 +
** Relatório de eficiência do circuito (Fmax, LE/LUT, registradores, etc);
 +
* Conclusão sugerindo pontos positivos e negativos de sua implementação e relatando possíveis melhorias.
 +
* '''Observação:''' Não incluir código-fonte no artigo;
 +
* Deve ser entregue também o .qar do projeto.
 +
* Envie o trabalho para (<tt>moecke AT ifsc.edu.br</tt> E <tt>arliones.hoeller AT ifsc.edu.br</tt>), com o ASSUNTO: DLP29007 - AE4.
 +
 +
Modificações para cada grupo:
 +
* Iago, Marcos:
 +
* André, Helen:
 +
* Katharine, Kristine:
 +
* Gabriel, Maria:
 +
* Fernando, João:
 +
* Gustavo, Tamara:
 +
 +
{{collapse bottom}}
 +
  
 
;JÁ ENCERRADAS:
 
;JÁ ENCERRADAS:

Edição das 12h38min de 7 de dezembro de 2016

Dispositivos Lógicos Programáveis II

Material de aula

Registro on-line das aulas

Unidade 1

Aula 1 (11 Ago) - Arliones
Ver pag. 1 a 22 de [1]
Ver pag. 3 a 48 de [2]
Aula 2 (15 Ago) - Marcos
  • Processo de Síntese do código VDHL
  • Limitações dos softwares de EDA: Computabilidade, Complexidade Computacional
  • Realização dos operadores VHDL: simplificações para operando constante
  • Realização dos tipos de dados: Alta impedância 'Z' -> buffer tri-state;
Ver pag. 125 a 137 de [1]
Aula 3 (17 Ago) - Marcos
  • Processo de Síntese do código VDHL: Analise das temporizações:
  • Realização dos tipos de dados: uso de don't care '-'
  • Tempos de propagação, caminho crítico, caminho falso,
  • Síntese com restrições temporais,
  • Perigos/Armadilhas (Glitches estáticos e dinâmicos, circuitos sensíveis ao atraso)
Ver pag. 137 a 162 de [1]
Ver também os slides Unidade 2: Processo de Síntese do código VDHL

Unidade 2

Aula 4 (24 Ago) - Arliones
  • Processadores embarcados e depuração em FPGA
  • Configuração e geração de processadores.
Ver Laboratórios com Altera NIOS2.
Aula 5 (29 Ago) - Arliones
  • Desenvolvimento de software embarcado.
Ver Laboratórios com Altera NIOS2.
Aula 6 (31 Ago) - Arliones
  • Integração de processadores com lógica externa.
Aula interrompida devido a falta de luz.
Ver Laboratórios com Altera NIOS2.
Aula 7 (10 Set) - Arliones
  • Integração de processadores com lógica externa.
Aula interrompida devido a falta de luz.
Ver Laboratórios com Altera NIOS2.
Aula 8 (12 Set) - Arliones
  • Depuração via analisador lógico embarcado.
Ver Configuração e uso do Signal Tap.
Aula 9 (14 Set) - Arliones
  • Medição de tempo de execução com performance counters.
Ver Laboratórios com Altera NIOS2.

Unidade 3

Aula 10 (21 Set) - Marcos
  • Eficiência de Circuitos Combinacionais
  • Compartilhamento de Operadores (Ex: 7.2.1, 7.2.2, 7.2.3, 7.2.4)
  • Compartilhamento de funcionalidades (Ex: L7.1, L7.2, L7.3, L7.4, L7.5)
  • Análise da área (Elementos Lógicos) x tempo de propagação.
Ver pag. 163 a 175 de [1]
Aula 11 (26 Set) - Marcos
  • Eficiência de Circuitos Combinacionais
  • Questões relacionadas com o Leiaute do circuito
  • Exemplos de circuitos XOR; (Ex:L7.15 - 7.18 )
  • Exemplos de Deslocador (shifter) (Ex: )
  • Exemplos de Multiplicadores (Ex: )
Ver pag. 173 a 211 de [1]
Ver também os slides Unidade 3: Eficiência de Circuitos Combinacionais
Aula 12 (28 Set) - Marcos
  • Eficiência de Circuitos Combinacionais
  • Comparação de circuitos somadores de M entradas de N bits. Implementação em (árvore x cadeia). (Integer x Signed)
  • Exercício: Verificar os tempos de propagação do caminho crítico nos somadores implementados usando FPGA da familia Ciclone e Ciclone IV E.
  • Usando o LogicLock, selecione uma região qualquer do chip para implementar o circuito, e faça a compilação do circuito.
  • Anote em um tabela o número de Elementos lógicos (Totais|Normais|Aritméticos)
  • Anote o tempo de propagação dos 3 primeiros caminhos críticos, indicando a origem e destino de cada um deles. Desconsidere os dois primeiros e dois últimos tempos indicados no Path Report, pois são referentes a entrada do sinal e saída dos sinais no FPGA.
  • Compare seus resultados com o dos colegas que escolheram outras regiões do chip.

Unidade 4

Aula 13 (05 Out) - Marcos
  • Eficiência de Circuitos Sequenciais
  • Tipos de Sincronismo em circuitos (globalmente síncronos, localmente síncronos, assíncronos)
  • Circuitos síncronos (Modelo, vantagens e tipos)
  • Descrição dos elementos básicos de memória (Latch D, Flip Flop D, Registros)
  • Projetos síncronos.
Modelo em VHDL de projeto síncrono
-- Declaração das bibliotecas e pacotes a serem utilizados
library ieee;
use ieee.std_logic_1164.all;

entity nome_entidade is
-- Declaração dos valores GENERIC
   generic(
      ___: Natural := ___;
      ...
   );
-- Declaração das portas de entradas e saída
   port(
-- Declaração dos sinais de clock e reset assincrono
      clk, reset: in std_logic;
-- Declaração das demais portas de entradas isoladas e barramentos
      ___: in std_logic;
      ___: in std_logic_vector(__ downto 0);
      ...

-- Declaração das portas de saídas isoladas e barramentos
      ___: out std_logic;
      ___: out std_logic_vector(__ downto 0);
      ...
   );
end entity;

architecture nome_architetura of nome_entidade is
-- Declaração das entradas e saídas dos registros
   signal ___reg: std_logic_vector(___ downto 0);
   signal ___next: std_logic_vector(___ downto 0);
-- Declaração dos demais sinais internos
   ...

begin
-- Descrição da lógica sequencial registro
   process(clk,reset)
   begin
      if (reset='1') then
         ___reg <= (others=>'0');
         ...
      elsif (clk'event and clk='1') then
         ___reg <= ___next;
         ...
      end if;
   end process;

-- Descrição da lógica combinacional de próximo estado
   ...
   ...
-- Descrição da lógica combinacional dos circuitos de saída
   ...
   ...

end architecture;
  • Exemplo de FF D com enable;
  • Exemplo de FF T;
  • Exemplos de registrador de deslocamento;
  • Exemplos de contadores;
Ver pag. 213 a 239 de [1]
Aula 14 (10 Out) - Marcos
  • Eficiência de Circuitos Sequenciais
  • Analise Temporal
  • Violação do tempo de Setup; Frequencia máxima do clock;
  • Temporização relacionadas as saídas.
  • Porque não usar VARIABLE em circuitos sequenciais.
Ver pag. 239 a 255 de [1]
Ver também os slides Unidade 4: Eficiência de Circuitos Sequenciais


Aula 15 (24 Out) - Marcos
  • Eficiência de Circuitos Sequenciais
  • Praticas deficientes de projeto e soluções:
  • Mal uso do RESET assincrono => Use CLEAR sincrono;
  --Em um contador de 0 a 9
  r_next <= (others => '0') when r_reg = 9 else r_reg + 1;
  • Mal uso de portas no CLOCK => Use o ENABLE do FF;
  --Em um contador
  r_next <= r_reg + 1 when ena = '1' else r_reg;
  • Mal uso de CLOCK derivados => Use o ENABLE para habilitar o CLOCK;
  • Contadores
  • Contador Gray
  • Contador em Anel
  • Contador Binário
  • Contador Decimal
  • LFSR (Linear Feedback Shift Register) [1]

Notas de aula

Estas notas de aula são baseadas nas dispobilizadas pelo Prof. Pong P. Chu em [2].

Roteiros

Avaliação

Neste tópico serão listadas as Atividades Práticas realizadas ao longo do semestre. Para cada uma dessas atividades o aluno/equipe que não entrega-la no prazo preestabelecido, poderá entregar a atividade com: uma semana de atraso obtendo no máximo o valor 8; duas semanas de atraso obtendo no máximo o valor 6; três semanas de atraso obtendo no máximo o valor 4;

Os critérios de avaliação estão descritos no Plano de Ensino.

PARA ENTREGAR

AE1 - Projeto de SoC baseado em NIOS2 (prazo 05/10/2016)

Nesta atividade, você vai integrar os desenvolvimentos realizados nos laboratórios envolvendo NIOS2 e SignalTap. As etapas a serem executadas são as seguintes:

  • Crie um processador NIOS2 com três on-chip FIFOs: duas saídas de 32 bits e uma entrada de X bits (sendo X a saída adequada à operação);
  • Conecte a este processador, via FIFOs, um componente externo (ver relação de componentes abaixo);
  • Implemente uma aplicação (software) que gere valores aleatórios para as saídas e leia o resultado da operação feita em hardware na entrada;
  • Utilize o SignalTap para verificar quantos ciclos de clock são necessários para completar uma operação no hardware;
  • Implemente a operação equivalente do módulo de hardware em software;
  • Utilize um timer para medir o tempo da operação em software;
  • Relate e discuta seus resultados, apresentando o esquema dos seus testes, os códigos-fontes das aplicações, em formato de artigo e com 6 páginas no máximo.
  • Envie o artigo em pdf para (moecke AT ifsc.edu.br E arliones.hoeller AT ifsc.edu.br), com o ASSUNTO: DLP29007 - AE1.

Módulos para serem usados por cada grupo:

  • Multiplicador => Iago, Marcos
  • XOR => André, Helen
  • Distância (sqrt(a^2 + b^2)) => Katharine, Kristine
  • Soma => Gabriel, Maria
  • Divisão => Fernando, João
  • Módulo => Gustavo, Tamara
  • Observação: para alguns circuitos pode ser necessário utilizar um clock mais lento. Para isto, utilize um LPM_COUNTER criado pela ferramenta MegaWizard, como fizemos em aula para gerar alguns componentes.
AE2 - Circuitos Combinacionais (prazo 19/10/2016 as 23h59)
  • Formar equipes com 2 alunos. A formação das equipes deve ser informado no Facebook de DLP29007. Cada equipe deverá trabalhar com um dos temas de 1 a 6.
TEMA 1 - Implementar o circuito "barrel shifter" (Listing 7.13/7.14, 7.29). pag. 178-180; 192-196
Realize os testes com 8 e 16 bits de entrada.
TEMA 2 - Implementar o circuito "XOR" e "XOR vector" (Listing 7.17, 7.18, 7.21, 7.22, 14.12). pag. 180-187; 514-515.
Realize os testes com 8 e 16 bits de entrada.
TEMA 3 - Implementar os circuitos codificadores de prioridade (Listing 7.24, 7.25 + 7.26). pag. 187-192;
Realize os testes com 16 entradas 4 bits de saída, 32 entradas 5 bits de saída.
TEMA 4 - Implementar os circuitos incrementadores de código Gray (Listing 7.30, 7.31). pag. 196-199
Realize os testes com 4 e 5 bits. para L.7.30, e 4, 5 e 8 bits para L.31.
Transforme ambos circuitos em decrementadores de código Gray.
TEMA 5 - Implementar os circuitos para cálculo da distância de Hamming (Listing 7.36, 7.37) pag. 206-208
Realize os testes com 8 bits de entrada e com 16 bits.
TEMA 6 - Implementar o circuito multiplicador baseado em somas (Listing 7.34, 7.35). pag. 203-206
Realize os testes com entradas de 8 bits e saída 16 bits de saída, e com entradas de 12 bits e saída 24 bits de saída.
Compare os resultados com um multiplicador baseado no operador de multiplicação "*" do VHDL.
  • Compare o hardware necessário para implementar os circuitos utilizando a famílias de FPGA [CYCLONE]. Utilize sempre o menor Device que possua os elementos e pinos suficientes para o circuito proposto.
  • Realize a simulação funcional de cada circuito usando sempre o mesmo padrão de sinais de entrada.
  • Para cada circuito anote os resultados de: número de pinos, número de elementos lógicos/ALUT (indicando os Normais | Aritméticos), atraso de propagação, caminho crítico.
Esses dados estão disponíveis nos seguintes relatórios: (Fitter > Resource Section > Resource Usage), (TimeQuest Timing Analyser > Datasheet Report > Propagation Delay)
  • No caso do atraso de propagação, verifique para o caminho crítico o atraso de propagação interno, anote e subtraia os tempos dos pinos de I/O, os tempos de propagação do sinal até o primeiro elemento lógico e o tempo de propagação após o último elemento lógico.
Ver:Medição de tempos de propagação em circuitos combinacionais
  • Para o circuito com maior número de bits, insira restrições temporais para obter um circuito com menor atraso no caminho crítico. Neste caso procure reduzir gradualmente a tempo máximo de propagação "tp" até atingir o menor valor.
set_max_delay -from [get_ports *] -to [get_ports *]  tp
  • Escreva um relatório técnico na forma de artigo com 4 a 8 paginas A4. O relatório além das tabelas com os dados, deverá conter as figuras dos circuitos RTL que expliquem as diferenças entre os circuitos, simulações funcionais e uma análise dos resultados obtidos. O arquivo com o QAR do projeto deve ser também enviado.
  • Para a geração de documentação/relatórios técnicos/artigos, está disponibilizada a plataforma Sharelatex do IFSC-CLOUD. Utilize preferencialmente o modelo de artigo no padrão ABNT.
  • Envie o artigo em pdf para (moecke AT ifsc.edu.br E arliones.hoeller AT ifsc.edu.br), com o ASSUNTO: DLP29007 - AE2 - Projeto de Circuitos Combinacionais.
AE3 - Circuitos Sequencias (prazo 04/11/2016 23h59)
  • Formar equipes com 2 ou 3 alunos. A formação das equipes deve ser informado no Facebook de DLP29007. Cada equipe deverá trabalhar com um dos temas de 1 a 6. (todos os contadores devem ser genéricos para N bits)
TEMA 1 - Estudar e implementar o Contador Gray
  • Versão 1 (Listing 9.7). pag. 265
  • Versão 2 [3]
  • Versão 3 [4]
  • Versão 4 Modifique a versão 3, separando claramente a lógica combinacional de next-state, combinacional de output, e register.
TEMA 2 - Estudar e implementar o Contador em Anel
  • Versão 1 (Listing 9.8). pag. 267
  • Versão 2 (Listing 9.9). pag. 268
  • Versão 3 [5] [6]
  • Versão 4 Modifique a versão 3, separando claramente a lógica combinacional de next-state, combinacional de output, e register.
TEMA 3 - Estudar e implementar o Contador Decimal e Contador One Hot
  • Versão 1 (Listing 9.12). pag. 273
  • Versão 2 (Listing 9.13). pag. 274
  • Versão 3 Contador One Hot [7].
  • Versão 4 Modifique a versão 3, separando claramente a lógica combinacional de next-state, combinacional de output, e register.
TEMA 4 - Estudar e implementar o Contador LFSR (Linear Feedback Shift Register)
  • Versão 1 (Listing 9.10). pag. 270
  • Versão 2 (Listing 9.11). pag. 272
  • Versão 3 [8]
  • Versão 4 Modifique a versão 3, separando claramente a lógica combinacional de next-state, combinacional de output, e register.
TEMA 5 - Estudar e implementar o PWM
  • Versão 1 (Listing 9.14). pag. 275
  • Versão 2 [9]
  • Versão 3 [10]
  • Versão 4 Modifique a versão 3, separando claramente a lógica combinacional de next-state, combinacional de output, e register.
TEMA 6 - Estudar e implementar relógio HH:MM:SS, considerando o clock de entrada de 50 MHz
  • Versão 1 (alterar a Listing 9.5), página 263 para incluir a hora
  • Versão 2 (alterar a Listing 9.6), página 265 para incluir a hora
  • Versão 3 Implementar o Digital Clock com SSDs da seção 12.5 de [3], pag 337-340, removendo o ajuste de segundos, minutos e horas.
  • Versão 4 Modifique a versão 3, separando claramente a lógica combinacional de next-state, combinacional de output, e register.
  • Para cada circuito indicado torne o código genérico para N bits e teste para 4 e 32 bits.
  • Teste cada uma das arquiteturas e anote em uma tabela todos os resultados de: número de pinos, número de elementos lógicos/ALUT (indicando os Normais | Aritméticos), Frequência Máxima.
Esses dados estão disponíveis nos seguintes relatórios: (Fitter > Resource Section > Resource Usage), (TimeQuest Timing Analyser > Datasheet Report > FMax)
  • Insira restrições temporais para obter um circuito com maior Frequência Máxima.
create_clock -name CLKXXXMHz -period XXXMHz [get_ports {nome_do_sinal_de_clock}]
  • Realize a simulação funcional de cada circuito com 4 bits.
  • Escreva um relatório técnico na forma de artigo com 2 a 4 paginas A4. O relatório além das tabelas com os dados, deverá conter as figuras dos circuitos RTL para 4 bits, simulações funcionais e uma análise textual dos resultados obtidos. O arquivo com o QAR do projeto deve ser também enviado.
  • Para a geração de documentação/relatórios técnicos/artigos, está disponibilizada a plataforma Sharelatex do IFSC-CLOUD. Utilize preferencialmente o modelo de artigo no padrão ABNT.
  • Envie o artigo em pdf para (moecke AT ifsc.edu.br E arliones.hoeller AT ifsc.edu.br), com o ASSUNTO: DLP29007 - AE3 - Circuitos Sequencias.
AE4 - FSM/RTM (prazo 14/12/2016)

Nesta atividade, cada dupla entregará uma implementação do jogo QuickFinger (explicado em aula). Além da implementação padrão, cada dupla realizará uma modificação diferente (lista ao final, por dupla). Um relatório final em forma de artigo PDF contendo os itens abaixo deve ser entregue:

  • Introdução descrevendo os objetivos do trabalho e apresentando uma visão geral do jogo;
  • Descrição da implementação padrão e da modificação do jogo contendo, para cada um:
    • Algoritmo em pseudo-código que resolve o problema;
    • Diagrama de máquina de estados com datapath (FSMD ou ASMD - preferível ASMD);
    • Diagrama de blocos do sistema;
    • RTL do circuito gerado por sua implementação;
    • Relatório de eficiência do circuito (Fmax, LE/LUT, registradores, etc);
  • Conclusão sugerindo pontos positivos e negativos de sua implementação e relatando possíveis melhorias.
  • Observação: Não incluir código-fonte no artigo;
  • Deve ser entregue também o .qar do projeto.
  • Envie o trabalho para (moecke AT ifsc.edu.br E arliones.hoeller AT ifsc.edu.br), com o ASSUNTO: DLP29007 - AE4.

Modificações para cada grupo:

  • Iago, Marcos:
  • André, Helen:
  • Katharine, Kristine:
  • Gabriel, Maria:
  • Fernando, João:
  • Gustavo, Tamara:


JÁ ENCERRADAS
ESTUDOS SEM ENTREGA DE DOCUMENTAÇÃO
AL1 - Tempo de propagação em circuitos combinacionais

Recursos de Laboratório

Para uso fora do IFSC dos recursos computacionais com licença educacional, o IFSC disponibiliza para seus alunos o IFSC-CLOUD. Atualmente a forma mais eficiente de acesso é através do Cliente X2GO. O procedimento de instalação/ configuração e uso do Quartus/Modelsim/QSIM está descrito em Acesso ao IFSC-CLOUD#Cliente X2GO (recomendado).

Para a geração de documentação/relatórios técnicos/artigos, está disponibilizada a plataforma Sharelatex do IFSC-CLOUD. Utilize preferencialmente o modelo de artigo no padrão ABNT.

Para estudo de FPGAs o Laboratório de Programação dispõe de kits Mercúrio IV da Macnica-DHW e também DE2-115 da Terasic. Veja como utilizar estes kits em Preparando para gravar o circuito lógico no FPGA, one além de acesso aos manuais dos fabricantes, você tem acesso a uma descrição resumida da pinagem mais utilizada desses kits.

Para depurar seu circuito em uma FPGA de verdade, pode ser interessante utilizar o SignalTapII da Altera, que permite realizar análise lógica dos sinais no seu circuito. Para iniciar o uso da ferramenta, siga este tutorial.

Para determinar os caminhos críticos do projeto (ou os tempos de propagação entre quaisquer nós de um projeto, utilize a Análise de Caminho Crítico com Qaurtus II.

Referências Bibliográficas:

  1. 1,0 1,1 1,2 1,3 1,4 1,5 1,6 Pong P. Chu, RTL Hardware Design Using VHDL: Coding for Efficiency, Portability, and Scalability. Wiley-IEEE Press, Hoboken, 2006, ISBN 0471720925
  2. David Money Harris and Sarah L. Harris, Digital Design and Computer Architecture, Morgan Kaufmann, Burlington, 2007, ISBN 9780123704979, http://dx.doi.org/10.1016/B978-012370497-9/50002-0
  3. PEDRONI, Volnei A. Circuit Design and Simulation with VHDL; 2ª ed. Massachusetts-EUA:MIT, 2010. 608 p. ISBN 9780262014335


Curso de Engenharia de Telecomunicações

Conteúdo

Gerenciamento de Complexidade e Visão Geral de Sistemas Digitais Complexos

Gerenciamento de Complexidade e Visão Geral de Sistemas Digitais Complexos

  • Leituras recomendadas:
    • Capítulo 1 do livro do Chu;
    • Capítulo 1 do livro do Harris;
    • Notas de aula 01.
Síntese de Código VHDL

Síntese de Código VHDL

  • Leitura recomendada:
    • Capítulo 6 do livro do Chu;
    • Notas de aula 02.
Eficiência de Circuitos Combinacionais

Eficiência de Circuitos Combinacionais

  • Leitura recomendada:
    • Capítulo 7 do livro do Chu;
    • Notas de aula 03.
Eficiência de Circuitos Sequenciais

Eficiência de Circuitos Sequenciais

  • Leitura recomendada:
    • Capítulos 8 e 9 do livro do Chu;
    • Notas de aula 04 e 05.
Eficiência de Máquinas de Estado

Eficiência de Máquinas de Estado

  • Leitura recomendada:
    • Capítulo 10 do livro do Chu;
    • Notas de aula 06.
Register Transfer Methodology

Register Transfer Methodology

  • Leitura recomendada:
    • Capítulos 11 e 12 do livro do Chu;
    • Notas de aula 07 e 08.
Projeto Hierárquico e Parametrizado

Projeto Hierárquico e Parametrizado

  • Leitura recomendada:
    • Capítulos 13, 14 e 15 do livro do Chu;
    • Notas de aula 09, 10 e 11.
Clock e Sincronização

Clock e Sincronização

  • Leitura recomendada:
    • Capítulo 16 do livro do Chu;
    • Notas de aula 12.

Links Auxiliares