YAM Yet Another Micro-controller
YAM is a micro-controller core aiming at simple yet fast IO sequencing with integer processing capabilities.
The YAM specification has been driven by a few basic ideas.
- Scalable data width from 8 bits to any (like 32 and larger) size.
- Possibly a large number of registers (up to 128 of them).
- Deterministic execution times (no pipeline).
- No privileged mode (definitely a micro-controller style).
- Highly configurable to meet different requirements.
- Keep compact in area and preserve fast clocking, avoiding superfluous sophistication.
Therefore the base instruction list is restricted to a minimal set of instructions. Even the possible extensions have been carefully analyzed against new functionality versus area/speed cost.
- YAM is described in VHDL.
- YAM is software supported by an assembler, yamasm.
Contact
Latest News
YAM assembler 'yamasm' V1.1
YAM assembler yamasm (now versionned as V1.1) has got a number of enhancements; main one being the 3-operand support. YAM core HDL is unchanged (still V1.4). A new component (namely wb_yam) has been added.
YAM first release at OHR
YAM release V1.4 is now available from CERN OHR. The core has been already used in a number of designs at ESRF . However there is still some pending work.