The problem The Xilinx Microblaze soft processor, which is implemented on the FPGA’s logic fabric, is indeed a stable and fully capable processor, but its rather low clock frequency — 70-100 MHz on a Spartan-6 — makes it a problematic candidate for data capture and frame grabbing. When running Linux on Microblaze, the current kernel [...]
If you want to get to it, just go to the Xillybus mini-distro for Microblaze’s page. This distribution is a software kit, which allows you to run a functional Linux system on the SP605 or ML605 hardware evaluation kit (for Spartan-6 and Virtex-6, respectively). All components necessary to build it will be available for download [...]
Scope Even though Xilinx supplies a cute wizard for creating peripherals in its EDK (version 13.2 in my case), it’s just enough to work as a demo. For a real-life case there’s no escape from getting down to the system’s guts. As it turns out, things are pretty well organized under EDK’s hood, which makes [...]
This is part IV of my HOWTO on running Linux on Microblaze. The outline is as follows: Part I: Introduction and setting up the Microblaze processor Part II: Compiling the kernel Part III: Preparing for boot and booting Part IV: Compiling user space applications (this page) Compiling user space applications We shall now look at [...]
This is part III of my HOWTO on running Linux on Microblaze. The outline is as follows: Part I: Introduction and setting up the Microblaze processor Part II: Compiling the kernel Part III: Preparing for boot and booting (this page) Part IV: Compiling user space applications Generating the ACE file The ACE file is what [...]
This is part II of my HOWTO on running Linux on Microblaze. The outline is as follows: Part I: Introduction and setting up the Microblaze processor Part II: Compiling the kernel (this page) Part III: Preparing for boot and booting Part IV: Compiling user space applications Kernel compilation in general Compiling a Linux kernel traditionally [...]
This is part I of my HOWTO on running Linux on Microblaze. The outline is as follows: Part I: Introduction and setting up the Microblaze processor (this page) Part II: Compiling the kernel Part III: Preparing for boot and booting Part IV: Compiling user space applications Introduction This HOWTO goes through the procedures for getting [...]
Spoiler It’s very likely that you don’t need to read this. If all you want is to get a Linux kernel to detect a Microblaze processor on an Xilinx FPGA, the relevant information is in another post of mine. This post goes into the details which are necessary to understand, if you want to write [...]
Introduction The Xilinx Platform Studio (EDK) has this “update bitstream” function, which I wasn’t so clear about, despite its documentation page. Its icon says “BRAM INIT” which turns out to be more accurate than expected. So what happens during this process? When is it necessary? If you’re into running a Linux kernel, you’re most likely [...]
This is a small reverse-engineering of the ELF file, as generated by Xilinx’ SDK for a simple standalone application targeted for the SP605 board. ELF headers Looking into the ELF file, we have something like this: > mb-objdump –headers sdk/peripheral_tests_1/Debug/peripheral_tests_1.elf sdk/peripheral_tests_1/Debug/peripheral_tests_1.elf: file format elf32-microblazele Sections: Idx Name Size VMA LMA File off Algn 0 .vectors.reset [...]