What is a "Soft Processor"?
A soft processor is an intellectual property (IP) core that is implemented in the generic silicon primitives of a Field-Programmable Gate Array (FPGA). This differs from a hard processor like the PowerPCTM in VirtexTM-II Pro, which requires a dedicated silicon macro inside the FPGA. Hard processors are typically only found in the premium FPGA families, while soft processors support all families, including low cost ones like CycloneTM II and SpartanTM-3E. A soft processor typically consists of source code written in a standard hardware description language (HDL) like Verilog or VHDL. The code can normally be configured to make application specific trade-offs between cost, i.e. logic utilization, and performance. The configured processor is integrated with the customer specific design to create a complete, embedded system description. This description is synthesized, mapped and downloaded to the FPGA to implement the actual hardware system. Examples of soft processors are MicroBlazeTM from Xilinx and Nios® II from Altera. There are also soft open source processors, e.g. OpenRISC 1000.
What are the benefits of a soft processor?
Cost reduction: In hardware systems that require an FPGA for other reasons, a soft processor can be used to off-load or replace an external processor.
- Performance I: Several soft processor cores can fit in a single FPGA and be given dedicated tasks like communication, graphics, system monitoring, etc, instead of those tasks being time-shared on a single processor.
- Performance II: Soft processors are not limited by package I/O pin count and are thus better suited for integration with custom hardware accelerators.
- Life cycle: Since the soft processor is written in an HDL it can easily be re-implemented on new generations of FPGA families. This reduces the risk of having to do a costly redesign because of component obsolescence. Many hard processor components have fairly short life cycles and force product owners to make speculative end-of-life purchases in order to avoid a product redesign.
Embedded Software Development Tool Support
A past weakness of soft processors compared to established processors like ARM and PowerPC has been the limited selection of embedded software development tools like; compilers, operating systems and debug solutions. This is changing quickly however. Today, most of the popular soft processors are supported by capable software development tool-suites with an increasing number of third-party vendors adding support to their development tools. For example both MicroBlazeTM and Nios® come with integrated development environments (IDE) based on Eclipse.
Related Products and Services

Soft Carrot Processor