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

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
 
(438 revisões intermediárias por 10 usuários não estão sendo mostradas)
Linha 1: Linha 1:
 
{{DivulgueEngtelecom}}
 
{{DivulgueEngtelecom}}
==Informações Gerais==
+
*Link curto http://bit.ly/IFSC-DLP29006
 
*[[DLP1-EngTel|Carga horária, Ementas, Bibliografia, Professores]]
 
*[[DLP1-EngTel|Carga horária, Ementas, Bibliografia, Professores]]
*[[Cronograma de atividades (DLP1-EngTel) | Cronograma de atividades ]]
 
 
*[[DLP1-EngTel (Plano de Ensino) | Plano de Ensino]]
 
*[[DLP1-EngTel (Plano de Ensino) | Plano de Ensino]]
 +
== Avisos importantes==
 +
*A documentação das aulas será disponibilizada na página da [[DLP29006-Engtelecom (Diário) - Prof. Marcos Moecke | '''Wiki diária da disciplina'''.]].
  
==Registro on-line das aulas==
+
* Nesta página wiki, você tem orientações para uso de ferramentas e também links que auxiliam no estudo da disciplinaVisite os links sempre que solicitado e lei essa página para lembrar futuramente onde estão as informações que necessita.
===Unidade 1===
 
;Aula 1 (5 fev):
 
*[[DLP1-EngTel (Plano de Ensino) | Apresentação da disciplina]]
 
#Dispositivos lógicos programáveis.
 
#Bases da linguagem VHDL.
 
#Tipos de dados, libraries, conversão de tipos, operadores, atributos.
 
#Código VHDL concorrente e sequencial.
 
#Projeto hierárquico.
 
#Simulação e Testbench
 
#Maquina de estado finita (FSM).
 
#Projeto Final de circuitos lógicos.
 
#Avaliações.
 
 
 
*Introdução aos dispositivos lógicos programáveis:
 
:* Conceito, tipos de PLDs
 
:* SPLD: PAL, PLA e GAL
 
::Ver pag. 413 a 418 de <ref name="PEDRONI2010a"> PEDRONI, Volnei A. Eletrônica digital moderna e VHDL; 1ª ed. Rio de Janeiro:Elsevier, 2010. 619p. . ISBN 9788535234657 </ref>
 
 
 
;Aula 2 (6 fev):
 
*Introdução aos dispositivos lógicos programáveis:
 
:* CPLDs e FPGAs
 
:* Fabricantes de DLPs
 
:* Vizualização no Chip Planner de um projeto.
 
::Ver pag. 419 a 424 de <ref name="PEDRONI2010a" />
 
 
 
;Aula 3 (11 fev)
 
*Introdução aos dispositivos lógicos programáveis:
 
:* Arquitetura de FPGAs (Xilinx e Altera): CLB, LAB, RAM, DSP, Clock, PLL, I/O
 
:* Vizualização no Chip Planner de um projeto.
 
::Ver pag. 424 a 431 de <ref name="PEDRONI2010a" />
 
 
 
===Unidade 2===
 
;Aula 4 (12 fev):
 
*Introdução ao VHDL.
 
:*Exemplo de programação de um full adderUtilize os arquivos .qar enviados (V1 - estrutural.  V2 - comportamental) para analisar os circuitos obtidos e realizar as simulações funcional e temporal.
 
::Ver pag. 3 a 8 de <ref name="PEDRONI2010b"> PEDRONI, Volnei A. '''Circuit Design and Simulation with VHDL'''; 2ª ed. Massachusetts-EUA:MIT, 2010. 608 p.  ISBN  9780262014335 </ref>
 
 
 
;Aula 5 (13 fev):
 
*Introdução ao VHDL.
 
:* Estrutura do código VHDL
 
:* Libraries, Entity, Architecture
 
 
 
;Aula 6 (19 fev):
 
*Introdução ao VHDL.
 
:* Estrutura do código VHDL
 
:* Exercicios 2.2 (VHDL e QSIM)
 
:* Exemplo de programação de um flip-flop
 
:* Exercicios 2.3 (VHDL e QSIM)
 
::Ver pag. 3 a 8 de <ref name="PEDRONI2010b"> PEDRONI, Volnei A. '''Circuit Design and Simulation with VHDL'''; 2ª ed. Massachusetts-EUA:MIT, 2010. 608 p.  ISBN  9780262014335 </ref>
 
 
 
;Aula 7 (20 fev):
 
*Introdução ao VHDL.
 
:*Libraries, Entity, Architechture, Generic.
 
::Ver pag. 11 a 18 de <ref name="PEDRONI2010b"/>
 
 
 
;Aula 8 (25 fev):
 
*Introdução ao VHDL.
 
:*Exemplo de um circuito somador
 
:*Exemplo de FF-D
 
::Ver pag. 19 a 21 de <ref name="PEDRONI2010b"/>
 
 
 
===Unidade 3===
 
;Aula 9 (26 fev):
 
*Tipos de Dados em VHDL.
 
:*Exemplo de um circuito somador com registrador
 
:*Exemplo de decodificador de endereço genérico
 
::Ver pag. 22 a 27 de <ref name="PEDRONI2010b"/>
 
 
 
;Aula 10 (27 fev):
 
*Tipos de Dados em VHDL.
 
:*Objetos de VHDL: CONSTANT, SIGNAL, VARIABLE, FILE.
 
:*Palavra chave OTHERS
 
:* Bibliotecas padrão.
 
::*Não use as bibliotecas não padrão (''std_logic_arith, std_logic_unsigned, std_logic_signed'')
 
:*Tipos de dados: BIT, BIT_VECTOR, BOOLEAN, INTEGER, NATURAL, POSITIVE, CHARACTER, STRING, STD_(U)LOGIG, STD_(U)LOGIG_VECTOR, (UN)SIGNED
 
:*Classificação dos tipos de dados.
 
:*Exemplo 3.1 Buffer Tri-state
 
:*Exemplo 3.3 Multiplicador
 
::Ver pag. 31 a 54 de <ref name="PEDRONI2010b"/>
 
 
 
;Aula 11 (5 mar):
 
*Tipos de Dados em VHDL.
 
:*Tipos Array definidos pelo usuário: 1D, 1D x 1D, 2D, 1D x 1D x 1D, 3D.
 
::Ver pag. 62 a 79 de <ref name="PEDRONI2010b"/>
 
 
 
;Aula 12 (6 mar):
 
*Operadores em VHDL.
 
:* Operadores predefinidos: Atribuição, Logicos, Arithméticos, Comparação, Deslocamento, Concatenação, "Matching".
 
:* Sobrecarga de operadores
 
::Ver pag. 91 a 98 de <ref name="PEDRONI2010b"/>
 
 
 
;Aula 13 (11 mar):
 
*Atributos em VHDL.
 
:* Atributos predefinidos: tipo escalar e enumerados; tipo array; de sinal;
 
:* Exemplo 4.1 (Simulação funcional)
 
:* Atributos definidos pelo usuário;
 
:* Atributos de síntese: Enum_encoding, chip_pin, keep.
 
:* Exemplo: Delay line (Síntese e Simulação temporal sem o com o atributo keep)
 
::Ver pag. 99 a 109 de <ref name="PEDRONI2010b"/>
 
 
 
;Aula 14 (12 mar):
 
*Atributos em VHDL.
 
:* Atributos de síntese: preserve, noprune.
 
:* Exemplo: Redundant Register
 
:* Group e Alias
 
:* Exercício 4.17: Discussão de possibilidades de implementação
 
::Ver pag. 109 a 119 de <ref name="PEDRONI2010b"/>
 
 
 
===Unidade 4===
 
;Aula 15 (13 mar):
 
*Código Concorrente.
 
:* WHEN, SELECT, GENERATE;
 
:* Exemplo 5.1 + 5.2 mux: com 4 tipos de arquiteturas (com operadores, com WHEN, com SELECT, com IF),
 
:* Uso de CONFIGURATION para selecionar um entre várias arquiteturas.
 
<syntaxhighlight lang=vhdl>
 
CONFIGURATION which_mux OF mux IS
 
  FOR with_OPERATOR END FOR;
 
--  FOR with_WHEN END FOR;
 
--  FOR with_SELECT END FOR;
 
--  FOR with_IF END FOR;
 
END CONFIGURATION;
 
</syntaxhighlight>
 
:* Exemplo 5.3 ALU: modificação do opcodes:  "0011" -> a NAND b, "0100" -> "a OR b, "1111" => a * b.  É necessário mudar a ENTITY, dobrando o número de bits da saída devido a multiplicação, e adaptar o código para a nova quantidade de bits.
 
::Ver pag. 121 a 129 de <ref name="PEDRONI2010b"/>
 
 
 
;Aula 16 (19 mar):
 
*Código Concorrente.
 
 
 
;Aula 17 (20 mar):
 
*Código Concorrente.
 
 
 
;Aula 18 (25 mar):
 
*Código Concorrente.
 
:* Implementação de circuitos arithméticos com operadores.
 
::'''LEMBRETE'''
 
::* Para "+" ou "-": O tamanho do resultado é igual ao número de bits do maior operando.
 
:::r[7..0] = a[7..0] + b[4..0]; a -> 8 bits; b -> 5 bits então r -> 8 bits.
 
::* Para "*": O tamanho do resultado é igual a soma do número de bits dos dois operandos.
 
:::r[12..0] = a[7..0] * b[4..0]; a -> 8 bits; b -> 5 bits então r -> 8+5 bits.
 
::* Para "/": O tamanho do resultado é igual ao número de bits do numerador.
 
:::r[5..0] = a[5..0] * b[8..0]; a -> 6 bits; b -> 9 bits então r -> 6 bits.
 
 
 
:* Aula de exercicios:
 
::5.4 - Generic Parity Generator;
 
::5.6 - Generic Binary-to-Gray Converter;
 
::5.7 - Hamming Weight with GENERATE;
 
::5.8 - Binary Sorter with GENERATE;
 
::5.10/11 - Arithmetic Circuit with INTEGER/STD_LOGIC;
 
::5.15/16/17/18 - (Un)signed Multiplier/Divider;
 
::5.19 - Frequency Multiplier.
 
 
 
===Unidade 5===
 
;Aula 19 (26 mar):
 
*Código Sequencial.
 
:*Diferenças entre código concorrente e sequencial <=> circuitos combinacional e sequencial
 
:*Diferenças entre os objetos SIGNAL e VARIABLE
 
:*Tipos de elementos de memória: Latch x Flip-flop
 
::* Latch D
 
::* Flip-flop tipo D com reset assíncrono e com reset (clear) síncrono
 
:*Seção de código sequencial '''PROCESS''': lista de sensibilidade
 
:*Instrução '''IF'''
 
::*Exemplos: DFFs with Reset and Clear (Variação Ex 6.1), Basic Counter (Ex. 6.2), Shift Register (Ex. 6.3)
 
:*Instrução '''WAIT''': WAIT UNTIL, WAIT FOR (simulação apenas),  WAIT ON (não implementada no Quartus II).
 
::Recomenda-se utilizar a lista de sensibilidade do PROCESS e a instrução IF no lugar do WAIT.
 
 
 
:*Ver pag. 161 a 160 de <ref name="PEDRONI2010b"/>
 
 
 
;Aula 20 (27 mar):
 
*Código Sequencial.
 
:*Instruções do tipo '''LOOP''': LOOP incondicional, FOR-LOOP, WHILE-LOOP, NEXT, EXIT
 
::* Exemplos: Carry-Ripple Adder (FOR-LOOP) (Ex 6.4), Leading Zeros (LOOP com EXIT) (Ex 6.5)
 
:*Instrução '''CASE'''
 
::* Exemplo:  Contador de 0 a 9 segundos com saída SSD (Ex 6.6)
 
::* Exemplo:  Projeto ruim com CASE incompleto (Ex. 6.7)
 
 
 
:*Ver pag. 161 a 171 de <ref name="PEDRONI2010b"/>
 
 
 
===Unidade 6===
 
;Aula 21 (8 abr):
 
*Projeto a nível de Sistema.
 
:* O '''PACKAGE''' e '''PACKAGE BODY''': onde declarar e como usar.
 
:* O '''COMPONENT''':  declaração (cópia da '''ENTITY''') e instanciação.
 
::* Associação dos nomes das portas aos sinais. PORT -> '''PORT MAP''':
 
 
 
:* Ver pag. 201 a 205 de <ref name="PEDRONI2010b"/>
 
 
 
;Aula 22 (9 abr):
 
*Projeto a nível de Sistema.
 
:* O '''COMPONENT''':
 
::* Criação de compomentes redimensionáveis.  GENERIC -> '''GENERIC MAP'''
 
::* Mapeamento por posição e nominal.
 
::* Métodos de declaração de '''COMPONENT'''.
 
:::*Exemplo: Registrador Circular Ex. 8.2
 
 
 
:* Ver pag. 205 a 208 de <ref name="PEDRONI2010b"/>
 
 
 
;Aula 23 (10 abr):
 
*'''Avaliação das Unidades 1 a 4'''.
 
 
 
;Aula 24 (16 abr):
 
*Projeto a nível de Sistema.
 
:* Criação de '''COMPONENT''' redimensionáveis.  GENERIC -> '''GENERIC MAP'''
 
::*Exemplo: Porta E com N entradas.
 
::*Exemplo: Detector de Paridade Ex. 8.3
 
:* Instanciação de '''COMPONENT''' com '''GENERATE'''.
 
::*Exemplo: Registrador de deslocamento M x N Ex. 8.4
 
 
 
:* Ver pag. 208 a 213 de <ref name="PEDRONI2010b"/>
 
 
 
;Aula 25 (17 abr):
 
*Projeto a nível de Sistema.
 
:* Uso da instrução '''CONFIGURATION'''.
 
::* Ligação direta: ARCHITECTURE-ENTITY.
 
::* Ligação da instanciação dos componentes: COMPONENT-ENTITY(ARCHITECTURE).
 
:* O '''BLOCK'''.
 
:* A instrução '''ASSERT''' condicional e incondicional
 
:* A '''FUNCTION''': declaração, uso, mapeamento posicional x nominal, PURE x IMPURE. 
 
 
 
:* Ver pag. 213 a 226 de <ref name="PEDRONI2010b"/>)
 
:* Ver exercício proposto na AE5.
 
 
 
;Aula 26 (22 abr):
 
*Projeto a nível de Sistema.
 
:* Uso de '''FUNCTION''' e '''ASSERT'''. 
 
::* Exemplo: Declaração em ARCHITECTURE Ex.9.1
 
::* Exemplo: Declaração em PACKAGE Ex. 9.2
 
::* Exemplo: Declaração em ENTITY Ex. 9.3
 
 
 
:* Ver pag. 226 a 230 de <ref name="PEDRONI2010b"/>
 
 
 
==Recursos de Laboratório==
 
===Quartus/Modelsim/QSIM===
 
Nos laboratórios do IFSC, os softwares Quartus/Modelsim/QSIM estão disponíveis diretamente na plataforma LINUX. Utilize preferencialmente a versão 13.0sp1 (32 bits), pois ela tem suporte para os FPGAs mais antigos como a familia Cyclone I.
 
 
 
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)]].
 
 
 
===Sharelatex===
 
Para a geração de documentação/relatórios técnicos/artigos, está disponibilizada a plataforma  [http://200.135.233.26:3000/project Sharelatex do IFSC-CLOUD]. Utilize preferencialmente o [http://200.135.233.26:3000/project/54750cb57ae8187440d60acd  modelo de artigo no padrão ABNT].
 
 
 
<!--
 
<!--
*[http://wiki.sj.ifsc.edu.br/images/a/a5/Sst-intro.pdf Aula inicial]
+
==Instalação da VM com Quartus e Modelsim em seu computador==
*[[Introdução aos dispositivos lógicos programáveis]]
 
*[[Introdução à tecnologia FPGA ]]
 
*[[Introdução a linguagem VHDL]]
 
*[[Aritmética com vetores em VDHL]]
 
  
*[[Códigos VDHL - DLP]]
+
Para importar a VM para o seu computador e configurar ela para acessar a licença do IFSC veja a página [[Teste de VM para uso pelos alunos no ensino remoto#VM Quartus e Modelsim | Instalação da VM com Quartus e Modelsim]]
*[[Códigos VHDL para uso nas Aulas]]
 
*[[Códigos VHDL para uso nas Aulas 2011-1]]
 
 
-->
 
-->
 +
<!--
 +
==Instalar o Quartus II e Modelsim em seu computador==
 +
A princípio não será necessário que vocês instalem o Quartus II diretamente em suas maquinas, pois podem utilizar a nuvem do IFSC ou então instalar a VM acima.  Mesmo assim se alguém preferir instalar o Quartus recomendo que instalem a versão Quartus II Web Edition.
  
==Atividades extra==
+
Apesar de existirem versões mais novas usem a versão mais leve 13.1. (https://fpgasoftware.intel.com/13.1/?edition=web).  Será necessário apenas baixar e instalar os seguintes arquivos:
===JÁ ENCERRADAS===
+
* Quartus II Software (includes Nios II EDS) Size: 1.5 GB MD5: 672AD34728F7173AC8AECFB2C7A10484
{{collapse top | AE1 - Estudo do tipo de programação dos FPGA (prazo 20/02/2015)}}
+
* ModelSim-Altera Edition (includes Starter Edition) Size: 817.7 MB MD5: 45FEA341405603F5CF5CD1249BF90976
*Fazer uma pesquisa sobre as formas como os PLDs são programados. Fusíveis, antifusíseis, memória PROM, EPROM, EEPROM, Flash, SRAM, etc. Formar equipes de até 2 alunos e apresentar um resumo em 2 a 3 páginas A4.  
+
* Cyclone III, Cyclone IV device support (includes all variations) Size: 548.4 MB MD5: 79AB3CEBD5C1E64852970277FF1F2716
{{collapse bottom}}
 
  
{{collapse top | AE2 - Estudo do Quartus II e Dispositivos FPGA (prazo 27/02/2015)}}
+
* '''Esse vídeo aqui explica os passos do download [https://www.youtube.com/watch?v=4GgZ850h9Lg&feature=youtu.be&t=58 Download e instalação do Quartus Web Edition]
* Utilize no Quartus II o arquivo [[media:adders.qar | adders.qar]] para realizar os seguintes procedimentos:
+
'''
:P0 - Selecione a família de FPGA Cyclone e selecione o dispositivo EP1C3T100A8
+
-->
:P1 - Selecione como Top-Level Entity o arquivo '''adder_4bits.vhd''' e compile esse código [Processing > Start Compilation].
 
:*Anote o número de Elementos Lógicos (ou ALUTs) utilizados [Compilation Report > Flow Summary].  
 
:*Verifique qual é o maior tempo de propagação entre as entradas a,b e saida sum [Compilation Report > TimeQuest ... > Datasheet Report > Propagation Delay].
 
:*Verifique o código RTL gerado [Tools > Netlist Viewers > RTL Viewer]
 
:*Verifique como o circuito foi sintetizado abrindo o [Chip Planner], e após dar um zoom no Elemento lógico (ou ALUT) utilizado verifique o hardware que foi utilizado com o [Resource Property Editor]
 
:*Faça a simulação funcional utilizando o arquivo '''tb_adder_4bits.vwf''' no QSIM, e verifique se as somas estão corretas.
 
:P2 - Selecione como Top-Level Entity o arquivo '''adder_ripple_4bits.bdf''' e compile esse código [Processing > Start Compilation].
 
:* Repita os passos do procedimento P1.
 
:P3 - Troque a familia do FPGA para Stratix III e selecione o dispositivo EP3SE50F484C2 e repita os procedimento P1 e P2 acima.
 
:P4 - Análise os resultados obtidos e chegue as suas conclusões.  Escreva os resultados em um artigo resumido de 1 a 2  páginas. 
 
* Exemplos ilustrativos de utilização do elemento lógico/ALUT
 
:*Adder de 4 bits em EP1C3T100A8
 
::[[Arquivo:Adder_4bits_EP1C3T100A8.png| 800 px]]
 
  
:*Adder de 4 bits em EP3SE50F484C2
+
==Recursos de Laboratório==
::[[Arquivo:Adder_4bits_EP3SE50F484C2.png | 800 px]]
+
Nos laboratórios do IFSC, os softwares '''Quartus''' e '''Modelsim''' estão disponíveis diretamente na plataforma LINUX.  O laboratório também dispõe de diversos kits FPGA que podem ser programados para testar os sistemas implementados.
  
:*Riple Adder de 4bits em EP3SE50F484C2
+
==Acesso a Nuvem do IFSC==
::[[Arquivo:Riple_Adder_4bits_EP3SE50F484C2.png | 800 px]]
+
Para uso fora do IFSC dos recursos computacionais com licença educacional, o IFSC disponibiliza para seus alunos o IFSC-CLOUD (nuvem.sj.ifsc.edu.br).  A forma mais eficiente de acesso a nuvem de fora do IFSC é através do Cliente X2GO, mas dentro da rede do IFSC o acesso pelo ssh também tem boa usabilidade.  Veja detalhes em [[Acesso ao IFSC-CLOUD (NUVEM)]].
{{collapse bottom}}
 
  
{{collapse top | AE3 - Uso de operadores e tipos de dados (Prazo de entrega 23/03/2015)}}
+
Para para utilizar o Quartus/Modelsim/QSIM através da Nuvem do IFSC, siga o procedimento de  '''[[Acesso_ao_IFSC-CLOUD_(NUVEM)#Procedimento_para_uso_da_nuvem.sj.ifsc.edu.br | configuração do X2Go]]''''''Nota:''' O desempenho do Modelsim pode ficar ruim quando acesso da rede externa ao IFSC.
*Para o exercício 4.15 escreva um código VHDL e faça a simulação temporal.
 
*Para o exercício 4.17 escreva um código VHDL e analise o número de elementos lógicos necessáriosCompare com os outros estudantes e analise das diferenças.
 
  
::Para facilitar os testes e a troca de informações entre as equipes, a ENTITY deverá ter o seguinte formato:
+
<!--
<syntaxhighlight lang=vhdl>
+
==Modelos para relatório==
entity bin2bcd is
+
Para a geração de documentação/relatórios técnicos/artigos, use como base o modelo ABNTex2 para o padrão do IFSC para monografia que segue as normas da ABNT e do IFSC.
port (
+
Recomendo que os alunos da Engenharia de Telecomunicações utilizem esse modelo e o [https://www.overleaf.com Overleafv2], pois além de possibilitar o compartilhamento do documento entre os alunos, reduz o tempo perdido na formação do documento, permitindo que o aluno já aprenda alguma formatação de Latex que será útil na elaboração do TCC.
num_bin : in std_logic_vector(9 downto 0);
+
*[https://www.overleaf.com/read/dbjkqgsghfbk Modelo para relatório em LaTex]
C_bcd : out std_logic_vector(3 downto 0);
 
D_bcd : out std_logic_vector(3 downto 0);
 
U_bcd : out std_logic_vector(3 downto 0));
 
  
end entity;
+
==Links importantes (mais consultados)==
</syntaxhighlight>
+
*[[Aritmética com vetores em VDHL]]
{{collapse bottom}}
+
*[[Preparando para gravar o circuito lógico no FPGA]]
 
+
*[[Criação de um acesso remoto ao kit MERCURIO IV]]
{{collapse top | AE4 - Uso de código concorrente - ALU multiplicadora (Prazo de entrega 01/04/2015)}}
+
*[[Dicas de como eliminar o repique das chaves mecânicas]]
*A Unidade de Lógica e Aritmética deve ter as seguintes funções:
+
*[[Medição de tempos de propagação em circuitos combinacionais]]
;Unidade Lógica:
+
*[[Restringir a frequencia máxima de clock no Quartus II]]
{| class="wikitable"  border="1" cellpadding="3" cellspacing="0" style="text-align:left; font-size:100%" bgcolor="#efefef"
+
*[[Acesso ao IFSC-CLOUD (NUVEM)]]
! scope="col" width=20% align="center"| Instrução
+
*[[Linguagem_.dot#Como_gerar_o_diagrama_de_uma_maquina_de_estados_finita_em_linguagem_dot |Gerar o diagrama de uma maquina de estados finita em linguagem dot]]
! scope="col" width=20% align="center"| Operação
+
*[[Mensagens de Erros e Warnings do Quartus II]]
! scope="col" width=20% align="center"| opcode
 
|-
 
| Complemento de A || y = not A || 0000
 
|-
 
| Complemento de B || y = not B || 0001
 
|-
 
| And || y = A and B || 0010
 
|-
 
| Nand || y = A nand B || 0011
 
|-
 
| Or || y = A or B || 0100
 
|-
 
| Nor || y = A nor B || 0101
 
|-
 
| Xor || y = A xor B || 0110
 
|-
 
| Xnor || y = A xnor B || 0111
 
|}
 
 
 
;Unidade Aritmética:
 
{| class="wikitable"  border="1" cellpadding="3" cellspacing="0" style="text-align:left; font-size:100%" bgcolor="#efefef"
 
! scope="col" width=20% align="center"| Instrução
 
! scope="col" width=20% align="center"| Operação
 
! scope="col" width=20% align="center"| opcode
 
|-
 
| Transfere A || y = A || 1000
 
|-
 
| Transfere B || y = B || 1001
 
|-
 
| Incrementa A || y = A + 1 || 1010
 
|-
 
| Decrementa A || y = A - 1 || 1011
 
|-
 
| Soma A e B|| y = A + B || 1100
 
|-
 
| Subtrai B de A|| y = A - B || 1101
 
|-
 
| Multiplica A e B || y = A * B || 1110
 
|-
 
| Dobra o valor A || y = A * 2 || 1111
 
|}
 
:* As operações aritméticas devem considerar apenas números positivos.
 
:* Indique a validade do resultado com o bit '''valid'''. Válido => '''valid''' = '1', Inválido => '''valid''' = '0'.
 
* A ENTITY deverá ter a seguinte interface:
 
<syntaxhighlight lang=matlab>
 
ENTITY alu IS
 
GENERIC (N: INTEGER := 4); --word bits
 
PORT (
 
a, b: IN STD_LOGIC_VECTOR(N-1 DOWNTO 0);
 
opcode: IN STD_LOGIC_VECTOR(3 DOWNTO 0);
 
valid: out STD_LOGIC;
 
y: OUT STD_LOGIC_VECTOR(2*N-1 DOWNTO 0));
 
END ENTITY;
 
</syntaxhighlight>
 
* Proponha uma ARCHITECTURE que implemente a ALU (Dica: utilize o tipo de dado tipo '''integer''').
 
* Anote o número de Elementos Lógicos (ou ALUTs) utilizados [Compilation Report > Flow Summary].
 
* Verifique qual é o maior tempo de propagação entre as entradas a,b e saida sum [Compilation Report > TimeQuest ... > Datasheet Report > Propagation Delay].
 
* Verifique o código RTL gerado [Tools > Netlist Viewers > RTL Viewer]
 
* Faça a simulação funcional e temporal no QSIM, e verifique se as operações estão corretas.
 
* Análise os resultados obtidos considerando as entradas com 4 bits e também com 8 bits. 
 
{{collapse bottom}}
 
 
 
===ESTUDOS SEM ENTREGA DE DOCUMENTAÇÃO===
 
{{collapse top | Estrutura do VHDL}}
 
* Faça o exercício 2.1 <ref name="PEDRONI2010b"/>, completando o código VHDL.  Idente o código. Procure entender o código inserindo comentários onde julgar importante.  Depois de tudo realizado compile e simule o código.  Procure obter '''zero''' erros na primeira complilação.
 
 
 
<code>
 
----------------------------------------------------
 
LIBRARY ieee;
 
USE _________________________;
 
----------------------------------------------------
 
ENTITY mux IS
 
PORT (___, ___: ___ STD_LOGIC_VECTOR(7 DOWNTO 0);
 
sel: IN ____________________________;
 
___: OUT STD_LOGIC_VECTOR(__ DOWNTO 0));
 
END _____;
 
----------------------------------------------------
 
ARCHITECTURE example OF _____ IS
 
BEGIN
 
PROCESS (a, b, ____)
 
BEGIN
 
IF (sel="00") THEN
 
x <= "00000000";
 
ELSIF (__________) THEN
 
x <= a;
 
_____ (sel="10") THEN
 
x <= __;
 
ELSE
 
x <= "___________";
 
END ___;
 
END __________;
 
END __________;
 
----------------------------------------------------
 
</syntaxhighlight>
 
{{collapse bottom}}
 
 
 
{{collapse top | Estudo dos atributos em VDHL}}
 
<syntaxhighlight lang=vhdl>
 
entity atributte_test_array is
 
port(
 
x1, x2, x3, x4, x5, x6: out integer range 0 to 15;
 
x7, x8: out boolean;
 
m12, m44, m47: out bit);
 
end entity;
 
 
 
architecture ifsc of atributte_test_array is
 
TYPE matrix IS ARRAY (1 TO 4, 7 DOWNTO 0) OF BIT;
 
SIGNAL test: matrix := (('0', '1', '1', '0', '0', '1', '1', '0'), "01110100", ('1', others => '0'), (4 => '0', others => '1'));
 
begin
 
--------------------------------------------------------------------------
 
x1 <= matrix'LEFT(1); --result=1 (type of x1 must be INTEGER or eq.)
 
x2 <= matrix'LEFT(2); --result=7 (type of x2 must be INTEGER or eq.)
 
x3 <= matrix'RIGHT(1); --result=4 (type of x3 must be INTEGER or eq.)
 
x4 <= matrix'RIGHT(2); --result=0 (type of x4 must be INTEGER or eq.)
 
x5 <= matrix'LENGTH(1); --result=4 (type of x5 must be INTEGER or eq.)
 
x6 <= matrix'LENGTH(2); --result=8 (type of x6 must be INTEGER or eq.)
 
x7 <= matrix'ASCENDING(1); --result=TRUE (type of x7 must be BOOLEAN)
 
x8 <= matrix'ASCENDING(2); --result=FALSE (type of x8 must be BOOLEAN)
 
m12 <= test(1,2); -- result = '1' - Acess the element of 'test' row(1), columm(2) (type of  m11 must be bit)
 
m47 <= test(4,7); -- result = '1' - Acess the element of 'test'  row(7), columm(7) (type of  m11 must be bit)
 
m44 <= test(4,4); -- result = '0' - Acess the element of 'test'  row(4), columm(4)  (type of  m11 must be bit)
 
--------------------------------------------------------------------------
 
end architecture;
 
</syntaxhighlight>
 
{{collapse bottom}}
 
 
 
{{collapse top | Resolução dos exercícios do Cap 3}}
 
*Resolva os exercícios da capítulo 3 (1, 2, 9, 11-13, 18-20, 23-30) pag. 81 a 89
 
{{collapse bottom}}
 
 
 
{{collapse top | Resolução dos exercícios do Cap 4}}
 
*Resolva os exercícios da capítulo 4 (4-11, 13, 15-17 ) pag. 115 a 120
 
{{collapse bottom}}
 
 
 
{{collapse top | Resolução dos exercícios do Cap 5}}
 
*Resolva os exercícios da capítulo 5 (1, 3, 4, 6-11, 14-19) pag. 144 a 150
 
{{collapse bottom}}
 
 
 
{{collapse top | expand=1 |Projetar Conversor de binário para 7 segmentos}}
 
Projetar em VHDL dois conversores de binário para 7 segmentos a) usando código concorrente (SELECT) e b) usando código sequencial (CASE).
 
:*Considerar a saída do conversor com lógica positiva (ativo = '1').
 
:*Simular o circuito com valores de entrada entre 0 = "0000" até 15 = "1111". Para entradas de 0-9 devem ser mostrados os valores decimais no display. Para entradas de 10 a 14 é indiferente o valor a ser mostrado. Para o valor 15 deve ser ativado apenas o segmento g
 
:*Conferir se as saídas estão corretas para cada uma das entrada. Dica: leia [[Display de 7 segmentos]].
 
<syntaxhighlight lang=vhdl>
 
ENTITY ssd IS
 
  PORT (
 
    bin: IN STD_LOGIC_VECTOR(3 DOWNTO 0);
 
    ssd: OUT STD_LOGIC_VECTOR(6 DOWNTO 0)
 
        );
 
END ENTITY;
 
</syntaxhighlight>
 
{{collapse bottom}}
 
 
 
===PARA ENTREGAR===
 
{{collapse top | expand = 1 | AE5 - Circuitos  Genéricos com código estrutural (Prazo de entrega 04/05/2015)}}
 
* Projete os três circuitos a seguir, utilizando: i) código estrutural; ii) componentes genéricos conforme indicado:
 
:# Somador do tipo carry-ripple de N bits (componente: '''Full Adder''').
 
:# Contador Assíncrono de módulo <math>2^N</math> (componente: '''Divisor por 2''').
 
:# Contador Síncronos de módulo <math>2^N</math> (componente: '''Módulo mostrado na figura 8.9''' de <ref name="PEDRONI2010b"/>).
 
* Teste cada componente separadamente e utilize-o para criar os circuito acima.
 
* Implemente cada circuito acima utilizando 3 bits e também 32 bits.
 
* Verifique o código RTL gerado [Tools > Netlist Viewers > RTL Viewer].
 
* Anote o número de Elementos Lógicos (ou ALUTs) utilizados [Compilation Report > Flow Summary].
 
* Verifique qual é o maior tempo de propagação entre as entradas de cada circuito e as saídas  [Compilation Report > TimeQuest ... > Datasheet Report > Propagation Delay].
 
* Faça a simulação funcional e temporal no QSIM, e verifique se os circuitos estão funcionando corretamente.
 
* Análise os resultados obtidos.
 
* De um título coerente ao artigo e faça um resumo e introdução que esteja relacionado aos resultados que você deseja analisar.
 
* Escreva um relatório na forma de artigo, utilizando preferencialmente o [http://200.135.233.26:3000/project/54750cb57ae8187440d60acd  modelo de artigo no padrão ABNT], disponível no ShareLaTeX do IFSC-CLOUD.
 
* Faça  um resumo e introdução que esteja relacionado aos resultados que você deseja analisar.
 
* De um título coerente ao artigo. Seja criativo...
 
* Imagens muito grandes deverão ser acrescidas ao artigo na forma de apêndice (preferencialmente use a wiki com um hiperlink no artigo).
 
 
 
{{collapse bottom}}
 
  
 
==Links auxiliares==
 
==Links auxiliares==
*[[Aritmética com vetores em VDHL]]
+
*[[Media:Quartus_II_Simulation.pdf | Tutorial do QSIM - Introduction to Simulation of VHDL Designs]] da ALTERA.
*[[Preparando para gravar o circuito lógico no FPGA]]
+
*[[Palavras reservadas do VHDL]]
 +
*[http://web.archive.org/web/20160313200350/http://vhdl.org/fphdl/index.html VHDL-2008 Support Library]
 +
*[[Dicas para resolver ERROS de síntese do VHDL no Quartus II]]
 +
*[ftp://ftp.altera.com/up/pub/Altera_Material/13.1/Tutorials/VHDL/ Materiais da ALTERA para Quartus II 13.1]
 +
*[[Modelo para uso em relatórios]]
 +
*[[Configuração e uso do Time Quest Analyser]]
 +
*[[Configuração e uso do Signal Tap]]
 +
*[http://docente.ifsc.edu.br/moecke/PAGES/Dec2C_2.html Calculadora de Complemento de 2]
 +
*[[Como utilizar a matriz de leds do kit Mercurio IV da Macnica]]
 +
*[http://g2384.github.io/work/VHDLformatter.html VHDL Beautifier, Formatter] - para identar automaticamente um código VHDL.
 +
*[https://www.youtube.com/watch?v=08YHxtSI3Bk How to create a State Machine with the Quartus State Machine Wizard]
 +
*[https://trends.google.com.br/trends/explore?date=today%205-y&q=vhdl,verilog Veja qual é a tendencia mundial em relação as linguagens HDL]
 +
*[https://www.intel.com/content/www/us/en/programmable/documentation/spj1513986956763.html Intel Quartus Prime Pro Edition User Guide: Getting Started]
 +
*[https://www.h-schmidt.net/FloatConverter/IEEE754.html  IEEE 754 - Floating point number]
 +
*[https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/an/an447.pdf AN 447: Interfacing Intel® FPGA Devices with 3.3/3.0/2.5 V LVTTL/LVCMOS I/O Systems]
  
 
==Livros/Resumos sobre VHDL==
 
==Livros/Resumos sobre VHDL==
 +
*[[Regras de codificação em VHDL]]
 
*[[Media:VHDL_Handbook-Hardi.pdf | VHDL Handbook]] - Hardi (apenas VHDL’87 e VHDL’93)
 
*[[Media:VHDL_Handbook-Hardi.pdf | VHDL Handbook]] - Hardi (apenas VHDL’87 e VHDL’93)
 +
*[http://www.synthworks.com/papers/vhdl_math_tricks_mapld_2003.pdf VHDL Math Tricks of the Trade] by Jim Lewis
 
*[[Media:VHDL_QRC-Qualis.pdf | VHDL QUICK REFERENCE CARD]] - Qualis (r2.1)
 
*[[Media:VHDL_QRC-Qualis.pdf | VHDL QUICK REFERENCE CARD]] - Qualis (r2.1)
 
*[[Media:VHDL1164_QRC-Qualis.pdf | VHDL 1164 PACKAGES QUICK REFERENCE CARD]] - Qualis (r2.2)
 
*[[Media:VHDL1164_QRC-Qualis.pdf | VHDL 1164 PACKAGES QUICK REFERENCE CARD]] - Qualis (r2.2)
 +
*[http://www.ics.uci.edu/~jmoorkan/vhdlref/ VDHL ref]
 +
*[http://www.vhdl.renerta.com/source/vhd00000.htm VHDL Language Reference Guide]
 +
*[http://www.ics.uci.edu/~jmoorkan/vhdlref/vhdl_golden_reference_guide.pdf VHDL Golden Reference Guide]
 
*[http://www.cs.umbc.edu/portal/help/VHDL/stdpkg.html Listagem dos packages]
 
*[http://www.cs.umbc.edu/portal/help/VHDL/stdpkg.html Listagem dos packages]
 
*[http://www.cs.umbc.edu/portal/help/VHDL/reserved.html Palavras reservadas]
 
*[http://www.cs.umbc.edu/portal/help/VHDL/reserved.html Palavras reservadas]
 
*[http://www.csee.umbc.edu/portal/help/VHDL/attribute.html Atributos predefinidos]
 
*[http://www.csee.umbc.edu/portal/help/VHDL/attribute.html Atributos predefinidos]
 +
*[https://blog.ufes.br/sistemasembarcados/files/2015/03/aritmetica-em-vhdl.pdf Aritmética em VHDL]
 +
*[https://wiki.kip.uni-heidelberg.de/KIPwiki/images/d/d7/VHDL_Language_Reference_Guide_(help_file).pdf VHDL Language Reference Guide]
 +
 +
==Packages não padronizados de VHDL==
 +
*[[Std logic arith.vhd]] by Synopsys
 +
*[http://eda.org/rassp/vhdl/models/standards/std_logic_arith.vhd std_logic_arith.vhd] by Synopsys
 +
*[http://www.pldworld.com/_hdl/1/VHDL_courses/cse518/std_logic_arith_header.vhdl std_logic_arith.vhd] by Mentor Graphics
 +
*[http://www.csee.umbc.edu/portal/help/VHDL/packages/cpureieee/std_logic_arith.vhd std_logic_arith.vhd] by Vinaya
 +
 +
*[[Std logic unsigned.vdh]] by Synopsys
 +
*[http://eda.org/rassp/vhdl/models/standards/std_logic_unsigned.vhd std_logic_unsigned.vhd] by Synopsys
 +
 +
==Quartus II==
 +
*[https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/manual/TclScriptRefMnl.pdf Quartus II Scripting Reference Manual], ver como programar o FPGA sem interface gráfica com quartus_pgm
 +
*[[Como instalar o Quartus no Ubuntu 20.04]]
 +
*[https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/qts/archives/quartusii_handbook_archive_131.pdf Quartus II Handbook Version 13.1]
 +
 +
==Simulador Modelsim==
 +
*[http://model.com/content/modelsim-pe-simulation-and-debug Site Mentor Graphics] - Software Version 10.0
 +
*[http://vk.drlnet.dyndns.org/help/modelsim/infohubs/basic.htm ModelSim InfoHub] - Software Version v10.2c
 +
:*[http://www.mentor.com/products/fv/multimedia/overview/modelsim-demo-overview-34d471dc-cb74-400b-be98-5a81213cf45a ModelSim Quick Video Demo] - precisa fazer login na Mentor Graphics.
 +
:*[[Media:modelsim_tut.pdf |ModelSim® Tutorial]] -v10.0d
 +
:*[[Media:modelsim_pe_ref.pdf |ModelSim® Reference Manual]] -v10.0d
 +
:*[[Media:modelsim_pe_user.pdf |ModelSim® User’s Manual]] -v10.0d
 +
:*[[Media:m_qk_guide.pdf |ModelSim® Quick Guide]] -v10.0d
 +
:*[[Media:modelsim_se_gui_refv10_2c.pdf |ModelSim® SE GUI Reference Manual]] -v10.2c
  
 
==Fabricantes de DLPs==
 
==Fabricantes de DLPs==
Linha 503: Linha 114:
 
*[http://www.atmel.com/products/other/spld-cpld/default.aspx Atmel]
 
*[http://www.atmel.com/products/other/spld-cpld/default.aspx Atmel]
 
*[http://www.achronix.com/products/speedster22ihd.html Achronix]
 
*[http://www.achronix.com/products/speedster22ihd.html Achronix]
*[http://www.tabula.com/index.php Tabula]
+
*[https://en.wikipedia.org/wiki/Tabula_%28company%29 Tabula], [https://www.quora.com/Who-killed-the-FPGA-startup-Tabula-semiconductor Who killed the FPGA startup Tabula semiconductor?]
 
*[http://sourcetech411.com/2013/04/top-fpga-companies-for-2013/ Market share 2013]
 
*[http://sourcetech411.com/2013/04/top-fpga-companies-for-2013/ Market share 2013]
 +
*[http://marketrealist.com/2015/06/intel-keen-alteras-fpga-technology/ INTEL]
 +
 +
==Fabricantes de kits com DLPS==
 +
*[http://www.macnicadhw.com.br/products/mercurion-4-devkit-board MACNICA]
 +
*[http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&CategoryNo=163#Category165 TERASIC]
 +
 +
==Leituras recomendadas==
 +
*[http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20070019291.pdf USE OF FIELD PROGRAMMABLE GATE ARRAY TECHNOLOGY IN FUTURE: SPACE AVIONICS], Roscoe C. Ferguson, Robert Tate, NASA.
 +
*[https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/wp/wp-01199-next-generation-fpgas.pdf Expect a Breakthrough Advantage in NextGeneration FPGAs], Stephen Lim, ALTERA.
 +
*[https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/Catapult_ISCA_2014.pdf A Reconfigurable Fabric for Accelerating Large-Scale Datacenter Services], Microsoft.
  
<!--
 
 
===Linguagens de programação de hardware===
 
===Linguagens de programação de hardware===
 
*[http://trends.google.com/trends/explore#q=vhdl,verilog Tendência Google]
 
*[http://trends.google.com/trends/explore#q=vhdl,verilog Tendência Google]
Linha 541: Linha 161:
 
*Motorola
 
*Motorola
 
*[http://www.analog.com/en/embedded-processing-dsp/processors/index.html Analog Devices]
 
*[http://www.analog.com/en/embedded-processing-dsp/processors/index.html Analog Devices]
-->
 
  
 
==Padrões IEEE para o VDHL==
 
==Padrões IEEE para o VDHL==
Os padrões IEEE [http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/xpl/standards.jsp?item=0%20-%2099&sortType=standard_newest&pageNumber=1]estão disponíveis para consulta se você estiver na rede do IFSC. Para a linguagem VHDL consulte os padrões: [http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/search/searchresult.jsp?action=search&sortType=&rowsPerPage=&searchField=Search_All&matchBoolean=true&queryText=(%22Standard%20Number%22:1164) 1164],[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/search/searchresult.jsp?action=search&sortType=&rowsPerPage=&searchField=Search_All&matchBoolean=true&queryText=(%22Standard%20Number%22:1076)&refinements=4294967269 1076]
+
Os padrões IEEE [http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/xpl/standards.jsp?item=0%20-%2099&sortType=standard_newest&pageNumber=1]estão disponíveis para consulta se você estiver na rede do IFSC ou através do '''Periódicos CAPES via CAFE'''. Para a linguagem VHDL consulte os padrões de [https://ieeexplore-ieee-org.ez130.periodicos.capes.gov.br/browse/standards/collection/ieee?queryText=VHDL) VHDL]
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=257627 IEEE Standard Multivalue Logic System for VHDL Model Interoperability (Std_logic_1164)]
+
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/xpl/articleDetails.jsp?arnumber=257627&newsearch=true&queryText=IEEE%20Standard%20Multivalue%20Logic%20System%20for%20VHDL%20Model%20Interoperability%20.LB.Std_logic_1164.RB. IEEE Standard Multivalue Logic System for VHDL Model Interoperability (Std_logic_1164)]
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=1405848 IEEE Std 1076.1: Behavioural languages – Part 1-1: VHDL language reference manual] [http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=5981354 REDLINE]
+
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/xpl/articleDetails.jsp?arnumber=5967868&newsearch=true&queryText=IEEE%20Std%201076.1:%20Behavioural%20languages%20%E2%80%93%20Part%201-1:%20VHDL%20language%20reference%20manual IEEE Std 1076.1: Behavioural languages – Part 1-1: VHDL language reference manual]  
 
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=5464492 IEEE Std 1076.1: Behavioural languages – Part 6: VHDL Analog and Mixed-Signal Extensions]
 
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=5464492 IEEE Std 1076.1: Behavioural languages – Part 6: VHDL Analog and Mixed-Signal Extensions]
 
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=5752649 IEEE Std 1076.1.1™-2011 - IEEE Standard for VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support], [http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=5953447 REDLINE]
 
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=5752649 IEEE Std 1076.1.1™-2011 - IEEE Standard for VHDL Analog and Mixed-Signal Extensions—Packages for Multiple Energy Domain Support], [http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=5953447 REDLINE]
Linha 552: Linha 171:
 
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=4384309 IEEE Standard VHDL Analog and Mixed-Signal Extensions]
 
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=4384309 IEEE Standard VHDL Analog and Mixed-Signal Extensions]
 
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=592543 IEEE Standard VHDL Synthesis Packages]
 
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=592543 IEEE Standard VHDL Synthesis Packages]
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=1003477 IEEE Std 1076-2002: IEEE Standard VHDL Language Reference Manual]
+
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=1003477 IEEE Std 1076-2002: IEEE Standard VHDL Language Reference Manual], ver mais rescentes [IEEE 1076-2008 - IEEE Standard VHDL Language Reference Manual]  e [IEEE 1076-2019 - IEEE Standard for VHDL Language Reference Manual]
 
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=556551  IEEE Std 1076.2-1996:  IEEE Standard VHDL Mathematical Packages]
 
*[http://ieeexplore.ieee.org.ez130.periodicos.capes.gov.br/stamp/stamp.jsp?tp=&arnumber=556551  IEEE Std 1076.2-1996:  IEEE Standard VHDL Mathematical Packages]
 +
;Packages da IEEE:
 +
*[[Std logic 1164.vhd]]
 +
*[[Numeric std.vhd]]
 +
-->
 +
 +
==Registro Diário e Avaliação Anteriores==
 +
[https://wiki.sj.ifsc.edu.br/index.php?title=DLP29006-Engtelecom_(Di%C3%A1rio)_-_Prof._Marcos_Moecke&oldid=188893  2023-1], [https://wiki.sj.ifsc.edu.br/index.php?title=DLP29006-Engtelecom_(Di%C3%A1rio)_-_Prof._Marcos_Moecke&oldid=186913  2022-2],
 +
[https://wiki.sj.ifsc.edu.br/index.php?title=DLP29006-Engtelecom_(Di%C3%A1rio)_-_Prof._Marcos_Moecke&oldid=184068  2022-1],
 +
[https://wiki.sj.ifsc.edu.br/index.php?title=DLP29006-Engtelecom_(Di%C3%A1rio)_-_Prof._Marcos_Moecke&oldid=182146  2021-2],
 +
[[DLP29006-Engtelecom(2021-1) - Prof. Marcos Moecke |  2021-1]],
 +
[[DLP29006-Engtelecom(2020-2) - Prof. Marcos Moecke |  2020-2]],
 +
[[DLP29006-Engtelecom(2020-1) - Prof. Marcos Moecke |  2020-1]],
 +
[[DLP29006-Engtelecom(2019-2) - Prof. Marcos Moecke |  2019-2]],
 +
[[DLP29006-Engtelecom(2019-1) - Prof. Marcos Moecke |  2019-1]],
 +
[[DLP29006-Engtelecom(2018-2) - Prof. Marcos Moecke |  2018-2]],
 +
[[DLP29006-Engtelecom(2018-1) - Prof. Marcos Moecke |  2018-1]],
 +
[[DLP29006-Engtelecom(2017-2) - Prof. Marcos Moecke |  2017-2]],
 +
[[DLP29006-Engtelecom(2017-1) - Prof. Marcos Moecke |  2017-1]],
 +
[[DLP29006-Engtelecom(2016-2) - Prof. Marcos Moecke |  2016-2]],
 +
[[DLP29006-Engtelecom(2016-1) - Prof. Marcos Moecke |  2016-1]],
 +
[[DLP29006-Engtelecom(2015-2) - Prof. Marcos Moecke |  2015-2]],
 +
[[DLP29006-Engtelecom(2015-1) - Prof. Marcos Moecke |  2015-1]].
  
 
==Referências Bibliográficas:==
 
==Referências Bibliográficas:==

Edição atual tal como às 21h51min de 26 de julho de 2023

MURAL DE AVISOS E OPORTUNIDADES DA ÁREA DE TELECOMUNICAÇÕES


Avisos importantes

  • Nesta página wiki, você tem orientações para uso de ferramentas e também links que auxiliam no estudo da disciplina. Visite os links sempre que solicitado e lei essa página para lembrar futuramente onde estão as informações que necessita.

Recursos de Laboratório

Nos laboratórios do IFSC, os softwares Quartus e Modelsim estão disponíveis diretamente na plataforma LINUX. O laboratório também dispõe de diversos kits FPGA que podem ser programados para testar os sistemas implementados.

Acesso a Nuvem do IFSC

Para uso fora do IFSC dos recursos computacionais com licença educacional, o IFSC disponibiliza para seus alunos o IFSC-CLOUD (nuvem.sj.ifsc.edu.br). A forma mais eficiente de acesso a nuvem de fora do IFSC é através do Cliente X2GO, mas dentro da rede do IFSC o acesso pelo ssh também tem boa usabilidade. Veja detalhes em Acesso ao IFSC-CLOUD (NUVEM).

Para para utilizar o Quartus/Modelsim/QSIM através da Nuvem do IFSC, siga o procedimento de configuração do X2Go. Nota: O desempenho do Modelsim pode ficar ruim quando acesso da rede externa ao IFSC.


Registro Diário e Avaliação Anteriores

2023-1, 2022-2, 2022-1, 2021-2, 2021-1, 2020-2, 2020-1, 2019-2, 2019-1, 2018-2, 2018-1, 2017-2, 2017-1, 2016-2, 2016-1, 2015-2, 2015-1.

Referências Bibliográficas:



Curso de Engenharia de Telecomunicações