1 The Microblaze soft-processor

The MicroBlaze is soft-core 32 bit Harvard-style processor described in HDL (Hardware Description Language). It was released by Xilinx recently[10]. Figures [*] shows the design loaded in the FPGA. The buses of the processor follow the Core Connect standard from IBM[14]. Also, a debug module has been included in order to be able to perform an intrusive debug of the processor using the GNU tool gdb[13].

Figure: Locomotion controller scheme loaded in the FPGA
\includegraphics[%
scale=0.6]{ps/fpga-system.eps}

C language can be used to design both the controller and the position computing algorithms. As the whole system (memory, buses, peripherals and processor) is being described in HDL, the hardware architecture is much simpler than traditional processor board architectures. A modification of the controller system, only needs the loading a new design into the FPGA. No PCB modification is necesary. Thus, testing and debugging stages of the design are a much simpler task. This is a fundamental feature, since robotics is a field where testing is not only a simulating task, when a modification to the hardware system is made. The Cube prototype can loads the new system in microseconds.

Traditional robotic systems have separated hardware and software design stages, the hardware system is constructed once and then the software is loaded as many times as needed to make it work. The use of an FPGA in Cube gives this robot the facility to have many hardware and software design stages so achieving desired results. It adds more flexibility in the design stages.

Finally, as the Microblaze is being designed to use very little space in the FPGA (near a 10% of a SpartanIIE400 chip is used for the Cube controlling system), all the space left can be used to implement extra hardware.

Juan Gonzalez 2004-10-08