SST20707-2014-1: mudanças entre as edições
Sem resumo de edição |
|||
Linha 62: | Linha 62: | ||
* Apresentação da Linguagem VHDL | * Apresentação da Linguagem VHDL | ||
* Conceitos de entidade (entity) e arquitetura (architecture) | * Conceitos de entidade (entity) e arquitetura (architecture) | ||
= 24/02: Linguagem VHDL = | |||
== Exemplos VHDL (Entity e Architecture) == | |||
* Meio Somador | |||
* LCD and Switch | |||
==Componentes (COMPONENT, PORT MAP)== | |||
*Sintaxe Simplificada: | |||
;:<syntaxhighlight lang=vhdl> | |||
--Declaração---------------------------------------------------------- | |||
COMPONENT component_name [IS] | |||
[GENERIC ( | |||
const_name: const_type := const_value; | |||
...);] | |||
PORT ( | |||
port_name: port_mode signal_type; | |||
...); | |||
END COMPONENT [component_name]; | |||
--Instanciação---------------------------------------------------------- | |||
label: [COMPONENT] component_name [GENERIC MAP (generic_list) ] PORT MAP (port_list); | |||
</syntaxhighlight> | |||
*Exemplo: | |||
;:<code> | |||
--Declaração---------------------------------------------------------- | |||
COMPONENT nand_gate IS | |||
PORT ( a, b: IN STD_LOGIC; | |||
c: OUT STD_LOGIC); | |||
END COMPONENT; | |||
--Instanciação--------------------------------------------------------- | |||
nand1: nand_gate PORT MAP (x, y, z); --mapeamento posicional | |||
nand2: nand_gate PORT MAP (a=>x, b=>y, c=>z); --mapeamento nominal | |||
</syntaxhighlight> | |||
*Exemplo GENERIC: | |||
;:<code> | |||
--Declaração---------------------------------------------------------- | |||
COMPONENT xor_gate IS | |||
GENERIC (N: INTEGER := 8); | |||
PORT ( a: IN STD_LOGIC(1 TO N); | |||
b: OUT STD_LOGIC); | |||
END COMPONENT; | |||
--Instanciação---------------------------------------------------------- | |||
xor1: xor_gate GENERIC MAP (16) PORT MAP (x, y); --map. posicional | |||
xor2: xor_gate GENERIC MAP (N=>16) PORT MAP (a=>x, b=>y); --map. nominal | |||
</syntaxhighlight> |
Edição das 16h23min de 24 de fevereiro de 2014
1 Síntese de Sistemas de Telecomunicações: Diário de Aula 2014-1
Professor: Roberto de Matos
Encontros: 2ª e 3ª feira às 13:30
Atendimento paralelo: 2ª feira das 15:40 às 17:30.
1.1 Assuntos trabalhados
- Introdução aos dispositivos lógicos programáveis
- Introdução à tecnologia FPGA
- Introdução a linguagem VHDL
1.2 Apoio Desenvolvimento
1.3 Slides
2 10/02: Apresentação
- Apresentação do professor.
- Apresentação dos alunos: Nome, perfil, preferências, etc.
- Apresentação da disciplina: conteúdo, bibliografia e avaliação.
- Aula Introdutória:
- Por que dispositivos lógicos programáveis?
- Histórico
3 11/02: Desenvolvimento com PLDs
- Famílias de Componentes Lógicos Programáveis
- Arquitetura dos FPGAS
- Introdução ao Fluxo de Projeto do Quartus
4 17/02: Laboratório Quartus
- Fluxo de projeto esquemáticos com Quartus e Modelsim (Porta AND)
- Exercício: Projeto, Simulação e Teste do meio-somador
5 18/02: Introdução à Linguagem VHDL
- Finalização do fluxo de projeto do Meio somador no Quartus e Modelsim, utilização a entrada de esquemático.
- Apresentação da Linguagem VHDL
- Conceitos de entidade (entity) e arquitetura (architecture)
6 24/02: Linguagem VHDL
6.1 Exemplos VHDL (Entity e Architecture)
- Meio Somador
- LCD and Switch
6.2 Componentes (COMPONENT, PORT MAP)
- Sintaxe Simplificada:
--Declaração---------------------------------------------------------- COMPONENT component_name [IS] [GENERIC ( const_name: const_type := const_value; ...);] PORT ( port_name: port_mode signal_type; ...); END COMPONENT [component_name]; --Instanciação---------------------------------------------------------- label: [COMPONENT] component_name [GENERIC MAP (generic_list) ] PORT MAP (port_list);
- Exemplo:
--Declaração----------------------------------------------------------
COMPONENT nand_gate IS
PORT ( a, b: IN STD_LOGIC;
c: OUT STD_LOGIC);
END COMPONENT;
--Instanciação---------------------------------------------------------
nand1: nand_gate PORT MAP (x, y, z); --mapeamento posicional
nand2: nand_gate PORT MAP (a=>x, b=>y, c=>z); --mapeamento nominal
</syntaxhighlight>
- Exemplo GENERIC:
--Declaração----------------------------------------------------------
COMPONENT xor_gate IS
GENERIC (N: INTEGER := 8);
PORT ( a: IN STD_LOGIC(1 TO N);
b: OUT STD_LOGIC);
END COMPONENT;
--Instanciação----------------------------------------------------------
xor1: xor_gate GENERIC MAP (16) PORT MAP (x, y); --map. posicional
xor2: xor_gate GENERIC MAP (N=>16) PORT MAP (a=>x, b=>y); --map. nominal
</syntaxhighlight>