Processori soft core VS Processori hard core


19

Sto facendo uno studio sull'interfaccia FPGA con microprocessore come ARM9.

Nel mio studio mi sono imbattuto nel concetto di processori Soft core e Hard core. Posso sapere qual è il confronto tra questi 2 tipi; somiglianza o differenze nell'attuazione?

Risposte:


19

Soft core è implementato nel tessuto FPGA mentre Hard è implementato come qualsiasi circuito integrato mentre è ancora collegato al tessuto FPGA. Il confronto si riduce generalmente a:

Processori Hard Core: 100 di MHz fino a 1 GHz + di velocità

  • Può raggiungere velocità di elaborazione molto più elevate poiché sono ottimizzate e non limitate dalla velocità del tessuto
  • Risolto e non modificabile (sebbene possa trarre vantaggio dalla logica personalizzata nel fabric FPGA per l'elaborazione

Processori Soft Core: 250 MHz e meno (di solito meno di 200 MHz)

  • Può essere facilmente modificato e adattato a requisiti specifici, più funzioni, istruzioni personalizzate, ecc.
  • È possibile utilizzare più core (a spese delle risorse)
  • Limitato dalla velocità del tessuto.

Negli ultimi anni, c'è stato un grande passo in avanti verso il processore rigido principalmente a causa della necessità di un'elaborazione più veloce che i core non sono in grado di fornire. Quando si inserisce un processore hard core con il fabric FPGA, in genere è possibile abilitare l'elaborazione di molti dati, necessari per le applicazioni dell'infrastruttura di comunicazione (molti GB di dati che passano), ad esempio.


11

Un processore soft-core è un processore implementato utilizzando il tessuto FPGA.

Un processore hard-core è un processore effettivamente implementato fisicamente come una struttura nel silicio.

Fondamentalmente, è possibile aggiungere un processore soft-core a un sistema basato su FPGA dopo che è già stato progettato. Tuttavia, l'aggiunta di un processore hard-core richiede un FPGA diverso o un chip aggiuntivo sulla scheda.


I processori hard-core sono preferiti quando possibile perché il rapporto prezzo / potenza di calcolo per una CPU hardware è molto migliore. L'implementazione di una CPU in fabric FPGA richiede molte risorse, in particolare se si desidera molta potenza di elaborazione. La CPU hardware equivalente è probabilmente molto più economica.


Non solo la CPU hardware è molto più economica, ma è anche molto più efficiente dal punto di vista energetico. Nelle piattaforme a batteria, l'efficienza è fondamentale per una lunga durata della batteria. Le porte inutilizzate in un FPGA a volte possono essere disattivate, ma di solito ci sono molti più circuiti attivi in ​​un processore soft core che in una CPU hardware appositamente progettata. Tutto quel potenziale silicio FPGA consuma energia.


"Hard" e "soft" possono anche fare riferimento alla descrizione dell'hardware utilizzata e non solo al fatto che il core sia implementato nel fabric (vedere "Hard Macro Processors" di ARM ). Questa pagina di Western Design Center, Inc., fornisce un esempio di questo utilizzare: "ASIC (Hard Core GDSII ottimizzato manualmente e Verilog RTL Soft Core) e FPGA (Verilog RTL Soft Core)". Il contesto FPGA potrebbe escludere questo uso dei termini (anche se i valori di inizializzazione BLOB binario / LUT vs. RTL sembrano analoghi).
Paul A. Clayton,

Quindi, fondamentalmente, soft-core = FPGA, hard-core = ASIC?
nalzok,

@nalzok - Sì. Ho potuto vedere un argomento per chiamare l'emulazione di una CPU su un'altra CPU un core "soft", ma la gente ha appena chiamato quell'emulazione nella mia esperienza.
Connor Wolf,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.