Anleitung zum Messprogramm MATRIX 'X-Y-Matrix' ============================================== Ausdrucken dieser Anleitung auf der VAX mit $PRINT EX_HELP:MTXHLP.TXT, wenn Sie auf Ihrem Experiment-Account eingelogged sind. 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 Die Task SHOMAT muss auf der PDP11 installiert sein, wenn eine graphische Darstellung der Matrizen gewuenscht wird. Dieses Programm dient der Aufnahme von X-Y-Matrizen. X ist spaltenweise (X-Achse) und Y zeilenweise (Y-Achse) angeordnet. X-Y-Paare muessen dem Rechner als zusammengehoerig erkenntlich sein. Ebenso muss der Rechner erkennen koennen, wenn ein Datenpaar unvollstaendig ist. Diese Forderungen werden durch eine sogenannte Datenkopplung mittels der Kopplungskarte (KOPP) gewaehrleistet. Von jedem entreffenden Ereignis des Experimentes muessen drei Signale abgeleitet werden: das Startsignal S das Signal X das Signal Y Mit dem Startsignal wird die Datenkopplung gestartet, jedoch nur, falls nicht von Kopplungskarte, X oder Y ein Busy ansteht. Nach erfolgtem Start wird von der Kopplungskarte vorrangig ein Synchronisier-Datenwort zum Rechner uebertragen. Ferner erzeugt sie ueber den Bus ein Signal zur Freigabe von X- und Y-kanal. Dieses Freigabesignal (Poti und Ausgang 'Gate' auf KOPP-Karte) muss den Eigenschaften von X- und Y-Zweig angepasst sein (s.u.), um den Verlust von Daten zu vermeiden. Zu lange Freigabeintervalle koennen bei hohen Zaehlraten dazu fuehren, dass mehr als ein Ereignis hineinfallen. Diese Daten werden als 'multiple data' (XX, YY) registriert und ver- worfen, waehrend das erste Ereignis normal verarbeitet wird. Zu fehlerhaften Datensaetzen kann es dabei jedoch kommen, wenn z.B. der Y-Zweig aufgrund von Schwelleneinstellungen auf das erste Ereignis nicht angesprochen hatte. Dann wird das Y des zweiten Ereignisses zusammen mit dem X des ersten Ereig- nisses verarbeitet. Das Freigabesignal sollte also nicht unnoetig gross gewaehlt werden. Falls das Timing von X- und Y-Zweig sehr unterschiedlich ist, kann ihre Frei- gabe auch individuell erfolgen ueber die BNC-Eingaenge GATE K auf den zuge- hoerigen IFS-Karten. Das interne Freigabesignal der KOPP-Karte muss dann so gewaehlt werden, dass es beide individuellen ueberdeckt (siehe auch Routing- beschreibung, IFS-, KOPP-Karte). Bis zur Beendigung der Datenuebertragung im X- und Y-Zeig melden diese ihr 'Busy' an die Kopplungskarte und verhindern damit einen neuen Start. Ein vollstaendiges Ereignis besteht aus drei Datenworten: X-, Y-, Synchron-Wort. Bei Einsatz eines ADC fuer den X- oder Y-Zweig ist fuer das Timing des Freigabesignals zu beachten, dass abhaengig von Puls-shaping und -hoehe das Ereignis im ADC frueher oder spaeter erkannt wird. Ferner sind die Eigen- schaften der Koinzidenzeinrichtung des ADC (prompt/delayed) zu berueck- sichtigen. Bei Einsatz des Silena ADC 7411 zusammen mit dem Standard ADC Interface erfolgt die Freigabe des ADC ueber die 'delayed' Koinzidenz (Stecker J3, Pin 35). Dies hat zur Folge, dass der ADC bereits erheblich vor dem Koinzidenzzeitpunkt busy meldet. Richtiges Timing ist dann gegeben, wenn 1. das Startsignal der Kopplungskarte zeitlich vor dem RTP-Signal des ADC (Ausgang 'Inspect' des ADC) liegt, um dem Busy des ADC zuvor zu kommen, 2. das Freigabesignal (Ausgang 'Gate' auf der Kopplungskarte KOPP) in allen Faellen die Rueckflanke des RTP-Signals (Koinzidenzpunkt) ueberdeckt (mit einer Sicherheit von ca. 100ns fuer Laufzeitdifferenzen). Bei Einsatz einer UHR-karte fuer den X- oder Y-Zweig ist zu beachten, dass die Uhr eine prompte Koinzidenz zwischen Freigabe- und Auslese-Signal durch- fuehrt. Das Freigabesignal muss mindestens 100ns vor der Vorderflanke des Aus- lesesignals anstehen. Nach erfolgter Koinzidenz meldet die Uhr busy bis zur Uebertragung des Datenwortes. Achtung: Die UHR-Karte haelt nicht an bei Ueberlauf der 16 Bit, sondern beginnt erneut bei null!!! (Sonderloesungen auf Anfrage) Die Anordnung der Interface-Karten im Routing-Ueberrahmen ist folgender (von links): IFS Karte (Modus: RUN, K2) X Interface (X-Zweig) IFS Karte (Modus: RUN, K2) Y Interface (Y-Zweig) IFS Karte (Modus: LFT, FREI) KOPP Karte (Kopplungssteuerung, Modus: intern) Die maximale Datenrate ist begrenzt auf 8kHz, dh. auf eine maximale Ereignis- rate von 2.6kHz. Die Spektren entsprechen dem Strahlenzentrumsstandard und koennen deshalb mit einer Anzahl vorhandener Programme weiterverarbeitet werden. Das Spektrum ist 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:MTXPRM.FTN Zugang hat. Die Kanaele des Spektrums sind als INTEGER*4 deklariert, d.h. jeder Kanal kann ca. 10**10 Ereignisse aufnehmen. Ein Record enthaelt 128 Kanaele. Der Verschnitt am Ende des Spektrums ist mit Nullen aufgefuellt. Die Spektren werden auf der VAX unter dem zugeordneten Account gespeichert. 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:MTXPAR.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:MTXHLP.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. 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 Laenge des Spektrums. Startzeit und -datum. Stopzeit und -datum. Restzeit des Timers fuer die Messzeitvorgabe (Timer). 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 vom Programm verarbeiteten Ereignisse (Processed events). Anzahl der Ereignisse, die ausserhalb der Matrixgrenzen liegen und deshalb nicht verarbeitet wurden (Events out of range). Anzahl der Daten, die auf Grund ihrer Datenkennung ausgesondert wurden, weil sie mit dem Experiment in keinem Zusammenhang stehen (Rejected data). Entweder wurde beim Start die Datenkennung falsch angegeben, oder es ist eine zusaetzliche Datenquelle unbeabsichtigt mitgelaufen. Anzahl der Daten, die durch Hardwarefehler oder -stoerungen ver- stuemmelt uebertragen wurden (Data errors). Anzeige von unvollstaendigen und mehrfach Daten (Incomplete events, multiple data). Zu jedem Ereignis werden genau drei Datenworte erwartet: das Synchron-wort S, das X-wort, das Y-wort. Falls Daten- worte ausfallen (weil z.B. Schwellen falsch eingestellt sind) oder zuviel sind (z.B. durch Rauschen eines Zweiges), wird die unbrauch- bare Kombination registriert. Die Darstellung des Headers kann mit der Leertaste wiederholt und mit der Return-taste beendet werden. Fuer ein nicht existierendes Spektrum (Status new) erfolgt eine gekuerzte Ausgabe. SHOW SPECTRUM Startet die Subtask SHOMAT zur graphischen Darstellung der Matrix auf dem Bildschirm im 'Hidden lines' Verfahren. Die Ausgabe erfolgt im 'REGIS'- Modus. Mit ^H (Taste CTRL und Taste H gleichzeitig) koennen Bedienungs- hinweise fuer SHOMAT abgerufen werden. Die Task SHOMAT muss auf der PDP11 installiert sein. Ferner muss genuegend Platz fuer SHOMAT im Speicher der PDP11 vorhanden sein, sonst erfolgt ein Abbruch mit Fehlermeldung. SET FILE NAME Eingabe eines Datei- (File) Namens fuer das Spektrum. Dieses kann ein bereits existierendes (Status old) oder ein noch nicht existierendes (Status new) Spektrum 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. DELETE SPECTRUM Ein existierendes Spektrum wird geloescht (im Arbeitsspeicher und auf der VAX), die Daten sind verloren. HELP Kopiert diesen Help-file auf den Bildschirm. +++ Startebene RETURN Rueckkehr zur uebergeordneten Dialogebene. CREATE NEW SPEKTRUM Start der Messung, falls noch kein Spektrum des angegebenen Namens existiert (Status new). Der Spektrenfile wird auf der VAX in dem zugeordneten Account allokiert (s.o.), ist zunaechst jedoch noch leer. Fuer ein bereits existier- endes Spektrum erfolgt eine Fehlermeldung (Status old). CONTINUE OLD SPECTRUM Start der Messung, falls sie mit einem bereits existierenden Spektrum (Status old) fortgesetzt werden soll. Das Spektrum wird von der VAX zur PDP11 geladen, falls es noch nicht da ist. Fuer ein noch nicht existierendes Spektrum erfolgt eine Fehlermeldung (Status new). TEST RUN Start der Messung, falls noch kein Spektrum des angegebenen Namens existiert (Status new), ohne jedoch auf der VAX einen File zu allokieren. Beim Stop der Messung werden die Daten nicht zur VAX gerettet, im Speicher bleiben sie aber erhalten und werden erst bei einem erneuten Start geloescht. Waehrend der Messung koennen die Daten mit 'SAVE SPECTRUM' zur VAX gerettet werden, beim ersten mal jedoch nur mit 'NEW VERSION', da das Spektrum noch nicht existiert. Die Messdaten koennen waehrend des TEST RUNs im Speicher (nicht auf der Platte) geloescht werden mittels einer Funktion im Display-Programm (SHOW SPECTRUM). 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), ein Spektrum wird nicht akkumuliert. In der Datenkennung ist immer das erste bit gesetzt. Seine Angabe ist beim Start jedoch nicht notwendig. +++ Start-Parameter Eingabe Die Werte in ( ) sind Vorbelegungen und koennen mit RETURN uebernommen werden. Title Zur Beschreibung der Messung kann eine Titelzeile eingegeben werden. Number of channels for X: Laenge der X-Achse der Matrix Y: Laenge der Y-Achse der Matrix ID of KOPP interface Angabe der Datenkennung der Kopplungskarte. Timer Eingabe einer Messzeitvorwahl in Sekunden Echtzeit. Bei Angabe von 0 oder eines negativen Wertes erfolgt kein automatischer Stop. Bei einem Neustart eines Spektrums ist der Vorbelegungswert immer 0, waehrend bei einem Restart die eventuell noch vorhandene Restzeit als Vorbelegung angeboten wird. +++ Funktionen bei laufendem Experiment STOP EXPERIMENT Die Messung wird gestoppt und das Spektrum zur VAX uebertragen (nicht im 'TEST RUN' Modus). Sollte hier bei die Fehlermeldung 'VAX not reachable' auftreten, so ist die VAX entweder abgeschaltet oder ueberlastet. Der Stop kann dann beliebig wiederholt werden. SAVE SPECTRUM Waehrend der laufenden Messung kann das Spektrum zur VAX gerettet werden. Dabei ist es moeglich das dort bereits existierende Spektrum zu ueberschreiben (Update) oder unter gleichem Namen eine neue Version anzulegen (New version). ****** entweder: Da die Uebertragung des Spektrums zur VAX eine gewisse Zeit benoetigt, wird die Messung fuer diese Zeit angehalten, um fuer alle Bereiche des geretteten Spektrums den gleichen zeitlichen Stand zu garantieren. ****** oder: Waehrend der Uebertragung des Spektrums zur VAX laeuft die Messung weiter. Da die Uebertragung des Spektrums zur VAX eine gewisse Zeit benoetigt, hat das gerettete Spektrum in seinen verschiedenen Bereichen einen unterschied- lichen zeitlichen Stand. ****** Ferner kann ein periodischer Update gestartet werden, der in Abstaenden von einer Stunde das Spektrum rettet und den Vorgang auf dem Bildschirm proto- kolliert. Die Messung wird dabei nicht angehalten. Waehrend des periodischen Updates ist das Terminal fuer Eingaben gesperrt. Er kann mit ^H (controle H) abgebrochen werden. SHOW HEADER Siehe oben. SHOW SPECTRUM Siehe oben. 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. 16.08.1991 K. Huber