- Processeur softcore
-
Un processeur softcore est un processeur (CPU) implémenté sur un système reprogrammable comme un FPGA. On parle alors de système sur puce programmable (System on Programmable Chip ou SoPC).
Sommaire
Présentation
Le mot softcore est une contraction des mots anglais software (logiciel) et core (cœur d'exécution d'un microprocesseur). En effet, un softcore est une implémentation de processeur disponible sous forme de description haut niveau, dans un langage de description matérielle comme le VHDL ou le Verilog. Architecture très flexible par nature, on les utilise surtout dans des FPGA. Un softcore peut donc être reconfiguré pour s'adapter aux contraintes de chaque utilisation (périphériques, performances, ressources, consommation, fonctions etc.).
Cela s'oppose aux « hard macros » disponibles sous forme de fichier très bas niveau, optimisé pour un seul processus de fabrication (par exemple le 0.18µm de TSMC). Un tel hardcore (par exemple de la famille ARM) est habituellement standard et ne peut être modifié, mais il est vendu validé (sans bug) et optimisé en taille et en vitesse (plus rapide et moins gros qu'un softcore).
Un processeur softcore est en contrepartie plus facile à maintenir et peut être porté vers un ASIC (Application Specific Integrated Circuit).
Liste de processeurs softcore
Propriétaires
Open Source
Liste de clones (open-source)
Les processeurs softcore suivants sont des clones (plus ou moins complets) de processeurs propriétaires :
- aeMB (OpenCores.org) (clone du MicroBlaze)
- OpenFire (clone du MicroBlaze)
- SecretBlaze (clone du MicroBlaze)
Tableau récapitulatif
Processeur Developpeur Open Source Bus Supporté Notes Page Web OpenSPARC T1 Sun
Oui64-bit OpenSPARC.net MicroBlaze Xilinx
NonOPB, FSL, LMB Xilinx MicroBlaze PicoBlaze Xilinx
NonXilinx PicoBlaze Nios, Nios II Altera
NonAltera Nios II Cortex-M1 Arm
Non[1] Mico32 Lattice
OuiLatticeMico32 LEON 3 ESA
OuiAMBA 25k portes, compatible SPARC V8 Gaisler OpenRISC OpenCores
Oui32-bit; validé sur cible ASIC, Altera, Xilinx OR1K AEMB Shawn Tan
OuiWishbone Core écrit en verilog compatible avec le MicroBlaze EDK 3.2 AEMB OpenFire Virginia Tech CCM Lab
OuiOPB, FSL Compatibilité binaire avec le MicroBlaze VT OpenFire SecretBlaze Lyonel Barthe
OuiWishbone Compatible MicroBlaze, VHDL SecretBlaze PacoBlaze Pablo Bleyer
OuiCompatible avec le processeur PicoBlaze PacoBlaze CQPIC Sumio Morioka (Japon)
OuiCompatible avec le processeur PIC16F84 (8-bit) Embarquer un PIC 16F84 ATMega8 Dr. Juergen Sauermann (Allemagne)
OuiCompatible avec le processeur Atmel ATMega8 (8-bit) Embarquer un ATMega8 et CPU lecture Voir aussi
Liens internes
Liens externes
- Portail de l’électricité et de l’électronique
- Portail de l’informatique
Wikimedia Foundation. 2010.