Soft-Mikroprozessor - Soft microprocessor

Ein Soft-Mikroprozessor (auch Softcore-Mikroprozessor oder Soft-Prozessor genannt ) ist ein Mikroprozessorkern , der vollständig unter Verwendung von Logiksynthese implementiert werden kann . Sie kann über verschiedene Halbleiterbauelemente implementiert werden, die programmierbare Logik enthalten (z. B. ASIC , FPGA , CPLD ), einschließlich sowohl High-End- als auch Massenvariationen.

Die meisten Systeme verwenden, wenn sie überhaupt einen Softprozessor verwenden, nur einen einzigen Softprozessor. Einige Designer kacheln jedoch so viele Softcores auf ein FPGA, wie es passt. In diesen Multi-Core- Systemen können selten genutzte Ressourcen von allen Kernen in einem Cluster gemeinsam genutzt werden.

Während viele Leute genau einen Soft-Mikroprozessor auf einem FPGA platzieren, kann ein ausreichend großer FPGA zwei oder mehr Soft-Mikroprozessoren aufnehmen, was zu einem Mehrkernprozessor führt . Die Anzahl der Softprozessoren auf einem einzelnen FPGA ist nur durch die Größe des FPGA begrenzt. Manche Leute haben Dutzende oder Hunderte von Soft-Mikroprozessoren auf einem einzigen FPGA installiert. Dies ist eine Möglichkeit, massive Parallelität im Computing zu implementieren und kann ebenso auf In-Memory-Computing angewendet werden .

Ein Soft-Mikroprozessor und seine umgebenden Peripheriegeräte, die in einem FPGA implementiert sind, sind weniger anfällig für Obsoleszenz als ein diskreter Prozessor.

Kernvergleich

Prozessor Entwickler Open Source Busunterstützung Anmerkungen Projekthaus Beschreibungssprache
basierend auf der ARM- Befehlssatzarchitektur
Bernstein Conor Santifort LGPLv2.1 Querlenker ARMv2a 3-stufige oder 5-stufige Pipeline Projektseite bei Opencores Verilog
Kortex-M1 ARM Nein [6] 70–200  MHz, 32-Bit-RISC [7] Verilog
basierend auf der AVR- Befehlssatzarchitektur
Navré Sébastien Bourdeauducq Jawohl Direkter SRAM Atmel AVR -kompatibler 8-Bit-RISC Projektseite bei Opencores Verilog
pAVR Doru Cuturela Jawohl Atmel AVR -kompatibler 8-Bit-RISC Projektseite bei Opencores VHDL
basierend auf der MicroBlaze- Befehlssatzarchitektur
AEMB Shawn Tan Jawohl Querlenker MicroBlaze EDK 3.2 kompatibel AEMB Verilog
MicroBlaze Xilinx Nein PLB, OPB, FSL, LMB, AXI4 Xilinx MicroBlaze
Offenes Feuer Virginia Tech CCM-Labor Jawohl OPB, FSL Binärkompatibel mit dem MicroBlaze [8] Verilog
SecretBlaze LIRMM, Universität Montpellier / CNRS Jawohl Querlenker MicroBlaze ISA, VHDL SecretBlaze VHDL
basierend auf der MCS-51- Befehlssatzarchitektur
MCL51 MicroCore Labs Jawohl Mikrosequenzer-basierter 8051-Kern mit extrem kleinem Footprint 312 Artix-7-LUTs. Die Quad-Core-8051-Version ist 1227 LUTs. MCL51-Kern
TSK51/52 Altium Gebührenfrei Querlenker / Intel 8051 8-Bit Intel 8051 Befehlssatz kompatibel, Alternative mit niedrigerem Taktzyklus Eingebettetes Design im Altium Wiki
basierend auf der MIPS- Befehlssatzarchitektur
BERI Universität von Cambridge BSD MIPS Projektseite Bluespec
Dossmatik René Doss CC BY-NC 3.0, außer kommerzielle Bewerber müssen eine Lizenzgebühr zahlen . Pipeline-Bus MIPS I-Befehlssatz-Pipeline-Stufen Dossmatik VHDL
TSK3000A Altium Gebührenfrei Querlenker 32-Bit- R3000 -CPU im RISC-Stil mit modifizierter Harvard-Architektur Eingebettetes Design im Altium Wiki
basierend auf der PicoBlaze- Befehlssatzarchitektur
PacoBlaze Pablo Bleyer Jawohl Kompatibel mit den PicoBlaze-Prozessoren PacoBlaze Verilog
PicoBlaze Xilinx Nein Xilinx PicoBlaze VHDL, Verilog
basierend auf der RISC-V- Befehlssatzarchitektur
f32c Universität Zagreb BSD AXI, SDRAM, SRAM 32-Bit, RISC-V / MIPS ISA-Subsets (retargetable), GCC-Toolchain f32c VHDL
NEORV32 Stephan Nolting BSD Querlenker b4, AXI4 rv32[i/e] [m] [a] [c] [b] [u] [Zfinx] [Zicsr] [Zifencei], RISC-V-kompatibel, CPU & SoC verfügbar, hochgradig anpassbar, GCC-Toolchain GitHub OpenCores VHDL
VexRiscv WirbelsäuleHDL Jawohl AXI4 / Avalon 32-Bit, RISC-V, bis zu 340  MHz auf Artix 7. Bis zu 1,44  DMIPS/MHz. https://github.com/SpinalHDL/VexRiscv VHDLVerilog (SpinalHDL)
basierend auf der SPARC- Befehlssatzarchitektur
LEON2(-FT) ESA Jawohl AMBA2 SPARC V8 ESA VHDL
LEON3/4 Aeroflex Gaisler Jawohl AMBA2 SPARC V8 Aeroflex Gaisler VHDL
OpenPiton Princeton-Parallelgruppe Jawohl Manycore SPARC V9 OpenPiton Verilog
OpenSPARC T1 Sonne Jawohl 64-Bit OpenSPARC.net Verilog
Tacus/PIPE5 TemLib Jawohl Pipeline-Bus SPARC V8 TEMLIB VHDL
basierend auf der x86- Befehlssatzarchitektur
CPU86 HT-Labor Jawohl 8088-kompatible CPU in VHDL cpu86 VHDL
MCL86 MicroCore Labs Jawohl 8088 BIU bereitgestellt. Andere einfach zu erstellen. Zyklusgenauer 8088/8086 implementiert mit einem Mikrosequenzer. Weniger als 2% Auslastung von Kintex-7. MCL86-Kern
s80x86 Jamie Iles GPLv3 Benutzerdefiniert 80186-kompatibler GPLv3-Kern s80x86 SystemVerilog
Zet Zeus Gómez Marmolejo Jawohl Querlenker x86 PC-Klon Zet Verilog
ao486 Aleksander Osman 3-Klausel BSD Avalon i486 SX-kompatibler Kern ao486 Verilog
basierend auf der PowerPC/Power Befehlssatzarchitektur
PowerPC 405S IBM Nein CoreConnect 32-Bit-PowerPC v.2.03 Buch E IBM Verilog
PowerPC 440S IBM Nein CoreConnect 32-Bit-PowerPC v.2.03 Buch E IBM Verilog
PowerPC 470S IBM Nein CoreConnect 32-Bit-PowerPC v.2.05 Book E IBM Verilog
Mikrowatt IBM/OpenPOWER CC-BY 4.0 Querlenker 64-Bit PowerISA 3.0 Machbarkeitsnachweis Microwatt @ Github VHDL
Meißelwatt IBM/OpenPOWER CC-BY 4.0 Querlenker 64-Bit-PowerISA 3.0 Meißelwatt @ Github Meißel
Libre-SOC Libre-SoC.org BSD/LGPLv2+ Querlenker 64-Bit-PowerISA 3.0. CPU/GPU/VPU-Implementierung und benutzerdefinierte Vektoranweisungen Libre-SoC.org Python/nMigen
A2I IBM/OpenPOWER CC-BY 4.0 Benutzerdefinierter PBus 64-Bit PowerPC 2.6 Book E. In Ordnung Kern A2I @ Github VHDL
A2O IBM/OpenPOWER CC-BY 4.0 Benutzerdefinierter PBus 64-Bit PowerPC 2.7 Book E. Kern ausgefallen A2O @ Github Verilog
Andere Architekturen
BOGEN ARC International , Inhaltsangabe Nein 16/32/64-Bit-ISA-RISC DesignWare ARC Verilog
ERIC5 Enter Elektronik Nein 9-Bit-RISC, sehr klein, C-programmierbar ERIC5 VHDL
H2-CPU Richard James Howe MIT Benutzerdefiniert 16-Bit-Stack-Maschine, entworfen, um Forth direkt auszuführen, klein H2-CPU VHDL
Instant-SoC FPGA-Kerne Nein Benutzerdefiniert 32-Bit-RISC-VM-Erweiterung, SoC definiert von C++ Instant-SoC VHDL
JOP Martin Schöberl Jawohl SimpCon / Querlenker (Erweiterung) Stack-orientierter, harter Echtzeit-Support, der Java-Bytecode direkt ausführt Jop VHDL
GitterMico8 Gitter Jawohl Querlenker GitterMico8 Verilog
GitterMico32 Gitter Jawohl Querlenker GitterMico32 Verilog
LXP32 Alex Kuznetsov MIT Querlenker 32-Bit, 3-Stufen-Pipeline, Registerdatei basierend auf Block-RAM lxp32 VHDL
MCL65 MicroCore Labs Jawohl Mikrosequenzer-basierter 6502-Core mit extrem kleinem Footprint 252 Spartan-7-LUTs. Taktzyklus-genau. MCL65-Kern
MRISC32-A1 Marcus Geelnard Jawohl Querlenker , B4/pipelined 32-Bit-RISC/Vektor-CPU mit einem benutzerdefinierten ISA MRISC32 VHDL
NEO430 Stephan Nolting Jawohl Querlenker (Avalon, AXI4-Lite) 16-Bit MSP430 ISA-kompatibel, sehr kleine Größe, viele Peripheriegeräte, hochgradig anpassbar NEO430 VHDL
Nios , Nios II Altera Nein Avalon Altera Nios II Verilog
OpenRISC OpenCores Jawohl Querlenker 32-Bit; erfolgt in ASIC, Actel, Altera, Xilinx FPGA. [9] Verilog
SpartanMC TU Darmstadt / TU Dresden Jawohl Individuell ( AXI- Unterstützung in der Entwicklung) 18-Bit-ISA (GNU Binutils / GCC-Unterstützung in Entwicklung) SpartanMC Verilog
SYNPIC12 Miguel Angel Ajo Pelayo MIT PIC12F-kompatibel, in Gates synthetisiertes Programm nbee.es VHDL
xr16 Jan Grau Nein XSOC abstrakter Bus 16-Bit-RISC-CPU und -SoC im Circuit Cellar Magazine #116-118 XSOC/xr16 Schaltplan
YASEP Yann Guidon AGPLv3 Direkter SRAM 16 oder 32 Bit, RTL in VHDL & asm in JS , Mikrocontroller-Untermenge: fertig yasep.org ( Firefox erforderlich) VHDL
ZipCPU Gisselquist-Technologie GPLv3 Querlenker, B4/pipelined 32-Bit-CPU für minimalen FPGA-Ressourcenverbrauch zipcpu.com Verilog
ZPU Zylin AS Jawohl Querlenker Stack-basierte CPU, konfigurierbarer 16/32-Bit-Datenpfad, eCos- Unterstützung Zylin-CPU VHDL
RISC5 Niklaus Wirth Jawohl Benutzerdefiniert Ausführen eines vollständigen grafischen Oberon-Systems einschließlich eines Editors und Compilers. Software kann auf demselben FPGA-Board entwickelt und ausgeführt werden. www.projectoberon.com/ Verilog

Siehe auch

Verweise

Externe Links