Jump to content
    

Отладка на Cortex-A53

Всем привет. Есть плата на Allwinner H5 Cortex-A53 4 ядра. Образ для отладки в SRAM грузится нормально, но выполнения инструкций не происходит, PC не меняется, как будто ни одно ядро не активно. Чтение\запись регистров\памяти, в том числе PC выполняется нормально.

 

Spoiler

    Thu Dec 07, 2023 16:48:48: Serial number: 941000024
    Thu Dec 07, 2023 16:48:48: JTAG speed is initially set to: 1000 kHz
    Thu Dec 07, 2023 16:48:48: Software reset was performed
    Thu Dec 07, 2023 16:48:48: Initial reset was performed
    Thu Dec 07, 2023 16:48:48: TotalIRLen = 4, IRPrint = 0x01
    Thu Dec 07, 2023 16:48:48: JTAG chain detection found 1 devices:
    Thu Dec 07, 2023 16:48:48:  #0 Id: 0x5BA00477, IRLen: 04, CoreSight JTAG-DP
    Thu Dec 07, 2023 16:48:48: DPv0 detected
    Thu Dec 07, 2023 16:48:48: Scanning AP map to find all available APs
    Thu Dec 07, 2023 16:48:48: AP[2]: Stopped AP scan as end of AP map has been reached
    Thu Dec 07, 2023 16:48:48: AP[0]: AHB-AP (IDR: 0x64770001)
    Thu Dec 07, 2023 16:48:48: AP[1]: APB-AP (IDR: 0x44770002)
    Thu Dec 07, 2023 16:48:48: Iterating through AP map to find APB-AP to use
    Thu Dec 07, 2023 16:48:48: AP[0]: Skipped. Not an APB-AP
    Thu Dec 07, 2023 16:48:48: AP[1]: APB-AP found
    Thu Dec 07, 2023 16:48:48: No AP map specified by user. Setting auto-detected AP map.
    Thu Dec 07, 2023 16:48:48: Scanning ROMTbl @ 0x80000000
    Thu Dec 07, 2023 16:48:48: [0]Comp[0] @ 0x81000000: ROM Table
    Thu Dec 07, 2023 16:48:48: Scanning ROMTbl @ 0x81000000
    Thu Dec 07, 2023 16:48:48: [1]Comp[0] @ 0x81010000: Cortex-A53
    Thu Dec 07, 2023 16:48:48: [1]Comp[1] @ 0x81020000: CSS600-CTI
    Thu Dec 07, 2023 16:48:48: Core found. Stopped ROM table scan: https://wiki.segger.com/ROMTableScan
    Thu Dec 07, 2023 16:48:48: Cortex-A53 @ 0x81010000 (detected)
    Thu Dec 07, 2023 16:48:48: CoreCTI @ 0x81020000 (detected)
    Thu Dec 07, 2023 16:48:48: Debug architecture: ARMv8.0
    Thu Dec 07, 2023 16:48:48: 6 code breakpoints, 4 data breakpoints
    Thu Dec 07, 2023 16:48:48: Processor features:
    Thu Dec 07, 2023 16:48:48:   EL0 support: AArch64 + AArch32
    Thu Dec 07, 2023 16:48:48:   EL1 support: AArch64 + AArch32
    Thu Dec 07, 2023 16:48:48:   EL2 support: AArch64 + AArch32
    Thu Dec 07, 2023 16:48:48:   EL3 support: AArch64 + AArch32
    Thu Dec 07, 2023 16:48:48:   FPU support: Single + Double + Conversion
    Thu Dec 07, 2023 16:48:48: Add. info (CPU temp. halted)
    Thu Dec 07, 2023 16:48:48: Current exception level: EL1
    Thu Dec 07, 2023 16:48:48: Exception level AArch usage:
    Thu Dec 07, 2023 16:48:48:   EL0: AArch32
    Thu Dec 07, 2023 16:48:48:   EL1: AArch32
    Thu Dec 07, 2023 16:48:48:   EL2: AArch32
    Thu Dec 07, 2023 16:48:48:   EL3: AArch32
    Thu Dec 07, 2023 16:48:48: Non-secure status: Non-secure
    Thu Dec 07, 2023 16:48:48: Cache info:
    Thu Dec 07, 2023 16:48:48:   Inner cache boundary: none
    Thu Dec 07, 2023 16:48:48:   LoU Uniprocessor: 1
    Thu Dec 07, 2023 16:48:48:   LoC: 2
    Thu Dec 07, 2023 16:48:48:   LoU Inner Shareable: 1
    Thu Dec 07, 2023 16:48:48: I-Cache L1: 32 KB, 256 Sets, 64 Bytes/Line, 2-Way
    Thu Dec 07, 2023 16:48:48: D-Cache L1: 32 KB, 128 Sets, 64 Bytes/Line, 4-Way
    Thu Dec 07, 2023 16:48:48: Unified-Cache L2: 512 KB, 512 Sets, 64 Bytes/Line, 16-Way
    Thu Dec 07, 2023 16:48:48: Found 1 JTAG device, Total IRLen = 4:
    Thu Dec 07, 2023 16:48:48:  #0 Id: 0x5BA00477, IRLen:  4, IRPrint: 0x1 CoreSight JTAG-DP
    Thu Dec 07, 2023 16:48:48: Loaded debugee: tst64.out
    Thu Dec 07, 2023 16:48:48: 300 bytes downloaded (97.66 Kbytes/sec)
    Thu Dec 07, 2023 16:48:48: Download completed.
    Thu Dec 07, 2023 16:48:48: Software reset was performed
    Thu Dec 07, 2023 16:48:48: Target reset
    Thu Dec 07, 2023 16:48:48: Warning: Vector catch is not supported for this CPU core
 

 

Edited by grinux

Share this post


Link to post
Share on other sites

6 минут назад, grinux сказал:

Всем привет. Есть плата на Allwinner H5 Cortex-A53 4 ядра. Образ для отладки в SRAM грузится нормально, но выполнения инструкций не происходит, PC не меняется, как будто ни одно ядро не активно. Чтение\запись регистров\памяти, в том числе PC выполняется нормально.

Может вы к неактивному ядру коннектитесь?

Share this post


Link to post
Share on other sites

8 minutes ago, jcxz said:

Может вы к неактивному ядру коннектитесь?

Может, а как это понять? После подачи питания на плату отрабатывает встроенный бутлоадер. Далее через J-Link commander убедился, что текущий режим выполнения Aarch32. Выбрал в настройках IAR нужное ядро, режим 32bit. Компильнул пустой main, залил средствами Iar. В дизассембере вижу годные инструкции. PC стоит там, где нужно. 

Возможно нужно какие то дополнительные манипуляции совершить перед\после загрузки образа, чтобы активировать нужное ядро?

Edited by grinux

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...