La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

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.

Presentaciones similares


Presentación del tema: "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."— 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 I7268 M.C. Rubén E. Marmolejo 1

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

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

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

5 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 Introducción a los lenguajes HDL M.C. Rubén E. Marmolejo https://www.princeton.edu/~achaney/tmve/wiki100k/docs/Ha rdware_description_language.html 5

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

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

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

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

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

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

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

13 Introducción a los lenguajes HDL M.C. Rubén E. Marmolejo Aplicaciones 0/0310/114.html 13

14 Introducción a los lenguajes HDL M.C. Rubén E. Marmolejo Aplicaciones 0/0310/114.html 14

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

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

17 VHDL - V HSIC H ardware D escription L anguage M.C. Rubén E. Marmolejo 17 VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura Diagrama de la estructura de un archivo de VHDL

18 VHDL - V HSIC H ardware D escription L anguage M.C. Rubén E. Marmolejo 18 Modelos de programación (formas de programar) Comportamental Estructural

19 VHDL - V HSIC H ardware D escription L anguage M.C. Rubén E. Marmolejo 19 Modelos de programación (formas de programar) Comportamental Estructural Implementación

20 VHDL - V HSIC H ardware D escription L anguage M.C. Rubén E. Marmolejo 20 VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura Diagrama de la estructura de un archivo de VHDL

21 VHDL - Entidad M.C. Rubén E. Marmolejo 21 Ejemplo de un diagrama lógico 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 M.C. Rubén E. Marmolejo 22 Ejemplo de un entidad Entity Entidad_TACO is port ( a: in std_logic ; b: in std_logic ; f: out std_logic ); End Entidad_TACO ; ?

23 VHDL - V HSIC H ardware D escription L anguage M.C. Rubén E. Marmolejo 23 VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura Diagrama de la estructura de un archivo de VHDL

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

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

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

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. 27

28 VHDL - Bibliotecas M.C. Rubén E. Marmolejo 28 ¿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.

29 VHDL - Bibliotecas M.C. Rubén E. Marmolejo 29 Library ieee ; Use ieee.std_logic_1164.all ; Ejemplo de una biblioteca común en VHDL. Ver Declaración de las representaciones de valores lógicos Ejemplo: std_logic 'U' - valor sin inicializar. 'X' - desconocido. '0' - 0 lógico. '1' - 1 lógico. '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.

30 VHDL - Bibliotecas M.C. Rubén E. Marmolejo 30 Bit 0,1 Nibble4 bits ( ),(0-15), (0-F) Byte8 bits ( ),(0-255) Ver Posición3210 # LSBMSB Posición3210 # LSB MSB 8 5

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

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

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

34 VHDL - Bibliotecas M.C. Rubén E. Marmolejo 34 Ver Posición3210 # LSB MSB 8

35 VHDL - Bibliotecas M.C. Rubén E. Marmolejo 35 Ver LSBMSB Posición3210 #

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

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

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

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

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

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

42 VHDL - bibliotecas+entidad: ejemplo M.C. Rubén E. Marmolejo 42 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 ;

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

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

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

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

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

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

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

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

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

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

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

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

55 VHDL - V HSIC H ardware D escription L anguage M.C. Rubén E. Marmolejo 55 VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura Diagrama de la estructura de un archivo de VHDL

56 VHDL - V HSIC H ardware D escription L anguage M.C. Rubén E. Marmolejo 56 VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura Diagrama de la estructura de un archivo de VHDL

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

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

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

60 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 ; M.C. Rubén E. Marmolejo VHDL - arquitectura: ejemplo Biblioteca Entidad Arquitectura 60

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

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

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

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

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

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

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

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

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

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

71 M.C. Rubén E. Marmolejo VHDL - operadores 71 Variable 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.

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

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

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

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

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

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

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

79 M.C. Rubén E. Marmolejo VHDL - operadores 79 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). NOT AND OR NAND NOR XOR XNOR

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

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

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

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

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

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

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

87 M.C. Rubén E. Marmolejo VHDL - operadores 87 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.

88 M.C. Rubén E. Marmolejo VHDL - operadores 88 Aritméticos +Suma - Resta * Multiplicación. /División. **Potencia. MODMódulo. REMResiduo. ABSValor absoluto. Ver pagina 49 Volnei A.

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

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

91 M.C. Rubén E. Marmolejo VHDL - operadores 91 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é?

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

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

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

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

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

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

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

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

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

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

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

103 VHDL - V HSIC H ardware D escription L anguage M.C. Rubén E. Marmolejo 103 VHSIC – Very High Speed Integrated Circuit Estructura VHDL Declaración de bibliotecas Declaración de entidad Cuerpo de la arquitectura Diagrama de la estructura de un archivo de VHDL

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

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

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

107 M.C. Rubén E. Marmolejo VHDL - estructuras de control 107 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.

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

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

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

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

112 I7268 Plan de curso (17 semanas) Actividades de aprendizaje 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 Introducción a los lenguajes HDL Sintaxis de VHDL Estructura Variables Modelos de programación Estructuras de control Sintaxis de Verilog. Estructura Variables Modelos de programación Estructuras de control. Temas del día M.C. Rubén E. Marmolejo 113

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

115 Verilog: introducción M.C. Rubén E. Marmolejo 115 Nomenclatura utilizada en esta presentació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. Palabras reservadas de Verilog.

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

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

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

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

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

121 M.C. Rubén E. Marmolejo Verilog- arquitectura: ejemplo 121 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 Funcionamiento

122 M.C. Rubén E. Marmolejo Verilog- arquitectura: ejemplo 122 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 Funcionamiento

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

143 Verilog: tipos de datos ejemplos M.C. Rubén E. Marmolejo 143 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

144 Verilog: tipos de datos ejemplos M.C. Rubén E. Marmolejo 144 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

145 Verilog: tipos de datos ejemplos M.C. Rubén E. Marmolejo 145 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

146 Verilog: tipos de datos ejemplos M.C. Rubén E. Marmolejo 146 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

147 Verilog: tipos de datos ejemplos M.C. Rubén E. Marmolejo 147 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

148 Verilog: tipos de datos ejemplos M.C. Rubén E. Marmolejo 148 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

149 Verilog: tipos de datos ejemplos M.C. Rubén E. Marmolejo 149 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

194 Operadores de asignación M.C. Rubén E. Marmolejo 194 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 // 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 M.C. Rubén E. Marmolejo 195 Non-blocking Todas las asignaciones son retrasadas hasta que las operaciones sean evaluadas. <= (a or b or c) begin x <= a | b ; y <= a ^ b ^ c ; z <= b & ~ c; end // Se evalúa pero retrasa la asignación de x // 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 M.C. Rubén E. Marmolejo ABAB 1010 ABAB ideal real Transición de señales lógicas ABCABC wywy

197 Blocking vs Non-blocking M.C. Rubén E. Marmolejo ABAB real Transición de señales lógicas ABCABC wywy a = b b = a w = a & b y = w | c Blocking: Evaluación y asignaciones inmediatas 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 M.C. Rubén E. Marmolejo 198 Temas Tipos de datos. Operadores : asignación Ejemplos combinatorios. Diseño concurrente. Diseño estructural.

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

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

201 Blocking vs Non-blocking M.C. Rubén E. Marmolejo 201 (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 d = ?

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

203 Ejemplos combinatorios: # 1 M.C. Rubén E. Marmolejo 203 Dibuja el diagrama lógico

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

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

206 Ejemplos combinatorios: # 1 M.C. Rubén E. Marmolejo 206 Solución por estructura Código de compuerta AND Código de compuerta OR Código de compuerta NOT Código del circuito

207 Ejemplos combinatorios: # 1 M.C. Rubén E. Marmolejo 207 Solución por estructura Código de compuerta AND Código de compuerta OR Código de compuerta NOT Código del circuito

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

209 Ejemplos combinatorios: # 1 M.C. Rubén E. Marmolejo 209 Solución por estructura Código de compuerta AND Código de compuerta OR Código de compuerta NOT Código del circuito

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

211 Ejemplos combinatorios: # 1 M.C. Rubén E. Marmolejo 211 Solución por estructura Código de compuerta AND Código de compuerta OR Código de compuerta NOT Código del circuito

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

213 Ejemplos combinatorios: # 1 M.C. Rubén E. Marmolejo 213 Solución por estructura Código de compuerta AND Código de compuerta OR Código de compuerta NOT Código del circuito

214 Ejemplos combinatorios: # 1 M.C. Rubén E. Marmolejo 214 module circuito ( X, Y, Z, Fou t) ; 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

215 Ejercicio combinatorios: # 1 M.C. Rubén E. Marmolejo 215 Diagrama Tabla de verdad #entradas #salidas Operaciones Código de comportamiento

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

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

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

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

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

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

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

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

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


Descargar ppt "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."

Presentaciones similares


Anuncios Google