전용 refclk 핀에서 155.52 MHz 클럭 입력을 사용하여 SONET OC12 프로토콜에서 Stratix® II GX 트랜시버 채널을 구성할 때 Quartus® II 소프트웨어는 SONET OC12 데이터 속도(622Mbps)에서 채널을 실행하는 데 필요한 refclk 사전 분할기를 인스턴스화하지 않습니다. refclk 프리 디바이더가 인스턴스화되지 않았기 때문에 SONET OC12 채널은 데이터 속도(1244Mbps)의 두 배로 실행됩니다.
이 문제는 Quartus II 소프트웨어 버전 7.0, 7.1 및 7.1 SP1에만 존재하며 Quartus II 소프트웨어 버전 7.2부터 해결됩니다.
설계에 따라 Quartus II 소프트웨어 버전 7.0, 7.1 및 7.1 SP1에서 이 문제를 해결하는 방법은 두 가지가 있습니다. 해결 방법 1은 동적 채널 및 TXPLL 재구성 기능을 사용하는 설계를 위한 것입니다(ALT2GXB MegaWizard® 플러그인에서 채널 활성화 및 TX PLL 재구성 옵션으로 활성화됨). 해결 방법 2는 동적 채널 재구성(ALT2GXB MegaWizard 플러그인의 재구성 페이지에서 대체 참조 클럭 사용 옵션 사용)을 사용하거나 동적 재구성을 사용하지 않는 설계를 위한 것입니다.
해결 방법 1 - Quartus II 소프트웨어 버전 7.0, 7.1 및 7.1 SP1에서 동적 채널 및 TXPLL 재구성 기능을 사용하는 설계의 경우.
SONET OC12 프로토콜 alt2gxb 인스턴스에 대한 MegaWizard 생성 래퍼 파일에서 155.52 MHz 클럭 주파수를 true
제공하는 refclk 핀에 연결된 해당 클럭 입력에 대해 매개변수(x가 0,1,2,3 또는 4인 경우)를 수정 enable_pll_inclk<x>_divider
합니다. 예를 들어, SONET OC12 ALT2GXB MegaWizard 인스턴스의 클럭 입력 1이 155.52MHz 클럭을 제공하는 refclk 핀에 true
연결되어 있는 경우 로 설정합니다enable_pll_inclk1_divider
. 이 변경을 통해 Quartus II 소프트웨어는 수정된 alt2gxb 인스턴스를 컴파일할 때 clock1 입력에 대한 refclk 사전 분할기를 만들 수 있습니다.
enable_pll_inclk<x>_divider
동일한 155.52MHz 클럭 입력에 연결하는 모든 인스턴스에 대해 alt2gxb MegaWizard 생성 래퍼 파일로 매개변수를 true
변경합니다. 예를 들어, 다른 alt2gxb 인스턴스의 clock2 입력 포트가 155.52MHz를 제공하는 refclk 핀에 연결되어 있는 경우 해당 래퍼 파일로 변경 enable_pll_inclk2_divider
true
합니다.
위의 수정을 한 후 메모리 초기화 파일(. mif) 모든 수정된 인스턴스에 대해.
설계를 시뮬레이션하려면 alt2gxb MegaWizard 플러그인 대신 Quartus II EDA Netlist Writer를 사용하여 트랜시버 모델 시뮬레이션 파일(Verilog HDL용.vo, VHDL용 .vho)을 생성합니다. alt2gxb MegaWizard 플러그인에서 생성한 기능 시뮬레이션 모델에 매개변수가 포함되지 않기 때문에 EDA Netlist Writer를 enable_pll_inclk_divider
사용해야 합니다. EDA Netlist Writer는 시뮬레이션 모델 파일(.vo 또는 .vho)에서 refclk 사전 분할자를 만듭니다. 시뮬레이션 모델 파일을 생성하려면 다음 단계를 따르십시오.
- 할당 메뉴에서 설정을 선택합니다.
- EDA 도구 설정에서 시뮬레이션을 선택합니다.
- 타사 시뮬레이션 도구의 도구 이름을 선택합니다.
- 출력 넷리스트 형식 목록에서 요구 사항에 따라 VHDL 또는 Verilog를 선택합니다.
- 출력 디렉토리 필드에서 .vo 또는 .vho 파일의 디렉토리를 지정합니다.
- 추가 설정을 클릭하고 기능 시뮬레이션용 넷리스트 생성을 켜기 로만 설정합니다.
- alt2gxb 및 alt2gxb_reconfig 인스턴스가 포함된 설계의 최상위 모듈을 컴파일합니다.
- 참고: alt2gxb와
reconfig_togxb
alt2gxb_reconfig 인스턴스 사이에 포트와 포트를 연결reconfig_fromgxb
해야 합니다. 그렇지 않으면 Quartus II 소프트웨어가 이러한 포트를 제거하며 생성된 .vo 또는 .vho 시뮬레이션 모델 파일은 예상대로 작동하지 않습니다.
해결 방법 2 - 동적 채널 재구성을 사용하거나 동적 재구성을 사용하지 않는 설계의 경우 Quartus II 소프트웨어 버전 7.0, 7.1 및 7.1 SP1에서.
디자인에 다음 Verilog 코드를 추가하여 refclk 사전 분할기를 추가합니다. refclk 프리 디바이더 인스턴스의 입력 포트를 155.52 MHz 클럭 입력을 제공하는 refclk 핀에 연결합니다. 이 155.52MHz 클럭 입력을 사용하는 모든 alt2gxb 인스턴스에 출력 포트를 연결합니다.
//refclk divider Verilog code for Workaround 2
module my_refclk_div(in, out);
input in;
output out;
stratixiigx_hssi_refclk_divider my_refclk_divider (
.inclk(in),
.clkout(out));
defparam my_refclk_divider.enable_divider = "true";
defparam my_refclk_divider.divider_number = 0;
defparam my_refclk_divider.refclk_coupling_termination = "normal_100_ohm_termination";
endmodule
설계에 SONET OC12 alt2gxb 인스턴스와 동일한 refclk 핀에서 155.52MHz 클럭 입력을 사용하는 다른 트랜시버 채널 인스턴스가 있는 경우, alt2gxb MegaWizard 플러그인의 일반 페이지에서 입력 클럭 주파수가 무엇입니까? 설정을 77.76MHz로 변경하십시오.
이 단계는 동일한 155.52MHz 클럭 입력을 사용하는 채널이 클럭 경로에 refclk 사전 분할기를 추가할 때 77.76MHz 입력 참조 클럭 주파수만 수신하기 때문에 필요합니다. 예를 들어, 기본 모드에서 동일한 155.52MHz 클럭 입력을 사용하여 2488Mbps에서 실행하도록 채널을 구성한 경우 입력 주파수를 77.76MHz로 설정합니다.
채널 재구성 기능이 활성화되면 메모리 초기화 파일()을 다시 생성합니다. mif) 모든 수정된 인스턴스에 대해.
ALT2GXB MegaWizard 플러그인에서 생성한 시뮬레이션 모델 파일(.vo 또는 .vho)을 사용하여 설계를 시뮬레이션할 수 있습니다.