La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Programación de sistemas reconfigurables

Presentaciones similares


Presentación del tema: "Programación de sistemas reconfigurables"— Transcripción de la presentación:

1 Programación de sistemas reconfigurables
DEPARTAMENTO DE ELECTRÓNICA DIVISIÓN DE ELECTRÓNICA Y COMPUTACIÓN CENTRO UNIVERSITARIO DE CIENCIAS EXACTAS E INGENIRÍAS UNIVERSIDAD DE GUADALAJARA M.C. Rubén E. Marmolejo

2 Temas del día Introducción a los lenguajes HDL Sintaxis de VHDL
Estructura Variables Modelos de programación Estructuras de control Sintaxis de Verilog. Estructuras de control. M.C. Rubén E. Marmolejo

3 Lecturas recomendadas
Circuit Design with VHDL Volnei A. Pedroni MIT Press Fundamentals of Digital Logic with VHDL Design. Stephen Brown Zvonko Vranesic McGrawHill Third edition M.C. Rubén E. Marmolejo

4 Temas del día Introducción a los lenguajes HDL Sintaxis de VHDL
Estructura Variables Modelos de programación Estructuras de control Sintaxis de Verilog. Estructuras de control. M.C. Rubén E. Marmolejo

5 Introducción a los lenguajes HDL
Es cualquier lenguaje de una clase de lenguajes utilizado en la descripción y diseño formal de circuitos electrónicos y mas comúnmente de lógica digital. HDL (Hardware Description Language) Lenguaje que describe Hardware M.C. Rubén E. Marmolejo https://www.princeton.edu/~achaney/tmve/wiki100k/docs/Hardware_description_language.html

6 Introducción a los lenguajes HDL
AHDL ABEL AHPL Bluespec ELLA HHDL Hydra ParC JHDL KARL Lava Lola MyHDL PALASM PSHDL RHDL THDL++ VHDL Verilog M.C. Rubén E. Marmolejo https://www.princeton.edu/~achaney/tmve/wiki100k/docs/Hardware_description_language.html

7 Introducción a los lenguajes HDL
Verilog Segundo más común Mas fácil de enseñar Estándar IEEE VHDL Más común Más formal Estándar IEEE M.C. Rubén E. Marmolejo https://www.princeton.edu/~achaney/tmve/wiki100k/docs/Hardware_description_language.html

8 Introducción a los lenguajes HDL
Xilinx vs Altera M.C. Rubén E. Marmolejo

9 Introducción a los lenguajes HDL
Altera M.C. Rubén E. Marmolejo

10 Introducción a los lenguajes HDL
Altera M.C. Rubén E. Marmolejo

11 Introducción a los lenguajes HDL
Xilinx M.C. Rubén E. Marmolejo

12 Introducción a los lenguajes HDL
Xilinx M.C. Rubén E. Marmolejo

13 Introducción a los lenguajes HDL
Aplicaciones M.C. Rubén E. Marmolejo

14 Introducción a los lenguajes HDL
Aplicaciones M.C. Rubén E. Marmolejo

15 Introducción a los lenguajes HDL
Dispositivos reprogramables M.C. Rubén E. Marmolejo

16 Temas del día Introducción a los lenguajes HDL Sintaxis de VHDL
Estructura Variables Modelos de programación Estructuras de control Sintaxis de Verilog. Estructuras de control. M.C. Rubén E. Marmolejo

17 VHDL - VHSIC Hardware Description Language
VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura M.C. Rubén E. Marmolejo Diagrama de la estructura de un archivo de VHDL

18 VHDL - VHSIC Hardware Description Language
𝑋 =𝐴∙𝐵+ 𝐴+𝐵 Comportamental Estructural Modelos de programación (formas de programar) M.C. Rubén E. Marmolejo

19 VHDL - VHSIC Hardware Description Language
Modelos de programación (formas de programar) 𝑋 =𝐴∙𝐵+ 𝐴+𝐵 Comportamental Estructural M.C. Rubén E. Marmolejo Implementación

20 VHDL - VHSIC Hardware Description Language
VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura M.C. Rubén E. Marmolejo Diagrama de la estructura de un archivo de VHDL

21 Ejemplo de un diagrama lógico
VHDL - Entidad Ejemplo de un diagrama lógico M.C. Rubén E. Marmolejo La entidad define la cantidad y tipo de entradas que tendrá el sistema digital. ¿Cuántas entradas y salidas tiene el diagrama?

22 VHDL - Entidad ? Ejemplo de un entidad Entity Entidad_TACO is port (
a: in std_logic; b: in std_logic; f: out std_logic ); End Entidad_TACO; M.C. Rubén E. Marmolejo ?

23 VHDL - VHSIC Hardware Description Language
VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura M.C. Rubén E. Marmolejo Diagrama de la estructura de un archivo de VHDL

24 VHDL - Bibliotecas ¿std_logic?
M.C. Rubén E. Marmolejo

25 Señales lógicas M.C. Rubén E. Marmolejo

26 Señales lógicas Fig1. Rangos de valores de una señal lógica
M.C. Rubén E. Marmolejo Fig1. Rangos de valores de una señal lógica

27 Señales lógicas M.C. Rubén E. Marmolejo Fig 2. Rangos de valores de una señal lógica en valores de voltaje.

28 VHDL - Bibliotecas ¿std_logic?
Las bibliotecas contienen definiciones y elementos útiles en el diseño de sistemas digitales por software. Como los valores lógicos necesarios para comunicar a un sistema digital. M.C. Rubén E. Marmolejo

29 VHDL - Bibliotecas '0' - 0 lógico.
Ejemplo de una biblioteca común en VHDL. Library ieee; Use ieee.std_logic_1164.all; Declaración de las representaciones de valores lógicos Ejemplo: std_logic M.C. Rubén E. Marmolejo 'Z' - alta impedancia. 'W' - señal débil 0 o 1. 'L' - señal débil 0. 'H' - señal débil 1. '-' - no importa. 'U' - valor sin inicializar. 'X' - desconocido. '0' - 0 lógico. '1' - 1 lógico. Ver

30 VHDL - Bibliotecas Bit ,1 Nibble 4 bits ( ) ,(0-15) , (0-F) Byte 8 bits ( ),(0-255) MSB LSB Posición 3 2 1 # 1∗ 2 3 =8 1∗ 2 1 =2 8 M.C. Rubén E. Marmolejo LSB MSB Posición 3 2 1 # 1∗ 2 0 =1 1∗ 2 2 =4 5 Ver

31 VHDL - Bibliotecas Library ieee; Ejemplo: std_logic
Use ieee.std_logic_1164.all; Ejemplo: std_logic ¿Cuál es el máximo valor en binario que puede representar una entrada o salida std_logic? M.C. Rubén E. Marmolejo Respuesta: 1 Ver

32 VHDL - Entidad ? Ejemplo de un entidad Entity Entidad_TACO is port (
a: in std_logic; b: in std_logic; f: out std_logic ); End Entidad_TACO; M.C. Rubén E. Marmolejo ?

33 VHDL - Bibliotecas Library ieee; Ejemplo: std_logic
Use ieee.std_logic_1164.all; Ejemplo: std_logic ¿Cómo puedo representar una nibble de información utilizando std_logic? M.C. Rubén E. Marmolejo Respuesta: con otro elemento de la biblioteca std_logic_vector Ver

34 VHDL - Bibliotecas 8 MSB LSB Posición 3 2 1 # Ver 1∗ 2 3 =8 1∗ 2 1 =2
# 1∗ 2 3 =8 1∗ 2 1 =2 8 M.C. Rubén E. Marmolejo Ver

35 VHDL - Bibliotecas 5 LSB MSB Posición 3 2 1 # Ver 1∗ 2 0 =1 1∗ 2 2 =4
# 1∗ 2 0 =1 1∗ 2 2 =4 5 M.C. Rubén E. Marmolejo Ver

36 VHDL - Bibliotecas+entidad: ejemplo
Entradas: botones, contactos, sensores, etc. Salidas: pantallas, bocinas, motores, etc. M.C. Rubén E. Marmolejo ¿# salidas? ¿# entradas? Decodificador BCD a 7 segmentos

37 VHDL - Bibliotecas+entidad: ejemplo
M.C. Rubén E. Marmolejo

38 VHDL - Bibliotecas+entidad: ejemplo
M.C. Rubén E. Marmolejo

39 VHDL - Bibliotecas+entidad: ejemplo
M.C. Rubén E. Marmolejo

40 VHDL - Bibliotecas+entidad: ejemplo
M.C. Rubén E. Marmolejo

41 VHDL - Bibliotecas+entidad: ejemplo
Entradas: botones, contactos, sensores, etc. Salidas: pantallas, bocinas, motores, etc. M.C. Rubén E. Marmolejo ¿# salidas? ¿# entradas? Decodificador BCD a 7 segmentos

42 VHDL - bibliotecas+entidad: ejemplo
Entidad del diagrama anterior Entity Entidad_TACO is port ( BCD: in std_logic_vector(3 downto 0); SAL: out std_logic_vector(6 downto 0); ); End Entidad_TACO; M.C. Rubén E. Marmolejo

43 VHDL - bibliotecas+entidad: ejemplo
Código de ejemplo en VHDL de un circuito digital Biblioteca Entidad M.C. Rubén E. Marmolejo Arquitectura

44 VHDL - bibliotecas+entidad: ejemplo
Código de ejemplo en VHDL de un circuito digital Entidad Nombre: ? # entradas: ? # salidas: ? # tamaño entradas:? # tamaño salidas: ? Biblioteca M.C. Rubén E. Marmolejo Arquitectura

45 VHDL - bibliotecas+entidad: ejemplo
Código de ejemplo en VHDL de un circuito digital x1 A Biblioteca B A f M.C. Rubén E. Marmolejo x1 X2 F Arquitectura X1 B A

46 VHDL - bibliotecas+entidad: ejemplo
Código de ejemplo en VHDL de un circuito digital Biblioteca M.C. Rubén E. Marmolejo Arquitectura

47 VHDL - bibliotecas+entidad: ejemplo
Código de ejemplo en VHDL de un circuito digital Biblioteca ? M.C. Rubén E. Marmolejo Arquitectura ?

48 VHDL - bibliotecas+entidad: ejemplo
En VHDL no importa si se escribe con MAYúSCULAS o minúsculas Lenguaje C Int temperatura; Int Temperatura; VHDL Entity = eNTity = EnTiTy M.C. Rubén E. Marmolejo Son dos variables distintas

49 VHDL - bibliotecas+entidad: ejemplo
Código de ejemplo en VHDL de un circuito digital Biblioteca ? M.C. Rubén E. Marmolejo Arquitectura ?

50 VHDL - bibliotecas+entidad: ejercicio
Completa cada código de acuerdo al diagrama B A f Biblioteca Ejercicio1 M.C. Rubén E. Marmolejo Arquitectura

51 VHDL - bibliotecas+entidad: ejercicio
Completa cada código de acuerdo al diagrama x1 A Biblioteca TRETRE M.C. Rubén E. Marmolejo Arquitectura

52 VHDL - bibliotecas+entidad: ejercicio
Completa cada código de acuerdo al diagrama X1 B A Biblioteca TACO M.C. Rubén E. Marmolejo Arquitectura

53 VHDL - bibliotecas+entidad: ejemplo
Estructuras más completas X1 B A Biblioteca B X1 A M.C. Rubén E. Marmolejo Arquitectura

54 VHDL - bibliotecas+entidad: ejemplo
Estructuras más completas Biblioteca M.C. Rubén E. Marmolejo Arquitectura

55 VHDL - VHSIC Hardware Description Language
VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura M.C. Rubén E. Marmolejo Diagrama de la estructura de un archivo de VHDL

56 VHDL - VHSIC Hardware Description Language
VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura M.C. Rubén E. Marmolejo Diagrama de la estructura de un archivo de VHDL

57 VHDL - arquitectura Arquitectura. Define como funciona internamente el circuito o sistema digital. Sistema Digital Entradas Salidas Proceso M.C. Rubén E. Marmolejo Arquitectura Entidad Estructura VHDL

58 VHDL - arquitectura: modelo
𝑋 =𝐴∙𝐵+ 𝐴+𝐵 Comportamental Estructural La arquitectura define la forma de describir el circuito. M.C. Rubén E. Marmolejo

59 VHDL - arquitectura: ejemplo
M.C. Rubén E. Marmolejo Entradas Salidas Proceso

60 VHDL - arquitectura: ejemplo
Library ieee; Use ieee.std_logic_1164.all; Entity TACO is port ( a: in std_logic; b: in std_logic; y: out std_logic ); End TACO; Architecture PUESTO of TACO is Begin y <= a and b ; End PUESTO; Biblioteca Entidad M.C. Rubén E. Marmolejo Arquitectura

61 VHDL - arquitectura: ejemplo
Biblioteca Entidad M.C. Rubén E. Marmolejo Arquitectura

62 VHDL - arquitectura: ejemplo
Biblioteca Entidad M.C. Rubén E. Marmolejo Arquitectura

63 VHDL - arquitectura: ejemplo
Biblioteca Entidad M.C. Rubén E. Marmolejo Arquitectura

64 VHDL - arquitectura: ejemplo
Nombre de arquitectura Nombre de entidad Inicio M.C. Rubén E. Marmolejo Fin Nombre de arquitectura

65 Temas del día Introducción a los lenguajes HDL Sintaxis de VHDL
Estructura Variables y operadores Modelos de programación Estructuras de control Sintaxis de Verilog. Variables Estructuras de control. M.C. Rubén E. Marmolejo

66 VHDL - operadores Asignación Lógicos Aritméticos Relacionales
Desplazamiento Concatenación M.C. Rubén E. Marmolejo

67 VHDL - operadores en la vida diaria
Asignación M.C. Rubén E. Marmolejo A un cheque se le asigna un valor monetario. Ejemplo: cheque = $2, pesos

68 VHDL - operadores <= Asignación
En VHDL se utilizan para asignar valores a señales, variables y constantes. <= M.C. Rubén E. Marmolejo Asigna un valor a una señal

69 VHDL - operadores := Asignación
En VHDL se utilizan para asignar valores a señales, variables y constantes. := M.C. Rubén E. Marmolejo Asigna un valor a una variable o constante

70 VHDL - operadores => Asignación
En VHDL se utilizan para asignar valores a señales, variables y constantes. => M.C. Rubén E. Marmolejo Asigna valores a elementos individuales de un vector en conjunto con OTHERS.

71 VHDL - operadores Variable Constante
Una representación mediante etiquetas de un valor. Constante Un valor que no puede ser cambiado durante la implementación. Señal Conexiones externas que captura y representan datos reales e internas para conexiones. M.C. Rubén E. Marmolejo

72 VHDL - operadores <= Asignación Asigna un valor a una señal
M.C. Rubén E. Marmolejo

73 VHDL - operadores := Asignación
Asigna un valor a una variable o constante M.C. Rubén E. Marmolejo

74 VHDL - operadores => Asignación W
Asigna valores a elementos individuales de un vector en conjunto con OTHERS. M.C. Rubén E. Marmolejo W 1 Posición

75 VHDL - operadores : ejercicio
Completa con el operador indicado la sentencia de VHDL W__ ‘0’; A __ ¨1191¨; D __ (OTHERs __ ‘0’); B __ D; Y __ B; G __ D; W, Y y G son señales A, B y C variables D es constante M.C. Rubén E. Marmolejo

76 VHDL - operadores Asignación Lógicos Aritméticos Relacionales
Desplazamiento Concatenación M.C. Rubén E. Marmolejo

77 VHDL - operadores en la vida diaria
Lógicos Los resultados de las operaciones lógicas son 2. Cierto o Falso M.C. Rubén E. Marmolejo

78 VHDL - operadores en la vida diaria
Lógicos Los resultados de las operaciones lógicas son 2. Cierto o Falso M.C. Rubén E. Marmolejo

79 VHDL - operadores Lógicos
Se utilizan para realizar operaciones lógicas. Los datos DEBEN ser del tipo bit, std_logic o std_ulogic (obviamente con su respectivo modificador vector). M.C. Rubén E. Marmolejo NOT AND OR NAND NOR XOR XNOR

80 VHDL - operadores Compuertas lógicas
M.C. Rubén E. Marmolejo

81 VHDL - operadores Ejemplo de operaciones lógicas 𝑌= 𝐴 +𝐵
𝑌= 𝐴 +𝐵 Y <= NOT a OR b ; -- esto es un comentario M.C. Rubén E. Marmolejo Y <=( NOT a) OR b ; -- mejor practica Y <= NOT ( a OR b) ; -- MAL!!!!!!!!

82 VHDL - operadores Ejemplo de operaciones lógicas 𝑌= 𝐴+𝐵 +𝐵𝐴
𝑌= 𝐴+𝐵 +𝐵𝐴 Y <= (not (A OR B)) or (B and A) ; M.C. Rubén E. Marmolejo

83 VHDL - operadores Ejercicio: traduzca al lenguaje VHDL las siguientes ecuaciones… 𝐷 0 … 𝐷 6 M.C. Rubén E. Marmolejo

84 VHDL - operadores Asignación Lógicos Aritméticos Relacionales
Desplazamiento Concatenación M.C. Rubén E. Marmolejo

85 VHDL - operadores en la vida diaria
Aritméticos M.C. Rubén E. Marmolejo

86 VHDL - operadores en la vida diaria
Aritméticos M.C. Rubén E. Marmolejo

87 VHDL - operadores Aritméticos
Son utilizados para realizar operaciones aritméticas. Los datos pueden ser del tipo INTEGER, SIGNED, UNSIGNED o REAL. Si se agrega la biblioteca std_logic_signed o std_logic_unsigned también se pueden utilizar los operadores std_logic_vector. M.C. Rubén E. Marmolejo

88 VHDL - operadores Aritméticos + Suma - Resta * Multiplicación.
/ División. ** Potencia. MOD Módulo. REM Residuo. ABS Valor absoluto. M.C. Rubén E. Marmolejo Ver pagina 49 Volnei A.

89 VHDL - operadores Asignación Lógicos Aritméticos Relacionales
Desplazamiento Concatenación M.C. Rubén E. Marmolejo

90 VHDL - operadores Relacionales
M.C. Rubén E. Marmolejo

91 VHDL - operadores Relacionales o de comparación
Son utilizados para hacer comparaciones los resultados son lógicos. = ¿Es igual a? /= ¿Es distinto de? < ¿Es menor qué? > ¿Es mayor qué? <= ¿Menor o igual qué? => ¿Mayor o cual qué? M.C. Rubén E. Marmolejo

92 VHDL - operadores Asignación Lógicos Aritméticos Relacionales
Desplazamiento Concatenación M.C. Rubén E. Marmolejo

93 VHDL - operadores Desplazamiento
M.C. Rubén E. Marmolejo

94 VHDL - operadores Desplazamiento Son utilizados para desplazar datos.
sll desplazamiento lógico a la izquierda ¨1100¨ sll conlleva a ¨1000¨ srl desplazamiento lógico a la derecha ¨1100¨ sll conlleva a ¨0011¨ M.C. Rubén E. Marmolejo

95 VHDL - operadores Desplazamiento Son utilizados para desplazar datos.
sla desplazamiento aritmético a la izquierda ¨1100¨ sla conlleva a ¨1000¨ sra desplazamiento aritmético a la derecha ¨1100¨ sra conlleva a ¨1111¨ M.C. Rubén E. Marmolejo

96 VHDL - operadores Desplazamiento Son utilizados para desplazar datos.
rol desplazamiento aritmético a la izquierda ¨1100¨ rol conlleva a ¨1001¨ ror desplazamiento aritmético a la derecha ¨1100¨ ror conlleva a ¨0011¨ M.C. Rubén E. Marmolejo

97 VHDL - operadores Asignación Lógicos Aritméticos Relacionales
Desplazamiento Concatenación M.C. Rubén E. Marmolejo

98 VHDL - operadores Concatenación
M.C. Rubén E. Marmolejo

99 VHDL - operadores Concatenación
Son utilizados para unir cadenas de bits. & M.C. Rubén E. Marmolejo Bitcat := bit0 & bit1 & bit2 & bit3;

100 VHDL - operadores Asumiendo las siguientes declaraciones de señales, conteste. M.C. Rubén E. Marmolejo X1 <= a & c ; x1 <= __________ X2 <= c & b ; x2 <= __________ X3 <= b XOR c ; x3 <= __________ X4 <= a NOR b(3); x4 <= __________

101 VHDL - operadores Asumiendo las siguientes declaraciones de señales, conteste. M.C. Rubén E. Marmolejo X5 <= b sll 2; x5 <= __________ X6 <= b sla 2 ; x6 <= __________ X7 <= b rol 2 ; x7 <= __________

102 VHDL - operadores Asumiendo las siguientes declaraciones de señales, conteste. M.C. Rubén E. Marmolejo X8 <= a AND NOT b(0) AND NOT c(1); x8 <= __________

103 VHDL - VHSIC Hardware Description Language
VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura M.C. Rubén E. Marmolejo Diagrama de la estructura de un archivo de VHDL

104 Temas del día Introducción a los lenguajes HDL Sintaxis de VHDL
Estructura Variables y operadores Modelos de programación Estructuras de control Sintaxis de Verilog. Variables Estructuras de control. M.C. Rubén E. Marmolejo

105 VHDL - estructuras de control
Concurrentes Operadores When Generate Block Secuenciales Process Señales y variables If Wait Case M.C. Rubén E. Marmolejo Case e IF Case y When

106 VHDL - estructuras de control
Salidas Entradas Proceso Sistema combinatorio general Retroalimentación M.C. Rubén E. Marmolejo Salidas Entradas Proceso Sistema secuencial general

107 VHDL - estructuras de control
VHDL es un lenguaje concurrente. Sólo las instrucciones escritas dentro de un proceso, función o procedimiento son secuenciales. El bloque de estos conjuntos en su aspecto general es igualmente concurrente. M.C. Rubén E. Marmolejo

108 Temas del día Introducción a los lenguajes HDL Sintaxis de VHDL
Estructura Variables y operadores Modelos de programación Estructuras de control Sintaxis de Verilog. Variables Estructuras de control. M.C. Rubén E. Marmolejo

109 FPGA de bajo costo M.C. Rubén E. Marmolejo $850.00

110 VHDL - Las estructuras de control se analizaran cuando el tema sea apropiado de acuerdo a la planeación semanal. M.C. Rubén E. Marmolejo

111 Plan de curso (17 semanas)
Planeación de temas Introducción Combinatorio HDL+comb. Secuencial HDL+Secu. Vacaciones HDL+Sec. HDL+Mem. Aplicaciones Proyecto Ordinario Extraordinario I7268 1 2 M.C. Rubén E. Marmolejo 3 F

112 Plan de curso (17 semanas)
Actividades de aprendizaje I7268 Actividad 1. Introducción (Encontrar ecuaciones lógicas a partir de una tabla de verdad. Actividad 2. Analizar, simular y encontrar los parámetros principales de un circuito combinatorio. Actividad 3. Diseñar un sistema digital con un CPLD. BCD a 7 segmentos. Actividad 4. Simular códigos de ejemplos en HDL. Sumador completo. Actividad 5. Implementación y simulación de un sistema digital aplicado a un problema de la vida cotidiana. Actividad 6. Diseño y simulación de circuitos secuenciales (FF´s, FSM). Actividad 7. Diseño y simulación de contadores de maquinas de estado finitas aplicados a resolver problemas reales. Actividad 8. Diseño y simulación de contadores síncronos. M.C. Rubén E. Marmolejo

113 Temas del día Introducción a los lenguajes HDL Sintaxis de VHDL
Estructura Variables Modelos de programación Estructuras de control Sintaxis de Verilog. Estructuras de control. M.C. Rubén E. Marmolejo

114 Verilog: introducción
M.C. Rubén E. Marmolejo Protoboard utilizado en el diseño digital.

115 Verilog: introducción
!Cuidado no olvides escribirlo en tu código. Seguro esto no se te olvidara, sólo por si acaso. No te olvides de los paréntesis. M.C. Rubén E. Marmolejo Palabras reservadas de Verilog. Nomenclatura utilizada en esta presentación

116 Verilog- arquitectura: ejemplo
M.C. Rubén E. Marmolejo Entradas Salidas Proceso

117 Verilog- arquitectura: ejemplo
module Compuerta_AND ( input A, input B, output Y ); assign Y = A & B; endmodule M.C. Rubén E. Marmolejo

118 Verilog- arquitectura: ejemplo
module Compuerta_AND (A, B, Y); input A; input B; output reg Y; or B) begin Y = A & B; end endmodule M.C. Rubén E. Marmolejo

119 Verilog- arquitectura: ejemplo
module Compuerta_AND ( input A, input B, output Y ); assign Y = A & B; endmodule Tipo de entradas y salidas M.C. Rubén E. Marmolejo Funcionamiento

120 Verilog- arquitectura: ejemplo
module Compuerta_AND ( input A, input B, output Y ); assign Y = A & B; endmodule Tipo de entradas y salidas M.C. Rubén E. Marmolejo Funcionamiento

121 Verilog- arquitectura: ejemplo
module Compuerta_AND (A, B, Y); input A; input B; output reg Y; or B) begin Y = A & B; end endmodule Tipo de entradas y salidas M.C. Rubén E. Marmolejo Funcionamiento

122 Verilog- arquitectura: ejemplo
module Compuerta_AND (A, B, Y); input A; input B; output reg Y; or B) begin Y = A & B; end endmodule Tipo de entradas y salidas M.C. Rubén E. Marmolejo Funcionamiento

123 Verilog Temas Tipos de datos. Operadores. Ejemplos combinatorios.
Diseño concurrente. Diseño estructural. M.C. Rubén E. Marmolejo

124 Verilog: tipos de datos
Están diseñados para representar los elementos de transmisión y memoria encontrados en los sistemas digitales. M.C. Rubén E. Marmolejo

125 Verilog: tipos de datos
Valores lógicos 0 0 lógico o falso. 1 1 lógico o verdadero. X valor desconocido. Z estado de alta impedancia. M.C. Rubén E. Marmolejo

126 Verilog: tipos de datos
Representaciones numéricas binario Tamaño en bits: estándar 32 Apostrofe 8'b M.C. Rubén E. Marmolejo T'bX 2'b01 Valores de acuerdo al tamaño 4'b0010 b de binario

127 Verilog: tipos de datos
Representaciones numéricas hexadecimal Tamaño en bits: estándar 32 Apostrofe 8'hA = M.C. Rubén E. Marmolejo T'hX 8'hA1 = Valores de acuerdo al tamaño 8'hF2 = h de hexadecimal

128 Verilog: tipos de datos
Representaciones numéricas decimal Tamaño en bits: estándar 32 Apostrofe 8'd255 M.C. Rubén E. Marmolejo T'dX 16'd65_535 Valores de acuerdo al tamaño 8'd256 = d de decimal

129 Verilog: tipos de datos
Reg Net Parameter M.C. Rubén E. Marmolejo

130 Verilog: tipos de datos
Reg Net Parameter Representan variables. No necesariamente sintetizan flip-flops. Sólo se asignan en bloques always. M.C. Rubén E. Marmolejo Si le es asignado un valor en un bloque always con detección de flancos, infiere un flip-flop.

131 Verilog: tipos de datos
Reg Net Parameter Representan variables. No necesariamente sintetizan flip-flops. Sólo se asignan en bloques always. M.C. Rubén E. Marmolejo Si le es asignado un valor en un bloque always con detección de flancos, infiere un flip-flop.

132 Verilog: tipos de datos
Reg Net Parameter Representan variables. No necesariamente sintetizan flip-flops. Sólo se asignan en bloques always. M.C. Rubén E. Marmolejo Si le es asignado un valor en un bloque always con detección de flancos, infiere un flip-flop.

133 Verilog: tipos de datos
Reg Net Parameter Representan variables. No necesariamente sintetizan flip-flops. Sólo se asignan en bloques always. M.C. Rubén E. Marmolejo Si le es asignado un valor en un bloque always con detección de flancos, infiere un flip-flop.

134 Verilog: tipos de datos
Representan distintas interconexiones eléctricas entre elementos de Hardware. Reg Net Parameter Existen 10 subtipos. M.C. Rubén E. Marmolejo No tienen memoria, excepto por trireg.

135 Verilog: tipos de datos
Representan distintas interconexiones eléctricas entre elementos de Hardware. Reg Net Parameter Existen 10 subtipos. M.C. Rubén E. Marmolejo No tienen memoria, excepto por trireg.

136 Verilog: tipos de datos
Representan distintas interconexiones eléctricas entre elementos de Hardware. Reg Net Parameter Existen 10 subtipos. M.C. Rubén E. Marmolejo No tienen memoria, excepto por trireg.

137 Verilog: tipos de datos
Wire Tri Tri0 Tri1 Trior Wand Wor Supply0 Supply1 trireg Reg Net Parameter M.C. Rubén E. Marmolejo

138 Verilog: tipos de datos
Representa constantes. Reg Net Parameter Se declara como: parameter ORDEN_TACO = 5; Puede ser sobre-escrita cuando un modulo es inicializado. M.C. Rubén E. Marmolejo No puede ser cambiada en la ejecución del sistema digital.

139 Verilog: tipos de datos
Representa constantes. Reg Net Parameter Se declara como: parameter ORDEN_TACO = 5; Puede ser sobre-escrita cuando un modulo es inicializado. M.C. Rubén E. Marmolejo No puede ser cambiada en la ejecución del sistema digital.

140 Verilog: tipos de datos
Representa constantes. Reg Net Parameter Se declara como: parameter ORDEN_TACO = 5; Puede ser sobre-escrita cuando un modulo es inicializado. M.C. Rubén E. Marmolejo No puede ser cambiada en la ejecución del sistema digital.

141 Verilog: tipos de datos
Representa constantes. Reg Net Parameter Se declara como: parameter ORDEN_TACO = 5; Se declara como: parameter ORDEN_TACO = 5; Puede ser sobre-escrita cuando un modulo es inicializado. M.C. Rubén E. Marmolejo No puede ser cambiada en la ejecución del sistema digital.

142 Verilog: tipos de datos, ejercicio.
Reg Net Parameter M.C. Rubén E. Marmolejo

143 Verilog: tipos de datos ejemplos
reg a; // un registro escalar wand w; // un net del escalar del tipo wand reg [3:0] v; // registro vector de 4-bits tri [15:0] busa; // bus de 16-bits tri-estado Trireg (small) storeit; /* un nodo de almacenamiento por carga de poca fueraza */ wire w1, w1; // 2 «cables» reg [4:0] x, y, z; // declara 3 registros de 5 bits M.C. Rubén E. Marmolejo

144 Verilog: tipos de datos ejemplos
reg a; // un registro escalar wand w; // un net del escalar del tipo wand reg [3:0] v; // registro vector de 4-bits tri [15:0] busa; // bus de 16-bits tri-estado Trireg (small) storeit; /* un nodo de almacenamiento por carga de poca fueraza */ wire w1, w1; // 2 «cables» reg [4:0] x, y, z; // declara 3 registros de 5 bits M.C. Rubén E. Marmolejo

145 Verilog: tipos de datos ejemplos
reg a; // un registro escalar wand w; // un net del escalar del tipo wand reg [3:0] v; // registro vector de 4-bits tri [15:0] busa; // bus de 16-bits tri-estado Trireg (small) storeit; /* un nodo de almacenamiento por carga de poca fueraza */ wire w1, w1; // 2 «cables» reg [4:0] x, y, z; // declara 3 registros de 5 bits M.C. Rubén E. Marmolejo

146 Verilog: tipos de datos ejemplos
reg a; // un registro escalar wand w; // un net del escalar del tipo wand reg [3:0] v; // registro vector de 4-bits tri [15:0] busa; // bus de 16-bits tri-estado trireg (small) storeit; /* un nodo de almacenamiento por carga de poca fueraza */ wire w1, w1; // 2 «cables» reg [4:0] x, y, z; // declara 3 registros de 5 bits M.C. Rubén E. Marmolejo

147 Verilog: tipos de datos ejemplos
reg a; // un registro escalar wand w; // un net del escalar del tipo wand reg [3:0] v; // registro vector de 4-bits tri [15:0] busa; // bus de 16-bits tri-estado trireg (small) storeit; /* un nodo de almacenamiento por carga de poca fueraza */ wire w1, w1; // 2 «cables» reg [4:0] x, y, z; // declara 3 registros de 5 bits M.C. Rubén E. Marmolejo

148 Verilog: tipos de datos ejemplos
reg a; // un registro escalar wand w; // un net del escalar del tipo wand reg [3:0] v; // registro vector de 4-bits tri [15:0] busa; // bus de 16-bits tri-estado Trireg (small) storeit; /* un nodo de almacenamiento por carga de poca fueraza */ wire w1, w1; // 2 «cables» reg [4:0] x, y, z; // declara 3 registros de 5 bits M.C. Rubén E. Marmolejo

149 Verilog: tipos de datos ejemplos
reg a; // un registro escalar wand w; // un net del escalar del tipo wand reg [3:0] v; // registro vector de 4-bits tri [15:0] busa; // bus de 16-bits tri-estado Trireg (small) storeit; /* un nodo de almacenamiento por carga de poca fueraza */ wire w1, w1; // 2 «cables» reg [4:0] x, y, z; // declara 3 registros de 5 bits M.C. Rubén E. Marmolejo

150 Verilog Temas Tipos de datos. Operadores. Ejemplos combinatorios.
Diseño concurrente. Diseño estructural. M.C. Rubén E. Marmolejo

151 Verilog- operadores Aritméticos Lógicos Relacionales Desplazamiento
Condicionales Concatenación M.C. Rubén E. Marmolejo

152 Verilog- operadores Aritméticos Lógicos Relacionales Desplazamiento
Condicionales Concatenación M.C. Rubén E. Marmolejo

153 Verilog: operadores Aritméticos
M.C. Rubén E. Marmolejo

154 Verilog: operadores Aritméticos
M.C. Rubén E. Marmolejo

155 Verilog- operadores Aritméticos
Son utilizados para realizar operaciones aritméticas. M.C. Rubén E. Marmolejo Valores negativos se toman en complemento a 2, pero se consideran sin signo en expresiones.

156 Verilog- operadores Aritméticos + suma - resta * multiplicación
/ división % modulo M.C. Rubén E. Marmolejo

157 Verilog- operadores Aritméticos Lógicos Relacionales Desplazamiento
Condicionales Concatenación M.C. Rubén E. Marmolejo

158 Verilog- operadores en la vida diaria
Lógicos Los resultados de las operaciones lógicas son 2. Cierto o Falso M.C. Rubén E. Marmolejo

159 Verilog- operadores en la vida diaria
Lógicos Los resultados de las operaciones lógicas son 2. Cierto o Falso M.C. Rubén E. Marmolejo

160 Verilog- operadores Lógicos
Se utilizan para realizar operaciones lógicas. 1 and 1 = 1 0 and X = 0 & AND ~& NAND M.C. Rubén E. Marmolejo 1 and 1 = 0 0 and X = 1

161 Verilog- operadores Lógicos
Se utilizan para realizar operaciones lógicas. 1 and 1 = 1 0 and X = 0 & AND ~& NAND M.C. Rubén E. Marmolejo 1 and 1 = 0 0 and X = 1

162 Verilog- operadores Lógicos
Se utilizan para realizar operaciones lógicas. 1 or X = 1 0 or 0 = 0 | OR ~| NOR M.C. Rubén E. Marmolejo 1 or X = 0 0 or 0 = 1

163 Verilog- operadores Lógicos
Se utilizan para realizar operaciones lógicas. 1 or X = 1 0 or 0 = 0 | OR ~| NOR M.C. Rubén E. Marmolejo 1 or X = 0 0 or 0 = 1

164 Verilog- operadores Lógicos
Se utilizan para realizar operaciones lógicas. A ≠ B = 1 A = B = 0 ^ XOR ~ ^ , ^ ~ XNOR M.C. Rubén E. Marmolejo A ≠ B = 0 A = B = 1

165 Verilog- operadores Lógicos
Se utilizan para realizar operaciones lógicas. A ≠ B = 1 A = B = 0 ^ XOR ~ ^ , ^ ~ XNOR M.C. Rubén E. Marmolejo A ≠ B = 0 A = B = 1

166 Verilog- operadores Lógicos
Se utilizan para realizar operaciones lógicas. !VERDADERO = FALSO ! Negación lógica && and lógica M.C. Rubén E. Marmolejo A && B = FALSO VERDE && VERDE = VERDADERO

167 Verilog- operadores Aritméticos Lógicos Relacionales Desplazamiento
Condicionales Concatenación M.C. Rubén E. Marmolejo

168 Relacionales + lógicos
Verilog- operadores Relacionales + lógicos Se utilizan para evaluar relaciones. !VERDADERO = FALSO A && B = FALSO VERDE && VERDE = VERDADERO 4'b0010 && 4'b0011 = FALSE 4'b0010 & 4'b0011 = 4'b0010 ! Negación lógica && and lógica M.C. Rubén E. Marmolejo

169 Relacionales + lógicos
Verilog- operadores Relacionales + lógicos Se utilizan para evaluar relaciones. V || F || F = V || OR lógica == igualdad M.C. Rubén E. Marmolejo ROJO == ROJO = V

170 Verilog- operadores Relacionales Se utilizan para evaluar relaciones.
ROJO != ROJO = F != desigualdad == igualdad M.C. Rubén E. Marmolejo ROJO == ROJO = V

171 Verilog- operadores Relacionales Se utilizan para evaluar relaciones.
ROJO != ROJO = F != desigualdad == igualdad M.C. Rubén E. Marmolejo ROJO == ROJO = V

172 Verilog- operadores Aritméticos Lógicos Relacionales Desplazamiento
Condicionales Concatenación M.C. Rubén E. Marmolejo

173 Verilog- operadores Desplazamiento
Se utilizan para desplazar información. M.C. Rubén E. Marmolejo

174 assign C = (4'b1100 >> 2);
Verilog- operadores Desplazamiento Se utilizan para desplazar información. >> desplazamiento a la derecha assign C = (4'b1100 >> 2); M.C. Rubén E. Marmolejo Valor de C. 1 3 2 Posición.

175 assign C = (4'b1010 << 2);
Verilog- operadores Desplazamiento Se utilizan para desplazar información. << desplazamiento a la izquierda assign C = (4'b1010 << 2); M.C. Rubén E. Marmolejo Valor de C. 1 3 2 Posición.

176 assign C = (4'b1010 <<< 2);
Verilog- operadores Desplazamiento Se utilizan para desplazar información. <<< desplazamiento aritmético izquierdo assign C = (4'b1010 <<< 2); M.C. Rubén E. Marmolejo Valor de C. 1 3 2 Posición.

177 assign C = (4'b1011 <<< 2);
Verilog- operadores Desplazamiento Se utilizan para desplazar información. <<< desplazamiento aritmético izquierdo assign C = (4'b1011 <<< 2); M.C. Rubén E. Marmolejo Valor de C. 1 3 2 Posición.

178 assign C = (4'b0111 >>> 2);
Verilog- operadores Desplazamiento Se utilizan para desplazar información. >>> desplazamiento aritmético derecho assign C = (4'b0111 >>> 2); M.C. Rubén E. Marmolejo Valor de C. 1 3 2 Posición.

179 assign C = (4'b1011 >>> 2);
Verilog- operadores Desplazamiento Se utilizan para desplazar información. >>> desplazamiento aritmético derecho assign C = (4'b1011 >>> 2); M.C. Rubén E. Marmolejo Valor de C. 1 3 2 Posición.

180 Verilog- operadores Aritméticos Lógicos Relacionales Desplazamiento
Condicionales Concatenación M.C. Rubén E. Marmolejo

181 Verilog- operadores ?: Condicional Trabaja como en el lenguaje C.
Condición ? caso verdadero : caso falso ; M.C. Rubén E. Marmolejo

182 Verilog- operadores ?: Condicional
Si el resultado es verdadero se evalúa el caso verdadero. Si el resultado es falso se evalúa el caso falso. M.C. Rubén E. Marmolejo

183 Verilog- operadores ?: Condicional module ejemplo02 ( input wire sel,
input wire i0, i1, output wire out ); assign out = sel ? i0 : i1; endmodule M.C. Rubén E. Marmolejo

184 Verilog- operadores Aritméticos Lógicos Relacionales Desplazamiento
Condicionales Concatenación M.C. Rubén E. Marmolejo

185 Verilog- operadores { , } Concatenación
Provee de una forma de crear buses. Expresa operando separados por comas y dentro de llaves. M.C. Rubén E. Marmolejo

186 Verilog- operadores { , } Concatenación
// Tomando las siguientes consideraciones. a = 1'b1, b = 2'b00, c = 2'b10, d = 3'b110 M.C. Rubén E. Marmolejo y = { b, c} // y valdrá 'b0010 y = { a, b, c, d, 3’b001} ’b

187 Verilog- operadores: ejercicio
{ , } Concatenación // Tomando las siguientes consideraciones. a = 1'b1, b = 2'b00, c = 2'b10, d = 3'b110 M.C. Rubén E. Marmolejo y = { a, b, c, d, 3’b001} ________________? y = { a, b[0], c[1]} ________________?

188 Verilog- operadores: solución
{ , } Concatenación // Tomando las siguientes consideraciones. a = 1'b1, b = 2'b00, c = 2'b10, d = 3'b110 M.C. Rubén E. Marmolejo y = { a, b, c, d, 3’b001} 11’b y = { a, b[0], c[1]} ’b101

189 Verilog- operadores: solución
{ { } } Replicador // Tomando las siguientes consideraciones. a = 1'b1, b = 2'b00, c = 2'b10, d = 3'b110 M.C. Rubén E. Marmolejo y = { 4{a} } // 4’b1111 y = { 4{a}, 2{b} } //8’

190 Verilog- operadores Aritméticos Lógicos Relacionales Desplazamiento
Condicionales Concatenación M.C. Rubén E. Marmolejo

191 Verilog Temas Tipos de datos. Operadores. Ejemplos combinatorios.
Diseño concurrente. Diseño estructural. M.C. Rubén E. Marmolejo

192 Operadores de asignación
Temas Tipos de datos. Operadores : asignación Ejemplos combinatorios. Diseño concurrente. Diseño estructural. M.C. Rubén E. Marmolejo

193 Operadores de asignación
Blocking: Non-blocking Evaluación y asignación son inmediatos. = M.C. Rubén E. Marmolejo Todas las asignaciones son retrasadas hasta que las operaciones sean evaluadas. <=

194 Operadores de asignación
Blocking: Evaluación y asignación son inmediatos. = (a or b or c) begin x = a | b; y = a ^ b ^ c; z = b & ~c; end M.C. Rubén E. Marmolejo // Se evalúa y asigna a x // Se evalúa y asigna a y // Se evalúa y asigna a z

195 Operadores de asignación
Todas las asignaciones son retrasadas hasta que las operaciones sean evaluadas. Non-blocking <= (a or b or c) begin x <= a | b; y <= a ^ b ^ c; z <= b & ~c; end M.C. Rubén E. Marmolejo // Se evalúa pero retrasa la asignación de x // Se evalúa pero retrasa la asignación de y // Se evalúa pero retrasa la asignación de y // Se asigna x, y y z con sus valores nuevos

196 Blocking vs Non-blocking
1 A B ideal real Transición de señales lógicas A B C w y M.C. Rubén E. Marmolejo

197 Blocking vs Non-blocking
1 A B real Transición de señales lógicas C w y w = a & b y = w | c Blocking: Evaluación y asignaciones inmediatas a = b b = a M.C. Rubén E. Marmolejo Non-blocking: asignación con retardo hasta evaluar todo a <= b b <= a w <= a & b y <= w | c ¿Cuándo utilizarlo? Secuencial Combinatorio

198 Operadores de asignación
Temas Tipos de datos. Operadores : asignación Ejemplos combinatorios. Diseño concurrente. Diseño estructural. M.C. Rubén E. Marmolejo

199 Ejemplos combinatorios
Temas Bloque Ejemplo # 1 Ejemplo # 2 Ejemplo # 3 Ejercicio # 1 Ejercicio # 2 Ejercicio # 3 M.C. Rubén E. Marmolejo

200 Bloque always@ always@
Son utilizados para describir eventos que pasarían bajo ciertas circunstancias. Sintaxis: M.C. Rubén E. Marmolejo de sensibilidad) begin … elementos end

201 Blocking vs Non-blocking
(a or b or c or d) begin b <= a; c <= b; d <= c; end (a or b or c or d) begin b = a; c = b; d = c; end M.C. Rubén E. Marmolejo d = ? d = ?

202 Ejemplos combinatorios: # 1
𝐹=𝑋∙𝑌+ 𝑍 M.C. Rubén E. Marmolejo

203 Ejemplos combinatorios: # 1
Dibuja el diagrama lógico 𝐹=𝑋∙𝑌+ 𝑍 M.C. Rubén E. Marmolejo

204 Ejemplos combinatorios: # 1
𝐹=𝑋∙𝑌+ 𝑍 ¿Combinatorio o secuencial? ¿Cuántas entradas? ¿Cuántas salidas? ¿Tamaño de entradas o salidas? ¿Qué operadores necesita? M.C. Rubén E. Marmolejo

205 Ejemplos combinatorios: # 1
module ejemplo02 ( input wire X, input wire Y, input wire Z, output F ); assign F = ( X & Y ) | (~Z); endmodule Solución por comportamiento 𝐹=𝑋∙𝑌+ 𝑍 M.C. Rubén E. Marmolejo

206 Ejemplos combinatorios: # 1
𝐹=𝑋∙𝑌+ 𝑍 Ejemplos combinatorios: # 1 Solución por estructura Código de compuerta AND Código de compuerta OR Código del circuito M.C. Rubén E. Marmolejo Código de compuerta NOT

207 Ejemplos combinatorios: # 1
𝐹=𝑋∙𝑌+ 𝑍 Ejemplos combinatorios: # 1 Solución por estructura Código de compuerta AND Código de compuerta OR Código del circuito M.C. Rubén E. Marmolejo Código de compuerta NOT

208 Ejemplos combinatorios: # 1
module AND2gate(A, B, F); input A; input B; output F; reg F; (A or B) begin F <= A & B; end endmodule 𝐹=𝑋∙𝑌+ 𝑍 M.C. Rubén E. Marmolejo

209 Ejemplos combinatorios: # 1
𝐹=𝑋∙𝑌+ 𝑍 Ejemplos combinatorios: # 1 Solución por estructura Código de compuerta AND Código de compuerta OR Código del circuito M.C. Rubén E. Marmolejo Código de compuerta NOT

210 Ejemplos combinatorios: # 1
module OR2gate(A, B, F); input A; input B; output F; reg F; (A or B) begin F <= A | B; end endmodule 𝐹=𝑋∙𝑌+ 𝑍 M.C. Rubén E. Marmolejo

211 Ejemplos combinatorios: # 1
𝐹=𝑋∙𝑌+ 𝑍 Ejemplos combinatorios: # 1 Solución por estructura Código de compuerta AND Código de compuerta OR Código del circuito M.C. Rubén E. Marmolejo Código de compuerta NOT

212 Ejemplos combinatorios: # 1
module NOTgate(A, F); input A; output F; reg F; (A) begin F <= ~A; end endmodule 𝐹=𝑋∙𝑌+ 𝑍 M.C. Rubén E. Marmolejo

213 Ejemplos combinatorios: # 1
𝐹=𝑋∙𝑌+ 𝑍 Ejemplos combinatorios: # 1 Solución por estructura Código de compuerta AND Código de compuerta OR Código del circuito M.C. Rubén E. Marmolejo Código de compuerta NOT

214 Ejemplos combinatorios: # 1
module circuito(X, Y, Z, Fout); input X, Y, Z; output Fout; reg Fout; wire w1, w2; AND2gate AND2gate_1(X, Y, w1); NOTgate1 NOTgate1_1(Z, w2); OR2gate OR2gate_1(w1, w2, Fout); endmodule 𝐹=𝑋∙𝑌+ 𝑍 M.C. Rubén E. Marmolejo

215 Ejercicio combinatorios: # 1
𝐹= 𝑉 ∙𝑊∙𝑌+ 𝑍 ∙Y Diagrama Tabla de verdad #entradas #salidas Operaciones Código de comportamiento M.C. Rubén E. Marmolejo

216 Ejemplos combinatorios: #
M.C. Rubén E. Marmolejo

217 Ejemplos combinatorios: #
Definición del tipo de entradas/salidas. M.C. Rubén E. Marmolejo Numero ? Tamaño ? Nombre ? Tipo ?

218 Ejemplos combinatorios: #
Bloque always ¿Sensibilidad? ¿Qué incluye? M.C. Rubén E. Marmolejo

219 Ejemplos combinatorios: #
Bloque case ¿Sensibilidad? Sel = 3’b011 Sel = 3’b111 M.C. Rubén E. Marmolejo

220 Ejemplos combinatorios: # 1
M.C. Rubén E. Marmolejo Diagrama lógico que infiere la síntesis del código anterior.

221 Verilog Temas Tipos de datos. Operadores. Ejemplos combinatorios.
Diseño concurrente. Diseño estructural. Sentencias de control. M.C. Rubén E. Marmolejo

222 Verilog Temas Tipos de datos. Operadores. Ejemplos combinatorios.
Diseño concurrente. Diseño estructural. Sentencias de control. M.C. Rubén E. Marmolejo

223 Sentencias de control Sentencia IF Sentencia case
M.C. Rubén E. Marmolejo

224 Sentencia IF M.C. Rubén E. Marmolejo


Descargar ppt "Programación de sistemas reconfigurables"

Presentaciones similares


Anuncios Google