Restrição de uma entrada de origem sincronizada com borda

author-image

Por

Uma interface de entrada síncrona de origem é limitada de forma semelhante a uma interface de entrada síncrona do sistema. O FPGA recebe um clock e usa esse clock para travar os dados de entrada. Em uma interface síncrona de origem alinhada à borda, a transição do clock ocorre ao mesmo tempo que a transição de dados. A Figura 1 mostra uma interface de entrada de origem síncrona de amostra.

Figura 1. Interface de entrada síncrona de origem.

Use as seguintes etapas para restringir uma interface de entrada de origem sincronizada com borda:

  1. Crie clocks virtuais, básicos e gerados

  2. Adicionar restrições de atraso de entrada

  3. Adicione exceções de caminhos falsos para excluir caminhos inválidos da análise de sincronização e relatórios

Para obter mais detalhes sobre qualquer uma dessas etapas, ou os cálculos e restrições descritos abaixo, consulte href="/literature/an/an433.pdf">AN 433: Restrição e análise de interfaces síncronas de origem (PDF).

Relógios

Um clock virtual modela o clock no dispositivo externo que impulsiona os registros de dados para transmitir dados para o FPGA.

É necessário um clock base na porta de entrada do FPGA. O clock base descreve as características do clock na entrada do relógio do FPGA.

Os clocks gerados são necessários em todas as saídas de loop bloqueado por fase (PLL). Em uma interface de entrada de origem sincronizada com borda, o PLL deve mudar de fase o clock recebido em 90 graus para atender aos requisitos de sincronização interna dos registros de captura de dados.

Restrições de atraso de entrada

Você pode usar uma especificação de distorção máxima para calcular os valores de atraso de entrada. A especificação de distorção máxima indica a variação de tempo permitida para que bits individuais de um barramento de dados cheguem ao FPGA.

O valor do atraso máximo de entrada é o valor máximo de distorção.

O valor do atraso mínimo de entrada é -valor máximo de distorção.

Exceções de caminho falso

Neste exemplo alinhado à borda, os dados são transferidos em transições de origem de ascensão e queda e de clock de destino. Use exceções de caminho falsos para reduzir as transições de clock de queda e queda, porque os dados não são transferidos em transições de clock de borda oposta.

Arquivo SDC de amostra

# Crie um clock virtual para descrever o clock de dados nº do dispositivo externo create_clock -name virt_clk -period 10 # Crie um clock base na porta de entrada do FPGA, com um período de

10 ns create_clock
-name input_clock -period 10 [get_ports clk_in] # Crie

clocks gerados nas saídas PLL
create_generated_clock -name data_clock -source [get_pins pll|inclk[0]] \
-fase 90 [get_pins pll|clk[0]]

# Adicionar máximo e restrições mínimas de atraso de entrada # assumindo um requisito de distorção de +/- 250ps # Use as equações para os valores de atraso de entrada listados acima
set_input_delay
-max-clock virt_clk 0,250 [get_ports data_in*]
set_input_delay -min -clock virt_clk -0,250 [get_ports data_in*]
set_input_delay -max-clock virt_clk -clock_fall \
0,250 [get_ports data_in*] -adicionar
set_input_delay -min-clock virt_clk -clock_fall \
-0,250 [get_ports data_in*] -adicionar

# Adicionar exceções de caminho falso para transferências de clock cruzado set_false_path
-setup -end -rise_from [get_clocks virt_clk] \
-fall_to [get_clocks data_clock]
set_false_path -setup -end -fall_from [get_clocks virt_clk] \
-get_clocks virt_clk rise_to [get_clocks data_clock]
set_false_path -hold-end -rise_from [get_clocks virt_clk] \
-rise_to [get_clocks data_clock] set_false_path
-hold-end -fall_from [get_clocks virt_clk] \
-fall_to [get_clocks data_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.