Announcing the initial release of the Open Picoblaze Assembler - Opbasm
I have developed a free cross-platform assembler for the Picoblaze-3 and Picoblaze-6 processors which may be of interest to other Picoblaze users. With Opbasm people on non-Windows platforms no longer need to resort to running their assembler through an emulator or VM. It runs faster than the native assemblers while supporting all of the syntax of KCPSM6. Almost all of the new Picoblaze-6 syntax can also be used in Picoblaze-3 designs which greatly improves the development process for the Spartan-3 family. This preserves a forward migration path to Picoblaze-6 supported devices with only a need to reassemble for the different opcodes.
I've retained support for the KCPSM HDL template files along with including an updated Spartan-3 VHDL template which eliminates the warnings about the redundant attributes that are no longer necessary with current versions of XST. Any custom templates you've created will continue to work as before.
For VHDL users I have developed a generic ROM component that can directly read .mem and .hex files in both simulation and synthesis with XST. This allows you to change ROM sizes easily and doesn't require a recompile to test code updates during simulation. It can be used even if you wish to continue using a different assembler.
Also included is a script that implements the data2mem based bitfile ROM updater similar to the utility included with KCPSM3.
Opbasm is available from Google Code where you can take a look at the documentation and download it if it is of interest to you.