Der PicoBlaze wird überwiegend in Assembler programmiert. Gegenwärtig stehen dem Anwender zwei Software-Produkte zur Verfügung: eine integrierte Entwicklungsumgebung pBlazeIDE von Mediatronix und der KCPSM3-Assembler von Xilinx. In Bild 3 ist in einem Workflow-Diagramm die Software-Entwicklung für den PicoBlaze mit dem KCPSM3-Assembler dargestellt.
Die Software-Entwicklung lässt sich im Wesentlichen in drei Phasen aufteilen. Die erste Phase sind die Software-Erstellung und die Assemblierung mit dem KCPSM3-Assembler. Ein Assembler-Programm wird mit einem Texteditor geschrieben und anschließend mit dem KCPSM3-Assembler übersetzt. Dabei greift der Assembler auf Dateien mit vordefinierter Beschreibung des Programmspeichers zu. Bei einer fehlerfreien Übersetzung werden neben Protokolldateien vor allem Dateien mit dem Inhalt des Programmspeichers in binärer Form generiert. Die zweite Phase umfasst die Integration der Applikation in eine VHDL-Umgebung. Dabei wird der binäre Speicherinhalt zusammen mit der VHDL-Beschreibung des PicoBlaze (kcpsm3.vhd) mit einem VHDL-Compiler übersetzt. Anschließend kann das Laufzeitverhalten des Programms im Rahmen einer Simulation verifiziert werden. Diese Phase entspricht weitgehend dem Debuggen von Programmen in der Software-Entwicklung für herkömmliche Prozessoren. Die dritte und letzte Phase ist die Synthese mit optionaler Fehlersuche mit ChipScope. Genauso wie in der zweiten Phase wird der binäre Speicherinhalt zusammen mit der VHDL-Beschreibung des PicoBlaze (kcpsm3.vhd) mit einem VHDL-Synthese-Tool analysiert und bis zur fertigen Schaltung synthetisiert. Optional kann die Schaltung mit dem ChipScope direkt auf dem FPGA analysiert werden. fr