Universidade Federal de Santa Catarina
Centro Tecnológico
Curso de Graduação em Ciências da
Computação
INE 5406 - Sistemas
Digitais
Profs. José Luís Güntzel e
Rafael Cancian {guntzel,cancian}@inf.ufsc.br semestre 2012/2
Notícias & Avisos |
07/02/2013 |
Notas semestrais disponíveis:
turma 02208A; turma 02208B; turma 04235A |
|
20/11/2012 |
Notas da 2a prova (P2) disponíveis: turma 02208A; turma 02208B; turma 04235A |
3ª Lista de Exercícios
disponível. Ver
link no cronograma da disciplina, coluna “material compl.”. A resolução
não será cobrada, porém é altamente aconselhável que os alunos
tentem resolvê-la, com o objetivo de se prepararem para a 3ª prova |
|
30/09/2012 |
Notas da 1a prova (P1) disponíveis: turma
02208A; turma
02208B; turma
04235A |
|
15/09/2012 |
1ª Lista de Exercícios
disponível. Ver link no cronograma da disciplina,
coluna “material compl.”. A resolução não será cobrada, porém é altamente
aconselhável que os alunos tentem resolvê-la, com o objetivo de se prepararem
para a 1ª prova |
|
15/09/2012 |
Página no ar! |
No cronograma da disciplina (tabela no final
desta página) tu encontras os links para o material
da disciplina. |
Apostila de Técnicas Digitais (para fins de revisão
da matéria pré-requisito) em formato PDF disponível em http://www.inf.ufsc.br/~guntzel/isd/isd.html
|
Extrato do Plano de Ensino e Cronograma Detalhado das
Aulas
Atenção: o Plano de Ensino Oficial da
Disciplina, Aprovado no Departamento, está Disponível em http://admrede.inf.ufsc.br/interno/modulos/planos/aprovados.php
1. IDENTIFICAÇÃO DA DISCIPLINA
Disciplina: INE 5406
– Sistemas Digitais
Carga
Horária: 90 horas-aula (Teóricas:
54 Práticas: 36)
Turmas:
04235A (Eng.
Eletrônica), 02208A, 02208B (Ciências da Computação)
Período:
2o
semestre de 2012
Professores: José Luís A. Güntzel E-mail:
guntzel@inf.ufsc.br
Rafael Cancian
E-mail: cancian@inf.ufsc.br
Pág. web:
www.inf.ufsc.br/~guntzel/ine5406/ine5406.html
Horário/Sala/Professor
das aulas teóricas:
Turma 04235A (Eng. Eletrônica): 209103 / CTC306 / Güntzel
Turma 02208A (Ciências da
Computação): 215103 / EEL004 / Güntzel
Turma 02208B (Ciências da
Computação): 215103 / EEL004 / Güntzel
Horários e Salas das aulas práticas:
Turma 04235A (Eng. Eletrônica): 507302 / INE314
/ Cancian,
Turma 02208A (Ciências da
Computação): 510102 / INE101 / Cancian,
Turma 02208B (Ciências da
Computação): 513302 / INE101 / Cancian,
2. CURSOS
Ciências da Computação (208).
Engenharia Eletrônica ()
3. REQUISITO
EEL 5105 - Circuitos e Técnicas Digitais.
4. EMENTA
Máquinas sequenciais
síncronas (Mealy e Moore) e sua representação
(diagramas de transição e descrição em HDL). Síntese de circuitos sequenciais (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).
5. OBJETIVOS
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:
6. CONTEÚDO
PROGRAMÁTICO
6.1) Formas de implementação de sistemas digitais. [3 horas-aula]
6.2) Projeto de unidade lógico-aritmética
(ULA). [6 horas-aula]
6.3) Máquinas sequenciais
síncronas. [21 horas-aula]
6.4) Projeto de sistemas digitais no nível
de transferência entre registradores (RT). [24 horas-aula]
6.5) Uso de linguagem de descrição de
hardware (HDL). [8 horas-aula]
6.6) Descrição de circuitos sequenciais com HDL. [12 horas-aula]
6.7) Descrição de sistemas digitais no
nível RT com HDL. [16 horas-aula]
7.
METODOLOGIA
7.1.
Instrumentos metodológicos
Os aspectos mais relevantes relacionados ao
conteúdo da disciplina serão expostos e discutidos nas aulas teóricas
utilizando projetor multimídia e transparências preparadas pelo professor,
apoiando-se no livro-texto adotado e na bibliografia complementar. Os conceitos
apresentados serão ilustrados por meio de exemplos apresentados pelo professor
e de exercícios que serão realizados pelos alunos e resolvidos pelo professor
em sala de aula. Para a fixação destes conceitos, o professor indicará
exercícios extra-classe, a serem resolvidos pelos alunos.
Os conceitos vistos nas aulas teóricas serão
exercitados nas aulas de laboratório, as quais serão compostas de duas etapas:
uma etapa inicial de instrução e uma etapa de experimentação. Na etapa de
instrução serão apresentados e ilustrados os passos do fluxo de síntese no
nível RT (Register Transfer)
com ferramentas de EDA (Electronic Design Automation) e as características da linguagem VHDL (uma das
linguagens mais utilizadas no mundo para a síntese de sistemas digitais no
nível RT). Na etapa de experimentação os alunos irão realizar um experimento
utilizando as ferramentas de EDA, seguindo um roteiro fornecido pelo professor.
Em quatro aulas práticas, cujas datas serão divulgadas no início do semestre na
página da disciplina (http://www.inf.ufsc.br/~guntzel/ine5406/ine5406.html) e
no Moodle/UFSC, será cobrado um relatório valendo
nota, o qual deve ser entregue ao final da aula, juntamente com os arquivos
referentes ao projeto. Para a síntese no nível RT será utilizada a ferramenta Quartus II da empresa Altera, cuja versão de uso livre (WebEdition) mais recente pode ser obtida na página da
própria empresa. Para a simulação e análise das formas de onda resultantes,
será utilizada a ferramenta ModelSim, da empresa
Mentor Graphics, em sua versão de uso livre, que
também pode ser obtida na página da empresa.
Como instrumento metodológico adicional, será
disponibilizada aos alunos uma faixa de horários semanais para atendimento
extra-classe. Estes horários serão informados na página da disciplina. O aluno
que desejar ser atendido deverá solicitar ao professor o agendamento por email
com antecedência mínima de 24 horas.
Aos alunos que queiram aprofundar-se em tópicos
avançados, sugere-se a leitura da bibliografia complementar.
7.2.
Pressupostos da metodologia
A metodologia adotada pressupõe que os
alunos não se limitem a comparecer às aulas, mas utilizem para as atividades
extra-classe associadas a esta disciplina (leituras, resolução de exercícios
teóricos e exercícios com o uso da ferramenta de EDA) um número de horas superior
ao número de horas-aula em sala de aula.
Pressupõe-se que os alunos tenham estudado
o conteúdo utilizando a bibliografia indicada e tenham resolvido, como
atividade extra-classe, todos os exercícios propostos pelo professor.
Para garantir a máxima concentração dos
alunos durante as aulas e garantir a lisura do processo de avaliação, em
nenhuma aula (expositiva, laboratório, ou avaliação) é permitido o uso de
dispositivos pessoais móveis (celulares, smartphones,
tablets, MP3 players e similares). Computadores
pessoais somente poderão ser usados nas aulas práticas para a execução dos
experimentos.
8. AVALIAÇÃO
8.1.
Instrumentos de Avaliação:
A avaliação da aprendizagem é realizada
através de quatro provas escritas (P1, P2, P3 e REC) e um conjunto de
relatórios de aulas de laboratório (R1, R2, R3, R4).
As três primeiras provas (P1, P2 e P3) são
provas regulares e a última (REC) corresponde a uma prova de recuperação
(conforme art. 70, § 2º, da Resolução 17/CUn/97).
Os tópicos do conteúdo programático serão
assim avaliados:
Para a realização das quatro provas, serão
alocadas 12 horas-aula da carga da disciplina, assim distribuídas:
Nas aulas práticas de experimentação os
experimentos serão realizados por grupos de no máximo dois alunos. Cada grupo
deverá entregar, ao final da aula, um relatório e o conjunto de arquivos
resultantes do experimento.
A avaliação global da parte prática da
disciplina dará origem à nota MP, que corresponde à média aritmética das notas
dos relatórios.
A nota final (NF) será calculada como
função da frequência do aluno e das notas por ele
obtidas nas provas e nos relatórios, conforme formalizado a seguir.
8.2.
Critérios para aprovação ou reprovação
a) O aluno que não comparecer a no mínimo
75% das aulas será considerado reprovado por frequência
insuficiente (FI), de acordo com o artigo 73, do Capítulo I, Seção IX do
Regimento Geral da UFSC. Neste caso, NF = 0,0.
b) O critério para aprovação ou reprovação
dos alunos com frequência suficiente (FS) baseia-se na
média final (MF) assim calculada: MF = (P1 + 2xP2 + 2xP3 + MP)/6.
c) Será considerado aprovado o aluno com FS
e MF >= 6,0. Neste caso, NF = MF.
d) Será considerado reprovado o aluno com
FS e MF< 3. Neste caso, NF = MF.
Conforme parágrafo 2º do artigo 70 da
Resolução 17/CUn/97, o aluno com frequência
suficiente (FS) e média final no período (MF) entre 3,0 e 5,5 terá direito a uma nova
avaliação ao final do semestre (REC), sendo a nota final (NF) calculada conforme parágrafo 3º do
artigo 71 desta resolução, ou seja: NF = (MF + REC) / 2.
9.
BIBLIOGRAFIA
9.1. Livro-texto
[1] VAHID, Frank. Sistemas Digitais: projeto, otimização
e HDLs. Porto Alegre: Bookman,
2008. ISBN 978-85-7780-190-9. (A Biblioteca
da UFSC possui 8 exemplares impressos, bem como o PDF,
o qual pode ser consultado on-line, na página da biblioteca.)
9.2.
Bibliografia complementar (por ordem de adequação)
[2] VAHID, Frank; LYSECKY, Roman. VHDL for
Digital Design. Hoboken, N.J.: John Wiley & Sons, 2007. 192p.
[3]
ASHEDEN, Peter J. Digital Design: an embedded systems approach using VHDL.
Burlington, MA: Morgan Kaufmann Publishers, 2008.
[4]
KATZ, Randy; BORRIELLO, Gaetano.
Contemporary Logic Design. 2nd Edition. Upper
Saddle River, NJ: Prentice Hall, 2005. 590p. (ISBN 0-201-30857-6) (A Biblioteca da UFSC possui 6 exemplares)
[5]
ASHEDEN, Peter J. The Student’s Guide to VHDL. 2nd Edition. San
Francisco, CA: Morgan Kaufmann Publishers, 2008. 528p. (A Biblioteca da UFSC possui 5 exemplares da 1ª
edição)
[6]
PEDRONI, Volnei. Circuit Design
with VHDL. Cambridge,
MA: MIT Press, 2004. 363p.
10.
CRONOGRAMA DETALHADO E LINKS PARA AS TRANSPARÊNCIAS E PARA O MATERIAL
COMPLEMENTAR (T=aula téorica; P=aula prática)
Data |
Conteúdo |
Slides |
Material Compl. |
03-04/09 |
1. Projeto de unidade
lógico-aritmética (ULA). Representação de números inteiros em binário. Adição
de números sem e com sinal, o somador paralelo carry-ripple e overflow. O subtrator
e o somador-subtrator, overflow. Estrutura de uma ULA
simples. Outras operações lógicas e aritméticas. Convenções do nível RT. |
1T (1.8 MB) |
Revisão Somadores rápidos |
06/09 |
Introdução ao fluxo de projeto com ferramentas de EDA. Introdução à
Linguagem VHDL. Descrição de um somador completo (full adder) em
VHDL, síntese com o Quartus II e simulação com o ModelSim. |
1P (745 kB) |
|
10-11/09 |
1. Projeto de ULA. Circuitos
Digitais e Níveis de Abstração. Funcionamento e características temporais de
registradores. Cadenciamento com sinal de relógio (clock) e análise de
timing. |
2T (680 kB) |
1a Lista de Exercícios (728 kB) |
13/09 |
Simulação gate-level de um somador completo com o ModelSim. |
2P (1.7 MB) |
|
17-18/09 |
1. Projeto de ULA.
Registradores de uso específico. ULAs personalizadas e exploração de paralelismo. Mapeamento
tecnológico para CMOS e custo dos blocos RT. |
3T (1.2 MB) |
|
20/09 |
Descrição de somadores em VHDL, síntese com o Quartus II e simulação com o ModelSim. Uso dos tipos std_logic e std_logic_vector. Comandos de atribuição em VHDL: atribuição simples, com sinal selecionado e com sinal condicional. |
3P (679 kB) |
|
24-25/09 |
P1 |
-- |
|
27/09 |
1o relatório de aula
prática. |
-- |
|
01-02/10 |
2. Máquinas Sequenciais
Síncronas. Modelos de Moore e de Mealy. Estrutura e
representações do comportamento. Análise de
circuitos sequenciais síncronos. Síntese de
circuitos sequenciais segundo
o Modelo de Moore. Exemplos |
4T (1.0 MB) |
|
04/10 |
Prototipagem com a placa de desenvolvimento DE2 da Altera. |
4P (2.3 MB) |
|
08-09/10 |
2. Máquinas Sequenciais
Síncronas. Codificação de estados. Síntese de circuitos sequenciais
segundo o Modelo de Mealy (comparação
com o Modelo de Moore). Exemplos. |
5T (1.0 MB) |
2a
Lista de Exercícios (387 kB) |
11/10 |
Processos em VHDL. Comandos de atribuição em VHDL: if-then-else e case. |
5P (307 kB) |
|
15-16/10 |
2. Máquinas Sequenciais
Síncronas. Síntese de circuitos sequenciais
síncronos: minimização de estados. |
6T (437 KB) |
|
18/10 |
Descrição em VHDL, síntese e simulação de latches, flip-flops e registradores. |
6P (349 kB) |
|
22-23/10 |
2. Máquinas Sequenciais
Síncronas. Síntese de circuitos sequenciais
síncronos: estudo de caso. |
7T (1.7 MB) |
|
25/10 |
2o relatório de aula
prática. |
-- |
|
29-30/10 |
P2 |
-- |
|
01/11 |
Descrição em VHDL, síntese
e simulação de registradores
de deslocamento e contadores.
Experimento com a placa
DE2 da Altera. |
7P (2.0 MB) |
|
05-06/11 |
4.
Projeto de sistemas digitais no nível RT. Classificação dos Sistemas
Digitais. O modelo BO / BC (datapath/controle). Componentes do Nível RT. Método de Projeto no Nível RT.
Exemplo. |
8T (1.0 MB) |
|
08/11 |
Descrição em VHDL, síntese e simulação
de Máquinas de Estados Finitos (FSM).
|
8P (368 kB) |
|
12-13/11 |
4. Projeto de sistemas digitais
no nível RT. Memórias SRAM: características e acesso. |
9T (1.8 MB) |
|
15/11 |
Feriado - Proclamação da República |
-- |
|
19-20/11 |
4. Projeto de sistemas digitais
no nível RT. Estudo de Caso 1. |
10T (1.1 MB) |
3a
Lista de Exercícios
(475 kB) |
22/11 |
Descrição em VHDL, síntese e simulação de máquinas de estados finitos (FSMs). FSM como Bloco de Controle. |
9P (430 kB) |
|
26-27/11 |
4. Projeto de sistemas digitais
no nível RT. Estudo de Caso 2. |
11T (1 MB) |
|
29/11 |
3o relatório de aula
prática. |
-- |
|
03-04/12 |
4. Projeto de sistemas digitais
no nível RT. Estudo de Caso 3. Análise de Timing de um SD. |
12T (1.1 MB) |
|
06/12 |
Descrição em VHDL, síntese e simulação de um sistema digital completo (BO + BC). |
10P (1.5 MB) |
|
10-11/12 |
4. Projeto de sistemas digitais
no nível RT. Estudo de Caso 4. |
13T |
|
13/12 |
Descrição em VHDL, síntese
e simulação de um sistema
digital completo contendo
bloco de memória. |
11P |
|
18/12 |
P3 |
-- |
|
20/12 |
4o relatório de aula
prática. |
-- |
|
19/02 |
REC |
-- |
|
Legenda:
T= aula teórica, P= aula prática.
11. ATENDIMENTO AOS ALUNOS
O gabinete do professor José Luís Güntzel localiza-se no quarto andar do prédio do INE
– Departamento de Informática e Estatística, na sala 423 (no NIME –
Núcleo Interdepartamental de Microeletrônica). O horário para o atendimento aos
alunos desta disciplina é quartas-feiras, das 13:30 as 16:00. Os atendimentos deverão ser
agendados por e-mail (guntzel@inf.ufsc.br) até as 12:00 do domingo anterior.
12. LINKS
ÚTEIS E LINKS INTERESSANTES
Página
da Altera (para obter o Quartus II , Web Edition)
Página
da Xilinx (para obter o ISE)
Página da
Disciplina Técnicas Digitais do Bacharelado em Ciência da Computação/UFRGS
Tutoriais de
VHDL:
Tutoriais de
VHDL do Grupo de Microeletrônica da Universidade Federal de Itajubá
(UNIFEI)
VHDL Tutorial. Prof. Dr.-Ing.
Wolfram H. Glauert (Universität Erlangen-Nürnberg,
Alemanha)
VHDL Tutorial: Learn
by Example. Weijun Zhang (University of
California at Riversides, USA)
VHDL Tutorial.http://www.seas.upenn.edu/~ese201/vhdl/vhdl_primer.htmlhttp://www.seas.upenn.edu/~ese201/vhdl/vhdl_primer.htmlhttp://www.seas.upenn.edu/~ese201/vhdl/vhdl_primer.html
Jan Van der Spiegel (University of
Pennsylvania, USA).
http://www.seas.upenn.edu/~ese201/vhdl/vhdl_primer.html
http://www.seas.upenn.edu/~ese201/vhdl/vhdl_primer.html
GHDL Home Page. (software livre para
projeto com VHDL)
Copyright by Güntzel 2010. última
atualização: 30/09/2012.