Guía de clases de teórico en OpenFing
Guía de clases de teórico en OpenFing
En esta página se presenta un pequeño resumen de lo que contiene cada clase de OpenFing resaltando los temas abordados y los conceptos claves que deberían obtener de cada clase. También se presentan links a los distintos temas dentro de una misma clase. Luego de cada clase hay disponible un cuestionario de autoevaluación para que el estudiante determine si obtuvo los conocimientos necesarios de la clase.
Clase 1 - Presentación del curso e Introducción [1:15:58] - Ver completa
Presentación y formalidades del curso
- [00:00] - Presentación, horarios, metodología del curso, ganancia del curso.
- Estructura del curso 2015. Esto puede cambiar dependiendo del año (ver acá sllides de presentación 2020).
- EVA es el mecanismo oficial de comunicación.
Introducción a los sistemas digitales
- [20:15] - Sistemas Digitales vs Sistemas analógicos.
- ¿Qué es un sistema digital?
- ¿Qué diferencia tiene con un sistema analógico?
- ¿Qué ventaja tiene un sistema digital frente a uno analógico?
- [36:44] - Propagación de errores en los sistemas analógicos y digitales.
- ¿Qué sucede con los errores de sistemas en cascada para un sistema analógico en comparación con los de un sistema digital?
- ¿Qué es un nivel lógico?
- ¿Qué es el margen de ruido?
Representación de la información en forma digital
- [1:00:57] - Definición de escalares, vectores, señal, celdas y registros
- ¿Qué es un bit?
- ¿Cuántos símbolos se pueden representar con un vector de 4 bits?
- ¿Qué es el ancho de palabra en una memoria o procesador?
Link a autoevaluación de la clase - Autoevaluación 1
Clase 2 - Representación de la Información en Formato Digital (parte 1) [1:21:39] Ver completa
Representación de la información: Información no numérica
- [00:00] - Codificación lógica y simbólica, código ASCII.
- ¿Cómo podemos representar verdadero y falso en el mundo digital?
- ¿Qué es el código ASCII?
Sistema de numeración
- [10:00] - Definición de representación numérica. Sistema binario, sistema hexadecimal, pasaje de un sistema de una base a otra.
- ¿La representación finita de un número en una base determinada implica la representación fintita en cualquier otra base?
- ¿Cuántos símbolos se necesitan para representar la información en binario? ¿y en hexadecimal?
- [0:27:10]- Representación binaria parte entera, parte fraccionaria.
- ¿El número "0,1" se puede representar de forma exacta en representación parte entera parte fraccionaria?
- ¿Cuál es el error en la conversión?
Aritmética en binario
- [59:00]- Suma, resta, multiplicación y división de números binarios
- ¿Cuál es el resultado de la suma binaria 1 + 1 ?
- ¿Qué es el acarreo?
- ¿Con qué dos bloques se podría realizar una multiplicación en binario?
Representación de la información: Representación numérica
- [53:10] - Magnitud y signo
- ¿Qué desventajas tiene utilizar la representación magnitud y signo?
- ¿Qué representa el bit más significativo (MSB) en la representación magnitud y signo?
- ¿Qué rango de números enteros se puede representar con 8 bits utilizando magnitud y signo?
- [1:17:30] - Complemento a 2: Introducción
- ¿Por qué la representación en complemento a 2 es asimétrica?
Link a autoevaluación de la clase - Autoevaluación 2
Clase 3 - Representación de la Información en Formato Digital (parte2) [1:20:33] - Ver completa
Complemento a 2
- [00:00] - Complemento a 2 y aritmética modular
- ¿Qué determina el signo del número en complemento a 2?
- ¿Cómo sumo dos números en complemento a 2?
- [20:50] - Overflow: rebase aritmético en código complemento a 2.
- ¿Cómo determino si hay Overflow en complemento a 2?
- ¿Qué es el acarreo entrante/saliente?
- ¿Qué función lógica me permite determinar si hubo Overflow en complemento a 2?
- [38:00] - Extensión de signo.
- ¿Cómo extiendo el módulo de mi arimética en complemento a 2?
Representación de Numeros Racionales
- [52:23] - Punto Fijo, Punto Flotante.
- ¿De qué formas puedo representar un número racional?
- ¿Cuáles son las ventajas/desventajas de usar punto fijo o punto flotante?
- ¿Cómo se convierte un número decimal a punto flotante o punto fijo?
Link a autoevaluación de la clase - Autoevaluación 3
Clase 4 - Representación de la Información en Formato Digital (parte 3) [1:22:53] Ver completa
Continuación punto flotante
- [00:00] - Extensiones en la representación de punto flotante
- ¿Todos los valores posibles en punto flotante se asocian a un número?
Códigos binarios de números decimales
- [05:35] - Códigos binarios de números decimales: BCD / 2421 / Exceso 3 / 1 de 10.
- ¿Qué ventajas ofrece utilizar BCD?
- ¿Qué número decimal representa 01110110 en BCD empaquetado?
- ¿Qué precauciones hay que tomar al sumar dos números en BCD?
Código Gray
- [23:36] - Código Gray
- ¿Qué ventajas introduce la codificación Gray?
Códigos para detección y corrección de errores
- [36:30] - Definición de código
- ¿Qué es un código? ¿Qué son las palabras válidas de un código?
- ¿Cuántas palabras válidas tiene el código BCD, y cuántas no válidas?
- [51:46] - Detección de errores: Bit de paridad
- ¿Qué tipos de errores detecta?
- ¿Cuántos bits adicionales se agregan?
- [56:10] - Redundancia de un código - Distancia entre palabras - Distancia de un código
- ¿Qué es la distancia de un código?
- El siguiente código: ¿Qué distancia tiene? ¿Permite corregir errores simples?
- 00001
- 00100
- 10000
- [1:12:40] - Código de Hamming : Introducción
- ¿Qué es el código Hamming?
Link a autoevaluación de la clase - Autoevaluación 4
Clase 5 - Código de Hamming y Funciones Lógicas [1:24:36] Ver completa
Continuación Código de Hamming
- [00:00] - Definición de Código Hamming
- ¿Qué es el código de Hamming?
- ¿Qué distancia tiene?
- ¿Qué tipo de errores puede corregir?
- ¿Cómo determina la posición del error?
- [05:55] - Ejemplo Largo 7 bits
- ¿Cuántos bits necesito para identificar la posición de un error en 7 bits?
- Entonces ¿cuántos bits de datos puedo enviar de los 7 totales?
- ¿Cómo se codifican los bits de detección?
Lógica Combinatoria
- [41:15] - Sistemas Combinatorios
- ¿Qué signfica que un sistema tenga o no memoria?
- ¿Qué es una función lógica?
- ¿Cómo hacer una tabla de verdad para una función lógica?
- Funciones NOT, AND/NAND, OR/NOR, EXOR/EXNOR
- [1:04:40] - Ejemplo: Función de 2 Variables (EXOR)
- Orden de evaluación de Operaciones en una función
- [1:15:00] - Representación de Funciones Lógicas
- Término Producto
- Mini-término
- Expresión Suma de Productos: suma de términos producto
- Representación Canónica de una Función Lógica: suma de mini-términos
Link a autoevaluación de la clase - Autoevaluación 5
Clase 6 - Funciones Lógicas. Álgebra de Boole [1:23:48] Ver completa
Representación canónica de una función lógica
- [06:53] - Minitérminos - Maxitérminos - Representación canónica
- ¿Qué es un mini término? ¿ y un maxi término?
- ¿Para una función lógica de n variables cuántos mini términos y máxi términos hay?
- ¿Cómo se obtiene la representación canónica de una función lógica?
- ¿La siguiente función lógica está en su forma canónica? f(x1,x2,x3) = x1x2 + x2x3 ¿Por qué?
- ¿Qué compuertas lógicas se necesitan para crear cualquier función lógica?
Álgebra de Boole
- [34:30] - Álgebra de Boole: Axiomas
- ¿Cuáles son los 3 axiomas del álgebra de Boole?
- [41:40] - Álgebra de Boole: Teoremas y propiedades
- ¿Qué propiedades cumple el álgebra de Boole?
- ¿Qué resultado se obtiene al realizar a + a'? ¿Y a*a'?
- ¿Qué teoremas del álgebra de Boole utilizarías para demostrar A*(A'+B) = A*B ?
- [57:33] - Principio de dualidad
- ¿Qué es el principio de dualidad?
- ¿Cuál es el dual de (x+y)(w+z)?
Simplificación de funciones lógicas
- [59:24]- Ejemplo: Simplificación de función lógica
- ¿Por qué es conveniente simplificar funciones lógicas?
- ¿Se puede simplificar la siguiente función lógica? f(x,y,z) = x'y'z' + x'y'z + x'yz'+ x'yz + xyz
Teorema de DeMorgan
- [1:13:50]- Teorema de DeMorgan
- ¿Qué es el Teorema de DeMorgan?
- La siguiente igualdad (a'+ (bc)')' = abc ¿Se cumple?
- ¿Qué compuertas lógicas son necesarias para realizar cualquier operación lógica utilizando el Teorema de DeMorgan?
Link a autoevaluación de la clase - Autoevaluación 6
Clase 7 - Simplificación de Funciones Lógicas y Mapas de Karnaugh [1:24:02] Ver completa
Continuación de Funciones Lógicas
- [00:00] - Continuación de Simplificación de Funciones Lógicas
- ¿Qué es un valor don´t care en una Función Lógica?
- ¿Cómo puedo utilizar ese valor en mi simplificación de la función?
- [00:12:31] - Mínimo de una Funciones Lógicas
- ¿Qué es un criterio de mínimo o costo en una Función Lógica?
- Mínimo de una Función Lógica en 2 Niveles
Mapas de Karnaugh
- [00:19:51] - Mapas de Karnaugh: Método Gráfico de minimizar una Funciones Lógicas
- ¿Cómo hacer un Mapa de Karnaugh?
- ¿Cómo agrupar términos para simplificar una Función Lógica?
- ¿Cómo utilizo un don´t care en un Mapa de Karnaugh?
- [00:51:50] - Reglas de Agrupación en Mapas de Karnaugh
- [01:00:29] - Algoritmo de Agrupación en Mapas de Karnaugh
- Orden de agrupación de términos
- Expresión algrebraica de un envoltorio
- [01:14:56] - Ejemplo utilizando un Display de 7 Segmentos BCD
Link a autoevaluación de la clase - Autoevaluación 7
Clase 8 - Mapas K de 5 y 6 Variables. Implementación NAND-NAND. Azares. Dispositivos MSI: Deco, MUX, Tristate [1:25:29] Ver completa
Mapas de Karnaugh: Continuación
- [00:00] - Mapas K: 5 y 6 variables
- ¿Cómo se obtiene el mapa K para funciones de 5 y 6 variables?
- [11:47] - Minimización en producto de sumas
- ¿Qué diferencias hay entre la minimización en sumas de productos y la minimización en productos de suma?
Implementación NAND-NAND (NOR-NOR)
- [22:00] - Implementación NAND-NAND (NOR-NOR)
- Un circuito con compuertas AND en primer nivel y una compuerta OR en segundo nivel ¿se puede implementar solo con compuertas NAND?¿Cómo?
- ¿Para utilizar solo compuertas NOR, debo partir de una minimización en productos de suma o de una minimización en suma de productos?
- ¿Qué cuidado debo tener si tengo entradas conectadas directamente al segundo nivel?
Azares o riesgos
- [29:50] - Azares o riesgos
- ¿Qué es el retardo de una compuerta?
- ¿Qué son los azares? ¿Por qué ocurren?
- ¿Se pueden evitar?¿Cómo?
- Una vez corregido los azares, ¿la función queda minimizada?
Dispositivos MSI
- [58:25] - Decodificadores
- ¿Qué es y para qué sirve el decodificador?
- ¿Cuál es la tabla de verdad para un decodificador de 2 entradas?
- Si tengo un decodificador de 4 entradas, ¿cuántas salidas tendrá?
- [1:05:25] - Tristate
- ¿Para qué sirven las compuertas tristate?
- ¿Por qué no se pueden conectar directamente entre si las salidas de funciones lógicas?
- [1:10:26] - Multiplexores
- ¿Qué son y para qué sirven los multiplexores?
- ¿Qué indica el número binario que se coloca en la pata de control del multiplexor?
- Si tengo un multiplexor con 3 bits de control, ¿cuántas entradas tendrá? ¿y salidas?
- ¿Cómo puedo realizar funciones lógicas utilizando multiplexores?
Link a autoevaluación de la clase - Autoevaluación 8
Clase 9 - Dispositivos MSI(medium scale integration) [1:20:11] Ver completa
Codificadores, Comparadores, Sumadores y ALUs
- [00:00] - Continuación de Dispositivos MSI
- ¿Cómo se comparan dos números digitales?
- ¿Cómo sumar dos números digitales?
- ¿Qué es un Sumador Completo o Full Adder?
- ¿Por qué el Full Adder puede tener un retardo significativo?
- ¿Qué es una ALU?
Memorias ROM/PROM/EPROM/EEPROM
- [22:51] - Memorias ROM
- ¿Qué es una memoria ROM y dónde se utilizan?
- ¿Cuál es la desventaja de implementar una Función Lógica en una ROM?
- Mirá estas ROM que traje!
- [32:33] - Memorias PROM/EPROM/EEPROM
- ¿Qué son?
- [38:54] - Estructura interna de una ROM
- Ejemplo de Memoria de 8-bits
- Ejemplo de Memoria de 256-Bytes
Circuitos Integrados Programables
- [1:06:38] - FPGAs
- ¿Qué son? Un poco de historia
- Esquema del Cyclone III (chip del laboratorio)
Link a autoevaluación de la clase - Autoevaluación 9
Clase 10 - Introducción Circuitos Secuenciales. Flip-Flop SR. Reloj. Sincronización. Tipos de FF: D, JK, T [1:19:52] Ver completa
Circuitos Secuenciales
- [00:00] - Circuitos secuenciales
- ¿Cuál es la diferencia entre un circuito secuencial y un circuito combinatorio?
- ¿Qué debemos conocer en un sistema secuencial para determinar la salida?
- ¿Cómo es el diagrama general para la representación de los sistemas secuenciales?
Celdas de memoria: Flip-Flop
- [9:20] - Flip-Flop SR
- ¿Qué es un Flip-Flop?
- Utilizando compuertas NOR ¿cómo se puede diseñar un Flip-Flop?
- ¿Se puede determinar la salida conociendo solamente los valores de entrada?
- ¿Cómo puedo utilizar el Flip-Flop como celda de memoria?
- ¿Cómo es la tabla de verdad de un Flip-Flop SR? ¿En qué difiere dicha tabla con las tablas anteriormente realizadas en los circuitos combinatorios ?
- ¿Por qué el Flip-Flop SR puede ser utilizado como mecanismo para eliminar rebotes?
- [45:50] - Reloj
- ¿Qué es?
- ¿Para qué introducimos el reloj?¿Qué controla?
- ¿Cómo introducir la señal de reloj al Flip-Flop SR?¿Qué problemas presenta?
- [58:30] - Flip-Flop D
- ¿Qué ventaja tiene frente al Flip-Flop SR?
- ¿Cómo se puede implementar un Flip-Flop D a partir de un SR?
- ¿Cuál es la tabla de verdad del Flip-Flop D?
- [1:05:20] - Flip-Flop JK
- ¿Qué ventaja presenta frente al Flip-Flop SR?
- ¿Cómo se puede implementar un Flip-Flop JK a partir de un SR?
- ¿Cuál es la tabla de verdad del Flip-Flop JK?
- ¿Cómo funciona el Flip-Flop Toggle?
Link a autoevaluación de la clase - Autoevaluación 10
Clase 11 - Flip-Flop Maestro-Esclavo, Flip-Flops Sensibles al Flanco y Registros [1:19:50] Ver completa
Repaso clase pasada, Flip-Flop Maestro-Esclavo (Master-Slave) y Flip-Flop Activo por Flanco
- [00:00] - Repaso clase pasada
- [04:57] - Flip-Flop Master-Slave
- ¿Cuál es el problema de que la salida del Flip-Flop pueda cambiar siempre?
- ¿Qué es un Flip-Flop Master-Slave y cómo soluciona este problema?
- [27:20] - Flip-Flop Activo por Flaco
- ¿Qué es un Flip-Flop sensible al Flaco de Reloj vs uno sensible al Nivel de Reloj?
- Flip-Flop D sensible al Flanco de Reloj
- Tiempo de Setup y Tiempo de Hold
- Preset y Clear
Registros
- [51:01] - Registro en Base a Flip-Flops, Registro de desplazamiento(Shift-Register)
- ¿Cómo hacer un Registro en base a un Flip-Flop?
- ¿Qué es un Shift-Register?
- Convertir Datos de Serie a Paralelo con un Shift-Register
- [01:03:42] - Ejemplo de Circuito Secuencial
- ¿Cómo análizar un circuito con Flip-Flops y Lógica Combinatoria?
Link a autoevaluación de la clase - Autoevaluación 11
Clase 12 - Modo Reloj. Ejemplos de Análisis y Diseño con FF-D y FF-JK [1:24:33] Ver completa
Modo Reloj: Análisis de circuito secuencial modo reloj
- [00:00] - Continuación del ejemplo de la clase anterior
- ¿Cómo realizar la tabla de transición a partir de un circuito?¿Qué información nos brinda?
- ¿Cómo realizar la tabla de estados?¿Qué diferencia hay entre la tabla de transiciones y la tabla de estados?
- ¿Qué es el diagrama de estados? ¿Qué información nos brinda?
- ¿Qué es el diagrama de tiempo?¿Cómo realizarlo a partir de la tabla de estados o diagrama de estados?
Modo Reloj: Diseño de circuitos secuenciales modo reloj
- [31:50] - Ejemplo: detector de 3 o más unos
- ¿Qué pasos debo seguir para diseñar un circuito secuencial modo reloj a partir de una especificación?
- ¿Qué significa que la entrada esté sincronizada con el reloj?
- ¿Qué debo realizar con los estados q0,q1,q2,q3 al pasar del diagrama de estado/tabla de estados a la tabla de transiciones?
- ¿Cómo obtengo la cantidad de Flip-Flop a utilizar en el circuito a diseñar?
- Si tengo 5 estados, ¿cuántos Flip-Flop debo utilizar?¿Y si tengo 8?
- ¿Cuáles son las entradas y salidas del bloque combinatorio a diseñar?
- ¿Cuántos mapas K debo resolver si tengo solamente una salida y 3 Flip-Flop tipo D?
- ¿Qué diferencia hay entre utilizar Flip-Flop D o Flip-Flop JK al momento de diseñar el circuito?
Link a autoevaluación de la clase - Autoevaluación 12
Clase 13 - Modo Reloj. Procedimiento de Diseño y Minimización de Estados [1:25:17] Ver completa
Modo Reloj: Procedimiento de Diseño
Modo Reloj: Minimización de Estados
- [20:57] - Minimización de Estados
- Definición de Estados Equivalentes
- Ejemplo de Minimización de Estados por Método de Huffman-Mealy
- ¿Cómo se visualiza la Minimización en el Diagrama de Estados?
- [55:14] - Método de la Tabla de Implicación
- Mismo Ejemplo para éste método
- [1:10:51] - Ejemplo de Circuito Secuencial con "don't cares"
- Los estados con "don't care" pueden ser compatibles a otros estados
- ¿Cómo usar los "don't care" en la minimización de estados?
Link a autoevaluación de la clase - Autoevaluación 13
Clase 14 - Minimización de Estados en Circuitos Incompletamente Especificados [1:12:35] Ver completa
Repaso: Circuitos secuenciales - FF - Modo reloj - Minimización
- [00:00] - Repaso
Minimización de estados en circuitos secuenciales incompletamente especificados
- [14:20] - Primer Ejemplo: Minimización de estados en circuitos secuenciales incompletamente especificados
- ¿ Cómo minimizar cuando aparecen don't care en la tabla de estados?
- ¿ Qué significa que dos estados son compatibles? ¿Por qué no puedo hablar de estados equivalentes cuando hay don't care?
- ¿ Cómo realizar el grafo de compatibilidad luego de resolver la tabla de implicación?
- ¿ Qué representa cada nodo y arista del grafo de compatibilidad?
- ¿ Observando el grafo de compatibilidad, qué debe cumplir la zona a encerrar del grafo para minimizar estados?
- [45:50] - Segundo Ejemplo: Minimización de estados en circuitos secuenciales incompletamente especificados
- Si tengo las siguientes clases compatibles (a,c) (b,c) y (a,b) ¿Por qué puedo agruparlas en una única clase (a,b,c) ?
Link a autoevaluación de la clase - Autoevaluación 14
Clase 15 - Contadores y Lenguaje de Especificación Hardware (RTL) [1:22:51] Ver completa
Contadores
- [00:00] - Contadores síncronos
- ¿Qué es un contador síncrono?¿Qué cuenta?
- Diagrama de estados del contador síncrono
- Ejemplo contador binario módulo 5 (con autoarranque)
- [20:22] - Contador de anillo (también síncrono)
- Un contador basado en shift register
- Ejemplo contador de anillo módulo 3
- Ejemplo contador de anillo modificado módulo 6
- [31:20] - Contadores asíncronos
- Contador de ripple, basado en Flip-Flop J-K
Lenguajes de Especificación Hardware
- [43:11] - Lenguajes de Especificación Hardware:RTL
- ¿Qué es?¿qué diferencia tiene con los lenguajes como C, Pascal, etc?
- Ejemplo: Comparador de números binarios
Link a autoevaluación de la clase - Autoevaluación 15
Clase 16 - RTL: Definición del Lenguaje [1:22:43] Ver completa
Lenguaje RTL
- [00:00] - Transferencia a un registro
- ¿En qué se diferencian los registros escalares y registros vectoriales?
- ¿Cómo definimos en lenguaje RTL un registro?
- ¿Cómo se representa la transferencia de un registro A a un registro B?
- ¿Cómo se representa en hardware la siguiente instrucción: A <--- B?
- ¿Cómo indico la transferencia de un registro no ordenado? Si A[4], B[8] ¿A <-- B se puede implementar?
- [06:30] - Flip-Flop: ENABLE
- ¿Qué es la entrada ENABLE de un Flip-Flop? ¿Por qué es conveniente usar estos Flip-Flop?
- ¿Qué dos condiciones se tienen que cumplir para que se produzca una transferencia?
- [21:35] - Operaciones con registros
- ¿Qué significa la instrucción C <-- A or B? Si A = 1000 y B= 1100 ¿qué queda almacenado en C? y si ahora la operacion es C <--- A and B ?
- ¿Qué representa la operación A <-- inc(A)?
- [29:20] - Entradas y conexiones
- ¿Cómo represento la trasferencia de una entrada X a un registro A?
- ¿Cómo represento las conexiones en RTL?
- En un determinado paso quiero mostrar el contenido de A en la salida Z y en otro paso, el contenido de B en la misma Z ( paso k Z= A, paso k+1 Z= B). ¿Cómo se implementa en hardware?
- [38:05] - Transferencia condicional
- ¿Cómo represento la transferencia condicional? ¿Qué es una transferencia condicional?
- [42:45] - Ejemplo: Estructura del Lenguaje RTL
- ¿Qué partes componen la descripción de un circuito en lenguaje RTL?
- ¿Qué se declara inicialmente?
- ¿Qué es la secuencia de control?
- ¿Cómo realizar el bloque de control?
- ¿Para qué se utilizan las señales generadas en el bloque de control?
- ¿En qué instante de tiempo ocurren la transferencia?
- ¿Cómo se representa una bifurcación condicional en RTL? ¿Cómo indico si quiero empezar en un determinado paso?
Link a autoevaluación de la clase - Autoevaluación 16
Clase 17 - RTL: Ejemplo de Diseño [1:23:17] Ver completa
RTL: Ejemplo Comparador
- [00:00] - Diagrama de Flujo del Circuito
- Representación de Paso como Instrucción más Bifurcación
- Representación de Bifurcación Condicional
- Ejemplo de Tansferencia Condicional
- ¿Cómo Inicializar un Registro en RTL?
- ¿Qué valor toma una salida durante un Paso si no esta definida en ese Paso?
- [16:03] - Código RTL
- Encabezado: MODULE, INPUTS, OUTPUTS, MEMORY
- Algunos ejemplos de Pasos equivalentes
- Pasos que describen el Circuito
- ¿Cómo determino desde que paso parte el circuito después de un reset?
- Esquema general de un Código RTL
- [29:52] - Bloque de Datos y Bloque de Control
- Bloque de Datos: Descripción de como conectar los Registros ultizados (Entradas, Salidas, Enable)
- Bloque de Control: Anillo de FF que determina el número de pasos y como llego a cada uno
- [52:43] - Diagrama de Tiempo
- ¿En qué momento del Período de un Paso se ejecutan las Transferencias programadas en dicho Paso?
RTL: Otro Ejemplo
- [1:00:40] - Ejemplo para Analizar Tiempos
- ¿Qué valor tiene una variable durante un paso si en este paso se escribe la misma?
- ¿En qué momento cambian las conexiones(definidas con un =) como las salidas?
- ¿Si una entrada cambia después del flanco inicial de un Período y vuelve a su valor original antes del flanco del siguiente Período, ese cambio ¿puede afectar algo?
Link a autoevaluación de la clase - Autoevaluación 17
Clase 18 - RTL: Buses. Memoria RAM. Ejemplo RTL: Ej5 Repartido "Repaso 2" [1:15:34] Ver completa
RTL: Buses - Memorias
- [00:00] - Buses
- ¿Cuál es la sintaxis para declarar buses en RTL?
- ¿Cómo implemento la siguiente instrucción RTL : 7. BUS_X = B C <-- BUS_X ?
- ¿Cómo conecto dos o más registros a un mismo bus (cada registro usará el bus en distinto momento)?
- [08:30] - Memorias de lectura - escritura
- ¿En qué se diferencia una memoria de lectura-escritura de una memoria de solo lectura?
- ¿Qué característica tiene el bus de datos?
- ¿Qué son las entradas DIR, WE, OE y CS?
- ¿Cómo es el ciclo de lectura?
- ¿Cómo es el ciclo de escritura?
- Si quiero leer el contenido de la posicion 0xBBAA, que debo colocar en las entradas DIR, WE, OE y CS de la memoria suponiendo que WE,OE y CS son activas por alto?
- ¿Qué tiempos se deben respetar en un ciclo de escritura?
- [28:50] - Ejemplo RTL: Repartido repaso 2 Ejercicio 5
- STACK con RAM
- ¿Qué es un STACK? ¿Qué significa realizar un PUSH y un POP?
- Descripción RTL, bloque de datos y bloque de control del ejercicio 5
Link a autoevaluación de la clase - Autoevaluación 18
Clase 19 - Circuitos Secuenciales Modo Nivel [1:22:14] Ver completa
Circuitos Secuenciales Modo Nivel o Asíncronos(sin Reloj o FF)
- [00:00] - Flip-Flop SR
- ¿Cómo determinar estado actual y estado siguiente en el Mapa de Karnaugh?
- ¿Por qué algunos estados van a ser inestables?
- Diagrama de Tiempos
- Diagrama de Estados y Minimización
- [36:04] - Modo Fundamental
- Definición de Modo Fundamental
- [42:02] - Problemas de Circuitos Secuenciales Modo Nivel: Carreras
- ¿Qué problemas puede haber al cambiar de un estado a otro?
- Métodos para Eliminar Carreras: Codificación de Estados
- Métodos para Eliminar Carreras: Conjuntos de Destino
Link a autoevaluación de la clase - Autoevaluación 19
Clase 20 - Eliminación de Carreras. Ejemplo Modo Nivel: Diseño de un FF-D Sensible al Flanco de Subida (parte 1) [1:26:13] Ver completa
Eliminación de carreras
- [00:00] - Eliminación de carreras- Continuación ejemplo clase 19
- ¿Cuándo ocurren las carreras?
- ¿Qué información nos brindan los conjuntos destinos? ¿Cómo se construyen?
- ¿Cuáles son las reglas para evitar carreras? ¿Qué pasa si no se cumple la primera regla?
- ¿Cómo y cuándo puedo realizar ciclos para evitar carreras?
- ¿Cómo asigno salidas a los estados insestables? ¿Cuándo puedo dejar la salida como don't care?
- [32:15] - Casilleros no especificados
- ¿Cómo puedo utilizar un casillero o varios casilleros no especificado para evitar carreras?
- [39:15] - Método del cubo
- Si uno de cuatro estados debe ser adyacente con los otros 3 ¿Tiene solución en el plano? ¿Cómo lo resuelvo?
- ¿Cuántas variables de estado tengo ahora? ¿Por qué hay que utilizar este método como último recurso?
- [1:01:10] - Mapas K- Modo nivel
- ¿Por qué hay que evitar azares en todas las funciones combinatorias que forman parte del diseño modo nivel?
- ¿Cómo garantizo que no se producen azares cuando resuelvo los mapas de Karnaugh?
- [1:10:55] - Diseño de un FF-D Sensible al Flanco de Subida
- Diseño de un FF-D sensible al flanco de subida
Link a autoevaluación de la clase - Autoevaluación 20
Clase 21 - Ejemplo Modo Nivel: Diseño de un FF-D Sensible al Flanco de Subida (parte 2). Ejemplo RTL: Exámen Feb 99 [1:03:15] Ver completa
Ejemplo Modo Nivel
- [00:00] - Diseño de un FF-D Sensible al Flanco de Subida (parte 2)
- ¿Por qué necesito 4 estados en un FF sensible al flanco?
- ¿Por qué en modo nivel cada estado tiene un lazo a sí mismo? ¿Por qué este diagrama no tiene carreras?
- Minimización de Estados
- ¿Cómo hacer Mapas K sin azares
- Diagrama del Circuito (no usar FF, es Modo Nivel)
Ejemplo RTL
- [38:07] - Exámen Feb 99
Link a autoevaluación de la clase - Autoevaluación 21
Clase 22 - Ejemplo RTL: Repartido Repaso 2, ej. 2 (parte 2). Práctico 9, ej 9 (mencionado en el video como ej. 9 del repartido repaso 2) (parte 1) [1:25:09] Ver completa
- [00:00] - Continuación Ejercicio 2 - Práctico: Repaso 2
- [1:02:50] - Ejercicio 9 - Práctico: 9
Clase 23 - Ejemplo RTL: Práctico 9, ej 9 (parte 2) [1:18:09] Ver completa
- [00:00] - Continuación Ejercicio 9 - Práctico: 9
Clase 24 - Modo Reloj. Práctico 8, ej 1 (mencionado en el video como el ej. 6 del repartido de repaso 2) [1:22:05] Ver completa
- [00:00] - Ejercicio 1 - Práctico 8
Clase 25 - Modo Nivel: Examen Diciembre 2011: Problema 1 [1:16:41] Ver completa
- [00:00] - Examen Diciembre 2011: Problema 1
Clase 26 - Examen Diciembre 2011: Ejercicio 1 y 2 - Examen Diciembre 2010: Ejercicio 1 y 2 [1:22:29] Ver completa
- [00:00] - Examen Diciembre 2011: Ejercicio 2
- [31:42] - Examen Diciembre 2010: Ejercicio 2
- [46:10] - Examen Diciembre 2010: Ejercicio 1
- [55:40] - Examen Diciembre 2011: Ejercicio 1