Your cart is currently empty!
Kahn-procesnetwerk giet DSP-algoritme in FPGA
FPGA‘s kunnen tegemoetkomen aan de steeds toenemende prestatie-eisen van DSP-algoritmes door het algoritme met parallelle bronnen aan te pakken. Het verdelen van deze berekeningen over de FPGA is echter niet eenvoudig. Claudiu Zissulescu van Chess legt uit hoe het mappen naar de FPGA op natuurlijke wijze kan met een Kahn-procesnetwerk. Dit model scheidt rekenen en geheugen en is eenvoudig uitbreidbaar naar meerdere FPGA‘s.
Sinds de jaren tachtig is er een trend om DSP-functionaliteiten toe te voegen aan processoren voor algemeen gebruik. Tegenwoordig overschrijden de prestatie-eisen van moderne systemen echter vaak het vermogen van deze coprocessoren en zijn er vaak meerdere DSP‘s nodig. Het opdelen van een DSP-berekening in eenheden die naast elkaar op verschillende hardwarebronnen draaien, is echter een ingewikkeld proces en garandeert op zichzelf geen versnelling. De parallelle code kan zelfs langzamer draaien dan sequentiële software. Voor goede prestaties is het nodig om de communicatie tussen hardware-eenheden te optimaliseren en de gepartitioneerde berekening efficiënt over de hardware-eenheden te verdelen.
Een mogelijke oplossing voor het laatste probleem is om bestaande multiprocessorarchitecturen te gebruiken. Deze hebben echter een geheugenhiërarchie met meerdere cacheniveaus. Dat maakt de interprocessorcommunicatie zeer gevoelig voor de plek waar de data is opgeslagen. De communicatie voor een DSP-algoritme met slechte datalokaliteit, vertaald naar een dergelijke architectuur, kan veel cycli kosten.