¿Qué significa el símbolo en amarillo? ¿Significa que la Q toma la
¿Valor de D solo al caer el borde del reloj?
Dado tu nivel de pregunta, no creo que importe.
Las señales de reloj no se definen específicamente en esta hoja de datos, aunque puede inferir que se derivan del reloj interno del sistema que controla la máquina de estado de la CPU. Muestran un borde descendente, que no te dice mucho, excepto que es probable que sea un desencadenante de borde bajo, pero creo que puedes ignorar ese detalle al escribir código.
(Siempre he encontrado que estos diagramas son más precisos que el texto. Si el texto y los diagramas no están de acuerdo (ya veces no están de acuerdo), entonces el diagrama siempre ha sido correcto (según mi experiencia) y el texto es incorrecto Así que realmente creo que tienden a mantener los diagramas precisos.)
Si está examinando los pines del puerto externo con un osciloscopio y también observa los bordes del reloj (si selecciona un modo de pin que le permite verlo), puede asociar este borde con lo que ve en el alcance. Y eso puede ser importante para usted si le interesa saber más sobre los retardos de fase de salida del pin de E / S en relación con los ciclos de reloj.
¿Qué es exactamente el bus de datos?
Es un bus interno, dentro de la CPU. Los buses internos obtienen nombres como RBUS o QBUS. Significan algo para un diseñador. En su caso, solo puede asumir que es un bus de datos de 8 bits de ancho que es válido en el borde descendente de las entradas CLK que ve con el símbolo "borde bajo" marcado en amarillo.
Supongamos que tiene una instrucción que escribe en PORTA, PORTB o PORTC, etc. No es una instrucción de modificación de bits, sino una que solo escribe un valor de 8 bits en un puerto. Luego, estos datos se colocarán en el bus de datos y luego uno de WR LATA, WR LATB o WR LATC también se activará al activar HI-to-LO para bloquear el valor en el puerto apropiado del puerto.
El diagrama solo muestra solo uno de los bits de datos del bus de datos. Se supone que debes comprender mentalmente que este diagrama se aplica 8 veces, una vez por cada pin PORTA válido. (Lo mismo sería cierto, también, para PORTB y así sucesivamente.) Entonces, hay 8 de estos D-flops para cada puerto. Y solo una de las líneas WR LAT * se activará (yendo a LO), dependiendo de la decodificación de la instrucción, al escribir un valor.
Tenga en cuenta que \ $ Q \ $ se retroalimenta a través de un búfer de tres estados a este bus de datos. Entonces, si el procesador quiere leer el último valor que se escribió en este puerto de bloqueo (8 bits en total, pero como ya señalé, solo ves uno de los D-flops aquí y no todos), entonces NO activa el Línea WR LATA, en absoluto. En su lugar, deja WR LATA inactivo y en su lugar activa RD LATA, que habilita el búfer de triple estado que luego impulsa el bus de datos con el valor de los 8 flops D para PORTA. De esta manera, el procesador puede leer el pestillo, en lugar de escribir en él.
¿Cómo exactamente colocan los latches D los valores correctos en el puerto de E / S?
Hay cuatro casos que se derivan de las cuatro combinaciones posibles de esos dos flops D:
$$ \ begin {split} \\\\\\\\ DATA \ quad \ end {split} \ begin {split}
PMOS \ quad \ quad \\\\
TRIS \ quad \ quad \\
\ begin {array} {c | cc}
&erio; 0 & 1 \\
\ hline
0 & APAGADO & APAGADO\\
1 & ON & APAGADO
\ end {array}
\ end {split} \ quad \ quad \ quad \ quad
\ begin {split}
NMOS \ quad \ quad \\\\
TRIS \ quad \ quad \\
\ begin {array} {c | cc}
&erio; 0 & 1 \\
\ hline
0 & ON & APAGADO\\
1 & APAGADO & APAGADO
\ end {array} \ end {split}
$$
La tabla anterior se desarrolló al examinar las compuertas OR y AND que conducen el PMOS y el NMOS que ve cerca del teclado de E / S. (El PMOS está activo si su puerta es BAJA. El NMOS está activo si su puerta está ALTA.)
Como puede ver fácilmente, tanto PMOS como NMOS están deshabilitados con \ $ TRIS = 1 \ $, independientemente del valor del bit de datos que se enclavó. Este must será el caso si el pin debe actuar como entrada. De lo contrario, uno de los transistores PMOS o NMOS estaría impulsando el pin de salida y esto se estropearía completamente usando el pin como entrada.
Con los transistores PMOS y NMOS apagados, ahora es posible leer el pin como datos (a través del "búfer de entrada TTL") o bien como analógico, sin pasar por el búfer de entrada TTL e ir directamente a una entrada ADC o Módulo LVD.
Además, ahora puede ver que si \ $ TRIS = 0 \ $ entonces uno u otro de los transistores PMOS o NMOS estarán activos, dependiendo del valor del bit de datos que se enclavó. Si los datos son un "0", el NMOS estará activo. Si los datos son un "1", el PMOS estará activo.
En ningún caso, tanto el PMOS como el NMOS estarán activos al mismo tiempo.