tipos de dados

10
Tipos de dados Existentes BIT - {0, 1} BIT_VECTOR - {vetor de BIT} STD_LOGIC - {0, 1, Z, X, U} STD_LOGIC_VECTOR - {vetor de STD_LOGIC} INTEGER - { 0, 1, 2 , 3 ..............65535} Definidos pelo usuário TYPE <nome do tipo> IS <elementos do tipo> Ex: TYPE MagnComp IS (G, E, S); -- definição do tipo MagnComp

Upload: graiden-frederick

Post on 01-Jan-2016

20 views

Category:

Documents


0 download

DESCRIPTION

Tipos de dados. Existentes BIT - {0, 1} BIT_VECTOR - {vetor de BIT} STD_LOGIC - {0, 1, Z, X, U} STD_LOGIC_VECTOR - {vetor de STD_LOGIC} INTEGER - { 0, 1, 2 , 3 ..............65535} Definidos pelo usuário TYPE IS Ex: - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Tipos de dados

Tipos de dados

Existentes

BIT - {0, 1}BIT_VECTOR - {vetor de BIT}STD_LOGIC - {0, 1, Z, X, U}STD_LOGIC_VECTOR - {vetor de STD_LOGIC}INTEGER - { 0, 1, 2 , 3 ..............65535}

Definidos pelo usuário TYPE <nome do tipo> IS <elementos do tipo>

Ex:

TYPE MagnComp IS (G, E, S); -- definição do tipo MagnComp

Page 2: Tipos de dados

Subtipos de dados

• Subconjunto de um tipo existente, obtido ao restringir-se sua faixa

SUBTYPE <nome do subtipo> IS <nome do tipo> <faixa do subtipo>

Ex:

SUBTYPE ByteINT IS INTEGER RANGE 0 TO 255;

SUBTYPE Radix4 IS INTEGER RANGE 0 TO 4;

SUBTYPE BitVector2 IS BIT_VECTOR (2 DOWNTO 1);

Page 3: Tipos de dados

Pacotes e Bibliotecas

• Um pacote (PACKAGE) é um conjunto de elementos, como tipos, subtipos, constantes e subprogramas, constituindo um conjunto de ferramentas usadas para construir módulos.

• Consiste de duas partes:

1) Declaração do pacote – Define a interface do pacote

2) Corpo do pacote – Define os detalhes do pacote

Page 4: Tipos de dados

Pacotes e Bibliotecas

Exemplo de pacote definido pelo usuário:

------------------------------------------------------ Declaração do pacote----------------------------------------------------PACKAGE BitDefs_pkg IS SUBTYPE Radix4 IS INTEGER RANGE 0 TO 3; SUBTYPE BitVector2 IS Bit_Vector (1 DOWNTO 0); SUBTYPE BitVector3 IS Bit_Vector (2 DOWNTO 0); SUBTYPE STD_LOGIC8 IS Std_Logic_Vector (7 DOWNTO 0); TYPE MagnComp IS (G, E, S);END BitDefs_pkg;-- ------------------------------------------------- Corpo do pacote-- -----------------------------------------------PACKAGE BODY BitDefs_pkg IS

END BitDefs_pkg;

Page 5: Tipos de dados

Modelagem VHDL usando Pacotes

Um módulo comparador de base 4 compara dois dígitos de base 4 e produz uma

saída com valores G (maior), E (igual), e S (menor).

A especificação de alto nível é:

ENTRADAS x e y Є { 0, 1, 2, 3, 4}

SAÍDA z Є { G, E, S}

G se x > y

FUNÇÃO: z = E se x = y

S se x < y

Page 6: Tipos de dados

Modelagem VHDL usando Pacotes

Descreva o módulo usando o pacote BitDefs_pkg

USE WORK.BitDefs_pkg.ALL;ENTITY comparador IS PORT ( x, y : IN Radix4; z : OUT MagnComp );END comparador;ARCHITECTURE comportamental OF comparador IS BEGIN PROCESS (x, y) BEGIN IF (x > y) THEN z <= G; ELSIF (x = y) THEN z <= E; ELSE z <= S; END IF; END PROCESS; END comportamental;

Page 7: Tipos de dados

Resultado da simulação

G se x > y

FUNÇÃO: z = E se x = y

S se x < y

Page 8: Tipos de dados

Síntese Altera Max 7000S

Dispositivo : EPM7032SLC44

Page 9: Tipos de dados

Number of AND2 : 1

Number of AND3 : 2

Number of AND4 : 4

Number of INBUF : 4

Number of LCs : 2

Number of NOT : 4

Number of OUTBUF : 2

Number of SOFT : 2

Number of OR3 : 1

Number of OR4 : 1

Page 10: Tipos de dados

Circuito de potência Lâmpada

Sistema de Votação

Uma escola tem sua diretoria constituída pelos seguintes elementos: Diretor, Vice-Diretor, Secretário e Tesoureiro. Uma vez por mês essa diretoria se reúne para decidir sobre diversos assuntos, sendo que as propostas são aceitas ou não através de votação. Devido ao número de elementos da diretoria ser par, o sistema adotado é o seguinte:1)Maioria absoluta – a proposta é aceita ou não se no mínimo três elementos são respectivamente a favor ou contra.2)Empate – vence o voto dado pelo diretor.Deseja-se projetar um sistema de votação que acenda uma lâmpada, conforme a proposta seja aprovada ou não de acordo com o esquema abaixo:

Determine as entradas e saídas, monte a tabela verdade, obtenha a expressão lógica minimizada, desenhe o circuito lógico correspondente e modele o circuito em VHDL.

PROJETO 1: