| |
Proseminar 2003
Thema: IP-Cores
Seite 3 von 8
4.) Weiche und harte IPs
Grundsätzlich unterscheidet man bei der Implementierung zwischen Hard-IPs und
Soft-IPs. Erstere sind durch fest vorgegebenes Layout, Timing und fixe Schnittstellen
charakterisiert; außerdem sind sie in Bezug auf Geschwindigkeit, Siliziumfläche und
Leistungsaufnahme optimiert. Sie sind einerseits leicht zu verifizieren, andererseits
halbleiterhersteller- und technologieabhängig, unflexibel und oft problematisch beim
Produktionstest.
Soft-Cores indes basieren auf einer synthetisierbaren Beschreibung, ausgehend von
einer Hardware-Beschreibungssprache wie Verilog oder VHDL; sie sind vorkompiliert
oder als Source-Code verfügbar und zudem auch halbleiterhersteller- und
technologieunabhängig konzipiert. Einerseits sind sie flexibel und zum Teil
parametrisierbar, andererseits benötigen sie mehrere Iterationen bei der
Designoptimierung (Floorplanning, Logiksynthese, Place& Route) und höheren
Verifikationsaufwand besonders bei Änderungen des Source-Codes.
5.) Qualität und Anbieter von IP-Cores
Damit IP-Cores Schaltungsentwürfe wirklich vereinfachen und beschleunigen
können, müssen sie einen hohen Qualitätsstandard erfüllen, d.h. sie müssen ein
vorhersehbares Verhalten liefern, gut dokumentiert sein, und es muss eine geeignete
Anwenderunterstützung existieren. Um den Kunden eine Auswahl von geeigneten
IP-Cores anbieten zu können, entwickeln die FPGA-Hersteller selbst Cores (Xilinx:
LogiCORE), oder sie schliessen Verträge mit Drittfirmen und bieten deren Produkte
an (Xilinx: AllianceCORE). Diese IP -Cores sind meistens harte IPs. Sie sind oft auf
ein FPGA oder eine FPGA-Baureihe beschränkt. Das hat den Vorteil, dass der Core
perfekt auf den jeweiligen FPGA-Typ abgestimmt ist und alle seine Vorteile nutzen
kann. Das macht den Core schneller und Platz sparender. Der Nachteil ist, dass der
Core meistens weder auf- noch abwärtskompatibel ist. So muss für ein neues FPGA
auch oft ein neuer Core gekauft werden.
6.) Schaltungsentwicklung mit IP-Cores
Die Aufgabe des Entwicklers ist heutzutage nicht mehr, jede Schaltungsfunktion
selber zu entwickeln, sondern sie besteht zum großen Teil darin, vorhandene
Funktionsblöcke mit einem EDA-Werkzeug (Electronic Design Aid) zu einer
Gesamtschaltung zu verbinden. Diese schon vorhandenen Einheiten können IP -
Cores oder auch bereits fertige eigene Entwürfe sein (Design Re-Use). Diese werden
mit eigenen Entwürfen kombiniert und vom Entwickler zu einer sinnvollen
Gesamtschaltung verbunden. Die Tätigkeit des Entwicklers verändert sich also
dahin, dass er in Zukunft immer weniger Funktionen selber implementieren muss,
sondern vielmehr nur noch vorgefertigte Bausteine auswählt und zu einem Ganzen
zusammenfügt. Im Jahre 2002 wurden bei der Entwicklung eines Systems auf einem
Chip (SoC) bereits ca. 50% der Funktionen durch IP -Cores implementiert, 2005
werden es Schätzungen zufolge ca. 80% sein. Das zeigt, dass IP -Cores in Zukunft
noch an Gewicht gewinnen werden, da die FPGAs immer größer und die
Schaltungen immer komplexer werden.
|  |
|
| |
|
|