Soft microprocessor

Un processador softcore és un processador (CPU) implementat en un sistema reprogramable com una FPGA. Es coneix com un sistema en un xip programable (System on a Programmable Chip o SOPC).

Es pot implementar utilitzant una síntesi lògica, fent servir diferents dispositius semiconductors lògics programables, com per exemple (ASIC, FPGA, CPLD,etc). La majoria dels sistemes utilitzant un únic microprocessador, no obstant, hi ha alguns dissenyadors que fan servir més d'un processador sobre una FPGA.
Té l'avantatge de la capacitat de configurar-se de forma òptima, eliminar les funcionalitats innecessàries, o fins i tot modificar el codi del compilador amb les seves característiques.
És improbable que cap proveïdor important de processadors d'alt rendiment com Intel o IBM ofereixi una versió soft dels seus processadors, ja que posaria a l'abast moltes propietats intel·lectuals.
El processador soft és específic per cada fabricant de FPGA, no obstant existeixen alguns soft processadors de tercers que poden executar FPGAs de diferents proveïdors amb suport d'unes eines de software.

Una comparació entre els avantatges i desavantatges de cada processador (com mostra la següent taula), a primera vista el Hard sembla més preferible que el soft processador, però malgrat això, el soft té més avantatges, ja que es pot configurar o eliminar qualsevol funcionalitat innecessària.

Taula d'avantatges

modifica
Soft Processador Hard Processador
Previsió Menys Més
Configuració Alt Baix
Eines de software Menys Més
Rapidesa baix Alt

Comparació de nuclis

modifica
Processor Developer Open Source Bus Support Notes Project Home Description Language
TSK3000A Altium   Royalty-Free Wishbone 32-bit R3000 style RISC Modified Harvard Architecture CPU Embedded Design on Altium Wiki
TSK51/52 Altium   Royalty-Free Wishbone / Intel 8051 8-bit Intel 8051 instruction set compatible, lower clock cycle alternative Embedded Design on Altium Wiki
OpenSPARC T1 Sun   64-bit OpenSPARC.net Verilog
MicroBlaze Xilinx   PLB, OPB, FSL, LMB, AXI4 Xilinx MicroBlaze
PicoBlaze Xilinx   Xilinx PicoBlaze VHDL, Verilog
Nios, Nios II Altera   Avalon Altera Nios II Verilog
Cortex-M1 ARM   [1] 70-200 MHz, 32bit RISC [2] Verilog
eSi-RISC EnSilica   AMBA AXI, AHB and APB Configurable as 16 or 32-bit. Supports ASIC and FPGA. EnSilica eSi-RISC Arxivat 2010-11-07 a Wayback Machine. Verilog
LatticeMico32 Lattice   Wishbone LatticeMico32 Verilog
LEON2(-FT) ESA   AMBA2 SPARC V8 ESA VHDL
LEON3/4 Aeroflex Gaisler   AMBA2 SPARC V8 Aeroflex Gaisler VHDL
Navré Sébastien Bourdeauducq   Direct SRAM Atmel AVR compatible 8-bit RISC Project page at Opencores Verilog
OpenRISC OpenCores   Wishbone 32-bit; Done in ASIC, Actel, Altera, Xilinx FPGA OR1K Verilog
ARC ARC International, Synopsys   16/32-bit ISA RISC DesignWare ARC Arxivat 2016-12-04 a Wayback Machine. Verilog
pAVR Doru Cuturela   Atmel AVR compatible 8-bit RISC Project page at Opencores VHDL
AEMB Shawn Tan   Wishbone MicroBlaze EDK 3.2 compatible AEMB Verilog
OpenFire Virginia Tech CCM Lab   OPB, FSL Binary compatible with the MicroBlaze [3] Arxivat 2009-07-24 a Wayback Machine. [1] Verilog
SecretBlaze LIRMM, University of Montpellier / CNRS   Wishbone MicroBlaze ISA, VHDL SecretBlaze VHDL
RISC-V UC Berkeley   RISC-V ISA, Xilinx Zynq riscv.org Chisel
SYNPIC12 Miguel Angel Ajo Pelayo   MIT PIC12F compatible, program synthesised in gates nbee.es VHDL
PacoBlaze Pablo Bleyer   Compatible with the PicoBlaze processors PacoBlaze Verilog
CPU86 HT-Lab   8088 compatible CPU in VHDL cpu86 Arxivat 2015-05-16 a Wayback Machine. VHDL
xr16 Jan Gray   XSOC abstract bus 16-bit RISC CPU + SoC featured in Circuit Cellar Magazine #116-118 XSOC/xr16 Schematic
JOP Martin Schoeberl   SimpCon / Wishbone (extension) Stack oriented, hard real-time support, executes Java bytecode directly Jop VHDL
ERIC5 Entner Electronics   9-bit RISC, very small size, C-programmable ERIC5 Arxivat 2016-03-05 a Wayback Machine. VHDL
YASEP Yann Guidon   AGPLv3 Direct SRAM 16 or 32 bits, RTL in VHDL Arxivat 2018-08-15 a Wayback Machine. & asm in JS, microcontroller subset : ready yasep.org (Firefox required) VHDL
Zet Zeus Gómez Marmolejo   Wishbone x86 PC clone Zet Arxivat 2013-01-12 at Archive.is Verilog
ZPU Zylin AS   Wishbone Stack based CPU, configurable 16/32 bit datapath, eCos support Zylin CPU VHDL
ZPUino Álvaro Lopes   Wishbone Zylin's ZPU based SoC, 32 bit, Linux support. ZPUino Arxivat 2014-02-19 a Wayback Machine. VHDL

Referències

modifica

Vegeu també

modifica

Enllaços externs

modifica