Variable Length Encoding (VLE) is new on the e200z6 and z3 implementations of the e200 platform and will be used on all implementations of the core going forward. The main goal of the VLE is to deliver greater code density, a 30% reduction in code size, allowing more code to be put in less flash. This is accomplished by having the ability to execute both 16 and 32 bit instructions. The left hand columns of the chart shown here illustrate what improvements can be expected by implementing the VLE instruction set. It’s important to realize that by implementing and executing 16-bit instructions vs. the full 32-bit instructions, performance is compromised by roughly 5-10%.