문서 ID: 000082369 콘텐츠 형태: 제품 정보 및 문서 마지막 검토일: 2019-03-04

인텔® Arria® 10 PCI Express* IP의 레지스터 값은 어떻게 읽거나 쓸 수 있습니까?

환경

  • PCI Express*용 인텔® Arria® 10 Cyclone® 10 하드 IP
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    설명

    읽기 또는 쓰기 인텔® Arria® 10 PCI Express* IP 레지스터 값은 효과적인 디버깅 방법입니다. 아래 단계를 따라 인텔® Arria® 10 PCI Express IP 구성 요소에 레지스터 값을 읽거나 작성합니다.  첫 번째 부분은 Arria 10개의 트랜시버 네이티브 PHY IP 채널에서 10개의 트랜시버 ATX PLL IP 코어와 인텔 Arria 10개의 트랜시버 fPLL IP 코어를 인텔 Arria Altera 디버그 마스터 엔드포인트(ADME)를 활성화하는 방법을 보여줍니다. 두 번째 부분은 인텔® Quartus® Prime Pro Edition 시스템 콘솔을 사용하여 레지스터 값을 읽고 쓰는 방법에 대한 작업을 보여줍니다.

     

    ADME 기능을 활성화합니다.

    Arria 10 트랜시버 네이티브 PHY IP

    1. PCI Express IP 매개변수 편집기에서 ADME 활성화(구성, 디버그 및 확장 옵션 탭)

    2. HDL 생성(인텔 Quartus Prime Pro Edition 플랫폼 디자이너에서 "생성 --> HDL 생성..."을 클릭합니다.

     

    Arria 10개의 ATX PLL IP 코어(Arria 10 PCI Express IP Gen3 모드에만 해당)

    3. 플랫폼 디자이너가 생성한 PCI Express 설계 파일(예: \altera_pcie_a10_hip_171\synth)이 포함된 디렉토리로 이동합니다.

    4. 텍스트 편집기에서 'lcpll_g3xn.v' 파일 열기

    5. 아래의 매개변수를 ATX/LC PLL 인스턴스화(altera_xcvr_atx_pll_a10)로 설정합니다.

    .rcfg_jtag_enable(1),

    .dbg_embedded_debug_enable(1),

    .dbg_capability_reg_enable(1),

    .dbg_stat_soft_logic_enable(1),

    .dbg_ctrl_soft_logic_enable(1),

    6. 다시 구성 클럭을 연결하고 동일한 인스턴스화를 위해 재설정

    .reconfig_clk1(reconfig_clk0),

    .reconfig_reset1(reconfig_reset0),

    7. 'lcpll_g3xn.v' 파일 저장 및 닫기

     

    Arria 10 fPLL IP 코어

    8. 텍스트 편집기에서 'fpll_g3.v' 파일 열기

    9. fPLL instatiation(altera_xcvr_fpll_a10)에서 다음 매개변수를 설정합니다.

    .rcfg_jtag_enable(1),

    .dbg_embedded_debug_enable(1),

    .dbg_capability_reg_enable(1),

    .dbg_stat_soft_logic_enable(1),

    .dbg_ctrl_soft_logic_enable(1),

    10. 동일한 인스턴스화를 위해 클럭을 다시 구성하고 재설정합니다.

    .reconfig_clk1(reconfig_clk0),

    .reconfig_reset1(reconfig_reset0),

    11. 'fpll_g3.v' 파일을 저장하고 닫습니다.

    12. Quartus 컴파일 시작

    13. SOF 다운로드

     

    시스템 콘솔을 통해 읽기 및 쓰기 작업을 등록하십시오.

    1. Quartus 트랜시버 툴킷 및 로드 설계 시작

    2. 연결된 슬레이브 확인

    % get_service_paths 슬레이브(XCVR, ATX PLL 및 fPLL을 포함한 모든 슬레이브 목록)

    3. 각 슬레이브 인덱스의 IP 정보를 확인하고 인덱스와 연관된 IP를 기록합니다.

    % marker_get_info [lindex[get_service_paths 슬레이브] 0]

    % marker_get_info [lindex[get_service_paths 슬레이브] 1]

    % marker_get_info [lindex[get_service_paths 슬레이브] 2]

    % marker_get_info [lindex[get_service_paths 슬레이브] 3]

    4. XCVR 또는 PLL 레지스터에 대한 읽기/쓰기. 글을 쓸 때는 읽기 수정-쓰기를 수행합니다.  (예: ATX PLL m_counter)

    % 세트 s [lindex [get_service_paths 슬레이브] 3] # 인덱스 3은 ATX PLL입니다.

    % open_service 슬레이브 $s

    트랜시버 채널 액세스에 사용되는 % 세트 base_addr 0x0000 #

    % 세트 ret [master_read_8 $s [expr $base_addr 0x109*4] 1] # ATX PLL 주소 0x109 읽기(m_counter)

    % 세트 ret [expr $ret 및 ~0xf0 | (0x1 <<7)]                                         # 클리어 비트[7:4] 및 비트[7]를 1로 설정

    % master_write_8 $s [expr $base_addr 0x109*4] $ret # 쓰기 수정 값

    % 세트 ret [master_read_8 $s [expr $base_addr 0x109*4] 1] # 다시 읽음으로써 확인

     

    전체 레지스터 주소와 값은 인텔 Arria 10 트랜시버 레지스터 맵을 참조하십시오.

     

     

     

    관련 제품

    이 문서는 다음 항목에 적용됩니다. 1 제품

    인텔® Arria® 10 FPGA 및 SoC FPGA

    이 페이지의 콘텐츠는 원본 영어 콘텐츠에 대한 사람 번역 및 컴퓨터 번역의 조합으로 완성되었습니다. 이 콘텐츠는 편의와 일반적인 정보 제공을 위해서만 제공되었으며, 완전하거나 정확한 것으로 간주되어선 안 됩니다. 이 페이지의 영어 버전과 번역 간 모순이 있는 경우, 영어 버전이 우선적으로 적용됩니다. 이 페이지의 영어 버전을 확인하십시오.