Altifigence Academy

37 / 63 · Concepto

Entrada serie y límites de trama

Defina orden y flancos válidos y calcule la disposición de bits en una conversión serie-paralelo.

Del orden temporal a las posiciones del vector

Una entrada serie transmite un bit por flanco válido. Para un registroRegistro Circuito que almacena varios bits de estado. Los registros síncronos de este curso capturan la entrada especificada en el flanco de reloj. Más información de tres bits, q<={q[1:0],din}, q inicial 000 y bits 1,0,1,1:

Bits aceptadosdinq actualizado
11001
20010
31101
41011

El bit nuevo entra por la derecha y los anteriores avanzan a índices mayores. El registro es una ventana móvil de los tres bits recientes: al entrar el cuarto, pierde el primero.

Cada columna siguiente registra un flanco ascendenteFlanco ascendente Instante en que el reloj pasa de 0 a 1. Se distingue del nivel alto, que abarca todo el intervalo con CLK=1. Más información, con entrada previa y estado «después» posterior. La alineación representa muestras, no propagación físicaRetardo de propagación Tiempo desde un cambio de entrada hasta que la salida se estabiliza en el valor correcto. La equivalencia lógica y el comportamiento temporal son propiedades distintas. Más información. La primera columna es reset; luego q conserva solo los tres más recientes de 1,0,1,1. Observe salir el primero en la última columna.

Cómo una entrada serie se convierte en estado paralelo
Ver los datos de la forma de onda
Datos de la forma de onda: cada carácter es un intervalo; un punto conserva el estado anterior; p representa un ciclo de reloj.
SeñalForma de ondaValores del bus
flanco23452E0 → E1 → E2 → E3 → E4
reset10...
din0101.
q después23452000 → 001 → 010 → 101 → 011

MSB-first y LSB-first son reglas de comunicación

Si se envía un valor de ocho bits desde el MSBMSB Bit de mayor peso. Su índice depende del sentido de declaración del vector; no debe suponerse que siempre tiene el número más alto. Más información, ocho capturas con este desplazamiento reconstruyen el vector original. Si se envía desde el LSBLSB Bit de menor peso. Deben comprobarse conjuntamente el sentido de la notación y las reglas de indexación. Más información, queda invertido y hay que cambiar conexiones o reordenar al final. Es un protocolo que deben acordar ambos extremos, no una preferencia de visualización.

El valor del dato no identifica la trama

Hace falta estado para indicar el primer bit, cuántos se aceptaron y cuándo puede consumirse el resultado. Se suele combinar un contador de bits aceptados con valid o done. Si hay pausas, cuente datos aceptados, no relojes.

acceptk=validk∧readykaccept_k=valid_k\land ready_k

Con ready/validHandshake Contrato que confirma una transferencia cuando valid del emisor y ready del receptor valen 1 en el mismo flanco. Incluye las reglas para conservar los datos durante la espera. Más información, actualice desplazamiento y contador juntos solo cuando accept sea verdadero en el flanco. Aplicar enable únicamente a uno desalinearía datos y longitud. La práctica de entrada continua es el caso simple que acepta todos los flancos de datos.

Inténtalo tú

En una trama de ocho bits, valid=0 durante dos ciclos después del cuarto bit. Con ready=1, ¿qué deben hacer el contador receptor y el registro de desplazamiento?

Leer la explicación

En ambos ciclos accept=0: conserve tanto contador como datos. El siguiente bit válido será el quinto. Contar solo relojes puede anunciar el fin antes de recibir suficientes datos.

Tu elección se aplica a este navegador. Puedes cambiarla en el pie de página.