PPC Übersicht

Das Herz des PPC ist ein eigener Kommunikations Prozessor, angeordnet um einen Zilog Z180, mit Zusatzhardware die speziell entwickelt wurde um die gleichzeitige Hochgeschwindigkeitsdatenübertragung von mehreren Ports zu ermöglichen. Dieses Modul führt Anwenderprogramme aus, die in PPC-Pascal, C oder Basic erstellt werden können.

Die vier seriellen Schnittstellen des PPC unterstützen einen weiten Bereich von Baudraten und Handshake-Arten. Alle Ports sind vom Anwenderprogramm ansprechbar. Der erste Port (Port 1) kann in den "Executive" Modus versetzt werden, in dem die PPC-Funktionen über ANSI (e.g. VT-100) Terminals mit bis zu 38,400 Baud angesprochen werden können. Dieser Betrieb ist ebenso über Modem möglich.

Die PPC Executive ist in höchstem Maasse Intuitiv und leicht Verständlich, wie auf untenstehendem Bild ersichtlich. Unterstützt wird die Erstellung, das Editieren, das Compilieren sowie die Ausführung der Anwenderprogramme und weiteres wie z.B.: Anwenderprogramme können auf ASCII oder Postscript-Druckern ausgegeben werden, können kopiert oder verschlüsselt werden, oder mit einem Flag zur automatischen Ausführung (Autostart) beim Einschalten versehen werden.

Alles im PPC ist Menügesteuert und intuitiv einfach, wie selbst die untenstehende Schnittstellenkonfiguration verdeutlicht.

Der Konfigurations-Bildschirm des PPC kann auf ASCII, Postscript oder HPGL Geräten, die an einem der vier Ports angeschlossen sind, ausgegeben werden..

PPC Programmier Sprachen

Das PPC kann sowohl in Standard Pascal (mit Erweiterungen für Datenkommunikation und anderem) programmiert werden als auch in ANSI Cund Tiny Basic. Die interactive Pascal Entwicklungsumgebung ist im Lieferumfang enthalten, es muss nichts zusätzlich gekauft werden. Der one-pass Compiler erzeugt hochoptimierten Code ist ausgereift (seit 1981) , er kompiliert selbst größte Programme in Sekunden. In Pascal erstellte Anwenderprogramme werden im Quellcode im EEPROM gespeichert und beim Einschalten kompiliert und ausgeführt. Zur Erhöhung der Sicherheit kann der Quellcode verschlüsselt werden. Alle Systemfunktionen sind ROM-basierend, die übliche grosse Runtime-Bibliothek kann so vermieden werden. Es wurden bereits Pascal-Programme mit 2000 Zeilen Quellcode realisiert.

Die strenge Typüberprüfung von Pascal unterstützt die schnelle Programmentwicklung. Wenn sich das programm kompilieren lässt, so ist meistens schon 90% der Arbeit erledigt. Mit PPC-Pascal lassen sich die meisten Standardaufgaben im Handumdrehen lösen. Anders als mit C, sind keine kryptischen Sprachkonstrukte notwendig.

Die ANSI C Entwicklungsumgebung besteht aus einem hochwertigen PC-Basierenden Cross-Compiler, der zusätzlich erworben werden muss. Beispielprogramme, makefiles usw. ebenso wie ein allgemeines Testprogramm das alle PPC-spezifischen Funktionen und Bibliotheks Erweiterungen zeigt, sind im Lieferumfang enthalten. Die ausführbare Binärdatei wird im EEPROM gespeichert, und kann ebenfalls zusätzlich verschlüsselt werden. Es wurden bereits erfolgreich C-Programme mit 10000 Zeilen Quellcode erstellt.

Mit ANSI-C lassen sich auch grösste Datenkommunikationsanwendungen erstellen.

Tiny Basic ist ein Integer-Basic-Interpreter für einfache Aufgaben.

Auf der Skala von 1 bis 100, sind die Ausführungsgeschwindigkeiten der drei Sprachen 1, 50, 150 (Basic,Pascal,C).Hinweis: obwohl C hier dreimal so schnell wie Pascal erscheint beeinflusst dies meist nicht die Produktperformance, weil hier selbst bei 115200 Baud die Baudrate und das Protokoll die Anwendung weit mehr bremsen.

PPC Programm Entwicklung

Anwenderprogramme werden mit dem eingebauten PPC-Full-Screen-Editor eingegeben und modifiziert. Ebenso können Sie extern, z.B. auf einem PC mit einem Editor Ihrer Wahl erstellt und dann auf das PPC in den sicheren EEPROM übertragen werden. BASIC-Programme werden im INTERACTIVEN BASIC-Modus eingegeben. C-Programme müssen auf dem PC Cross-Compiliert und dann ins PPC-EEPROM übertragen werden.

Das Debugging gestaltet sich einfach: es werden einfach geeignete PRINT-Statements in den Quellcode eingefügt und auf einem nicht benutzten Port ausgegeben, auch während die normale Kommunikation auf zwei Port läuft.

Ebenso steht eine "Input Hex Dump" Funktion in der Executive zur Verfügung, welche bei der Analyse eingehender Daten hilfreich ist.

Es wird bewusst keine Schnittstelle zum Maschinencode, oder Assembler benötigt oder geboten. Der Anwender benötigt keine Hardware-Detailkenntnisse oder Wissen über Systemfunktionen.

PPC Kommunikations Unterstützung

Alle PPC-Kommunikationsfunktionen sind Interruptgesteuert und gepuffert und laufen im Hintergrund. Dies erleichtert die Programmierung da alle Aufgaben über Hochsprachenaufrufe wie READ und WRITE abgewickelt werden können.

Beispiel: Untenstehendes Pascalprogramm liest von Port 3 die Zeichen ein, wandelt Kleinbuchstaben in Grossbuchstaben und gibt diese auf Port 4 aus:

program upper;
var ch:char;
begin
repeat
    bread(port3,ch);
    bwrite(port4,toupper(ch));
until false;
end;
end.
An equivalent PPC Basic program would be:
10 REDIR(4)
20 C=WGET(3)
30 IF C<97 GOTO 60
40 IF C>122 GOTO 60
50 C=C-32
60 PRINT CHR$(C),
70 GOTO 20
or ANSI C:
main upper ;
{
  char ch;
  for (;;)
  {
    fgetc(port3,ch);
    fputc(port4,toupper(ch));
  }
{

Da alle Ports über gepuffertes I/O verfügen sind Programme im PPC generell nicht Zeitkritisch, das notwendige Handshaking wird im Hintergrund durchgeführt (soweit aktiviert und richtig konfiguriert).

Auch die ANSI C Implementation unterstützt obiges gepuffertes I/O in fputc, fgetc, fprintf, etc.

Das PPC File-System

Bis zu 20 Programme können gleichzeitig im EEPROM gespeichert werden. Die maximale Programmgröße ist etwa 30 kB und sicher mehr als ausreichend. Für Pascal ist dies auch für extrem komplexe Programme ausreichend und wird in wenigen Sekunden kompiliert.

Wenn ein Programm fertig ist, lässt es sich als "autoexec" markieren. Immer wenn das PPC eingeschaltet wird, wird ein derartiges Programm automatisch compiliert und ausgeführt.

Sogar wenn das PPC ein als "autoexec" markiertes Programm sofort nach dem Einschalten ausführt, kann es durch Drücken des entsprechenden Knopfes in den EXECUTIVE-Modus gebracht werden (so wird auch bei fehlerhaftem Autostart-Programm eine Korrektur möglich).

Das Filesystem nutzt modernes EEPROM und ist auch ohne Batterie sicher und unendlich lange speicherbar.

Hohe Verfügbarkeit

Das PPC EEPROM-basierte File-System zuverlässiger und billiger als die weit verbreitete Methode batteriegepufferten Datenspeicher in Form von CMOS-RAM insbesondere bei elektrisch rauher, EMV-verseuchter Umgebung. Dies, zusammen mit dem abgeschirmten Metallgehäuse, befähigt das PPC fast überall eingesetzt zu werden.

Das PPC verfügt über eine Watchdogschaltung von 1,6 Sekunden Timeout. Normal im Betriebssystem integriert, ist die vollständige Kontrolle auch von C aus möglich, um besondere Anforderungen zu erfüllen.

Der PPC Editor

Der Full-Screen Editor nutzt WordStar-kompatible Kommandos und arbeitet, wie alle PPC-Funktionen über jedes ANSI-kompatible Terminal. Im Lieferumfang ist KTERM.EXE, ein ANSI terminal emulator mit zusätlichen Fähigkeiten enthalten. Es wird der Filetransfer zum PPC direkt unterstützt, sowie erlaubt auch einen 43 oder 50 zeiolen Modus bei geeigneter Grafikkarte bei bis zu 38400 Baud wird ein schneller Bildschirmupdate ermöglicht.

Der Editor ist im Pascal-Compiler integriert, und kann im Fehlerfalle auf Wunsch an die fehlerhafte Stelle springen.:

Nichtflüchtige Datenspeicherung

Teilweise kann es nützlich sein, von PPC-Pascal-Programmen aus Daten in einen 2000 Byte grossen nichtflüchtigen Bereich abzulegen. So werden auch Programme unterstützt die permanent Daten speichern müssen. Da hierzu auch das EEPROM verwendet wird, gelten die Einschränkungen das EEPROM nur 10000 mal (in der Praxis meist > 100000 mal) beschrieben werden kann. Als weiter Möglichkeit gibt es als Option (-96) die Möglichkeit ein 96kB grosses batteriegepuffertes SRAM (unter Benutzung eines Dallas SRAM Sockels) mit unbeschränkten Schreib/Lesezyklen zu nutzen.

Echtzeituhr

Das PPC kann ab Werk mit einer Echtzeituhr bestellt werden, die von Pascal oder C aus lesbar ist. Die eingebaute Lithium batterie hält 10-20 Jahre.

Programm Sicherheit

Pascal oder Basic Programme werden im PPC in source-Form gespeichert. Die Executive enthält ein hochsicheres Passwortgestütztes Verschlüsselungssystem welches verhindert, das das gespeicherte Programm angesehen, ausgedruckt oder auf ein anderes System übertragen werden kann. Natürlich kann ein Verschlüsseltes Programm trotzdem als "autoexec" gekennzeichnet und beim Einschalten ausgeführt werden. Diese verschlüsselung ist für den Wiederverkäufer der ein PPC-Programm entwickelt hat und mitverkaufen möchte ein bestmöglicher Schutz seiner Investition.

In C entwickelte Programme werden binär abgespeichert und können trotzdem, wenn erforderlich, ebenso verschlüsselt werden.

DES Encryption Option

Die hier realisierte Implementation des Standard 64-bit (56 bits+parity) DES Algorithmus läuft mit 3500 bytes/Sekunde (-H3 PPC speed option) was sicher für19200 Baud FULL-Duplex Applikationen über mehrere Ports ausreicht, oder für 38400 Baud sofern die Daten überwiegend in eine Richtung gehen.

Als Beispiel ist ein einfaches Pascal-Program im Source-Code im Lieferumfang, welches eine verschlüsselte Verbindung über 2 Modems aufbaut.

PPC Geräte mit der DES-Option können Exportbeschränkungen unterliegen.

Digital I/O

Die DG1 digital I/O Karte ist eine optionale Erweiterung zum Einbau in das PPC mit 16 TTL-Eingängen und 16 open-collector (ULN2803) Ausgängen..

Für das PPC-E bietet die DG1E Karte die selben Fähigkeiten, jedoch ist eine gesonderte Backplane für die benötigte Verbindung beider Karten erforderlich.

Kundenspezifische Produkte

Basierend auf dem PPC sind bereits viele kundespezifische Produkte ausgeliefert worden..

 

Alle Details finden Sie hier im PPC/PPC-E User Manual als PDF-Datei: