Mudanças entre as edições de "DLP29007-2015-1"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 41: Linha 41:
 
* [[Media:dlp29007-lecture01-complexity.pdf | Lecture 01: Complexity Mangement and the Design of Complex Digital Systems]]
 
* [[Media:dlp29007-lecture01-complexity.pdf | Lecture 01: Complexity Mangement and the Design of Complex Digital Systems]]
 
* [[Media:dlp29007-lecture02-efficient_comb_circuits.pdf | Lecture 02: Efficient Design of Combinational Circuits]]
 
* [[Media:dlp29007-lecture02-efficient_comb_circuits.pdf | Lecture 02: Efficient Design of Combinational Circuits]]
 +
* [https://www.dropbox.com/s/j8pbw4nm8vg9ybd/dlp29007-lecture03-efficient_seq_circuits.pdf?dl=0 Lecture 03: Efficient Design of Sequential Circuits]
 +
* [https://www.dropbox.com/s/6safyxmvm0444zf/dlp29007-lecture04-sequetial_circuit_design.pdf?dl=0 Lecture 04: Design of Sequential Circuits: Practice]
 +
 +
<!--
 
* [[Media:dlp29007-lecture03-efficient_seq_circuits.pdf | Lecture 03: Efficient Design of Sequential Circuits]]
 
* [[Media:dlp29007-lecture03-efficient_seq_circuits.pdf | Lecture 03: Efficient Design of Sequential Circuits]]
 +
Sugestão: Só tornar permanente depois que não tiver mais alterações.
 +
-->
  
 
== Recursos de Laboratório ==
 
== Recursos de Laboratório ==

Edição das 14h20min de 12 de março de 2015

EngTel: Programmable Logic Devices II - 2015-1

  • Lecturers: Arliones Hoeller e Marcos Moecke
  • Class: 29007
  • Meetings: tuesdays at 9:40 and thursdays at 7:30 at Laboratório de Programação.
  • Extra-class hours:
    • Arliones: tuesdays from 13:30 until 15:20
    • Marcos:

Course Plan (in Portuguese)

Class Schedule

Grades

Registration T0 T1 T2 T3 T4 T5 Final

Class Material

Bibliographic References

  1. Pong P. Chu, RTL Hardware Design Using VHDL: Coding for Efficiency, Portability, and Scalability. Wiley-IEEE Press, Hoboken, 2006, Pages 1-22, ISBN 0471720925.
  2. David Money Harris and Sarah L. Harris, Digital Design and Computer Architecture, Morgan Kaufmann, Burlington, 2007, Pages 3-48, ISBN 9780123704979, http://dx.doi.org/10.1016/B978-012370497-9/50002-0.

Lecture Notes

These lecture notes are based on the ones made available by Prof. Pong P. Chu at [1].


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).

Homework

Class log

05/02: Course presentation. Complexity Management. Overview of Complex Digital Systems Desgin.

Recommended reading

  • Chapter 1 of bibliographic references 1 AND 2.
  • Lecture notes 1.


12/02 - 26/02: Design of efficient combinational circuits

Recommended reading

  • Chapter 7 of bibliographic reference 1.
  • Lecture notes 2.
  • TimeQuest Help, mainly Propagation Delay Report.

12/02: Design of efficient combinational circuits: Operator sharing

Recommended reading

  • Chapter 7 of bibliographic reference 1.
  • Lecture notes 2.


Homework 1

Download the Operator Sharing Source Code (qar) or Operator Sharing Source Code (qar.zip) and, for each architecture of each one of the three examples, do the following:

  • Choose one of the available FPGA families for your project (e.g. Cyclone IV GX);
  • Select the "Fastest" "Speed grade";
  • Select the smallest device available in the family;
  • For each architecture of the example, compile the it, analyze the RTL output, and take note of the number of logic elements/LUTs consumed, and of the highest delay in the circuit;
  • Change to the largest device available in the family;
  • For each architecture of the example, compile the it, analyze the RTL output, and take note of the number of logic elements/LUTs consumed, and of the highest delay in the circuit;

Write a report containing the numeric results of your experiments. For each example, answer the following questions:

  1. Was there any differences between the RTL generated for each architecture? Why did this happen (or not)?
  2. Was there any differences between the RTL generated, for the same architecture, for different devices? Why did this happen (or not)?

Email the results to the professors until 17/02/2015.


19/02: Design of efficient combinational circuits: Function sharing

Recommended reading

  • Chapter 7 of bibliographic reference 1.
  • Lecture notes 2.


Homework 2

Download the Function Sharing Source Code (qar.zip) and, for each architecture of each one of the examples, do the following:

  • Choose one of the available FPGA families for your project (e.g. Cyclone IV GX);
  • Select the "Fastest" "Speed grade";
  • Select the smallest device available in the family;
  • For each architecture of the example, compile the it, analyze the RTL output, and take note of the number of logic elements/LUTs consumed, and of the highest delay in the circuit;
  • Change to the largest device available in the family;
  • For each architecture of the example, compile the it, analyze the RTL output, and take note of the number of logic elements/LUTs consumed, and of the highest delay in the circuit;

Write a report containing the numeric results of your experiments. For each example, answer the following questions:

  1. Was there any differences between the RTL generated for each architecture? Why did this happen (or not)?
  2. Was there any differences between the RTL generated, for the same architecture, for different devices? Why did this happen (or not)?

Email the results to the professors until next class.


26/02: Design of efficient combinational circuits: Layout Considerations

Recommended reading

  • Chapter 7 of bibliographic reference 1.
  • Lecture notes 2.


Homework 3

Groups of two students will study and explain to the class one of these circuits in Chapter 7 of bibliographic reference 1: 7.5.2 (Programmable Priority Encoder), 7.5.4 (Combinational Adder-Based Multiplier), 7.5.5 (Hamming Distance Circuit).


03/03: Design of efficient combinational circuits: General Circuits

Students presented and discussed the general circuits of section 7.5 of bibliographic reference 1.

Recommended reading

  • Chapter 7 of bibliographic reference 1.
  • Lecture notes 2.

06/03: Design of efficient combinational circuits: principle

Recommended reading

  • Chapter 8 of bibliographic reference 1.
  • Lecture notes 3.

12/03: Design of efficient combinational circuits: principle and practice

Recommended reading

  • Chapter 8 of bibliographic reference 1.
  • Chapter 9 of bibliographic reference 1.
  • Lecture notes 3.
  • Lecture notes 4.
  • Quartus II help - create_clock - ALTERA

Homework (Group of 2 students)

Projeto sincrono - Timer (HORA, MINUTO, SEGUNDO) - (Prazo de entrega 23/03/2015)
Experimento 3.2
  • Implementar um timer que tenha saída de segundo, minuto e hora (todos em binário).
  • Versão 1: Utilizando clocks derivados de 1seg, 1min a partir de 50 MHz.
  • Versão 2: Projeto Síncrono com clock global.
  • Simular o timer (versão 1 e 2), mostrando o correto funcionamento.
  • Análisar o RTL e número de elementos necessários.
  • Criar um arquivo timer.sdc e incluí-lo no projeto (para definir a restrição de tempo do clock máximo)
create_clock -name CLK50MHz -period 20 [get_ports {clk}]

ou

create_clock -name CLK50MHz -period 250MHz [get_ports {clk}]
  • Verificar no {Compilation Report > TimeQuest Timing Analyser}, se o clock máximo do circuito obtido é maior que 50 MHz.
  • ATENÇÃO AINDA NÃO ESTÁ FECHADO O PROJETO.