Altifigence Academy

41 / 63 · Conceito

Distinga latência em ciclos e taxa de processamento

Fixe o ponto de observação de uma linha de N estágios e quantifique latência e taxa.

Defina a origem de «N ciclos depois»

Um bit capturado no bit 0 em k chega ao bit N−1 de 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 N bits em k+N−1. Entre primeira e última captura passam N−1 períodos.

Se o registrador que aciona a entrada gerar o bit em k, a primeira captura do deslocador costuma ocorrer em k+1. A partir dessa origem, a saída demora N períodos. Não é contradição: o ponto inicial mudou.

Definindo d[k] como a entrada aceita em k, depois de preencher a linha:

qi[k]=d[k−i],qN−1[k]=d[k−N+1]q_i[k]=d[k-i],\qquad q_{N-1}[k]=d[k-N+1]

Uma latência longa permite um resultado por ciclo

Com período T e aceitação de um bit por borda, a taxaTaxa de processamento Quantidade de operações aceitas ou concluídas por unidade de tempo. Um pipeline pode aumentá-la sem reduzir a latência de uma operação individual. estável é 1/T1/T bits/s. Aumentar N acrescenta armazenamento e latência, mas mantém a taxa se as entradas continuarem sendo aceitas.

Uma linha de quatro estágios a 100 MHz tem período 10 ns e taxa estável de 100 Mbit/s. Um bit demorar para atravessá-la não implica esperar antes de inserir o próximo.

Cada coluna 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, entradas anteriores e estados «depois» posteriores. O alinhamento não representa 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. Em três estágios, A entra no primeiro em E0 e chega ao último logo após E2, enquanto B e C ocupam os anteriores. Traços indicam posições ainda inválidas.

Da primeira captura à última
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
borda2345E0 → E1 → E2 → E3
entrada aceita2345A → B → C → D
stage0 depois2345A → B → C → D
stage1 depois2345- → A → B → C
stage2 depois2.34- → A → B

Com pausas, conte deslocamentos válidos

Uma borda com enable ou accept em 0 não move bits. Já não se pode garantir um tempo real fixo, apenas uma latência medida em avanços aceitos. Mova valid nas mesmas condições dos dados para identificar saídas válidas.

Apresentar pipelinePipeline Estrutura que divide o cálculo em estágios separados por registradores para processar várias entradas de forma sobreposta. Dados, valid e controles devem permanecer alinhados entre os estágios. Saiba mais apenas como forma de reduzir latência induz ao erro. Muitas vezes ele divide a lógica para aumentar a frequência, acrescentando registradores e latência em ciclos. O estudo posterior aprofunda os compromissos de área, potência e frequência.

Experimente

Um bit capturado no bit 0 na borda 10 de uma linha de cinco bits chega ao bit 4 em qual borda, sem pausas? E com duas bordas intermediárias de enable=0?

Ler a explicação

Em 14 sem pausas e em 16 com duas pausas. São necessários quatro movimentos adicionais após a captura inicial. A origem é a captura no bit 0, não a atualização de um registrador externo.

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