MC613 - Laboratório de Circuitos Digitais

Primeiro Semestre de 2018

Turmas A e B

Aulas Atendimento Avaliação Referências Notas
Avisos

20 de Fevereiro de 2018
Usaremos o Moodle para colocar os materiais e submissão dos resultados dos laboratórios. O Link para o Moodle nesta disciplina é: Turmas A e B .

10 de Fevereiro de 2018
Os slides e enunciados dos labs foram movidos para a página da disciplina no Moodle, veja link acima.

10 de Fevereiro de 2018
Página da disciplina no ar. Confira critérios de avaliação e calendário. Consulte esta página frequentemente para avisos sobre o curso.

Aulas

Turma A
Seg: 14-18h, salas IC 305 (Labs) e IC 353 (teoria).

Atendimento


O horário de atendimento será de 1h. O horário será toda segunda-feira (13h as 14h), imediatamente antes do início de cada aula. Em caso de necessidade de atendimento em horário alternativo, entre em contato por email.

Contato
· Prof. Sandro Rigo (sandro AT ic DOT unicamp DOT br)
. PED: Isaías Felzmann (isaias [DOT] felzmann [AT] students [DOT] ic [DOT] unicamp [DOT] br)
· OBS.: Quando enviar um e-mail favor colocar no subject [MC613], caso contrário você corre sério risco de seu email ser filtrado como spam.

Descrição

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, seletores, Circuitos Aritméticos, Via de Dados etc. Projeto e implementação de lógica seqüencial: Flip-flops, Contadores, Registradores, Memórias, Máquinas de Estados etc.

Organização do curso e Atividades
O curso será composto várias atividades, sendo que as aulas expositivas e testes terão lugar na sala 353 (IC3,5) e as atividades experimentais na sala 305 (IC3). O professor estará presente em todas as atividades:

  • Teoria: aulas expositivas de revisão da teoria de projeto de circuitos digitais (aproximadamente 60 minutos por aula) (IC 3,5 sala 353)
  • Laboratório (duplas): experimentos de projeto de circuitos digitais a serem montados e testados pela equipe (aproximadamente 190 minutos). Os laboratórios serão avaliados através de demonstrações práticas e submissão de resultados através da página do curso no Moodle.
  • Projeto final: a ser feito pela equipe (dupla) de acordo com as especificações entregues durante o curso. Será avaliado através de entrega do código e demonstração prática

Infraestrutura: Sala e ferramentas
Esta disciplina será totalmente baseada em ferramentas de projeto e simulação da Altera. As experiências deverão ser preparadas com antecedência. No laboratório, o aluno deve testar os seus circuitos em lógica programável (FPGAs) disponíveis nas placas de desenvolvimento da Altera. O Laboratório de Circuitos Lógicos (LCL) (sala 305) está aberto 24h para os alunos de MC613, bastando que o aluno apresente a sua carteira na entrada do prédio e pegue a chave. Enquando dentro do LCL o aluno torna-se responsável pelo uso de seus equipamentos e ferramentas. Os alunos devem utilizar Hardware e Software da Altera: placa de desenvolvimento DE1 SoC e software Quartus II, de acordo com as orientações fornecidas em aula.

Instruções para a entrega dos laboratórios
O material a ser entregue pelos alunos deve ser depositado via Moodle. Salvo recomendação explícita em contrário, não será necessário entregar relatório dos experimentos nos laboratórios, somente os arquivos pedidos na página do Moodle.

Avaliação

Avaliação
A avaliação do curso será feita com base nos laboratórios e projeto descritos acima. As notas de cada componente da média do curso serão computadas da seguinte forma:

  • Nota_Projeto = (2*Nota_Diagrama_de_Bloco + 2*Nota_Descrição_Top_level + 6*Nota_Demo_e_Relatório)/10
  • Média_Labs = média aritmética das notas dos laboratórios

O cáculo da média final depende do desempenho nos labs e no projeto, e será feito da seguinte forma:

  • Média Final = 0,6 * ML + 0,4* Nota_Projeto
    Se a Nota_Projeto (NP) > 4,0 E Média_Labs (ML) > 3,0
  • Caso contrário: A média final do curso será igual a Mínimo(ML, NP)

Portanto, é importante a participação e manter um bom desempenho nos labs ao longo do semestre, e também completar um projeto final com um mínimo de qualidade para garantir uma boa nota final no curso.

OBSERVAÇÕES IMPORTANTES: A média dos laboratórios será calculada descontando-se a menor nota.
O projeto que for entregue e demonstrado na primeira data de entrega (Entrega Antecipada no calendário abaixo) terá um bônus de 10 % na sua nota (a nota do projeto será multiplicada por 1.1). Veja instruções durante o curso sobre as condições de entrega. O projeto entregue em atraso (tarefa Entrega Atrasada no Moodle) terá desconto de 30%. A média final máxima do curso é 10.

Fraudes
Qualquer tentativa de fraude nas avaliações implicará em média ZERO no semestre para todos os envolvidos.

Projeto
As equipes deverão fazer um projeto de complexidade maior do que os laboratórios, de modo a exercitar os conhecimentos adquiridos. O projeto deve necessariamente incluir um ou mais periféricos de entrada/saída (monitor, mouse e teclado ou OUTRO). O projeto deve ser entregue e demonstrado nas datas definidas na programação.
Devem ser entregues, depositando via Moodle, os arquivos de projeto (descrições vhd/bdf ou outras, formas de onda, simulações etc) e um relatório descritivo. Quando houver mais de uma implementação, depositar todos os arquivos pertinentes. Os arquivos de programação (extensão .sof) também devem ser depositados, uma vez que a demonstração será feita a partir deles.

O relatório deve estar no formato pdf e deve conter:

  • Capa com o título do projeto, turma, número do grupo , RAs, emails e nomes dos componentes e data de entrega;
  • Teoria: Uma descrição teórica sucinta dos conceitos abordados no projeto.
  • Descrição do Sistema: O relatório deve conter uma descrição detalhada de como você fez para implementar o projeto (quando houver mais de uma implementação deve constar, no relatório, a descrição da implementação de cada item). Quando aplicável, a descrição deve abordar a divisão em módulos que você adotou, o que exatamente faz cada módulo, como você fez para testar cada parte do sistema, etc.. Documentar também as decisões de alternativas, restrições, dimensionamento, configurações, simplificações e a justificativa (por exemplo, uma justificativa típica para simplificação das especificações é reduzir complexidade de projeto ou tamanho do hardware/memória)
  • Para cada implementação, o relatório deve descrever os circuitos utilizados na implementação do sistema;
  • Conclusões
  • Comentários e sugestões. (opcional)

Propostas de Projeto.
Neste diretório estão disponíveis várias propostas para o projeto final. Novas propostas são aceitas mediante aprovação do professor, que poderá modificá-las de acordo com o nível de complexidade exigido. Caso escolha redigir sua própria proposta, lembre-se que na data da definição do projeto final a mesma deverá estar redigida e aprovada pelo professor, portanto programe-se com antecedência.

Seleção de Temas de Projeto.
As equipes devem submeter as suas propostas (sejam já padronizadas ou novas propostas) ao professor, usando um formulário online que será disponibilizado no início do semestre. Não poderão haver duas equipes trabalhando com o mesmo tema de projeto. Quando duas ou mais equipes desejarem trabalhar com o mesmo tema, o tema será alocado de acordo com a ordem de chegada da solicitação.

Calendário

Atenção para as Datas Importantes destacadas em negrito no calendário abaixo!!!

programação do curso
Referências e Materiais de Apoio

Stephen Brown and Zvonko Vranesic. Fundamentals of Digital Logic with VHDL Design. McGraw-Hill.

James O. Hamblen and Michael D. Furman. Rapid Prototyping of Digital System - A Tutorial Approach. Second Edition. Kluwer Academic Publishers

Peter J. Ashenden. The VHDL Cookbook

Página da Disciplina no Moodle