Font size
WorksheetsIsdig_Parcial1
Total questions: 116
Worksheet time: 15hrs 35mins
¿Cuál de las siguientes afirmaciones es falsa?
Los tipos de logic solo pueden ser asignados dentro de los always e inital
Los datos tipo wire no pueden ser asignados dentro de los always e inital
Los datos tipo reg no pueden ser conducidos por salidas de primitivas
¿Cuál de estas arquitecturas representa el hardware descrito por el codigo SystemVerilog mostrado?
Arquitectura respuesta A
Arquitectura respuesta B
Arquitectura respuesta C
¿Que valores de a y b no serán posibles cuando aplicamos la aleatorización con randomize?
a==1'b1 y b==1'b0
a==1'b1 y b==1'b1
a==1'b0 y b==1'b1
¿Cuál de estas arquitecturas representa el hardware descrito por el código SystemVerilog mostrado?
Arquitectura respuesta D
Arquitectura respuesta B
Arquitectura respuesta C
¿Cuando un dato tipo reg es actualizado con su nuevo valor como resultado de una asignación de tipo NON-BLOCKING dentro de un ALWAYS?
Inmediatamente después de que la asignación ocurre en el proceso (always)
Cuando todos los procesos se suspenden
En el próximo tiempo físico de simulación en el futuro
Indicar cual de las siguientes afirmaciones es FALSA.
El margen de retención es independiente de la frecuencia de reloj del sistema.
Los path combinacionales entre registros se delimitan en su valor mínimo por el margen de retención.
Los path combinacionales entre registros se delimitan en su valor máximo por el margen de retención.
Indicar cual de las siguientes afirmaciones es FALSA.
Los sincronizadores de la señal de reset global sincronizan la activación y desactivación del reset, evitando su coincidencia con el flanco activo del reloj
Los sincronizadores de la señal de reset global sincronizan la desactivación del reset, evitando su coincidencia con el flanco activo del reloj
Debemos evitar los efectos de que de la señal de reset asíncrona se desactive en diferentes ciclos de reloj para los diferentes flip-flops de mi sistema, fruto del skew de la señal de reset.
Indica cuál de las siguientes afirmaciones es FALSA:
El tiempo de hold de un flip-flop puede ser negativo
El margen de retención no depende de la frecuencia de reloj
La ventana de captura es la suma de los tiempos de setup y hold menos el skew de reloj
¿Cuando un dato tipo reg es actualizado con su nuevo valor como resultado de un asignación de tipo NON-BLOCKING dentro de un ALWAYS?
Inmediatamente después de que la asignación ocurre en el proceso (always)
Cuando todos los procesos se suspenden
En el próximo tiempo físico de simulación en el futuro
Dadas las descripciones incluidas, indicad cual de las siguientes afirmaciones es CIERTA
LA DESCRIPCIÓN A da error al sintetizar
LA DESCRIPCIÓN B genera latches al sintetizar
LA DESCRIPCIÓN C genera latches al sintetizar
¿Cuáles de las siguientes descripciones provoca la inferencia de latches al sintetizar?
LAS DESCRIPCIÓN B ÚNICAMENTE
LAS DESCRIPCIONES B y C ÚNICAMENTE
LAS DESCRIPCIONES A y B ÚNICAMENTE
Dada la siguiente descripción SystemVerilog, indicad cuantos flip-flops se sintetizarán cuando dicha descripción sea compilada.
Depende del "always" que sea procesado en primer lugar
4 flip-flops
8 flip-flops
Dada la siguiente descripción SystemVerilog indicar cuantos flip-flops se sintetizarán cuando dicha descripción sea compilada.
Un flip-flop
4 flip-flops
5 flip-flops
Dada la siguiente descripción SystemVerilog indicar cuantos flip-flops se sintetizarán cuando dicha descripción sea compilada.
Un flip-flop
4 flip-flops
5 flip-flops
Indicad cual de las siguientes afirmaciones es CIERTA con respecto a la siguiente aserción:
assert property (@(negedge clk) a!=3)
Es una aserción concurrente con habilitación
Es una aserción concurrente sin habilitación
Es una aserción inmediata sin habilitación
Indicad cual de las siguientes afirmaciones es CIERTA
La construccion "program" de systemverilog muestrea sus salidas justo antes del flanco activo de reloj y conduce sus entradas justo después de dicho flanco
La construccion "program" de systemverilog muestrea las salidas del diseño objeto de verificación (DUV) justo antes del flanco activo de reloj y conduce las entradas del DUV justo después de dicho flanco
La construccion "program" de systemverilog muestrea su entradas justo despues del flanco activo de reloj y conduce sus salidas justo antes de dicho flanco
Dadas las siguientes descripciones de una memoria RAM de doble puerto, indicad cual de las siguientes afirmaciones es CIERTA:
En caso de escribir y leer de la misma dirección, en la descripción B se lee el valor antiguo que hubiera en esa dirección y en la descripción A se lee el nuevo valor escrito en esa dirección
En caso de escribir y leer de la misma dirección, en la descripción A se lee el valor antiguo que hubiera en esa dirección y en la descripción B se lee el nuevo valor escrito en esa dirección
En caso de escribir y leer de la misma dirección, en ambas descripciones se lee el nuevo valor escrito en dicha dirección
Dada la siguiente descripción SystemVerilog indicar cuantos flip-flops se sintetizarán cuando dicha descripción sea compilada.
Dos flip-flops
4 flip-flops
5 flip-flops
Dada la siguiente descripción systemverilog indicad cual de los siguientes comportamientos de sd.START y de EMPEZAR (expresados por un cronograma) corresponde a la descripción realizada.
Dada la siguiente descripción verilog/systemverilog , indicad cual de las siguientes afirmaciones es cierta.
Si escribimos y leemos de la misma dirección: Aparecería por el puerto de salida el antiguo dato guardado en esa dirección y se escribiría en esa dirección el nuevo dato del puerto de entrada.
Si escribimos y leemos de la misma dirección: se escribiría en esa dirección el nuevo dato del puerto de entrada y aparecería por el puerto de salida ese nuevo dato guardado en esa dirección .
Si escribimos y leemos de la misma dirección: se escribiría en esa dirección el nuevo dato del puerto de entrada y aparecería por el puerto de salida un valor desconocido.
Dada la siguiente descripción verilog/systemverilog, indicad que se sintetizará
Sintetiza un latch tipo RS NAND en el que las entradas son A y B
una puerta NAND en el que las entradas son A y B
No es un circuito combinacional puro y no se puede sintetizar
Dado el siguiente diagrama ASM de especificación de un diseño “contador de unos de datos de 8 bits” indicar cuál de las siguientes CONTROL-PATH y DATA-PATH responden a las necesidades de este circuito.
Un control de tipo Mealy de 3 estados, y un datapath que incluye
1. un contador con los modos síncronos: incrementar, resetear y mantener
2. un registro de desplazamiento con los modos síncronos: carga paralelo, desplazar, mantener
3. un registro con los modos síncronos: carga paralelo y mantener
Un control de tipo Mealy de 3 estados, y un datapath que incluye
1. un contador con los modos síncronos: incrementar, resetear y mantener
2. un registro de desplazamiento con los modos síncronos: carga paralelo, desplazar, mantener y reset
3. un registro con los modos síncronos: carga paralelo y mantener
Un control de tipo Moore de 3 estados, y un datapath que incluye
1. un contador con los modos síncronos: incrementar, carga paralelo y mantener
2. un registro de desplazamiento con los modos síncronos: desplazar, mantener y reset
3. un registro con los modos síncronos: carga paralelo y mantener
Según la regla de oro del diseño síncrono
Todos los flip-flops del sistema tienen que ir conectados a la señal de reloj, activos en cualquiera de sus fases
Las entradas asíncronas no deben usarse salvo para la inicialización por el control-path
Ninguna de las restantes
¿Cuál de estas arquitecturas representa el hardware descrito por el código SystemVerilog mostrado?
Arquitectura de respuesta A
Arquitectura de respuesta B
Arquitectura de respuesta C
¿Cual es la probabilidad de tener que a=1 cuando aplicamos la aleatorización con randomize?
La probabilidad es de 1/256
La probabilidad es de 1/257
La probabilidad es de 1
¿Cual es la probabilidad de tener que a=1 cuando aplicamos la aleatorización con randomize?
La probabilidad es de 1/257
La probabilidad es de 1/2
La probabilidad es de 1/256
¿Dónde es más probable tener problemas de margen de retención suponiendo que la FPGA dispone de los mayores valores de latencia?
En los path que se originan en la FPGA y que finalizan en el exterior
En los path que finalizan en la FPGA y que se originan en el exterior
En los path internos de la FPGA
Dada la siguiente descripción systemverilog indicad cual de los siguientes comportamientos de sd.START, md.START y de EMPEZAR (expresados por un cronograma) corresponde a la descripción realizada.
Indicad cual de las siguientes aserciones serviría para comprobar el funcionamiento de la operación de escritura de una memoria RAM de doble puerto que tiene la siguiente descripción:
Indicad cual de las siguientes aserciones serviría para comprobar el funcionamiento de la operación de lectura de una memoria RAM de doble puerto que tiene la siguiente descripción:
operacion_lectura: assert property (@(posedge clock) !stable(rdaddress)&&!wren|->lectura);
sequence lectura;
logic [7:0] aux;
(1, aux=mem[rdaddress]) ##1 (data_out===aux) ;
endsequence
operacion_lectura: assert property (@(posedge clock) !stable(rdaddress)|->lectura);
sequence lectura;
logic [7:0] aux;
(1, aux=mem[rdaddress]) ##1 (data_out===aux) ;
endsequence
operacion_lectura: assert property (@(posedge clock) rden|->lectura);
sequence lectura;
logic [7:0] aux;
(1, aux=mem[rdaddress]) ##1 (data_out===aux) ;
endsequence
Suponiendo detectados y resueltos todos los bules combinacionales cuando hemos diseñado el data-path y el control-path. ¿Qué tipos de máquinas de estados en la implementación del control-path permitirían la aparición de nuevos bucles (feedback) combinacionales cuando realizamos la unión del control-path y el data-path en un nivel jerárquico superior?
Máquinas Moore
Máquinas Mealy
Máquinas con salidas registradas
Típicamente, el Control Path de un diseño digital se compone de:
Máquina de Estados solamente
Máquina de Estados y ALU
Máquina de Estados y un Registro de Desplazamiento
¿Cuál de estas arquitecturas representa el hardware descrito por el código SystemVerilog mostrado?
Arquitectura de respuesta A
Arquitectura de respuesta B
Arquitectura de respuesta C
¿Cuál de estas arquitecturas representa el hardware descrito por el código SystemVerilog mostrado?
Arquitectura de respuesta A
Arquitectura de respuesta B
Arquitectura de respuesta C
La siguiente estructura para la distribución de reloj…
Es perfectamente correcta.
Es problemática debido al distinto fan-out de las ramas.
Es problemática debido a la distinta profundidad lógica de las ramas.
Indicad cual de las siguientes afirmaciones es FALSA
Un método para obtener el grado de cobertura es llamar desde nuestro system verilog al procedimiento "get_coverage"
Un método para obtener el grado de cobertura es llamar desde nuestro system verilog al procedimiento "get_inst_coverage"
Un método para obtener el grado de cobertura es llamar desde nuestro system verilog al procedimiento "coverage"
Indicad cual de las siguientes afirmaciones es FALSA con respecto a la siguiente aserción:
assert property (@(negedge clk) req |-> ##1 grant)
En cualquier ciclo si req ==1'b0 la aserción es abortada
En cualquier ciclo si req ==1'b1 la aserción falla si grant==1'b0 en el siguiente ciclo
En cualquier ciclo si req ==1'b1 la aserción falla si grant==1'b1 en el siguiente ciclo
Indicad cual de las siguientes afirmaciones es FALSA
La nueva construcción de systemverilog "program" puede ser instanciado en un testbench como si de un módulo se tratara
La nueva construcción de systemverilog "program" normalmente define un testbench con comportamiento libre de carreras en donde podemos definir estímulos e incluir elementos de verificación
La nueva construcción de systemverilog "program" puede instanciar módulos y llamadas a funciones y procedimientos
Dada la siguiente comportamiento temporal
assert property((@negedge clk) $rose(r) |-> (!g [*2:$]##1 g) or (r [*2:$] ##1 !r))
assert property((@negedge clk) $rose(r) |-> (!g[*2:$]##1 g) intersect (r [*2:$] ##1 !r))
assert property((@negedge clk) $rose(r) |-> (!g [*2:$] ##1 g) and (r [*2:$] ##1 !r))
Indicad cual de las siguientes afirmaciones es CIERTA.
Los illegal_bin son los únicos casos que no son tenidos en cuenta en las funciones que contabilizan el grado de cubrimiento funcional
Los illegal_bin y los ignore_bin son los únicos casos que no son tenidos en cuenta en las funciones que contabilizan el grado de cubrimiento funcional
Los illegal_bin, los ignore_bins y los bin de tipo default son los únicos casos que no son tenidos en cuenta en las funciones que contabilizan el grado de cubrimiento funcional
¿Cuántos bins son creados para analizar la cobertura de la variable v_a?
14
5
1024
Indicad cual de las siguientes afirmaciones es FALSA
La construcción "interface" apenas es utilizada en la elaboración de bancos de pruebas porque no permite la interconexión de un "program" con un modulo objeto de verificación (DUV)
La construcción "interface" es la incorporación más relevante del systemVerilog a la descripción estructural
La construcción "interface" puede tener varios puntos de vista: Master/slave, transmisor/receptor,etc
Esto puede ser especificado mediante “modports"
Indicad cual de las siguientes afirmaciones es FALSA
Es recomendable el uso de asignaciones non-blocking en always _ff
Es recomendable el uso de asignaciones non-blocking en always _comb
Es recomendable el uso de asignaciones blocking en always _comb
Suponiendo que nuestro data-path puede funcionar a 50 MHz y el control-path a 50 MHz. ¿Qué tipos de máquinas de estados en la implementación del control-path permitirán garantizarnos que el diseño total obtendrá una frecuencia máxima de operación cercana a 50 MHz cuando realizamos la unión del control-path y data-path en un nivel jerárquico superior?
Ninguna de las dos nos lo puede garantizar. Hay nuevos path que pueden reducir la frecuencia del top y este hecho es independiente del tipo de máquina utilizado.
Máquinas Moore.
Máquinas Mealy.
Se conectan flip-flops tipo D en las entradas y en las salidas de una FPGA, del modo que se indica en la figura a continuación:
Para el cálculo de tiempos, el entorno de diseño nos ofrece los siguientes datos:
- Data Delay máximos salidas FPGA: 15ns
- tsu(ffd): 3ns
- Max.Frec(FPGA): 50MHz
- Latencia(FPGA): 2ns
Si sólo consideramos la parte del diseño que hemos llamado B(FPGA y flip-flop de salida) y suponemos el reloj que llega simultáneamente a los pines de reloj de flip-flops y FPGA, ¿Cuál es la frecuencia máxima de funcionamento?
50 MHz
55 MHz
40 MHz
Se conectan flip-flops tipo D en las entradas y en las salidas de una FPGA, del modo que se indica en la figura a continuación:
Para el cálculo de tiempos, el entorno de diseño nos ofrece los siguientes datos:
Data Delay máximos salidas FPGA: 15 ns
tsu(ffd): 3 ns
Max.Frec(FPGA): 50 MHz
Latencia (FPGA): 2 ns
Si introducimos en el punto marcado como 1 una puerta NOT cuyo retardo de propagación (tcomb) es de 2 ns, Si sólo consideramos la parte del diseño que hemos llamado B (FPGA y flip-flop de salida) y suponemos el reloj que llega simultáneamente a los pines de reloj de flip-flops y FPGA, ¿Cuál es la frecuencia máxima de funcionamiento?
45 MHz
55 MHz
50 MHz
Indicad cual de las siguientes afirmaciones es FALSA
Cuando aplicamos el método randomize podemos añadir constraints
Cuando aplicamos el método randomize podemos eliminar constraints
Cuando aplicamos el método randomize podemos indicar que variables queremos aleatorizar y cuales no
Indicar cual será el valor final del reg C :
1'b0
1'bX
1'b1
Indicar cual será el valor final del reg C:
1'bX
1'b0
1'b1
Cual de los siguientes esquemas representados en cada respuesta nos sirve como sincronizador de reset asíncrono.
Indicad cual de las siguientes aserciones NO serviría para comprobar el funcionamiento de un contador updown descrito en las siguientes líneas:
Dadas las siguientes implementaciones de un sumador de tres operandos de 8 bits, indicad cual de las siguientes afirmaciones es CIERTA.
La opcion A tiene un rendimiento de 1muestra / 2 ciclos y una latencia de 2 ciclos
La opcion B tiene un rendimiento de 1muestra / 2 ciclos y una latencia de 3 ciclos
La opcion A tiene un rendimiento de 1muestra / 1 ciclo y una latencia de 2 ciclos
La opcion B tiene un rendimiento de 1muestra / 1 ciclo y una latencia de 2 ciclos
La opcion A tiene un rendimiento de 1muestra / 1 ciclo y una latencia de 2 ciclos
La opcion B tiene un rendimiento de 1muestra / 1 ciclos y una latencia de 3 ciclos
Dadas las siguientes implementaciones de un sumador de tres operandos de 8 bits, indicad cual de las siguientes afirmaciones es CIERTA .
La opción A tiene un rendimiento de 1 muestra / 2 ciclos y una latencia de 2 ciclos
La opción B tiene un rendimiento de 1 muestra / 2 ciclos y una latencia de 3 ciclos
La opción A tiene un rendimiento de 1 muestra / 1 ciclo y una latencia de 2 ciclos
La opción B tiene un rendimiento de 1 muestra / 1 ciclo y una latencia de 2 ciclos
La opción A tiene un rendimiento de 1 muestra / 1 ciclo y una latencia de 2 ciclos
La opción B tiene un rendimiento de 1 muestra / 1 ciclo y una latencia de 3 ciclos
Indicad cual de las siguientes afirmaciones es FALSA
Se puede indicar para un "coverpoint" o para un "cross" qué "bins" deben de ser tenidos en cuenta, cuales ignorar y cuales determinar como ilegales
Los "bins" solo pueden expresar valores monociclo del "coverpoint" y no transiciones de valores del "coverpoint"
El número máximo de "bins" automáticamente creados para un "coverpoint" es de 1024
Indicad cual de las siguientes afirmaciones es FALSA
Las aserciones concurrentes pueden ser sin habilitación o con habilitación
Las aserciones sin habilitación pueden ser monociclo o multiciclo
Las aserciones sin habilitación deben ser monociclo
Dada la siguiente aserción
assert property (@(negedge clk) a==2 ##1 a==4);
y suponiendo que los valores muestreados de "a" en los sucesivos ciclos "c" (en el flanco de bajada) son (la imagen).
Indicad en qué ciclo o ciclos se produce el fallo de la aserción
En los ciclos 1 , 2 y 4
En los ciclo 3
En los ciclos 1,3 y 4
Utilizando las reglas del correcto diseño síncrono, queremos realizar un sistema en el que el flip-flop A funciona en flanco de subida y el flip-flop B en flanco de bajada. La mejor práctica es
Atacar directamente al flip-flop A con el reloj del sistema, introducir un inversor y, con la señal del reloj invertida, atacar al flip-flop B.
Esa práctica no está permitida en diseño síncrono.
Usar los Enables de los flip-flops correctamente.
En un path registro a registro con skew de reloj nulo...
El margen de activación es igual al de retención
El margen de retención es siempre positivo
El margen de retención dependerá del período de reloj
El análisis de temporización estático...
Requiere de un testbench con estímulos de entrada adecuados
Puede dar como resultado una frecuencia de operación máxima inferior a la real
Es una estimación para señales de entrada que no varían con el tiempo
Suponiendo que en el siguiente esquema PCB, el reloj llega a ambos dispositivos simultáneamente (de pines para fuera) y que los tiempos de hold internos son cero en ambos dispositivos. ¿En cuál de los siguientes casos puede existir problemas de Margen de Retención suponiendo coincidencia de los peores casos?
Habrá problemas en los path de las señales de control que van desde la FPGA1 a la FPGA2
Habrá problemas en ambos path de interconexión
Habrá problemas en los path de las señales de estado que van desde la FPGA2 a la FPGA1
Suponiendo que en el siguiente esquema de PCB, el reloj llega a ambos dispositivos simultáneamente (de pines para fuera) y que los tiempos de setup internos son cero en ambos dispositivos. En cual de los siguientes casos puede existir problemas de Margen de Activación suponiendo coincidencia de los peores casos y que el reloj de la placa trabaja a 20 MHz:
Data delay máximos de los pines(FPGA1)=15 ns, latencia (FPGA1)=25 ns,
Data delay máximos de los pines(FPGA2)=15 ns, latencia (FPGA2)=50 ns.
Habrá problemas en los path de las señales de control que van desde la FPGA1 a la FPGA2
Habrá problemas en los path de las señales de estado que van desde la FPGA2 a la FPGA1
Habrá problemas en ambos path de interconexión
Suponiendo problemas de retención en el path que interconecta la CPLD (origen del path) con la FPGA (destino del path) y trabajando toda la placa a la frecuencia de reloj del sistema (CLKSYSTEM), indicar cuál de las siguientes alternativas es una posible solución.
Desfasar el reloj interno de la CPLD para adelantarlo respecto al reloj interno de la FPGA.
Reducir la frecuencia de reloj del sistema.
Desfasar el reloj interno de la CPLD para atrasarlo respecto al reloj interno de la FPGA.
Dado el siguiente código, indicad el valor mostrado por el "system task" $display.
0
1
2
Realizando el diseño de una placa PCB en el que existe un dispositivo programable de tipo Cyclone II, se verifican problemas de margen de retención en los path procedentes del dispositivo programable que van hacia el exterior. Nuestro jefe nos sugiere utilizar las PLL internas de la Cyclone para eliminar completamente la latencia del dispositivo programable, a lo cual debemos contestar:
Si eliminamos la latencia, aumentaremos ese problema
Si eliminamos la latencia, nos quedaremos igual.
Si eliminamos la latencia, disminuiremos ese problema
Realizando el diseño de una placa PCB en el que existe un dispositivo programable de tipo Cyclone II, se verifican problemas de margen de activación en los path procedentes del dispositivo programable que van hacia el exterior. Nuestro jefe nos sugiere utilizar las PLL internas de la Cyclone para eliminar completamente la latencia del dispositivo programable, a lo cual debemos contestar:
Si eliminamos la latencia, nos quedaremos igual.
Si eliminamos la latencia, disminuiremos ese problema
Si eliminamos la latencia, aumentaremos ese problema
Realizando el diseño de una placa PCB en el que existe un dispositivo programable de tipo Cyclone II, se verifican problemas de margen de activación en los path procedentes del exterior que van hacia el dispositivo programable. Nuestro jefe nos sugiere utilizar las PLL internas de la Cyclone para eliminar completamente la latencia del dispositivo programable, a lo cual debemos contestar:
Si eliminamos la latencia, nos quedaremos igual
Si eliminamos la latencia, aumentaremos el problema
Si eliminamos la latencia, disminuiremos el problema
Realizando el diseño de una placa PCB en el que existe un dispositivo programable de tipo Cyclone II, se verifican problemas de margen de retención en los path procedentes del exterior que van hacia el dispositivo programable. Nuestro jefe nos sugiere utilizar las PLL internas de la Cyclone para eliminar completamente la latencia del dispositivo programable, a lo cual debemos contestar:
Si eliminamos la latencia, nos quedaremos igual.
Si eliminamos la latencia, disminuiremos ese problema
Si eliminamos la latencia, aumentaremos ese problema
Dado el siguiente circuito sincronizador, se pretende aumentar el tiempo medio entre fallos del mismo, ¿cuál de las siguientes medidas de diseño no implicaría directamente conseguir dicho objetivo?
Elegir uh flip-flop 1 con menor tiempo de hold (th).
Disminuir la frecuencia de reloj del sincronizador.
Elegir un flip-flop1 con menor tiempo de set-up (tsu).
En relación al árbol de reloj de un diseño, podemos afirmar que:
Es una estructura destinada a generar relojes que son múltiplos o submúltiplos de la frecuencia del reloj de entrada en las ramas de salida.
Es una estructura destinada a distribuir la señal de reloj con el menor desfase posible entre sus ramas.
Es una estructura destinada a distribuir la señal de reloj con la menor variación posible de la frecuencia entre sus ramas.
Un tiempo de latencia positivo y grande cuando la FPGA es el destino
Reduce el Margen de Retención
Aumenta el Margen de Retención
No influye sobre el Margen de Retención
Un tiempo de latencia positivo y grande cuando la FPGA es el destino
Reduce el Margen de Activación
Aumenta el Margen de Activación
No influye sobre el Margen de Activación
Indicad cual de las siguientes afirmaciones es FALSA
Los tipos de aserciones son inmediatas y concurrentes
Las aserciones inmediatas pueden ser monociclos y multiciclos
Las aserciones concurrentes pueden ser monociclos y multiciclos
Indicad cual de las siguientes afirmaciones es FALSA con respecto a la siguiente aserción:
assert property (@(negedge clk) req |=> grant)
En cualquier ciclo si req==1'b0 la aserción es abortada
En cualquier ciclo si req==1'b1 la aserción falla si grant==1'b0 en el siguiente ciclo
En cualquier ciclo si req==1'b1 la aserción falla si grant==1'b1 en el siguiente ciclo
El skew de reloj...
Debe ser nulo en un diseño síncrono.
Puede ser compensando tanto dentro como fuera de la FPGA.
Puede utilizarse para mejorar los márgenes de setup y hold simultáneamente.
En un circuito combinacional con entradas y salidas registradas, la latencia es:
Algo mayor que un período de reloj.
No tiene sentido hablar de latencia sino de rendimiento.
Algo menor que un período de reloj.
La introducción de una etapa de registros que separe los multiplicadores del sumador en el circuito de la Figura nos permitiría obtener:
Menor período mínimo de reloj
Mayor rendimiento
Mayor rendimiento y menor latencia
En un diseño segmentado (pipeline), podemos afirmar que la latencia medida en ciclos de reloj...
Es siempre menor al número de etapas de segmentación
Es la menor posible, siendo por tanto de un único de ciclo de reloj
Es siempre igual o mayor al número de etapas de segmentación
A la vista del esquema anterior, cuál sería el máximo skew de reloj entre CLK2 y CLK1 que garantizaría un margen de setup de 3 ns, teniendo en cuenta que tco-FF = 5 – 7 ns, tG = 3 – 5 ns, tsu-FF = 4ns y la frecuencia de reloj es de 40 MHz
10 ns
6 ns
Ninguna de las otras respuestas es correcta
Dado el siguiente sincronizador se pretende aumentar el tiempo medio entre fallos del mismo, ¿cuál de las siguientes medidas de diseño implicaría directamente el conseguir dicho objetivo?
Elegir un flip-flop 0 con mayor tiempo de propagación (tffpd).
Aumentar la frecuencia de reloj del sincronizador.
Elegir un flip-flop 1 con menor tiempo de set-up (tsu)
Dado el siguiente ASM para la realización de la multiplicación de 2 operandos de 4 bits mediante el algoritmo de both, indicad cual de las siguientes afirmaciones el CIERTA.
La solución tiene un rendimiento de 1 muestra/ 9 ciclos y una latencia de 9 ciclos
La solución tiene un rendimiento de 1 muestra/ 8 ciclos y una latencia de 8 ciclos
La solución tiene un rendimiento de 1 muestra/ 1 ciclo y una latencia de 8 ciclos
¿Cuáles de los siguientes circuitos no son recomendables para un correcto diseño lógico síncrono?
A y B
B y C
A y C
El consumo de potencia de un diseño puede reducirse:
Utilizando buffers de entrada/salida que tengan unos tiempos de subida y bajada más rápidos para hacer que el tiempo de conmutación sea menor.
Aumentando la tensión de alimentación de la FPGA dentro de los márgenes de funcionamiento.
Aumentando el período de la señal de reloj.
En una implementación segmentada sin dependencias entre etapas, la latencia en ciclos de reloj...
Es mayor que la profundidad de la segmentación
Es igual que la profundidad de la segmentación
Es menor que la profundidad de la segmentación
Una de las tareas que NO es competencia propia de la Unidad de Datos es:
Definir cuándo empiezan y terminan las operaciones aritméticas.
Sumar datos.
Almacenar datos para ser procesados en instantes posteriores.
Dado el diagrama ASM de la figura, ¿Qué características debe presentar el contador?
ascendente con reset síncrono y enable.
ascendente / descendente con reset síncrono y enable
ascendente con reset asíncrono y enable
Dado el siguiente diagrama ASM de especificación de un diseño “contador de unos de datos de 8 bits” indicar cual de las siguientes CONTROL PATH y DATA-PATH responden a las necesidades de este circuito.
Un control de tipo Moore de 6 estados y un datapath que incluye un contador con los modos síncronos: incrementar, resetear y mantener; un registro de desplazamiento con los modos síncronos: carga paralelo, desplazar, mantener; un registro con los modos síncronos: carga paralelo y mantener.
Un control de tipo Mealy de 6 estados y un datapath que incluye un contador con los modos síncronos: incrementar, resetear y mantener; un registro de desplazamiento con los modos síncronos: carga paralelo, desplazar, mantener y reset; un registro con los modos síncronos: carga paralelo y mantener.
Un control de tipo Moore de 6 estados y un datapath que incluye un contador con los modos síncronos: incrementar, resetear y mantener; un registro de desplazamiento con los modos síncronos: desplazar, mantener y reset; un registro con los modos síncronos: carga paralelo y mantener.
Cuantos Flip-Flops se obtienen después del proceso de síntesis de la siguiente descripción en Verilog HDL :
9
6
2
Dado el siguiente diagrama de ASM de especificación de un diseño, indicar cual de las siguientes CONTROL-PATH y DATA-PATH responden a las necesidades de este circuito:
Un control de tipo Mealy de 6 estados y un datapath que incluye un contador con reset asíncrono, dos registros de desplazamiento con carga paralelo (uno de los cuales debe tener reset), un sumador y un restador, (podría ser un sumador-restador) al no coincidir en el mismo estado), y un multiplicador.
Un control de tipo Mealy de 6 estados y un datapath que incluye un contador con reset síncrono, un registro de desplazamiento con carga paralelo y reset síncrono, un registro de desplazamiento con carga paralelo, un registro con carga paralelo, un sumador y un restador (podría ser un sumador restador).
Un control de tipo Moore de 6 estados con un contador, tres registros de desplazamiento con carga paralelo, un sumador, un restador y un multiplicador.
Dado el diagrama ASM de la figura, ¿Qué características debe presentar el registro de desplazamiento?
bidireccional con reset síncrono y Terminal de enable
bidireccional con carga paralelo síncrona y Terminal de enable
unidireccional con carga paralelo asíncrona y Terminal de enable
Dado el siguiente diagrama ASM de especificación de un diseño, indicar cual de las siguientes CONTROL PATH y DATA-PATH responden a las necesidades de este circuito.
Un control de tipo Mealy de 6 estados y un datapath que incluye un contador con reset asíncrono, un registro de desplazamiento con carga paralelo y reset asíncrono, un registro de desplazamiento con carga paralelo, un registro con carga paralelo, un sumador y un restador (podría ser un sumador restador)
Un control de tipo Mealy de 6 estados y un datapath que incluye un contador con reset síncrono, un registro de desplazamiento con carga paralelo y reset síncrono, un registro de desplazamiento con carga paralelo, un registro con carga paralelo, un sumador y un restador (podría ser un sumador restador)
Un control de tipo Mealy de 6 estados y un datapath que incluye un contador con reset síncrono, un registro de desplazamiento con carga paralelo y reset síncrono, un registro de desplazamiento con carga paralelo, un registro con carga paralelo, un sumador y un restador (podría ser un sumador restador) y un multiplicador
Queremos realizar una máquina que multiplique dos números de 8 bits por el método de suma y desplazamiento. En un paso determinado del algoritmo es necesario sumar dos registros, A y B. La sentencia: C <= A + B;Tiene que aparecer, de forma correcta:
En la máquina de Estados.
En el Control path.
En el Data path.
Suponiendo detectados y resueltos todos los bucles combinacionales cuando hemos diseñado el data-path y el control-path. ¿Qué tipos de máquinas de estados en la implementación del control-path permitirían la aparición de nuevos bucles (feedback) combinacionales cuando realizamos la unión del control-path y data-path en un nivel jerárquico superior?
Máquinas Moore
Máquinas Mealy
Máquinas con salidas registradas
En su data-path aparece un contador con reset asíncrono y carga paralela síncrona. Para inicializar el sistema, y siempre desde la perspectiva del correcto diseño síncrono, el control-path debería activar:
El terminal de carga paralela y del dato paralelo a la entrada.
El terminal de Reset.
Puede utilizar ambos indistintamente.
La regla de Oro del diseño síncrono establece que todos los flip-flops del circuito deben estar sincronizados por el mismo reloj y que
Las entradas asíncronas no deben usarse excepto para la inicialización del sistema.
Las entradas asíncronas no deben usarse.
Las entradas síncronas no deben usarse excepto para la inicialización del sistema.
¿Qué unidad funcional definitivamente no debería aparecer en el Control-Path?
Contador.
Máquina de Estados.
Multiplicador Aritmético.
Dado el diagrama ASM de la figura, ¿Qué señal debe activar el control path en el estado ADD?
El enable del registro de desplazamiento.
El enable del sumador.
El enable del registro del acumulador.
¿Cuál de estas arquitecturas representa el hardware descrito por el codigo SystemVerilog mostrado?
Arquitectura de respuesta A
Arquitectura de respuesta B
Arquitectura de respuesta C
¿Cuáles de las siguientes descripciones provoca la inferencia de latches al sintetizar?
DESCRIPCIÓN A
DESCRIPCIÓN B
DESCRIPCIÓN C
Indicad cual de las siguientes aserciones NO serviría para comprobar el funcionamiento de un contador updown descrito en las siguientes líneas:
prueba2: assert property (@(posedge clk) disable iff (areset_n!=1'b1) load==1'b0&&incr==1'b1&&up_down==1'b1&&sreset_n==1'b1|=>salida==$past(salida)+1'b1) else $error("el contador va mal2");
sequence s1;
logic [n-1:0] aux;
(1, aux=salida) ##1 (salida==aux+1'b1);
endsequence
prueba1: assert property (@(posedge clk) disable iff (areset_n!=1'b1) load==1'b0&&incr==1'b1&&up_down==1'b1&&sreset_n==1'b1|->s1) else $error("el contador va mal");
prueba3: assert property (@(posedge clk) disable iff (areset_n!=1'b1) load==1'b0&&incr==1'b1&&up_down==1'b1&&sreset_n==1'b1|->salida==$past(salida)+1'b1) else $error("el contador va mal3");
Dado el siguiente código, indicad el valor mostrado por el "system task" $display,.
0
3
2
Indicad cual de los siguientes códigos de aserción sería el correcto:
Código A
Código B
Código C
Dado el código del siguiente registro de desplazamiento entrada serie -salida serie en el que se pueden distinguir dos modos de funcionamiento síncrono seleccionables por la señal de "enable": desplazar y mantener
Indicad que código de aserción NO utilizaríais para chequear el correcto funcionamiento del registro de desplazamiento
Suponiendo que en el siguiente esquema de PCB, el reloj llega a ambos dispositivos simultáneamente (de pines para fuera) y que los tiempos de hold internos son cero en ambos dispositivos. ¿En cuál de los siguientes casos puede existir problemas de Margen de Retención suponiendo coincidencia de los peores casos?
Habrá problemas en ambos path de interconexión
Habrá problemas en los path de las señales de control que van desde la FPGA1 a la FPGA2
Habrá problemas en los path de las señales de estado que van desde la FPGA2 a la FPGA1
Dada la siguiente descripción verilog/systemverilog , indicad cual de las siguientes afirmaciones es cierta.
Si escribimos y leemos de la misma dirección: Aparecería por el puerto de salida el antiguo dato guardado en esa dirección y se escribiría en esa dirección el nuevo dato del puerto de entrada.
Si escribimos y leemos de la misma dirección: se escribiría en esa dirección el nuevo dato del puerto de entrada y aparecería por el puerto de salida ese nuevo dato guardado en esa dirección .
Si escribimos y leemos de la misma dirección: se escribiría en esa dirección el nuevo dato del puerto de entrada y aparecería por el puerto de salida un valor desconocido.
Indicad cual de las siguientes aserciones serviría para comprobar el funcionamiento de un contador síncrono de 8 bits que dispone de una señal denominada "incr" activa a nivel alto que habilita el incremento del contador y una señal de reset asincrono activa a nivel bajo denominada "reset_n"
Se conectan flip-flops tipo D en las entradas y en las salidas de una FPGA, del modo que se indica en la figura a continuación:
Si sólo consideramos la parte del diseño que hemos llamado A (Flip-Flop de entrada y FPGA) y suponemos el reloj que llega simultáneamente a los pines de reloj de flip-flops y FPGA, ¿Cuál es la frecuencia máxima de funcionamiento?
44 MHz
40 MHz
50 MHz
¿Cuál de estas arquitecturas representa el hardware descrito por el código SystemVerilog mostrado?
Arquitectura de respuesta A
Arquitectura de respuesta B
Arquitectura de respuesta C
¿Cuál de las siguientes reglas de jerarquía es falsa?
Un puerto inout de un módulo debe ser tipo net dentro del módulo y fuera del módulo
Un puerto de entrada de un módulo puede ser de tipo logic dentro del módulo
Un puerto de entrada de un módulo debe ser de tipo reg fuera del módulo
Dada la siguiente descripción SystemVerilog indicar cuantos flip-flops se sintetizarán cuando dicha descripción sea compilada.
3 flip-flops
4 flip-flops
5 flip-flops
¿Cual es la probabilidad de tener que a=200 cuando aplicamos la aleatorización con randomize?
La probabilidad es de 1/3
La probabilidad es de 2
La probabilidad es de 1/2
Cuantos Flip-Flops se obtienen después del proceso de síntesis de la siguiente descripción en Verilog HDL
3
9
6
Dada la siguiente descripción SystemVerilog indicar cuantos flip-flops se sintetizarán cuando dicha descripción sea compilada.
8 flip-fllops
32 flip-fllops
40 flip-fllops
Indicad cual de las siguientes aserciones NO serviría para comprobar el funcionamiento de un contador updown descrito en las siguientes líneas:
Estoy definiendo nuevos covergroups en mi banco de verificación y sin embargo no los visualizo en mi simulador a pesar de estar perfectamente definidos y tener la pestaña de covergroups abierta. ¿A qué puede ser debido?
Cuando he compilado con vlog; no he utilizado la opción -cover
Cuando he definido el covergroup me he olvidado de instanciar el mismo con el contructor new
Cuando he lanzado la simulación con vsim no he utilizado la opción -coverage
Dado el siguiente diagrama ASM de especificación de un diseño “contador de unos de datos de 8 bits” indicar cuál de las siguientes afirmaciones es FALSA.
Tenemos un control de tipo Mealy de 3 estados, y un datapath que incluye
un contador con los modos síncronos: incrementar, resetear y mantener
un registro de desplazamiento con los modos síncronos: carga paralelo, desplazar y mantener.
un registro con los modos síncronos: carga paralelo y mantener
Una especificación ASM de este tipo, si bien proponemos mayoritariamente una implementación independiente del control-path y del data-path, podríamos implementar todo el ASM en un solo fichero que contuviera prácticamente dos always , uno secuencial y otro combinacional.
Las señales de control que van desde el control-path hacia el data-path pueden registrarse sin problemas, sin provocar problemas de funcionamiento del algoritmo expresado por ASM.
Dadas las siguientes descripciones de un codificador, indicad cual de las siguientes afirmaciones es CIERTA:
La descripción A es un codificador con prioridad y la B un codificador sin prioridad
La descripción A es un codificador sin prioridad y la B un codificador con prioridad
La descripción A no compila correctamente porque el circuito descrito no es un circuito combinacional puro (genera latches) y por tanto always_comb impide su compilación
