✅ 1. (6%) M Li et Al., escribió el paper titulado “The Design of IP Core for LCD Controller Based on SOPC” en donde desarrolla un controlador para pantalla LCD utilizando un solo procesador NIOSii como se describe a continuación:
✅ 2. De acuerdo con la siguiente figura, seleccionar la opción que describe el tipo de organización de los bloques lógicos correspondiente:
✅ 3. De acuerdo con la siguiente figura, colocar los nombres a los bloques que conforman la arquitectura del bus AVALON:
✅ 4. Indique cuál de las siguientes respuestas explica el significado de SIMD y MIMD:
✅ 5. De acuerdo con la siguiente figura, ¿qué resultado debería imprimirse?
✅ 6. ¿Cuál es el orden correcto de las tareas básicas que ejecuta el procesador durante Interruption Services Routine (ISR)?
✅ 7. Seleccione las afirmaciones correctas con respecto a los registros de control ienablestatus y bstatus en el procesador NIOSii:
✅ 8. Dada la siguiente figura, colocar los nombres a los bloques que conforman la arquitectura del procesador NIOSii, utilizar las siguientes opciones:
✅ 9. Escribir el código en lenguaje C que permita calcular el valor AVERAGE de un vector de 10 números, crear el vector como una variable local con los valores ascendentes del 1 al 10.
✅ 10. Dada la siguiente figura, colocar los nombres correctos en la tabla comparativa de tipos de procesadores NIOSii, utilizar las siguientes opciones:
✅ 11. Graficar la arquitectura que conforma una FPGA, incluir:
✅ 12. Dada las siguientes instrucciones correspondientes a las tareas realizadas por el microprocesador, graficar su arquitectura simplificada donde se muestre claramente el número de la instrucción que está siendo ejecutada.
✅ 13. Una con líneas según corresponda la combinación de procesadores:
✅ 14. Unir con líneas los elementos o tareas básicas de cada temática:
✅ 15. Indique cual es el resultado en el siguiente ejemplo de encapsulamiento:
cortes de luz abril 2024 en la provincia de tungurahua
⭐⭐⭐⭐⭐ DISEÑO DE SISTEMAS DIGITALES, LECCIÓN C RESUELTA 1er PARCIAL (2019 2do Término)
1. vasanza 1
DISEÑO DE SISTEMAS DIGITALES
LECCIÓN 1P (20 Puntos)
Fecha: 2019/11/19 II termino 2019-2020
Nombre: _________________________________________________ Paralelo: __________
1. (6%) M Li et Al., escribió el paper titulado “The Design of IP Core for LCD Controller Based on SOPC”
en donde desarrolla un controlador para pantalla LCD utilizando un solo procesador NIOSii como se
describe a continuación:
El SOPC (System on Processor Chip) tiene una pantalla LCD que se conecta con el controlador LCD, la
SDRAM se conecta con el controlador SDRAM y la comunicación de los dos controladores con el procesador
NIOS II a través de la interfaz mapeada de memoria Avalon (Avalon-MM).
El control de múltiples relojes generados por el mismo PLL puede generar relojes con diferentes frecuencias
o fases. El componente Avalon ALTPLL agregado en Qsys puede generar cinco relojes diferentes como
máximo, pero solo se necesitan dos salidas en este diseño. De acuerdo con el principio de funcionamiento de
SDRAM, se sabe que los relojes que ingresan a la SDRAM y al controlador SDRAM deben tener la misma
frecuencia y tener una cierta diferencia de fase para garantizar la lectura y escritura correcta de los datos. En
este diseño, la entrada al controlador SDRAM y SDRAM es una señal de reloj bidireccional con una misma
frecuencia de 100MHz y una diferencia de fase de 90 °. Y clk_100m2 exporta para el reloj de SDRAM,
clk_50m es el reloj del sistema. Necesitamos configurar el sistema de procesador NIOS II, seleccionar y
configurar los periféricos e IP, luego conectar los módulos periféricos, generar el sistema, diseñar el módulo
de nivel superior en el software Quartus II, asignar los pines y compilarlos completamente, y descargar si se
compila correctamente, el modelo del chip FPGA en esta placa de desarrollo es EP4CE10F17C8.
Referencia:
Li, M., Zhou, X., & Guo, Q. (2018). The Design of IP Core for LCD Controller Based on SOPC. In MATEC
Web of Conferences (Vol. 232, p. 04074). EDP Sciences..
RESPUESTA:
Diseño SoPC en las FPGAs
2. vasanza 2
2. De acuerdo con la siguiente figura, seleccionar la opción que describe el tipo de organización de los
bloques lógicos correspondiente:
a) (a) FPGA de organización tipo Manhattan. (b) organización tipo terraza. (c) organización tipo mar de
puertas.
b) (a) FPGA de organización tipo terraza. (b) organización tipo mar de puertas. (c) organización tipo Manhattan.
c) (a) FPGA de organización tipo mar de puertas. (b) organización tipo Manhattan. (c) organización tipo terraza.
d) (a) FPGA de organización tipo terraza. (b) organización tipo Manhattan. (c) organización tipo mar de puertas.
e) Ninguna de las anteriores
3. De acuerdo con la siguiente figura, colocar los nombres a los bloques que conforman la arquitectura
del bus AVALON:
Respuesta:
3. vasanza 3
4. Indique cuál de las siguientes respuestas explica el significado de SIMD y MIMD:
a) Una instrucción, múltiples datos y múltiples instrucciones, un dato.
b) Múltiples instrucciones, un dato y una instrucción, un dato.
c) Múltiples instrucciones, un dato y múltiples instrucciones, múltiples datos.
d) Una instrucción, múltiples datos y múltiples instrucciones, múltiples datos.
e) Ninguna de las anteriores.
5. De acuerdo con la siguiente figura, ¿qué resultado debería imprimirse?
a)
Value of i:5
Value of i reference:5
Value of d: 11.7
Value of d reference:11.7
b)
Value of i:10
Value of i reference:5
Value of d:1.7
Value of d reference:11.7
c)
Value of i:10
Value of i reference:5
Value of d: 11.7
Value of d reference:5
d)
Value of i:5
Value of i reference:5
Value of d:1.7
Value of d reference:11.7
6. ¿Cuál es el orden correcto de las tareas básicas que ejecuta el procesador durante Interruption
Services Routine (ISR)?
a) Optimizar el estado del sistema, transferir el control a una rutina especial y reanudar la ejecución normal del
programa.
b) Suspender la ejecución del programa actual, manejar la excepción y guardar el estado actual del sistema.
c) Ninguna de las anteriores.
d) Suspender la ejecución del programa actual y guardar el estado actual del sistema, transferir el control a una
rutina especial y restaurar el estado del sistema.
7. Seleccione las afirmaciones correctas con respecto a los registros de control ienablestatus y bstatus en
el procesador NIOSii:
a) Contrrola el manejo de las interrupciones internas de software.
b) Contiene una copia guardada del registro de estado durante el procesamiento de la excepción de interrupción.
c) Contrrola el manejo de las interrupciones internas de hardware (registro ienable).
d) Contiene una copia guardada del registro de estado durante el preprocesamiento de la excepción de
interrupción.
e) a y b
f) a y c
g) a y d
4. vasanza 4
8. Dada la siguiente figura, colocar los nombres a los bloques que conforman la arquitectura del
procesador NIOSii, utilizar las siguientes opciones:
• Data Regions
• Required Module
• JTAG Debug Module
• Instruction Regions
• Tightly Coupled Data Memory
• General Purpose Registers
• Arithmetic Logic Unit
• Exception Controller
• Control Registers
• Internal Interrupt Controller
• Tightly Coupled Instruction Memory
• Data Cache
Respuesta:
5. vasanza 5
9. Escribir el código en lenguaje C que permita calcular el valor AVERAGE de un vector de 10 números,
crear el vector como una variable local con los valores ascendentes del 1 al 10.
Respuesta:
10. Dada la siguiente figura, colocar los nombres correctos en la tabla comparativa de tipos de
procesadores NIOSii, utilizar las siguientes opciones:
• <1400 LEs
• 6 gates
• 290 MHz
• Static
• 270 MHZ
• 1 cycle
• 340 MHz
• 5 gates
• 3 cycles
• <700 LEs
• Dynamic
• Env 2500 LEs
6. vasanza 6
Respuesta:
11. Graficar la arquitectura que conforma una FPGA, incluir:
• Bloques
o Complex Logic Block (CLB)
o I/O Blocks
o Interconnection lines
o Interconnection matrix
Respuesta:
12. Dada las siguientes instrucciones correspondientes a las tareas realizadas por el microprocesador,
graficar su arquitectura simplificada donde se muestre claramente el número de la instrucción que
está siendo ejecutada.
• (Paso 1) La MPU saca y envía por el bus de direcciones el contenido de la dirección 100. Una línea de control
permite la lectura de entrada en el CI memoria programa (leer significa copiar la información de un lugar de
la memoria). Este paso se representa en la figura anterior con el círculo que tiene el número I.
• (Paso 2) La memoria de programa toma la primera instrucción (ENTRADA de datos) en bus de da-tos y el
MPU acepta este mensaje codificado, que es alojado en un lugar especial de la me-moria en el MPU, llamado
registro de instrucción. El MPU decodifica (interpreta) la ins-trucción y determina que ésta necesita el dato
a operar para la instrucción ENTRADA de datos.
• (Paso 3) El MPU envía la información de la dirección 101 por el bus de datos. La línea de control permite la
lectura de la memoria de programa.
• (Paso 4) La memoria de programa coloca la información operada (que viene del puerto 1) en el bus de datos.
El mensaje estaba alojado en la dirección 101 de la memoria programa. El mensa-je codificado (la
información que viene del puerto 1) es sacado del bus de datos y colocado en el registro de instrucciones. El
MPU decodifica ahora la instrucción completa (ENTRA-DA de datos del puerto 1).
7. vasanza 7
• (Paso 5) El MPU provoca la apertura del puerto 1 por medio del bus de datos y las líneas de control en la
unidad de entrada. La forma codificada de A es transferida y almacenada en el acu-mulador del MPU.
• (Paso 6) El MPU envía el contenido de la dirección 102 en el bus de datos. Después habilita las líneas de
control para leer la información de entrada.
• (Paso 7) El código para la instrucción de ALMACENAR datos es leído en el bus de datos y aceptado por el
MPU en el registro de instrucciones.
• (Paso 8) El MPU decodifica la orden de ALMACENAR datos y determina qué hacer con ellos. El MPU
direcciona la siguiente posicion en la memoria (103) y permite el ingreso a la memoria de programa.
• (Paso 9) La clave para "la posición 200" de la memoria es puesta por la memoria de programa en el bus de
datos. El MPU acepta esta información operada y la almacena en el registro de ins-trucciones. La instrucción
completa "ALMACENAR datos en la posición 200" ha sido captada de la memoria y decodificada.
• (Paso 10) Aquí empieza el proceso de ejecución. El MPU envía por el bus de direcciones la dirección 200 y
permite la entrada de escritura de la memoria de datos (escribir significa copiar dates en una posición de la
memoria).
• (Paso 11) El MPU coloca la información almacenada en el acumulador, en el bus de datos (la forma
codificada de A). La A es escrita en la posición 200 de la memoria de datos. La segunda ins-trucción ha sido
ejecutada. Este proceso de almacenar no afecta el contenido del acumula-dor, éste aún contiene la forma
codificada de A.
• (Paso 12) Ahora el MPU debe captar la próxima instrucción. Direcciona la posición 104 y permite la lectura
de la memoria de programa.
• (Paso 13) La instrucción en clave para "SALIDA de datos" se encuentra en el bus de datos. El MPU acepta
la instrucción en el registro de instrucción. El MPU decodifica la instrucción y deter-mina la necesidad de
operar.
• (Paso 14) El MPU coloca la dirección 105 en el bus de direcciones y permite la entrada de lectura de la
memoria de programa.
• (Paso 15) La memoria de programa coloca la clave para operar en el "puerto 10" en el bus de datos. El MPU
acepta esta clave en el registro de instrucciones.
• (Paso 16) El MPU decodifica la instrucción completa "SALIDA de datos al puerto 10". La misma unidad
activa el puerto 10 usando el bus de direcciones y las líneas de control hacia la uni-dad de salida. Coloca la
clave de A (aún guardada en el bus de datos). La A se transmite.
Respuesta:
8. vasanza 8
13. Una con líneas según corresponda la combinación de procesadores:
Xilinx o Altera Open CL
Altera o Xilinx Vivado High Level Synthesis
Otras Herramientas o ARM SoC / Cyclone V
o ARM SoC / Arria V
o Zynq – 7000
o ZedBoard
14. Unir con líneas los elementos o tareas básicas de cada temática:
• Procesar una interrupción implica tres
tareas básicas
• El procesamiento de interrupciones
consta de tres elementos:
• Transferir el control a una rutina
especial para manejar la excepción.
• Procesador Nios II.
• Restaurar el estado del sistema y
reanudar la ejecución normal del
programa.
• Control de excepciones de nivel superior
(exception handler), que guarda y
restaura el estado del sistema y envía el
ISR adecuado.
• Suspender la ejecución del programa
actual y guardar el estado actual del
sistema.
• Procesamiento de una interrupción de
hardware individual por parte de una
colección de ISR.
15. Indique cual es el resultado en el siguiente ejemplo de encapsulamiento:
a) 20
b) 30
c) 50
d) 60