Altifigence Academy

37 / 63 · Conceito

Entrada serial e limites de quadro

Defina ordem e bordas válidas e calcule a disposição dos bits numa conversão serial-paralela.

Da ordem temporal às posições do vetor

Uma entrada serial transmite um bit por borda válida. Para um registradorRegistrador Circuito que armazena vários bits de estado. Os registradores síncronos deste curso capturam a entrada especificada na borda de clock. Saiba mais de três bits, q<={q[1:0],din}, q inicial 000 e bits 1,0,1,1:

Bits aceitosdinq atualizado
11001
20010
31101
41011

O bit novo entra pela direita e os anteriores avançam para índices maiores. O registrador é uma janela móvel dos três bits mais recentes: ao entrar o quarto, perde o primeiro.

Cada coluna abaixo registra uma borda de subidaBorda de subida Instante em que o clock passa de 0 para 1. É diferente do nível alto, que abrange todo o intervalo com CLK=1. Saiba mais, com entrada anterior e estado «depois» posterior. O alinhamento representa amostras, não propagação físicaAtraso de propagação Tempo entre uma mudança de entrada e a estabilização da saída no valor correto. Equivalência lógica e comportamento temporal são propriedades distintas. Saiba mais. A primeira coluna é reset; depois q mantém apenas os três mais recentes de 1,0,1,1. Observe o primeiro sair na última coluna.

Como a entrada serial se transforma em estado paralelo
Ver os dados da forma de onda
Dados da forma de onda: cada caractere é um intervalo; um ponto mantém o estado anterior; p representa um ciclo de clock.
SinalForma de ondaValores do barramento
borda23452E0 → E1 → E2 → E3 → E4
reset10...
din0101.
q depois23452000 → 001 → 010 → 101 → 011

MSB-first e LSB-first são regras de comunicação

Se um valor de oito bits for enviado a partir do MSBMSB Bit de maior peso. Seu índice depende do sentido de declaração do vetor; não se deve supor que sempre tenha o maior número. Saiba mais, oito capturas com esse deslocamento reconstroem o vetor original. Se for enviado a partir do LSBLSB Bit de menor peso. É preciso conferir em conjunto o sentido da notação e as regras de indexação. Saiba mais, fica invertido e é preciso mudar conexões ou reordenar ao final. É um protocolo que ambos os lados devem acordar, não uma preferência de visualização.

O valor do dado não identifica o quadro

É necessário estado para indicar o primeiro bit, quantos foram aceitos e quando o resultado pode ser consumido. Costuma-se combinar um contador de bits aceitos com valid ou done. Se houver pausas, conte dados aceitos, não clocks.

acceptk=validk∧readykaccept_k=valid_k\land ready_k

Com ready/validHandshake Contrato que confirma uma transferência quando valid do transmissor e ready do receptor valem 1 na mesma borda. Inclui as regras para manter os dados durante a espera. Saiba mais, atualize deslocamento e contador juntos somente quando accept for verdadeiro na borda. Aplicar enable apenas a um deles desalinharia dados e comprimento. A prática de entrada contínua é o caso simples que aceita todas as bordas de dados.

Experimente

Num quadro de oito bits, valid=0 durante dois ciclos após o quarto bit. Com ready=1, o que devem fazer o contador receptor e o registrador de deslocamento?

Ler a explicação

Nos dois ciclos accept=0: mantenha tanto contador quanto dados. O próximo bit válido será o quinto. Contar apenas clocks pode anunciar o término antes de receber dados suficientes.

Sua escolha vale neste navegador. Altere-a a qualquer momento no rodapé.