Soft microprocessor
A soft microprocessor (also called softcore microprocessor or a soft processor) is a microprocessor core that can be wholly implemented using logic synthesis. It can be implemented via different semiconductor devices containing programmable logic (e.g., FPGA, CPLD).
Most systems, if they use a soft processor at all, only use a single soft processor. However, a few designers tile as many soft cores onto a FPGA as will fit[1] . In those multi-core systems, rarely-used resources can be shared between all the cores in a cluster, leading to Jan's Razor.
Jan's Razor: In a chip multiprocessor design, strive to
leave out all but the minimal kernel set of features from each processing element, so as to maximize processing
elements per die.[2]
— Jan Gray
Core comparison
Processor | Developer | Open Source | Bus Support | Notes | Project Home |
---|---|---|---|---|---|
TSK3000A | Altium | No - Royalty Free | Wishbone | 32-bit R3000 style RISC Modified Harvard Architecture CPU | Embedded Design on Altium Wiki |
TSK51/52 | Altium | No - Royalty Free | Wishbone / 8051 | 8-bit 8051 instruction set compatible, lower clock cycle alternative | Embedded Design on Altium Wiki |
OpenSPARC T1 | Sun | Yes | 64-bit | OpenSPARC.net | |
MicroBlaze | Xilinx | No | PLB, OPB, FSL, LMB | Xilinx MicroBlaze | |
PicoBlaze | Xilinx | Yes | Xilinx PicoBlaze | ||
Nios, Nios II | Altera | No | Altera Nios II | ||
Cortex-M1 | Arm | No | [1] | ||
Mico32 | Lattice | Yes | Wishbone | LatticeMico32 | |
LEON 3 | ESA | Yes | AMBA | SPARC V8 compatible in 25k gates | Gaisler |
OpenRISC | OpenCores | Yes | 32-bit; Done in ASIC, Altera, Xilinx | OR1K | |
AEMB | Shawn Tan | Yes | Wishbone | MicroBlaze EDK 3.2 compatible Verilog core | AEMB |
OpenFire | Virginia Tech CCM Lab | Yes | OPB, FSL | Binary compatible with the MicroBlaze | [] |
PacoBlaze | Pablo Bleyer | Yes | Compatible with the PicoBlaze processors | PacoBlaze | |
xr16 | Jan Gray | No | XSOC abstract bus | 16-bit RISC CPU + SoC featured in Circuit Cellar Magazine #116-118 | XSOC/xr16 |
See also
- SoC (System-on-a-chip)
- SoPC (System on Programmable Chip)
- FPGA (Field-programmable gate array)
- reconfigurable computing
References
- ^ [http://www.embedded.com/columns/showArticle.jhtml?articleID=192700615 "FPGA Architectures from 'A' to 'Z'"] by Clive Maxfield 2006
- ^ [http://www.fpgacpu.org/log/mar02.html#020305 "Multiprocessors, Jan's Razor, resource sharing, and all that "] by Jan Gray 2002
External links
- Detailed Comparison of 12 Soft Microprocessors
- FPGA CPU News
- Freedom CPU website
- Microprocessor cores on Opencores.org
- NikTech 32 bit RISC Microprocessor MANIK. Is a complete processor available for FREE, includes DDR Controller, ETHERNET Mac.GCC, binutils complete build environment for cygwin is also provided. The developer resources also provide examples and SOCs for XILINX / DIGILENT Spartan Starter kits. A useful system can be built in the 200K Spartan 3 kit.
This microcomputer- or microprocessor-related article is a stub. You can help Wikipedia by expanding it.