Boot Mode Header - Adresskonflikt

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Lucie2512
Level 1
Level 1
25 sign-ins 5 replies posted 10 sign-ins

Hallo an alle.
Ich bin neu in der AURIX Entwickung und im Forum. Deshalb versuche mich langsam an Euch und an den Controller ranzutasten.
Durch die meine Tätigkeit verfüge ich über einige TC234LX aus dem Automotive Bereich , die ich nun zu neuem Leben erwecken möchte. Ich versuche durch Beispiele einen fundamentalen Überblick zu bekommen und merkte schon nach dem ersten Kontakt mit AURIX das , dass ein steiniger Weg wird. Die ARM Entwicklung ist deutlich einfacher.
Ich habe nun die AURIX Entwicklungsumgebung und die Hightec Free Toolchain installiert und zur Verfügung.
Mir liegt die Hightec Umgebung. Sie orientiert sich mehr an GCC als der Tasking Compiler bei Infineon.
Nun zur Frage:
Die IDE's geben bei den Beispielen für den TC234 unterschiedliche Adressen für den(die) BMH aus. Bei der Infineon IDE liegt er bei 80000000h und Hightec linkt auf A0000000h. Laut Datenblatt liegt der verfügbare Flash bei 2M. Die Memory-Map im User Manual weist aber 2 Bereiche mit 2M aus!? Diese liegen bei 80000000h UND bei A0000000h. Die ENTRY's allerdings liegen bei Beiden auf 80000020h.??Welcher Speicherbereich ist nun zu wählen und ist A00000000 überhaupt durch DAP per MiniWiggler beschreibbar?? Oder habe ich eine kompletten Denkfehler.
Auszug Table 4-2 des User Manual
8 8000 0000H - 801F FFFFH
2 Mbyte TC23x: Program Flash
(PFlash)
10 A000 0000H - A01F FFFFH
2 Mbyte TC23x: Program Flash
(PFlash)
Ein Auszug der Memory Map von Hightec :
//
// .bmhd_0_org
// SHT_PROGBITS [0xa0000000 - 0xa000001f]
// ram:a0000000-ram:a000001f
//
BMHD XREF[2]: _elfProgramHeaders::000000a8(*),
_elfSectionHeaders::00000034(*)
a0000000 20 00 sub.a a10,#0x0
a0000002 00 80 rfe
a0000004 70 ?? 70h p
a0000005 03 ?? 03h
a0000006 59 ?? 59h Y
a0000007 b3 ?? B3h
a0000008 00 ?? 00h
a0000009 00 ?? 00h
a000000a 00 ?? 00h
a000000b 00 ?? 00h
a000000c 00 ?? 00h
a000000d 00 ?? 00h
a000000e 00 ?? 00h
a000000f 00 ?? 00h
a0000010 00 ?? 00h
a0000011 00 ?? 00h
a0000012 00 ?? 00h
a0000013 00 ?? 00h
a0000014 00 ?? 00h
a0000015 00 ?? 00h
a0000016 00 ?? 00h
a0000017 00 ?? 00h
a0000018 b4 ?? B4h
a0000019 b5 ?? B5h
a000001a e9 ?? E9h
a000001b 49 ?? 49h I
a000001c 4b ?? 4Bh K
a000001d 4a ?? 4Ah J
a000001e 16 ?? 16h
a000001f b6 ?? B6h


Auszug Infineon IDE:
//
// .rodata.bmhd_0
// SHT_PROGBITS [0x80000000 - 0x8000001f]
// ram:80000000-ram:8000001f
//
_lc_gb_bmh_0 XREF[3]: Entry Point(*),
BootModeHeader_0 _elfProgramHeaders::00000048(*),
_elfSectionHeaders::000005d4(*)
80000000 00 00 00 undefine
00 70 00
59 b3 00
80000000 00 undefined100h [0] XREF[3]: Entry Point(*),
_elfProgramHeaders::00000048(*),
_elfSectionHeaders::000005d4(*)
80000001 00 undefined100h [1]
80000002 00 undefined100h [2]
80000003 00 undefined100h [3]
80000004 70 undefined170h [4]
80000005 00 undefined100h [5]
80000006 59 undefined159h [6]
80000007 b3 undefined1B3h [7]
80000008 00 undefined100h [8]
80000009 00 undefined100h [9]
8000000a 00 undefined100h [10]
8000000b 00 undefined100h [11]
8000000c 00 undefined100h [12]
8000000d 00 undefined100h [13]
8000000e 00 undefined100h [14]
8000000f 00 undefined100h [15]
80000010 00 undefined100h [16]
80000011 00 undefined100h [17]
80000012 00 undefined100h [18]
80000013 00 undefined100h [19]
80000014 00 undefined100h [20]
80000015 00 undefined100h [21]
80000016 00 undefined100h [22]
80000017 00 undefined100h [23]
80000018 64 undefined164h [24]
80000019 b8 undefined1B8h [25]
8000001a 1e undefined11Eh [26]
8000001b 79 undefined179h [27]
8000001c 9b undefined19Bh [28]
8000001d 47 undefined147h [29]
8000001e e1 undefined1E1h [30]
8000001f 86 undefined186h [31]

0 Likes
1 Solution
Jeremy_Z
Moderator
Moderator
Moderator
1000 replies posted 250 sign-ins 100 likes received

Hi @Lucie2512 ,
Vielen Dank für Ihr Interesse an Halbleiterprodukten von Infineon und für die Möglichkeit, Sie zu bedienen.
Ja, das Ökosystem des ARM ist definitiv größer als das des Tricore, sodass es einfacher ist, auf mehr Material, Tutorials usw. zuzugreifen.
Zurück zu dieser Frage, entweder 0x8000_0000 ~ 0x801f_ffff oder 0xA000_0000 ~ 0xa01f_ffff Ports zum Flash, der einzige Unterschied besteht darin, die Cache-Funktion zu unterstützen oder nicht.
Die BMHs befinden sich also tatsächlich an derselben Adresse, außerdem ist die Standard-Cache-Funktion deaktiviert, was dazu führte, dass verschiedene Mechanismen im AURIX ™ Development Studio und der HighTec Development Platform identisch waren.
Hoffe das ist klar.
BR,
Jeremy

 

Hi @Lucie2512 
Thank you for your interest in Infineon Semiconductor products and for the opportunity to serve you.
Yes, the ecosystem of the ARM is definitely bigger than the Tricore, so it's easier to access more material, tutorials, etc.
Back to this question, either 0x8000_0000~0x801f_ffff or 0xA000_0000~0xa01f_ffff ports to the Flash, the only difference is supporting the cache feature or not.
So the BMHs are located at the same address actually, further, the default cache feature is disabled, which led to the effect of different mechanisms in the AURIX™ Development Studio and HighTec Development Platform being identical.
Hope this is clear.
BR,
Jeremy

 

2023-03-08_10h59_31.png

 

View solution in original post

0 Likes
2 Replies
Jeremy_Z
Moderator
Moderator
Moderator
1000 replies posted 250 sign-ins 100 likes received

Hi @Lucie2512 ,
Vielen Dank für Ihr Interesse an Halbleiterprodukten von Infineon und für die Möglichkeit, Sie zu bedienen.
Ja, das Ökosystem des ARM ist definitiv größer als das des Tricore, sodass es einfacher ist, auf mehr Material, Tutorials usw. zuzugreifen.
Zurück zu dieser Frage, entweder 0x8000_0000 ~ 0x801f_ffff oder 0xA000_0000 ~ 0xa01f_ffff Ports zum Flash, der einzige Unterschied besteht darin, die Cache-Funktion zu unterstützen oder nicht.
Die BMHs befinden sich also tatsächlich an derselben Adresse, außerdem ist die Standard-Cache-Funktion deaktiviert, was dazu führte, dass verschiedene Mechanismen im AURIX ™ Development Studio und der HighTec Development Platform identisch waren.
Hoffe das ist klar.
BR,
Jeremy

 

Hi @Lucie2512 
Thank you for your interest in Infineon Semiconductor products and for the opportunity to serve you.
Yes, the ecosystem of the ARM is definitely bigger than the Tricore, so it's easier to access more material, tutorials, etc.
Back to this question, either 0x8000_0000~0x801f_ffff or 0xA000_0000~0xa01f_ffff ports to the Flash, the only difference is supporting the cache feature or not.
So the BMHs are located at the same address actually, further, the default cache feature is disabled, which led to the effect of different mechanisms in the AURIX™ Development Studio and HighTec Development Platform being identical.
Hope this is clear.
BR,
Jeremy

 

2023-03-08_10h59_31.png

 

0 Likes

Hallo Jeremy.

Vielen Dank für deine schnelle , SEHR hilfreiche Rückantwort. Das war sicherlich nicht die letzte Frage......

Mit freundlichen Grüßen Lucien Lange.   

0 Likes