Esta solução descreve as etapas para remover a terminação no chip (OCT) de um projeto que usa controladores de memória baseados no UniPHY. A maior motivação para remover o OCT da E/S da interface de memória é economizar energia. Há três coisas para ter em mente:
- Não remova a terminação de FPGA (em morrer ou a bordo) em qualquer E/S de memória operando no mínimo 300 MHz.
- Não remova a rescisão do
mem_clksinal. - Execute as simulações de integridade do sinal para verificar a qualidade do sinal após remover o OCT.
As etapas abaixo descrevem como remover o OCT. Essas etapas se aplicam a:
- DDR3 para Stratix® V, Arria® V e Cyclone® V
- QDR II para Stratix V e Arria V
- RLDRAM II para Stratix V
Antes de começar a fazer as modificações no projeto, certifique-se de que seu projeto foi compilado sem erros.
- Abra o Project_namearquivo >.qsf. Remova ou comente a atribuição de IO de rescisão no Arquivo de configurações quartus® II (.qsf) ou editor de atribuição. Por exemplo, comente as seguintes linhas:
Para comentar uma atribuição de QSF, adicione um sinal de libra (#) no início da linha.set_instance_assignment -name INPUT_TERMINATION "PARALLEL 50 OHM WITH CALIBRATION"
set_instance_assignment -name OUTPUT_TERMINATION "SERIES 50 OHM WITH CALIBRATION” - Apenas para RLDRAM II e QDRII/QDRII: Remova qualquer restrição de QSF que começa com
set_instance_assignment -name TERMINATION_CONTROL_BLOCK” - Inicie a compilação Quartus. A compilação não encaixará no design com um monte de erros. Clique duas vezes no primeiro erro, começando com "Buffer Atom de saída", e ele apontará para uma instaução de buffer de saída em altdq_dqs2_stratixv.sv. Remova as seguintes conexões da instação do buffer de saída.
- controle de paralelelismo
- controle de sérieterminação
- dynamicterminationcontrol
.parallelterminationcontrol (parallelterminationcontrol_in), Para.parallelterminationcontrol (),Dependendo do protocolo de memória que você está usando, pode haver mais de uma instância em que você precisa remover as conexões. Repita a etapa nº 3 até que você se livre de todos os erros que começam com "Atom buffer de saída"- Apenas para DDR2 e DDR3: abra altdq_dqs2_stratixv.sv. Encontre a instância chamada "stratixv_pseudo_diff_out". Comente a linha onde "dtcin" é definida. Mudar:
Para.dtcin(delayed_oct),//.dtcin(delayed_oct),