ESP32 ISA reference manual

User avatar
rudi ;-)
Posts: 1491
Joined: Fri Nov 13, 2015 3:25 pm

Re: ESP32 ISA reference manual

Postby rudi ;-) » Sat Aug 24, 2019 11:38 am

ESP_Angus wrote:
Thu Aug 22, 2019 1:16 am
Hi rudi,
rudi ;-) wrote:
Wed Aug 21, 2019 7:12 pm
do you know, is there a config file for LX6, LX7 for the xt-gcc ( LX106 ) and can we theoretical use the xt-gcc (lx106) with an LX6, LX7 config file or do we need a full new xt-gcc compiler for each ( Lx6, Lx7 ) ? for esp8266(lx106) i use parallel xt-gcc from cadence - so
Do you mean xt-xcc (the Cadence/Tensilica compiler, not based on gcc)?

In theory you need the compiler to match the CPU that you have, so esp8266/lx106 compiler is not suitable for ESP32 or ESP32-S2. In practice maybe the code will run (as ESP8266 CPU is mostly simpler than newer CPUs) but it won't use newer features, will use call0 ABI not windowed, etc - code will overall be less optimised.
hi angus,

yes u are right, i mean the XT-XCC compiler, ( typo finger crossed )
use older version (bin) xt-xcc version 8.0.1.1 (xcc-lib) xt-xcc version 8.0.1
but i use also the open src gcc compiler for 8266's

for each target we need then an own (lx106, Lx6, Lx7) compiler?
i thinked allways it is enough to have the target config file (lx106-params) / (lx***-params) for each and would be enough.
ok learned a part now from you :) i am not the compiler build prof in this
or I'm too relaxed on vacation and my brain is on reserve. / switched off.
so i know my next lession for this winter for deeper look in.
never stop going learing - :)


thank you
best wishes
rudi ;-)

edit:

[Q]:
from read, ESP32 is LX6 core and ESP32S2 is LX7 (64 FLOP) core
we use/get then a different toolchain ( compiler ) for ESP32S2 ?
The toolchain tuple is xtensa-esp32s2-elf-, for example gcc for this target is named xtensa-esp32s2-elf-gcc.
right?

edit:
I think I've mixed apples and pears now.
the (cross) compiler build needs the config params
for the toolchain. I really thought now
this config params file is enough
to use with the END (cross) compiler that was formed.
I'm happy to be on vacation - so much mixed up in my head :)
hope I come back in order :)
(( but can not keep his fingers off the computer just turn it off :) ))
but the knowledge about compiler construction itself is intensified in the winter,
I have since discovered a few gaps in knowledge with me, to which I had no answer.
I have to change that and improve it
thanks angus !!
-------------------------------------
love it, change it or leave it.
-------------------------------------
問候飛出去的朋友遍全球魯迪

ESP_Angus
Posts: 2013
Joined: Sun May 08, 2016 4:11 am

Re: ESP32 ISA reference manual

Postby ESP_Angus » Mon Aug 26, 2019 1:08 am

rudi ;-) wrote:
Sat Aug 24, 2019 11:38 am
for each target we need then an own (lx106, Lx6, Lx7) compiler?
i thinked allways it is enough to have the target config file (lx106-params) / (lx***-params) for each and would be enough.
You might be right for XT-XCC, I don't actually have a copy of the compiler to check. Although if your compiler is older than the LX7 core design, it may need updating also.
rudi ;-) wrote:
Sat Aug 24, 2019 11:38 am
from read, ESP32 is LX6 core and ESP32S2 is LX7 (64 FLOP) core
we use/get then a different toolchain ( compiler ) for ESP32S2 ?
The toolchain tuple is xtensa-esp32s2-elf-, for example gcc for this target is named xtensa-esp32s2-elf-gcc.
Yes, when using GCC a new toolchain is needed for each new CPU variant. xtensa-esp32s2-elf-gcc is the cross-compiler for ESP32S2.

User avatar
rudi ;-)
Posts: 1491
Joined: Fri Nov 13, 2015 3:25 pm

Re: ESP32 ISA reference manual

Postby rudi ;-) » Tue Aug 27, 2019 3:09 am

ESP_Angus wrote:
Mon Aug 26, 2019 1:08 am
rudi ;-) wrote:
Sat Aug 24, 2019 11:38 am
for each target we need then an own (lx106, Lx6, Lx7) compiler?
i thinked allways it is enough to have the target config file (lx106-params) / (lx***-params) for each and would be enough.
You might be right for XT-XCC, I don't actually have a copy of the compiler to check. Although if your compiler is older than the LX7 core design, it may need updating also.
yes i am right -
i have no copy i work with the origin.
i will check the update possibles.
ESP_Angus wrote:
Mon Aug 26, 2019 1:08 am
rudi ;-) wrote:
Sat Aug 24, 2019 11:38 am
from read, ESP32 is LX6 core and ESP32S2 is LX7 (64 FLOP) core
we use/get then a different toolchain ( compiler ) for ESP32S2 ?
The toolchain tuple is xtensa-esp32s2-elf-, for example gcc for this target is named xtensa-esp32s2-elf-gcc.
Yes, when using GCC a new toolchain is needed for each new CPU variant. xtensa-esp32s2-elf-gcc is the cross-compiler for ESP32S2.
txs
-------------------------------------
love it, change it or leave it.
-------------------------------------
問候飛出去的朋友遍全球魯迪

User avatar
rudi ;-)
Posts: 1491
Joined: Fri Nov 13, 2015 3:25 pm

Re: ESP32 ISA reference manual

Postby rudi ;-) » Sun Dec 22, 2019 10:14 pm

ESP_igrr wrote:
Wed Aug 21, 2019 11:28 am
Hi Rudi,
It is possible to get the ISA reference manual (and the rest of the Xtensa SDK, in fact) from Cadence under NDA. A few of our customers did get access to the xt-xcc compiler from Cadence this way. You can contact Cadence directly (saying that you are developing a product based on the ESP32, and explaining what you need) or ask your Espressif sales representative to help contacting Cadence.
The license terms of Xtensa tools do not allow Espressif to transfer them to customers, though. There have been multiple discussions with Cadence about this, but for now the situation has not changed.
Hi Ivan
FYI: they never respond to us.
We will change some usecases and things in 2020 and so this will not further more annoy us.
its a sadnees, but we get fully docu and technicals from other IP / manufacturer / other MCU, but not from cadence/tensilica. they never respond to us, same is/was with microsemi. so the two companies are for us in 2020 and up not on the top list further more.
I don't like these dependencies anymore in IoT.
you hang by the thread. you can no longer be responsible for something like this towards employees. when customer questions and requests cannot be answered or processed because certain details fail. you would like to know what is inside and how you can work with it if you put your hand in the fire. something like that goes well for a while, but it doesn't work in the long run. and 12 years are long. It depends on the experience account.
if the new ESP32S3 and up comes - i hope it will be a think change on it.
it has more future - more technics and we need then more answeres more input.
i hope there is an open port for all - but i think it will be closer and closer - many things what was at start opensource are now in blow bins / libs...anyway..

Xmas and New Year comes Ivan. Wish you and your Team all the Best for 2020. Perhabs we see us in eMbeddedWorld 2020.
i read, espressif will be there in 2020 You did a great work Ivan!

best wishes
rudi ;-)
-------------------------------------
love it, change it or leave it.
-------------------------------------
問候飛出去的朋友遍全球魯迪

Who is online

Users browsing this forum: No registered users and 0 guests