Teamwork


Gibt es einen Haken?

Ein Nachteil von Systemen aus mehreren verknüpften Rechenbausteinen ist, dass die Anwendung partitioniert werden muss. Komplexe Projekte werden aufgrund ihrer Größe und den gewählten Modellierungsansätzen oft hierarchisch dargestellt. Somit ergibt sich meist sehr schnell eine geeignete Struktur für die Aufteilung der Aufgaben auf mehrere FPGAs. Wie genau dies geschehen kann, wird durch den Datenaustausch zwischen den Modulen bestimmt. So sind Streaminganwendungen, bei denen die Daten durch die Module ‚durchgeschoben‘ werden, einfach parallelisierbar. Anwendungen, die gemeinsam auf einen Speicher zugreifen, sind dagegen aufwändig, insbesondere wenn vorrangig kleine Datenmengen mit geringer Latenz benötigt werden. Diese sollten daher innerhalb eines FPGAs ablaufen. Jedoch ist das mit den hier verwendeten ECP3-150 von Lattice für viele Anwendungen in ausreichendem Maße realisierbar, so dass dies im realen Einsatz eher selten ein Problem darstellt. Die größten Umstellungen beim Einsatz eines Multi-FPGA-Systems werden sich für kleine Entwicklungsteams ergeben, da die neuen Möglichkeiten, mehrere FPGAs zu nutzen, im ersten Moment nach einem Mehraufwand aussehen. Auch hier sollten die Vorteile einer verteilten Algorithmenentwicklung schnell überwiegen, insbesondere wenn die Projektstruktur es zulässt, dass bestimmte Entwickler exklusiv einem FPGA zugeordnet werden. Einzelne Arbeitspakete werden somit besser voneinander getrennt und effizienter realisierbar.

Seiten: 1 2Auf einer Seite lesen

Das könnte Sie auch Interessieren