PSoC3 is a 8051 core, PSoC5 is a ARM-Cortex M3. Different startup code, different instruction set, different libaries (due to different compilers), different code optimizations.
If you really need to get it smaller (right now there is plenty of room left), turn on better optimizations.
1 of 1 people found this helpful
The 8051 is a very old design and its internal structure is not optimized to run stack-oriented languages as C. Optimization is difficult with only a few registers which have dedicated functionality and nearly no (256 bytes) stack.
On the other hand is a RISC with a mostly symmetrical set of registers, an nearly unlimited stack depth. The optimization usually frees 50% flash compared to no optimization.
The only advice I can give you is: Use a PSoC5
Thank you. It seemed to me that in other projects it was not so noticeable.
I'll keep that in mind.