Keil "INTERNAL PARAMETER ERROR" Programming STM32H7 CM4 Core

I am working on programming a custom-designed board featuring the STM32H747IGT6 MCU using the Keil MDK-ARM environment. While I can successfully program and debug the Cortex-M7 (CM7) core, I encounter an "INTERNAL PARAMETER ERROR" when attempting to flash the Cortex-M4 (CM4) core.

Current Configuration:

  • Software Versions:

    • STM32CubeMX: 6.8.1

    • Keil MDK: 5.31 with the latest Device Family Pack (DFP) version 4.1

  • Debugger:

    • STLINK-V3SET

  • Memory Allocation (as per STM32H747IGT6 Reference Manual):

    • IROM1: Start Address = 0x08100000, Size = 0x00100000

    • IRAM1: Start Address = 0x10000000, Size = 0x00048000

    • RAM for Algorithm: Start Address = 0x10000000, Size = 0x00001000

I have also experimented with alternative IRAM1 configurations via Keil's "Options for Target" settings, but the issue persists.

Observations:

  • The CM4 core can be programmed successfully using the STM32 Programmer tool, indicating that the hardware is functional.

  • I have followed the guidelines provided in ST's Application Note AN5286 for dual-core programming with Keil MDK, but the "INTERNAL PARAMETER ERROR" remains unresolved.

Request for Assistance:

Could you please advise on any specific code modifications, hardware pin configurations, or STM32CubeMX settings that are necessary to resolve this issue? Any insights into potential causes or solutions would be greatly appreciated.