MC613 - Laboratório de Circuitos Digitais
Informações de contato
Professor: Rodolfo Jardim de Azevedo - Sala 3 do IC2
PED: Táylla Milena Theodoro
PAD: Daniel Paulo Garcia
Apresentação da disciplina
Essa é uma disciplina de Laboratório do Instituto de Computação da Unicamp que foca no desenvolvimento de habilidades relacionadas ao projeto de circuitos digitais. A disciplina focará na parte prática de desenvolvimento de circuitos digitais, utilizando a linguagem de descrição de hardware Verilog.
Não deixe de acompanhar os avisos e demais informações no Google Classroom da disciplina.
Ementa
Metodologia de projeto digital. Técnicas de projeto usando lógica programável. Características elétricas de circuitos digitais. Projeto e implementação de lógica combinacional: decodificadores e seletores. Flip-flops. Contadores. Circuitos aritméticos. Memórias. Projeto e implementação de lógica seqüencial. Máquinas de estados. Via de dados. Introdução a VHDL.
Apesar da ementa mencionar VHDL, a disciplina está sendo atualizada para utilizar Verilog pois tem sido a linguagem de projeto de hardware mais utilizada nos últimos anos. Um guia básico de Verilog está na parte de referência bibliográfica.
Aulas
As aulas dessa disciplina acontecem todas as quartas-feiras das 14h até as 18h na sala 300 do IC-3 (CC00).
Bibliografia
A referência bibliográfica principal da disciplina é:
- Fundamentals of Digital Logic with Verilog Design, Third Edition. Stephen Brown & Zvonko Vranesic. McGrawHill. 2013.
- Introdução à Verilog
- Manuais do Quartus e kit de desenvolvimento: baixe do Google Classroom
- Documentação complementar e tutoriais serão fornecidos ao longo do semestre através do Google Classroom
Avaliação
A avaliação da disciplinas será dividida em duas partes:
Atividades práticas em grupos de 3 alunos realizadas semanalmente. Peso final: 60%
- Cada semana serão distribuídas 1 ou mais atividades práticas que deverão ser entregues até a semana seguinte;
- Cada atividade prática terá um peso entre 1 e 3 pontos, dependendo da complexidade da atividade;
- As atividades práticas serão entregues, no GitHub Classroom da disciplina (casos excepcionais serão informados na descrição de cada atividade);
- A avaliação das atividades será feita através de testes automatizados públicos e privados, além de apresentação/demonstração em hardware no laboratório, conforme descrito na atividade;
- Alunos podem conversar sobre as atividades mas não podem compartilhar código;
Projeto final em grupo de 3 alunos. Peso final: 40%
- O projeto final será entregue em duas etapas: a primeira etapa será a entrega da especificação do projeto e a segunda etapa será a entrega do projeto final;
- A especificação deverá ser aprovada pelo professor;
- O projeto final deverá ser apresentado em hardware, no laboratório, na data especificada;
- Alunos de grupos distintos podem conversar sobre o projeto mas não podem compartilhar código;
A nota final será a média ponderada das notas das atividades práticas e do projeto final conforme pesos indicados.
$$ Atividades = \frac{\sum_{i=1}^{n} Atividade_i \times Peso_i}{\sum_{i=1}^{n} Peso_i} $$
$$ NotaFinal = \frac{Atividades \times 6 + Projeto \times 4}{10} $$
Essa disciplina não prevê Exame Final de Avaliação.
Qualquer caso de plágio ou cópia de código será punido até o limite da minha autoridade, inclusive com nota zero na disciplina.
Atendimento
Os atendimentos do professor serão realizados todas as segundas, às 18h, na sala 3 do IC-2.
Os atendimentos da PED serão realizados às terças, das 12h-13h na sala 300 do IC-3 (CC00).
Para horários alternativos, envie um email sugerindo data e hora.
Atividades Práticas
Todas as Atividades Práticas serão distribuídas semanalmente e deverão ser entregues até a semana seguinte. As atividades práticas serão entregues através do GitHub Classroom da disciplina. As atividades cobrem conceitos da Circuitos Digitais e Verilog.
Projeto Final
Os alunos devem formar grupos com 3 participantes e proporem um projeto final cuja especificação deverá ser aprovada pelo professor. Cada grupo terá o prazo de 4 semanas para concluir o projeto. A entrega deverá ser feita através do GitHub Classroom da disciplina.
Calendário
O calendário abaixo será atualizado durante o semestre com as datas das entregas de cada atividade.
Aula | Data | Descrição |
---|---|---|
1 | 28/02 | Apresentação da disciplina. Formação dos grupos de 3 alunos |
2 | 06/03 | Atividade 1 |
3 | 13/03 | Atividade 2 |
4 | 20/03 | Atividade 3 |
5 | 27/03 | Atividade 4 |
6 | 03/04 | Atividade 4 |
7 | 10/04 | Atividade 5 |
8 | 17/04 | Atividade 5 |
9 | 24/04 | Atividade 6 |
- | 01/05 | Feriado |
10 | 08/05 | Atividade 7 |
11 | 15/05 | Atividade 7 - Entrega da especificação do Projeto |
12 | 22/05 | |
13 | 29/05 | |
14 | 05/06 | |
15 | 12/06 | Entrega e Apresentação do Projeto |