Hi All, I have just finished first read and make some notes about 'epiphany_arch_reference_3.12.12.18'. I have posted some typo. But here and now I have to share some 'OS' related important notes:
++ The 'mesh.memory_map': 32-bit, flat, unprotected, BUT(!) via the periodically set MEMPROTECT reg I 'hope' some semi protection.
+ Well separated memory BANKS,+ The cMesh can accept
writes at the cores 'speed' (nice inter-core communication) -- : but read?!
+ Nice DMA engine without CPU usage! (as usually) (!) The independency point of view is more important than 'acceleration'.
- Caller must save all(?!) FSR,
+/- We need an external agent to start CPU(s),- GID: SET IT IMMEDIATELY(!) on an IT occurring. (!) Before another higher can occur?! (!) FIXME
+ All instruction are available as both
16- and 32-bit instructions (REG0-7, -large immediate contains) (!) minimize code size(!)
+/- Except Load/Store. ALL OTHER INSTRUCTIONS ARE RESTRICTED TO USING REGISTERS(!)
+ post-modify auto-increment addressing: ... stack-pop operation(!)
+++ TESTSET RD, [RN, RM]++ writing ILATST and ILATCL using MOVTS instruction : used to degrade the interrupt priority
+ Dual-ISssue Scheduling Rules.
- DMA does not flags errors on incorrect usage(!)
++ event timers for real-time events with nice sources(!) --- CTIMER{0,1} at the zero counter stops?! and IT issued. (!) FIXME
+ TRAPsWell, It is nice. I have to understand and examine some function more deeply via some test code. Regards, Gabor.