ESP32 ISA reference manual

ballsystemlord
Posts: 6
Joined: Wed Aug 14, 2019 6:16 pm

ESP32 ISA reference manual

Postby ballsystemlord » Wed Aug 14, 2019 6:42 pm

Hi,
I'm considering the purchase of some ESP32 based boards and I was searching for the ISA reference manual for the core. I've searched https://www.espressif.com/en/support/download/documents , https://docs.espressif.com/projects/esp-idf/en/latest/ , https://en.wikipedia.org/wiki/ESP32 , and I've done a few general internet searches without success (although I have found some outdated guides, like this one: http://0x04.net/~mwk/doc/xtensa.pdf ). I've also found old questions like this one: viewtopic.php?t=293 .

Is such a manual available?
Thanks!

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

Re: ESP32 ISA reference manual

Postby rudi ;-) » Wed Aug 14, 2019 7:20 pm

ballsystemlord wrote:
Wed Aug 14, 2019 6:42 pm
Hi,
I'm considering the purchase of some ESP32 based boards and I was searching for the ISA reference manual for the core. I've searched https://www.espressif.com/en/support/download/documents , https://docs.espressif.com/projects/esp-idf/en/latest/ , https://en.wikipedia.org/wiki/ESP32 , and I've done a few general internet searches without success (although I have found some outdated guides, like this one: http://0x04.net/~mwk/doc/xtensa.pdf ). I've also found old questions like this one: viewtopic.php?t=293 .

Is such a manual available?
Thanks!

welcome in the want isa club :D

i think ..no..

for append to your list:
-further ISA src

cause you found the old question - here is an answer from old question:

In general: The Xtensa docs on the core we use are pretty good. The problem with it is that, as far as I know, we have them because we signed an NDA with Cadence, making it hard to just spread them around. We know this is an issue, and we're working on getting the info out one way or another.


also a warning/info


Please note that this is a pretty old version of ISA RM. It's not easy to diff PDFs so i can't say what exactly has changed, but a brief look shows that at least FPU documentation in that version doesn't match the latest one.


for future question on this ISA theme have a note to the info last sentence:

..we will release up-to-date documentation once we get permission from Cadence


i know, this helps not so much,
but we are waiting for this newer ISA too - so if there is any, i think, espressif will post it in the Docu / Forum
we must be patient on this :)

best wishes
rudi ;-)

edit:
one possible, if @espressif can share a contact adress from Xtensa for making NDA with them ,
perhabs you could get the Information you want to have.
also:
perhabs espressif can share the ISA if it possible if they make NDA with you,
not sure - is this possible too?

edit:
you have knowing about
- this Xtensa a new ISA and Approach ?
- .small collect.
-------------------------------------
love it, change it or leave it.
-------------------------------------
問候飛出去的朋友遍全球魯迪

ballsystemlord
Posts: 6
Joined: Wed Aug 14, 2019 6:16 pm

Re: ESP32 ISA reference manual

Postby ballsystemlord » Wed Aug 14, 2019 11:36 pm

This is so strange. I can get ISA docs on x86, amd64, ARM, and AVR, but not Xtensa.

Maybe a direct request to Cadence would help.

Also interesting is that you could, in theory, reverse engineer the docs from the gcc code to translate programs to LX6 assembly, but nobody appears to have done that yet.

Thanks for your help!

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

Re: ESP32 ISA reference manual

Postby ESP_Angus » Thu Aug 15, 2019 2:46 am

I don't think we have any update to what is shown here:
viewtopic.php?t=293#p1544

Which is unfortunate as we would also like for ESP32 users to be able to access this information.

If you have specific questions about parts of the ISA then feel free to post them on the forum, we'll do our best to answer them.

ballsystemlord
Posts: 6
Joined: Wed Aug 14, 2019 6:16 pm

Re: ESP32 ISA reference manual

Postby ballsystemlord » Fri Aug 16, 2019 9:29 pm


mikronauts
Posts: 23
Joined: Wed Dec 09, 2015 8:11 pm

Re: ESP32 ISA reference manual

Postby mikronauts » Tue Aug 20, 2019 2:35 pm

Very unfortunate.

I was thinking of writing an assembly language virtual machine for my compiler... on other 32 bit risc processors an optimized assembly vm ran 4x+ faster than a C version, in anout 1/10 the space.
ESP_Angus wrote:
Thu Aug 15, 2019 2:46 am
I don't think we have any update to what is shown here:
viewtopic.php?t=293#p1544

Which is unfortunate as we would also like for ESP32 users to be able to access this information.

If you have specific questions about parts of the ISA then feel free to post them on the forum, we'll do our best to answer them.

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

Re: ESP32 ISA reference manual

Postby rudi ;-) » Wed Aug 21, 2019 10:53 am

ESP_Angus wrote:
Thu Aug 15, 2019 2:46 am
If you have specific questions about parts of the ISA then feel free to post them on the forum, we'll do our best to answer them.
hi angus, @espresifer's

we are now too an this point here.
we need the ISA (actually form) on the desk. ( Lx7 )
how we can get it official?
do have espressif a contact address - from where espressif get the things?
can espressif share this info?

i know the theme with microsemi closed documents (Lyra) things is the same, but this is an other theme, ( I use not microsemi products further more if they not share they documents for coding work for the microsemi products ) for user who use microsemi things..

But for future work on this esp series we need indispensable clear statements and sources of income.
further future work with the new esp32s2 and followings we want unfettered working and the ISA on the desk.
no way without Documents on the desk 2020. so in the long term, a solution must be forthcoming.

a) xtensa / cadence gives NDA and ISA
b) espressif gives NDA and ISA

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

ESP_igrr
Posts: 2072
Joined: Tue Dec 01, 2015 8:37 am

Re: ESP32 ISA reference manual

Postby ESP_igrr » 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.

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

Re: ESP32 ISA reference manual

Postby rudi ;-) » Wed Aug 21, 2019 7:12 pm

Hi Ivan

thank you. the email to Cadence USA Headquarter was just going out.
hope they response to the request.
i did this in the past on 2014, also in 2015, and 2016.
never get a response from them, same is with microsemi.
i visit microsemi in eMbeddedWorld 2018 and had a talk with them,
they promissed to answere and send, never done from them.
i got few things then from my school collegus -not official- for my eyes only,
but missed few things for deeper doings with the Lyra serie ( microsemi was very closed )

we have a Cadence "station" in 70 km town, i was in contact with them long time 2015- now ( IP )
but they could not help with ISA and other things; so i checked out only the eda, config and design tools ( IP ) for a time frame.

thank you for your help,
i give them again a try to ask for it ( 2019 ) -
very complex struct to things which you need if you do deeper things but can't cause there is no deeper docu public.



best wishes
rudi ;-)

btw:
( no hurry for this question, if you have time )
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
i ask :)
-------------------------------------
love it, change it or leave it.
-------------------------------------
問候飛出去的朋友遍全球魯迪

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

Re: ESP32 ISA reference manual

Postby ESP_Angus » 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.

Espressif has moved pretty much entirely to gcc, I'm not aware of anyone working with xt-xcc inside the company at all (possible they are for some initial bringup tasks or PHY work but we're otherwise all-in on the open source toolchain.)

Who is online

Users browsing this forum: No registered users and 46 guests