05-04-2011 01:03 AM - edited 05-05-2011 07:46 AM
Just as Jonathon did previously, if you would like to help in the testing of this assembler then please email me privately (do not make a request on this forum). My email address is provide on page 3 of 'KCPSM3_Manual.pdf' as well as in various KCPSM3 files.
Remember, this is very much intended to be an interim solution for users. When possible, I would recommend users to continue using the original tools provided with KCPSM3 as that solution is known to be stable. Then when possible to move fully over to KCPSM6 and the newer generations of silicon devices.
Principal Engineer, Xilinx UK
05-05-2012 09:39 AM
Ken, et. al.,
It has been about a year since the last post. Was there ever any resolution about a 64 bit KCPSM3?
I recently tried the Spartan 3 PicoBlaze and ran into the 64 bit compatibility issue. I worked around it for the assembler by using a virtual machine to do the assembly. A bit of a pain, but it works.
The Spartan 3 stuff is for my home/hobby projects, but I am using PicoBlaze on a Virtex 6 at work (I do the software). While PicoBlaze itself is a very clever and elegant piece of engineering, the assembler leaves a bit to be desired.
I searched for a better one and couldn't find much. It appears the Mediatronix one is not well supported and I don't even know if PB6 is actually supported. So, I wanted to share my solution in case anyone else has sufficiently complex PB software to want things like expressions, includes files, data segment definitions and such.
There is a table-driven cross assembler called TASM (search for TASM SVS -- you'll get a Comcast user's page). I created my own table for the PB6 and then wrote utilities to convert the object output to the hex and vhdl files needed by the Xilinx tools. I have been using it to build and then download via the Jtag loader and works great.
Don't let the TASM home page fool you. This assembler has been around for a decade or two and is very powerful. A license is $25 and includes source code. (It is shareware so you can try it first.) I actually used this software in the late '80 and early '90s in a course I taught and I was surprised to see it still available. It has "changed hands" a couple of times, but it appears that the original author is still involved.
If anyone is interested in more information about the PB table and conversion tools, let me know. I should point out that I did not make a table for PB3, which is why I was looking for a 64 bit solution for KCPSM3. The table should not be hard, escpecially with the PB6 table as an example.
05-07-2012 01:57 AM
Mediatronix has created a command line assembler. There is also a PB6 version. Only the win32 executables are distributed at their website, but since it's open source you should be able to recompile it for win64 if necessary.
05-08-2012 02:01 AM
Usually there are no problems running Win32 apps on 64bit Windows, since there is an automatic compatability mode. I have tested all apps from the pBlazXXX family on W64.
New additions, by the way, are the bitstream update utility pBlazBIT, and a disassembler pBlazDIS.
Henk van Kampen
05-08-2012 02:49 AM
Henk and Maarten,
I can confirm that pBlzASM6 runs on Win7/64.
Henk, I meant no disrespect to Mediatronix with my post about TASM. I just couldn't tell how well supported the Mediatronix tools were. Does the IDE support simulation of PicoBlaze 6? Is there any consice documenation on the assembler syntax and use?
05-08-2012 06:22 AM
pBlazASM6 supports Picoblaze-6.
Compared to KCPSM6 it has the option to pre-initialize scratchpad memory. There is no need for long lists of LOAD&RETURN to represent a string.
Have a look at:
It is all open-source. A win32 executable can be downloaded from:
There is also support for Picoblaze-3.
Henk van Kampen