Anleitung zum Messprogramm ETM 'Energy - 2LOG(Time) - Matrix' ====================================================================== Ausdrucken dieser Anleitung auf der VAX mit $PRINT EX_HELP:ETMHLP.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 SHOSPE muss auf der PDP11 installiert sein, wenn eine graphische Darstellung der Spektren gewuenscht wird. Dieses Programm dient der Aufnahme von Energie-Zeit-Matrizen, wobei die Zeit im Zweier-Logarithmus verarbeitet wird, um einen weiten Zeitbereich ueber- decken zu koennen. Die Energie ist spaltenweise (X-Achse) und die Zeit zeilen- weise (Y-Achse) angeordnet. Die Nummer des hoechstwertigen Bits im Zeitdaten- wort gibt die Nummer der aktuellen Zeile in der Matrix an, wobei die Numerier- ung von 1-16 erfolgt mit der 1 fuer das niederwertigste Bit. Im Daten-File sind die Zeilen in der Reihenfolge 1...16 abgelegt. Die Zeit null wird als 'Event out of range' verarbeitet. Zeit- und Energiepaare muessen dem Rechner als zusammengehoerig erkenntlich sein. Ebenso muss der Rechner erkennen koennen, wenn ein Datenpaar unvoll- staendig 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 Energiesignal E das Zeitsignal T Mit dem Startsignal wird die Datenkopplung gestartet, jedoch nur, falls nicht von Kopplungskarte, ADC oder Uhr 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 Energie- und Zeit-kanal. Dieses Freigabesignal (Poti und Ausgang 'Gate'auf KOPP-Karte) muss den Eigenschaften von Energie- und Zeitzweig 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 hinein- fallen. Diese Daten werden als 'multiple data' (EE, TT) registriert und ver- worfen, waehrend das erste Ereignis normal verarbeitet wird. Zu fehlerhaften Datensaetzen kann es dabei jedoch kommen, wenn z.B. der Zeitzweig aufgrund von Schwelleneinstellungen auf das erste Ereignis nicht angesprochen hatte. Dann wird die Zeit des zweiten Ereignisses zusammen mit der Energie des ersten Ereignisses verarbeitet. Das Freigabesignal sollte also nicht un- noetig gross gewaehlt werden. Falls das Timing von E- und T-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 E- und T-Zeig melden diese ihr 'Busy' an die Kopplungskarte und verhindern damit einen neuen Start. Ein vollstaendiges Ereignis besteht aus drei Datenworten: Energie-, Zeit-, Synchron-Wort. Im Energiezweig wird im allgemeinen ein ADC mit dem zugehoerigen Interface eingesetzt. Hier 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 Eigenschaften der Koinzidenzeinrichtung des ADC (prompt/delayed) zu beruecksichtigen. 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). Die Zeitmessung wird vorzugsweise mit der 16-Bit-Digitaluhr (UHR-Karte) durchgefuehrt. Sie kann wahlweise mit einem internen quarzgesteuerten 10MHz Takt betrieben werden oder extern bis zu 4MHz (siehe auch Routingbeschreibung). Sie ist zu versorgen mit einem Ruecksetzsignal (Reset, 5V), einem Auslese- signal (Uhr, positiv flankengetriggert) sowie gegebenenfalls einem externen Takt (Takt, max. 4MHz, min. 125ns Pulsbreite und -pause). Alle externen Signale werden auf den internen 10MHz Takt aufsynchronisiert. Daher ist der durch das Ende des Reset-Signals definierte zeitliche Nullpunkt innerhalb 100ns unscharf. Die erste Zeitscheibe beginnt eine Uhrtaktperiode(+0-100)ns (bei Verwendung des 10Mhz Taktes also 0 bis 100ns) nach dem Ende des Reset. Bei Messung der Lebensdauer eines exponentiellen Zerfalls hat diese Unschaerfe keinen Einfluss auf die Genauigkeit. Sie ist jedoch bei der Berechnung der Intensitaet eines Zerfalls zu beruecksichtigen. Bei 10MHz Takt hat die n-te Zeitscheibe in der Matrix eine Laenge von 2**(n-1)*100ns, d.h. die erste 100ns und die letzte (16.) 3.2768ms. Insgesamt werden 6.5536ms ueberdeckt. Bei einer Lebensdauermessung muss im allgemeinen mit einer zeitabhaengigen Totzeit gerechnet werden. Die UHR-Karte bietet die Moeglichkeit ihrer Messung. Dazu wird der LFT-Eingang mit einer konstanten Pulsrate (5V) versorgt, die zur Vermeidung von zusaetzlicher Last nicht zu hoch sein sollte (z.B. 100Hz). Diese Pulse fuehren nur dann zu einer Uebertragung der Zeit, wenn das ganze gekoppelte System nicht busy ist. Jede solche uebertragene Zeit wird in der Matrix in den nullten Kanal der zugehoerigen Zeitscheibe einsortiert, so dass mit der bekannten Eingangsrate eine Totzeitkorrektur fuer jede Zeitscheibe moeglich wird. (Die Energie null wird als 'Event out of range' registriert). Vorsicht, bei Verwendung periodischer Pulse fuer die Totzeitmessung koennen Interferenzen mit dem Uhrtakt auftreten, die zu voellig falschen Ergebnissen fuehren. Die Uhr fuehrt eine prompte Koinzidenz zwischen Freigabe- und Auslese-Signal durch. 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) ADC Interface (Energiezweig) IFS Karte (Modus: RUN, K2) UHR Karte (Zeitzweig) IFS Karte (Modus: LFT, FREI) KOPP Karte (Kopplungssteuerung, Modus: intern) Die maximale Datenrate ist begrenzt auf 6kHz, dh. auf eine maximale Ereignis- rate von 2kHz. 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:ETMPRM.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:ETMPAR.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:ETMHLP.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 Energie-wort E, das Zeit-wort T. 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 SHOSPE zur graphischen Darstellung des Spektrums auf dem Bildschirm sowie Peak-Integration. Die Ausgabe erfolgt im Tektronix 4010 Modus. Mit ^H (Taste CTRL und Taste H gleichzeitig) koennen Bedienungs- hinweise fuer SHOSPE abgerufen werden. Die Task SHOSPE muss auf der PDP11 installiert sein. Ferner muss genuegend Platz fuer SHOSPE 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 Energy: Laenge der Energieachse der Matrix Time : Laenge der 2LOG(Zeit)-Achse der Matrix Most left data ID Angabe der Datenkennung des linken Interfaces (Energiezweig). 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