Mudanças entre as edições de "SST20707-2014-1"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
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

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.

Assuntos trabalhados

Apoio Desenvolvimento


Slides

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

11/02: Desenvolvimento com PLDs

  • Famílias de Componentes Lógicos Programáveis
  • Arquitetura dos FPGAS
  • Introdução ao Fluxo de Projeto do Quartus

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

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)

24/02: Linguagem VHDL

Exemplos VHDL (Entity e Architecture)

  • Meio Somador
  • LCD and Switch

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>