Interface de restrição RGMII de Ethernet de velocidade tripla com o recurso de atraso de PHY externo

author-image

Por

O objetivo deste exemplo de projeto é mostrar a maneira de restrição do TSE_RGMII. Este exemplo de projeto só é aplicável quando o recurso de atraso (deslocamento de 90 graus) de TX_CLK e RX_CLK de PHY externo estiver ligado. Ele pode funcionar em 3 velocidades diferentes, que são de 10 MHz, 100 MHz e 1000 MHz.

A suposição é feita de que o usuário está familiarizado com o núcleo de propriedade intelectual Ethernet de velocidade tripla (IP), ALTDDIO, ALTPLL, timequest e análise de tempo estático e conceito síncrono de taxa de dados dupla (DDR).

Como restrição

  1. Selecione o método de restrição de interface: método centrado no sistema ou Intel® FPGA método centrado.
    • O método diferente requer fórmulas diferentes para calcular o valor de atraso no comando set_input_delay e set_output_delay
    • Este exemplo de projeto usa o método centrado no sistema
  2. Decida se liga ou desliga o recurso de atraso (±90 graus) do PHY externo, pois ele determinará o tipo de alinhamento entre o clock e os dados.
    • Shift de 90 graus -> centro alinhado
    • Nenhuma borda de > de mudança alinhada
    • Este exemplo de projeto é aplicável ao recurso de atraso de TX e RX do PHY externo são apenas ativadas (deslocamento de 90 graus)
  3. Determine o relacionamento de lançamento e trava desejado.
    • Há 4 tipos de relacionamento de lançamento e trava. São as relações Rise-Rise (RR), Rise-Fall (RF), Fall-Rise (FR) e Fall-Fall (FF)
    • A especificação RGMII diz que a LSB dos dados [3:0] será enviada primeiro na borda ascendente e a MSB dos dados [7:4] é enviada seguida pela borda em queda
    • O design do TSE com interface RGMII capturará os dados na borda ascendente primeiro e depois a borda em queda. Isso implica que o clock precisa ser deslocado +90 graus em vez de -90 graus
    • Relação de inicialização e travamento de configuração desejada (seta em vermelho): RR e FF
    • Relacionamento de lançamento e trava desejado (Seta em azul): FR e RF
  4. Restrição da interface RGMII. As Restrições de design de sinopse (SDC) são baseadas no projeto e na aplicação. No entanto, há alguns SDC principais necessários para a interface RGMII.

Figura 2. Iniciar a relação clock e trava do clock

TX

  • create_clock
    • o clock que trava os dados dentro do Intel® FPGA antes de transmitir para o PHY externo
  • create_generated_clock:
    • o relógio com mudança de fase de 90 graus que trava os dados no PHY externo
  • set_false_path:
    • É uma relação indesejada para não ser analisada na análise de tempo. Neste exemplo de projeto, a relação indesejada para a configuração é RF e FR, enquanto a relação indesejada para a espera é RR e FF

set_false_path -fall_from [data_clock] -rise_to [output_clock] -setup
set_false_path -rise_from [data_clock] -fall_to [output_clock] -setup
set_false_path -rise_from [data_clock] -rise_to [output_clock] -hold
set_false_path -fall_from [data_clock] -fall_to [output_clock] -hold

 

  • set_output_delay

set_output_delay -clock output_clock\
-max [expr $data_delay_max + $tsu - $clk_delay_min] \
[get_ports data_out] \
-add_delay

set_output_delay -clock output_clock\
-max [expr $data_delay_max + $tsu - $clk_delay_min] \
[get_ports data_out] \
-clock_fall \
-add_delay

set_output_delay -clock output_clock \
-min [expr $data_delay_min - $th - $clk_delay_max] \
[get_ports data_out ] \
-add_delay

set_output_delay -clock output_clock \
-min [expr $data_delay_min - $th - $clk_delay_max] \
[get_ports data_out ] \
-clock_fall \
-add_delay

 

TSE_RGMII RX

  • create_clock:
    • um clock virtual que trava os dados dentro do PHY externo antes de transmitir para o Intel® FPGA
  • criar _clock:
    • o relógio com mudança de fase de 90 graus que trava os dados dentro do Intel® FPGA
  • set_false_path:
    • É uma relação indesejada para não ser analisada na análise de tempo. Neste exemplo de projeto, a relação indesejada para a configuração é RF e FR, enquanto a relação indesejada para a espera é RR e FF

set_false_path -fall_from [data_clock] -rise_to [output_clock] -setup
set_false_path -rise_from [data_clock] -fall_to [output_clock] -setup
set_false_path -rise_from [data_clock] -rise_to [output_clock] -hold
set_false_path -fall_from [data_clock] -fall_to [output_clock] -hold

 

Como verificar

Há alguns relatórios a ser verificados para verificar se a restrição síncrona de origem está limitada corretamente.

  1. Relatório do clock
    • Verifique a frequência de 3 clocks (125 MHz, 25 MHz e 2,5 MHz) e sua fase
    • Clock core TX (Intel® FPGA): 125 MHz, 25 MHz e 2,5 MHz
    • RGMII_TX_Clock (PHY externo): 125 MHz +90º, 25 MHz +90º e 2,5 MHz +90º
    • RGMII_RX_Clock (Intel® FPGA): 125 MHz +90º, 25 MHz +90º e 2,5 MHz +90º
    • RGMII_RX_Virtual_Clock (PHY externo): 125 MHz, 25 MHz e 2,5 MHz
  2. Relatório de transferência de clock
    • Verifique toda a relação na configuração e segure o relacionamento de trava de lançamento da interface RGMII para transferência de clock
    • Configuração desejada: RR e FF
    • Espera desejada: FR e RF
  3. Todo o relatório de tempo de E/S
    • Verifique se há alguma relação de falha no caminho e trava de lançamento de acordo com a configuração desejada e mantenha a relação de trava de lançamento
      • Entrada para registrar-se para configuração e espera
      • Inscreva-se na saída para configuração e espera

Notas:

  1. TSE_10_1_RGMII_SDC é o arquivo SDC gerado pelo Megafunction. Ele não cobre a restrição de SDC RGMII. A restrição de SDC RGMII está incluída na SDC RGMII.
  2. Modificação no arquivo TSE_10_1_RGMII_SDC.sdc:
    • Comente o derived_pll_clock (linha 246) pois impedirá que você use o comando create_gererated_clock para o pll em RGMII.sdc
    • Mude o nome de FF_TX_CLK e FF_RX_CLK na linha 59 e na linha 60 de acordo com o design
  3. Há avisos que podem ser ignorados durante a análise de temporização. Consulte o readme.txt encontrado em TSE_RGMII_With_SDC.qar para obter detalhes.
  4. Baixe o arquivo usado neste exemplo: TSE_RGMII_With_SDC.qar

O uso deste design é regido pelos termos e condições do Contrato de licença de exemplo de projeto Intel®

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.