ICC Propeller - ANSI-C Compiler für Propeller
Der Propeller Chip enthält acht 32-Bit CPU-Kerne. Jeder dieser Kerne (COGs) verfügt über 2KB (512 Langworte) RAM und alle COGs haben Zugriff auf den gemeinsamen 32KB großen HUB RAM Bereich. Allerdings kann ein COG nur Code im eigenen COG RAM abarbeiten, zudem wird der COG RAM sowohl für Befehle als auch für Daten verwendet.
Ein Compiler für Native Code wäre mit den lediglich 512 Langworten eines COGs erheblich eingeschränkt. Daher erzeugt ICCV7 für Propeller (anders als die anderen ImageCraft Compiler) einen modifizierten Maschinencode, welcher innerhalb einer speziellen "Virtuellen Maschine" abgearbeitet wird.
Für das Funktionsmodell dieser Virtuellen Maschine wird der Begriff "Large Memory Model", kurz LMM, verwendet. Die zugrunde liegende Idee ist einfach: Programme werden im HUB RAM abgelegt, welcher die 16-fache Größe des COG RAMs bietet. Die Virtuelle Maschine lädt Maschinenbefehle vom HUB RAM in den COG RAM und führt sie dann dort aus. Da es sich bei den Befehlen um Maschinenbefehle des Propeller handelt, ist der Overhead der Virtuellen Maschine viel geringer als bei einem Bytecode-Interpreter wie Spin von Parallax.
Die Online Hilfe (siehe rechts: externe Links) schildert weitere Details zur Speicherverwaltung mit dem Large Memory Model.
Die Compilerkomponenten sind "verpackt" in eine leistungsfähige Integrierte Entwicklungsumgebung (ICCIDE). Der Editor der ICCIDE bietet eine farbliche Hervorhebung der Quelltextbestandteile (Syntax-Coloring). In der ICCIDE ist ein Terminal zur Targetkommunikation enthalten. Umfangreiche Programmprojekte lassen sich mit der integrierten Projektverwaltung leicht handhaben. Dependency-Check und Makefile Generierung übernimmt die IDE automatisch. Durch die Integration der Parallax Propellent DLL ist ein direkter Download auf das Zielsystem möglich.
ICC Propeller testen!
Testen Sie jetzt ICC Propeller! Installieren Sie die voll funktionsfähige 45-Tage Testversion V7.04 und überzeugen Sie sich selbst! Danach ist die Software weiterhin nutzbar, jedoch mit Einschränkung der Codegröße.
Lizenz
Der Benutzer erhält mit ICCV7 f. Propeller grundsätzlich eine Einzelplatzlizenz, die über einen Softwarekey auf einen bestimmten PC bezogen ist.
Alternativ ist - gegen Aufpreis - ein USB Hardwarekey einsetzbar. Mit dieser Option kann die Lizenz besonders einfach zwischen Rechnern übertragen werden.