opcodenator is a tool that generates a decoder for a given list of opcodes.
- Provide a list of opcodes.
- opcodenator will identify any collisions or duplicates.
- Merge the colliding/duplicate opcodes into a single opcode.
- Testing, manual stages if needed and final implementation.
It's not a 1 -> 1 solution, takes a bit of manual work but should save a ton of time, and more importantly, it's less error prone than doing this manually.
See example of how I used this to implement a decoder for the AVR instruction set.