cancel
Showing results for 
Search instead for 
Did you mean: 

STM32N6 NPU inference stuck at LL_ATON_RT_RunEpochBlock (no IRQ fired)

seokjs
Visitor

안녕하세요,

현재 STM32N657-DK 와 X-CUBE-AI(ST Edge AI Core v2.2.0)를 사용하고 있습니다 .
TensorFlow Lite 모델을 NPU에서 실행되도록 변환했으며, 펌웨어를 성공적으로 빌드하고 플래싱할 수 있습니다.

seokjs_0-1758778760868.png

하지만 내가 전화하면:

 ret = LL_ATON_RT_RunEpochBlock(&NN_Instance_Default);

함수가 결코 반환되지 않습니다.

내가 이미 구성한 것

  1. 시계 및 재설정

    • NPU 클럭을 활성화하고 재설정을 해제했습니다.

       
      __HAL_RCC_NPU_CLK_ENABLE(); __HAL_RCC_NPU_FORCE_RESET(); __HAL_RCC_NPU_RELEASE_RESET();
    • set_clk_sleep_mode()에서도 슬립 모드 클록이 활성화됩니다.

  2. 인터럽트 라우팅

    • 보안 프로젝트에서:

       
      NVIC_DisableIRQ(NPU3_IRQn); NVIC_ClearPendingIRQ(NPU3_IRQn); NVIC_SetTargetState(NPU3_IRQn); // 비보안으로 경로 지정
    • NonSecure 프로젝트에서:

       
      HAL_NVIC_SetPriority(NPU3_IRQn, 0 , 0 ); HAL_NVIC_EnableIRQ(NPU3_IRQn); void NPU3_IRQHandler ( void ) { printf ( ">> NPU IRQ가 실행됨\r\n" ); ATON_STD_IRQHandler(); }
  3. RIF / RISAF 구성

    • NPU 마스터/슬레이브 속성을 비보안 + 특권으로 구성했습니다.

    • NonSecure에서 NPU RAM3~RAM6(0x3420_0000~0x343C_0000)에 액세스할 수 있도록 RISAF 구성을 추가했습니다.

       
      RISAF_ConfigRegion( 3 , 0x34200000 , 0x70000 , RISAF_ATTR_비보안 | RISAF_ATTR_PRIV); RISAF_ConfigRegion( 4 , 0x34270000 , 0x70000 , RISAF_ATTR_비보안 | RISAF_ATTR_PRIV); RISAF_ConfigRegion( 5 , 0x342E0000 , 0x70000 , RISAF_ATTR_비보안 | RISAF_ATTR_PRIV); RISAF_ConfigRegion( 6 , 0x34350000 , 0x70000 , RISAF_ATTR_비보안 | RISAF_ATTR_PRIV);
  4. 활성화 버퍼

    • 32바이트 정렬로 .noncacheable 섹션에 선언되었습니다.


문제

위의 모든 구성에도 불구하고:

  • LL_ATON_RT_RunEpochBlock()이 끝나지 않습니다.

  • ret은 LL_ATON_RT_DONE에 도달하지 않습니다.

  • NPU IRQ(NPU3_IRQn)가 트리거되지 않는 것 같습니다.


질문

  1. NPU가 비보안 환경에서 IRQ를 생성할 수 있도록 하려면 추가적인 RISAF 또는 RIF ​​구성이 필요합니까?

  2. Epoch Controller 인터럽트를 활성화하려면 ATON_INTCTRL 레지스터(예: ATON_INTCTRL_CTRL_SET_EN, ATON_INTCTRL_INTORMSK0_SET)를 명시적으로 구성해야 합니까 ? 아니면 X-CUBE-AI가 이를 자동으로 처리해야 합니까?

  3. 이 문제가 NPU 메모리 영역 속성 (캐시 가능 대 캐시 불가능) 과 관련이 있을 수 있나요 ? 그렇다면 권장되는 구성은 무엇인가요?

  4. 보안/비보안 TrustZone 프로젝트에서 STM32N6 NPU 인터럽트 라우팅(NPU3_IRQn) 과 관련하여 알려진 문제가 있습니까 ?


응원해주셔서 감사합니다.
감사합니다.
[seokjs]

 

0 REPLIES 0