GreenPAK™-System
Jeder Hardwareentwickler stand schon einmal vor dem Problem, dass sein Design kurzfristig geändert werden muss. Sei es, weil sich die Anforderungen geändert haben, weil ein Fehler behoben werden muss oder weil ein Feature vergessen wurde. Meistens endet dies mit einer größeren Operation auf der Platine oder einem Re-Design des Boards. Der Hersteller Renesas bietet mit seinen GreenPAKTM-Systemen für dieses Problem eine einfache Lösung, die in diesem Beitrag vorgestellt wird.
Was ist ein GreenPAK™?
Grundlegend handelt es sich bei GreenPAKs™ um komplexe Development-Boards auf Basis programmierbarer Mixed-Signal-ICs. Diese sind darauf ausgelegt, Funktionen wie Logikgatter, Zeitgeber, Zähler, Tastgeneratoren und andere digitale Schaltkreise in ein kompaktes, programmierbares Format zu integrieren. Hierbei ist keine tatsächliche Beschaltung des Aufbaus nötig, alles wird über die hauseigene Software simuliert und kann bei Bedarf direkt auf die Chips „geflasht“ werden. Dies reduziert den Arbeits- und Materialaufwand ganz erheblich!
GreenPAKS™ finden daher oft Anwendung in Systemen, in denen sowohl analoge als auch digitale Signale verarbeitet werden müssen und die eine präzise Wandlung, Filterung oder Signalverarbeitung in Echtzeit benötigen. Die GreenPAKST™ bilden somit eine Brücke zwischen analoger und digitaler Welt. Bild 1 zeigt beispielhaft, wie eine Schaltung vereinfacht werden kann.

Großer Funktionsumfang
Nicht nur analoge Funktionsblöcke wie Operationsverstärker, Komparatoren, Analog-Digital-Wandler und Digital-Analog-Wandler, sondern auch digitale Funktionsblöcke können mit den Boards genutzt werden:
- Look-up-Tabellen (LUT)
- D-Flip-Flops
- Zähler, Delays und Speicher
Neben den bereits erwähnten Funktionsblöcken beherrschen einige GreenPAKs™ auch rudimentäre mathematische Funktionen.
Der Funktionsumfang ist nahezu unbegrenzt und wird durch die Auswahl des GreenPAKs™™ bestimmt. Eine detaillierte Übersicht gibt der Hersteller auf seiner Webseite.
Zur Datenübertragung bieten die GreenPAKST™ eine I²C-Schnittstelle und einige Module auch eine SPI-Schnittstelle.

Softwareumgebung
Zur Programmierung muss weder eine eigene Programmiersprache erlernt noch ein eigener Code geschrieben werden. Mithilfe einer grafischen Benutzeroberfläche (GUI), ähnlich einem Schaltplan-Eingabeprogramm, werden die einzelnen Funktionsblöcke zu einem Design zusammengefügt – praktisch! Die grafische Benutzeroberfläche „Go Configure™ Software Hub“ lässt sich kostenlos von der Webseite des Herstellers herunterladen (Go Configure Software). Mit dieser Anwendung können Designs mit allen verfügbaren GreenPAKs™ erstellt werden. Eine ausführliche Anleitung zur Anwendung ist hier zu finden. Bild 2 zeig die Startseite der Softwareumgebung.

Neben dem reinen Schaltungsdesign kann die Software auch zur Simulation und Hardwareevaluierung genutzt werden. Die einzelnen, erstellten Funktionsblöcke lassen sich so einfach konfigurieren, aktivieren und auch deaktivieren. Für die Schaltungssimulation stellt die Anwendung passive Bauteile wie Widerstände, Kondensatoren und Induktivitäten bereit. Damit kann auch eine externe Beschaltung berücksichtigt werden. Neben den passiven Bauteilen können selbstverständlich auch aktive Bauelemente wie Bipolartransistoren, MOS-Feldeffekttransistoren usw. angebunden werden. Die aktiven Komponenten können mithilfe von SPICE-Modellen beschrieben und entsprechende Modelle importiert werden. Bild 3 zeigt ein neu angelegtes Projekt im Arbeitsbereich der Software „Go Configure“. Im Folgenden werden die wichtigsten Hauptfunktionsblöcke beschrieben, die in der Software zur Verfügung stehen. Sie werden hier als „Makrozellen“ bezeichnet.

LUT-Makrozelle
Den breitesten Anwendungsbereich haben die digitalen Funktionsblöcke wie z. B. LUTs (Look-up-Tabellen). Diese Makrozelle wird genutzt, um Digitallogik mit zwei, drei oder auch vier Eingängen und einem Ausgang zu erstellen. Die Konfiguration erfolgt in der Software, wie in Bild 4 gezeigt, und kann beliebige Eingangs-/Ausgangskombinationen aufweisen. Der Großteil dieser Makrozellen wird jedoch als Standardgatter verwendet wie z. B. UND- und ODER-Gatter oder Multiplexer („MUX“). Daher bietet die Software die Möglichkeit, die LUT-Blöcke in der Software automatisch in ein Standardgatter zu konvertieren.
Oszillatoren
Die meisten GreenPAKs™ sind mit zwei Oszillatoren (Bild 5) ausgestattet. Die wichtigsten Oszillatoren sind hier ein 2-kHz-Oszillator mit geringer Leistungsaufnahme, ein 2-MHz- sowie ein 25-MHz-Oszillator. Jeder Oszillator verfügt über mehrere Ausgänge und Vorteiler, die eine große Flexibilität bei der Takterzeugung ermöglichen.
Mit der Auto-Power-Funktion kann der Oszillator abgeschaltet werden, wenn er nicht benötigt wird. Dies hilft bei der Entwicklung stromsparender Applikationen.

Analoge Komparatoren
In fast jedem GreenPAK™ finden sich auch ein oder zwei analoge Komparatoren (Bild 6). Hierbei ist zu beachten, dass die Eingänge IN+ und IN- nicht frei einem Eingangs-PIN zugeordnet werden können. Diese Komparatoren sind über die Interconnect-Matrix festen Eingangspins im IC zugewiesen. In der Software wird dies durch einen orangefarbenen Anschluss bzw. eine orangefarbene PIN-Bezeichnung angezeigt.
Der negative Eingang IN- lässt sich an eine interne oder externe Referenzspannung anschließen. Die interne Referenzspannung ist in 32-mV-Schritten von 32 mV bis 2016 mV variierbar. Der Ausgang des Komparators kann hingegen frei auf einen beliebigen I/O-Pin gelegt werden.
Eingänge und Ausgänge I/Os
Ein weiterer Vorteil der GreenPAKST™ ist die Vielzahl an I/O-Optionen, die je nach PIN und Version variieren können. Die Ausgänge lassen sich generell als Push-Pull oder Open-Drain entweder in NMOS- oder PMOS-Konfiguration definieren (Bild 7). Zusätzlich besteht die Möglichkeit, die Treiberfähigkeit am Ausgang um den Faktor zwei zu erhöhen. Des Weiteren können Ausgänge mit Pull-up- und Pull-down-Widerständen mit den Werten 10 kΩ, 100 kΩ und 1 MΩ bereits intern beschaltet werden. Auch für die Eingänge stehen diverse Optionen zur Verfügung, so z. B. Digital-INs, Digital-INs mit Schmitt-Trigger, Low-Voltage-Digital-INs und Analog-INs, die z. B. auch als Eingangsbeschaltung für die analogen Komparatoren genutzt werden.



Asynchronous State Machine (ASM)
Einige GreenPAKS™ oder Power GreenPAKs™ enthalten eine „Asynchronous State Machine“, kurz ASM, mit wahlweise 8 oder 12 Zuständen. Der Vorteil der ASM ist, dass sie nur auf Eingangssignale reagiert. Es ist daher kein Taktsignal nötig, was einen geringen Stromverbrauch zur Folge hat. Dies führt zu einem Verbrauch von weniger als 1 µA im Stand-by – die Makrozelle benötigt nur während der Statusänderung Strom. Die Eingangssignale müssen nicht miteinander synchronisiert werden, da die Makrozelle auf das erste gültige Signal für eine Zustandsänderung reagiert.
Simulation und Emulation
Wenn der Schaltungsentwurf in der Software abgeschlossen ist, bestehen zwei Möglichkeiten, das Design auf einfache Weise zu überprüfen. Die erste Möglichkeit stellt dabei die Schaltungssimulation dar, die zweite ist die Emulation. Die Unterschiede werden nachfolgend beschrieben.
Die Schaltungssimulation simuliert den Betrieb der Schaltung in einer optimalen Umgebung, ohne dabei ein GreenPAK™ oder Evaluationsboard physikalisch zu benötigen. In diesem Fall kann zwischen einer Transienten-Simulation und einer parametrischen DC-Simulation gewählt werden. Bild 8 zeigt ein Beispiel einer grafischen Darstellung der Simulationsergebnisse.

Hinweis: Wie bei jeder Simulation ist zu beachten, dass nicht alle möglichen Faktoren eines realen Systems abgebildet werden können und es ggf. zu Abweichungen kommen kann.
Die Emulation erlaubt zusammen mit einem Evaluationsboard und einem GreenPAK™-IC eine direkte Überprüfung der Schaltung mit der Hardware, ohne das IC direkt programmieren zu müssen. Damit hat man eine einfache Möglichkeit, seine Schaltung sukzessive zu optimieren. Im Emulationsmodus wird das aktuelle Projekt zwar in den GreenPAK™ geladen, das IC aber nicht programmiert. Über die Software können dann anschließend die Ein- und Ausgänge beschaltet sowie gemessen werden.
Die Programmierung des Chips
Für die endgültige Programmierung eines GreenPAK™ wird zusätzlich ein Evaluationsboard benötigt. Eine gängige Methode für einen ersten Prototypen ist die Verwendung des GreenPAKTM-DIP-Adapters. Dieser besteht bereits aus einem aufgelöteten GreenPAK™ und passt die Anschlüsse hiermit auf DIP an. Dies vereinfacht die Erstellung von Prototypen, da die GreenPAKTM-DIP-Adapter auf lötfreien Breadboards, also Experimentierplatinen, eingesetzt werden können.
Die zweite Möglichkeit der Programmierung ist die Verwendung eines produktspezifischen Sockeladapters. Der zu programmierende GreenPAK™ wird in sogenannte Zero-Force-Sockel gelegt und kann daraufhin programmiert werden. Bild 9 zeigt einen solchen Zero-Force-Sockel (rechts) sowie einen Sockel auf DIP-Basis (links).
Evaluationsboards
Wie bereits erwähnt, wird ein Evaluationsboard zum Überprüfen und zum Flashen des GreenPAKS™ benötig. Bild 10 zeigt hier ein Development-Kit, das bereits eine große Auswahl an GreenPAKST™ sowie ein Development-Board enthält und dessen Aufbau im Folgenden beschrieben wird.


Am Socket-Connector werden wahlweise der Programmiersockel bzw. über den DIP-Adapter die zu testenden oder zu programmierenden GreenPAKS™ kontaktiert. Die 18 individuell konfigurierbaren Testpunkte für die einzelnen Pins sind nach außen geführt und mit einer zusätzlichen LED beschaltet. An diesen Testpunkten können auch Tastköpfe für Oszilloskope zur Messung eingesetzt werden.
Eine Besonderheit des Development-Boards (Bild 11) stellt die Möglichkeit der Versorgung mit zwei unterschiedlichen Versorgungsspannungen dar. Mit diesem Board ist sowohl In-System-Debugging als auch In-System-Programming möglich. Der Expansion Connector ermöglicht die Integration in eine bestehende Schaltung oder die Überwachung von Signalen. Zusätzlich besteht für Testzwecke die Möglichkeit, bis zu drei verschiedene Testsignalgeneratoren an die spezifischen Testpunkte anzuschließen. Hierbei handelt es sich um einen Signalgenerator, einen Logikgenerator und einen I²C-Schnittstellengenerator.
Der Signalgenerator erzeugt analoge Signale wie Konstantpegel, Sinus- oder auch Trapezsignale. Zusätzlich besteht die Möglichkeit, benutzerdefinierte Signale zu erzeugen. Der I²C-Generator erlaubt, basierend auf zwei Logikgeneratoren, das Erzeugen von I²C-Signalen. Detailliertere Informationen sind dem Benutzerhandbuch bzw. dem Datenblatt zum Advanced Development Board zu entnehmen.

Das Kochbuch
Um interessierten Anwendern den Einstieg in das Design mit GreenPAKs™ zu erleichtern, kann auf der Internetseite des Herstellers ein sogenanntes „GreenPAK™ Cookbook“ herunterladen werden. Dieses Kochbuch ist in zwei Bereiche gegliedert. Der erste Teil enthält Informationen zur grundsätzlichen Vorgehensweise, der zweite Teil stellt einfache Applikationen vor, die sich mit den GreenPAKS™ entsprechend umsetzen lassen.
Alle im Kochbuch vorgestellten Applikationen können zudem von der Webseite heruntergeladen und per Software den eigenen Anforderungen entsprechend angepasst werden.
Neben dem Kochbuch gibt es außerdem eine Vielzahl an Applikationsschriften. Auch hier können die erstellten GreenPAKTM-Designs von der Webseite heruntergeladen werden. Wem diese Beschreibung immer noch nicht ausreicht, dem stehen zudem ein Forum, diverse Videos, FAQs und verschiedene Referenzschaltungen zur Verfügung.
Zusammenfassung und Ausblick
Das GreenPAK™-System von Renesas bietet Anwendern eine optimale Lösung für Anwendungen, bei denen geringe Leistungsaufnahme, reduzierte Bauteilauswahl und Flexibilität im Schaltungsdesign gefragt sind. Die Stärken liegen hier vor allem in der einfachen Programmierbarkeit, der Mixed-Signal-Funktionalität und der generellen Simulationsmöglichkeit, ohne dass Hardware geflasht und damit programmiert werden muss.
Ein kommender Beitrag wird einen spezifischen Anwendungsfall ausführlich beschreiben.