Anleitung zum List-mode-Messprogramm LIST ========================================= Ausdrucken dieser Anleitung auf der VAX mit $PRINT EX_HELP:LISHLP.TXT, wenn Sie auf Ihrem Experiment-Account eingelogged sind. Das LIST-Messprogramm besteht aus folgenden PDP11-Tasks, die auf dem Experimentrechner installiert sein muessen: LIST Messprogramm LISTRA Transfer der List-Mode-Daten zur VAX Die Hard- und Software Voraussetzungen sind: PDP11/23+ mit 512kB DRQ11-CA DMA Interface DRQ11-Routing-Einheit VT240 Terminal RSX11S PDP11 Betriebssystem VAX als DECNET-host-Rechner Das LIST-Messprogramm wird ueberall dort sinnvoll eingesetzt, wo die anfal- lenden Daten nicht mehr zu Spektren reduziert werden koennen, bzw. solche Spektren den Rahmen des PDP11 Arbeitsspeichers sprengen wuerden. LIST ueber- traegt die Messdaten 'List-Mode-Form', d.h. im wesentlichen unbearbeitet, ueber das Netz zur VAX. Um vorruebergehende Engpaesse bei der Uebertragung ausgleichen zu koennen, ist das LIST-Programm mit einem Transfer-Puffer waehlbarer Laenge versehen. Dieser kann bei kurzzeitigen Messungen auch dazu verwendet werden, Datenraten zu verarbeiten, die groesser sind als die Trans- ferrate zur VAX. Die maximale mittlere Verarbeitungsrate fuer Messdatenworte (4Bytes) wurde bei unbelasteter VAX750 gemessen: auf PDP11- 23+ 73 'shared file access' 'close/open' 2.2kHz 4.2kHz nein nein ?.?kHz 1.7kHz ja ja ?.?kHz 2.0kHz ja nein 'Shared file access' wird benoetigt, wenn auf der VAX gleichzeitig zur Mess- ung eine Auswertung Zugriff zu dem LIST-Mode-File haben soll. 'Shared file access' benoetigt leider ca. drei mal mehr Zeit auf der VAX. Hinzu kommt, dass gelegentlich (alle 100s) eine 'Open/Close file' Sequenz durchgefuehrt werden muss, um den File fuer das Auswerteprogramm zu aktualisieren. Diese Open/Close-Sequenz unterbricht allerdings fuer kurze Zeit den Datentransfer und wird deshalb nur durchgefuehrt, wenn der Transferpuffer noch ausreichend freien Platz hat (max. 10% Fuellung). Die Auswertung der Messdaten erfolgt auf der VAX mit Programmen, die dem jeweiligen Problem angepasst sind. Es gibt Beispiele fuer solche Programme. Anordnung der Interface-Karten im Routing-Ueberrahmen ----------------------------------------------------- Da die Messdaten vom LIST-Programm nicht bearbeitet werden, wird keine feste Reihenfolge der Interfaces von LIST vorgeschrieben. Dem Auswerteprogramm auf der VAX muss die Anordnung der Interface-Karten jedoch im allgemeinen bekannt sein. Messdaten --------- Die List-Mode-Files sind in 512 byte Records segmentiert, mit dem Header im ersten Record. Der Header enthaelt am Anfang einen standardisierten Teil und anschliessend noch eine Reihe weiterer Daten (z.B. Lifetime-, Realtime- Zaehler usw.), zu denen man ueber den Include-File EX_PROG:LISPRM.FTN Zugang hat. Jeder der Daten-Records enthaelt am Anfang eine fortlaufende Record-Nummer (2 Bytes), beginnend mit null, modulo 65536, sowie die Zeit (Realtime-Sekun- den, 2 Bytes, modulo 65536) nach Start der Messung. Ein Restart der Messung ist zu erkennen durch ein erneutes Beginnen der Blockzaehlung bei null. Die Daten werden im wesentlichen unveraendert abgelegt, so wie sie vom Experiment uebertragen werden: Datenformat: '80kkddee'X kk : 8 Datenkennungs-bits ddee: 16 Daten-bits Achtung: Bei Bearbeitung der Daten unter FORTRAN wird in I*1, I*2 und I*4 Feldern in folgender Reihenfolge auf die Daten-Bytes zugegriffen: BYTE(I+0,1,2,3) kk 80 dd ee WORD(I+0,1) 80kk ddee LONG(I) ddee80kk Glaubt mir, so isses! Falls nicht 'shared file access' gewaehlt wurde, ist waehrend der laufenden Messung der List-Mode-File auf der VAX 'write-allokiert' und Auswertepro- gramme haben keinen Zugriff! Die List-Mode-Daten werden auf der VAX unter dem zugeordneten Account ge- speichert, zB.: Experiment xxxx Account xxxx File Name [dir]spektr.spe oder disk:[dir]spektr.spe Ablage auf EX_DATA:[dir]spektr.spe bzw. disk:[dir]spektr.spe entpricht DATA$xxxx:[dir]spektr.spe Falls die File-Spezifikation keine 'Node::' oder 'Device:' Angabe enthaelt, so wird die Default Device-Angabe 'EX_DATA:' hinzugefuegt (und auch am Bild- schirm angezeigt). 'EX_DATA:' kann durch den Login-File des Experiment- Accounts auf der VAX als "Logical" umdefiniert werden. Der Default fuer 'EX_DATA:' ist in LOGDEF.COM als DATA$xxxx (die Datenplatte) definiert. Das Messprogramm hebt seine aktuellen Parameter in dem File EX_PARAM:LISPAR.DAT auf, um sie bei einem nachfolgenden Start als Default- Werte anbieten zu koennen. Achtung: Die Logicals EX_DATA, EX_PARAM, EX_PROG und EX_HELP sind nur lokal innerhalb eines Experiment-Accounts gueltig. Man muss sich also auf dem richtigen Account einloggen, um sie verwenden zu koennen, z.B. fuer ein $PRINT EX_HELP:LISHLP.TXT . Im Gegensatz dazu sind die Logicals EX$xxxx und DATA$xxxx (xxxx steht fuer Experiment xxxx) global bekannt. Die Auswerteprogramme sollten moeglichst nach dem gleichen Default- Mechanismus arbeiten. Bildschirmanzeigen ------------------ In der obersten Zeile wird an erster Stelle der Name des Programmes darge- stellt. An zweiter Stelle folgt die Statusinformation offline/online/test, die anzeigt ob die Messung gestartet ist oder nicht. Dann folgt der Name des Spektrums und am Ende der Zeile eine detaillierte Statusanzeige in hexadezimaler Form von folgender Bedeutung: STATUS of spectrum (hexadecimal) 0001 Spectrum created on disk 0002 Spectrum saved on disk 0004 Spectrum created in memory 0008 Spectrum loaded in memory 0010 Experiment online 0020 Autonomous stop of experiment 0040 Test run 0100 Experiment failure 0200 Wrong typ of spectrum 0400 Error reading header of spectrum 0800 Error reading spectrum file 1000 Header loaded Die zweite Zeile dient der Ausgabe von Fehlermeldungen (blinkend), sowie Informationen ueber die augenblicklichen Aktivitaeten des Programmes. In der dritten Zeile werden Meldungen der Task LISTRA ausgegeben. Bedienung des Programmes ------------------------ Das Programm ist weitgehend selbsterklaerend. Die notwendigen Eingaben werden in Dialogform angefordert. Der Dialog ist in einer Hyrarchiestruktur auf- gebaut, wobei mittels Menuelisten von einer Dialogebene in die andere ge- wechselt werden kann. Bei Parametereingaben werden im allgemeinen Vorbeleg- ungswerte in Klammer ausgegeben, die mit der RETURN-Taste uebernommen werden koennen. +++ Einstiegsebene EXIT Verlassen des Programmes. START EXPERIMENT Fuehrt zu einer weiteren Dialogebene, in der eine naehere Spezifikation des Starts erfolgt. SHOW HEADER Zeigt die wichtigsten Daten des Headers, der jedem Spektrum beigefuegt ist: Name des Experimentes. Name des Spektrums. Titelzeile. Startzeit und -datum. Stopzeit und -datum. Die Zeit in Sekunden, waehrend der das Experiment gestartet war (Realtime). Die um die Totzeit korrigierte Zeit (Realtime - Deadtime), die der Messung zur Datenaufnahme zur Verfuegung stand (Lifetime). Anzahl der Datenworte, die an die Transfer-Routine uebergeben wurden (Processed data). Bei Stop des Messprogrammes gehen die Daten in dem letzten unvollstaendigen 512-Byte Block verloren, obwohl sie bereits gezaehlt sind (macht nix, oder?). Anzahl der 512-Byte List-Mode-Daten-Bloecke, die zur VAX uebertragen wurden (Blocks on disk). Aktueller Fuellstand des Transferpuffers in Bloecken (Blocks in buffer). Maximal erreichter Fuellstand des Transferpuffers in Bloecken (Buffer high water marker). Die 'max='-Anzeige gibt die Groesse des Transferpuffers an. Haeufigkeit der Ueberlaeufe des DMA-Puffers (Data overruns). Aus dieser Angabe kann nicht auf die Anzahl der verlorenen Daten geschlossen werden. Anzahl der Daten, die durch Hardwarefehler oder -stoerungen ver- stuemmelt uebertragen wurden (Data errors). Die Darstellung des Headers kann mit der Leertaste wiederholt werden. Mit der Return-taste wird die Darstellung beendet. Fuer ein nicht existierendes Spektrum (Status new) erfolgt eine gekuerzte Ausgabe. Not used Diese Menue-Position ist zur Zeit nicht belegt. SET FILE NAME Eingabe eines Datei- (File) Namens fuer den List-Mode-File. Dieser kann ein bereits existierender (Status old) oder ein noch nicht existierender (Status new) File sein. Die Angabe muss im VAX File Format erfolgen. Die Eingabe erfolgt getrennt fuer device:[directory] und filename. Die device:[directory] Eingaben werden, falls noetig, ergaenzt: Eingabe Resultat dir EX_DATA:[dir] [dir] EX_DATA:[dir] dev:[dir] dev:[dir] node::[dir] node::[dir] node::dev:[dir] node::dev:[dir] Falls nur die Directory angegeben wird, wird diese ergaenzt durch den logischen Device-Namen 'EX_DATA:' (s.o.). Das Resultat wird in der obersten Bildschirmzeile ausgegeben. Falls ein Knotenname 'node::' angegeben wird, muss dieser (vorzugsweise als Aliasknoten mit Zugriffskontrollinformation) im RSX11S-System definiert sein. Wird kein Knotenname angegeben, so wird der Default-Alias eingesetzt, der zum Host-Rechner und -Account fuehrt. DELETE SPECTRUM Ein existierender List-Mode-File wird geloescht, die Daten sind verloren. HELP Kopiert diesen Help-File auf den Bildschirm. +++ Startebene RETURN Rueckkehr zur uebergeordneten Dialogebene. CREATE NEW DATA FILE Start der Messung, falls noch kein List-Mode-Daten-File des angegebenen Namens existiert (Status new). Der Daten-File wird auf der VAX in dem zuge- ordneten Account allokiert (s.o.), ist zunaechst jedoch noch leer. Fuer ein bereits existierendes Spektrum erfolgt eine Fehlermeldung (Status old). CONTINUE OLD DATA FILE Start der Messung, falls sie mit einem bereits existierenden List-Mode-Daten- File (Status old) fortgesetzt werden soll. Fuer einen noch nicht existierenden Daten-File erfolgt eine Fehlermeldung (Status new). Not used Diese Menue-Position ist zur Zeit nicht belegt. PRINT DATA Druckt in hexadezimaler Form die Daten, so wie sie vom Experiment uebertragen werden, direkt auf dem Bildschirm aus. Die ersten vier Tetraden stellen die Datenkennung dar und die letzten vier das Datenwort: KKKK DDDD. Diese Funktion dient Diagnosezwecken (zB. Ermittelung der Datenkennung), die Daten werden nicht weiterverarbeitet. In der Datenkennung ist immer das erste Bit gesetzt. +++ Start-Parameter Eingabe Die Werte in ( ) sind Vorbelegungen und koennen mit RETURN uebernommen werden. Title Zur Beschreibung der Messung kann eine Titelzeile eingegeben werden. Length of buffer Zur Ueberbrueckung von Engpaessen bei der Uebertragung von List-Mode-Daten zur VAX enthaelt das LIST-Messprogramm einen Puffer, dessen Laenge in 512-byte Bloecken hier angegeben werden kann. Bei hoher Datenrate darf er nicht zu klein gewaehlt werden. Die Mindestlaenge ist 10 Bloecke. Die Zaehler 'blocks in buffer', 'Buffer high water marker' und 'Data overruns' (s.h. SHOW HEADER) geben Auskunft ueber den Zustand des Transferpuffers waehrend der Messung. ID of lifetime Die Software unterscheidet die eingegebenen Daten durch eine Datenkennung (ID). Diese ist durch den Steckplatz im Routing-Ueberrahmen festgelegt. Im vor- liegenden Fall bietet das LIST-Messprogramm die Moeglichkeit die Lifetime- Datenworte einer IFS-Karte zu akkumulieren und ueber die Funktion SHOW HEADER (s.o.) zur Verfuegung zu stellen. Die angegebene IFS-Karte muss im LFT-Modus betrieben werden. Die Lifetime-Datenworte werden auf jeden Fall auch mit den List-Mode-Daten uebertragen. Name of user procedure Zur Zeit noch nicht realisiert!!! Shared file access 'Shared file access' wird benoetigt, wenn auf der VAX gleichzeitig zur Mess- ung eine Auswertung Zugriff zu dem LIST-Mode-File haben soll. 'Shared file access' benoetigt leider ca. drei mal mehr Zeit auf der VAX. Hinzu kommt, dass gelegentlich (alle 100s) eine 'Open/Close file' Sequenz durchgefuehrt werden muss, um den File fuer das Auswerteprogramm zu aktualisieren. Diese Open/Close-Sequenz unterbricht allerdings fuer kurze Zeit den Datentransfer und wird deshalb nur durchgefuehrt, wenn der Transferpuffer noch ausreichend freien Platz hat (max. 10% Fuellung). +++ Funktionen bei laufendem Experiment STOP EXPERIMENT Die Messung wird gestoppt, der Transferpuffer geleert und die Zugriffssperre zu dem List-Mode-File auf der VAX freigegeben. Not used Diese Menue-Position ist zur Zeit nicht belegt. SHOW HEADER Siehe oben. Not used Diese Menue-Position ist zur Zeit nicht belegt. RUN PROGRAM Diese Funktion dient dazu bei laufender Messung ein weiteres Programm zu starten, zB.: RUN RVT Login zur VAX. Falls die PDP nicht genuegend Speicher zur Verfuegung hat, oder die VAX sich nicht meldet, oder das Programm sich nicht zurueckmeldet oder das Terminal nicht allokiert, erfolgt nach 20s ein Abbruch mit Fehlermeldung und Rueckkehr zum Messprogramm. Nach Verlassen des Programms wird in das Messprogramm zurueckgekehrt. Wurde das Programm (z.B. ANALYS) mit SUSPEND beendet, d.h. es wurde gestoppt, verblieb aber im Speicher, so wird es vom Messprogramm beim naechsten RUN PROGRAM, ohne den Namen anzufordern, mit RESUME wieder aktiviert. Dies geht erheblich schneller als ein neuer Start. Wird das Messprogramm beendet, so wird ein eventuell suspendiertes Subprogramm mit ABORT abgebrochen. Die aktuellen Parameter des Subprogrammes gehen dabei verloren. Am besten einfach alles ausprobieren. Unverstaendliche Zusammen- haenge bitte notieren, ebenso unklare Fehlermeldungen sowie falsche Reaktionen des Programmes. 02.12.1991 K. Huber