Análise do clock do analisador de tempo

author-image

Por

Uma análise abrangente de tempo estático inclui a análise de caminhos de reinicialização de registro para registro, E/S e assíncronos. O analisador de sincronização usa os tempos necessários, os tempos de chegada dos dados e os tempos de chegada do clock para verificar o desempenho do circuito e detectar possíveis violações de sincronização. O analisador de sincronização determina as relações de sincronização que devem ser atendidas para que o design funcione corretamente e verifica os tempos de chegada em relação aos tempos necessários para verificar o tempo.

Verificação de configuração do clock

Para realizar uma verificação de configuração do clock, o analisador de sincronização determina uma relação de configuração analisando cada borda de inicialização e travamento para cada caminho de registro para registro. Para cada borda de trava no registro de destino, o Analisador de tempo usa a borda do clock anterior mais próxima no registro de origem como a borda de lançamento.

Na Figura 1, duas relações de configuração são definidas e rotuladas como Configuração A e Configuração B. Para a borda da trava a 10 ns, o clock mais próximo que atua como uma borda de lançamento é de 3 ns e é rotulado de Configuração A. Para a borda da trava a 20 ns, o clock mais próximo que atua como uma borda de lançamento é de 19 ns e é rotulado de Configuração B.

Figura 1. Verificação de configuração.

O analisador de sincronização relata o resultado das verificações de configuração do clock como valores de folga. Slack é a margem pela qual um requisito de sincronização é atendido ou não. A folga positiva indica a margem pela qual um requisito é atendido e a folga negativa indica a margem pela qual um requisito não é atendido. O analisador de sincronização determina a folga de configuração do clock conforme mostrado na Equação 1 para caminhos internos de registro para registro.

Equação 1

Folga de configuração do clock = tempo necessário para dados – tempo de chegada de dados

Dados necessários = Tempo de chegada do clock – μtSU – Incerteza de configuração

Tempo de chegada do clock = Borda da trava + atraso da rede do clock para o registro de destino

Tempo de chegada dos dados = Registro de origem do atraso da borda de lançamento + clock network + μtCO + atraso no registro

Se o caminho de dados for de uma porta de entrada para um registro interno, o analisador de sincronização usa as equações mostradas na Equação 2 para calcular o tempo de folga da configuração.

Equação 2

Tempo de folga da configuração do clock = tempo de uso obrigatório de dados – tempo de chegada dos dados

Tempo de chegada dos dados = Atraso na borda do lançamento + clock network para o registro de origem + Atraso máximo de entrada do pino + pino para registrar atraso

Tempo necessário para dados = Borda da trava + atraso da rede do clock para registro de destino – μtSU

Se o caminho de dados for um registro interno em uma porta de saída, o analisador de sincronização usa as equações mostradas na Equação 3 para calcular o tempo de folga da configuração.

Equação 3

Tempo de folga da configuração do clock = tempo de uso obrigatório de dados – tempo de chegada dos dados

Tempo de chegada dos dados = Atraso na borda do lançamento + clock da rede para o registro deorigem + CO μt + registro para atraso de pinos

Tempo necessário para dados = Borda da trava + atraso da rede do clock para registro de destino – Atraso máximo de saída do pino

Verificação de espera do clock

Para realizar uma verificação de espera de clock, o analisador do analisador de sincronização determina uma relação de espera para cada possível relação de configuração existente para todos os pares de registro de origem e destino. O analisador de sincronização verifica todas as bordas adjacentes do clock de todas as relações de configuração para determinar as relações de espera. O analisador do analisador de sincronização executa duas verificações de espera para cada relação de configuração. A primeira verificação de espera determina que os dados lançados pela borda de lançamento atual não são capturados pela borda da trava anterior. A segunda verificação de espera determina que os dados lançados pela próxima borda de lançamento não são capturados pela borda da trava atual.

A Figura 2 mostra duas relações de configuração rotuladas de Configuração A e Configuração B. A primeira verificação de espera é etiquetada como Hold Check A1 e Hold Check B1 para Configuração A e Configuração B, respectivamente. A segunda verificação de espera é etiquetada como Hold Check A2 e Hold Check B2 para Configuração A e Configuração B, respectivamente.

Figura 2. Mantenha a verificação.

A partir das possíveis relações de espera, o Analisador de tempo seleciona a relação de espera que é a mais restritiva. A relação de espera com a menor diferença entre a trava e as bordas de lançamento (ou seja, trava, lançamento e não o valor absoluto da trava – lançamento) é selecionada porque isso determina o atraso mínimo permitido para o caminho de registro de registro. Para a Figura 2, a relação de espera selecionada é Hold Check A2. O analisador de sincronização determina a folga de espera do clock, conforme mostrado na Equação 4.

Equação 4

Tempo de espera do clock = tempo de chegada de dados – tempo necessário para dados

Tempo necessário para dados = Tempo de chegada do clock +μtH + incerteza de espera

Tempo de chegada do clock = Borda da trava + atraso da rede do clock para o registro de destino

Tempo de chegada dos dados = Atraso na borda do lançamento + clock da rede para o registro de origem +μtCO+ registro para registro de atraso

Se o caminho de dados for de uma porta de entrada para um registro interno, o analisador de sincronização usa as equações mostradas na equação 5 para calcular o tempo de folga de espera.

Equação 5

Tempo de folga da configuração do clock = tempo de chegada de dados – tempo necessário para dados

Tempo de chegada dos dados = Atraso na borda do lançamento + clock da rede para o registro de origem + atraso mínimo de entrada do pino + pino para registrar atraso

Tempo necessário para dados = borda da trava + atraso da rede do clock para o registro de destino + μtH

Se o caminho de dados for um registro interno em uma porta de saída, o analisador de sincronização usa as equações mostradas na Equação 6 para calcular o tempo de folga de espera.

Equação 6

Tempo de folga da configuração do clock = tempo de chegada de dados – tempo necessário para dados

Tempo de chegada dos dados = Atraso na borda do lançamento + clock da rede para o registro deorigem + CO μt + registro para atraso de pinos

Tempo necessário de dados = Borda da trava + atraso da rede do clock para registro de destino – Atraso mínimo de saída do pino

Recuperação e remoção

O tempo de recuperação é o tempo mínimo de tempo que um sinal de controle assíncrono, por exemplo, e predefinido, deve ser estável antes da próxima borda ativa do clock. O cálculo do tempo de folga de recuperação é semelhante ao cálculo do tempo de folga da configuração do clock, mas aplica sinais de controle assíncronos. Se o controle assíncrono estiver registrado, o analisador de sincronização usa a Equação 7 para calcular o tempo de folga de recuperação.

Equação 7

Tempo de folga de recuperação = tempo necessário para dados – tempo de chegada dos dados

Tempo de chegada dos dados = Atraso na borda do lançamento + clock da rede para o registro de origem + μtCO+ registro para registro de atraso

Tempo necessário para dados = Borda da trava + atraso da rede do clock para registro de destino – μtSU

Se o controle assíncrono não estiver registrado, o analisador de sincronização usa as equações mostradas na Equação 8 para calcular o tempo de folga de recuperação.

Equação 8

Tempo de folga de recuperação = tempo necessário para dados – tempo de chegada dos dados

Tempo de chegada de dados = Borda de lançamento + atraso máximo de entrada + porta para registrar atraso

Tempo necessário para dados = Borda da trava + atraso da rede do clock para atraso no registro de destino – μtSU

Nota: se o sinal de reinicialização assíncrona for de uma porta (E/S do dispositivo), você deve fazer uma atribuição de atraso máximo de entrada no pino de reinicialização assíncrona para que o Analisador de tempo execute a análise de recuperação nesse caminho.

O tempo de remoção é o tempo mínimo de tempo que um sinal de controle assíncrono deve ser estável após a borda ativa do clock. O cálculo do tempo de folga do tempo de remoção do analisador de sincronização é semelhante ao cálculo de folga do clock hold, mas aplica sinais de controle assíncronos. Se o controle assíncrono estiver registrado, o analisador de sincronização usa as equações mostradas na equação 9 para calcular o tempo de folga de remoção.

Equação 9

Tempo de folga de remoção = chegada de dados

Tempo – Tempo necessário para dados

Tempo de chegada dos dados = Atraso na borda do lançamento + clock da rede para o registro de origem +μt COdo Registro de Origem + Registro para registro de atraso

Tempo necessário para dados = borda da trava + atraso da rede do clock para o registro de destino + μtH

Se o controle assíncrono não estiver registrado, o analisador de sincronização usa as equações mostradas na equação 10 para calcular o tempo de folga de remoção.

Equação 10

Tempo de folga de remoção = tempo de chegada de dados – tempo necessário para dados

Tempo de chegada de dados = Borda de lançamento + atraso mínimo de entrada do pino + pino mínimo para registrar atraso

Tempo necessário para dados = Borda da trava + atraso da rede do clock para o registro de destino +μtH

Nota: se o sinal de reinicialização assíncrona for de um pino de dispositivo, você deve especificar a restrição de atraso mínimo de entrada ao pino de reinicialização assíncrona para que o Analisador de tempo execute uma análise de remoção neste caminho.

Caminhos multiciclos

Os caminhos multiciclos são caminhos de dados que exigem mais de um ciclo de clock para travar dados no registro de destino. Por exemplo, um registro pode ser necessário para capturar dados em cada segundo ou terceira borda de clock ascendente.

A Figura 3 mostra um exemplo de um caminho multiciclo entre os registros de entrada de um multiplicador e o registro de saída onde o destino trava dados em cada outra borda do clock. Consulte o comando Timing Analyzer set_multicycle_path para obter informações sobre o set_multicycle_path comando.

Figura 3. Caminho multiciclo.

As páginas a seguir fornecem informações sobre os comandos SDC para descrever clocks e características do clock.

O conteúdo desta página é uma combinação de tradução humana e por computador do conteúdo original em inglês. Este conteúdo é fornecido para sua conveniência e apenas para informação geral, e não deve ser considerado completo ou exato. Se houver alguma contradição entre a versão em inglês desta página e a tradução, a versão em inglês prevalecerá e será a determinante. Exibir a versão em inglês desta página.