Tema 3 - Modelado con HDL a nivel RTL
Eduardo Rodr´ıguez Mart´ınez Departamento de Electr´onica Divisi´ on de Ciencias B´asicas e Ingenier´ıa Universidad Aut´ onoma Metropolitana Unidad Azcapotzalco
Email:
[email protected] Sitio Web: http://kali.azc.uam.mx/erm/
1121037 Dise˜ no L´ ogico
page 1
Contenido - Modelado con HDL a nivel RTL - (4.5 hrs.) Tema 3 Contenido ENTITY y ARCHITECTURE SIGNAL y CONSTANT WHEN ... ELSE WITH ... SELECT GENERATE y GENERIC
⊲
1. Estructura de un programa en lenguaje VHDL 1 : Entidad y arquitectura. 2. Se˜ nales, constantes y tipos b´asicos: bit, bit vector, e integer. 3. Sentencias concurrentes: Asignaci´ on directa y condicional when... else. 4. Sentencias de selecci´ on with... select. 5. Componentes. 6. Sentencias generic y generate.
1
1121037 Dise˜ no L´ ogico
acr´ onimo en ingl´es: V HSIC Hardware Description Language
page 2
Estructura de un programa en VHDL Tema 3 Contenido ENTITY y ARCHITECTURE SIGNAL y CONSTANT WHEN ... ELSE WITH ... SELECT GENERATE y GENERIC
⊲
Todo programa en VHDL se componen de dos partes: ENTITY n o m b r e _ e n t i d a d IS PORT ([ SIGNAL ] n o m b r e _ s e~ n al{, nombre se~ nal} : [ modo ] t i p o _ d a t o {; nal {, nombre se~ nal} : [modo] tipo dato } ); [SIGNAL] nombre se~ END n o m b r e _ e n t i d a d ; -- Este es un comentario ARCHITECTURE n o m b r e _ a r q u i t e c t u r a OF n o m b r e _ e n t i d a d IS -- Parte de declaraciones [declaraciones tipo SIGNAL] [declaraciones tipo CONSTANT] [declaraciones tipo COMPONENT] BEGIN -- Cuerpo de la arquitectura {creaci´ on de componentes;} {asignaciones concurrentes;} {creaci´ on de procesos;} END [ n o m b r e _ a r q u i t e c t u r a ];
Tema 3 Modelado con HDL a nivel RTL
page 3
Estructura de un programa en VHDL Tema 3 Contenido ENTITY y ARCHITECTURE SIGNAL y CONSTANT WHEN ... ELSE WITH ... SELECT GENERATE y GENERIC
PORT( nombre_se~ n al : [modo] tipo_dato );
⊲
[modo] IN OUT
INOUT BUFFER
Descripci´on Usado cuando se declara una se˜ nal como puerto de entrada. Usado cuando se declara una se˜ nal como puerto de salida. En una sentencia de asignaci´ on, la se˜ nal declarada con el modo OUT solo puede aparecer del lado izquierdo del operador