Sì, gli FPGA sono eccellenti per l'implementazione di cose massicciamente parallele. Molte persone hanno messo 8 o più CPU su un FPGA - non è semplicemente "in linea di principio".
Controlla l'immagine della planimetria nell'articolo "Progettazione FPGA di un sistema a 24 processori su chip con rete su chip" di Zhoukun WANG e Omar HAMMAMI.
Questa planimetria rende abbastanza ovvio che quel particolare FPGA è praticamente pieno I 24 core della CPU - ognuno una CPU MicroBlaze a 32 bit con 32 KByte totali di istruzioni locali e memoria dati - riempiono circa la metà dell'FPGA (attorno al perimetro). L'instradamento tra i core della CPU e i 4 core indipendenti bus esterni praticamente riempiono tutto il resto dell'FPGA (i bus esterni sono larghi 64 bit di dati ciascuno più alcuni segnali di controllo, ognuno dei quali porta a un modulo di memoria DDR2 indipendente).
(Questo particolare IC include anche due hard core CPU PowerPC 405 oltre al tessuto FPGA: Zhoukun e Omar apparentemente non si sono preoccupati di usarli).
Come altri er persone qui hanno sottolineato, dividere "numero di porte in un FPGA" per "numero di porte in una CPU" è eccessivamente ottimistico. In questo caso, 142.128 LUT su un FPGA Xilinx Virtex-4 FX140 diviso per circa 1000 LUT richieste per un MicroBlaze di dimensioni minime fornisce (ottimisticamente) 142 CPU per chip. Quindi sei deluso dal fatto che apparentemente "solo" 24 CPU si adattano a quel fabric FPGA (senza contare i due hard core PowerPC 405 al di fuori del fabric FPGA su quell'IC)?
Un FPGA da 1 milione di gate diviso per una CPU da 50k gate fornisce (ottimisticamente) 20 CPU per chip. Penso che sarai fortunato a spremere anche 4 CPU su quell'FPGA.
"È incredibile quello che si può spremere su queste parti se si progetta con attenzione l'architettura della macchina per sfruttare le risorse FPGA. Al contrario, in un recente EE Times c'era un articolo molto interessante di un collega di VAutomation che faceva 6502 virtuali in VHDL, sintetizzandoli poi in architetture FPGA arbitrarie. Sebbene sia stato utilizzato solo il design 6502
circa 4000 "porte ASIC" non si adattavano perfettamente a un XC4010, un cosiddetto FPGA "10.000 gate". Il fatto che un RISC a doppia emissione a 32 bit dovrebbe adattarsi, e un 6502 a 4 MHz no, afferma molto sulla sintesi VHDL rispetto al posizionamento manuale, sulle architetture legacy rispetto a quelle personalizzate, e forse anche qualcosa su CISC contro RISC. .. "- Jan Gray
L'articolo Wikipedia:" soft processor " contiene ulteriori informazioni su come impacchettare più CPU su una singola FPGA.