-
Programminhaltsanalysator zur Überwachung der Programm-
-
arbeitsverteilung in einem programmgesteuerten System, insbesondere
in einer programmgesteuerten Fernsprechanlage.
-
Die Erfindung bezieht sich auf ein Programminhaltsanalysator zur Überwachung
der Programmarbeitsverteilung in einem programmgesteuerten System, insbesondere
in einer programmgesteuerten Fernsprechanlage, bei dem die in einer zentralen Steuerung
zu verarbeitenden Informationen und die sich daraus ergebenden Befehle in einem
Speicher mit wahlfreiem Zugriff (ruf) zwischengespeichert und über ein Datenübertragungsleitungsbündel
anderen zentralen und dezentralen Einrichtungen zugeleitet werden und dieser Speicher
zwecks Überwachungsaufgaben ebenfalls abfragbar ist.
-
In einem programmgesteuerten System werden Programmbefehle in einem
Speicher, beispielsweise in einem Speicher mit bzw. in einem Speicher ohne wahlfreiem
Zugriff oder in einem Schieberegister gespeichert. Aufeinanderfolgende Befehle werden
mittels eines Programmzählers ausgewählt oder mittels anderer Befehle anhand von
Adressen,die bestimmte Speicherbereiche zugeordnet sind abgerufen. Der Adressenbefehl
wird von einem Adressenspeicher zu einem Befehlsregister gegeben und decodiert und
der Vorgang wird dann von der Systemhardware bzw. von einer entsprechenden Software
verarbeitet.
-
Der Befehlsabrufvorgang und die Befehls-durchführung hat die Abgabe
von entsprechenden Informationen über im System vorhandene Datenübertragungsleitungen
zur Folge. Diese Datenübertragungsleitungen werden sowohl
von der
zentralen Steuerung als auch von dezentralen Einrichtungen abgetastet um die Informationen
zu verarbeiten bzw. Befehle untereinander auszutauschen.
-
In einem derartigen programmgesteuerten System laufen die unterschiedlichen
Verfahren unterschiedlich oft ab, so daß bestimmte Vorgänge sehr oft und andere
Vorgänge nur sehr wenig aufgrund von erarbeiteten Befehlen ausgeführt werden. So
werden in einem programmgesteuerten Fernsprechvermittlungssystem bestimmte Anforderungen,
beispielsweise zur Einleitung von Gesprächen sehr oft durchgeführt, während andere
Vorgänge, beispielsweise -Rückfragevorgänge und Umlegevorgänge nur weniger oft abzuwickeln
sind. Es besteht hierdurch im System die Gefahr der Überbelastung für bestimmte
Verfahrensabläufe, wobei dann auch sehr viel Zeitaufwand für diese Vorgänge erforderlich
ist. Es ist daher zweckmäßig bei einem derartigen programmgesteuerten System eine
über sicht über die Belastung infolge der Programmarbeitsverteilung zu erhalten.
-
Die Aufgabe der vorliegenden Erfindung besteht daher darin die Programmarbeitsverteilung
in einem programmgesteuerten System in einfacher Weise überwachbar zu machen, wozu
eine Einrichtung zu schaffen ist, welche die Analysierung der Arbeitsverteilung
zuläßt.
-
Erreicht wird dies dadurch, daß der erste Speicher mit wahl freiem
Zugriff des zu prüfenden Systems in getrennt ansteuerbare Bereiche für die Aufnahme
von Befehlen für getrennte Programmroutinen aufgeteilt ist und jeder Bereich durch
in einem zweiten Speicher des Programminhaltsanalysators enthaltenen Grenzadressen
definiert ist, sodaß der Reihe nach mittels der in dem zweiten Speicher des Programminhaltsanalysators
vorhandene Grenz-
adressen jeder zwischen zwei Grenzadressen liegender
Bereich ansteuerbar ist, um durch Vergleich der Befehlsadressen im ersten Speicher
mit den Grenzadressen im zweiten Speicher die Bereiche festzustellen, wo die Befehle
der zentralen Steuerung aufgenommen werden und die von jedem Bereich zur Befehlsabwicklung
benötigte Zeit festzustellen, welche dann in einer logischen Einheit des Programmanalysators
ausgewertet und in einem dritten, dem Programminhaltsanalysator zugeordneten Speicher
gesammelt und anschließend über ein weiteres Datenübertragungsleitungsbündel zu
einem Rechner mit Ausgabeeinrichtungen übertragen werden.
-
Auf diese Weise kann eine Übersicht über die benötigte Zeit der Befehlsabwicklung
in einem zu prüfenden System derart geschaffen werden, daß die Werte in einer entsprechenden
Ausgabeeinrichtung optisch darstellbar sind.
-
Durch die Aufteilung des dem zu prüfenden System zugeordneten Speichers
mit wahlfreiem Zugriff in für getrennte Programmroutinen vorgesehene Bereiche ist
damit die Programmarbeitsverteilung einfach ableitbar.
-
Gemäß einer weiteren Ausbildung der Erfindung ist der erste Speicher
mit wahlfreiem Zugriff des zu prüfenden Systems in getrennte ansteuerbarer Bereiche
für die Aufnahme von Befehlen für getrennte Programmroutinen aufgeteilt und jeder
Bereich ist durch in einem zweiten Speicher des Programminhaltsanalysators enthaltenen
Grenzadressen definiert, so daß der Reihe nach mittels der im zweiten Speicher des
Programminhaltsanalysators vorhandenen Grenzadressen jeder zwischen zwei Grenzadressen
liegende Bereich ansteuerbar ist, um durch Vergleich der Befehlsadressen im ersten
Speicher mit den Grenzadressen im zweiten Speicher die Bereiche festzustellen, wo
die Befehle der zentralen Steuerung aufgenommen werden um die Anzahl Zugriffe der
zentralen Steuerung zu
jedem Bereich festzustellen, welche Werte
dann in einem dritten, dem Programminhaltsanalysator zugeordneten Speicher gesammelt
und anschließend über ein weiteres Datenübertragungsleitungsbündel zu einem Rechner
mit Ausgabeeinrichtungen übertragen werden.
-
Auf diese Weise ist einfach die Belegungshäufigkeit der einzelnen
Bereiche feststellbar, so daß auch vorzeitig Überbelastungen registrierbar sind.
-
Gemäß einer weiteren Ausbildung der Erfindung sind sowohl die laufend
im System auftretenden, verschiedene Schaltzustände kennzeichnenden Bits als auch
jeder Programmbefehlsabruf und die Zuordnung von Adressen zu durchzuführenden Befehle
festzustellende Mittel in der logischen Einheit des Programmanalysators enthalten.
-
Auf diese Weise ist eine vielseitige Auswertung der eingeholten Überwachungsinformationen
möglich.
-
Gemäß einer weiteren Ausbildung der Erfindung sind im zweiten Speicher
N Grenzadressen zur Bestimmung N-1 Bereiche im ersten Speicher des zu prüfenden
Systems vorgesehen.
-
Gemäß einer weiteren Ausbildung der Erfindung enthalten die logische
Einheit des Programminhaltsanalysators Adressensuchmittel für die Zuführung der
mittleren Adresse der vorhandenen Grenzadressen zwecks Vergleich mit den Befehlsadressen
und wenn die erzeugte Adresse nicht gleich der durchgeführten Befehlsadressen ist,
erfolgt eine aufeinanderfolgende Zuführung der mittleren Adressen zu dem genannten
dritten Speicher um festzustellen Yu die Befehlsadresse gleich, oberhalb oder unterhalb
der vorliegenden Befehlsadresse liegt.
-
Auf diese Weise wird das Such- und Vergleichsverfahren
für
Bereiche und Grenzadressen vereinfacht.
-
Gemäß einer weiteren Ausbildung der Erfindung zeigt der angeschaltete
Rechner über ein Bildschirmgerät die ermittelten Werte je festgelegten Bereich in
einer Darstellungsgraphik parallel an.
-
Auf diese Weise ist eine einfache Darstellung der ermittelten Werte
die eine Aussage über die Programmarbeitsverteilung des zu prüfenden Systems geben,
darstellbar.
-
Nachfolgend ist anhand der Zeichnungen ein Ausführungsbeispiel der
Erfindung beschrieben.
-
Die FIG 1 zeigt eine Übersicht der Prüfanordnung mit dem Programminhaltsanalysator
gemäß der Erfindung.
-
Die FIG 2 zeigt einen Teil eines Grenzadressenspeichers der im Programminhaltsanalysator
gemäß der Erfindung verwendet wird.
-
Die FIG 3 ist eine graphische Darstellung einer typischen, optischen
Anzeige, die mittels des Programminhaltsanalysators gemäß der Erfindung erstellt
wird.
-
Die FIG 4a, 4b zeigen eine graphische Darstellung des Algorithmus
der Adressensuche, welche im Programminhaltsanalysator gemäß der Erfindung verwendet
wird.
-
Die FIG 5 zeigt eine Übersicht zur Erläuterung des Funktionsprinzips,
welches im Programminhaltsanalysator gemäß der Erfindung verwendet wird.
-
Die FIG 6 zeigt eine Übersicht des Programminhaltsanalysators gemäß
der Erfindung.
-
Nachfolgend sind die FIG 1 - 6 beschrieben, wobei in den FIGUREN gleiche
Teile mit gleichen Bezeichnungen versehen sind.
-
Wie vorstehend erwähnt überwacht der Programminhaltsanalysator gemäß
der Erfindung das Datenübertragungslei-
tungsbündel eines programmgesteuerten
Systems, welches einer Prüfung unterworfen ist, und zählt die Anzahl der Zugriffe
in jeden bestimmten Bereich des Systemspeichers.
-
Zusätzlich addiert der Programminhaltsanalysator die Programmablaufzeiten
der Befehle,die jedem Bereich zugeordnet sind. Die Bereichsidentifizierung wird
mittels einer Schnell-Vergleich-Technik erreicht und zwar unter Verwendung von Grenzadressen,
die in den Programminhaltsanalysator eingegeben worden sind. Das geprüfte System
wird durch die Funktion des Programminhaltsanalysators nicht gestört und genaue
Daten bestimmen die Eintrittsfrequenz in jeden Bereich. Die Zeit,die in Jedem Bereich
und/oder die Summe der Quadrate der Zeit, welche in jedem Bereich des Systemspeichers
aufgewendet wird, wird einem Tischrechner zugeführt. Der Tischrechner ist zur optischen
Wiedergabe und zum Ausdrucken graphischer und tabellarischer Daten programmiert,
die jeweils den aktuellen Systemprogrammbestand unter verschiedenen Betriebsverfahrensbedingungen
darstellen. Außerdem kann der Tischrechner für das Berechnen von Statistiken über
Daten jedes Bereichs der vorhandenen Bereiche programmiert sein.
-
Diese Daten enthalten die durchschnittlichen und Standartabiffichungen,sowie
sowohl die .: Varianz als auch die Minima und Maxima.
-
Es ist beispielsweise eine bevorzugte Aufgabe des Programminhaltsanalysators
nach der Erfindung den Prüfverfahrensablauf eines Fernsprechsystems oder eines Fernsprechamtes
zu messen. Zusätzlich zur Darstellung der Systembelastung entsprechend den Bestandteilen
des Programmcodes kann der Programminhaltsanalysator die Anzahl und die Kosten der
Fernsprechgesprächedie in dem System während einer vorgegebenen Zeit abgewickelt
werden, bestimmen. Dies wird du#rch Überwachung der Zugriffe zum Bereichsspeicher
durchgeführt, der die
Routine für die Abwicklung jedes Anrufes
enthält.
-
Die FIG 1 zeigt den allgemeinen Aufbau der Systemanalysierungsanordnung
gemäß der Erfindung. Das geprüfte System 10 enthält einen Speicher mit wahlfreiem
Zugriff RAM 12, der die Befehle zur Durchführung des Verfahrensablaufes mittels
einer zentralen Steuerung CPU l4speichert.Der Programminhaltsanalysator 16 empfängt
die Adresse jedes Befehles, welches durch das einer Prüfung unterw#orfene System
durchgeführt wird und verarbeitet diese Informationwie nachfolgend erläutert wird.
Der Programminhaltsanalysator enthält im wesentlichen eine logische Einheit 20,
welche die Befehlsadressen empfängt und verarbeitet, einen Speicher mit wahlfreiem
Zugriff RAM 22, der die Grenzadressen speichert und zwei weitere Speicher mit wahlfreiem
Zugriff 24 und 26 zur Sammlung und Speicherung der Ausgabedaten. Die Ausgabedaten
werden über ein Datenübertragungsleitungsbündel 28 mit direktem Speicherzugriff
einem 16-Bit-Minicomputer 30 mit einem Bildschirmgerät 32 und mit einer Tastatur
34 zugeführt.
-
Der Minicomputer kann beispielsweise ein normaler Weise auf dem Markt
angebotener Tischrechner sein.
-
Der Programminhaltsanalysator ist insbesondere zur Überwachung des
Adressendatenleitungsbündelsjdes der Prüfung unterzogenen Systems und zur Angleichung
bestimmter Daten entwickelt, welche dann auf Befehl des Minicomputers 30 dargestellt
werden. Der Speicher mit wahlfreiem Zugriff RAM 12 des der Prüfung unterworfenen
Systems 10 wird vorzugsweise unterteilt in 63 verschiedene Speicherbereiche und
der Programminhaltsanalysator sammelt folgende-Informationen für jeden dieser Bereiche:
(1) Die im Bereich benötigte Zeit (2) Die Summe der Quadrate der benötigten Zeit
innerhalb des Bereiches (T2 insgesamt); und (3) die Anzahl Zugriffe zu jeden Bereich
(N).
-
Die Übertragung vorübergehend gesammtelter Daten und die Sammlung
neuer Daten kann gleichzeitig mittels doppelt vorgesehener Pufferspeicher mit wahlfreiem
Zugriff RAM24 und 26 erfolgen, mittels denen eine fortlaufende Überwachung der Aktivitäten
des der Prüfung unterworfenen Datenübertragungsleitungsbündels möglich ist. Der
Minicomputer 30 sammelt diese Daten zu einem höheren Niveau und gibt verschiedene
Ergebnisse optisch wieder, wie beispielsweise Gesamtzeit, Hauptzeit und Standardablenkung
in.tabellarischer und in graphischer Form.
-
Die FIG 2 zeigt, wie der Speicher mit wahlfreien Zugriff RAM 12 im
System 10 durch den Programminhaltsanalysator in Bereiche unterteilt wird. Im Speicher
mit wahlfreiem Zugriff RAM 22 sind 64 Grenzadressen gespeichert, die unter ihnen
63 Bereiche bestimmen. Der gesamte Speicher mit wahlfreiem Zugriff RQSI12 wird zur
Speicherung von Befehlen im System 10 verwendet. Die Grenzadresse Null wird vorzugsweise
festgelegt auf "Null" und die Grenzadresse 63 wird auf die maximal mögliche Adresse
(FFFFF in hexadezimal) festgelegt. Selbstverständlich können zusätzliche oder weniger
Grenzadressen im Speicher mit wahlfreiem Zugriff RAM 22 gespeichert werden, beispielsweise
zur Bestimmung zusätzlicher (oder weniger) Bereiche des Speichers im der Prüfung
unterworfenen System. Vorzugsweise sind die Grenzadressen so gewählt, daß jeder
festgelegte Bereich ein individueller, getrennter Abschnitt#oder Routine des Programms,
gespeichert im Systemspeicher, enthält. Mit anderen Worten werden die Bereiche vorzugsweise
von einer Person ausgewählt, die eine genaue Kenntnis des Programms hat, welches
im der Prüfung unterworfenen System läuft, um eine verwendbare Analyse dieses Programms
oder eines Teiles des Programms vorsehen zu können.
-
Die FIG 3 ist eine typische graphische Darstellung, die durch den
Minicomputer 30 unter Zuhilfenahme des Programminhaltsanalysators gemäß der Erfindung
erzeugt wird und zwar bei der Überwachung einer programmgesteuerten Fernsprechnebenstellenanlage.
Bei diesem Beispiel war der Programminhaltsanalysator für die Dauer von 49769,07
Sekunden wirksam, d.h. für die Dauer der Abwicklung von 37791 Fernsprechanrufen
in einer Fernsprechnebenstellenanlage, d.h. mit im Schnitt 0.759 Anrufe pro Sekunde.
Der Speicher der Fernsprechnebenstellenanlage, der das Programm steuert7 ist in
63 Bereiche aufgeteilt und der Benutzungsprozentsatz des Programms wird berechnet
und Bereich für Bereich optisch dargestellt.
-
In FIG 3 ist das Programm, das in dem Bereich 3 gespeichert ist, für
37 ## der Zeit ausgenutzt, während das Programm der Bereiche 1, 5 und 6 weniger
als 1 Vo der Zeit ausgenutzt ist. Die in den Bereichen 0,2 und 4 gespeicherten Befehle
werden während der Gesamtdauer der Prüfung nicht benutzt.
-
Die graphische Darstellung in FIG 3 zeigt also die Arbeitsverteilung
der Programmsteuerung der Nebenstellenanlage. Die verschiedenen Benutzungsprozentsätze
(welche insgesamt 100 % ergeben) sind kennzeichnend für die Betriebsart des Systems
und unter bestimmten Umständen kann damit eine Überbelastung des Systems vorsorglich
signalisiert werden.
-
Die FIG 4 zeigt, in welcher Weise die Adressen aufeinanderfolgender
Befehle mit den Grenzadressen vergleichbar sind, die in den Speicher mit wahlfreiem
Zugriff RAM 22 enthalten sind, um den entsprechenden Bereich des Speichers zu finden.
Die logische Einheit 20 des Programminhaltsanalysators 16 vergleicht die Adressen,
die
von dem der Prüfung unterworfenen System 10 empfan gen werden, mit den mittleren
Adressen des Grenzadressenspeichers RA22,z.B. mit der Grenzadresse 32. Wenn die
empfangene Adresse größer oder gleich der Grenzadresse 32 ist, wird die mittlere
Adresse der oberen Hälfte der Grenzadressen im Speicher mit wahlfreiem Zugriff 22
gewählt - beispielsweise die Grenzadresse 48 -und ein Vergleich mit dieser Grenzadresse
wird durchgeführt. Wenn die empfangene Adresse niedriger liegt als die Grenzadresse
32, wird die mittlere Adresse der unteren Hälfte des Grenzadressenspeichers 22 -
d.h. des Grenzadressenspeichers 16 - ausgewählt und ein Vergleich wird durchgeführt.
Dieses Verfahren wird, wie in FIG 4 a, 4b dargestellt ist, wiederholt, bis der entsprechende
Bereich gefunden wurde. Die letzte Grenzadresse die auszuwählen ist, wird, wie an
der rechten Seite der FIG 4a, 4b dargestellt ist, den mit ungeraden Zahlen gekennzeichneten
Grenzadressen 1, 3, 5, 7....61 und 63 entsprechen.
-
Abhängig vom Ergebnis dieses Vergleiches wird der ausgewählte Bereich
schließlich bestimmt.
-
Während des Betriebes kontrolliert der Programm,inhaltsanalysator
die Zustandsbits der Steuerleitungen des einer Prüfung unterworfenen Systems und
bestimmt ob eine Programmbefehlsausgabe durchgeführt wurde.~ Wenn das System eine
Ausgabe durchführte, wird die Speicheradresse mit dieser Befehlsausgabe ausgewählt
und in der Logik des Programminhaltsanalysators gespeichert. Die Logik des Programminhaltsanalysators
triggert dann eine Suchadresse.
-
In der Adressensuchphase führt der Programminhaltsanalysator den in
FIG 4a, 4b dargestellten Algorithmus durch,bei dem die gespeicherte Adresse mit
der Grenzadresse, die
in den Grenzadressenspeicher 22 gespeichert
ist, verglichen wird um den Speicherbereich der gespeicherten Adresse festzustellen.
Wenn dieser Bereich identisch ist mit dem Bereich'der bei der vorhergehenden Suche
festgestellt wurde - d.h. bei laufend durchgeführten Befehlen im gleichen Bereich
des Speichers ausgelesen ist, als der vorangehend durchgeführte Befehl - sammelt
der Programminhaltsanalysator einfach einen Zeitzählwert, wartet die nachfolgende
Befehlsausgabe ab und wiederholt dann das Verfahren der Adresspeicherung und Verarbeitung
gemäß dem Algorithmus nach FIG 4a, 4b (Adressuche). Wenn der Bereich nicht gleich
dem vorhergehend gefundenen Bereich ist, blendet der Programminhaltsanalysator die
Zeitmessung,wie nachfolgend beschrieben ~aus.
-
Die Zeitmessung wird im Programminhaltsanalysator unter Verwendung
der in den FIG 5 dargestellten Logik ausgeblendet. Diese Logik enthält einen freilaufenden
Taktgenerator 36, der Pulse einem 16-Bit-Zähler 38 zuführt. Jedesmal wenn eine Messung
ausgeblendet wird, wird der Inhalt des Zählers 38 in einen 16-Bit-Speicher 40 gegeben
und dann wird der Zähler zurückgese-tzt.
-
Die Zählung im Register 40 gibt deshalb die Zeit T wieder, während
dessen Befehle von einem bestimmten Bereich durchgeführt werden. Diese Zeit wird
gesammelt als Tinsgesamt in einem der beiden Speicher mit wahlfreiem Zugriff RAM
24 und 26 durch Addieren der Zeit T zum vorhergehenden Gesamtwert TinsgeSamt - 1mittelsdes
Addierers 42. Die Zeit T wird auch mit seinem eigenen Wert in einem Multiplizierer
44 multipliziert um das Ergebnis T2 zu erzeugen. Dieser Multiplikationswert wird
dem Addierer 42 zugeführt und mit den gesammelten Werten T2, d.h. T2 insgesamt -
1' zu T2 insgesamt addiert.
-
In der gleichen Weise wird, zu jedem Zeitpunkt, zu aem
eine
neue Befehlsadresse eingeht diese im Prograinm3Lnhaltsanalysator gespeichert und
der Bereich für diese Adresse wird als unterschiedlich zu dem Bereich des vorangehenden
Befehles bestimmt. Die Anzahl N der Bereichszugriffe für diesen Bereich wird dann
auf den letzten Stand gebracht, in dem eine Eins (1) dem Addierer# 46 zwecks Addition
zugeführt wird.
-
Während der Zeit, daß die Zugriffe in einem der beiden Speicher mit
wahlfreiem Zugriff RAM 24 und 26 gemacht werden, wird der Inhalt des jeweils anderen
Speichers mit wahlfreiem Zugriff RAM über den DatenXibertragungskanal 28 dem Minicomputer
zugeführt. Nachdem der eine Speicher mit wahlfreiem Zugriff RAM ausgelesen ist,
wird der Inhalt dieses Speichers auf Null zurückgesetzt und werden die Zahlen T.
T2 'insgesamt' insgesamt T insgesamt gespeichert.
-
Die Ausführungsform des Programminhaltsanalysators gemäß FIG 1, 4a,
4b und 5 ist in FIG 6 schematisch gezeigt.
-
Vor der Programminhaltsanalysator seinen Verfahrensablauf anfängt,
werden Grenzadressen dem Grenzadressenspeicher mit wahlfreiem Zugriff RAM22 unter
Zuhilfenahme des Minicomputers über den Empfänger 47 zugeführt.
-
Während der Funktion des Programminhaltsanalysators wird der in FIG
4a, 4b dargestellte Algorithmusvergleich durch die Adressensuchlogikwelche im oberen
Teil der FIG 6 dargestellt ist, durchgeführt. Die Adresse des gerade behandelten
Befehles wird von dem der
Prüfung unterworfenen System 10 über
die Leitungen 18 und einem Empfänger 48 empfangen und dem Adressenspeicher 50 zugeführt.
Die gespeicherte Adresse wird vorab mit der mittleren Adresse des Grenzadressenspeichers
RAM22 in einem 20-Bit-Vergleicher 52 verglichen, der eines der beiden nachfolgenden
Ergebnisse erzeugt: (1) Höher oder gleich; und (2) niedriger. Ein Signal, welches
das Ergebnis dieses Vergleiches darstellttwird einem Multiplexer 56 zugeführt, der
die empfangenen Adressen (entweder höher oder nieriger) aus den Speichern 58 bzw.
60 auswählt. Die betreffende Adresse wird einem 6-Bit-Speicher 62 zugeführt und
dort gespeichert ~ind dem Grenzadressenspeicher RAM 22 als eine Adresse angeboten.
-
Diese 6-Bit-Adresse wird auch den Speichern 58 und 60 erneut als Adresse
zugeführt um die nachfolgende Adresse auszuwählen.
-
Wenn die gesuchte Adresse vollständig ist (nach 7-Takt-Zyklen, wie
in FIG 4 dargestellt ist) und der Bereich gefunden wurde, wird ein Vergleich gemacht,
um zu bestimmen ob der gerade gefundene Bereich gleich dem vorabgefundenen Bereich
ist. Dies wird durch Vergleich der aktuellen Adresse 1die dem Grenzadressenspeicher
RAM 22 zugeführt wird in einem 6-Bit-Vergleicher 64, welcher diese Adresse mit der
vorabgehenden Adresse, die in einem Speicher 66 zwischengespeichert ist, vollzogen.
-
Wenn diese beiden Adressen gleich sind,wird ein Signal der Folgesteuerlogik
füber die Leitung 68 zugeführt, um ein Beenden der Zeitmessung zu verhindern. Wenn
die zwei Adressen nicht gleich sind und kein Signal auf der Leitung 68 erscheint,
wird ein Berechnungszyklus mit dem Zähler 38, Register 40, Addierer 42 und Multiplizierer
44 durchgeführt. Diese Berechnung wird durch die Folgesteuerlogik 54, gesteuert.,
wobei diese Folgesteuerlogik 54
ein Steuereingabesignal vom Minicomputer
über einen Empfänger 70 empfängt.
-
Die Werte T gesamt , T2 insgesamt und N sind für jeden Bereich in
zwei Pufferdatenspeicher mit wahlfreiem Zugriff (RAM)24 und 26 abgespeichert und
zwar zwecks Weitergabe zum Minicomputer über ein Ausgangsregister 72.
-
Der Programminhaltsanalysator kann einzelne gedruckte Schaltungen
oder Drahtwickelverbindungen aufweisen, die in getrennten Einheiten mit einer eigenen
5-Volt-Speisung und einem Kühlventilator angeordnet sind. Ein Standard-16-Bit Parallelschnittstellenkabel
wird zur Verbindung des Programminhaltsanalysators mit dem Minicomputer verwendet.
Ein paar Flachkabel führen zu einzelne Aufnahmebausteingruppen und werden dazu verwendet
das der Prüfung unterworfene System mit den Abschlußwiderständen und den Programminhaltsanalysator
zu verbinden.
-
Die Signalaufnahme-Bausteingruppen enthalten verschiedene Treiber,
die ein ausgewogenes Signal über Flachkabel zum Programminhaltsanalysator übertragen.
Kurze Leitungen sind für ein Triggersignal, drei geeignete Kennzeichnungssignale
und 20 Adressenleitungen vorgesehen.
-
Diese können direkt mit der Rückwandverdrahtung oder über Drahtwickelverbindungen
angeschlossen werden. Jede Bausteingruppe enthält auch + 5 Volt-und Erdpotentialeingängen
die zum der Prüfung unterworfenen System zur Zuführung der erforderlichen Stromversorgung
anzuschalten sind.
-
Alle Signale können von entsprechenden TTL-Logik-Ebenen
aufgenommen
werden. Trigger und Kennzeichnungssignale können falls erforderlich mittels eines
entsprechenden Schalters mit dem ensprechenden Programminhaltsanalysator#Adapter
verbunden werden. Weiterhin können alle Signale invertiert werden' um einem entsprechenden
Adressenleitungsbündel zugeführt werden zu können, in dem die Polarität der entkoppelten
Signale umgekehrt werden.
-
Dies wird erreicht durch Verwendung eines zusätzlichen kurzen Kabels
und Zwischenfügung eines entsprechenden Anschlusses im Signalweg. Dies bewirkt eine
Verwechslung der ungeraden und geraden Anschlußstife des Aufnahmekabels, welches
die entkoppelten Signale invertiert.
-
Der Programminhaltsanalysator ist dazu ausgelegt mit einem Minicomputer
zu arbeiten, der eine 16-Bit-Parallelschnittstelle hat.
-
Der Grenzadressenspeicher mit wahlfreiem Zugriff RAM 22 wird zuerst
mit einer Anzahl Grenzadressen versorgt, die dem Rechner HP zugeführt sind. Wenn
dieser Speicher 22 diese Adressen aufgenommen hat, beginnt die Logik automatisch
mit einem Ablaufverfahren, wobei folgende Reihenfolge an Vorgängen stattfinden:
(1) Es wird ein Triggersignal empfangen, welches die Speicherung einer 20-Bit-Adresse
im Eingangsregister veranlaßt.
-
(2) Eine Adressenvergleichsfolge, welche angefangen wird, um ein spezieller
Bereich festzustellen, der die Adresse enthält. Diese Bereichskennzeichnung wird
gespeichert und verglichen mit der Bereichskennzeichnullg die von dem nachfolgenden
Trigger abgeleitet wird.
-
(3) Wenn die Bereichskennzeichnungen wechseln, wird der Inhalt eines
16-Bit-Zählers 38der mit einer Frequenz von 8.192 #Iz umläuftigespeichert und der
Zähler wird für einen neuen Bereich gestartet.
-
(4) Eine Berechnungsfolge wird gestartet um die Zeit-
zählergebnisse
des vorangehenden Bereiches bis zu einem Maximum von 32 Bits zu sammeln. Der Quadratwert
des Zeitzählergebnisses wird vom Multiplexer 44 erhalten und zu der Summe der vorangehenden
quadratischen Werte mit einem Maximum von 64-Bits hinzuaddiert. Die Frequenzzählung
wird ebenfalls mit einem Maximum von 32 Bits einbezogen um die Anzahl Eintritte
einer Adresse zu diesem Bereich und zwar von außerhalb der gekennzeichneten Grenze
zu erhalten.
-
Adressensuche und Berechnungsfolgen können gleichzeitig ablaufen und
sind in einer Mikro sekunde abgewickelt.
-
Deshalb ist die Logik in der Lage Adressen zu analysierendie die Grenzwerte
mit jedem Trigger ändern und schlimmstenfalls jede andere Mikro sekunde eine solche
Änderung auftritt. Die Ergebnisdaten sind in einer Hälfte der beiden Datenspeicher
mit wahlfreiem Zugriff RAM 24 und 26 gespeichert, Wenn ein Lesebefehl vom Rechner
eingeleitet wird, erfolgt die Datenzusammenstellung in den jeweils anderen der beiden
Speicher mit wahlfreiem Zugriff und der Datenrahmen im ersten Speicher mit wahlfreiem
Zugriff wird über die Datenübertragungsleitungen DMA (28) zum HP Rechner übertragen.
Diese Übertragung erfolgt von diesem Speicher aus direkt und ist synchronisiert
mittels Adressenvergleiche'die keine Berechnungsfolgen erfordern. Die Übertragungsgeschwindigkeit
ist deshalb abhängig vom Trigger und von der Änderungsgeschwindigkeit der Grenzadressen.
Die Grenzadressen müssen eingespeichert werden, um eine Änderung der Bereiche wenigstens
alle 8 Millisekunden sicherzustellen, um ein Überfließen des Zeitzählers zu vermeiden.
Schlimmstenfalls wird ein #erfließen der Daten in einem der RAM Speicher 24 bzw.
26 erfolgen, wenn Zeit im wesentlichen in einem Bereich gespeichert ist. Die HP
Rechner-Software muß einen Lesebefehl abgeben, bevor annähernd 8,7 Minuten verstrichen
sind, um diese Bedingung sicherzustellen.
-
Beispielsweise wird der Programminhaltsanalysator mit einem System,
das ein bestimmter Mikroprozessor enthält und ein geeignetes Programm in einem Speicher
mit wahlfreiem Zugriff 12 aufweist zur Überwachung verbunden. Die dann möglichen
Zustandssignale (S2, 51 und SO) können als Kennzeichnungssignale verwendet werden
um einen Befehlsabruf gemäß der nachfolgenden Tabelle zu bestimmen:
S2
S1 S0 Unterbrechungskennzeichnung 0 0 0 Lesen Ein/Aus 0 0 1 Schreiben Ein/Aus 0
1 0 Anhalten 0 1 1 Codezugriff 1 0 0 Lesespeicher 1 0 1 Schreibspeicher 1 1 0 Passiv
1 1 1 Die Grenzadressen müssen sorgfältig ausgewählt werden um Fehler zu vermeiden,die
der Vorabruffolge des Mikrocomputers entsprechen. Wenn die letzten, wenigen Adressen
in einem bestimmten Bereich einen Code beinhalten, der durchzuführen ist, werden
Fehler auftreten, wenn Befehle von außerhalb des Bereiches vorab abgerufen werden
und die Befehlsfolge nur noch einen Teilbefehl entspricht. Um dies zu korrigieren
enthält die Hardware des Programminhaltsanalysators ein Schieberegister, welches
einen 0 - 6 Befehlszyklusverzögerung ermöglicht bevor Daten bezüglich einer Bereichsänderung
berechnet werden. Hierdurch werden kurze Austritte außerhalb eines Bereiches ausgeschlossen,
die durch ein Vorabrufen nicht durchgeführter Befehle verursacht werden, so daß
Grenzen jeder Adresse zuordenbar sind. Zeitmessungen werden leicht geschoben und
eine geringfügige Ungenauigkeit bezüglich der verschiedenen Durchführungszeiten
individueller Befehle entstehen. Dieser Fehler ist vernachlässigbar, wenn der Codebestandteil
der gemessen wird mehr als ein paar Befehle lang ist.
-
Der Verfahrensablauf des Programminhaltsanalysators wird unter Steuerung
des HP Minicomputers durchgeführt.
-
Der Programminhaltsanalysator kann wie folgt arbeiten:
Nachdem
der Programminhaltsanalysator über Kabel mit dem zu prüfenden System und den zugeordneten
HP Rechner verbunden ist werden alle Stromversorgungsschalter betätigt und damit
die HP Rechner Software aktiviert.
-
In dem gesetzt wird: GET SWTST : T14" und die Taste Ablauf betätigt
wird. Das Setzen einer Grenzadresse kann dann über eine gespeicherte Folge von Adressen
oder durch Eingabe neuer Bereichsadressen erfolgen, die über die Tastatur eingegeben
werden. Für alle geforderten Programmeintritte werden über den Bildschirm bzw. durch
genaue Messungen Befehle eingegeben.
-
Der HP Rechner wird dann den Zeitpunkt des Eintrittes im Programm
abfragen und damit die Länge der Prüfung festlegen. Die jeweils abgelaufene Zeit
wird im rechten Eck des Bildschirmes dargestellt und eine Textausgabe wird automatisch
zusammen mit dem Prüfergebnis gedruckt.
-
Der Rechner HP wartet dann auf einen speziellen Funktionstastendruck.
Die möglichen Tastendrücke werden wie folgt definiert: Ko Starten des Abtastens
- das Programm wird den Bereich vs aufnehmen. Übertragung der Grenzadressen zum
Programminhaltsanalysator und Anfang der Datensammlung.
-
K1 Rückstellprüfung - Rückstellzeiten der Prüfung bei ~Null" und Rückstellen
der Datensammeleinrichtungen innerhalb des HP Rechners.
-
K2 Bereichslisten - Ausdrucken der Grenzadressen und Bereichsnamen
K3, K4, K5 Diagramme X1, X10, X100 - setzen der Abmessungen
der
zu zeichnenden Kurve auf einen festgelegten Maßstab. Wenn X10 oder X100 Werte ausgewählt
werden, werden die Bereichsgrenzen herabgesetzt bis zu einem Maximumwert von 10
%0 bzw. 1 #. Datentabellen für jeden speziellen Bereich werden fortlaufend zur Darstellung
der vollen Werte erstellt.
-
K6, K7 Schieber 5 links, rechts - Grobeinstellung des Bereichsschiebers.
Bewege die Ablesemarke:5 Bereiche in der gekennzeichneten Richtung bei betätigter
Taste.
-
K8, Kg Wähle die graphische Wiedergabe mit 64, 65 falls erforderlich
und ermögliche den Benutzer den graphischen Schieber zu bewegen. jeder Bereich der
durch den Schieber gekennzeichnet wird kann dann kombiniert werden mit oder erneut
eingestellt werden aus dem Pseudobereich durch Betätigen der Tasten K8 oder K9,.falls
erforderlich. Beispielsweise wenn ein Fernsprechsystem überwacht wird können die
Bereiche für die Verarbeitung von Anrufen nicht mit Nicht-Anrufs-Verfahrens-Bereiche
kombiniert werden da unterschiedliche Datenwerte für diese zwei Arten von Bereichen
berechnet werden.
-
K10 Graphik/Tabelle - Umschaltung zwischen graphischer Darstellung
und Tabellenangaben für den Bereich, gekennzeichnet durch den Schieber.
-
K11 Ausgabebereiche - bringt den HP Rechner in einem Auslesezustand,
wo Grenzadressen und Bereiches namen hinzugefügt werden, gelöscht werden oder geändert
werden. Verwendete Befehle werden auf
den Bildschirm wiedergegeben.
-
K12 Drucken von Daten - Niederschrift gesammelter Daten wird gedruckt.
-
K13 Auslesezeile - Zeile - ermöglicht den Verwender die Zeile des
Programms anzugeben, welche dann optisch wiedergegeben wird, wenn "Durchführungstaste"
gedruckt ist. Für Programmende des Auslesevorgangs ist STOP zu betätigen.
-
K14, K15 Schieber 1 links, rechts - genaue Einstellung des Bereichsschiebers.
Bewegt den Zeiger eines Bereiches in Richtung Kennzeichnung, bei Betätigung.
-
Die Programmdurchführung kann jederzeit angehalten und neu gestartet
werden wenn "Steuer"- und "Stop"-Tasten gleichzeitig und danach die Taste 11Weiterlaufen11
betätigt wird. Hierdurch wird das Programm komplett neu gestartet und es muß dann
die Prüfzeit usw. neu eingegeben werden.
-
Leerseite