'1~O lose TECHNISCHE HOGESCHOOL EINDi-iCV£N STUDIEBi6L10THEEK
,~~ ELEKTROTECHN1EK
AFDELING DER ELEKTROTECHNIEK
EEN
AUTOH.A.TISCH DIAGNOSTIEK
SYSTEEH VOOR EEN HYBRIDE COHPUTER-TNSTALLATIE L\.ob Boers
Xees A,M. Neggers
Rapport van het afstudeerwerk uitgevoerd in de periods maart 1971 tot januari 1972 o.l.v. Prof.Dr. R.J. Lunbeck. Kontaktpersoon voor de afdeling der Elcktrotechniek: Prof.Dr.Ir. P. Eykhoff.
TEe H N I S C H E
HOG Ese H 0 0 LEI N D H 0 V E N
..
Het voor u liggende verslag is de rapportage van een in teamverband verricht afstudeeronderzoek onder leiding van Prof.Dr. R.J. Lunbeck van de Afdeling Wiskunde van de Technische Hogeschool te Eindhoven. Oorspronkelijk had dit onderzoek tot doel testprogramma1s te ontwerpen voor het dynamisch testen van analoog-digitaal en digitaal--analoog omzetters van het hybride computersysteeem van het Kon/Shell laboratorium te Amsterdam. Naarmate meer inzicht werd verkregen in de problemen rond de diagnostiek van de betrokken installatie groeide het onderwerp uit tot een algemene aanpak van automatische diagnostiek voor hybride computers. Een deel van het werk is verricht op het Kon/Shell laboratorium; wij danken de directie hiervan voor de verleende gastvrijheid. Onze coaches, ing. J. Pelle (Kon/Shell lab.) en Ir. H.A.L. Piceni (T.H.E) zijn wij zeer erkentelijk voor hun begeleiding en inbreng. Bijzondere dank zijn wij verschuldigd aan Prof.
~unbeck
voor de prettige
wijze waarop hij ons heeft begeleid. Wij hebben een grote mate van vrijheid gehad in werkverdeling en nadere definiering van het onderwerp. Aan de vele gesprekken met hen denken wij met plezier terug. Voor de assistentie bij het implementeren van het HDP danken
w~J
ing. M.e. Valentijn (Kon/Shell lab.); evenzo de vele anderen, zowel op het Kon/Shell lab. als op de T.H.E., waarmee we over ons werk hebben mogen discussieren en die daarmee hebben bijgedragen
tot het
uiteindelijk resultaat. Het typewerk is verricht door Mevr. Lilian Bleijerveld waarvoor wij haar hartelijk dankzeggen.
SAMENVA'l''1'ING.
Voor een hybride computerinstallatie is een automatisch diagnostiek systeem voor het analoge deel en het interface ontworpen en geimplementeerd. Het systeem is zowel geschikt voor een globale diagnose van de installatie als voer het verkrijgen van detail-informatie over een gedeelte ervan. De gebruiker kan langs interactieve Yleg bepalen welke te'sts worden uitgevoerd. Het systeem is modulair van opbouw en bezit een duidelijk hierarchische structuur, waardoor wijzigingen eenvoudig zijn aan te brengcn. Hoewel het systeem in Fortran is geimplementeerd voor een bepaalde installatie) zijn zowel de algehele structuur als verschillende detailprogrammaTs bruikbaar bij andere installaties.
SUMMARY.
An autcmatic diagnostic system has been developed
and implemented for
the interface and the analog part of a hybrid computer. The system is capable of making an overall checkout of the installation as well as a detailed diagnostic of certain parts of it. The user can determine interactively which tests will be executed. The system is of modular build up and has a hierarchical structure, which enables changes to be made easily. Although the system is implemented in Fortran for a specific installation, the complete structure as well as several subprograms are tr.ansferable to other installations.
VERANT~/OORDING •
Hoewel het gehele afstudeerwerk in volledige samenwerking is volbracht en elk deel van dit verslag in kleine kring ter discussie is gesteld, geven we op verzoek een formele verantwoording van het hier gepresenteerde.
Gedeelte
Schrijver
hoofdstuk 2
Neggers
hoofdstuk 3
Boers
hoofdstuk 4
Neggers
hoofdstuk 5
Boers
hoofdstuk 6
Boers
hoofdstuk 7
Gezamenlijk
hoofdstuk 8
Neggers
appendix I
Neggers
appendix I I
Boers
SAMENVA'l'TING INHOUD • .1. INLEIDING
I-I
2. DIAGNOSTIEK VAN EEN HYBRIDE COMPUTER-INSTALLATIE
2-1
2.1. Betrouwbaarheid
2-1
2.2. Fouten
2-2
2.3. Teststrategieen
2-3
2.4. Test-methoden
2-4
2.5. Hybride diagnostiek
2-6
2.6. Toepassing op een hybride installatie
2-7
3. BESCHRIJViNG VAN HET IITBRIDE DIAGNOSTIEK PROGRAMMA
3-1
(HDP) Inlei~ing
3-1
3.2. Structuur
3-2
3.1.
3.2.1. Het besturingsgedeelte
3-2
3.2.2. De uitvoerende routines
3-6
3.2.3. De testroutines
3-6
3.2.4. De basistestroutines
3-7
3.2.5. De hybride systeembibliotheek
3-7
3.3. Implementatie
3-7
3.4. Het aanbrengen van wijzigingen in het HDP
3-8
3.4.1. Veranderingen in het bestaande systeem
3-10
3.4.2. Uitbreidingen van het bestaande systeem
3-10
4. DE MORNING READINESS TESTS (MRT)
4-1
4.1. Inleiding
Lf-I
Lf.2. Structuur
4-1
4.3. De MR-tests
4-3
4.3.1. MROI Voedingsspanningen analoge machines
4-Lf
4.3.2. MR02 Adressering en verificatie van de
4-4
aanwezigheids-gegevens in de HDP dataset
4.3.3. MR03 Het zetten van de analoge modes
4-4
4.3.4. MR04 Referentie DAC (RDAC) en digitale
4-4
voltmeter 4.3.5. MR05 Precision interval generator (PIG)
4-5
4.3.6. MR06 HODADS en servopots
4-5
4.3.7. MR07 Digitaal analoog 'omzetters
(DAC)
4-5
4.3.8. MR08 Analoog digitaal omzetters
(ADC)
4-6
4.3.9. MR09 Controllines
4-6
4 •3 . 10 . MR 10 Relais en weerstanden
4-6
4.3.II.MRII Summers
4-7
4.3.12.MRI2 Vermenigvuldigers
4-7
4.3.13.MR13 Integratoren
4-8
4.3 .. 14.HRI4 Track-hold netvlerken
4-8
4.3. 15.MR15 Track-track netwerken
4-8
4.3.16.MRI6 Comparators
l.-9
4.3.17.MRI7 DA switches
4-9
4.3.18.MRI8 Log generatoren
4-9
4.3.19.MRI9 Trunks
4-10
4.3.20.MR20 Verwisseling patch-panels
4-10
5. DE STAND ALONE TESTS (SAT)
5-1
5.1. Structuur
5-1
5.2. De uitvoerende routines
5-2
6. DE BIBLIOTHEEK ROUTINE TEST (BRT)
6-1
6.1. Inleiding
6-1
6.2. Werkwijze
6-1
6.3. Details
6-2
6.4. Implementatie
6-3
..
7. TESTSTRATEGIEEN VOOR DE INDIVIDUELE COMPONENTEN
7-1
7.1. Inleiding
7-1
7.2. Bouwstenen gebaseerd op een teruggekoppelde
7-1
versterker 7.2.1. Summers
7-1
7.2.2. Integratoren
7-3
7.3. Signaal conversie elementen
7-5
7.3.1. De digitaal-analoog omzetter
7-5
7.3.2. De analoog-digitaal omzetter
7-7
7.4. Functiegeneratoren
7-8
7.4.1. Vermenigvuldigers
7-8
7.4.2. Logarithmen generator en
7-9
8. Literatuur APPENDIX 1
8-1
Ret hybride computersysteem van het Koninklijke/Shell-Laboratorium te Amsterdam
APPENDIX II
Gebruikshandleiding
APPENDIX III
De patch-panel verbindingen voor het HDP
APPENDIX IV
Listing van het RDP.
1 - 1
1. INLEIDING.
Een hybride computerinstallatie t bestaande uit de samenkoppeling van een of meer analoge en digitale computers t stelt specifieke eisen op het gebied van onderhoud en foutendiagnostiek. Karakteristiek voor deze installaties is de mogelijkheid hat digitale gedeelte te gebruiken bij het testen van het analoge gedeelte en het interface tussen het analoge en het digitale gedeelte. De meeste hybride installaties beschikken over diagnostische prograrnrnatuur t varierend van korte testprograrnrna'st in binaire code geschreven t tot uitgebreide testpakketten in een hogere prograrnrneertaal. Dit verslag behandelt het ontwerp van een automatisch diagnostiek systeem voor de hybride computerinstallatie van het Koninklijke/Shell Laboratorium te Amsterdam. Bij het ontwerp hebben de volgende doelstellingen als leidraad gediend:
- het systeem dient versahillende testmethoden (snelle gZobaZe tests en uitgebreide individuele tests) te omvatten, - er moet een mogeZijkheid zijn om interaatief uit deze methoden
en tests voortdurend een keuze te kunnen maken, - de struatuur Van het systeem dient zodanig te zijn dat uitbreidingen en veranderingen op eenvoudige wijze aangebraaht kunnen worden. Dankzij de gekozen hierarchische structuur voldoet het ontwikkelde systeem aan de bovengenoemde eisen. In hoofdstuk 2 is weergegeven wat tot dusver bekend was uit de literatuur over
he~
automatisch testen van hybride computer-installaties. Opvallend
is dat over dit onderwerp nog geen enkel boek is verschenen.
1 - 2
Hoofdstuk 3 bestaat uit een algemene beschrijving van het ontwikkelde hybride diagnostiek systeem. Hier wordt in het bijzonder aandacht besteed aan de werking van het interactieve gedeelte en de functies van de hulproutines. De drie gekozen testmethoden worden hier geintroduceerd. Het zijn:
- een gZobaZe testmethode waarmee aanwezigheid en werking van veZe aomponenten geaontroZeerd wordt~ - een testmethode om aan te wijzen aomponenten aan een grondige test te onderwerpen; methode en aomponenten worden interaatief aangewezen~
- een testmethode om de hybride aommuniaatieroutines individueeZ te testen. In de hoofdstukken 4, 5 en 6 worden deze testmethoden ieder apart uitgebreid beschreven. In hoofdstuk 7 wordt ingegaan op een verdergaand detail, namelijk de teststrategieen voor de individuele componenten van het analoog en interface gedeelte, met behulp van het digitale deel. In hoofdstuk 8 volgt een opsomming met annotaties van de bij dit onderzoek gebruikte literatuur. De volgende appendices zijn in dit verslag opgenomen:
- een besahrijving van de
instaZZatie~
- een handZeiding voor de gebruiker van dit systeem~ weZke onafhankeZijk van dit versZag kan worden gebruikt~ - een patahZijst voor de anaZoge en digitaZe
patahpaneZs~
- een voZZedige programmatekst van de ontwikkeZde programmatuur.
2 -
1
2. DIAGNOSTIEK VAN EEN HYBRIDE COMPUTER-INSTALLATIE.
2.1. Betrouwbaarheid.
----------------
De mogelijkheden van de computer worden steeds groter. De verantwoordelijkheid van het door de computer verrichte werk oak. Dit geldt in het bijzonder voor de "realtime" toepassingen zoals proces-bewaking en reserverings-systemen, maar ook bij een geautomatiseerde administratie, waarbij de computer een centrale pasitie inneemt. Bij het "real-time" werk kan uitvallen van de installtie katastrofale gevolgen hebben. Het uitvallen van de centrale computer bij een administratie betekent op zijn minst een onaangename verstoring van de werkzaamheden. Het kosten-aspekt speelt uiteraard in beide gevallen een grote rol. De eisen die aan de betrouwbaarheid van een systeem gesteld worden zijn dan ook in de loop der jaren aanzienlijk verzwaard. Men probeert de kans op een fout minimaal te maken. Hierbij staan ons twee technieken ter beschikking:
- redundancy - diagnostiek. Bij de toepassing van redundancy bevat het systeem meer elementen dan strikt genomen noodzakelijk zijn. Bij het optreden van een fout wardt de funktie van het defekte onderdeel uitgevoerd door de extra elementen. Voor de gebruiker is er dan aan de machine niets veranderd; de fout is gemaskeerd. Bij het toepassen van redundancy-technieken hebben we te maken met twee effekten. Aan de ene kant is de kans op een defekt element vergraot daar we met meer elementen te maken hebben. Aan de andere kant worden bepaa:de defekten gemaskeerd. De kans op een fout kan dus zowel groter als klelner worden. Het aanbrengen van redundancy is uiteraard aIleen zinvol in het laatste geval. Hoewel redundancy-technieken vaak zinvol zijn, is de toe" passing ervan beperkt tot die situaties, waarin reparatie tc kostbaar of zelfs onmogelijk is (b.v. ruirntevaart).
2 - 2
Fouten he1emaa1 voorkomen kunnen we niet. We moeten daarom b1ijven zoeken naar midde1en om fouten te kunnen opmerken en vervo1gens op-
heffen. Dit is het terrein van de diagnostiek. Tot nu toe, misschien vanwege de inv10ed die de ruimtevaart op de ontwikke1ing van computer-systemen heeft gehad, is aan de diagnostiek vee1 minder aandacht geschonken dan aan redundancy-technieken. Het eerste boek over de fouten-diagnostiek van digita1e systemen is pas in 1970 verschenen [lit. 6]. Tot dan was a11e informatie over diagnostiek verspreid over artike1en in technische tijdschriften, conferentie-vers1agen en interne rapporten. De meeste artike1en hebben betrekking op digita1e systemen. Dit ondanks het feit dat de storingsgevoe1igheid en daarmee ook de kans op fouten bij het gebruik van ana10ge technieken ve1e ma1en groter is dan bij discrete technieken. Het naar verhouding grote aanta1 digita1e systemen heeft hier ongetwijfe1d toe bijgedragen.
2.2. Fouten. ------Een test is een georganiseerde poging om informatie over de moge1ijke fouten in een systeem te verkrijgen. We spreken van een fout in een systeem, wanneer dit systeem niet vo1doet aan zijn specificaties. Fouten kunnen we in twee groepen verde1en:
- voortdurend aanwezige fouten. Hierbij i8 het gedrag van het sy8teem niet volgens de speaifiaaties, maar wel aonsistent. De resultaten van een test zullen reproduaeerbaar zijn (mits geen storende andere fouten optreden). Fouten veroorzaakt door het langzaam verlopen van parameters (drift) rekenen we ook tot deze aategorie. De verandering vindt zo langzaam plaats, dat we ook hier reproduaeerbare test-resultaten verkrijgen, mits de periode tussen de twee tests niet te groot is. - af en toe aanwezige fouten. Het gedrag van het systeem is niet aonsistent. De
test~esultaten
zijn niet reproduaeerbaar. Deze groep fouten, welke gelukkig
2 - 3
weinig
voorkomen~
veroorzaken bij de diagnose veel last.
Het testen geschiedt door het toedienen van stimuli (de inputvektor) aan het systeem t de responsie daarop ( de outputvektor) waar te nemen en vervolgens de relatie tussen in- en outputvektor te toetsen
aan
een verondersteld gedrag. De werking van een test berust op de invloed van fouten op het resultaat van deze toets. Deze invloed wordt veroorzaakt door zowel fouten waarvoor de test is bedoeld als fouten waarvoor de test niet is bedoeld. Vaak is de invloed van deze laatste groep fouten op de testresultaten niet voorzien.
Om te kunnen testen moeten we beschikken over stimuli. Bij het bepalen daarvan zouden we het systeem als een black box kunnen beschouwen t waarvan aIleen de specificaties gegeven zijn [lit. 12). Deze beschouwingswijze verschaft inzicht in het wezen van het testen t doch is in de praktijk weinig bruikbaar. Ter illustratie hiervan de volgende voorbeelden:
Stel dat ons systeem een analoge vermenigvuldiger is~ die we voor alle toegelaten inputwaarden op zijn specificaties willen testen. Op een 100 Volts machine met een nauwkeurigheid van 10 mV zou dit het uitvoeren van 4.10 8 vermenigvuldigingen betekenen. Bij een bandbreedte Van 100 kHz moeten we de versterker ongeveer 100 ~s tijd geven zijn uitgangswaarde te bereiken. Dit betekent dat we alleen al voor het uitvoeren van de vermenigvuldigingen ongeveer 12 uur tijd nodig hebben. Vele vermenigvuldigers hebben echter ook nog een derde ingang en om alle ingangskombinaties te testen zouden we--danreeds drie jaar nodig hebben. Voor een digitale vermenigvuldiger zijn deze cijfers nog sprekender. 64 Op een 32 bitsmachine kunnen we 2 versahiZZende vermenigvuldigingen uitvoeren. Bij een i~s~ktieduur van 1 ~s hebben we hier ca. 10 5 jaar nodig. [lit. 7J.
2 - 4
Bovenstaande voorbee1den tonen aan dat wi1 het testen van een computersysteem zinvo1 zijn, we bij het bepa1en van de teststrategie uit moeten gaan van voorkennis over de inwendige struktuur van het systeem. Uitgaande daarvan moeten we een groot dee1 van het systeem proberen te verde1en in een aanta1 onder1ing onafhanke1ijke subsystemen. Onafhanke1ijk in die zin, dat fouten in het ene subsysteem geen inv10ed hebben op de testresu1taten van het andere subsysteem. (Een zekere afhanke1ijkheid ten opzichte van de rest van het systeem za1 in de meeste geval1en onvermijdelijk zijn). Voor het testen kan het subsysteem nu a1s een afzonder1ijk systeem beschouwd worden, waarin weer een verdere onderverdeling mogelijk is. In de praktijk is deze verdergaande onderverde1ing aan grenzen gebonden. Waar deze grenzen 1iggen hangt van de concrete situatie af.
2.4. Test-methoden.
De in de vorige paragraaf besproken fi1osofie is de leidraad bij de opzet van a11e tests. Afhanke1ijk van het bij de test beoogde doe1 of de gebruikte middelen onderscheiden we de tests naar een aanta1 verschi11ende aspect en van het testen, name1ijk het doe1, de methode en de tester.
Doet. Afhanka1ijk hiervan kunnen we ve1e soorten tests onderscheiden; de namen spreken meesta1 voor zichze1f. Het be1angrijkste onderscheid is dat tussen foutconstatering en foutana1yse. In het 1aatste geval is de fout a1 geconstateerd en proberen we nadere informatie te verkrijgen over de p1aats en aard van de fout.
Methode. We onderscheiden hier:
- aombinatorisahe testmethoden. De je inputvektor is hierbij onafhankelijk van de voorgaande (j-1J outputvektoren. om een systeem op deae manier volledig te testen is men verpliaht om steeds alle tests uit te voeren.
2 - 5
- sequentiele testmethoden. De je inputvektor wordt hierbij bepaald door de voorgaande (j-l) outputvektoren. Men hoeft hier niet altijd alle tests uit te voeren. De testcyclus heeft hierbij een boomstructuur. Tester. ------De tester
~s
een mens.
Men noemt dit meestal manuaal testen. De onderhoudsman dient hier zelf de inputvektoren toe en bestudeert ook zelf de outputvektoren. Hij maakt hierbij gebruik van hulpmiddelen als oscillografen en toongeneratoren. Voordelen: - zowel geschikt voor constatering als analyse van fouten - zeer nauwkeurig testen mogelijk - analyse van niet voorziene fouten mogelijk (dit vereist
kreativiteit~
wat een zuiver menselijke
eigenschap is). Nadelen:
- tijdrovend - duur - ervaren technici nodig - foutconstatering kost machinetijd - onmogelijk bij gecompliceerde of snel veranderende installatie - moet periodiek uitgevoerd worden.
De tester is een programma. Men gebruikt hier de mogelijkheid de ene machine een gedeelte van zichzelf of een andere machine te laten testen. Voordelen: - snel - goedkoop - kan door minder ervaren technici gedaan worden. Nadelen:
- meerdere machines nodig - foutconstatering kost machinetijd - moet periodiek uitgevoerd worden.
2 - 6
De tester is een extra stukje apparatuur. Voordelen: - foutconstatering onmiddelijk - foutconstatering kost geen machinetijd Nadelen:
- door extra apparatuur verhoogde kans op fouten - kosten van de extra apparatuur.
Onder een diagnostiek systeem verstaan we een georganiseerde verzameling mensen, apparatuur en programmatuur die tot doel heeft op zo efficient mogelijke wijze fouten in de installatie te constateren en te analyseren. Bij de opzet hiervan voor een hybride installatie hebben we te maken met de volgende moeilijkheden:
- een grote verscheidenheid van digitale~
componenten~
zowel ana loge als
maakt het gebruik van diverse testmethoden noodzakelijk
- de voor- en nadelen van een bepaalde testmethode wegen niet voor aIle belanghebbenden even zwaar. De gebruiker legt nu eenmaal andere maatstaven aan dan de onderhoudsman. - het analoge deel van de installatie heeft een aanzienlijk grotere storingsgevoeligheid dan het digitale deel de ontwikkeling op het gebied van hybride computers is nog lang niet ten einde en de omstandigheden wijzigen zich snel. Een groot voordeel van de hybride computer is dat bij het testen van het analoge deel gebruik gemaakt kan worden van het digitale deel, waardoor het mogelijk is de tests te automatiseren. Het testen van alle mogelijkheden van een hybride installatie is ondoenlijk. De inwendige structuur van de installatie moet dan ook de basis vormen voor de hybride diagnostiek, waarvan een goede werking van vitaal belang is voor de installatie. Deze structuur wordt bepaald door de ontwerper en het is uitermate belangrijk dat deze zich hiervan bij het ontwerp bewust is.
2 - 7
Door ons is gewerkt aan de opzet van een nieuw diagnostiek systeem voor de hybride computerinstallatie
van het Koninklijke/Shell-
Laboratorium te Amsterdam. (KSLA). De installatie te Amsterdam bestaat uit een RXDS Sigma 5 digitale computer, die via een Comcor Ci 5100
interface verbonden is met twee
Comcor Ci 5000 analoge computers. zie voor een beschrijving van deze installatie appendix T. Het onderhoudswerk aan deze installatie wordt verricht door drie technici. Voor het digitale gedeelte bestaat dit uit een onderhoudsbeurt op vrijdagmiddag , waarbij gebruik wordt gemaakt van door de fabrikant geleverde diagnostiek programma's en hulpapparatuur. De analoge machines en het interface hebben deze grote onderhoudsbeurt op donderdagochtend. Daarnaast worden door middel van een programma op de Sigma 5 dagelijks een aantal Morning Readiness Tests (MRT) uitgevoerd die de meeste funkties en componenten van de analoge machines en het interface op hun werking
test~n.
Verder worden tussen-
tijds optredende storingen zo snel mogelijk verholpen. De structuur van dit diagnostiek systeem, een grote onderhoudsbeurt per week en een korte dagelijkse test van de analoge machines en het interface voldoet goed. De diagnostiek van het digitale gedeelte levert geen problemen op. De MRT bevatten echter de volgende tekortkomingen:
- geen duidelijke struatuur, hetgeen aanpassing moeilijk maakt - soms overbodige of onware foutmeldingen - gering gebruik van de mogelijkheden van de Sigma 5 bij de opslag en verwerking van testresultaten - testsahakelingen op patah panels niet altijd doelmatig - geen verifiaatie van de ingangssignalen door het programma - geen mogelijkheid om bepaalde aomponenten intensiever te testen indien dit vereist zou zijn. ~et
als doel verbetering van het diagnostiek systeem is door ons een
Hybride Diagnostiek Programma (HDP) ontworpen, waarbij de filosofie van
2 - 8
lit. 10 als leidraad is gebruikt. Ret RDP past in de bestaande structuur. Bij de opzet is naast de ervaring van het KSLA gebruik gemaakt van de beschrijvingen van soortgelijke programma's voor enkele andere installaties. [Lit. 1,15 en 17]. Ret RDP bevat naast verbeterde MRT een aantal uitgebreide tests en tevens de mogelijkheid de hybride standaard programmatuur te testen. Bij het ontwerp zijn we uitgegaan van de volgende eisen en wensen:
- duidelijke modulaire opbouw met een
hierarchische structuur
- gebruik van normale patch panels - zoveel mogelijk gebruik van standaard programmatuur - minimale operator interventie tijdens de MRT - bij voorkeur dezelfde patch panels bij de MRT en de specialistische tests duidelijke documentatie in verband met
evaluatie~
aanpassing
en uitbreiding - tijdens executie het verloop van het HDP te kunnen besturen - beveiliging van het HDP tegen fouten van de gebruiker - goede componenten leveren geen output (excess reporting). Ret RDP moet aan de volgende beperkingen voldoen:
- geen uitbreiding van bestaande apparatuur - maximaal twee stel patch
panels~
twee logische en twee ana loge
panels - duur MRT maximaal 30 minuten - gebruik maken van de normale hybride monitor.
I
13 - 1
;L
BESCHRI,JVING VAN HET HYBRIDE DIAGNOSTTEK PROGRAMMA
(HDP).
Het HDP is een Fortran computerprogramma voor foutconstatering en foutanalyse ten behoeve van de hybride computerinstallatie van het Koninklijke/Shell-Laboratorium te Amsterdam. Voor een beschrijving van deze installatie zie appendix I. In het HDP kunnen we de volgende onderdelen onderscheiden:
de Morning Readiness Tests (MRT). Deze zijn bedoeld om dagelijks de analoge computers en het interface globaal te testen. De nadruk ligt hierbij op foutconstatering en niet op foutanalyse. Voor een uitvoerige beschrijving zie hoofdstuk 4. de Stand-Alone Tests (SAT). Dit zijn tests die een bepaald type bouwsteen van de analoge computers of het interface intensief testen. Zij worden in tegenstelling tot de MRT niet dagelijks
uitgevoerd~
doch slechts indien men nadere
informatie over een bepaald type bouwsteen wenst. Dit gebeurt in een voortdurende dialoog met de operator. Zie voor een beschrijving hoofdstuk 5 van dit verslag. - de Bibliotheek Routines Test
(BRT). Deze is in staat de
afzonderlijke hybride bibliotheek routines te testen~ waarbij tevens een stapsgewijze besturing van de ana loge computers mogelijk is. Zie voor een beschrijving hoofdstuk 6 van dit verslag. - Een aantal routines om het werken met het HDP zo eenvoudig mogelijk te maken. Zie voor een beschrijving paragraaf 3.2.1.
3 - 2
3.2. Struatuur.
----------
Het HDP is modulair van opbouw. Het bestaat uit een uitvoerend en een dienstverlenend gedeelte. Het HDP bezit eenhierarchische structuur(fig. 3.1) en is opgebouwd uit de volgende lagen:
- het besturingsgedeelte. Dit bevat ook de dienstverlenende routines; - de uitvoerende routines
3
welke de aonfiguratie-gegevens
voor de testroutines klaarzetten; - de testroutines 3 die de adressering en de diagnostisahe output verzorgen; - de basis testroutines. Hierin is de teststrategie vastgelegd; - de hybride systeembibliotheek. Door zijn boomstructuur is tussen de lagen alleen cornrnunicatie in verticale richting mogelijk.
Het besturingsgedeelte stelt de gebruiker in staat via een dialoog met het HDP, dit op flexibele wijze te gebruiken. Het heeft de volgende taken:
- de seleatie van de gewenste testmethode en testroutine; - het versahaffen van een interrupt faailiteit buiten de monitor van de digitale maahine om; - het tijdens de exeautiefase wijzigen van systeemparameters; - het verzorgen van de aommuniaatie met de operator; - het op wens geven van een korte verklaring van de bij de dialoog gebruikte aommando's; - het op wens vermelden van de aatuele waarden van een aantal systeemparameters; - het beheer van de overlay struatuur.
3 - 3
I_In_t_er_r_u_p_t
,
-
I
I
II Display
Modify
j
Select
,
, XMRT
XSAT
- - - -\
MRT Rout.
I
\~
\
XBRT
-
-
I'
-
SAT Rout.
"
\Ii
Testroutines
Basistestrout.
(Hybride) Bibliotheek
FIG 3.1
1 I
Blokschema van het HDP.
INSTR
I
END
- - - -
- -
I
3 - 4
Om deze taken te kunnen vervullen beschikt hat besturingsgedeelte over de volgende onderdelen:
- SELECT. Deze routine vraagt bij binnenkomst om de keuze tussen de drie testmethoden (MRT, SAT, BRT), de INSTRUCT,
MODIFY of DISPLAY routines, of de be-
eindiging van de executie (END). SELECT maakt gebruik Van de INPUT routine. - XMRT.Deze routine bevat aanroepen van de MRT, die bestaan uit de uitvoerende routines MR 1 - MR 20. De diaZoog met de operator bepaaZt weZke uitvoerende routine in executie komt, Waarna automatisch de tests met een hoger nummer voZgen. Na MR 29 gaat de besturing automatisch terug naar SELECT. XMRT maakt gebruik van de routines TEST en INPUT. - XSAT. Deze routine bevat aanroepen voor de SAT uitvoerende routines TESTAMP, TESTPOT, TESTDAC, TESTADC en voor de MRT uitvoerende routines. In tegensteZZing tot XMRT komt iedere aparte routineaanroep tot stand door een diaZoog, wat hier ook geZdt voor de MRT routines. Door een commando kan XSAT naar SELECT verZaten worden. XSAT maakt gebruik van de routines TEST en INPUT. - XBRT. Deze routine bevat aanroepen voor bijna aZZe hybride bibZiotheek routines. Op het intypen van de gewenste routinenaam en Zistparameters voZgt de executie en het afdrukken van het resuZtaat. Hierna kan weer een bibZiotheekroutine worden aangeroepen. Door een commando kan XBRT naar SELECT verZaten worden. - INSTRUCT.Na binnenkomst Van deze routine wordt de gebruiker gevraagd een commando in te typen. Er voZgt een verkZaring van dit commando, waarna INSTRUCT de besturing
autom~tisch
overdraagt aan SELECT. - MODIFY. Deze routine biedt de gebruiker de mogeZijkheid bepaaZde systeemparameters, weZke in de HDP dataset zijn opgesZagen, te wijzigen. MODIFY is aanroepbaar op die pZaatsen waar een commando gevraagd wordt. Dit gebeurt ook in de interrupt routine TEST, zodat de mogeZijkheid bestaat een testroutine te onderbreken, iets te wijzigen en daarna de testroutine voort te zetten.
3 - 5
Voor het gebruik van MODIFY zie de gebruikershandleiding in appendix II. - DISPLAY. De dataset van het HDP bevat een aantal
parameters~
welke tijdens de executie gewijzigd kunnen worden. De DISPLAY routine geeft de actuele waarde van de belangrijkste van deze parameters. DISPLAY is aanroepbaar op dezelfde plaatsen als MODIFY. - INPUT. Deze routine draagt zorg Voor het inlezen van een commando. De ingetypte string wordt vergeleken met een standaard vocabulaire. Is de string niet in de vocabulaire aanwezig~
dan krijgt de
gebruiker~
na het uitprinten van een
foutboodschapopnieuw de gelegenheid een commando in te typen. Een variabele krijgt een met de string geassocieerde integer waarde~
indien de string wel in de vocabulaire aanwezig is.
In het HDP wordt verder met deze integer variabele gewerkt. - TEST. Deze routine verzorgt de interruptfaciliteit. Dit gebeurt door het aftasten van een schakelaar op het bedieningspaneel van de digitale computer. De aanroep van TEST &s zodanig over het HDP
verspreid~
dat de responsie-
tijd op een interrupt maximaal enkele seconden is. Na het geven van een interrupt wordt er om een commando
gevraagd~
waarbij er de volgende vier mogelijkheden zijn: voortzetting van de executie, · het kiezen van een uitvoerende routine, · het terugkeren naar de SELECT routine, · het aanroepen van de DISPLAY of de MODIFY routine, waarna er weer de keuze is tussen deze vier mogelijkheden.
- HDP
dataset~
welke opgeslagen is in de COMMON ruimte van het
HDP. De dataset bevat de volgende systeemparameters: . de console-indicator. Hieruit wordt door de MRT bepaald welke analog console(s) worden.
getest moeten
3 - 6
• het adresbestand. Hierin staan de voor de tests benodigde gegevens over componentenbezetting en patchpanel-verbindingen van de analoge consoles; • de toleranties. Hierin staan de toegelaten afwijkingen van de componenten ten behoeve van de testroutines; • de symbolische adressen van de gebruikte randapparaten. De bovengenoemde parameters zijn met behulp van de routine MODIFY te wijzigen.
3.2.2. De uitvoerende routines.
De uitvoerende routines worden aangeroepen door XMRT en XSAT en dienen als werkvoorbereiders voor MRT en SAT. Voor de MRT verzorgen de uitvoerende routines de volgende punten:
- het berekenen van de lijst van
adressen~
welke de testroutines
toegevoerd krijgen; - afhankelijk van de
console-indicator~
routines voor analog console
1~
het aanroepen van test-
2 of beide;
- het geven van voortgangsmeldingen. Voor de SAT verzorgen de uitvoerende routines de volgende punten:
- de dialoog met de gebruiker ter bepaling van de door de testroutines benodigde informatie; het hieruit vervaardigen van
een lijst van adressen;
- het aanroepen van testroutines of basistestroutines; indien
nodig~
het geven van diagnostische output.
3.2.3. De testroutines.
De testroutines worden aangeroepen door de uitvoerende routines en maken gebruik van de basistestroutines. t1et behulp van de meegegeven parameters worden een aantal componenten van een type getest.
3 - 7
Bij constatering van een fout geven de testroutines diagnostische output.
3.2.4. --------------------De basistestroutines. De basistestroutines worden aangeroepen door testroutines en sommige uitvoerende routines en maken gebruik van de hybride systeem-bibliotheek. In deze routines is de teststrategie vastgelegd. Een basistestroutine voert een test uit van een bepaalde component. Daar vele componenten op diverse manieren gebruikt kunnen worden, zullen voor het volledig testen van deze component en verschillende basistestroutines nodig zijn. Een basistestroutine levert als resultaat, naast een goed/fout beoordeling, de grootte van de afwijking op.
Deze routines, aangeroepen door vrijwel alle onderdelen van het RDP, bestaan uit:
- de digitale standaardroutines
(sin~ cos~
- de routines voor de communicatie tussen
enz). analogs~
interface
en digitale computer. Voor een beschrijving zie appendix I. - enige zelfgeschreven routines (decimaal-octaal conversie etc.;.
Ret RDP is geimplementeerd op de hybride computerinstallatie van het KSLA. Ret RDP is voor het grootste gedeelte geschreven in FORTRAN-H. Op enkele plaatsen is gebruik gemaakt van SYMBOL, de assemblertaal van de RXDS Sigma 5 digitale computer. Gezien de structuur van_de Simma 5, de aanwezige programmatuur en de door het HDP benodigde geheugenruimteis gebruik gemaakt van een
), ""8
"overlay" structuur. (fig. 3.2). Hierbij is slechts een gedeelte van' Bat programma voortdurend in het kerngeheugen aanwezig (ROOT). De rest is, in segmenten verdeeld, permanent aanwezig op de disk. Tijdens de executie worden slechts die segmenten in het kerngeheugen geladen welke op dat moment nodig zijn. De verdeling in segmenten leverde geen problemen op gezien de modulaire structuur van het HDP. De referenties naar de randapparaten zijn tijdens de executie van het HDP te wijzigen, waardoor de gebruiker op ieder moment de mogelijkheid bezit van randapparaat te veranderen. De volledige tekst van het HDP is in appendix IV weergegeven. De testschakelingen voor de analoge computers zijn op twee stel "patchpanels" aangebracht. Een stel patchpanels bestaat uit een bord voor de analoge en een bord voor de logische schakelingen. Door tussentijdse verwisseling maken beide analoge computers van de twee stel patchpanels gebruik. Op het interface is een klein patchpanel aanwezig waarop 'voor het HDP benodigde verbindingen zijn aangebracht. In appendix III zijn de op de
patchp~nels
aangebrachm verbindingen
weergegeven.
Bij de opzet van het HDP is rekening gehouden met de mogelijkheid het bestaande systeem aan te kunnen passen aan nieuwe omstandigneden, zoals bijvoorbeeld een wijziging in de machine configuratie. Ook kan eenvoudig worden voldaan aan nieuwe eisen zoals invoering van een nieuwe teststrategie of verandering van de output.
3 - 9
MROI I I I
!
XMRT Select
MR20
Display Modify Interrupt Dataset Hybridesysteembibl.
I
XSAT
MROI I
I
I
I
1
MR20
XBRT AMPTEST I I I
I INSTRUCT
SENSE
ROOT
SEGMENTEN
(kerngeheugen)
(disk)
Fig. 3.2. Overlaystructuur van het HDP.
3 -
10
Bij het ingrijpen in het bestaande besturingsgedeelte moet echter grote . voorzichtigheid betracht worden. Hoewel dit gedeelte op zichzelf ook modulair is opgebouwd bestaat het uit een veelheid subroutines die op elkaar ingrijpen, waarbij bij een eventuele wijziging uiteraard rekening moet worden gehouden. Een uitzondering kan hier gemaakt worden voor de HDP dataset welke door het inlezen van modificatiekaarten (app. 11-3), door MR02 en door het opnieuw
compileren van het
(~.3.2)
BLOCKDATA gerealiseerd kunnen
worden. De rest van het besturingsgedeelte bestaat uit grondig geteste verzorgingsroutines, waarin wijzigingen niet noodzakelijk zullen zijn. Veranderingen in het testgedeelte zijn ook eenvoudig aan te brengen. Deze zullen zich meestal tot een niveau beperken daar de drie facetten van het testen, waarnemen, verwerken en rapporteren in afzonderlijke lagen zijn ondeJgebracht. ZO zal een wijziging van de diagnostische output slechts een verandering in een testroutine vereisen; bij de verandering van een teststrategie is het voldoende een nieuwe basis testroutines te schrijven voor de betrokken component.
Bij uitbreiding van het bestaande systeem dient rekening gehouden te worden met de overlaystructuur volgens welke het HDP is opgebouwd. Voor het toevoegen van een MRT.of SAT testroutine dienen de volgende stappen te worden ondernomen:
- er dient een nieuw overlaysegment te worden gecreeerd, waarbij
gelet moet worden op de in de kernen ter aesab.ikk:ing staande ruimte. Indien de bescb.ikbare kernruimte te Kle~n ~s· Ran de testroutine zelf in verscb.illende segmenten worden opgespl~~~t.
3 -
11
de nacun van de testroutine wordt opgenomen in de voaahulaire van het besturingsprogramma. - in het MRT of SAT besturingsgedeelte moet de subroutineaanroep worden opgenomen op de gewenste plaats. Het aanroepen geschiedt met behulp van de aanroepsubroutine (EXMRT of EXSAT). - zorgen dat de door de testroutine benodige subroutines bereikbaar zijn door aanwezigheid in hogere lagen of door bijuoeging in hetzelfde segment. Voor uitbreiding met een anders georienteerd testpakket verdient het de voorkeur een nieuwe mode aan te brengen (naast de reeds bestaande MRT, SAT, BRT en INSTRUCT). De procedure hiervoor is analoog aan de hierboven beschreven methode met dien verstande dat in de routine SELECT de keuzemogelijkheid uitgebreid dient te worden.
4 - 1
4. DE MORNING READINESS TESTS (MRT).
De MRT heeft als doel de beide analoge machines en het interface aan een globale test te onderwerpen. Zij vervult als zodanig
een
preventieve onderhoudstaak en is voor de onderhoudsdienst een belangrijk hulpmiddel
bij de foutendiagnostiek van de installaties.
Voor de gebruiker is vooral belangrijk dat op deze wijze het risico om te werken met een defekte machine aanmerkelijk is verkleind. Dit hoofdstuk bevat allereerst een uiteenzetting over de structuur van de MRT en de wijze waarop deze is geimplementeerd als onderdeel van het HDP, gevolgd door een korte beschrijving van de afzonderlijke MR tests. De strategie waarmee de componenten getest worden is opgenomen in hoofdstuk 7, daar deze ook van toepassing is op de SAT mode. De gebruiksaanwijziging van de MRT is opgenomen in appendix II. De tekst van het programma is opgenomen in appendix IV, en de analoge schakelingen op de patch-panels tens lotte
zijn weergegeven in appendix
III.
4.2. Stl'uctUUl'.
Hoewel de MRT deel uitmaakt van het HDP kan het als een zelfstandig programma beschouwd worden, draaiend onder de supervisie van het besturingsgedeelte van het HDP. Op dezelfde wijze kan men de afzonderlijke MR tests weer beschouwen als zelfstandige programma's draaiend onder supervisie van het besturingsgedeelte van de MRT. De MRT bezit een boomstructuur. Functioneel gezien kunnen we hierin vier niveaus onderscheiden:
niveau 1:
Dit is de besturingslaag van de MRT. Deze bestaat naast de besturingsroutine XMRT nog uit de dienstverlenende routines
4 - 2
EXMRT, COUT, ICNS, CHPP en GEN. Zij heeft de volgende taken: - het in XMRT via een dialoog met de gebruiker bepalen van de begintest;XMRT maakt hierbij gebruik van de routine INPUT, - het aanroepen van deze begintest en alle daarop volgende ~R
niveau 2:
tests. XMRT gebruikt hiervoor de routine EXMRT.
Dit is de uitvoerende laag bestaande uit de routines
~ROO-MR20.
Zij hebben de volgende taken: - het uit de HDP dataset bepalen welke consoles getest moeten worden en het controleren van de patch-panel mountings op deze consoles. Hierbij wordt gebruik gemaakt van de routines ICNS en CHPP. - het uit de HDP dataset genereren van een lijst van de te testen componenten van een bepaald type en indien nodig ook van de bijbehorende adressen van de ingangssignalen. Hierbij wordt gebruik gemaakt van de
routine GEN.
- het aanroepen van de testroutines voor een bepaald type componenten; - het verzorgen van de voortgangsmeldingen zoals begin en einde van een test. Dit gebeurt met behulp van de routine SCHR.
niveau 3:
Deze laag bevat de testroutines (alle beginnende met een C). De testroutines hebben de volgende taken: - het testen van een aantal componenten van een type op een manier. Hierbij wordt gebruik gemaakt van
de routines
die zich op niveau 4 bevinden. - het verzorgen van de diagnostische output. Dit gebeurt in de vorm van excess-reporting. Voor de gecodeerde output wordt hierbij gebruik gemaakt van de routine COUTo
niveau 4:
Deze laag bevat de basistestroutines (alle beginnende met een T). In deze routines is de teststrategie vastgelegd en vindt het eigenlijke testen plaats. Als zodanig kunnen deze ook door de SAT gebruikt worden. Zij hebben de volgende taken: - het testen van een component op een manier;
4 - 3
- het doorgeven van een goed/fout beoordeling van de geteste component en de grootte van de bij de test opgetreden afwijking.
4.3. De MR-tests.
De MRT is opgebouwd uit 20 tests, genaamd MRO\-MR20, die ieder voor zich een deel van de installatie aan een onderzoek onderwerpen, waarbij gebruik gemaakt wordt van bijbehorende test- en basistestroutines. Wat het programma betreft bestaat er geen enkel bezwaar om de tests afzonderlijk en in een
willekeu~ige
volgorde uit te voeren (zoals ook 1n
de SAT mode gebeurt). Daar echter de meeste tests van delen van het interface en/of analoge machine gebruik maken, zal het uitvoeren van deze tests over het algemeen slechts zinvol zijn indien de hierbij gebruikte delen correct werken. In de MRT worden de tests dan ook in een zodanige volgorde
uitgevoerd dat zoveel als mogelijk is de onderdelen eerst zelf
getest worden voor ze gebruikt worden om andere onderdelen te testen. De voor de
tes~benodigde
analoge patching is aangebracht op twee analoge
patch-panels en twee bijbehorende digitale patch-panels. De MR tests zijn met betrekking tot deze panels te onderscheiden in drie soorten:
A-tests die geen patch-panel nodig hebben, deze kunnen te
allen
tijde worden uitgevoerd. B-tests die een willekeurig patch-panel nodig hebben, deze kunnen worden uitgevoerd als of patch-panel 1, of patch-panel 2 geladen is. C-tests die een bepaald patch-panel nodig hebben, deze kunnen slechts worden uitgevoerd op die machine waarop dit bepaalde panel geladen is. Ret verloop van de MRT is nu als volgt. Allereerst worden de tests uitgevoerd vallende onder de categorien A en B. Deze bestaan in hoofdzaak uit tests voor de algemene functies van de analoge machines en van het interface. De onderlinge volgorde is bepaald door de bovengegeven overweging dat een onderdeel eerst getest moet worden voor het gebruikt mag worden voor het testen van andere onderdelen. Indien de console-optie dit voorschrijft worden door deze tests beide consoles getest.
4 - 4
Daarna komen de tests van groep C.
Elk van deze tests heeft een
bepaald patch-panel nodig. In de MRT is het zo dat een routine van groep C met behulp van ICNS en CHPP bepaalt op welke console dit patchpanel geladen is om vervolgens dit console te gaan testen. De laatste test, MR20, vraagt om de verwisseling van de patch-panels en springt dan terug naar de eerste test van groep C, waarna deze tests op het andere console worden uitgevoerd. Bij de tweede aanroep van MR20 geeft deze routine de controle terug aan het besturingsgedeelte van het HDP. Een en ander uiteraard in overeenstemming met de console-optie in de HOP dataset.
4.3.1. MR01 Voedingsspanningen analoge machines. De waarden van alle voedingsspanningen worden gemeten en indien deze te veel van de gewenste waarden afwijken wordt
di~
gemeld aan de
gebruiker.
4.3.2. MR02 Adressering en verificatie van de aanwezigheids-gegevens in de RDP dataset. De aan- of afwezigheid van alle adresseerbare componenten kan door de digitale machine worden geconstateerd. lndien hierbij afwijkingen worden geconstateerd met de aanwezigheids-gegevens in de HOP dataset wordt dit aan de gebruiker gemeld en wordt tevens de dataset aangepast aan deze waarnemingen. Na afloop van de MR02 is de dataset dus in overeenstemming
me~
actuele bezetting van de machines.
4.3.3. MR03 Ret zetten van de analoge modes. Alle analoge modes worden gezet en gelezen. Een afwijking wordt gemeld •
4.3.4. MR04 Referentie DAC (RDAC) en digitale voltmeter (DVM). De RDAC wordt door de digitale machine gezet en deze waarde wordt via de DVM teruggelezen. De waarden zijn zo gekozen waarden een keer voorkomen.
da~
van elke digit alle
de
4 - 5
Er wordt getest met zowel positieve als negatieve waarden. Geconstateerde afwijkingen worden aan de gebruiker gemeld. Daar de RDAC en de DVM in feite elkaar testen is het in zo'n geval niet mogelijk te melden welke van de twee defekt is.
4.3.5. MH05 Precision
interval generator (PIG).
De PIG wordt getest op zowel het I MHz als het I kHz bereik. Geconstateerd kan worden of hij echt aftelt en of het reset mechanisme nog werkt.
4.3.6. MH06 HODADS en servopots. Alle pots en HODADS worden op een randomwaarde gezet die voldoende ver van de oude waarde afligt om er zeker van te zijn dat er ook echt geservo'd is.
Daar het zetten van een servopot een nogal tijd-
rovende bezigheid is, is MR06 zo geschreven dat de beide consoles gelijktijdig kunnen servo'enen ook de eventuele diagnostische output tijdens het servo'en plaats vindt. 4.3.?
MHO? Digitaal analoog converters (DAC).
Allereerst wordt van de DAC's de update faciliteit getest. Daarna worden de DAC's op nauwkeurigheid getest door middel van de DVM. Het aan de DAC's toegevoerde bitpatroon is zodanig dat steeds een bit op staat en alle andere af zijn. Op deze manier is het mogelijk eventuele afwijkingen tot op de bit nauwkeurig te lokaliseren. Om tijdens de MRT de diagnostische output zo geringm~gelijk te houden
is daar echter in MR07 geen gebruik van gemaakt. Wel kan een defekte DAC na afloop van de MRT aan een stand-alone test worden onderworpen waar1n dit wel gebeurt.
4 - 6
4.3.8. MR08 AnaZoog digitaaZ converters (ADe). De ADC-kanalen worden getest met behulp van de RDAC. Oak hier zijn de test-signalen zo gekozen dat er een eenvoudig bitpatroon aan de ADCkanalen _wordt aangeboden. en een fout ook hier zeer nauwkeurig kan worden gelokaliseerd. Bij de ADC-kanalen die uitgerust zijn met sample en hold versterkers wordt ook deze faciliteit getest.
4.3.9. MR09 ControZZines. De controllines worden gezet, gelezen, gereset en weer gelezen.
4.3.10. MR10 ReZais en weerstanden. De relaiskontakten zijn met de +100 en de -100 Volt referentiespanning (+ref en -ref) verbonden. Door de moederkontakten uit te lezen is het mogelijk te bepalen of een relais aan of uit is. De relais worden bestuurd door het logische reset signaal van de analoge machines. De weerstanden zijn opgenomen in de schake ling van een aantal relais volgens onderstaand schema, zodat deze dan tevens getest worden.
-ref +ref
~" -NV\Nv--A R
N.D.
weerstandtest
•
fig.4.1
De aan- of afwezigheid van weerstanden in de schakeling HDP dataset.
15
opgenomen in de
4 - 7
4.3.11. MR11
Summe~s.
De summers worden getest door middel van onderstaande schakeling.
-ref
•
~
"
~:~~<~_ 0-0--.-----.............~6 ~ summertest
fig.4.2
Het testen geschiedt als volgt: Na het zetten van de HODAD wordt de ingangsspanning van de versterker gemeten en de daarbij behorende uitgangsspanning ervan berekend. Vervolgens wordt deze uitgangsspanning gemeten en vergeleken met de berekende waarde. De summers kunnen over hun hele bereik getest worden. In MRII wordt getest op vijf plaatsen. Indien er bij deze vijf tests afwijkingen voorkomen die de toleranties overschrijden wordt het adres van de summer gemeld en tevens de grootste afwijking. ~et
behulp van de tijdschalen worden de summers op dezelfde wijze
getest in de high gain en in de network borrow mode.
4.3.12. MR12 Vermenigvuldigers. De vermenigvuldigers worden getest door middel van onderstaande schakeling.
--:'-.,
~~w.O_,--I')(r-~
TIT
N.O.
-_.~<'.
'D~
+ref-ref quarter-square vermenigvuldigers
N.C.
~
+ ref -ref dual-square vermenigvuldigers
fig.4.3
De wijze van testen is analoog aan die bij de summers. Ook hier worden de tijdschalen gebruikt voor de omschakeling van de modes.
4 - 8
4.3.13. MR13 Integratoren. De integratoren worden getest volgens onderstaande schakeling. -ref -ref
fig.4.4
integratortest
De integratietijd wordt bepaald via de PIG. De verwachte uitgangsspanningwordt berekend en vergeleken met de gemeten waarde. Bij een te grote afwijking
worden de adressen en de afwijkingen
gemeld.
4.3.14. MR14
T~aak-hoZd
netwe~ken.
De track-hold netwerken worden verbonden met de uitgang van een integrator en via een versterker uitgelezen. Het hold tijdstip wordt bepaald met behulp van de PIG. De verwachte uitgangsspanning wordt berekend en vergeleken met de gemeten waarde. Bij een te grote afwijkingen worden de adressen en de afwijkingen gemeld.
4.3.15 MR15 Traak-traak
netwe~ken.
De track-track netwerken worden getest door onderstaande schakeling. De besturing vindt plaats via de"controllines. In geval van een fout wordt het adres van het netwerk gemeld.
track-tracktest
fig.4.S
4 - 9
4.3.16. MR16
CompaPato~s.
De comparators worden getest via onderstaande schakeling.
comparatortest
Indien een afwijking
wordt gekonstateerd wordt het adres van
de comparator gemeld.
4.3.17. MR17 VA switahes. Deze worden getest volgens de volgende schakeling.
-ref----i0
~
-ref-~--
DA-switchtest
fig.4.7
Ook de DA switches worden bestuurd via het logische signaal van een van de analoge modes. Bij een afwijking wordt het adres van de DA switch gemeld.
4.3.18. MR18 Log
gene~ato~en.
De log generatoren zijn geschakeld volgens onderstaande figuur.
-ref
~ r-----~
I ~.st.
logtest
fig.4.8
4 -
10
Ze worden op een aantal waarden getest. Indien de afwijking grater ~s
dan toegestaan
wordt het adres gemeld.
4.3.19. MR19 Trunks. Alle trunks zijn doorverbonden. De ene zijde ligtaan de +ref, de andere via een weerstand aan aarde. Allereerst wordt het einde van de keten gemeten. Indien blijkt dat de keten onderbroken is, wordt de eerste defekte trunk opgespoord en gemeld. Er is dan geen zekerheid meer dat de rest van de keten foutloos is.
4.3.20. MR20 Verwisseling patah-panels. Bij de eerste aanroep vraagt MR20 om de verwisseling van de patch-panels. Zodra dit is gebeurd wordt de MRT voortgezet bij MRIO, de eerste routine van groep C. Bij de tweede aanroep, beeindigt MR 20 de MRT en geeft de controle terug aan het besturingsgedeelte van het HDP.
5 -- 1
5.
DE STAND ALONE TESTS (SAT).
Het HOP bevat een aantal testroutines waarmee diverse componenten van de anloge computers intensief getest kunnen worden. Door middel van een conversatie kan een van deze tests gekozen worden. Na conversationele toevoer van de benodigde testgegevens, wordt de test uitgevoerd en worden de resultaten uitgeprint.
5.1. StructuuY'.
Ter'realisering van de SAT bevat het stand alone gedeelte van het ID)P de volgende routines:
- XSAT. Deze routine verzorgt het aanroepen van de gewenste stand alone tests. XSAT wordt aangeroepen dooi.' SELECT. Analoog aan XHRT wordt door middel van een conversatie via INPUT de keuze gemaakt. In de huidige versie van het HDP kunnen een vijftal uitvoerende routines voor SAT worden aangeroepen: paTTEST, AMPTEST, DACTEST, ADCTEST en SENSE. NieuvJe SAT kunnen eenvoudig aan het bestaande pakket toegevoegd worden. Behalve de genoemde vijf SAT uitvoerende routines zijn door XSAT oak de }fi{T uitvoerende routines MROI - MR20 aan te
roepen (zie hoofdstuk 4).
In tegenstelling tot XMRT vraagt XSAT echter na de uitvoering van elke test om een nieuw cownando. Door XSAT kunnen ook de hulproutines
~ODIFY
en DISPLAY aangeroepen worden. Door intypen van het RETURN cOlmnando word;: teruggekeerd naar de SELECT routine. - ADGEN. Deze routine
~s
een adreslijst generator voor de stand alone uitvoerende
routines. Aan de gebruiker wordt gevraagd wat het eerste en het laatste (octale) adres is van de reeks componenten welke hij wil testen. Er wordt dan een adreslijst samengesteld van de ge\venste componenten, mits zij volgens de dataset ook werkelijk in het systeem aamvezig zijn.
5 - 2
lndien van toepassing wordt ook een lijst samengesteld van de potentiometers waar de te testen componenten hun ingangssignaal vandaan halen. De routine ADGEN heeft een entry punt GEN ten behoeve van de MR routines, welke door XSAT worden aangeroepen. - lNSAT. Deze routine is de algemene input routine voor stand alone tests. lNSAT wordt aangeroepen door elke SAT uitvoerende routine. lNSAT maakt gebruik van ADGEN. De volgende gegevens worden door lNSAT aan de gebruiker gevraagd:
· het console waarop getest gaat worden · de gewenste componentadressen (via ADGEN) · het aantal malen dat een testcyclus moet worden doorlopen. Verdere gegevens worden 1n de uitvoerende routines zelf verwerkt. - COUTo
Deze routine, welke voor de MR routines een gecodeerde output vervaardigt is in het stand alone gedeelte van het HDP vervangen door een dummy
routine.
Daardoor genereren de MR routines welke door XSAT aangeroepen worden geen diagnostische output in gecodeerde vorm. - lCNS en CHPP. Deze patch-panel controle routines zijn dezelfde als 1n het MRT gedeelte van het HDP (zie hoofdstuk 4).
5.2. De uitvoerende routines. -----------------------Van de uitvoerende routines welke door XSAT aangeroepen kunnen worden zijn de routines MROI -
~R19
besproken in hoofdstuk 4.
De routine MR20, welke in de MRT mode de noodzakelijke verwisseling van de patch-panels controleert,is in het SAT gedeelte vervangen door een dummy routine, daar het uitvoeren van deze test als stand alone routine weinig zinvol is. De volgende tests zijn speciaal voor XSAT vervaardigd:
5 - 3
- POTTEST. Dit is een uitvoerende routine voor het intensief testen van de servopotentiometers en HODADS. De basistest routines waar POTTEST gebruik van maakt zijn TPOT, (welke pots testen op een randomwaarde) en TP2 (voor het geval dat pots op een waarde of tussen twee waarden geservo'd worden). Een HODAD
(~brid
Qperated
~igital ~ttenuator
Device) is een elek-
tronisch instelbare spanningsdeler. POTTEST maakt gebruik van INSAT voor het opvragen van een aantal algemene gegevens. Vervolgens kan de keuze gemaakt worden uit het servo'en tussen twee waarden, het zetten op een random - of op een vaste waarde. Na terugmelding van een aantal gegevens (eerste en laatste servopotadres, aantal servo-opdrachten en het analog console nummer) wordt het daadwerkelijk testen gestart. Per potentiometer wordt getest en vervolgens wordt het resultaat op een regel uitgeprint (via het OLM label). Het resultaat is een histogram van de opgetreden afwijkingen. Na afloop van POTTEST wordt naar XSAT teruggekeerd. - AMPTEST. Dit is de uitvoerende routine voor het intensief testen van amplifiers in de normal mode. AMPTEST maakt gebruik van het patch-panel stel nr. 1. De routine INSAT levert de door AMPTEST benodigde gegevens. De gebruikte basistestroutine is TSUM. Elke aangewezen amplifier wordt het opgegeven aantal keren door TSUM getest. Vervolgens wordt per amplifier het octale adres en de maximaal opgetreden afwijking uitgeprint (via het OLM label), ook indien deze afwijking kleiner dan de toegelaten waarde is.
5 - 4
- DACTEST. De uitvoerende routine DACTEST onderzoekt het juist functioneren van de Digitaal-Analoog ornzetters met behulp van een aantal speciale bitpatronen. Deze test ~s een uitgebreidere interactieve versie van de DAC test in de MRT (MR 7). Zie 7.3.
Via de routine INSAT worden de benodigde gegevens (aant.al DAC I s: , gewenste console en aantal testruns) aan de gebruiker opgevraagd. Aan de hand hiervan wordt een lijst opgebouwd van zowel de digitale DAC adressen als de bijbehorende (analoge) trunkadressen. Aao de ingang van de eerste DAC verschijnt het volgende bitpatroon: 000 0000 0000 0000 AIle bits staan dus op "Olt, hetgeen aan de DACuitgang cen spanning van 0.00 Volt dient te veroorzaken nadat het DAC update commando is gegeven. Deze
spann~ng
wordt via het analoge trunkadres door de DVM
gelezen. Het testprogramma gaat e1' van \lit dat de DVH juist functioneert d.w.z. een kleinere fout rnaakt dan de toegelaten DAC afwijking. Vervolgens wordt de tweede bit op "I" gezet: 000 0000 0000 0010
(0.01 V), daarna
000 0000 0000 0100
(0.03 V), enz.
tot het patroon 010 0000 0000 0000
opgetreden is,
hetgeen een spanning van + 51.20 Volt client te veroorzaken. Daarna volgen de patronen: all
1111 1111 1111
(+ 102.39 V)~
100 0000 0000 0000
(- 0.00 V),
100 0000 0000 0010
(- 0.01 V) ,
100 0000 0000 0100
(- 0.03 V) , enz.
tot: 110 0000 0000 0000 111 1111 1111 1111
( .- 51.20 V) en (.- 102.39 V).
5 - 5
De "kleinste" bit (equivalent met 6.25 mV) kan op deze wijze niet zinvol getest worden, daar het oplossend vermogen van de DVM 10 mV is. De DAC-update functie wordt getest doordat het analoge uitgangssignaal gemeten wordt
na toevoer van het volgende bitpatroon, maar
voor het "DAC-update" commando te geven. De hierboven beschreven test wordt het gekozen aantal malen herhaald voor a11e
~n
de lijst opgenomen DAC's. De gemeten afwijkingen worden
verwerkt; de volgende resu1taten wor.den per DAC uitgeprint (uitvoer via het OLM label): · D.AC adres gemiddelde afwijking per bit (in units van 10 mV) · sflreiding van bovenstaand gemiddelde per bit · miximale afwijking per bit gedurende de gehe1e test. Na afloop van DACTEST wardt naar XSAT teruggekeerd. - ADC TEST. De uitvoerende routine ADC TEST onderzoekt het juist functioneren van de ingangen van de Ana1oag-Oigitaal omzetter met behulp van cen aantal specifiek gekozen spann1ngen. Deze test is een interactieve versi.e van de ADC test in de HRT (MR 8). Voor een beschouwing over de keuze vall de aange1egde spanningen, zie hoofdstuk 7. Via de r.olltine INSAT worden de benodigc1e gegevens (aanta1 ADC ingangen, gewenst console en aantal testruns) aan de gebruiker opgevraagd. Aan de hand hier.van wardt een 1ijst opgebouwd van de digitale ADC adressen. Via verbindingen op het patchpane1 zijn a11e ADC-ingangen met de instelbare spanningsbron (REF VAC) verbonden.
5 - 6
Analoog aan de procedure bij de DAC's wordt telkens een bit getest door toevoer van een bepaalde spanning aan de ADC ingang. Daar de uiterste waarden waarop de REF DAC ingesteld kan worden
+ 99.99 V bedraagt vervalt het testen met de patronen: 011111111111111 (equivalent met + 102.39 V) en 111111111111111 (- 102.39 V). Ook hier wordt de "kleinste" bit (6.25 mV) niet getest daar de REF'DAC een oplossend vermogen van 0.01 V heeft. Een aantal ADC kanalen is uitgerust met een Sample/Hold versteTker. De S/H functie wordt getest
d~or
het bitpatroon aan de uitgang te
lezen na toevoer van de volgende spanningswaarde, doch voorhet "Sample" com.lnando te geven. De hierboven beschreven test wordt het gekozen aantal malen herhaald voor alle in de lijst opgenomen ADC ingangen. De gemeten afwijkingen worden verwerkt; de volgende resultaten worderl
l~itgeprint
(uitvoer via het OLH label):
· kanaalnUIl1l11er van de ADC ingang · gemiddelde afwijking (in least significant bits) per meetpunt · spreiding van bovenstaande gemiddelde per meetpunt · maxirnale afwijking per meetpunt gedurende de gehele test. Na afloop van de ADCTEST wordt naar XSAT teruggekeerd. - SENSE. Dit is de uitvoerende routine voor het testen van de senselines. De bijbehorende testroutine heet CSEN, de bijbehorende basistestroutine heeft TSEN.
5 - 7
Een senseline wordt eerst op "false'· en daarna op "true" gezet. Het resultaat wordt uitgelezen; bij een afwijking verschijnt de foutmelding: S.L. xx does not work. De test wordt iin maal uitgevoerd voor alle 32 senselines
t
welke
hiertoe met de overeenkomstige 32 controllines zijn doorverbonden. Deze doorverbindingen zijn aangebracht op een speciaal patchpanel van het interface. Het interface patchpanel voor de senselines test is anders bedraad dan het interface patchpanel voar de rest van het HDP. Hierdoor kon de senselines test niet in de (automatisch verlopende) MRT worden opgenomen.
6 -
1
6. DE' BIBLIOTHEElf ROUTINE TEST ( BRT) •
De systeembibliotheek van de Sigma 5 hybride monitor bevat een aantal in FORTRAN aanroepbare subroutines. welke zorgen voor de cornrnunicatie tussen het analoge en digitale deel van de installatie. Om deze routines te kunnen testen en om de installatie stap voor stap te kunnen besturen, zijn deze hybride routines door middel van de BRT direkt aanroepbaar. Het voordeel van de BRT ten opzichte van alle andere testmethoden 1S dat de hybride
routines afzonderliik getest worden. Hierdoor
1S een nauwkeurige foutlokatie mogelijk in een situatie die de gebruiker ook aantreft, namelijk onder de controle van de Sigma 5 monitor. Dit in tegenstelling tot de speciale testprcgrarrnna's van de onderhoudsploeg. Bij problemen in een gebruikersprogramma kan de gebruiker zelf met behulp van de BRT in vele gevallen bepalen of de gekonstateerde fout van het systcem of van hemzelf afkomstig is.
Via het commando 'BRT' aan het besturingsgedeelte wordt de BRT geaktiveerd. De gebruiker krijgt nu de gelegenheid
~~n
regel toe
te voeren (b.v. via kaartlezer of teletype). Deze'regel bevat de ge\Venste subroutinenaam en de bijbehorende listparameters
1n FORTRAN
syntax. Na toevocr van de volledige regel wordt dcze verwerkt en aktie genomen. Hierna is er weer de gelegenheid cen regel toe. te voeren. enz.
6 - 2
Het behulp van het commando 'RETURN'
~n
plaats van de subroutinenaam
wordt naar het besturingsgedeelte teruggekeerd. Na het inlezen van de regel vindt een controle op syntactische juistheid plaats. Indien de subroutinenaam herkend wordt en de parameterlist in orde is, wordt de subroutineaanroep uitgevoerd. lndien de toegevoerde regel niet juist is, wordt een foutboodschap gegeven. Voorafgaande aan de daadwerkelijke uitvoering van de subroutineaanroep worden de benodige listparameters naar het juiste type geconverteerd. Na uitvoering van de subroutineaanroep worden de subroutinenaam en de actuele listparameters uitgeprint. Bij een subroutine van het type FUNCTION vindt ook vermelding van de ,·marde van de subroutinevariabele plaats.
6.3. Details.
Door het op de vraag I»~ MODE?' toevoeren van het commando 'BRT' worcit in de besturingsroutine SELECT de routine XBRT aangeroepen. Met behulp van de inleesroutine INBRT wordt er een regel ingelezen (80 karakters,welkc ingelezen worden via het ISM Label, zie appendix 11-7). Er wordt verondersteld dat de regel bestaat uit een subroutineaanrocp in FORTRAN syntax, dus: SUBRNA}ill (par I, par 2,
, par m)
De subroutinenaam wordt uit deze regel afgesplitst en vergeleken met een bibliotheek van subroutinenamen. Komt de naam niet in de lijst voor, dan voIgt de mededeling: »?
vervolgcns kan
opn~euw
een regel toegevoerd worden.
Behalve het belangrijkste dec 1 van de hybride subroutinenamen bevat de naamlijst ook het kommando 'RETURN'.
6 - 3
Hiermee wordt de routine INBRT verlaten en (via XBRT) onmiddellijk naar de besturingsroutine SELECT teruggekeerd. Wordt de toegevoerde subroutinenaam als zodanig herkend, dan wordt een variabele een waarde toegekend analoog aan de gang van zaken in de subroutine 'INPUT' (bIz. 3-5). Nu wordt de routine INERT verlaten.
Voor de verdere verwerking is voor iedere subroutine een apart stuk code aanwezig, gezien het variabele aantal en type van de
listparamet(~rs.
Er wordt een test uitgevoerd om te bepalen of het aantal listparameters juist is; eventueel vindt er een conversie van real naar integer type plaats. AIle waarden worden als real ingelezen, overeenkomstig de conventie in de bibliotbeekroutines komt een integer waarde van 10000 overeen met cen real waarde van 1.0. Na uitvoering van de subroutineaanroep wardt het resultaat uitgeprint als: :SUBROUTINE (vall, val 2,
, val m)
of
:FUNCTION (val I, val 2,
, val m) = val n.
Direkt ns het uitprinten . van het resultaat lean opnieuw een subroutine aangeroepen worden. Dit is ook het geval na de melding: »
LISTERROR
welke voIgt indien het aantal listitems niet juist was.
Bij het schrijven van dit verslag waren enige gedeelten van de BRT ~n
FORTRAN gecodeerd.
De BRT als geheel is nog niet op de Sigma 5 getest.
7 - 1
7. 'l'ES1'Sl'RATEGIEEN VOOR DE INDIVIDUELE COMPONENTEN.
De teststrategieen voor de individuele component en zijn het het HDP vastgelegd in de basistestroutines (de naambeginnend met een T). Bij het ontwerp van de teststrategieen is uitgegaan van de aigemeen geldende eigenschappen van de betrokken componenten (zie ook lit. 1, 11, 14) 15 en 1 7) •
Bij de implementatie (basistestroutines) is u'iteraard ook gebruik gemaakt van de specifieke mogelijkheden die de KSLA installatie biedt. In dit hoofdstuk zal geen gedetailleerde beschrijving worden gegeven van de Comcor-componenten. Men raadplege hiervoor de desbetreffende manuals van de fabrikant. Bij de opzet van een teststrategie is een algemeen uitgangspunt geweest dat deze zoveel mogelijk bruikbaar moest zijn zowel voor (~en
kort€: fUI1ctionele test (zoals in de MRT), als voor een meer uit-
gebreid onderzoek van de componenten (zoals in de SAT). Bij de beschrijving in dit hoofdstuk zijn de componenten in klassen verdeeld, waarbinnen de teststrategieen nagenoeg gelijk zijn. Voor details betreffende de implementatie raadplege men de programmatekst. Deze is opgenomen in appendix IV.
7.2.1. SummeY's. De principe schakeling van een summer is als voIgt
1\/
!l..,.
lin
-A.fv\.Schakeling
Symbool
7 -
2
waarin geldt: n u "" -
[
j=1
a.v.
J .1
met a. = Rf/Rj J
Behalve in de hier getekende summermode kunnen de summers van de Ci 5000 ook gebruikt worden zonder de weerstand Rf, in de z.g. High-gain mode. Ook is het mogelijk van een summer aIleen het ingangsnetwerk te gebruiken (networkborrowmode). Tevens is het mogelijk een integrator als summer te gebruiken in de summermode en in de High-gain mode. Bij het on twerp van de summertest zijn we uitgegaan van de volgende wensen:
alle ingangen worden gebruikt; alle uitgangen worden gebruikt; - alle modes kunnen worden getest; - de versterkeY's kunnen over hun hele ber>eik worden getes·{;; - de rondgaande versterking mag niet te groat zijn. De volgendc schakeling vervult al deze wensen:
Sununertest HDP De waarde van u in de ·verschillende modes
summermode high-gain mode - networkborrouJmode
u = + 20/14 ex u -- + 20/13 ex u = 0
~s
als voIgt:
7 - 3
Ret omschakelen van de schakeling naar de verschillende modes gebeurt m.b.v. de tijdschalen. Ret relais wordt bestuurd door de logische reset uitgang op het logische paneel van de analoge computer (zie appendix III). Het ingangssignaal wordt betrokken uit een HaDAD. Deze hebben een insteltijd van enkele milliseconden, waardoor snel andere waarden kunnen worden ingesteld. In de MRT is op deze wijze voldoende tijd beschikbaar am de summers op meerdere plaatsen te testen.
7.2.2. Integratoren. De principe schakeling van een integrator is als volgt:
Ie
c~
v~lu
u
v symbool
schakeling "aarin geldt: t
u(t)
u(O) - a
L) vdt
met a
liRe
In bovenstaande schakeling is de integrator weergegeven in de COMPUTE mode. Hiernaast kent de integretor nag twee modes: de RESET en de HOLD Modes. De integrator is daarin als volgt geschakeld:
">-'---- U
RESET schakel5.ng
HOLD schakeling
7 - 4
In de RESET mode stelt de integrator zich in op de waarde -IC, terwijl in de HOLD Mode de uitgang constant wordt gehouden. De integratoren in de ci 5000 beschikken over vier verschillende integratiecondensatoren (luF, .luF, .01uF en .00luF). Bij het antwerp van de integratietest zijn we uitgegaan van de volgende wens en:
aUe modes (RESET" HOLD en COMPUTE) worden gebruikt; - besturing geheel via digitale machine; -
C~~UTE-tijd
door de digitale machine instelbaar;
- alle integratiecondensatoren worden gebruikt; - de initial-condition (IC) ingang wordt gebrui7<.t; - alle integratoren worden parallel getest. Gekozen is voor de volgende schakeling:
- ref >-_ _
u
Integrator schakeling HDP
Het ingangssignaal van de HODAD is aangesloten op een I-ingang van de integrator. De selectie van de integratiecondensator geb8urd door middel van de tijdschalen. Er zijn echter slechts drie tijdschalen zodat cen condensator op deze wijze niet getest kan worden. De IC-ingang is verbonden met de negatieve referentiespanning (voor patchlijst zie appendix III).
7 - 5
Het verloop van de integratietest
~s
als voIgt:
- &n RESET worden de IC-waarden getest en de startwaarden aan de ingangen van de integratoren (IDC-waardenJ gemeten; - de veJ!wachte uitgangsspanning wordt berekend m.b. v. de gemeten IC- en IDC-waarden; - de integratietijd wordt ingesteld op de PIG afhankelijk van de gekozen integratiecondensator; aUe integratoren worden geZijktijdig in COMPUTE geschakeld; - na afloop van de integratietijd worden alle integratoren gelijktijdig in HOLD geschakeld; - aUe uitgangsspanningen worden gemeten; - de berekende en de gemeten waarden worden velo geleken.
7.3. Sinnaalconversie eZementen.
--~------------------------
7.3.1. pe
digita~l
- analoog
omzett~r (DACJ~
De DAC bestaat in principe uit een weerstandsladdernetHerk, gevoed door een namvkeurig constant gehouden spanning (de referentiespanning;. Door middel van door de digitale ingang te bestuderen schakelaars, is het mogelijk delen van dit laddernetwerk uit te schakelen. Het deel van de voedingsspanning dat aan de uitgang van dit laddernetwerk verschijnt is afhankelijk van de stand van de schakelaars. Door een juiste keuze van de schakeling verschljnt aan de nnaloge uitgang van de DAC het spanningsequivalent van een aan de ingang aangeboden bitpatroon. De insteltijd van de DAC ligt in het microseconden tot nanoseconden gebied.
7 - 6
Het is mogeZijk om het laddel"netwerk te voeden met een uJiUekeurige spanning i.n plaats van de genoemde referentiespanning. Aan de ana loge uitgang ontstaat dan het produkt van de beide ingangssignalen (het bitp(ltroon en de voeding van het laddernetlUel"k). De DAG's in de Gomeor Gi 5100 bezitten deze mogelijkheid (ft1ultiplying DAG's). Er is echter in het HDP voorshands geen gebruik van gemaakt. In de werking van de DAC kunnen fouten ontstaan door het niet juist functioneren van de schakelaars. Vooral het niet geheel open (lekstroom) of dicht (restweerstand) gaan is een bekende oorzaak van fouten. Het door de keuze van het bitpatroon individueel testen van de schakelaars is de hier gebruikte methode om tot foutconstatering te komen. Negatieve uitgangsspanningen worden gerealiseerd door de ompoling van de voedingsspanning van het laddernetwerk. Daar de schakelaars dan
~n
een andere situatie belast worden, wordt hetzelfde testpatroon
herhaald voor het negatieve spanningsgebied ..
Men moet zich reaZiseren dot de invloed van een bepaalde foutbijdrage aan het totale uitgangss,:gnaal per bit sterk ve1 sch-iZ-t doordat 1
iedere b/it een andere weegfactor heeft. Meten met een meetinstrument wat op
een
bei.>eik is ingesteld (zoals
dat in de praktijk vaak nod,:g is bij automatisch tesi;en) veY'sclzaft minder informat-ie omtY'eni: de aflJijking naarmate de ir,vloed van het bit op het max,:mum uitgangssignaal kle1:ner is. (Bij de DAC's -in de Comeor Ci 5100 komt de meest significante bit ovel'een met 51.2 V.t de minst significante bit met 6.25 mV. Als gevolg hiervan wordt in het HDP de minst significante bit van de DAG's niet getest.t daar het oplossend vermcgen van de DVM 10 mV bedraagt) ,
7 - 7
Bij het gebruikte bitpatroon wordt aan de ingang van elke DAC steeds een "1" aangeboden; de andere bits zijn "0". Bij negatieve spanningen wordt ook de tekenbit "1". Zie ook 5.2.
7.3.2. De analoog - digitaal omzetter (ADe). De ADC bestaat in principe uit een DAC en een vergelijkingsschakeling (comparator). Het san de ingang van de ADC toegevoerde signaal wordt vergeleken met de uitgangsspanning van de DAC. Zijn de spanningen ongelijk, dan zorgt de vergelijkingsschakeling voor een 2anpassing van het bitpatroon aan de ingang van de DAC. Dit bitpatroon is tevens het binaire uitgangssignaal van de ADC. De conversietijd (
= de tijd nodig om een juiste binaire represen-
tatie van de ingangsspanning te vervaardigen) ligt veelal in het microseconden gebied. Wegens de kostprijs van een ADC wordt deze vaak voorzien van een mUltiplexer, d.w.z. enige geschakelde 1ngangen, waardoor op meer dan een plaats spanning te meten is. Dit kan dan aIleen na elkaar geschieden. Om op het zelfde moment op meer punten spanning te kunnen meten, wordt gebruik gemaakt van het SarIlple/Hold (S/H) nett-Jerk. De multiplexer en S/H functie worden gevolmd door een versterkernetwerk dat voor de eigenlijke ADC gesc;,akeld is. De multiplexerfunctie wordt in principe geraliseerd door het elektronisch kortsluiten van de niet gewenste verst8rkeringangen. De S/H functie werkt volgens het principe van een integrator in de HOLD mode, d.w.z. een versterker met een condensator als terugkoppeling en een kortgesloten ingang tijdens de "Hold" fase. Tijdens de "Sample" fase is de versterker als normale een maal versterker geschakeld. Gezien de opbouw van de ADC ligt het voor de hand op
analoge W1Jze
als bij de DAC te testen. Toegevoerd wordt een spanning gemaakt door de REF DAC. Deze spanning wordt op zodanige waarden ingesteld dat de te verwachten binaire uitgangspatronen dezelfde zijn als de ingangspatronen bij het testen van de DAC's (hoofdstuk 5.2).
7 - 8
De basissehakeling van veel funetiegeneratoren (zo ook in de Ci 5000) ~s
een diode-weerstands netwerk. Dit geeft als zodanig een door
een aantal reehte lijnen gevormde benadering van de ingestelde funetie. De helling van deze funetie is maximaal 45 maal 0
0
).
0
en monotoon dalend (mini-
Eehter door het insehakelen van operationele versterkers
en door het gebruik van terugkoppeling is elke gewenste funetie realiseerbaar. Ingangen van funetiegeneratoren mogen in het algemeen niet overstuurd worden t het uitgangssignaal is in dat geval onbepaald.
In de Ci 5000 zitten twee typen vermenigvuldigers. Quarter-square (QSM) en Dual-square vermenigvuldigers (DSM). Beide zijn in verschillende modes bruikbaar t maar werken volgens hetzelfde principe:
x
x
Y
gegenereerd door diode- weerstand funetiegeneratoren. Bij het opstcllen van de test
~s
uitgegaan van de volgende wensen:
- aZZe ingangen worden gebruikt; - alZe uitgangen worden
gebl~ikt;
aZZe modes worden gebruikt; het heZe rekenbereik moet getest kunnen worden. Deze laatste eis is noodzakelijk omdat voor verschillende ingangsspanningen verschillende delen van de diode - weerstandnetwerken gebruikt worden. Een complicatie bij het testen van de vermenigvuldigers is dat de ingangsspanningen in de verschillende modes bepaalde voorgeschreven polariteiten moeten bezitten.
7 - 9
In de testschakeling is dit probleem TIT netwerken en
opgelost door het gebruik van
n/A switches.
Het testen zelf verloopt verder analoog aan de W1Jze waarop dit by de summers gebeurt. Ook hier worden de tijdschalen gebruikt om de vermenigvuldigers in de verschillende modes te schakelen.
7.4.2.
L~e9!'ithmen
generatoren.
Deze diode - weerstandsnetwerken leveren als uitgang de logarithme van het ingangssignaal. Door een inverse schakeling kan er oak een machtsverheffing mee uitgevoerd worden. De teststrategie is hier verder analoog aan die van de vermenigvuldigers.
8 - 1
8. LITERATUUR•
[1]
Barney, G.C., Hambury, J.N. and Chow, S.P.S.; Diagnostic routines for a hybrid computer. Computer Bulletin, 6 (June), p.p. 178-183.
13 (1969),
(Besahrijving van het diagnostiek systeem van de hybride aomputer van de Universiteit van Manahester). [2]
Beauchamp, K.G., Kelley, C.J., Thomasson, P.G. and Willamson, M.E.; Development of a hybrid system for university research. Cranfield Insitute of Technology, Cranfield, Bedorfd, England.
(Besahrijving van het hybride aomputer systeem van zie ook Zit. 11).
[3]
CranfieZd~
Bedient, Conrad K. and Dike, Larry L.; The Lockheed hybrid system- A giant step. Proc. AFIPS Fall 1968 Conference, 33 (I), p.p. 663-682.
(Besahrijving van het hybride aomputer systeem van Loakheed MissiZes and Spaae Company te SunnyvaZe~ CaUf0zt!lia~ zie oak Ute 15. J.
[4]
Brule, J.D., Johnson, R.A. and Klebsky, E.J.; Diagnostic of equipment failures. IRE trans. on R.C.,9 (1960), April, p. p. 23-55.
(AZgemene besahouwing over diagnostiek met aandaaht voor de kosten aspeaten). [5]
Carney, R.F.; Maintenance of computers and instrumentation. IEEE
t~an8.
on IGA, 5 (1969), 6 (Nov./Dec.), p.p. 720-726.
(GZobaaZ verhaaZ over onderhoud aan de proaesaomputer GE 312).
8 -
[6]
2
Chang, Herbert Y., Manning, Eric and Metze, Gernot; Fault diagnosis of digital systems, Wiley - Interscience, New York, 1970.
(Eerste boek over diagnostiek. AZgemene inZeiding in diagnostiek gevoZgd door een overziaht van de diagnostiek voor digitaZe systemen) . [7]
Dijkstra, Edsger, W.; Notes on structured programming. EWD 249, Technische Hogeschool Eindhoven, 1969.
(Notities betreffende de kunst Van het [8]
programme~enJ.
Gonenc, G.; A method for the design of fault detection experiments. IEEE trans. on computers, 19 (1970), p.p. 551-558.
6 (June) ,
(Diagnostiek van synahrone sequentieZe airauits). [9]
Holst, P.A.; Performance testing of analog computers. ArCA, 12 (1970), 1 (Jan.), p.p. 33-38.
(Testen van anaZoge maahines m.b.v. [10]
sinuso~daZe
signaZenJ.
Hartman, W., Matthes, H. and Proeme, A.; Management information systems handbook. Mc. Graw-Hill, New York, 1970.
(Zeer duideZijke en gedetaiZZeerde handZeiding bij de opzet van info~atie systemen). [11]
Kelley, C.J.; CHAMP: The Cranfield Hybrid Automatic Maintenance Program. The Radio and Electronic Engineer, 41 (1971), 10 (October), p.p. 439-452).
(Besahrijving van het diagnostiek systeem Van de CranfieZd hybride aomputer, zie ook Zit. 2. bevat zeer uitvoerige besahrijving van de gebruikte testmethoden).
8 - 3
[12]
Moore, E.F.; Gedanken - experiments on sequential machines Automata
studies, Princeton, New York, 1956, p.p. 129-153.
(Fundamenteel artikel over testen~ basis voor latere studies over diagnostiek van digitale systemen). [13]
Page, E.S.; Theoritical considerations of routine maintenance. Computer
J6~rnal,
2 (1960), p.p. 199-204.
(Bespreekt het al dan niet lucratief zijn van preventief onderhoudJ. [14]
Pelle, J.; Hybrid computer diagnostics, AICA/IFIP Conference on hybrid computation, Munchen, Aug. 1970.
(Beschrijving diagnostiek systeem van de hybride corrrputer instaUatie van het KSLA). [15]
Richards, Jesse C.; Automatic checkout of a large hybrid computer system. Proc. AFIPS Fall 1968 Conference, 33 (II), p.p. 987-996.
(Beschrijving van het diagnostiek systeem Van de hybride computer installatie Van LMSC te Sunnyvale. Zie ook lit. 3). [16]
Seehuus, Thomas, K.; Hybrid computer techniques to aid computer maintenance. Simulation, 7 (1966),5 (Nov.), p.p. 231-236.
(Eerste artikel over preventief onderhoud Van een analoge machine m.b.v. een digitale machine~ basis voor latere Boeing systemen). [17]
Seehuus, Thomas, KO) Harmon, Hilliam A. and Maasberg, Hilliam; Hybrid diagnostic techniques. Proc. APIPS Fall 1968 Conference, 33 (II), p.p. 997-1009.
(Besch'z,ijving van het diagnostiek systeem Van de Boeing hybride computer installatie te Huntsville (IBM 360/44 + 4 AD]).
8 - 4
[18]
Soma, Gerald N., Crunkleton,
Joseph, D. and Lood, Robert E.;
A priority interrupt oriented hybrid executive. Proc. AF1PS Fall 1968 Conference, 33 (I), p.p. 683-699.
(Basis van de e~eautive is de ReaZ Time Batah Monitor (RBM) van RXDS voor de Sigma 5/7 maahines). [19]
Willard, Donald A.; The Boeing/Vertal hybrid system. Proc. AF1PS Fall 1968 Conference, 33 (I), p.p. 709-718.
(Besahrijving van een systeem bestaande uit een IBM 360/44 en 4-AD4 maahines).
APPENDIX I.
RET HYBRTDE C0MP.-U1'ERSYSTEEM VAN RET XONINKLIJKE/SRELLLABORATORIUM TE AMSTERDAM.
Inhoud. 1. Apparatuur
I-I
1.1. Ret digitale systeem
I-I
1.2. Ret interface
1-3
1.2,1. De digitale besturingseenheid
1-3
1.2.2. De analoge besturingseenheid
1-3
1.2.3. De signaal conversiegroep
1-5
I .2.~. Extra faciliteiten
1-6
1.3. Het analoge systeem
1-6
2. Programmatuur
1-9
2.1. Hypack
1-9
2.2. Fortran aanroepbare bibliotheek routines
1-10
2.3. Communicatie met de randapparaten van de
1-10
Sigma 7
I-I
APPENDIX I.
HET HYBRIDE COMPUTERSYSTEEM VAN HET KONINKLIJKEISHELL-LABORATORIUM TE AMSTERDAM.
1. APPARATUUR.
De apparatuur van het systeem bestaat uit de volgende onderdelen:
- RXDS Sigma
5
computersysteem
- Comcor interface Ci 5100 -
2
Comcor Ci 5000 analoge computers.
Een blokschema van het systeem is weergegeven in fig. 1.
Het digitale systeem bestaat uit een Sigma 5 computer voorzien van een 16 K kerngeheugen (32 bits) en de volgende randapparaten:
- rapid access disk (0.75 Mbyte; 3 Mbytels) - kaartlezer (200 cardslm) - bandponser (10 char. Is) - bandlezer (20 char. Is) - teletype (10 char. Is) - visual display, uitgerust met een geheugenbuis van Tektronix. Tot het geheugenblok van de Sigma 5 heeft een Sigma 7 toegang, waardoor communicatie tussen beide machines mogelijk is. Dit is van belang voor het inlezen van programma's voor de Sigma 5 Vla een tape-unit of voor output van de Sigma 5 programma's via een regeldrukker of kaartponser. Voor details van de installatie raadplege men de bijbehorende handieidingen. In Europa worden de Sigma 5/7 machines ook geleverd door CII ais CII 10050 en
crr
10070.
1-2 ~n..:... I,
rig ~_I_.__
Sigma 7 systeem
"
L ~
CORE MEMORY 16
CPU Sigma 5 Integrated Input/ OutOllt Processor
32 bits
Selector Input/ Output Processor
Interface
Comcor Ci 5100
Analog A Comcor Ci 5000
I
I
R'lpid Access.
Keyboard/PrinteI Papertape read/punch
Disk
Het KSLA hybride computersysteem
Selector Input/ Output Processor
Analog B Comcor Ci 5000
I Card reader
Keyboard/ Display
1-3
Ret interface, ci 5100, vormt de verbinding tussen de Sigma 5 en de beide analoge machines. Een blokschema ervan is weergegeven in fig. 2. Functioneel gezien kunnen we het interface in drie stukken verdelen. Daarnaast bezit het interface nog een aantal extra faciliteiten.
Deze verzorgt de communicatie tussen de Sigma 5 en het interface en bestaat uit twee device controllers met bijbehorende I/O circuits die ieder verbonden zijn met een kanaal van de Sigma 5 via een Selector Input Output Processor (SlOP). Op deze manier wordt het interface door de Sigma 5 als een normaal randapparaat gezien.
Deze maakt besturing van de analoge machines mogelijk vanuit de Sigma 5 en zorgt tevens voor een flexibele aanpassing van het digitale programma aan de eisen die door het real-time analoge programma worden gesteld en bestaat uit vier onderdelen:
- een vast besturingsgedeelte. Dit maakt het mogelijk vanuit het digitale programma onder meer de volgende functiea op de analoge machines te verrichten: - het lezen en schrijven van een adres - het lezen en schrijven van een mode - het lezen van de digitale voltmeter - net zetten van de referentie digitaal analoog omzetter; - een interrupt systeem. Dit maakt het mogelijk vanuit de analoge machine speciale subroutines in het digitale programma te starten.
App. It fig. 2.
I - - - - - - - -
i-~-
- - -l
I dig.comp simulator
I
I
"'-
Inaarl van frio ISIOP 2 k:ircuits
•
Device controller I
I
I
I I I
naar/van
I I
van SlOP
"-
lti~~~i I
I
Device controller 2
ts
I I
L
digitale besturingseenheid -
-
-
-------
Ret Comcor Ci 5100 interface
I I
I
I I
~
~.•
I
I
I
clocktest panel
I
I
I
Analog control ubsystem
I
I
I dig.comp simulator
I
I I
CPU
I Inaarl
I I I
I
I
analoge besturingseenheid
Precision Interval Generator
I I I f--
I I I
f--
I I
Logic Patch board
Interrupt subsystem
I
1
I
I Discrete subsystem
I
L
-- ---
~-
I
DA test panel
I I I I
~ I
AD test panel
~ I
I
DA conversion subsystem
I I
~
-- - -
Transfer control subsystem
I
I I
-
I---
-
-
-
I I I I
I I I
AD converSl.on subsystem
I I
I signaal converSle groep
H
.p-
naar/van Analogs
1-5
- een precisie
intervalgenerator (PIG).
De logische pulsen die door de PIG gegenereerd worden maken het mogelijk het hybride programma in de tijd te besturen. De pulsen kunnen bijvoorbeeld gebruikt worden Voor het starten of stoppen van de compute mode op de ana loge machine of voor het bepalen van de conversie momenten van de DAC's of ADC's. - een discreet systeem. Dit bestaat uit 32 control en 32 sense lines
en maakt de
uitwisseling van logische signalen mogelijk tussen het interface en de Sigma 5. De control lines verzor~en bet tranQport van de Sigma 5 naar het interface, de sense lines het transport in omgekeerde richting.
Deze groep verzorgt de signaalconversie van de data die door de Sigma 5 en de analoge machines worden uitgewisseld en bestaat uit de volgende onderdelen:
Analoog-Digitaal conversie systeem. Dit bestaat uit 32 ADC kanalen, die via een multiplexer verbonden zijn met een Preston AD 15 bits omzetter. Zestien kanalen zijn uitgerust met sample en hold versterkers, welke het mogelijk maken om time-skew bij de omzetting te voorkomen. Digitaal-Analoog conversie systeem. Dit bestaat uit 32 DAC kanalen die ieder hun eigen digitaalanaloog omzetter hebben. Alle DAC kanalen bezitten een extra buffer register, waardoor het mogelijk is verschillende DAC kanalen sequentieel te laden (transfer inhibit) maar op eenzelfde moment te converteren, zodat ook hier time-skew voorkomen kan worden. - Signaaltransport besturingseenheid. Deze bestuurt de transfer inhinbit faciliteit van de DAC's en de sample en hold faciliteit van de ADC's.
1-6
Naast de hierboven genoemde functionele eenheden kent het interface nog de volgende faciliteiten:
- Logisch patchbord. Hierop bevinden zich de in- en uitgangen van de digitale trunks, status lines, control- en sense lines, interrupt lines, alsmede een groot aantal terminals voor de besturing van de verschillende onderdelen van het interface. Hierdoor is de gebruiker in staat op flexibele wijze de werking van het interface aan de specifieke eisen van zijn programma aan te passen. - De digitale computer simulator. Voor onderhoudsdoeleinden kent het interface nog een digitale computer simulator. Deze kan vanaf het besturingspaneel van het interface bediend worden en is in staat de conversatie met de Sigma 5 te simuleren.
nit bevat naast de twee Comcor Ci 5000 machines nog de volgende randapparaten:
- 2 Bryan's XY plotters - 1 8-kanaals Brush MK 200 recorder
- 1 Airmax 229 4-kanaals grootbeeld oscilloscoop - 2 Tektronix 2-kanaals oscilloscopen - 1 HF grootbeeld
osciloscoop.
1-7
De Ci 5000 is een 100 Volts solid-state machine, welke naast een analoog ook een digitaal (logisch) gedeelte bevat, elk toegangkelijk via een eigen patchpanel. De besturing kan zowel vanaf het keyboard van de analoge machine als vanuit een programma in de digitale machine gebeuren. De machines zijn niet volbezet wat betreft de componenten achter het patchpanel. De in de machines aanwezige componenten zijn weergegeven in de tabellen 1 en 2.
TABEL I.
ANALOGE COMPONENTEN IN DE MACHINES 1 EN 2.
Component
Aantal console
console 2
Optellers
40
44
Combo's (optellers of integrator en)
36
36
Track-hold netwerken
14
14
Track-track schakelaars
12
16
Digitaal-analoog schakelaars
14
14
Begrenzers
10
14
Vermenigvuldigers (quarter-square)
19
34
3
5
Digitale verzwakkers (HODADS)
12
20
Servo potentiometers
88
136
Hand potentiometers
32
32
Logaritme generatoren
12
20
2
2
Digitale functie schakelaars
16
16
Comparatoren
12
20
Relais
32
32
Vermenigvuldigers (dual-square)
Diode functie generatoren
1-8
TABEL 2.
LOGISCHE COMPONENTEN IN DE CONSOLES 1 EN 2.
Component
Aantal
Flip-flop groepen, elke groep kan geschakeld worden als een 4-bits binaire- of BCD teller
8
4-input nandpoorten
24
2-input nandpoorten
24
Logische inverters
24
Monostabiele multivibratoren
9
4-bits schuifregisters
4
4-bits tellers
4
Lampdrivers Logische schakelaars Masterclock
24 8
1-9
::.
/ '/WW?ItMMIt'J'UUN.
De hybride installatie maakt gebruik van de RXDS Real-rime Batch Monitor (RBM). De op het KSLA in gebruik zijnde versie van dit operating systeem biedt onder meer de volgende faciliteiten:
Symbol processor; Symbol is de assembleertaal van de Sigma 5. - FORTRAN - H processor; in-line Symbol
instructies zijn
toegestaan. - Overlay loader - Disk-file editor. Ret KSLA zelf heeft hieraan nog de volgende faciliteiten toegevoegd:
-
HYPACK~
CAL4
een groot aantal routines die via de Symbolinstructie
kunnen worden aangeroepen.
- Een groot aantal in Fortran aanroepbare bibliotheek routines. - Programmatuur ten behoeve van de communicatie met de randapparaten van de Sigma 7. In de hierna volgende paragrafen worden deze door het KSLA toegevoegde faciliteiten nader bekeken.
De machinetaal van de Sigma 5 kent bepaalde gepriviligeerde instructies. Deze instructies, die betrekking hebben op de I/O operaties en op veranderingen in de "basic control mode" van de machine kunnen slechts uitgevoerd worden door programma's, die zich in de "mastermode" bevinden. Normale gebruikers programma's bevinden zich in de "slave mode" en kunnen deze operaties niet uitvoeren. Via een CAL instructie kan een "slave" programma echter toegang krijgen tot bepaalde routines, die permanent in het systeem aanwezig zijn en de gepriviligeerde operaties uit kunnen voeren.
I - 10
Ten behoeve van de communicatie met het interface en de beide analoge machines is een pakket van deze routines (HYPACK) aan de RBM toegevoegd. De in-line Symbol faciliteit van de Fortran processor biedt ook aan Fortran programma's de mogelijkheid met behulp van slechts enkele Symbol instructies toegang tot de routines te verkrijgen.
De systeem bibliotheek van de Sigma 5 is uitgebreid met 85 routines, geschreven in symbol en gebruikmakend van HYPACK, die nornaal in Fortran aanroepbaar zijn en welke alle communicatie met het interface en de analoge machines kunnen verzorgen. Dit maakt het vervaardigen van hybride programma's mogelijk zonder enige kennis van Symbol of van de structuur van de Sigma 5.
Het is mogelijk vanuit de Sigma 5 gebruik te maken van de randapparaten van de Sigma 7, zoals regeldrukker en tape-units. De communicatie komt tot stand met behulp van de besturingsopdracht: !SIG~7J
CO~NDO
;
CO~NDO specifice6~t
de gewenste aktie.
Op deze wijze is transport mogelijk tussen een disk-file van de Sigma 5 en een willekeurig randapparaat van de Sigma 7.
APPENDIX II. GEBRUIKSHANDLEIDING. Inhoud. I • Inleiding
II-I
2. Het laden van het HDP
II-2
3. Het inlezen van de modificaties
II-2
4. De besturingsroutine SELECT
II-3
5. Dialoog in de testmodes
II-5
5.1. De MRT mode
II-5
5.2. De SAT mode
II-6
5.3. De BRT mode
II-7
6. De interrupt routine TEST
II-8
7. De logical unit labels
II-9
8. De dataset modificatie routine MODIFY
II-II
9. De DISPLAY faciliteit
II-14
9.1. Toestandsoverzicht
II-14
9.2. Detail-gegevens
1I-14
TABEL 11-1
Gebruik tolerantie data-
n-16
array "TaL" TABEL 11-2
Data-array "CaMP"
II-17
II - 1
APPENDIX II.
GEBRUIKSHANDLEIDING.
Deze tekst is een handleiding voor het werken met het Hybride Diagnostiek Programma (HDP). Het HDP is aanwezig op ponskaarten, zowel in FORTRAN als gedeeltelijk in objekt code. Het HDP wordt via de kaartlezer ---
--
in de RXDS Sigma 5 geladen onder besturing van de RBM monitor. Door een dialoog met het besturingsgedeelte van het HDP kan de gebruiker zijn wensen kenbaar maken in de vorm van ingetypte commando's, waarbij "blanks" niet significant zijn. Bij deze beschrijving
is
er van uitgegaan dat de dialoog
met het HDP via het operators console plaatsvindt. Bij een toew1Jzlng van de "logical unit labels" ISM en/of OSM (waarover deze dialoog plaatsvindt, zie:logical unit labels) aan andere randapparaten, dienen de uitdrukkingen "intypen" en "uitprinten" in deze tekst door passende vervangen te worden. Aan aIle mededelingen van het besturingsgedeelte van het HDP aan de gebruiker gaan de tekens "»" vooraf.
II - 2
2. Het Zaden van het HDP. ----------------~---~
Het programma wordt ingelezen via de kaartlezer. Indien de RBM monitor in de WAIT mode is, begint het inlezen na een interrupt gegeven te hebben en het intypen van een
"c"
en
"carr. return".
De RBM overlayloader zorgt voor de verdelingvan het programma over het systeem. Door middel van een !STDLB (LL,O) kaart worden de loadermessages onderdrukt, daar de tijd welke nodig is om deze uit te printen, een belangrijk deel van de door de loader benodigde tijd uitmaakt. De benodige loaderkaarten zijn vemeld in het commentgedeelte van de programma-listing van het HDP. Na het lezen van de !ROV kaart gaat het HDP in executie.
In de eerste fasa van de executie leest het HDP via de kaartlezer modificaties van de HDP dataset in. Dit geschiedt via het logical device label ISM dat daartoe aan de kaartlezer toegewezen is. De modificaties, een per kaart, hebben dezelfde syntax als de commando's beschreven bij de MODIFY routine. Commando's welke geen MODIFY commando's zijn worden genegeerd. Het inlezen van modificaties via de kaartlezer gaat zolang door tot het ISM label niet meer aan de kaartlezer toegewezen is (door een kaart met M(ISM,TY) of M(ISM,KB».Na het inlezen van dit commando wordt de besturingsroutine SELECT aangeroepen.
II -
3
4. De bestuT'ingST'outine SELECT.
Zodra SELECT aangeroepen is, meldt het HDP zich met: ~>
HYBRID DIAGNOSTIC PROGRAM LOADED
»
MODES OF OPERATION:
» MRT, SAT, BRT, INSTRUCT, END. Waarna de vraag komt: »
MODE?
Het HDP kent Ben hoofdmode (SELECT), drie testmodes (MRT, SAT, BRT) en de INSTRUCT mode. Vanuit SELECT kan een keuze gemaakt worden door op de vraag »
MODE? in te typen:
- MRT. Het HDP gaat in de MRT mode. Deze testmethode verzorgt de aanroep van een serie tests welk een groot deel van de analoge computers en interface testen. - STANDALONE of SAT. Het HDP gaat in de SA mode. Hierin staan de gebruiker naast de afzonderlijke MRT een aantal specialistische testprogramma's ter beschikking. - BRT. Het HDP gaat in de BRT mode, waarbij
de FORTRAN aanroepbare
hybride bibliotheekroutines afzonderlijk te testen zijn. - INSTRUCT. Het HDP gaat in de INSTRUCT mode., waarbij na het intypen van een commando, een verklaring van de werking ervan wordt gegeven. - END. Hierdoor wordt het HDP beeindigd. De tijdelijke files (zie paragraaf 7.4) worden met behulp van de cormnunicatieprogrammatuur via de gekoppelde RXDS Sigma 7 verwerkt. Voor de beeindiging wordt getypt: »
END DIAGNOSTIC PROGRAM.
II -
4
MODIFY(x, ••• x). De MODIFY routine wordt uitgevoerd (zie MODIFY), daarna volgt weer de vraag »
~ODE?
- DISPLAY of DISPLAY(x,x). De DISPLAY routine wordt uitgevoerd (zie DISPLAY), daarna volgt weer de vraag »MODE? Vanuit een testmode kan op twee manieren naar SELECT teruggekeerd worden, de normale en de abnormale ingang van SELECT. Wordt SELECT via de normale ingang binnengegaan, dan volgt de vraag »MODE? en kan een van bovengenoemde commando's ingetypt worden. Wordt SELECT via de abnormale ingang binnengegaan of wordt er een ander dan bovengenoemd commando ingetypt, dan volgt de melding: »ILLEGAL ENTRY »STATE MODE: »MRT, SAT, BRT, INSTRUCT, END waarna de vraag »MODE? volgt en INPUT weer een commando inleest.
II - 5
5. DIALOOG IN DE TESTMODES.
Is de MRT mode door SELECT aangeroepen, dan meldt het HDP: » MRT MODE, COMMAND?
waarna via INPUT aen commando ingelezen wordt. - Is dit commando MRTxx waarbij xx = 01-20 of MRTx waarbij x
~
1-9, dan wordt de corresponderende MR test aangeroepen.
Na afloop van deze test wordt automatisch de in nummer opvolgende test aangeroepen. Door de laatste MRT routine, MRT20, wordt een verzoek uitgeprint om de patchpanels te verwisselen. Na controle op juiste verwisseling wordt de MRT cyclus bij MRT10 herstart. Wordt voor de tweede maal MRT20 binnengegaan dan voigt de melding »
MRT MODE LEFT en wordt
teruggekeerd naar de SELECT routine (normale ingang). - Is dit commando MRT, GO, of CONTINUE dan worden de MRT tests achter elkaar aangeroepen, te beginnen bij MRT1. MRT01, MRT1 en MRT hebben hier ala commando dus hetzelfde effect. - Is hat commando (MODIFY(x, ••• x) dan wordt de MODIFY routine .angeroepen (zie MODIFY). Na afloop van MODIFY voIgt dan weer de vraag »
MRT MODE, COMMAND?
- Is het commando DISPLAY of DISPLAY (x,x) dan wordt de DISPLAY routine aangeroepen (zie DISPLAY). Na afloop van DISPLAY voIgt weer de vraag: »
MRT MODE, COMMAND?
- Is dit commando RETURN, EXIT, STOP of END dan vindt de melding »
MRT MODE LEFT plaats en wordt teruggekeerd naar SELECT
(normale ingang). - Is het commando een ander dan de voornoemde commando's, dan wordt teruggekeerd naar SELECT (abnormale ingang).
II - 6
Wordt tij dens de execut ie in de MRT mode SENSESWITCH I opgeze t, dan wordt de interrupt routine TEST aangeroepen. (zie TEST). Wordt TEST verlaten via de labeluitgang, dan wordt het in TEST ingetypte commando behandeld, alsof het een antwoord was op de vraag »MRT MODE, COMMAND?
5.2. De SAT mode.
Is de SAT mode door SELECT aangeroepen, dan meldt het HDP: »SAT MODE, COMMAND? waarna via de INPUT een commando ingelezen wordt. - Is dit commando MRTxx of MRTx, dan wordt de corresponderende MRT test aangeroepen. Na afloop van deze MRT test volgt, in tegenstelling tot een aanroep in de MRT mode, weer de vraag SAT MODE, COMMAND? waarna via de INPUT weer een commando ingelezen wordt. - Is het commando POTTEST, AMPTEST, DACTEST of ADCTEST dan wordt de betreffende STAND ALONE test aangeroepen. Na beeindiging van deze test volgt weer de vraag > >SATMODE ,
COMMAND?
- Is het commando MODIFY(x, ••• x) dan wordt de MODIFY routine aangeroepen. Na anoop van MODIFY volgt weer de vraag > >SAT MODE, COMMAND? - Is het commando DISPLAY of DISPLAY(x,x) dan wordt de DISPLAY routine aangeroepen. Na afloop van DISPLAY volgt weer de vraag »SATMODE, COMMAND? - Is het commando GO of CONTINUE, dan volgt »INPUT REQUIRED en daarna de vraag »SATMODE, COW1AND? - Is het commando RETURN, STOP, EXIT of END, dan vindt de melding > >SAT MODE
LEFT plaats en wordt teruggekeerd naar SELECT (normale
ingang). - Is het commando een ander dan de voornoemde commando's dan wordt teruggekeerd naar SELECT (abnormale ingang).
Wordt tijdens de executie in de SAT mode sensewitch I opgezet dan wordt de interruptroutine TEST aangeroepen. (zie TEST). Wordt TEST via de labeluitgang verlaten, dan wordt het in TEST ingetypte commando behandeld alsof het een antwoord was op de vraag "SAT MODE, COMMAND?
II -
7
5.3. De BRT mode.
-----------Is de BRT mode door SELECT aangeroepen dan geeft het HDP ge1egenheid tot het intypen van een eenrege1ig commando. Dit commando kan bestaan. uit een bib1iotheekroutinenaam met het juiste aanta1 1istparameters in Fortran syntax. Elk
list-item mag zowe1 real a1s integer zijn.
De interpretatie van een integer en een real verschi1t een factor 10000, d.w.z. een integer van 10000 is ge1ijk aan een real van 1.0.
Door intypen van het commando: RETURN wordtde BRT naar SELECT ver1at~n.
Typt de gebruiker een aan de BRT onbekende naam in dan vo1gt: »7, waarna weer een commando ingetypt kan worden. Na het intypen van de bib1iotheekroutinenaam en 1istitems wordt de rege1 gescand. Indien in de regal een syntactische onjuistheid voorkomt, wordt geme1d: »LISTERROR, waarna weer een commando ingetypt kan worden. Indien de hybride bib1iotheekroutine aanroep juist is wordt de aanroep uitgevoerd. Na uitvoering wordt uitgeprint: :NAME (listitem I, •... 1istitem n), waarbij NAME de ingetypte subroutinenaam is, gevo1gd door de 1istitems in integer of real format, a1 naar ge1ang het type. Bij routines van het type FUNCTION wordt aan deze rege1 toegevoegd: • VALUE waarbij VALUE de actue1e waarde van de routinenaam voorste1t in integer of real format, a1 naar ge1ang het routinetype. Na uitvoaring van de routine en uitprinten van het resu1taat kan opnieuw een commando ingetypt worden.
II - 8
Voorbeeld aanroepen van servopotleesroutine: ingetypt : RPOTI (0,0,1,0) resultaat: : RPOTI (0,8421, 1, 1).
6. De interrupt routine TEST.
De norrnale executie van het HDP kan in de MRT en SA mode onderbroken worden door het opzetten van
Senseswitch 1. Senseswitch 1 wordt in
elke testroutine zo vaak afgetast dat er binnen enkele seconden op gereageerd wordt door uit te printen »INTERRUPT, COMMAND? en een commando via de inleesroutine INPUT in te lezen. Is het commando: - CONTINUE (of een "carr. return", welke daarmee volkomen gelijkgesteld is) dan gaat de executie op de plaats van het interrupt gewoon verder. Hier heeft het interrupt dus een wachtfunctie. - MODIFY(x, ••• x), dan wordt deze routine uitgevoerd. Staat na afloop van MODIFY senseswitch 1 (nog) op dan is er weer de keuze uit deze commando's. Staat SSW 1 niet op dan gaat de executie op de plaats van het interrupt verder. - DISPLAY of DISPLAY (x,x), dan wordt deze routine
uitgevoerd. Staat na
afloop van DISPLAY Senseswitch
(nog) op dan is er weer de keuze
uit deze commando's. Staat SSW
niet op dan gaat de executie op de
plaats van het interrupt verder. - niet een van de voornoemde commando's dan wordt de routine TEST via een labeluitgang verlaten. MRT en SAT modes handelen nu zelf het in TEST ingetypte commando af. Indien door het opzetten van senseswitch 1 de routine TEST actief wordt, gaat indien er een analog console daadwerkelijk getest wordt, dit in de POTSET mode. Wordt TEST niet via de labeluitgangl maar via de norrnale uitgang verlaten, dan wordt de oorspronkelijke mode van hat betrokken analog console weer hersteld.
II -
9
7. De logiaal unit Labels.
Het HOP maakt voor de in- en uitvoer van informatie gebruik van diverse randapparaten. De gebruiker heeft de gelegenheid tijdens de executie van het HOP een in- of uitvoerstroom aan een ander randapparaat over te dragen. Oaartoe zijn deze informatiestromen niet verbonden met een randapparaat maar met een "logical unit label". Het HOP kent vier van deze logical unit labels.
- OSM (Qutput §JJstem tiessages). Hierover komt de aonversatie van het besturingsprogramma met de gebruiker. Meldingen zoals MRT 1, CONSOLE 1 en MRT 1, END komen over di t labe l. - ISM (!..nput §JJstem tiessages). Hierover wo~den de door de gebruike~ in te typen aommando's gelezen. - OLM (~tput !:..isting tiessages). Over dit label worden de diagnostisohe testresultaten uitgevoerd in direat leesbare tekst. - OCM (Qutput £.ode tiessages). Over dit label worden de diagnostisohe testresultaten uitgevoerd in een geoodeerde vorm ten behoeve van latere verwerking. Dit label is alleen in de MRT mode aotief.
II -
10
? 2.
De gebruiker beschikt over de volgende randapparaten:
- Operators console - Papertape reader - Papertape punch
(TY) (PR) (PP)
-
(CR) (DS) (KB)
Card reader Visual display screen Visual display keyboard Temporary File 1 Temporary File 2 No device (ignore output)
(XB)
(X9) (NO)
? :3.
Met behulp van het commando MODIFY (zie aldaar) kan een logical unit label aan een ander randapparaat toegewezen worden. De volgende toewijzingen zijn toegelaten:
OSM aan TY en DS. Standaard-toewijzing : TY. - ISM aan TY, PR, CR en KB. Standaard-toewijzing : CR. - OLM aan TY, PP, DS, XB en NO. Standaard-toewijzing : TY. - OCM aan TY, PP, DS, X9 en NO. Standaard-toewijzing : NO.
II - 11
?4.
Na beeindiging van de executie van het HDP worden de Temporary Files via de SIGMA 7 geleegd, of zij gebruikt zijn of niet. X8 (- BT File X8; via de lineprinter) X9 (a BT File X9; via de cardpunch). Het legen van deze files kan worden voorkornen door de kaarten : SIGMA 7, OUT, X8, LP, VFC
(voor X8)
of : SIGMA 7, OUT, X9, CP
(voor X9)
welke achter het HDP programma aan liggen, te verwijderen.
8. De dataset modifiaatie routine MODIFY.
Door middel van de MODIFY routine kunnen een aantal gegevens in de HDP dataset gewijzigd worden. De opbouw van het commando is als volgt: MODIFY(x, ••• x) of M(x, ••• x) waarbij x, •.. x de listitems zijn. Ook hier zijn in de tekst opgenornen blanks niet significant. Te wijzigen zijn:
- de console optie, aommando-opbouw : M (CONS,XJ, waarbiJ" X = 1,2 of 3. Dit aommando zet de aonsole-optie op de door x aangegeven waarde. - de systeem tolerantie, aommando-opboU1JJ : M (TOL, X,YJ,
=
waarbij X 1,2, ••• 40 en Y = 0•..• 9999.
II - 12
. array en du~·dt daarmee geeft de Xsteplaats aan in het tolerant~e de tolerantie van een bepaald type aomponent in een bepaalde
x
situatie aan. (Tabel II-l). Y geeft de gewenste waarde van deze tolerantie
aan in eenheden
DVM (= 10 mV).
Wordt listitem Y weggelaten~ dan wordt TOL(X) op nul gsast.
- De logiaal unit labels. Commando-opbouw : M (lb l ~ dev) ~ waarbij "lbl" een van de namen OSM.. ISM~ OLM of OCM is. "dev" is een tweeletterige aode voor een randapparaat zoals aangegeven in paragraaf 7.2. Wordt er een toewijzing aan een niet toegeZaten r~ad apparaat aangevraagd (zie para graaf ?) dan vo 19t de medede Zing: »UNABLE TO DO ASSIGN~ waarna de routine MODIFY verlaten wordt. - De adressen van de potentiometers welke de ingangsspanningen voor de amplifiers~ funatiegeneratoren en multipliers leveren. Commando-opbouw : M (aomp~ X~ POT~ Y) of M (aomp~ X~ HOD~ Y) .. waarbij aomp ~~n van de volgende aodes is: · AMP (amplifiers) · FUNC (funatiegeneratoren) · MULT (multipliers). X is het oatale aomponentadres. Y is het oatale adres van de potentiometer~ of de HODAD~ weZke ds ingangspanning vaor de betrokken aomponent versorgt.
II - 13
De aodes POT en HOD mogen door elkaar worden gebruikt. Is in een van de twee aonsoles (of beide) volgens de dataset wel de betrokken aomponent maar niet de toegewezen potentiometer (of HODAD) aanwezig dan volgt de mededeling: »UNABLE TO DO ASSIGN waarna de routine MODIFY verlaten wordt. Een potentiometer kan in de dataset overal door een andere potentiometer vervangen worden door een van de volgende aommando's welke geheel gelijkwaardig zijn: »MODIFY »MODIFY
(SUBS~
POT~
X~
Y)
(SUBS~
HOD~
X~
Y)
waarbij X het oatale potadres van de te vervangen servopotentiometer en Y het nieuwe oatale servopotentiometeradres is. Is de potentiometer op het adres Y niet in beide analoge maahines aanwezig dan volgt de mededeling: > >UNABLE TO DO ASSIGN. Indien het aan MODIFY toegevoerde aommando door deze routine verwerkt kan worden~ wordt de modifiaatie-opdraaht ui,tgevoerd en volgt de mededeling: ».MODIFY (X, ••• X)
waarin de X- en de verwerkte listitems bevatten. Daarna wordt de routine MODIFY verlaten. Indien de MODIFY routine tijdens het interpreteren van de listitems~ waarbij van links naar reahts gesaand wordt~ een fout ondekt~ volgt de mededeling: »ERROR IN ITEM 'X' waarbij 'X' het eerste listitem aangeeft~ waarin een fout gevonden is. Heeft MODIFY bij aanroep minder dan 2 of meel' dan 6 list-items meegekregen~ dan is X het getal O. Na het geven van deze .foutboodsahap wordt MODIFY verlaten.
II - 14
9. De DISPLAY
faci1i~eit.
9.1. Toestandsoverzic~!~_
Door het intypen van het connnando DISPLAY (of een "D") niet gevolgd door listparameters krijgt de gebruiker een kort overzicht van de toestand
wa~rin
het HDP verkeert.
Achtereenvolgens worden uitgeprint:
- de console-optie (1, 2, of 3, d.w.z. console 1, console 2 of beide) en het nummer van het console dat op dat moment daadwerkelijk getest wordt (0, 1 of 2, d.w.z. geen enkel, console 1 of 2). - Bet nummer van het segment dat momenteel in het kerngeheugen geladen is (0 = nog geen segment geladen). - De "logical unit labels" met de randapparaten welke hieraan zijn toegewezen (zie II-?). Indien een tijdelijk file in gebruik (geweest) is, een boodschap hierover.
Details over de componenten- en de tolerantie dataset kunnen verkregen worden door hetDISPLAY commando te laten volgen door listparameters:
- DISPLAY (COMP, X), waarbij 'X' een integer tussen 1 en 604 is. Uitgeprint wordt (via het OSM label) een integer getal dat informatie over het X-ste element in het componenten dataarray geeft (voor de indeling van dit array, zie tabel II~2).
II - 15
- DISPLAY (TaL, X), waa~bij
'X' een
intege~
Uitgep~int wo~dt
de
tussen 1 en 40 is. (via het OSM label) een'intege~ getal dat
waa~de
~~ay
aangeeft van de X-ste plaats in het tole~antie data(voo~ de indeling van dit a~~ay, zie tabel II-V.
Krijgt het aommando DISPLAY ande~e (foutieve) mee dan wo~den e~' *\~*\b~ uitgep~int. Na afloop van de meldingen
wo~dt
listitems
DISPLAY ve~laten.
II-16
TABEL II-l.
GEBRUIK TOLERANTIE DATA -ARRAY "TOL".
Plaats
Waarde
I 2
2
3
10 10
4 5 6 7 8 9
2
2
10
10
II
5 2 5 2 2
12
13 14 15
16 17 18 19
20 21 22
2
100 10 10 10 10
Omschtijving RDAC en DVM DAC's DAC - update ADC - sIR control ADC's
Relais en weerstanden Amplifiers IC-waarden Integrators Track-hold Track-track DA switches Log generatoren,f output < 33 V Trunks Log generatoren,/ output I > 33 V Quarter square vermenigvuldigers Dual square vermenigvuldigers
23 24
25 26 27 28
29 30
2
31 32 33
100
34
35 36
37 38
39 40
Pots en RODADS Randomwaarde Pots en RODADS
II - 17
TABEL II-2.
DATA -ARRAY "COMP"
De informatie over de componenten wordt op de volgende wijze door 9-digit integers gepresenteerd.
IxlXX X/XXIX XXI
I
console indicator decimaal adres type aanduid iilg
decimaal adres ingangsspanningssignaal De gebruikte code is als voIgt: console indicator: 0 I
2
3 type aanrluiding
:11 12 13 14 30 31 32 40 50 51 60 70 80 81 90
component is niet aamlezig component 1S aamvezig in console component 1S aanvezig in console 2 component 18 in beide consoles aanwezig integrator/versterker versterker met track/hold netwerk versterker met DA/limiter netwerk versterker met track/track netwerk quarter-square vermenigvuldiger dual-square vermenigvuldiger tweede uitgang van vermenigvuldiger functie generator servopotentiometer HaDAD relais digitaal analoog converter analoog digitaal converter analoog digitaal onverter met S/R optie amplifier met T/l-! netwerk t.b.v. T/H test.
De bezetting van het array "CaMP" is verder als voIgt: plaats I - 120 121-240 241-252 253-43 /f 435-L166 467-530 531 ~60'f 605-624
bezet door versterkers vermenigvuldigers functiegeneratoren potentiometers en RODADS relais digitaal analoog converters analoog digitaal converters versterkers met T/R netwerk.
III-I
APPENDIXJII.
DE PATCHPANEL VERBINDINGEN VOOR HET HDP.
De schakelingen op de patchpanels van de Ci 5000 analoge computer en het ci 5100 interface (intracom) zijn opgenomen in de volgende tabellen: tabel
onderwerp
bladzijde
DAC's
III-2
2
ADC's
1II-2
3
Relais en weerstanden
III-3
4
Summers
1II-4
5
Integratoren
1II-6
6
Track-hold netwerken
III-8
7
Track-track netwerken
III-9
8
Comparators
III-II
9
DA Switches
III-13
10
Log generatoren
III-14
II
Trunks
III-15
12
Quarter square verrnenigvuldigers
III-16
13
Duel square vermenigvuldigers
III-18
III-2
Tabe 1 1: DAC s FROM
'r
Tabel 2' ADCls TO
OF
INTRj:\COM PAT ~ HTNf, IDAC x'FfR CON"TROL: BlO(!Ic
.. c REMARKS
FROM
'P,lDl".\( 0
TO
1'HIC.
...
~
~5/H X'FE R
~L
"'L
C. K. 1
0 C\.(
1
AJ)c. 0
0
. 10
I
J
I
II
L
2
2.
12
ll-.-a.c 1
~
~
l:h.~ (11
.~
13
1.t
l(
li
14
5
S'
&'
15
b
b
b
Ib
1
1
1
n
J)flc....lO
~fiC. bO
.
f - - - -.... -----.-.
__.. _-
.. -
I-------~
--.
~-,.
BLoctU.___ ~c...bJ - - - - - . ~L 00< 1
'BLOc.K ~ 'f>LotK
J
I])t)c 11 I
,
I
J)l1C 1
I
) ft
:
5tH
0
'RL DC K
Oc'.k.Q___ ~BC10
'f>L 0
REMARKS
CaNT ROL: X/fER:
X'FfR:
t---
.lh~i.J!.._ Q____
OF
lliTRACOM PAT( Io-HI NG
~
IbR( ()
0
-_.-
c 11 -.
,.
.
~N~LOG
.
I
I
'PaTe HI N( ,. .. '\
1-----
!LOC.K 1
lll9 C.K
1
])RC
bl
ID~(
17
'R))f'c.
~~
T5'OO T~ol
I
~~~b _.. -.---'-- ..-- --."_.--
_..._---
~~---
T5~7
-
1II-3
Tabel 3: RELAIS EN WEERSTANDEN • .-
-_-..--_N.C .
.
-I
.!J
•
-I
-to 1
~
•
'R i 0'' , ~ 2 I R 2. 1.. 'R .13 .. K 24 R 2 5 J oJ
I
•
'R~2., Tr~~ )~3.l.f) R3~) R3b)131.
0
N.O. ~
-,
~.c..
' M.JL
'\I\r
0
M..n.
I
~ N.O.
'ROO:
?R 11.{
~ROO
'PROI R04:
'P~O 1
R\l :
'PR 11
'PRI"
ff05:
PRI$"
PR13 Rf2: lR~1 'tR~3
'P~ 11
'PR~1
PR24
"PR2('
~ Db:
1>R41
'PRJ{2.
'PR ~b -
'P~~5
PR15
'R \~:
-PR~4
fRlf3 RIlf: '"PR 44 RRLfb 'PR4f
'P'R 5" f ~02:r~@3 lR05 'PR04 'PRSO
11 b: "R If 7 .IMil
NC
~
.IMll.
..
~
~N.O.
~Ol:
'PRO~
'PROl
'PRIO
]03: -P~II -P~I) ROJ: 'PR27 'PRlfo R/5: "P'R52 'PRSLf ~t7: ~R5"S- 'PR~7 'fR31' . 'PRll 'PR5) PRS" "
R2b: P~bO PRl,4 R17: PRb5' PR7 J R30: 'PR~l PR l' R~l: PR l,7 PR 7~ PR~~ PR12 'PR10 "PR bl IMil N ~.c..
'RIO: 'PR 17 p~ 30
IM.n. +-1
-
I\. f\
_
V v----'N.O.
~Rl0
III-4
..
TEST . _-". ---_.-Tabel 4: SUMMER ... ,
FROM
"
TO
OF
•
ANALOG PAle HING -I
+1
1010
~
REMARKS
,
FROM
"
'~.
'Poo2
~o..~
.2.0 .1
1>002 1>O()~
10o~
'fo04 'Poo~
'Poo~
022.
2.0
~ ol~
2.0 2.0 2.0 2.0
~ 02L{
AOlS' A02.b
Ro27
'Po 1I
10
flo 33
2.0
~O~'1
'10
fl o~5
'"Pt>04
.
ROOD
20
A001
20
20
Rool
1.0
2.0 10
R 003
~o
~ 004
20
10
\1
1.0 20
~oo
..
~O~I ~ D ~2.
10 . A03b
2.0
1>oo~
Ao~l A olio
Ro~ I
R0-42
2..0
~o~3
2.0
A ol.l4
20
f
b
'~OOl
2.0
~o 10
2.0
~ 0 \I
'2.0
10
~
012
20
R045" AoLf h Ro'-q AoS'o
A0 \~ f\ 0 14
'2.0
~osl
20
~oS2.
2.0 10
-Pool
~
02./
'P 0 /0
~Ol3
;
f)
~O50
~Dll
D
A020
2.0 10 20
'Pool
1>001
2,0
Qo
005
"
-----
REMARKS '.'
'PDo I
"poco
OF
~
N.D. 'RotO N.c. l'R010 looO
TO
1> t>Ob
-
20
10
~o
15
20
'1 t>s~
~o
Rod,
2.0
~oS4
10
~o\l
'2.0
R o'S'S
III-5
Tabel 4: SUMMER TEST (VERVOLG) _.
_------
FROM
'1
loob
1>001
"rO\O
1011
TO
OF
10
Rosh
20
~osl
2.0
f) ObO
'2..0
2..0
Rob' A0"2
1Q
J:l 0 b~
20
~Ob4
'2.0
,.
,
FROM
~REMARKS
"Poll
TO
OF
2.0
FlIOD
20 2.0 2.0
r;}lol
AI02
1.0
610'1
'2..0
H lo~-
2..0
ftJOb
~obS
2.0
f)
10
AObb
20
AI/O
20
flOb7
20
~
20
FlolO
'2..0
PI \12
2..0
ROll
2.0 20
A 114 ~ 1\ b
2.0
~12.4
,
-'
...
..
'POll.
107
" J
11ol2.
10
A013
1.0
A014
20
ft/32
::to
8075
20
~ I~'f
10 1'0
(\ olh Aoll
2.0
Bl~O
1.0
~ IL.l 2
'f 0
l~
.
.
REMARKS
R,o.3
2.0
..
LOG-I C
------
..
.~----
--
--
t' B1 CHI~ G-:
e
--
TS1
cJ.t, a..~~ l ' ~
.B
TS2
oJk..
1>Li
'R01O
}1G- -
-----_.
~.~""
-
~ ...
t'\
,I\/.:)
'l,.W.t:~~~~ - - - -
III-6
Tabel 5: INTEGRATORTEST. , , '.
FROM
'1
~N~LOr;.
TO
OF
~REMARKS
.
TO
OF
FROM
1
Ao.Li 7
J
R051
I
9053
1>003
I-
RoSS
1>004
1
Ros7
1
A 061
I
I
eob3 RobS
I
Ao
I
~Oll
I
Ao13 flolS A017
"""- -\oro.. ~
0, ,
~
'fOO'S
:POOl
1>OOb
'POOl _.
'Poo 1
'PooS '=POOh -:Pool 'POlO
l' 010
'PO'II
-:poll 'Po 00
I I
fl 003
I
\)005
I
Rool
I
~oll
\
~Ol~
\
BOl5
I
t:) 0 \7
I
1
~ o1'f fl 02~
I
·~o25
I
~O2.1
I
~o~1
I
~o~,
I
Bo~s
?ool
100 '-(
1
I '1>005
J
1
~o~l _._- --
f-'----
f10lil Aolj ~ ~o.z.,s
,
I
ROOI
1>00 I
~oo~
REMARKS
"P i) TCH IN (;.: 'POOO
-I
,.
"Po II
(
'Po J 2
-, "
1
~IOI
,
A 103
I
AIO? ~ . •hi'. " ~ to"'\AN'\ -.... -
,
.
b7
Ie
R loS
,
>
.__.
__ ._-..
.
III-7
Tabel 5: INTEGRATORTEST (VERVOLG). ----
...
-
.
~._.-
FROM
.,
LOGiC I M 'F
.1M-1=' , .01 ,L\
F
TO
-
._.
OF
"P~T
•
oJk . I-\:~.", .. o..~' ., TS1 "
.
.
11 c;
T 1. ~I
NilS' Nllb
CL 0
NilS'
Nl/5
1---.
2~O
ouT
-C.l k
CL 0
'1
"
N 2. Ii' NlIb eLK Foo
T
TO
INTRncOM 'PR
CHIN G-:
~T
TCS2
.
FROM
~REMARKS
~1
OF
REMARKS
eN I, Vcr:
Tl~o
(~)
T2~o
(&)
Tl ~I
(R)
T2~)
(~)
T1DO (R)
<5L 0
T 1. 00 (B)
SL 1
.
.
~~t
Nll~
H
Ho-ecl
N lib .•
C
c.0W\~t.t. ~~t
loa
~~~
~oO
~ 0 I
~,,!
fo'
. . a.
101.
~~
'Ro~
~--tl
F0 I
-FOI
T200
KBJ>
SL~Vf
.
f 02 f-o '5
o1k TIN'S f
.
- -
.
- - _.. _-
..-
1II-8
Tabel 6:
TRACK~OLD ~El~. ..~-
'1
FROM
TO
OF
- - - _ ..
00 I
_. T
.. ~
--
TriO 0
L~ ....
'"
THOO, Pt 000 ----
THol
T
1---
.
Tli 0 I-_._-- --------f) DOb f--.
Q 0 \~
-_.
1-----
T H 02
T
A 0 '2.1
T
--~
I
Ao2.S
A024
flo'2..l
T
--
- _ .THo?> _ __ __ ...
.
..
LOG-1.c.
1-----
ROlb _-
--_.-..
- - - - - " - _..
----
l1 o~!1 '?~
"f
01
oJk.
Ii
C.
~"OU.lIJ.
THoh
F}o~O
THOl
T ~OSb
TH
T
T
H II fi 0 bS' TH 1'2 A 0 b1
Aol b
TH
I~
ro
A obI.(
f-)ob~
T
THD3
THoS
T
A051
TH 10
AO~3> T TH04 .....- - ---------- - -
T H olot
REMARKS
9042 THo/' T
A0 b I
TH22 TH13
T H 2..3
O~,
THol
802.'2
TH'l..l
• f)
fioSS'
THOl
ROIL{
1--'----- - -
OF
.
THoS
.
-
~oo-S f------.---
TO
'PA t\CH rr ~ & :
f----R N~ l 0 (,. f\
FROM
• ':REMARKS
T H. II
T
TH1'l
~lo4
T
TH13
'lll'l.
'-C1.N (?: T-H'S ~l f-~~~ ,-
f - - - - - -----
-~
f---.
1------_.
. -f - - - - - - .
--~-.-
1----------
----~
_...
_----
-
.
-
..
III-9
Tabel 7: TRACK-TRACK NETWERKEN. -FROM
'l
TO
OF
~
-, REMARKS
TO
FROM
'"PAT CHI N (7.
RNALo 6-
.----.-----
~--------------
------ 1-'
OF
REMARKS
I I
~
- - I---
I
_._._-----~
.
~
....
~
..
.. ,,_._ .......
~_
..., ---
1--
._~_._-_.~-,_
1>000
-I
---... - _.-._---_ .. _----,-_.. ".- t---._-----
.._-_., .. - ---_.
., -- -_.
to,.-.
,.
-I
1----------.---_.- ---------
'r 000
,
-I
TTOo -I
TTDo
.,.. i
T G-
TToo
-
I
-I
"'P~IO
TT
-I
T
TT II
Go
F) 102
T T02
TT \1
T
TT02
-I
flOlO
I T 03
G-
TTO~ TTO~
--
.
~ooLI
'T
-I
f----1:--'J"-Q..~ -I
_G:
T"1"
05""
A040
' ..
-r
TTOS"
T
TTO~
G-
fl 04b
T
T,ob
-I
T
TTOb -
0"___
Go
1-------_._-
-\
'?ool
~c>ol
T
ir,
Tr '3
-I
.,-
TT l3
G-
A
,~
~_9.~~
l~
\" l' 01
b
TT ILf
T
TT
c;.
61~4
14
T 1t:>-
TT l~ ~o
l3
I
T T 2.. 2.
--
TTIS'
T
T
-\
-
II
'POI~
T
'-
F}/IO
T
TIle.,
-\
.. _---,..
11-
T
-po
-
Go
I
T "'l~ 'Pc lL.
~ 0 \~
1>oob
T 'T
T
-I
f>oob
-I
-I
-I
_:\'005'
-I
TTI2.
'Po l1..
~-------
1>oo~
,..
\' T04
I
Pol'l_
TI" 1'1011
II
P 01'1-
Ao~'2..
1> 004
A 0,.] 0
1> ° I)
T
,.
-(
TTIO
T
-,-
-I
10
'P 011
G
" l l 10
'lOO~
f-----
' t tr T T
-I
1 - - - - - - - - - - - - -1--------- 1 - - - - - -
'1003.
0/0
AO\l
t-G-
-I
'P
I
-I
1>002.
TT02.
f\Ob'l.
T1' 01
-\
-\
G-
T
G-
~o02
Tiol
TIDI
TTOI ~-
01
T
-T
1 - - . _ - - - - - - - - - -1 - - - - - - - -
1---------- - . - - -
.
Aoo4
l' 001
-
~oo
T
I
---- I--
Go
i T \ IS
fl
\~ 1.
T
'T T
16
T
iT
\6
G-
-
~Ilio
T
TT1'2
.J"
Ti'1..1
G
A )~1
III-IO
Tabel 7: TRACK-TRACK NETWERKEN (VERVOLG) . ..
..
'I
FROM
TO
L 0 c;. 1. c
OF
1>~-
-
': REMARKS
*'
reM! N
FROM
TO
OF
REMARKS
(,.
-
-
T 1. ~2.
..
~"",~. I--
TToo
1 - - - - - - - . f---_.---.
TToi
(
0 -
.
rrT
2.. 2.
IT T
1.~
..
•i
- - f--. IN\R~c.t M
C L 1
t aTC'1 ING:
Tl~1.
( ~)
Tl~l
(~)
__._------- ----
f - - - - - - - _.._------ .-
.
1 - - - . - _ . - . _ - _..-
---_._--- t - - - - - .
--"------- - - - _ . " - - - - - - - -
1--.
--------
'
-
-
.. --
- -
_ ..
-
....
_-
-_. -
III-II
Tabel 8: COMPARATORS.
-"
FROM
TO
AN A LoG
,?I= Tc
t--------'--
+J
J. . . REMARKS
OF
H LNG
to-
~,,-.-
'P
-1
~~~~
COO
.
.'
,
~-
'?o s
ObC
~ ~ ",-",,--k,
--
"\,7'Pl\~
~'~ObO
c\l
--------- f-------
~oSl - --.--_ _--
+\
REMARKS
.
.l
cto r----~-------
OF
~ o~1
COl :
TO
,
?oS'o
'T>oso,
.
FROM
Coo
,?OCoI
COl
'?O b~
C c>1..
..
\
\J\.o.. Jvw~
C\'l C\~
"
~
c 1..'L
- - ~-
--
C1.:)
.
~ \\\
C. 11
'?112..
C 21.
1> \\ :,
c. '23
-~
,
Loc."tc
t>~
,cH IN G-
~ --
(00,,\(0\
100
1\ liD
N 1. D I .N 1.0 1.
T 1. \ \
Tlll
N2.()~
\2..13
N
N2.00
Nl. 0\ C04r50 ?- N 1.02
c.ol.. co'?>
I---
-..
~-----=- f--
Co6,co\ N 2.o~
N
N 10$ N lOb
N loS
N lob
T2. 11.j T21S T lib
N 1. ol
T III
C2.0 I C'll
Nlol Nl \0
N 110
T 11.0
C 1-1.\ (1)
N 1. \1
N 1 1I
T 11../
CIO"l<:"\\ C.\'l.
CI'-1,
C\~
CI~
C.\6,c II
Nlo4
t------------ f----
-----
~----_.-
- --
1...0 L..f
--
III-12
Tabel 8: COMPARATORS (VERVOLG) - -'I
FROM
TO
OF
..,_ _ _ _
.0_-__--
(t'~
T 110 12. \\
(~)
_...
_--
--- _.. - - - _..
(
~L
Tl1 ~ (H)
5>L I~ SL ILl SL \S
.•.
----~----
'-"",,,
1111 ('&J T 2. 12. ('e»
.
T·l I ~
.
T2.I~(~)
---
,
'
-
1---'
_.-
..
Sl t 1. SL2~
SL lL!
SLl-5' ~L1" Slll
T 11 b (b') Tl'l (1)')
SL ~I
T 11.0 ("e»
SL~l
111 ('j}')
SL'.>3
T
I---
-
C:P»
T 111../ (2)")
em
~---------
TO
--------_.
. T2.lo(~
~L lb T 21 b SL \7 T1.ll l ft) T1.10(nJ ~L~O SL 1\ T 11. I (tt) --
f--
,
FROM
\1
C;Lll
T2\5(R)
_ _-----_.
5L 10
ill~ (~)
T2.I~ Lfl)
. REMARKS
,: f)lCH ING: 1-----
I N i~ ~ co M
t---
~
~
SL~o
OF
REMARKS
III-13
Tabel 9: DA SWITCHES • FROM
-I
TO
~l ~T C ~
AN\iLOc,.
---
-I ")~oo
-J
~
~ 002
1
flool
1
~R_~J___ f - Go ---
-I -
~oo2
I
l>~O1. -I
I
1'OOb
1
1) ft
,
.. ))f.}ol
G
~obo
1
HObo
-(
]) R01
-.B 0
-I
lO - -
1
G-
FUo ROb/'
-I
1
A0 '6
AOlb
-I
~o~
G-
1) f12'Z.
r; \
~Dl2. Ii 0,2
1>00'1
t
]fl2.~
J)~2.3
G
Ro14
L
110 li(
-(
1
il\ 0)0 "
-\
1>004
?
- - -_.--
'\> Dol1
l
")~Oq
') fl 04
c;.
~o~
-1
I
_.
\
:b
' ~ o')b
'.,
'\> CO$" 1
1>t\ oS
"»~ oS-
~
~ 0 1.ILf
1> 00 b
1
J>~Ob
. - - , - - -----------
Lo(,..i.e.
)
f} \I
G-
-1
I
A- 100 f\ 100
-\
1>fl \"C,",,1 N G- ~ ~ i})~ .~~~
--
~1t n.
1
c;.
,
~\ob
1> 0 l'l..
\
1) f) l~
:!) ~ \~
G
~\\1
\
~\\'2.
-I .
11
lo\"L
-1
1>oob
-I
~
I
1> ~ \1..
ft oL.IY
1
'Po 11
0 II
'?ol1..
~ODS-
-I
R- 1.1
-I
O~ t>
--
1)
I
1)
03
07
"Pool :} A /0
I
1) fl
REMARKS
'Poo7
f----
G-
l
Tt?~
-I
Ao$"2 Ros2
1> Dol
'POD ~ f-------C----
f------.
G-
'Poo~
-\
, 1
'""'" . ..J>AOb
1>Bot Ro\l,
--
,
.
A Olo I PDO'2.
-I
OF
oel
1>00 1
--
"
G----
-I
TO
]) ~oo
I
.-
FROM
I.Nc;.:
'? 000
q>C)oo
J:>
• : REMARKS
OF
~
--
\cb
----_.-
"I. N T RAC.o M
1 tl
TC\ -ttNC'7:
CL~
T2.~~
( R)
CL~
Tl~3
(&)
III-14
Tabel 10: LOG GENERATOREN. --
FROM
-
'I
TO
RN~LoG.
OF
• '-. REMARKS
FROM
TO
OF
REMARKS
'P\= T c..1i IrN(;.:
f--'---
-
-
'f
1 ,
lr\.'o...~' •
OOC
't>DOI
.
-
.
------
0,
•
•
~D \1.
- - f--
'f D\3 ~OOO
f-------------
'X1 li"Ooo Xl "F ODD
~---_.-
1----
_._-_.-
X1
1>001
r 00\
X2. FOol "
.
r
--Po 12.
~1
fOIl
'f,.2..
FOll
Xi
fOl3
X1.
fO\~
--
'"f 0 \ ':>
-..
f----
--
1-----
---
III-IS
Tabel 11: TRUNKS. FROM
':
TO
\CH 'f~ I----'---
AN~Loc,.
f-------
f-----------------
1>RTC.ti
»- '-REMARKS
OF
~----_.~-.------_.-
-_._- --,.. __..
_-
1>\) ~--~~--- 1.:- - -
f - - - - - - - - -----------
FROM
,
TO
OF
REMARKS
IN& ._-
---.- -----
. 'P A-TC. H 'PA NEL
... ... ~
.-._--
f----
2:
,
TODD
TOol
T 002-
Too~
f----
,
.
+I
Tooo
- 1":.0 Qd
Tool
TDO~
'-
Too4
,
:
T Olb
Toll
T2.oo
T201
To,S'
Tolb
Tl..o~
Toil
T 200
T2..o \
"T 2..02.
1-------------- f-----
T1.0:l..
.
'.
,
.
Tll.io
----------------
T2..~1
~----_._,---
T2.I.11. T2~3 -------_._-------
-
_._------~,.
:
------- ------------
T 2..L13
T2.Lfl 'P'Rl13
I
'Pv. l4 ~
rP~ll2.
1 ~.J1
'P~LiI
, M -11..
T
- - - - --'--
.
2.~1
1'~lJ2..
,?RL{I
M.1l.
I~'" ol.\V\d
--
---
f---------------- - 1 - - - - - - - -
' ..
------
--
T 2
Li ~
T2.4S
-t
I
RnAC
~tif-i~-tie.
~ --,---
T I 4 'i
J(]AC
T2.LtS" -
--
I
RDTtC
l~tlf\CA--t~
~
RnAC
1II-16
Tabel 12: QUARTER SQUARE VERMENIGVULDIGERS . FROM
"
TO
f'N~LOG-
'?~ "tCH!
f-------
•. REMARKS
X X
(
,
FROM
_. ;.~
'RoOl
~
A o~o .. R.o \ 2-
MOol
--
~
.,
t)ot
A 001.
N.D.
RDDI
~Ool
t.
MOOD
"l '2
tv1 DO I
F\ () ~o ~ol'?:>
MOb1
f-----~_O ~___ ,--N.C. Roo/. ~oo2.
~oo4
ROo?:>
AolO
MDOt.( "2 H01Q 2 N. c.. 'RO()~ X
MO\!
'{,.
MO\l
~
t-'\Ol3
1----------~------
HD 10
N.D. RODS"
'R DO'S
1.
f10\1
"2
M 0\1. tv10\3
t ~ 0 \?.
~o~6
)(
'"
'Rool
,
.
N.c . ROOb '1.
~Ol1..
t01Lj
Moo3
~
MOlli --
1.
'Rots
'A
M01'l
"'X
MOl:>
Mo14
N.D.
ROl3
~
M0 1'2..
~
Ho~
~
Mo2.4
N.C. 'X
'Ro'~
'I..
Mo~'
'
..
'Rolb
f1 OL..\b 'R 0 II \1
D'S
2-
'ROlO --
~o51. ~o'2...\
MO~o
MU~o
"1. ?
Mo~1
'2
Mt)~~
N .c.. Ro \b
~()J.tb
Mo1..l MOILj
Mo2.o
'/.. MO~l N.D. 'R 0 IS"
Aolt!.l
M01Q ------ - ..-
N.o. 'R. 001
REMARKS
M02.1 N.c. ~ 01'2.
N.D. _'R oc3
~OO4
------
AO~4
X. MD04 X - MOlD
1------
f------------
Moo~
X
OF
~
MOOD
X
TO
N(;. :
N.c. . ~OOO
ROo2.
'Rooo
OF
'(.
~o~3
1.. No
Mo~4
1:
Mo~)
t
M034
Ron
N·C. 'RolO
X
M040
'I..
M041
X
Mo~l
N.D. 1\011 t:- Mo40
--
III-17
Tabel 12: QUARTER SQUARE VERMENIGVULDIGERS (VERVOLG). --
-
FROM
r---'R 0
'I
OF
TO
~
2.. I
"1
_ _ _ .0-
A o5"{
> REMARKS
MOLlI
Ao bO
M oq'Z.
'R 01. S'
I--
N.c, ROl1..
~01.L ,
,
FROM
~~.
'~
TO
OF
N.D
Rol~-
~
MOSI
"2
""'D52
'2
MoS"3
X
Ho43
'(
f-MQ~
f-------,-
X
l1Q~Q
~ oS~
..JY.Jl
_R._Dl~
Ro2.~
t
M04~
+1
+'1
f'1o~~
t:
M044
-I
-'(
MODO
t
MoSo
----
f - - - - - - - - - - - - - ----
1-------------
-
1---
+1
i-'{
.. .....
.
· ··
:
fl 060
N.C.
'R ol4
~o <.l.f
X
M 0$"")
X
1'1 oS'"~
X
MOS3
-
,
Mooe :
~
-'I
REMARKS
--
:
t4\os~
--1------ f----
1---------- - -,--------
o (,._ !
f-L
C
--
~---- -----~
--------
--
'?ll \ ct-ll
--
NG- .
f----
TS1
:Dr."
Mooo
TS1.
J) 1.\1
M00\ \
. -------------
._----
..
'
~-
\s1.
~I'i
Mo'Sl
Ts"1
1) 1\J
l1oS~
T~'J-
f----
T Sl
--
..
MOOD MOOD
Moo. Moo'
I
'-' --,_._----
.
-----.. -
--.~_.
TSl
f\~{lJ1Qfi..r-
\52.
MaS"
MoS3
-
1---- ----
-
------
-----
----
III-I8
Tabel 13: DUAL SQUARE VERMENIGVULDIGERS. 'I
FROM
AN ~
TO
- - - - - - - - - f-----
flo~2 ~O~b
FROM
• 'REMARKS
TO
OF
REMARKS
1> flT C MIN ~:
LO (',..
f--'----
OF
N.o , N.c.
~ 0 lO
~Olo
..,....
'Ro 10 ROID
+X +X
M01S" M025"
+'1.
MO:$
°
,
0,
N.D. 'Rolb
_Bo"'_~_
to1. 6
--
+1
~
••
+'1 +'1
MOl$"
+-'1
H Ol.5"
+'1
M03~
+-y
Mo~S-
-'I
MOOS""
ROlb
-"
M DOS1"\01S"'
+)(
MOD5
-'1
M01~
+)(.
MO~5
-'(
Mo~S
-'I
MDl1f
N.C.
-----
-/
---
-----
LOG-Ie
,
J)()o~LfH)\ ~.
1" 51.
:Uo:t) E
1>1
MooS- MDo'S MelS" MotS"
o:!> E
--
MOl'S L~to'2S
<.,
f---------.!.L------- f - - - - - . - - -
,
.
'Pff ~c.t1rN ~..
Mo~5
I
Me?>'
"
Mo 4';) MOLiS
T S'l.
1)sR MOoS-
--
1> S (\
M()I~-
1>SR
1"'015"
tbs R
Mo~5
)SR
~o'i5'
f----
--~_.-
APPENDIX IV.
Deze appendix bevat een listing van het HDP. De programmatekst zoals deze in de listing is opgenomen
~s
uiteraard een momentopname; het programma wordt voortdurend uitgebreid en aangepast aan eventuele gewijzigde omstandigheden.
S*lb.41.05 OK BXIH04 VALENTIJN M C,KSLA,IW BOERS R,KSLA,IW NEGGERS C A M,KSLA,IW CUSTODIAN KSLA,IW AFSTUDEER oNDERZoEK VERSION-A,71/APR. METASYMBoL,RXDSSIG7,UNRESTRICTED, VERSION-A,71/APR. SYMBOL,RXDSSIG7,UNRESTRICTED, VERSION-A,71/APR. FoRTRAN-H,RXDSSIG7,UNRESTRICTED, TESTING SYSTEMS, RANDOM NUMB ERS, LIST PROCESSING THE PROGRAM TESTS THE PERFORMANCE OF A HYBRID COMPUTER IT ANALYSES IN DETAIL THE ACCURACY AND THE LINEARITY OF THE COMPONENTS INVOLVED, IN ORDER TO ATTAIN AN OVERALL EVALUATION OF THE SYSTEM. THIS PROGRAM HAS CONNECTIONS WITH THE MRT PROGRAM. INPUTDATA REQUESTED BY TELETYPE
C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
AIH04000 BIH04001 BIH04002 BIH04003 BIH04004 BIH04005 CIH04006 DIH04007 DIH04008 DIH04009 EIH04010 E IH04011 EIH04012 FIH04013 FIH04014 FIH04015 FIH04016 FIH04017 FIH04018
THE OVERLAY STRUCTURE OF THIS PROGRAM IS AS FOLLOWS:
************** * SEG 101 * * * **************
********
* *
* **
************** ************** * *' * * * ******* SEG 1 ************* SEG 102 * * * * * * * * ************** * **************
* * * **
* * * *
* *
* * * * **
* **
* * * **
************** * * * ******* SEG 125 * * * ************** ************** * * ******* SEG 201 *
**
* **
* * **************
************** ************** ************** * * * * * * * * ROOT ************* SEG 2 ************* SEG 202 * * * * * * * * * * ************** * ************** * **************
* * * **<
* * * **
************** * * * ******* SEG 3 * * * * ************** *
* * * ******* SEG 225 * * * * * **************
**
**
*
************** * * * ******* SEG 4 * * * **************
***********~.-**
*
************** * * * ******* SEG 301 * * * * * **************
* * * * * *
**************
*
*
C
*******
SEG 305
*
* * **************
C
C C
C
THE LOADING SEQUENCE WITH THE CONTROLCARDS IS:
C
C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
!JOB BXIH04,ROB&KEES,E , IW,71S06 !ATTEND !STDLB IU,O) !AUOBT IFILE,GO),IFSIZE,O),(SAVE) !ALLOBT IFILE,Xl),IFORMAT,B),IFSIZE,1000),IRSIZE,30),ISAVE) !ALLOBT IFILE,X2),IFSIZE,100) !AUOBT IFILE,X3),IFSIZE,50) !AUOBT IFILE,X4),IFSIZE,50) !ALLOBT IFILE,X5),IFSIZE,50) !AUOBT IFILE,XS),IFORMAT,C),(FSIZE,750),ISAVE) IASSIGN IM:LO,BT,X8) !OLOAD IMAP,ALL),ILIB,USER,SYSTEM) :ROOT IOPLB,BI,EOD) :INCLUDE ISPOT,SPOTI,SHOD,SHODI,SMOD,RMOD,IMOD,CLOCK,NOCLOK); :ISIDC,SCALE,ANACON,SCOP,RSCOP,RCOP,ICON,RSEN,ISEN,SPIG,RPIGS); :ICPIG,RPIG,IPIG,SDAC,SDACI,RADC,RADCI,UPDT,SHINIT,SAMPLE); :IHOLD,SWITCH,ISSW,SREF,SREFI,RDVM,RDVMI,ADSTEP,SERVO); :IALLSEN,ADCSET,ADCRUN,DACSET,DACRUN,SETLIN,GETLIN,TIMER,SETCON); :IRAMP,RAMPI,VAMP,IAMP,RINT,RINTI,VINT,IINT,RMUL,RMULI,VMUL,IMUL); :IRTRU,RTRUI,VTRU,ITRU,RDFG,RDFGI,VDFG,IDFG,RREL,RRELI,VREL,IREL); :IRPOT,RPOTI,VPOT,IPOT,DELAY) ROOT I 16 MODUL ES MAIN PROGRAM BLOCK DATA SUBROUTINE SELECT SUBROUTINE MODIFYI*) SUBROUTINE DISPLAYI*) SUBROUTINE INPUT SUBROUTINE TESTI*) LOGICAL FUNCTION AVAILITYPE,CONS,ADDR,INP) SUBROUTINE UPDAIADD,TYPE,CONS,CODE) ENTRY PTDTIADD,TYPE,POT,*) SUBROUTINE MANAGEII) SUBROUTINE SCHRIM,N) INTEGER FUNCTION ODECIIN,I) INTEGER FUNCTION OCT II) SUBROUTINE PACK IIN,OUT,*) SUBROUTINE BCHECKIL,U,IN,*) INTEGER FUNCTION RANDII,J) !EOD :SEG ILINK,ll,IOPLB,BI,EOD) SEGMENT 1 I 6 MODULES SUBROUTINE XMRTI*,*) SUBROUTINE EXMRTIIROUT,I,*) SUBROUTINE COUTITYPE,CONSOL,ADDR,TEST,CODE) INTEGER FUNCTION ICNSIPANEL) LOGICAL FUNCTION CHPP ICS,PANEll SUBROUTINE GENICONS,TYPE,ADR,INP,INDEX) IEOD :SEG IlINK,101,ONTO,1l,IDPLB,BI,EOD) SEGMENT 101 I 3 MODULES ) SUBROUTINE MR 1 1*) SUBROUTINE CPOWERICONSOLE,*) SUBROUTINE TPOWERIADRES,CONSOLE,AFW,FLAG) !EOD :SEG ILINK,102,ONTO,1),IOPLB,BI,EOD) SEGMENT 102 . t 3 MODULES 1 SUBROUTINE MR 2 1*) SUBROUTINE CADDICON,*) SUBROUTINE TADDITYIN,ADIN,TYUT,ADUT,KONS,FLAG) !EOD :SEG ILINK,103,ONTO,1),IOPLB,BI,EOD) SEGMENT 103 I 3 MODULES ) SUBROUTINE MR 3 1*) SUBROUTINE CMODEICON,*) SUBROUTINE TMODEIMODEIN,CONSOLE,MODEOUT,FLAG) !EOD :SEG IlINK,104,ONTO,1l,IDPLB,BI,EOD) SEGMENT 104 I 3 MODULES ) SUBROUTINE MR 4 1*) SUBROUTINE CRFDVMICONSOLE,*) SUBROUTINE TREFIIN,CONSOLE,DEV,FLAG) !EOD :SEG IlINK,105,ONTO,1l,IDPLB,BI,EOD)
C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
SEGMENT 105 I SUBROUTINE SUBROUTINE SUBROUTINE SUBROUTINE
4 MODULES I MR 5 I * I CPREI*I TPGRIIN,FREQ,OUT,FLAGI TPGCIIN,FREQ,OUT,FLAGI
IEOD :SEG ILlNK,l06,ONTO,l I, IOPLB,BI ,EODI SEGMENT 106 I 2 MODULES I SUBROUTINE MR 61*1 SUBROUTINE CPTSI*I IEOD :SEG ILINK,107,ONTO,11,IOPLB,BI,EODI SEGMENT 107 I 5 MODULES I SUBROUTINE MR 7 1*1 SUBROUTINE CUPDICON,NUMB,*I SUBROUTINE CDACICON,NUMB,*I SUBROUTINE TUPDIAIN,AOUT,CON,FLAGI SUBROUTINE TDACIADRES,VALIN,AFW,CONSOLE,TRUNK,FLAGI IEOD :SEG ILINK,108,ONTO,11,IOPLB,BI,EODI SEGMENT 108 I 7 MODULES I SUBROUTINE MR 81*1 SUBROUTINE CSHCONICON,AMOUNT,*I SUBROUTINE TSHCONIADC,CNS,FLAGI SUBROUTINE CSHADCICON,AMOUNT,*I SUBROUTINE TSHADCIADC,MAXAFW,CNS,FLAGI SUBROUTINE CADCICON,AMOUNT,*I SUBROUTINE TADCIADC,MAXAFW,CNS,FLAGI IEOD :SEG ILINK,109,ONTO,11,IOPLB,BI,EODI SEGMENT 109 I 5 MODULES I SUBROUTINE MR 91*1 SUBROUTINE CCOSI*I SUBROUTINE CCORI*I SUBROUTINE TCOSILINE,FLAGI SUBROUTINE TCORILINE,fLAGI IEOD :SEG IL INK, 110 ,ONTO, 11, (OPLB,BI ,EODI SEGMENT 110 I 3 MODULES I SUBROUTINE MRI01*1 SUBROUTINE CRELIICON,AMOUNT,*I SUBROUTINE TRELIREL,ICON,EXPVAL,FLAGI !EOD :SEG ILlNK,111,ONTO,11, (OPLB,BI ,EODI SEGMENT III I 7 MODULES I SUBROUTINE MRlll*1 SUBROUTINE CSUMICON,*I SUBROUTINE TSUMIAMP,POT,CON,MAX,FLAGI SUBROUTINE CHIGHGICON,*I SUBROUTINE THIGHGIAMP,POT,CON,MAX,FLAGI SUBROUTINE CNETWBICON,*I SUBROUTINE TNETWBIAMP,POT,CON,MAX,FLAGI !EOD :SEG ILlNK,112,ONTO,lI, IOPLB,BI ,EODI SEGMENT 112 I 1 MODULE I SUBROUTINE MR121*1 IEOD :SEG ILlNK,l13,ONTO,1I, (OPLB,BI ,EODI SEGMENT 113 I 7 MODULES I SUBROUT I NE MR131*1 SUBROUT INE CIDCICIICON,AMOUNT,*I SUBROUT I NE TIDCICICNS,ADR,INl,IN2,FLAGI SUBRtlUTlN'E tCALCITSCALE,ICON,TIME,AMOUNT,*l' SUBROUTINE TCALCITIJD,INl,IN2,OUT11 SUBROUTINE CEQUIICON,AMOUNT,*I SUBROUT INE TEQUIEXP,RES,AFW,FLAGI !EOD :SEG ILlNK,114,ONTO,lI, 10PLB,BI ,EODI SEGMENT 114 I 7 MODULES I SUBROUTINE MR141*1 SUBROUTINE CSTARTIICON,AMOUNT,*I SUBROUTINE TSTARTICNS,INT,INl,IN2,FLAGI SUBROUTINE CREKENITSCALE,ICON,TIME,AMOUNT,*1 SUBROUTINE TREKENITIJD,INl,IN2,OUTI SUBROUTINE CVERGLIICON,AMOUNT,*I SUBROUTINE TVERGLIEXP,RES,AFW,FLAGI !EOD :SEG ILlNK,l15,ONTO,1I, 10PLB,BI ,EODI SEGMENT 115 I 3 MODULES I SUBROUTINE MR151*1
C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
SUBROUTINE CTRTR (ICON,AMOUNT,*I SUBROUTINE TTRTR (CONS,AMP,HODAD,MAX,FlAGI !EOD :SEG IllNK,l16,ONTO,1I, {OPlB,BI ,EODI SEGMENT 116 I 3 MODULES I SUBROUTINE MR161*1 SUBROUTINE CCOMPAIICON,AMOUNT,*I SUBROUTINE TCOMPAISENS,POT,CNS,FlAGI !EOD :SEG IllNK,l17,ONTO,1I, IOPlB,BI ,EODI SEGMENT 117 I 3 MODULES I SUBROUTINE MR171*1 SUBROUTINE CDA IICON,AMOUNT,*I SUBROUTINE TDA (CON,AMP,HODAD,MAX,FlAGI !EOD :SEG IllNK,118,ONTO,lI, {OPlB,BI ,EODI SEGMENT 118 I 3 MODULES I SUBROUTINE MR181*1 SUBROUTINE CLOG IICON,AMOUNT,*I SUBROUTINE TlOG ICNS,lOG,ZET,AFW,FlAGI !EOD :SEG IllNK,l19,ONTO,lI,(OPlB,BI,EODI SEGMENT 119 I 3 MODULES I SUBROUTINE MR191*1 SUBROUTINE CTRUNKIICON,AMOUNT,*1 SUBROUTINE TTRUNKITRUN,CNS,AFW,FlAGI !EOD :SEG IlINK,120,ONTO,II,IOPlB,BI,EODI SEGMENT 120 I 1 MODULE I SUBROUTINE MR201*1 !EOD :SEG IllNK,121 ,ONTO,lI, IOPlB,BI ,EODI SEGMENT 121 I 7 MODULES I SUBROUTINE MR21(*> SUBROUTINE CQSMIICON,AMOUNT,*1 SUBROUTINE TQSMIMUl,AMPl,HOD,CNS,MAX,FlAGI SUBROUTINE CQSDIICON,AMOUNT,*> SUBROUTINE TQSDIMUl,AMPl,HOD,CNS,MAX,FlAGI SUBROUTINE CQSSIICON,AMOUNT,*I SUBROUTINE TQSSIMUl,CNS,MAX,FlAGI !EOD :SEG IllNK,122 ,ONTO,l1 ,lOPlB,BI ,EODI SEGMENT 122 I 7 MODULES I SUBROUTINE MR221*1 SUBROUTINE CDSMIICON,AMOUNT~*I SUBROUTINE TDSMIMUl,HOD,CNS,MAX,FlAGI SUBROUTINE CDSSIICON,AMOUNT,*I SUBROUTINE TDSSIMUl,HOD,CNS,MAX,FlAGI SUBROUTINE CDSRIICON,AMOUNT,*I SUBROUTINE TDSRIMUl,HOD,CNS,MAX,FLAGI !EOD :SEG IllNK,123,ONTO,1I, {OPlB,SI ,EODI SEGMENT 123 I 1 MODULE I SUBROUTINE MR231*1 !EOD :SEG IllNK,124,ONTO,II, {OPlB,BI ,EODI SEGMENT 124 I 1 MODULE I SUBROUTINE MR241*1 !EOD :SEG IlINK,125,ONTO,II,IOPlB,BI,EOD> SEGMENT 125 I 1 MODULE I SUBROUTINE MR251*1 !EOD :SEG IlINK,21,IOPlB,BI,EODI SEGMENT 2 I 7 MODULES SUBROUTINE XSATI*,*I SUBROUTINE EXSATIIROUT,ISEG,*,*I SUBROUTINE COUTII,J,K,l,MI INTEGER FUNCTION ICNSIPANEll lOGICAL FUNCTION CHPPICS,PANEll SUBROUTINE ADGENICONS,TYPE,ADR,INP,N,*I SUBROUTINE INSATICONSOl,TYPE,N,OK,*1 !EOD :SEG IllNK,201,ONTO,21, {OPLB,BI ,EODI SEGMENT 201 I 3 MODULES I SUBROUT INE MR 1 1*1 SUBROUTINE CPOWERICONSOlE,*1 SUBROUTINE TPOWERIADRES,CONSOlE,AFW,FlAGI !EOD :SEG IllNK,202,ONTO,21, IOPlB,BI ,EODI
C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
SEGMENT 202 I 3 MODULES 1 SUBROUT INE MR 2 1*1 SUBROUTINE CADD ICON ,*1 SUBROUT INE TADDITYIN,ADIN,TYUT,ADUT,KONS,FLAGI !EOD :SEG ILINK,203,ONTO,21,IOPLB,BI,EODI SEGMENT 203 I 3 MODULES 1 SUBROUTINE MR 3 1*1 SUBROUTINE CMODEICON,*I SUBROUTINE TMODEIMODEIN,CONSOLE,MOOEOUT,FLAGI IEOD :SEG ILINK,204,ONTO,21,IOPLB,BI,EODI SEGMENT 204 I 3 MODULES 1 SUBROUTINE MR 4 1*1 SUBROUTINE CRFDVMICONSOLE,*I SUBROUTINE TREFIIN,CONSOLE,DEV,FLAGI IEOD :SEG ILINK,205,ONTO,21,IOPLB,BI,EODI SEGMENT 205 I 4 MODULES 1 SUBROUTINE MR 5 1*1 SUBROUTINE CPREI*I SUBROUTINE TPGRIIN,FREQ,OUT,FLAGI SUBROUTINE TPGCIIN,FREQ,OUT,FLAGI !EOD :SEG ILINK,296,ONTO,21,IOPLB,BI,EODI SEGMENT 206 I 2 MODULES 1 SUBROUTINE MR 61*1 SUBROUTINE CPTSI*I !EOD :SEG ILINK,201,ONTO,21,IOPLB,BI,EODI SEGMENT 201 I 5 MODULES 1 SUBROUTINE MR 1 1*1 SUBROUTINE CUPDICON,NUMB,*I SUBROUTINE CDACCCON,NUMB,*1 SUBROUTINE TUPDIAIN,AOUT,CON,FLAGI SUBROUTINE TDACIADRES,VALIN,AFW,CONSOLE,TRUNK,FLAGI !EOD :SEG ILlNK,208,ONTO,21, IOPLB,BI ,EODI SEGMENT 208 I 1 MODULES 1 SUBROUTINE MR 81*1 SUBROUTINE CSHCONICON,AMOUNT,*I SUBROUTINE TSHCONIADC,CNS,FLAGI SUBROUTINE CSHADCICON,AMOUNT,*I SUBROUTINE TSHADCIADC,MAXAFW,CNS,FLAGI SUBROUTINE CADCICON,AMOUNT,*I SUBROUTINE TADCIADC,MAXAFW,CNS,FLAGI !EOO :SEG ILINK,209,ONTO,21,IOPLB,BI,EODI SEGMENT 289 I 5 MODULES 1 SUBROUTINE MR 91*1 SUBROUTINE CCOSI*I SUBROUTINE CCORI*I SUBROUTINE TCOSILINE,FLAGI SUBROUTINE TCORILINE,FLAGI !EOD :SEG ILINK,210,ONTO,21,IOPLB,BI,EODI SEGMENT 210 I 3 MODULES 1 SUBROUTINE MRI01*1 SUBROUTINE CRELIICON,AMOUNT,*1 SUBROUTINE TRELIREL,ICON,EXPVAL,FLAGI !EOO :SEG lLINK,211,ONTO,21,IOPLB,BI,EODI SEGMENT 211' I 7 MODULES 1 SUBROUTINE MRlll*1 SUBROUTINE CSUMICON,*I SUBROUTINE TSUMIAMP,POT,CON,MAX,FLAGI SUBROUTINE CHIGHGICON,*I SUBROUTINE THIGHGIAMP,POT,CON,MAX,FLAGI SUBROUTINE CNETWBICON,*I SUBROUTINE TNETWBIAMP,POT,CON,MAX,FLAGI !EOD :SEG ILINK,212,ONTO,21,IOPLB,BI,EODI SEGMENT 212 I 1 MODULE 1 SUBROUTINE MR121*1 !EOD :SEG ILlNK,213,ONTO,21, IOPLB,BI ,EODI SEGMENT 213 I 1 MODULES ) SUBROUTINE MR131*1 SUBROUTINE CIDCICIICON,A~OUNT,*I SUBROUTINE TIDCICICNS,ADR,IN1,IN2,FLAGI
C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
SUBROUTINE SUBROUTINE SUBROUTINE SUBROUTINE
CCAlCITSCAlE,ICON,TIME,AMOUNT,*) TCAlCITIJD,INl,IN2,OUTl) CEQUIICON,AMOUNT,*) TEQUIEXP,RES,AFW,FlAG)
IEOD :SEG IlINK,214,ONTO,2),IOPlB,BI,EOD) SEGMENT 214 I 7 MODULES ) SUBROUTINE MRI41*) SUBROUTINE CSTARTIICON,AMOUNT,*) SUBROUTINE TSTARTICNS,INT,INl,IN2,FLAG) SUBROUTINE CREKENITSCAlE,ICON,TIME,AMOUNT,*) SUBROUTINE TREKENITIJD,INl,IN2,OUT) SUBROUTINE CVERGlIICON,AMOUNT,*) SUBROUTINE TVERGLIEXP,RES,AFW,FlAG) I EOD :SEG lLINK,215,ONTO,2), IOPlB,BI ,EOD) SEGMENT 215 I 3 MODULES) SUBROUTINE MRI51*) SUBROUTINE CTRTR IICON,AMOUNT,*) SUBROUTINE TTRTR ICONS,AMP,HODAD,MAX,FlAG) IEOD :SEG IlINK,216,ONTO,2),IOPlB,BI,EOD) SEGMENT 216 I 3 MODULES ) SUBROUTINE MRI61*) SUBROUTINE CCOMPAIICON,AMOUNT,*) SUBROUTINE TCOMPAISENS,POT,CNS,FlAG) IEOD :SEG IlINK,217,ONTO,2),IOPlB,BI,EOD) SEGMENT 217 ( 3 MODULES) SUBROUTINE MRI71*) SUBROUTINE CDA IICON,AMOUNT,*) SUBROUTINE TDA ICON,AMP,HODAD,MAX,FlAG) IEOD :SEG IlINK,21B,ONTO,2),IOPlB,BI,EOD) SEGMENT 218 I 3 MODULES ) SUBROUTINE MRIBI*) SUBROUTINE CLOG IICON,AMOUNT,*) SUBROUTINE TlOG ICNS,lOG,ZET,AFW,FlAG) IEOD :SEG IlINK,219,ONTO,2),IOPlB,BI,EOD) SEGMENT 219 I 3 MODULES ) SUBROUTINE MRI91*) SUBROUTINE CTRUNKIICON,AMOUNT,*) SUBROUT I NE TTRUNK ITRUN, CNS, AFW, FLAG) IEOD :SEG IlINK,22G,ONTO,2),IOPlB,BI,EOD) SEGMENT 220 I 1 MODULE ) SUBROUTINE MR201*) IEOD :SEG ILINK,221,ONTO,2),IOPlB,BI,EOD) SEGMENT 221 I 7 MODULES) SUBROUTINE MR211*) SUBROUTINE CQSMIICON,AMOUNT,*) SUBROUTINE TQSMIMUl,AMPl,HOD,CNS,MAX,FlAG) SUBROUTINE CQSDIICON,AMOUNT,*) SUBROUTINE TQSDIMUl,AMPl,HOD,CNS,MAX,FlAG) SUBROUTINE CQSSIICON,AMOUNT,*) SUBROUTINE TQSSIMUl,CNS,MAX,FlAG) IEOD :SEG lLINK,222,ONTO,2), (OPlB,BI ,EOD) SEGMENT 222 I 7 MODULES ) SUBROUTINE MR221*) SUBROUTINE CDSMIICoN,AMOUNT,*) SUBROUTINE TDSMIMUl,HOD,CNS,MAX,FlAG) SUBROUTINE CDSSIICON,AMOUNT,*) SUBROUTINE TDSSIMUl,HOD,CNS,MAX,FlAG) SUBROUTINE CDSRIICON,AMOUNT,*) SUBROUTINE TDSRIMUl,HOD,CNS,MAX,FlAG) IEOD :SEG IlINK,223,ONTO,2),IOPLB,BI,EOD) SEGMENT 223 I 1 MODULE ) SUBROUTINE MR231*) IEOD :SEG IlINK,224,ONTO,2),IOPlB,BI,EOD) SEGMENT 224 I 1 MODULE ) SUBROUTINE MR241*) IEOD :SEG lLINK,225,ONTO,2), IOPlB,BI ,EOD) SEGMENT 225 I 1 MODULE ) DUMMY IN SAT SUBROUTINE MR251*)
C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
60 C C C
50 C C C C
!EOO :SEG ILINK,301,ONTO,21, (OPLB,BI ,EODI SEGMENT 301 I MODULES I !EOD :SEG ILINK,302,ONTO,21, (OPLB,BI ,EODI SEGMENT 302 I MODULES I !EOD :SEG ILINK,303,ONTO,21,IOPLB,BI,EODI SEGMENT 303 I MODULES I !EOD :SEG {LINK,304,ONTO,21,IOPLB,BI,EODI SEGMENT 304 I MODULES I !EOD :SEG 1LINK ,305,ONTO,21, (OPLB ,BI ,EODI SEGMENT 305 1 3 MOOULES I SUBROUTINE SENSEI*I SUBROUTINE CSENI*I SUBROUTINE TSENILINE,FLAGI IEOD :SEG ILINK,31, (OPLB,BI ,EODI SEGMENT 3 1 1 MODULE SUBROUTINE XBRTI*,*I ! EOD :SEG ILINK,41,IOPLB,BI,EODI SEGMENT 4 1 1 MOOULE SUBROUTINE EXPLNI*I !EOD :ASSIGN IF:l06,DSA061 :ASSIGN IF:I07,KBA071 :ASSIGN IF:l09,BT,X81 :ASSIGN IF:IIO,BT,X91 :ASSIGN IF:lll,OI !ROV MODIFICATIONCARDS MIISM,TYI !FIN IMPLICIT INTEGERIA-ZI COMMON/SYSD/CONS,X,Y,MC,XB,X9,ITEMSI61,COUNT COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON SCRATCHI5001 IFIISM.NE.I051 GOTO 58 DATASETMODIFICATIONS ARE READ BY THE CARDREADER UNTIL ISM-LABEL IS MODIFIED CALL INPUT IF THE COMMAND IS NOT MODIFY IX.NE.51, THE COMMAND IS IGNORED IFIX.EQ.51 CALL MODIFY 160S1 GOTO 60 CONTINUE SELECT IS THE MAIN ROUTINE OF THE HOP, IT CONTROLS THE SELECTION OF THE TESTMODES CALL SELECT IF ANY TEMP. FILE IS USED, A MESSAGE IS PRINTED AND AN EOF IS WRITTEN IFIX8.EQ.01 GOTO 40 1=8
100 40
WRITEIOSM,lOOI I fORMATI' »WARNING: FILE X'dl,' IS USED'I END FILE 109 IFIX9.EQ.OI STOP 1=9
WRITEIOSM,lOOI END FILE 110 STOP END BLOCK DATA C C C C C C C C C C C C C
***************************************************************** ********************
INITIAL DATA SECTION
*******************
***************************************************************** COMMON/COMP/AMP1,AMP2,MULT1,MULT2,FUNC,POT1,POT2,POT3,REL,DAC,ADC &,TH THE LABELED COMMON AREAS HAVE THE FOLLOWING PURPOSES COMP CONTAINS THE INFORMATION CONCERNING THE COMPONENTS IN THE CONSOLS IN CODED FORM 1 NINE DIGIT DECIMAL WORD I. THE SEQUENCE IN CaMP IS THE SAME AS THE SEQUENCE OF THE ADVANCE KEY ON THE ~lOG KEV&OAao.
C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
THE CODE OF THE WORDS IN THE DATASET IS AS FOLLOWS: - THE MOST SIGNIFICANT DIGIT IS THE CONSOL INDICATOR:
o THE COMPONENT IS NOT AVAILABLE 1 THE COMPONENT IS AVAILABLE ON CON SOL 1 2 THE COMPONENT IS AVAILABLE ON CONSOL 2 3 THE COMPONENT IS AVAILABLE ON BOTH CONSDLS - THE NEXT THREE DIGITS FORM THE DECIMAL ADDRESS OF THE COMPONENT INVOLVED I OUTPUT ADDRESS) - THE NEXT TWO DIGITS FORM THE TYPE CODE OF THE COMPONENTS: 10 11 12 13 14 20 30 31 32 33 40 50 51 52 60 70 80 81 90
AMPLIFIER GENERAL INOT USED IN DATASETl INTEGRATOR/AMPLIFIER (COMBO) AMPLIFIER WITH TRACK/HOLD NETWORK AMPLIFIER WITH DA/LIMITER NETWORK AMPLIFIER WITH TRACK/TRACK NETWORK TRUNK INOT USED IN DATASETI MULTIPLIER QUARTER SQUARE MULTIPLIER DUAL SQUARE MULTIPLIER EXTRA OUTPUTIQ.S.l MULTIPLIER EXTRA OUTPUT(D.S.I FUNCTION GENERATOR SERVO POTENTIOMETER HODAD POWER SUPPLY INOT USED IN DATASETI RELAY DAC ADC ADC WITH SAMPLE AND HOLD OPTION AMPLIRIERS WITH TRACH/HOLD NETWORK (FOR T/H TESTI
IT IS POSSIBLE TO USE ONLY THE MOST SIGNIFICANT DIGIT OF THE TYPE CODE, IF SO ALL COMPONENTS WITH THIS VERY MOST SIGNIFICANT TYPE DIGIT ARE INDICATED. E.G. THE CODE 1 INDICATES AMPLIFIERS OF ANY TYPE. - THE LAST THREE DIGITS OF THE CODEWORD REFER TO THE RELATED INPUT SOURCE ADDRESS ( DECIMAL I. E.G. CODEWORD 302511003 I 3-025-11-003 ) MEANS: 11 025 3 003
INTEGRATOR/AMPLIFIER DECIMAL ADDRESS 025 AVAILABLE ON BOTH CONSOLS INPUT SOURCE IS HODAD WITH DECIMAL ADDRESS 003
INTEGER AMP1(60)/ &300012000,300111000,300213000,300311000,300414000,300511000, &300612000,300711001,300813001,300911001,301014001,301111001, &301212001,301311001,301413002,301511002,301614002,301711002, &301812002,301911002,302012002,302111003,302212003,302311003, &302413003,302511003,302614003,302711003,302812004,202911004, &303013004,303111004,303214004,303311004,303412004,303511005, &303613005,303711005,303814005,303911005,304012005,304111005, &304213006,304311006,304414006,304511006,304612006,304711006, &304813006,304911007,305014007,305111007,305212007,305311007, &305413007,305511007,305614008,305711008,305813008,305911008/ INTEGER AMP2(60)/ &306013008,306111008,306212008,306311009,306413009,306511009, &306614009,306711009,306812009,306911009,307013010,307111010, &307214010,007311010,307412010,007511000,307613010,007711000, &307814010,007911000,008012000,008111000,008213000,008311000, &208414011,008511000,008612000,008711000,008813000,008911000, &309014011,009111000,209212000,009311000,009413000,009511000, &209614011,009711000,209814011,009911000,010014000,010111000, &010212000,010311000,010413000,010511000,010614000,010711000, &010812000,010911000,011013000,011111000,011214000,011311000, &011412000,011511000,011613000,011711000,011814000,011911000/ INTEGER MULT1(60)/ &300030002,300130002,300230002,300330004,300430004,300531008, &300830004,300930008,301030008,301130008,301230010,301331003, &301630010,301730010,301830024,301930024,302030024,302131003, &202430036,202530036,202630036,202730038,202830038,202931003, &303230042,303330042,303430042,303530044,203630044,203731008, &204030044,204130048,204230048,204330048,004430000,004531000, &004830000,004930000,005030000,005130000,005230000,005331000, &005630000,005730000,005830000,005930000,006030000,006131000, &306432000,306532000,306632000,306732000,306832000,306933008, &307232000,307332001,307432001,307532001,307632001,307733004/ INTEGER MULT21601/ &308032001,308132001,308232003,308332003,308432003,308533004, &208832005,208932005,209032005,209132005,209232005,209333004,
&309632006,309732006,309832006,309932006,210032006,210133008, &210432006,210532006,210632006,210732006,010832000,010933000, &011232000,011332000,011432000,011532000,011632000,011733000, &012032000,012132000,012232000,012332000,012432000,012533000, &012830000,012930000,013030000,013130000,013230000,013331000, &013630000,013730000,013830000,013930000,014030000,014131000, &019232000,019332000,019432000,019532000,019632000,019733000, &020032000,020132000,020232000,020332000,020432000,020533000/ INTEGER FUNCI121/ &300040000,300140001,300240002,300340003,300440004,300540005, &200640006,200740007,200840008,200940009,001040010,001140011/ INTEGER POT11661/ &300051000,300151000,300251000,300351000,300451000,300551000, &300651000,300751000,300851000,300951000,301051000,301151000, &201251000,201351000,201451000,201551000,201651000,201751000, &201851000,201951000,002051000,002151000,002251000,002351000, &302450000,302550000,302650000,302750000,302850000,302950000, &303050000,303150000,303250000,303350000,303450000,303550000, &303650000,303750000,303850000,303950000,304050000,304150000, &304250000,304350000,304450000,304550000,304650000,304750000, &304850000,304950000,305050000,305150000,305250000,305350000, &305450000,305550000,305650000,305750000,305850000,305950000, &306050000,306150000,306250000,306350000,306450000,306550000/ INTEGER POT21661/ &306650000,306750000,306850000,306950000,307050000,307150000, &307250000,307350000,307450000,307550000,307650000,307750000, &307850000,307950000,308050000,308150000,308250000,308350000, &308450000,308550000,308650000,308750000,308850000,308950000, &309050000,309150000,309250000,309350000,309450000,309550000, &309650000,309750000,309850000,309950000,310050000,310150000, &310250000,310350000,310450000,310550000,310650000,310750000, &310850000,310950000,311050000,311150000,211250000,211350000, &211450000,211550000,211650000,211750000,211850000,211950000, &212050000,212150000,212250000,212350000,212450000,212550000, &212650000,212750000,212950000,213150000,213350000,213550000/ INTEGER POT31601/ &213750000,213950000,214150000,214350000,214550000,214750000, &214950000,215150000,215350000,215550000,215750000,215950000, &216150000,216350000,216550000,216750000,216950000,217150000, &217350000,217550000,217750000,217950000,218150000,218350000, &218550000,218750000,218950000,219150000,019350000,019550000, &019750000,019950000,020150000,020350000,020550000,020750000, &020950000,021150000,021350000,021550000,021750000,021950000, &022150000,022350000,022550000,022750000,022950000,023150000, &023350000,023550000,023750000,023950000,024150000,024350000, &024550000,024750000,024950000,025150000,025350000,025550000/ INTEGER REL1321/ &300060050,300160050,300260050,300360050,300460050,300560050, &300660050,300760050,300860909,300960050,301060050,301160050, &301260050,301360050,301460050,301560050,301660100,301760100, &301860100,301960100,302060100,302160100,302260050,302360050, &302460050,302560050,302660100,302760100,302860100,302960100, &303060100,303160100/ INTEGER DAC1641/ &125670000,125770001,125870002,125970003,126070004,126170005, &126270006,126370007,126470008,126570009,126670010,126770011, &126870012,126970013,127070014,127170015,127270016,127370017, &127470018,127570019,127670020,127770021,127870022,127970023, &028070024,028170025,028270026,028370027,028470028,028570029, &028670030,028770031,225670032,225770033,225870034,225970035, &226070036,226170037,226270038,226370039,026470040,026570041, &026670042,026770043,026870044,026970045,027070046,027170047, &027270048,027370049,027470050,027570051,027670052,027770053, &027870054,027970055,028070056,028170057,028270058,028370059, &028470060,028570061,028670062,028770063/ INTEGER ADC1641/ &100081320,100181321,100281322,100381323,100481324,100581325, &100681326,100781327,100880328,100980329,101080330,101180331, &10l280332,101380333,101480334,101580335,001680336,001780337, &00188Q338,001980339,002080340,002180341,002280342,002380343, &002480344,002580345,002680346,002780347,002880348,002980349, &003080350,003180351,203281320,203381321,203481322,203581323, &203681324,203781325,203881326,203981327,204080328,204180329, &204280330,204380331,204480332,204580333,204680334,204780335, &004880336,004980337,005080338,005180339,005280340,005380341, &005480342,005580343,005680344,005780345,005880346,005980347, &006080348,006180349,006280350,006380351/ INTEGER TH1201/ &300090001,300690005,301290011,301890017,3020'0021,302290023, &302890027,303490033,304090041,304690045,305290049,306290051,
&306S90053,307490055,00S090000,00S690000,009290000,010290000, &010SQOOOO,011490000/ C
COMMON/DEVNR/OSM,ISM,OLM,OCM C
C C
DEVNR CONTAINS THE LOGICAL UNIT LABELS WITH THE FOLLOWING DEFAULT ASSIGNMENTS: INTEGER OSM/I0S/ INTEGER OLM/lOS/ INTEGER ISM/I05/ INTEGER OCM/ili/
C
COMMON/SYSO/CONS,X,Y,MC,XS,X9,ITEMS(6) ,COUNT C
C C
C C C C C C C C C C C C
SYSD CONTAINS VARIOUS SYSTEM PARAMETERS: CONS = CONSOL OPTION; 1,2 OR 31BOTH) X = ASSOCIATED INTEGER VARIABLE OF LAST READ CHARACTERSTRING Y = THE NUMBER OF THE LAST LOAOED OVERLAY SEGMENT MC = NUMBER OF DATAMODIFICATIONS IN CURRENT RUN XS = NUMBER OF LOGICAL UNIT ASSIGNMENTS TO FILE XS IN CURRENT RUN - X9 = NUMBER OF LOGICAL UNIT ASSIGNMENTS TO FILE X9 IN CURRENT RUN - ITEMS CONTAINS LISTITEMS RECEIVED BY INPUT - COUNT = THE NUMBER OF SCANNED LISTITEMS. IF MORE THAN 6 LISTITEMS ARE ENCOUNTERED COUNT BECOMES THE VALUE 7. THE DEFAULT ASSIGNMENTS ARE AS FOLLOWS: -
C
INTEGER CONS/3/ INTEGER Y/O/,MC/O/ INTEGER XS/I09/,X9/110/ C
COMMON/STRING/RARRAY,IARRAY C
C C C C
STRING CONTAINS THE OPERATOR COMMANDS STORED IN LITERAL FORMAT IN RARRAY FOR REFERENCE BY THE SUBROUTINE INPUT. IARRAY CONTAINS THE INTEGER VALUES ASSOCIATED WITH THE COMMANDS STORED IN RARRAY. REAL*8 RARRAY(100) C /'CONTINUE','GO ',' ','STOP ','END 1,'EXIT ','RETURN ','MODIFY ','MRT ','SAT ','STANOALO' 2,'BRT ','MANUAL ','INSTRUCT','MRT01 ','MRT02 ','MRT03 ' 3,'MRT04 ','MRT05 ','MRT06 ','MRT07 ','MRT08 ','MRT09 4,'MRTI0 ','MRTII ','MRT12 ','MRT13 ','MRT14 ','MRT15 5,'MRT16 ','MRT17 ','MRT18 ','MRT19 ','MRT20 ','MRT21 6,'MRT22 ','MRT23 ','MRT24 ','MRT25 ','MRT26 ','MRT27 7,'MRT28 ','MRT29 ','MRTI ','MRT2 ','MRT3 ','MRT4 8,'MRT5 ','MRT6 ','MRT7 ','MRT8 ','MRT9 ','POTTEST' 9,'POT ','ADC ','ADCTE:ST ','OAC ','DACTEST ','AMP A,'AMPTEST ','YES ','Y ','JA ','J ','NO B,'NEE ','N ','EXPLAIN ','14 ','0 ','DISPLAY' C,'R ','RANDOM ','SEQ ','SEQUENTI','BYINPUT ','INPUT D,'C ','E ','DUMPSIG5','DUMPSIG7','IGNORE ','OELETE E,'SENSELIN','SL ','AJAX ','FEYENOOR',13*0.ODO/ INTEGER IARRAY(100) C /1,1,1,2,2,3,4,5,11.12,12,13,13,14,21,22,23,24,25,26, 127,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48, 2 49,21,22,23,24, 8 25,26,27,28,29,101, 9 101,102,102,103,103,104, A 104,998,998,998,998,999, B999,999,14,5,15,15, C 150,150,151,151,152,152, o 1,14,901,902,903,904, E 105,105,2000,2001,13*0/
C
COMMON/TOLERNCE/TOLI C
C C
TOLERNCE CONTAINS THE APPLIED TOLERANCES FOR VARIOUS COMPONENTS. THE DEFAULT ASSIGNMENTS ARE AS FOLLOWS:
C
INTEGER TOLl (40)/2,5,10,20,5*2,2*10,2,2*10,3*5,100,4*10,8*2,100, A9*21 C
C C
COMMON/OPLB/DEV,CMP,LABEL OPLB CONTAINS LITERAL STRINGS FOR REFERENCE AND PRINTING PURPOSES. THE DEFAULT ASSIGNMENTS ARE AS FOLLOWS:
C
INTEGER DEVlll)/'TY
','TY
','PR
','PP
','CR
,,'OS
','KB
"
l'TY ','X8 ','X9 ','NO ' I INTEGER CMPI131/'CONS','TOL '.'AMP ','HOD ','POT ','MULT','FUNC', &'REL ','ADC '.'DAC '.'IN ','OUT ','SUBS'I INTEGER LABELl41/'OSM ','ISM '.'OLM ','OCM 'I C
C C
COMMON/ACTUAL/CNS ACTUAL CONTAINS THE ACTUAL CONSOL UNDER TEST INDICATOR CNS: INTEGER CNS/OI
C
C C C
CNS 0 NO CONSOL ACTUALLY TESTED CNS = 1 CONSOL 1 UNDER TEST CNS = 2 CONSOL 2 UNDER TEST
C
C
COMMONI FL OWl FL OW INITIALISATION OF TESTSEQUENCE IN MRT
C
INTEGER FLOW/OI C
END C
C 100 C 101 C C C C 20 C 30 C C C 50 C
C 10 102 C 40 103
SUBROUTINE SELECT IMPLICIT INTEGERIA-ZI COMMON/SYSD/CONS.X,Y,MC,X8,X9,ITEMSI61.COUNT COMMON/DEVNR/OSM,ISM,OLM,OCM PRINT INITIAL HEADING WRITE I OSH, 100 I FORMATI' »HYBRID DIAGNOSTIC PROGRAM LOADED' ,I, I' »MODES OF OPERATION:',I, 2' »MRT,SAT,BRT,INSTRUCT,END'I ASK FOR COMMAND WRITEIOSM,1011 FORMATI' »MODE?'I START CLOCK TO INITIATE RANDOM GENERATOR CALL SPIGIO,3,2,11 READ COMMAND, ASSIGN ASSOCIATED INTEGER TO X CALL INPUT INITIATE RANDOM GENERATOR CALL INIT GOTO 30 ASK FOR COMMAND WRITEIOSM,1011 READ COMMAND, ASSIGN ASSOCIATED INTEGER TO X CALL INPUT CONT I NUE CHECK IF A SEGMENT IS NEEDED, IF NOT GOTO 50 CALL BCHECKl11,14,X,50SI COMPUTE SEGMENT NUMBER I=X-10 LOAD SEGMENT IF NECESSARY CAll MANAGE I II CONTINUE THE SELECTED ROUTINE IS CALLED, THE RETURN IS TO LABEL 10 OR 20 IFIX.EO.111 CALL XMRTI10S,20SI IFIX.EO.121 CALL XSATI10S,20SI IFIX.EQ.131 CALL XBRTI10S,20SI IFIX.EQ~141 CALL EXPLNl20S1 IFIX.EQ.151 CALL DISPLAY I 20S1 IFIX.EO.51 CALL MODIFYl20S1 IFIX.EQ.21 GOTO 40 WRONG COMMAND, PRINT ERROR MESSAGE WRITEIOSM,1021 FORMATf' »ILLEGA~ ENTRyl,I,' »STATE MODE:1,1, I' »MRT,SAT,BRT,INSTRUCT,END'I GOTO 20 PRINT END MESSAGE, RETURN TO MAIN PROGRAM FOR TEMINATION WRITEIOSM,1031 FORMATI' »END DIAGNOSTIC PROGRAM'I RETURN END SUBROUTINE MODIFYI*I IMPLICIT INTEGERIA-ZI LOGICAL AVAIL DIMENSION IOLBI4,111 ,STARTI51 ,STOPI51 ,INCRI51 COMMON/SYSD/CONS,X,Y,MC,X8,X9,ITEMS(61,COUNT COMMON/DEVNR/MSGLl41 COMMON/TOLERNCE/TOLl401 COMMON/OPLB/LBLI111,STRI171 COMMON/ACTUAL/CNS COMMON/COMP/AI6241
C C C C C C 30 C 35 100 C 40 101 C 50 C C C C C C C C C C 70 C C 71 C C C C C C 72 102 81 C 82 C C C 105 C
EQUIVALENCEIMSGLll1,OSMl DATA PARNTHI'I '/,COMMA/', 'I DATA IOLB/l0S,101,2*10S,5*0,103,4*0,2*104,0,105,2*0,106,0,2*106, &0,107,S*0,109,4*0,110,2*0,2*111/ DATA STARTI 1,126,16S,222,2411 DATA STOP/120,162,216,240,2521 DATA INCRI 1, 6, 1, 6, II 'ERRNO' IS THE LISTERROR LOCATION MARKER ERRNO=O 'COUNT' STORES THE RECEIVED NUMBER OF LIST ITEMS CHECK IF 'COUNT' IS IN THE PERMISSIBLE RANGE, IF NOT GOTO 35 CALL BCHECKI2,6,COUNT,35S1 ERRNO=l THE LISTITEMS FOR 'MODIFY' ARE STORED IN ARRAY 'ITEMS' 'STR' CONTAINS THE AS FIRST LISTITEMS PERMISSABLE STRINGS DO 30 1=1,17 ANALYSE FIRST LISTITEM, IF CORRECT ITEM FOUND, GOTO 50 IFIITEMSll1.EQ.STRIIll GOTO 50 CONTINUE WRITE ERROR MESSAGE WRITEIOSM,1001 ERRNO FORMAT I ' »ERROR IN ITEM ',Ill RETURNI MODIFICATION SUCCESSFULL, WRITE REPORT WRITEIOSM,1011ITEMSll1,ICOMMA,ITEMSIJl,J=Z,COUNTl,PARNTH FORMATI' »MODIFY 1',6IA4,Al11 INCREMENT MODIFICATION COUNTER MC=MC+l RETURNI CONTINUE LEGAL FIRST LISTITEM ENCOUNTERED 'I' STORES THE WITH THE FIRST LISTITEM ASSOCIATED INTEGER VALUE ERRNO=2 FOR 'I' LESS THAN 11 THE SECOND LISTITEM MUST BE CONVERTED TO INTEGER, LABEL EXIT TO 35 IN CASE OF ERROR. IFII.LT.ll1 CALL PACKIITEMSI21,RES2,35S1 SELECT THE PROPER LABEL FOR THE VALUES OF 'I' GOTOI82,83,84,81,Sl,85,86,Sl,Sl,Sl,81,81,S71I FOR '1'= 14 THRU 17 WE ARRIVE HERE 1=1-13 'I' IS NOW THE INDEX FOR THE LOGICAL UNIT LABELS OSM,ISM,OLM,OCM THE SECOND LISTITEM IS ANALISED, THE PERIPHERAL NAMES ARE STORED IN ARRAY 'LBL' DO 70 J=l,ll IF A PERIPHERAL IS RECOGNISED, GOTO 71 IFIITEMSI21.EQ.LBLIJll GOTO 71 CONTINUE LISTITEM TWO IS NOT IDENTIFIED GOTO 35 IOLB STORES THE VALUES OF THE 1/0 LABEL ASSIGNMENTS IH=IOLBII,Jl CHECK IF IT IS ALLOWED TO DO THE ASSIGNMENT IFIIH.LT.I001 GOTO 72 UPDATE TEMP. FILE INDICATOR IF NECESSARY IFIIH.EQ.I091 X8 = X8 +1 IFIIH.EQ.II01 X9 = X, + 1 UPDATE THE SPECIFIED 1/0 LABEL 'MSGL' STORES THE VALUES OF THE 1/0 LABELS MSGLIIl=IH SET 'COUNT' FOR PROPER REPORTING COUNT = 2 GOTO 40 ASSIGNMENT NOT ALLOWED WRITEIOSM,10Z1 FORMATI' »UNABLE TO DO ASSIGN'1 RETURNI CONTINUE ERROREXIT FOR UNUSED ENTRY'S ERRNO=l GOTO 35 CONTINUE UPDATING CONSOLE OPTION, CHECK IF RES2 WITHIN PERMISSABLE LIMITS CALL BCHECKll,3,RES2,35S1 CHECK IF THERE IS NO CONFLICT BETWEEN OPTION AND CONSOLE ACTUAL UNDER TEST, IF THERE IS GIVE WARNING IFIRESZ*CNS.EQ.21 WRITEIOSM,1051 FORMATI' »WARNING, CONFLICT BETWEEN ACTUAL CONSOL AND CONSOLE', &' OPTION'/' »EFFECTUATION AT THE END OF CURRENT TEST'1 UPDATE CONSOLE OPTION CONS=RESZ
83 C C C C C C 84 85 86 90 C C C C C
C C C 60 C C 81 C C C
C C
C C C C C 95 C
GOTO 40 CONTINUE UPDATING OF TOLERANCE ARRAY 'TOL' 'RES2' CONTAINS THE ARRAY INDEX; CHECK ARRAYBOUNDS CALL BCHECKll,40,RES2,35S1 LISTITEM THREE CONTAINS THE DESIRED TOLERANCE VALUE IN ALFAMERIC FORMAT; IN CASE OF CONVERSION ERROR, GOTO 35 ERRNO=3 CALL PACKlITEMSI31,RES3,35S1 UPDATE THE INDICATED TOLERANCE TOLIRES21=RES3 SET 'COUNT' FOR PROPER REPORTING COUNT = 3 GOTO 40 TYPE = 1 GOTO 90 TYPE = 3 GOTO 90 TYPE = 4 CONTINUE UPDATING OF POT INPUTADDRESS IN DATASET CONVERT TO DECIMAL NUMBER RES2=ODEClRES2,IHl IF ERRORFLAG IS SET, GOTO 35 IFlIH.EQ.21 GOTO 35 CHECK IF LISTITEM THREE IS 'POT' OR 'HOD' ERRNO = 3 IFlITEMSI31.NE.STRI51.AND.ITEMSI31.NE.STRI411 GOTO 35 CONVERT LISTITEM FOUR TO OCTAL INTEGER ERRNO=4 CALL PACKlITEMSI41,RES4,35S1 RES4=ODEClRES4,IHl IF ERRORFLAG IS SET, GOTO 35 IFIIH.EQ.21 GOTD 35 CHECK IF NO POT AVAILABLE FOR THE SELECTED COMPONENT DO 60 IH=I,2 IF ASSIGNMENT NOT ALLOWED GOTO 12 IFIAVAILITYPE,IH,RES2,JI.AND •• NOT.AVAILI5,IH,RES4,JII GOTO 12 CONTINUE UPDATE SELECTED POT CALL PTDTlRES2,TYPE,RES4,12S1 SET 'COUNT' FOR PROPER REPORTING COUNT = 4 GOTO 40 CONTINUE SUBSTITUTION OF A POT IN THE DATASET CHECK LISTITEM TWO IS 'POT' OR 'HOD' IFIITEMSI21.NE.STRI51.AND.ITEMSI21.NE.STRI411 GOTO 35 LISTITEM THREE MUST BE AN OCTAL POTADDRESS, CONVERT TO DECIMAL. ERRNO=3 CALL PACKlITEMSI31,RES3,35S1 RES3= ODEClRES3,IHl IF ERROR FLAG IS SET, GOTO 35 IFlIH.EQ.21 GOTO 35 CHECK IF LISTITEM FOUR IS OCTAL POTADDRESS ERRNO = 4 CALL PACKlITEMSI41,RES4,35S1 RES4=ODEClRES4,IHl IF ERRORFLAG IS SET, GOTO 35 IFIIH.EQ.21 GOTO 35 CHECK IF POT EXITS IN BOTH CONSOLS IFl.NOT.lAVAILI5,I,RES4,JI.AND.AVAILI5,2,RES4,JIII GOTO 12 UPDATE-DATASET DO 95 K=I,5 DO 95 I=STARTlKl,STOPlKl,INCRlKl COMPUTE POT INPUTADDRESS IH=Alll-1000*IAIII/10001 IF IT IS THE RIGHT POT, CHANGE ITS ADDRESS IFIIH.EQ.RES31 Alll=1000*IAlII/10001 + RES4 CONTINUE SET 'COUNT' FOR PROPER REPORTING COUNT = 4 GOTO 40 END SUBROUTINE DISPLAYl*1 IMPLICIT INTEGERlA-Zl LOGICAL AVAIL DIMENSION LABELI41,CMPI131,DEVlll1 COMMON/OPLB/DEV,CMP,LABEL COMMON/SYSD/CONS,X,Y,MC,X8,X9,ITEMSI61,COUNT
C C C 100
101 C
102 10 C 20 103 C C 30 C C C C C 40 C 104 C 50 C
COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON/COMP/A(6241 COMMON/TOLERNCE/T(401 DATA CP/lCOMpl1 ICOUNTI STORES THE NUMBER OF LISTITEMS RECEIVED BY DISPLAY THE LISTITEMS ARE STORED IN IITEMSI IF(COUNT.GE.ll GOTO 30 NO LISTITEMS, A STANDARD MESSAGE IS GENERATED WRITE(OSM,lOOI CONS,CNS,y,MC FORMAT (II *** HOP STATUS DISPLAY ***11/ 1 CONSOLE OPTION: Ill, &1 NOW IN CONSOL 1,11,/' SEGMENT 113,1 IN CORE'/I '13,1 DATA MODIFI &CATIONS IN THIS RUN'IIT8,1 1/0 LABELS :1/ 1 OSM ISM OLM OCM'/I WRITE(OSM,lOll DEV(OSM-IOOl,DEV(ISM-lOOI,DEV(OLM-lOOI,DEV(OCM-lOOI FORMAT(lX,4(A4,2Xl,/l IF ANY TEMP. FILES ARE USED, THIS IS MENTIONED IN THIS MESSAGE IF(X8.EO.Ol GOTOIO IH=8 WRITE(OSM,1021IH FORMATII TEMP. FILE X',11,' IS USED'I IFIX9.EQ.Ol GOTO 20 IH=9 WRITEIOSM,1021IH PRINT THE FINAL ***** WRITEIOSM,1031 FORMATI' *****',1/1 RETURN 1 ANY ERROR CAUSES THE FINAL ***** OF THE STANDARD MESSAGE TO BE PRINTED IFICOUNT.NE.21 GOTO 20 A NUMERIC STRING IS ASSUMED IN 'ITEMS(21 1 • IT IS CONVERTED TO INTEGER AND STORED IN 'JI. IN CASE OF AN ERROR GOTO 20 CALL PACK(ITEMS(21,J,20S1 THE FIRST LISTITEM IS INTERPRETED IFIITEMSI11.EO.CMP(211 GOTO 40 IFIITEMS(ll.EO.CPI GOTO 50 THE FIRST LISTITEM IS NOT RECOGNISED, ERROR GOTO 20 CHECK ARRAYBOUNDS, IN CASE OF AN ERROR GOTO 20 CALL BCHECKll,40,J,20S1 DISPLAY THE JITH PLACE OF THE TOLERANCE DATASET WRITEIOSM,1041 T(JI FORMAT I' 'I91 RETURN 1 CHECK ARRAYBOUNDS, IN CASE OF AN ERROR GOT a 20 CALL BCHECK(I,624,J,2QSI DISPLAY THE JITH PLACE OF THE COMPONENT DATASET WRITEIOSM,1041 A(JI RETURNI END SUBROUTINE INPUT
C C
C C C C C C C C C
INPUT READS A CHARACTERSTRING OF 80 BYTES THE EXPECTED STRING IS : COMMANDILISTITEM 1,LISTITEM 2,--------,LISTITEM Nl THE FIRST 8 NON-BLANK CHARACTERS OF THE COMMAND PART ARE STORED IN REALV. THE FIRST 4 NON-BLANK CHARACTERS OF A LIST ITEM ARE STORED IN AN LOCATION OF THE ARRAY ITEMS. A MAXIMUM OF 6 LISTITEMS CAN BE STORED. COUNT IS SET AT THE NUMBER OF STORED LISTITEMS. IF MORE THAN 6 LISTITEMS ARE ENCOUNTERED THE FIRST 6 LIST ITEMS ARE STORED IN ITEMS AND COUNT IS SET TO THE VALUE 7 •
C
10 101 C S S C S20
IMPLICIT INTEGERIA-ZI DIMENSION RECI201,ITEMSI61 REAL*8 BLANKS/' 'I,REALV,RARRAY(lOOI DIMENSION IARRAY(lOOI COMMON/STRING/RARRAY,IARRAY COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/SYSD/CONS,X,Y,MC,TFl,TF2,ITEMS.COUNT DATA BLANK/' II READIISM,lOll REC IFIISM.EO.I07.AND.OSM.EO.I061 WRITE(OSM,lOll REC FORMATl20A41 REALV=BLANKS SCANNING OF THE COMMAND PART LI,4 0 REGISTER 4 COUNTS THE BYTES STORED IN REALV LI,3 0 REGISTER 3 POINTS TO THE NEXT BYTE IN REC THAT IS TO BE SCANNED LB,10 REC,3 LOADS THE NEXT BYTE OF REC IN REG 10
S S S S S S S25 S S S S30 S S S40 C C C
CI,10 b4 COMPARES WITH A BLANK BE 30S CI,10 77 COMPARES WITH A BNE 25S AI,3 1 UPDATE POINTER TO NEXT BYTE B 40S CI,4 7 CHECK IF REALV ALREADY FILLED BG 30S STB,10 REALV,4 AI,4 1 UPDATE BYTECOUNTER OF REALV AI,3 1 UPDATE REC POINTER CI,3 BO BL 20S STW,3 HULP SAVE REC POINTER INTERPRETATION OF THE COMMAND PART THE COMMAND IS COMPARED WITH THE STRINGS IN RARRAY IF THE COMMAND IS LEGAL, ITS PLACE IN RARRAY IS INDICATED BY I DO 50 1=1,100 IFIREALV.EQ.RARRAYIIII GOTO bO 50 CONTINUE C THE COMMAND IS NOT RECOGNISED WRITEIOSM,1001 REALV 100 FORMATI' »',A8,' ? ' , / , ' »RETYPE PLEASE'I GOTO UI C THE INTEGER AT THE I'TH PLACE IN IARRAY IS ASSIGNED TO X C THE HDP WORKS WITH THIS ASSOCIATED INTEGER bO X=IARRAYlil DO 51 I = 1,b 51 ITEMSIII = BLANK COUNT = () IFIHULP.EQ.BOI GOTO 92 C SCANNING OF THE LISTITEMS LW,3 HULP S S LI,4 0 REG 4 COUNTS THE BYTES STORED IN A LOCATION OF C ITEMS S LI,5 0 REG 5 POINTS TO THE NEXT PLACE IN ITEMS THAT IS C TO BE FILLED S LI,b 0 REG b COUNTS THE NUMBER OF LISTITEMS Sb5 LB,10 REC,3 LOADS THE NEXT BYTE OF REC IN REG 10 CI,10 107 S S BNE 70S S AI,b 1 UPDATES LISTITEMCOUNTER C REG 5 IS INITIALISED TO THE NEXT LOCATION OF ITEMS S LW,5 b S M 1,5 4 S LI,4 0 RESET BYTECOUNTER OF LISTITEMS S CI,b b CHECK AT MAXIMUM NUMBER OF LISTITEMS BL 80S S S B 90S S70 CI,10 b4 COMPARES WITH A BLANK S BE 80S CI,10 93 COMPARES WITH A S S BE 90S THE LAST READ BYTE IS A NORMAL CHARACTER. CHECK IF THE CURRENT C C LOCATION OF ITEMS IS ALREADY FILLED S C I ,4 4 BE 80S S S STB,10 ITEMS,5 AI,4 1 UPDATE COUNTER OF OCCUPIED PLACES S S AI,5 1 UPDATE POINTER TO NEXT FREE PLACE S80 A1,3 1 S CI,3 80 S BL b5S S90 AI,b 1 S91 STW,b COUNT COUNT BECOMES THE NUMBER OF STORED LISTITEMS 92 RETURN END SUBROUTINE TESTI*1 IMPLICIT INTEGERIA-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/SYSD/CONS,X,Y,MC,X8,X9,ITEMSlbl,COUNT COMMON/ACTUAL/CNS C IF SENSE SWITCH 1 IS DOWN THE NORMAL EXECUTION CONTINUES IFIISSWI1,FLAGI.EQ.0IRETURN IF CONSOL UNDER TEST IS IN THE POTSETMODE GOTO 40 C IFICNS.EQ.OI GOTO 40 C READ CURRENT MODE OF INDICATED CONSOL CALL RMODIMODE,CNS,FLAGI C SET INDICATED CONSOL IN POT SET MODE CALL SMODl1,CNS,FLAGI
C 40 C 101 C C C 30 C 100 C 31 C 20 C 10 C
C C C C C
C C 20 C 10
60 25 C 50 30
C C C C C
TEST SENSE SWITCH 1 IFIISSWl1,FLAGI.EQ.01 GOTO 10 ASK FOR COMMAND WRITEIOSM,1011 FORMATI' »INTERRUPT; COMMAND?'I READ COMMAND, ASSIGN ASSOCIATED INTEGER TO X CALL INPUT CALL SELECTED ROUTINE, RETURNPOINT IS LABEL 40 IFIX.EQ.151 CALL DISPLAYI40S1 IFIX.EQ.51 CALL MODIFYI40S1 TEST SENSE SWITCH 1 IFIISSWl1,FLAGI.EQ.01 GOTO 20 RESETTING SENSE SWITCH 1 REQUESTED WRITEIOSM,1001 FORMATI' »RESET SSl PLEASE'I WAITLOOP UNTIL SENSE SWITCH 1 IS RESET IFIISSWl1,FLAG).EQ.11 GOTO 31 IF COMMAND IS NOT CONTINUE RETURN BY LABELEXIT IFIX.NE.11 RETURN1 IF REQUIRED SET MODE TO INITIAL STATE IFICNS.NE.OI CALL SMODIMODE,CNS,FLAGI CONTINUE EXECUTION AT PLACE OF CALLING RETURN END LOGICAL FUNCTION AVAILITYPE,CONS,ADDR,INPI IMPLICIT INTEGERIA-ZI DIMENSION BI91,EI91,AI6241 COMMON/COMP/A B CONTAINS THE DATAARRAY ENTRYPOINTS FOR EACH TYPE OF COMPONENT DATA B/1,1,121,241,253,445,477,541,6051 E CONTAINS THE DATAARRAY EXITPOINTS FOR EACH TYPE OF COMPONENT DATA E/120,1,248,252,444,476,540,604,6241 IFITYPE.LT.101 GOTO 11 PROGRAMPART FOR TYPE CODE OF TWO DIGITS T1=TYPE + ADDR*100 INDEX=TYPE/10 COMPUTE DESIRED DATAWORDPART T2=T1 + 300000 T1=Tl + CONS * 100000 COMPUTE BEGIN AND END ADDRESS OF ARRAYSEARCH IA=BIINDEXI IB=EIJNDEXI DO 20 I=IA,IB SELECT SIGNIFICANT PART OF CODE AX=AII1/1000 TEST IF DESIRED DATAWORD IS FOUND IFIAX.EQ.T1.0R.AX.EQ.T21 GOTO 30 CONTINUE GOTO 25 PROGRAMPART FOR TYPE CODE OF ONE DIGIT T1=TYPE + ADDR * 10 T2= T1 + 30000 T1= T1 + CONS * 10000 IA=BITYPEI IB=EITYPEI DO 60 I=IA,IB AX=AII1/10000 IFIAX.EQ.T1.0R.AX.EQ.T21 GOTO 50 CONTINUE AVAIL=.FALSE. RETURN DESIRED. COMPONENT IS FOUNp, COMPUTE SOURCE INPUT ADDRESS AX=A(II/1000 INP=AIII-AX * 1000 AVAIL=.TRUE. RETURN END SUBROUTINE UPDAIADD,TYPE,CONS,CODEI UPDT UPDATES THE HOP DATASET CODE: 1 IS ADD; 2 IS DELETE IMPLICIT INTEGERIA-ZI DIMENSION BI2,2,41 B CONTAINS THE RESULT FOR EACH COMBINATION OF CODE, CONS AND CNS DATA B/A,0,2,0,1,0,3,1,3,2,2,0,3,2,3,11 COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/COMP/AI6241 M=l GOTO 40
40 C C C
10 20
30
ENTRY PTDTIADD,TYPE,POT,*I M=2 CONT INUE SELECTING THE HOST SIGNIFICANT DIGIT OF 'TYPE' IX=TYPE IFITYPE.GE.101 IX=IX/10 COMPUTING THE TARGET CODE TGT= ADD*lO + IX SORTING OUT THE RIGHT ADDRESS DO 10 1=1,624 AMASK=A I I 1/10000 AMASK=AHASK-IAMASK/100001*10000 IFIAMASK.EQ.TGTI GOTO 20 CONTINUE IFIM.EQ.21 RETURN1 RETURN IFIM.EQ.21 GOTO 30 CNS=AIII/IOOOOOOOO AIII=AIII+IBICODE,CONS,CNS+11-CNSI*100000000 RETURN AHASK=AIII/1000 AIII=AMASK * 1000 + POT RETURN END SUBROUTINE MANAGEIII
C
C C C
IMPLICIT INTEGER IA-O,T-ZI COMMON/SYSD/CONS,X,Y Y IS THE LAST LOADED OVERLAY SEGMENT IFII.EQ.YI RETURN SEGMENT I IS LOADED CALL SEGLODIII Y IS UPDATED Y=I RETURN END SUBROUTINE SCHRIM,NI
C
C C C
WRITES THE MESSAGE HEADINGS TO THE LABELS OCM AND OLM IF OCM AND OLM ARE ASSIGNED TO THE SAME DEVICE, THE MESSAGES TO THE OLM LABEL ARE SKIPPED.
C
100
IMPLICIT INTEGER IA-ZI DIMENSION MINI COMMON/DEVNR/OSM,ISM,OLM,OCM WRITEIOSM ,1001 IMIII,I=l,NI I F I OS M• NE • OL MI WR I TE IOL M, 100 I IMII I , ! =1 ,N I FORMATI/,20A41 RETURN END INTEGER FUNCTION ODECIIN,II
C
C C C
OCTAL/DECIMAL CONVERSION FOR POSITIVE 3 DIGIT INTEGERS FLAG I IS SET TO 1 IF THE CONVERSION WAS SUCCESFUL FLAG I IS SET TO 2 IF NON-OCTAL INPUT IS ENCOUNTERED
C
10
IMPLICIT INTEGERIA-ZI DIMENSION SI31 1=1 ST=IN/1O SI1I=ST/10 S(2)=ST-S(1I*10 S I 3)= r~ST*10 ODEC=O 00 10 ST=1,3 IFISISTI.GT.71 1=2 ODEC = SISTI+ODEC*S RETURN END INTEGER FUNCTION OCTIII
C
C C
CONVERTS DECIMAL NUMBERS INTO 3-DIGIT OCTAL NUMBERS I MUST BE SMALLER THAN 512
C
OCT=I+2*II/SI+20*II/641 RETURN END SUBROUTINE PACK IIN,OUT,*I C
C
IN IS INTERPRETED AS A STrING OF FOUR BYTES IN ALPHANUMERIC FORMAT
C C C C C
BY THE SCANNING OF IN BLANKS ARE IGNORED. IF IN IS A POSITIVE INTEGER, ITS BINAIRE REPRESENTATION IS ASSIGNED TO OUT. IF IN IS NOT A POSITIVE INTEGER RETURN IS BY LABELEXIT. OUT IS CONSTRUCTED IN REGISTER 5
C
IMPLICIT INTEGER(A-ZI LI ,5 0 C REG 3 POINTS TO THE NEXT BYTE IN IN THAT IS TO BE SCANNED S LI ,3 0 S10 LB,10 *IN,3 LOAD NEXT BYTE IN REGISTER 10 S CI,10 64 COMPARES WITH A BLANK S BE 20S S CI,10 240 CHECK IF THE BYTE IS ONE OF THE CHARACTERS 0 TO 9 S BL 30S IF LESS, IN IS NOT AN INTEGER, RETURN BY LABELEXIT C UPDATING OF REGISTER 5 S LI ,9 240 S SW,10 9 S MI,5 10 S AW,5 10 S20 AI,3 1 S CI,3 4 S BL lOS S STW,5 *OUT CONVERSION WAS SUCCESFUL, INTEGER STORED IN OUT RETURN 30 RETURN1 END SUBROUTINE BCHECK(L,U,IN,*I IMPLICIT INTEGER(A-ZI C THIS ROUTINE CHECKS IF 'IN' LIES BETWEEN TWO LIMITS L G U C LABEL EXIT IN CASE OF ERROR IF(IN.GE.L.AND.IN.LE.UI RETURN RETURN1 END INTEGER FUNCTION RAND (I ,J) C RANDOM GENERATOR C RAND BECOMES A RANDOM VALUE BETWEEN THE LIMITS I AND J. IMPLICIT INTEGER(A-ZI R=R+6859 R=R-(R/100001*10000 RAND= (R*(J-I 11/9999+1 RETURN C THE ENTRYPOINT INIT IS FOR INITIALISATION OF THE RANDOM GENERATOR ENTRY INIT C THE INITIALISATION IS CAUSED BY THE PIG CALL CPIG(2,IFlI R=IPIG(OI R=R-(R/100001*10000 RETURN END SUBROUTINE XMRT(*,*I IMPLICIT INTEGER(A-ZI EXTERNAL MR 1,MR 2,MR 3,MR 4,MR 5,MR 6,MR 7,MR 8,MR 9,MR10, & MR11,MR12,MR13,MR14,MR15,MR16,MR17,MR18,MR19,MR20, & MR21,MR22,MR23,MR24,MR25 COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/SYSD/CONS,X,Y,MC,X8,X9,ITEMS(61,COUNT COMMON/ACTUAL/CNS IFICONS.EQ.31 WRITE(OSM,1031 103 FORMAT(' »CONSOL *1* AND *2*'1 IF(CONS.LT.31 WRITE(OSM,1041 CONS 104 FORMAT(' »CONSOL *',11,'*'1 CALL TEST(1030S) 1050 WRITE(OSM,1011 101 FORMAT(' »MRT MODE; COMMAND?') CALL INPUT 1030 CONTINUE CNS=O IF(X.EQ.2.0R.X.EQ.3.0R.X.EQ.41 GOTO 1020 IF(X.EQ.151 CALL DISPLAY(1050SI IF(X.EQ.51 CALL MODIFY(1050SI IF(X.EQ.11 GOTO 1 X=X-20 GOTO(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23, & 24,251X IF(X.NE.-91 RETURN 1 1 CALL EXMRT (MR 1,101,1030SI 2 CALL EXMRT (MR 2,102 ,1030S 1 3 CALL EXMRT (MR 3,103,1030SI 4 CALL EXMRT (MR 4,104,1030SI S
5 6 7 8 9
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 1020 102
C
1030 C
100
C C C C
10 30 100 101 C C C
C C
CALL EXMRT IMR 5,105,1030S) CALL EXMRT IMR 6,106,1030S) CALL EXMRT IMR 7,107,1030S) CALL EXMRT IMR 8,108,1030S) CALL EXMRT IMR 9,109,1030S) CALL EXMRT IMRI0,110,1030S) CALL EXMRT IMRll,111,1030S) CALL EXMRT IMR12,112,1030S) CALL EXMRT IMR13,113,1030S) CALL EXMRT IMR14,114,1030S) CALL EXMRT IMR15,115,1030S) CALL EXMRT IMR16,116,1030S) CALL EXMRT IMR17,117,1030S) CALL EXMRT IMR18,118,1030S) CALL EXMRT IMR19,119,1030S) CALL EXMRT IMR20,120,1030S) CALL EXMRT IMR21,121,1030S) CALL EXMRT IMR22,122,1030S) CALL EXMRT IMR23,123,1030S) CALL EXMRT IMR24,124,1030S) CALL EXMRT IMR25,125,1030S) WRITEloSM,102) FoRMATI' »MRT MODE LEFT') RETURN2 END SUBROUTINE EXMRTIIRoUT,I ,*) THIS ROUTINE CALLS THE MR ROUTINES UNDER SUPERVISION OF XMRT CALL MANAGEII) CALL IRoUTII030S) CALL TEST I 1030S) RETURN RETURNI END SUBROUTINE CoUTITYPE,CoNSoL,ADDR,TEST,CooE) CoUT WRITES THE CODED OUTPUT MESSAGES IMPL IC IT INTEGER IA-Z I CoMMoN/DEVNR/oSM,ISM,oLM,oCM I=TYPE*1000000+CoNSoL*100000+AoDR*100+TEST WRITEloCM,100II FORMAT I IB I WRITEloCM,1001 CODE RETURN END INTEGER FUNCTION ICNSIPANELI THIS IS THE MRT VERSION OF ICNS ICNS INDICATES ON WHICH CONSOLE ILIMITED BY CoNSI THE SPECIFIED PANEL IS MOUNTED ICNS=O MEANS: PANEL NOT FOUND; HENCE A WARNING IS GENERATED IMPLICIT INTEGERIA-ZI LOGICAL CHPP CoMMoN/SYSD/CoNS,X,Y,MC,X8,X9,ITEMSI61,CoUNT CoMMoN/DEVNR/oSM,ISM,OLM,OCM ICNS=O IFICONS.EQ.2)GOTO 10 IFICHPPll,PANELIIICNS=l IFICONS.EQ.IIGOTO 30 IFICHPPI2,PANELIIICNS=2 IFIICNS.NE.OIRETURN WRITE I oSM,100 I FoRMATI' SK IPPED' I IFICoNS.EQ.3)WRITEloSM,101)PANEL FoRMATI' WARNING: PATCHPANEL',I2,' NOT MOUNTED'I RETURN END LOGICAL FUNCTION CHPPICS,PANELI LOGICAL FUNCTION CHPPICS,PANELI THIS ROUTINE VERIFIES IF A SPECIFIED PATCHPANEL IS MOUNTED ON A SPECIFIED CONSOLE IMPLICIT INTEGERIA-ZI CALL SMODI3,CS,KEY) ON PATCH-PANEL 1 TRUNK 165 IS PATCHED TO +REF ON PATCH-PANEL 2 TRUNK 165 IS PATCHED TO -REF TRUNK = ITRUI165,CS,FLAGI CHPP=.FALSE. IFIPANEL.EQ.l.AND.TRUNK.GT.9900ICHPP=.TRUE. IFIPANEL.EQ.2.AND.TRUNK.LT.-9900ICHPP=.TRUE. CALL SMoDll,CS,KEY) RETURN END SUBROUTINE GENICONS,TYPE,ADR,INP,INDEXI
10
IMPLICIT INTEGERlA-ZI DIMENSION ADRl200l,INPl2001 LOGICAL NOPOT,AVAIL NOPOT=TYPE.NE.5.AND.TYPE/10.NE.5 INDEX=O DO 10 1=1,360 J=I-1 IFl.NOT.AVAILlTYPE,CONS,J,I311 GOTO 10 INDEX=INDEX+1 AOR I INDEX I=J IFINOPOTI INPIINDEXI=13 CONTINUE RETURN END SUBROUTINE MR 1 1*1
C
C
MRT1 IS A POWERSUPPLY TEST
C
10
20 30 1030
IMPLICIT INTEGER lA-ZI COMMON/SYSD/CONS,X,Y,MC,TF1,TF2 CDMMON ADLYSTl331 CALL SCHRl' MRT I, POWER SUPPLJES',61 DO 10 1=1,B AOLYSTlll=I+319 ADLYSTll+BI=I+331 ADLYSTll+161= 1+339 ADLYSTll+241= 1+34B ADLYSTI331= -1 IFICONS.EQ.21 GOTO 20 CALL SCHRl' CONSOL *1*',31 CALL CPOWERl1,1030S1 IFICONS.EQ.11 GOTO 30 CALL SCHRl' CONSOL *2*',31 CALL CPOWERI2,1030SI CALL SCHRl' MRT 1 END',31 RETURN RETURN1 END SUBROUTINE CPOWERICONSOLE,*1
C
C
CPOWER IS THE POWERSUPPLY TESTROUTINE
C
10
101 1030
IMPLICIT INTEGER lA-ZI REAL AFW,SUP(371 COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/POWER/SUP COMMON/ACTUAL/CNS COMMON ADLYSTl331 CNS=CONSOLE CALL SMOD(l,CONSOLE,IFLI 1=0 1=1+1 CALL TESTl1030S1 K=ADLYST II I IFlK.LT.O) RETURN CALL TPOWERlK,CONSOLE,AFW,IFLI IFlIFL.EQ.1) GO TO 10 IAFW=AFW*10000 CALL COUTI52,CONSOLE,K,l,IAFWI IAFW=K-319 AFW=SUPlIAFWI + AFW I FL =00 I K I WRITElO1..M,lOll IFL,SUPlIAFW),AFW FORMATl' P',I3,' ',F7.4,': ',F7.41 GOTO 10 RETURN1 END SUBROUTINE TPOWERIADRES,CONSOLE,AFW,FLAGI
C
C
TPOWER IS THE BASIC POWERSUPPLY TESTROUTINE
C
IMPLICIT INTEGERlA-ZI REAL AFW REAL TOLl371 & /.0005,.0005,.03,.03,4*.005,4*0.0,2*.03,2*.005,2*.03, 14*.005,.025,2*.002,.001,2*.025,0.0,.025,.05,2*.002,.001,2*.002, 2.001/ COMMON/ POWER/ SUP REAL SUPl371 & /1.0,-1.0,1.5,-1.5,.2,-.2,.2,-.2,4*0.0,1.5,-1.5,.2,-.2,
11.5,-1.5,.2,-.2,.2,-.2,.255,.18,-.18,-.06,-.255,-.255,0.0,-.255, 1.31,.18,-.18,-.06,.18,-.18,-.061
20 21
1= ADRES - 319 CALL RPOTIADRES,AFW,CONSOLE,FLAG) AFW=AFW-SUP I I) IFlABSlAFW)-TOLll)) 20,20,21 FLAG = 1 RETURN FLAG = 2 RETURN END SUBROUTINE MR 2 1*)
C
C
MRT 2 CHECKS THE ADDRESSES AND UPDATES THE DATASET
C
IMPLICIT INTEGERlA-Z)
o IMENS ION IT EMS (6)
50 51 52
20 30 1030
100 40
101 9 10
COMMON/SYSD/CONS,X,Y,MC,TF1,TF2,ITEMS,COUNT COMMON TRLIST(152) CALL SCHRl' MRT 2, ADDRESS TEST AND UPDATING DATASET',11) DO 50 1=1,64 11=1-1 TRLISTll)=11 DO 51 1=128,183 TRLISTII-63)=1 DO 52 1=256,287 TRLISTII-135)=1 IFICONS.EQ.2) GOTO 20 CALL SCHRl' CONSOL*1*',3) CALL CADDI1,1030S) IFICONS.EQ.1) GOTO 30 CALL SCHRl' CONSOL*2*',3) CALL CADDI2,1030S) CALL SCHRl' MRT 2 END',3) RETURN RETURN1 END SUBROUTINE CADDlCON,*) IMPLICIT INTEGER lA-Z) DIMENSION ADD(624),TYPEI6) COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON ICOMP/ADD COMMON TRLIST(152) DATA TYPE/' A',' T',' M',' F',' P',' R'I CALL SMODI1,CON,IFLAG) CNS=CON TEL=O VALUIT=O DO 10 1=1,624 ELMT=ADDIII/10000 COIN=ELMT-10*IELMT/10) IFICOIN.EQ.7) GOTO 20 KON=ELMT 110000 ADIN=ELMT/10-KON*1000 VALIN=1000*COIN+ADIN IFIVALUIT.GT.VALIN) GOTD 40 CALL TADDICOIN,ADIN,CUIT,AUIT,CON,IFLAG) VALUIT=1000*CUIT+AUIT IFlIFLAG.EQ.2) GOT040 IFIKON.EQ.CON.OR.KON.EQ.3) GOTO 9 CALL UPDAIADIN,COIN,CON,1) TEL=TEL+1 CHAR=TYPEICOIN) NUM=OCTIADIN) WRITElOLM,100) CHAR,NUM FORMATlA4,13,' NOT IN DATASET') CALL COUTICDIN,CON,ADIN,2,1) GOTD 9 IFIKON.NE.3.AND.KON.NE.CON) GOTD 9 CALL UPDAIADIN,COIN,CON,2) TEL=TEL+1 CHAR=TYPE lCOIN) NUM= OCTIADIN) WRITElOLM,101) CHAR,NUM FORMATlA4,13,' NOT ADDRESSABLE') CALL COUTICDIN,CON,ADIN,2,2) CONTINUE CALL TESTl1030S) CONTINUE
ZO
60 10Z 1030
10 S S
S S S
CONT INUE DO 60 1=1,15Z CALL TESTII030S1 CALL RTRUIITRLISTIII,NUM,CON,IFLAGI IFIIFLAG.LT.31 GOTO 60 NUM=OCTITRLISTIIII WRITEIOLM,1011 TYPEIZl,NUM CONT INUE IFITEL.GT.OI WRITEIOLM,10Z1 TEL FORMAT I , DATASET UPDATED AT ',13,' PLACES'I RETURN RETURNI END SUBROUTINE TADDITYIN,ADIN,TYUT,ADUT,KONS,FLAGI IMPLICIT INTEGER (A-Zl DIMENSION TYPEI71,BYTEI41 DATA TYPE/17,51,36,ZZ,39,41,ZO/ OCTA=OCT IADINI DO lEI 1=1,3 BYTEIII=OCTA-10*IOCTA/101 OCTA=OCTA/I0 OCTA=Z56*IZ56*IZ56*TYPEITYINI+BYTEI311+BYTEIZII+BYTEI1I LI,14 BAIOCTAI LI,7
1
LW,15 *KONS CAL4,9 0 CALL DELAYll,10,IFLAGl LI,14 BAIOKTAI
S
LI,7
4
S S
LW,15 CAL4,9
*KONS 0
S
LI ,4
0
SZO S
LB,10 STW,10
OKTA,4 BYTE,4
S
AI ,4
1
S
30
40
BDR,7 ZOS IFIOCTA.NE.OKTAI GOTO 30 FLAG= 1 TYUT=TY IN ADUT=ADIN RETURN FLAG=Z DO 40 1=1,7 IFIBYTEI11.NE.TYPEIIII GOTO 40 TYUT=I CONTINUE ADUT=64*BYTEIZl+8*BYTEI31+ BYTEI41 RETURN END SUBROUTINE MR 3 1*1
C
C
MRT 3 TESTS THE ANALOG MODE SETTING
C
IMPLICIT INTEGERIA-Zl COMMON/SYSD/CONS,X,Y,MC,TFl,TFZ CALL SCHRI' MRT 3, ANALOG MODE SETTING',71 IFICONS.EQ.ZI GOTO ZO CALL SCHRI' CONSOL *1*',31 CALL CMODEll,1030S1 IFICONS.EQ.11 GOTO 30 ZO CALL SCHRI' CONSOL *Z*',31 CALL CMODEIZ,1030S1 CALL SCHRI' MRT 3 END',31 30 RETURN 1030 RETURNI END SUBROUTINE CMODEICON,*1 IMPLICIT INTEGERIA-Zl REAL*8 MODEI51/'POTSET ','STATIC T','RESET &'COMPUTE '/ COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS CNS=CON DO 10 IN=1,5 CALL TMODEIIN,CON,OUT,IFLAGI IFIIFLAG.EQ.11 GOTO 9 WRITEIOLM,1001 MODEIINI, MODEIOUTI 100 FORMATI' MODE IN :',A8,' MODE OUT :',A81 CALL COUTIO,CON,0,3,INI 9 CONTINUE
','HOLD
,,
10 1030
C
C
C
20 30 1030
100 20 1030
CONT INUE CALL SMODl1,CON,IFLAG) RETURN RETURN 1 END SUBROUTINE TMODElMODEIN,CONSOLE,MODEOUT,FLAG) IMPLICIT INTEGERlA-Z) FLAG= 1 CALL SMODlMODEIN,CONSOLE,IFLAG) CALL RMODlMODEOUT,CONSDLE,IFLAG) IFlMODEIN.NE.MODEOUT) FLAG=2 RETURN END SUBROUTINE MR 4 1*) MRT 4 TESTS THE REFDAC AND THE DVM IMPLICIT INTEGER(A-Z) LOGICAL CHPP COMMON/SYSD/CONS,X,Y,MC,TF1,TF2 CALL SCHRl' MRT 4, REFDAC AND DVM',6) IFlCONS.EQ.21 GOTO 20 CALL SCHRl' CONSOL *1*',3) IFlCHPPl1,1).OR.CHPPl1,2))CALL CRFOYMl1,1030S) IFlCONS.EQ.1) GOTO 30 CALL SCHRl' CONSOL *2*',3) IFlCHPPI2,1).OR.CHPPI2,21)CALL CRFDVMI2,1030S) CALL SCHRl' MRT 4 END',3) RETURN RETURN1 END SUBROUTINE CRFDVMlCONSOLE,*) IMPLICIT INTEGERlA-Z) COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS DIMENSION VAL(5) DATA VAL/1,10,100,1000,-100/ CNS=CONSOLE CALL RTRUI 1164,OUT,CONSOLE,IFLAG) CALL SMODl1,CONSOLE,IFLAG) 00 20 1=1,5 IN=O 00 20 J= 1,10 CALL TREFlIN,CONSOLE,OUT,IFLAG) IFlIFLAG.EQ.2) WRITElOLM,100) IN,OUT FORMATl' IN :',15,' OUT :',15) I N= I N + VAll Il CALL TEST 11030S) CONT INUE RETURN RETURN1 END SUBROUTINE TREFlIN,CONSOLE,OUT,FLAG) IMPLICIT INTEGERlA-Z) COMMON/TOLERNCE/TOL(40) FLAG=l CALL SREFIlIN,CONSOLE,IFLAG) CALL DELAYl1,10,IFLAG) CALL ROVMIlOUT,CONSOLE,IFLAG) DEV=IN-OUT IFlABSlOEV).GT.TOLlll) FLAG=2 RETURN END SUBROUTINE MR 5 1*1
C
C
MRT 5 TESTS THE PRECISION INTERVAL GENERATOR
C
1030
IMPLICIT INTEGERlA-Z) DIMENSION ITEMS(6) COMMON/SYSD/CONS,X,Y,MC,TF1,TF2,ITEMS,COUNT CALL SCHRl' MRT 5, PIG',4) CALL CPREl1030S) CALL SCHRl' MRT 5 END',3) CALL TEST 11030S) RETURN RETURN 1 END SUBROUTINE CPREl*) IMPLICIT INTEGER lA-Z) DIMENSION VALUE(5)
100 9
101 11 10 10Z 20 1030
COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS DATA IN/I000000/ CNS=O DO ZO FREQ= 1 ,Z IFlFREQ.EQ.l1 CALL SCHRl' PIG 1 KHZ',31 IFlFREQ.EQ.21 CALL SCHRl' PIG 1 MHZ',31 CALL TPGRlIN,FREQ,OUT,IFLAGl IFIIFLAG.EQ.l1 GOTO 9 WRITEIOLM,1001 FORMATl' THE PIG DOESN"T RESET'1 CALL COUTlO,0,0,5,11 CONT INUE DO 10 1=1,5 CALL TPGClIN,FREQ,OUT,IFLAGl IFIIFLAG.EQ.l.0R.I.GT.ll GOTO 11 WR ITE I OLM ,lOll FORMAT I , THE PIG DOESN"T COUNT DOWN'1 CALL COUTlO,0,0,5,ZI CONT INUE VALUE III =OUT CONTINUE CALL TESTU030S1 WRITElOLM,10Z1 VALUE FORMATI' READ OUT NUMBERS ',5114,ZXll CONT INUE RETURN RETURNI ENO SUBROUTINE TPGRlIN,FREQ,OUT,FLAGl IMPLICIT INTEGER lA-Zl FLAG= 1 CALL SPIGlIN,3,FREQ,IFLAGI CALL CPIGlz,IFLAGl CALL CPIGll,IFLAGl CALL RPIGIOUTl IFIOUT.NE.Ol FLAG=Z RETURN END SUBROUTINE TPGClIN,FREQ,OUT,FLAGl IMPLICIT INTEGER lA-Zl FLAG= 1 CALL SPIGlIN,3,FREQ,IFLAGI CALL CPIGlZ,IFLAGl CALL RP IG lOUT) IFIOUT.EQ.INI FLAG=Z RETURN END SUBROUTINE MR 61*1 IMPLICIT INTEGERlA-Zl COMMON/SYSO/CONS,X,y,MC,X8,X~,ITEMSI61,COUNT
10 ZO 30 40 1030
CALL SCHRI' MRT 6, HOOADS AND SERVOPOTS',71 GOTOII0,ZO,301, CONS CALL SCHRI' CONSOL**I**',41 GOTD 40 CALL SCHRI' CONSOL **Z**',51 GOTO 40 CALL SCHRl' CONSOL**I** **Z**',51 CALL CPTSlI030S1 CALL SCHR I' MRT 6 END' ,3 I RETURN RETURNI END SUBROUTINE CPTSl*1 IMPLICIT INTEGER lA-Zl LOGICAL AKLAAR,BKLAAR,OKEA,OKEB COMMON ALISTlZOOI,BLISTIZOOI COMMON/SYSD/CONS,X,Y,MC,X8,X9,ITEMSI61,COUNT COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/TOLERNCE/TOLI401 COMMON/ACTUAL/CNS TELA=O TELB=O OKEA=.TRUE. OKEB=. TRUE. AKLAAR::.TRUE. BKLAAR=.TRUE. CNS=O IFICONS.EQ.21 GOTO ZO CALL GENll,5,ALIST,DUMMY,TELAI
20 21
51 S S 50 61 S S 60
100 70
101 71
102 S72
73
90 1030
20
30 1030
AKlAAR:TElA.lE.O IFlCONS.EQ.11 GOTO 21 CAll GENI2,5,BlIST,DUMMY,TElB) BKlAAR=TElB.lE.O TElMAX=MAXOlTElA,TElB) + 1 DO 90 TEl=l,TElMAX CALL TES T 11030S ) AKlAAR=TEl.GT.TElA BKlAAR=TEl.GT.TElB IFlAKlAAR) GOTO 50 CAll RPOTIlAlISTITEl),OUT,l,IFlAG) VAlA=RANDlO,9999) IFlABSlVAlA-OUT).lE.TOlI31» GOTO 51 CAll SREFIlVAlA,l,IFlAG) LI,15 1 CONSOl IS 1 CAl4,8 • SERVO IFlBKlAAR) GOTO 60 CAll RPOTIlBlISTITEl),OUT,2,IFlAG) VAlB=RANDlO,999') IFlABSlVAlB-OUT).lE.TOlI31»GOTO 61 CAll SREFI(VAlB,2,IFlAG) LI ,15 2 CONSOl IS 2 CAl4,8 0 SERVO IFlOKEA.OR.OKEB) GOTO 70 OKEA=. TRUE. OKEB::.TRUE. ADDA=AlISTlTEl-1) AODB=BlISTlTEl-1) CAll COUTI5,1,ADDA,6,DEVA) CAll COUTI5,2,ADDB,6,DEVB) ADDA=OCT lADDA) ADDB=OC T lADDB) WRITElOlM,100) ADDA,DEVA,ADDB,DEVB FORMATl' P',13,':',T9,14,T16,'P',13,':',T23,14) IFlOKEA) GOTO 71 OKEA=.TRUE. ADDA=AlISTlTEl-1) CAll COUTI5,1,ADDA,6,DEVA) ADDA= OC T IADDA) WRITElOlM,101) ADDA,DEVA FORMA TI' P', 13, ' : ' ,T9 ,14) IFlOKEB) GOTO 72 OKEB=.TRUE. ADDB=BlISTlTEl-1) CAll COUTI5,2,ADDB,6,DEVB) ADDB=OCTlADDB) WRITElOlM,102) ADDB,DEVB FORMATl' P',I3,':',T16,14) CAl4,10 0 TEST ON SERVO COMPLETED IFlAKlAAR.AND.BKlAAR) GOTO 90 IFlAKlAAR) GOTO 73 CAll RPOTIlAlISTITEl),OUT,l,IFlAG) DEVA= VAlA-OUT IFlABSlDEVA).GT.TOlI30» OKEA=.FAlSE. IFlBKlAAR) GOTO 90 CAll RPOTIlBlISTITEl),OUT,2,IFlAG) DEVB=VAlB-OUT IFlABSlDEVB).GT.TOlI30» OKEB=.FAlSE. CONTINUE RETURN RETURN1 END SUBRoultNE MR 7-f*) IMPLICIT INTEGERlA-Z) COMMON/SYSO/CONS,X,Y,MC,XS,X9,ITEMS(6),COUNT COMMON ADlIST(200),INlISTI200) CAll SCHRl' MRT 7, DIGITAL/ANALOG CONVERTERS',S) IFICONS.EQ.2) GOTO 20 CAll SCHRl' CONSOl *1*',3) CAll GENl1,70,ADlIST,INlIST,NUMBER) CAll CUPDl1,NUMBER,1030S) CAll CDACl1,NUMBER,1030S) IFlCONS.EQ.1) GOTO 30 CAll SCHRl' CONSOl *2*',3) CAll GENI2,70,ADlIST,INlIST,NUMBER) CAll CUPDI2,NUMBER,1030S) CAll CDACI2,NUMBER,1030S) CAll SCHRl' MRT 7 END',3) RETURN RETURN1
100
END SUBROUTINE CUPDICON,NUMB,*I IMPLICIT INTEGERIA-ZI COMMON ADLISTI2001,INLISTI2001 COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS IFINUMB.EO.OI RETURN CNS=CON DO 10 l=l,NUMB CALL TEST 11030S1 ADDR=ADLISTIII DAC= I NLI STIll CALL TUPDIDAC,ADDR,CON,IFLAGI IFIIFLAG.EQ.11 GOTO 10 CALL COUTI70,CON,ADDR,7,11 DAC= DC T WAC 1 WRITEIOLM,1001 DAC FDRMATI' DAC ',13,' UPDATE NOT WORKING, SPECIFICATION TEST SKIPPED &' 1
ADLISTIll=-l CONT I NUE RETURN 1030 RETURN1 END SUBROUTINE CDACICON,NUMB,*I IMPLICIT INTEGER (A-ZI DIMENSION BITPTRI321 LOGICAL ERR COMMON ADLISTI2001,INLIST(2001 COMMON/TOLERNCE/ TOLI401 COMMON/ACTUAL/CNS COMMON/DEVNR/OSM,ISM,OLM,OCM DATA BITPTR/0,1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192, &16383,-0,-1,-2,-4,-8,-16,-32,-64,-128,-256,-512,-1024,-2048,-4096, &-8192,-16383/ CNS=CON DO 10 l=l,NUMB CALL TESTI1030S1 ERR= • FALSE. ADDR=ADLI STIll IFIADDR.EO.-11 GOTO 10 DAC::INLISTIII CALL RTRUIIADDR,K,CON,IFLAGI DO 20 K=1,32 CALL TDACIDAC,BITPTRIKI,ERROP.,CON,ADDR,IFLAGI 20 IFIIFLAG.EO.21 ERR=.TRUE. IFI.NOT.ERRI GOTO 10 CALL COUTI70,CON,ADDR,7,21 DAC=OCTIDACI WRITEIOLM,1011 DAC 101 FORMA TI' DAC " 131 10 CONTINUE RETURN 1030 RETURN 1 END SUBROUTINE TUPDIAIN,AOUT,CON,FLAGI COMMON/TOLERNCE/ TOLI401 IMPLICIT INTEGERIA-ZI FLAG= 1 CALL SDACIIAIN,1,-9600,IFLAGI CALL UPDT(8,IFLAGI CALL SDACIIAIN,1,6400,IFLAG) CALL RT~UIIAOUT,UrT1~CON,IFLAGI CALL UPDTI8,IFLAGI CALL RTRUIIAOUT,UIT2,CON,IFLAGI IFIABSIUIT1+UIT2+2000).GT.TOLI311 FLAG=2 RETURN END SUBROUTINE TDACIADRES,VALIN,AFW,CONSOLE,TRUNK,FLAGI IMPLICIT INTEGER IA-Z 1 COMMON/TOLERNCE/TOLI401 FLAG= 1 CAll SDACI IADRES,l ,VALIN,IFLAGI CALL UPDTIS,IFLAGI CALL RTRUIITRUNK,VALUIT,CONSOLE,IFLAGI AFW=ABSIVALUIT-10*VALIN/161 IFIAFW.GT.TOLI211 FLAG=2 RETURN END SUBROUTINE MR 81*1 10
C
C**** TESTING OF AD-CHANNELS C
IMPLICIT INTEGERIA-Z) COMMON/SYSD/CONS,X,Y,MC,X8,X9,ITEMS(6),COUNT COMMON ADCCH(200),TRUNKlI200) lOGICAL CHPP CAll SCHRI' MRT 8, ANALOG/DIGITAL CHANNElS',8) IFICONS.EQ.2)GOTO 20 C C**** IS THERE A PATCHPANEl IN CONSOLE 1? C IFI.NOT.ICHPPI1,1).OR.CHPPI1,2»)GOTO 5 CAll SCHRI' CONSOl *1*',3) C c**** TEST S/H CONTROL OF THE S/H-ADC,SITYPE 811 C CAll GENll,81,ADCCH,TRUNKl,NUMBER) CAll CSHCONll,NUMBER,1030S) C c**** TEST S/H ADC,S C CAll CSHADCll,NUMBER,1030S) C c**** TEST DIRECT ADC,SITYPE 80) C CAll GENll,80,ADCCH,TRUNKl,NUMBER) CAll CADCll,NUMBER,1030S) GOTO 20 5 CAll SCHRI' NO PATCHPANEl IN CONSOLE 1',7) 20 IFICONS.EQ.l) GOTO 40 IFI.NOT.ICHPPI2,1).OR.CHPPI2,2»)GOTO 25 CAll SCHRI' CONSOl *2*',3) CAll GENI2,81,ADCCH,TRUNKl,NUMBER) CAll CSHCONI2,NUMBER,1030S) CAll CSHADCI2,NUMBER,1030S) CAll GENI2,80,ADCCH,TRUNKl,NUMBER) CAll CADCI2,NUMBER,1030S) GOTO 40 25 CAll SCHRI' NO PATCHPANEl IN CONSOLE 2' ,7) 40 CAll SCHRI' MRT 8 END',3) RETURN 1030 RETURNI END SUBROUTINE CSHCONICON,AMOUNT,*) IMPLICIT INTEGERIA-Z) COMMON ADCCH(200),TRUNKlI200) COMMON/DEVNR/OSM,ISM,OlM,OCM COMMON/ACTUAl/CNS IFIAMOUNT.EQ.O)RETURN CNS=CON DO 10 I=I,AMOUNT CAll TES T (10 30S ) ADC=ADCCHII) CAll TSHCONIADC,CNS,FlAG) IFIFlAG.EQ.l)GOTO 10 ADC=OCT IADC) WR lTE I OlM,5) ADC 5 FORMATI' AOC',I3,' S/H CONTROL NOT WORKING, SPECIFICATION TEST SKI &PPED' ) CAll COUTI81,CNS,ADC,8,1) ADCCHII)=-1 10 CONTINUE RETURN 1030 RETURNI END SUBROUTINE TSHCONIADC,CNS,FlAG) COMMON/TOlERNCE/TOl(40) IMPLICIT INTEGERIA-Z) FlAG= 1 C
c**** All BLOCKS IN SAMPLE C
CAll SHINITIO,KEY) CAll SREFII-8000,CNS,KEY) CAll DElAYll,20,KE) C
c**** All BLOCKS IN HOLD C
CAll SHINITI255,KEY)
CALL SREFII6000,CNS,KEYI CALL RADCIIADC,1,UIT1,KEYI CALL DELAYl1,20,KEI CALL SHINITIO,KEYI CALL RADCIIADC,1,UIT2,KEYI IFIABSIUIT1+UIT2+32001.GT.TOLI41IFLAG=2 RETURN END SUBROUTINE CSHADCICON,AMOUNT,*1 IMPLICIT INTEGERIA-ZI COMMON ADCCHI2001,TRUNKLI2001 COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS IFIAMOUNT.EQ.OIRETURN CNS=CON C
C**** ALL BLOCKS IN SAMPLE-MODE C
CALL SHINITI255,KEYI DO 10 l=l,AMOUNT CALL TESTl1030S1 ADC=ADCCHIII IFIADC.EQ.-1IGOTO 10 CALL TSHADCIADC,MAXAFW,CNS,FLAGI IFIFLAG.EQ.1IGOTO 10 ADC=OCTIADCI WRITEIOLM,5IADC,MAXAFW 5 FORMAT I' ADC',I3,' MAX.AFW.:',161 CALL COUTI81,CNS,ADC,8,MAXAFWI CONTINUE 10 RETURN 1030 RETURN1 END SUBROUTINE TSHADCIADC,MAXAFW,CNS,FLAGI IMPLICIT INTEGERIA-ZI COMMON/TOLERNCE/TOLI401 DIMENSION VALUESl211 DATA VALUES/-9995,-9000,-8000,-1000,-6000,-5000,-4000,-3000, A-2000,-1000,0,1000,2000,3000,4000,5000,6000,1000,8000,9000,9995/ FLAG= 1 MAXAFW=O DO 10 K=1,21 CALL SREFI IVALUESIKI ,CNS,KEYI CALL RADCIIADC,l,ANSWER,KEYI AFW=VALUESIKI-10*ANSWER/16 IFIABSIMAXAFWI.LT.ABSIAFWIIMAXAFW=AFW 10 CONT INUE IFIABSIMAXAFWI.LT.TOLI51IFLAG=2 RETURN END SUBROUTINE CADCICON,AMOUNT,*1 IMPLICIT" INTEGERIA-ZI COMMON ADCCHI2001,TRUNKLI2001 COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS IFIAMOUNT.EQ.OIRETURN CNS=CON DO 10 l=l,AMOUNT CALL TESTl1030S1 ADC= ADCCH I I I CALL TADCIADC,MAXAFW,CNS,FLAGI IFIFLAG.EQ.1IGOTO 10 ADC=OC nAOC I WRITEIOLM,5IADC,MAXAFW 5 FORMATl' ADC',13,' MAX.AFW.:',161 CALL COUTI80,CNS,ADC,8,MAXAFWI 10 CONTINUE RETURN 1030 RETURN1 END SUBROUTINE TADCIADC,MAXAFW,CNS,FLAGI IMPLICIT INTEGERIA-ZI COMMON/TOLERNCE/TOLI401 DIMENSION VALUESl211 DATA VALUES/-9995,-9000,-8000,-1000,-6000,-5000,-4000,-3000, A-2000,-1000,O,1000,2000,3000,4000,5000,6000,1000,8000,9000,9995/ FLAG= 1 MAXAFW=O DO 10 K=1,21 CALL SREFIIVALUESIKI,CNS,KEYI
10
CALL RADCIlADC,l,ANSWER,KEY) AFW=-VALUESlK)-ANSWER IFlABSlMAXAFW).LT.ABSlAFW))MAXAFW=AFW CONTINUE IFlABSlMAXAFW).LT.TOLlS))FLAG=2 RETURN END SUBROUTINE MR 91*)
C
C**** MR 9 TESTS THE CONTROL-LINES C
1030
20 10 1030
20 10 1030
IMPLICIT INTEGERlA-Z) COMMON/SYSD/CONS,X,Y,MC,X8,X9 COMMON/ACTUAL/CNS CNS=O CALL SCHRl' MRT 9, CONTROL-LINES',6) CALL CCOS I 1030S) CALL CCOR 11030S) CALL SCHRl' MRT 9 END',3) RETURN RETURN1 END SUBROUTINE CCOSl*) IMPLICIT INTEGERlA-Z) COMMON/DEVNR/OSM,ISM,OLM,OCM CALL RSCOPI32,KEY) DO 10 1=1,32 CALL TEST 11030S) K=I-1 CALL TCOSlK,FLAG) IFIFLAG.EQ.1) GOTO 10 K=OC Tl K) WRITElOSM,20) K FORMAT I , C.L.',12,' NOT SEll) CONT INUE RETURN RETURN1 END SUBROUTINE CCORl*) IMPLICIT INTEGERlA-Z) COMMON/DEVNR/OSM,ISM,OLM,OCM CALL SCOPI32,KEY) DO 10 1=1,32 CAll TEST 110 30S) K=I-1 CALL TCORlK,FLAG) IFIFLAG.EQ.1) GOTO 10 K=OC TI K) WRITElOSM,20) K FORMATl' C.L.',12,' NOT RESET') CONT INUE RETURN RETURN1 END SUBROUTINE TCOSILINE,FLAG) IMPLICIT INTEGERlA-Z) FLAG=l CALL SCOPILINE,KEY) IFlICONILINE,KEY).EQ.O) FLAG=2 RETURN END SUBROUTINE TCORILINE,FLAG) I MPLICIT INTEGER lA-Z} FLAG=l CALL RSCOPILINE,KEY) IFlICONlLINE,KEY).EQ.1) FLAG=2 RETURN END SUBROUTINE MR101*) IMPLICIT INTEGERlA-Z) COMMON /SYSD/CONS,X,Y,MC,X8,X9 COMMON RELAY(50),VALUESlSO) ICON=ICNS(1) IFlICON.EQ.O)RETURN CALL SCHRl' MRT 10, RELAYS AND PASSIVE RESISTANCES',10) IFlICON.EQ.1)CALL SCHRl' CONSOL *1*',3) IFlICON.EQ.2)CALL SCHRl' CONSOL *2*',3) CALL GENlICON,60,RELAY,VALUES,NUMBER) CALL CRELlICON,NUMBER,1030S) CALL SCHRl' MRT 10 END',3)
1030
10 20 30 40 1030
RETURN RETURNI END SUBROUTINE CRELlICON,AMOUNT,*) IMPLICIT INTEGERlA-Z) COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON RELAY(50) ,VALUES(50) CNS= ICON DO 40 l=l,AMOUNT CALL TESTl1030S) REL=RELAYlI) CALL TRELlREL,ICON,VALUESll ),FLAG) IFIFLAG.EQ.l)GOTO 40 IFlFLAG.EQ.3) GOTO 20 REL=OCT lREL) WRITEIOLM,10)REL FORMA TI' R', 13) CALL COUTI61,ICON,REL,10,2) GOTO 40 REL=OCTlREL) WRITElOLM,30)REL FORMATl' RESISTANCES OF R',13) CALL COUTI61,ICON,REL,10,3) CONT I NUE CALL SMODll,ICON,KEY) RETURN RETURN 1 END SUBROUTINE TRELlREL,ICON,EXPVAL,FLAG) IMPLICIT INTEGERlA-Z) COMMON/TOLERNCE/TOL(40) FLAG= 1 VAL= 100*EXPVAL IFlEXPVAL.EQ.909)VAL=EXPVAL
C
c**** IN RESET:-REF., IN HOLD:+REF. C
10
DO 10 K=3,4 CALL SMODlK,ICON,KEY) CALL RRELIIREL,ANSWER,ICON,KEY) VAL=-VAL AFW=VAL-ANSWER IFIABSIAFW).LE.TOLl10»GOTO 10 IFIABSIAFW).GT.TOLI10»FLAG=3 IFlABSIAFW).GT.909.AND.ABSIVALI.EQ.909)FLAG=2 IFIABSlAFW).GT.5000.AND.ABSIVAL).EQ.5000)FLAG=2 IFIABSlAFW).GT.10000.AND.ABSIVALI.EQ.10000)FLAG=2 CONT INUE RETURN END SUBROUTINE MRlll*)
C
c**** MRII TESTS THE AMPLIFIERS C
IMPLICIT INTEGERlA-Z) COMMON/SYSD/CONS,X,Y,MC,XB,X9 COMMON ADRARRI1201,INPARR(120),NUMBER DIMENSION ARRAYl1201,ARRAY2120) ICON=ICNS II 1 IFlICON.EQ.O) RETURN CALL SCHRl' MRT 11, TESTING OF AMPLIFIERS',B) IFlICON~EQ.11 CALL SCHRI' CONSOL *1*',3) IFIICON.EQ.2) CALL SCHRl' CONSOL *2*',31 CALL GENIICON,l,ADRARR,INPARR,NUMBER) CALL CSUMIICON,1030S) CALL CHIGHGlICON,1030S) c**** NO INTEGRATORS FOR NETWORK BORROW,SO ONLY TYPES 12,13,14 BEGIN=l NUMBER=O DO 50 K=12,14 CALL GENlICON,K,ARRAYl,ARRA~2,AANTAL) NUMBER=NUMBER+AANTAL DO 40 I=BEGIN,NUMBER ADRARRIII=ARRAYlll-BEGIN+11 40 INPARRll)=ARRAY211-BEGIN+1) 50 BEGIN=BEGIN+AANTAL CALL CNETWBlICON,1030S1 CALL SCHRI' MRT 11 END',3) RETURN
1030 RETURN1 END SUBROUTINE CSUMICON,*I IMPLICIT INTEGERIA-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON ADRARRI1201,INPARRI1201,NUMBER CNS=CON CALL SCHR I' SUMMER MODE', 31 CALL SCALEIO,CON,KEYI DO 20 l=l,NUMBER CALL TESTl1030S1 ADR=ADRARRIII CALL TSUMIADR,INPARRIII,CON,MAX,FLAGI IFIFLAG.EQ.1IGOTO 20 CALL COUTl1,CON,ADR,11,MAXI ADR=OCTIADRI WRITEIOLM,1001 ADR,MAX 100 FORMATl' A',13,' MAX.AFW.::',I61 20 CONTINUE CALL SMODl1,CON,KEYI RETURN 1030 RETURN1 END SUBROUTINE TSUMIAMP,POT,CON,MAX,FLAGI IMPLICIT INTEGERIA-ZI COMMON/TOLERNCE/TOLI401 MAX=O FLAG=l DO 10 L=1,3 ALPHA=IL-11*3400+100 CALL SPOTIIPOT,ALPHA,VALOUT,CON,KEYI DO 10 M=3,4 CALL SMODIM,CON,KEYI CALL RPOTIIPOT,VALOUT,CON,KEYI EXPOUT=-IVALOUT*201/14 CALL RAMPIIAMP,OUTPUT,CON,KEYI DIFF=EXPOUT-OUTPUT IFIABSIDIFFI.GT.ABSIMAXII MAX=DIFF 10 CONTINUE IFIABSIMAXI.GT.TOLI1111 FLAG=2 RETURN END SUBROUTINE CHIGHGICON,*1 IMPLICIT INTEGERIA-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON ADRARRI1201,INPARRI1201,NUMBER CNS=CON CALL SCHRI' HIGH GAIN MODE',41 CALL SCALEl1,CON,KEYI DO 20 l=l,NUMBER CALL TESTl1030S1 ADR= ADRARR I I 1 CALL THIGHGIADR,INPARRIII,CON,MAX,FLAGI IFIFLAG.EQ.1IGOTO ZO CALL COUTl1,CON,ADR,11,MAXI ADR=OCTIADRI WRITEIOLM,1001 ADR,MAX 100 FORMATI' A',13,' MAX.AFW.::',161 20 CONT INUE CALL SMOD(l,CON,KEYI RETURN 1030 RETURN1 END SUBROUTINE THIGHGIAMP,POT,CON,MAX,FLAGI IMPLICIT INTEGERIA-ZI COMMON/TOLERNCE/TOLI401 MAX=O FLAG= 1 DO 10 L=1,3 ALPHA=IL-11*3150+100 CALL SPOTIIPOT,ALPHA,VALOUT,CON,KEYI DO 10 M=3,4 CALL SMODIM,CON,KEYI CALL RPOTIIPOT,VALOUT,CON,KEYI EXPOUT=-(VALOUT*ZOI/13 CALL RAMPIIAMP,OUTPUT,CON,KEYI DIFF=EXPOUT-OUTPUT IFIABSIDIFFI.GT.ABSIHAXII ~.O}~J
10 CONTINUE IFIABSlMAXI.GT.TOLlllll FLAG=2 RETURN END SUBROUTINE CNETWBlCON,*1 IMPLICIT INTEGERlA-ZI COMMON/DEVNR/OSM,iSM,OLM,OCM COMMON/ACTUAL/CNS COMMON ADRARRI1201,INPARRI1201,NUMBER CNS=CON CALL SCHRI' NETWORK BORROW MODE',61 CALL SCALEI2,CON,KEYI DO 20 l=l,NUMBER CALL TEST 11030S1 ADR=ADRARR III CALL TNETWBIADR,INPARRIII,CON,MAX,FLAGI IFIFLAG.EQ.IIGOTO 20 CALL COUTll,CON,ADR,ll,MAXI ADR=OCTIADRI WRITElOLM,1001 ADR,MAX 100 FORMATl' A',I3,' MAX.AFW.::',161 20 CONTINUE CALL SMODll,CON,KEYI RETURN 1030 RETURNI END SUBROUTINE TNETWBIAMP,POT,CON,MAX,FLAGI IMPLICIT INTEGERIA-ZI COMMON/TOLERNCE/TOLI401 MAX=O FLAG= 1 EXPOUT=O DO 10 M=3,4 CALL SMODlM,CON,KEYI CALL RAMPIlAMP,OUTPUT,CON,KEYI DIFF=EXPOUT-OUTPUT IFlABSlDIFFI.GT.ABSIMAXII MAX=DIFF 10 CONTINUE IFlABSIMAXI.GT.TOLllllI FLAG=2 RETURN END SUBROUTINE MR121*1 IMPLICIT INTEGERlA-ZI C IN THIS VERSiON, MULTIPLIERTEST MOVED TO MR21 & MR22 C DUE TO CORE REQUIREMENTS CALL TEST 11030S1 RETURN 1030 RETURNI END SUBROUTINE MR131*1 C
C**** TESTING OF INTEGRATORS C
IMPLICIT INTEGERlA-ZI ,COMMON/SYSD/CONS,X,Y,MC,X8,X9,ITEMSI61,COUNT COMMON ADRESl1001 ,IDCl1001,ICI1001,EXPECTI1001 ,RESULTl1001 TIME=2000 ICON=ICNSI21 IFlICON.EQ.OIRETURN CALL SCHRI' MRT 13, INTEGRATORS',51 IFlICON.EQ.ll CALL SCHRl' CONSOL *1*',31 IFIICON.EQ.21 CALL SCHRI' CONSOL *2*',31 CALL GEN (lCON, 11'ADRES ,RESULT ,NUMBER 1 CALL CIDCICIICON,NUMBER,1030SI DO 10 K=1,3 TSCALE=K-l CALL CCALCITSCALE,ICON,TIME,NUMBER,1030SI CALL CEQUIICON,NUMBER,1030SI 10 CONT INUE CALL SCHRI' MRT 13 END',31 RETURN 1030 RETURNI END SUBROUTINE CIDCICIICON,AMOUNT,*1 IMPLICIT INTEGERIA-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON ADRESl1001 ,IDCl1001,ICI1001,EXPECTI1001,RESULTI1001 CNS= ICON C
C**** READ THE IDC- AND IC-VALUES AND CHECK THE IC-VALUES C
20 10 1030
CALL SIDClO,CNS,KEYI CALL SMODl3,CNS,KEYI DO 10 l=l,AMOUNT CAll TESTC1D30S1 ADR=ADRES l I I CALL TIDCIClCNS,ADR,IDClII,IClII,FLAGI IFlFLAG.EQ.1IGOTO 10 ADRESlII=-l ADR=OC T lADR I WRITElOLM,20IADR FORMATl' A',13,' : IC INCORRECT, SKIPPED'I CALL COUTl11,CNS,ADR,13,11 CONTINUE CALL SMODl1,CNS,KEYI RETURN RETURN1 END SUBROUTINE TIDCIClCNS,ADR,IN1,IN2,FLAGI IMPLICIT INTEGERlA-ZI COMMON/TOLERNCE/TOLl401 FLAG=l CALL RINTIlADR,IN1,CNS,KEYI CALL RAMPIlADR,IN2,CNS,KEYI IFlABSlIN2-100001.GT.TOLl121IFLAG=2 RETURN END SUBROUTINE CCALClTSCALE,ICON,TIME,AMOUNT,*1 IMPLICIT INTEGERlA-ZI COMMON ADRESl1001,IDCl1001,IClIOOI,EXPECTl1001,RESULTl1001 COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS IFITSCALE.EO.OICALL SCHRl' 1. UF',21 IFlTSCALE.EQ.1ICALL SCHRl' .1 UF',21 IFITSCALE.EQ.2ICALL SCHRl' .01 UF',21
C
c**** CALCULATE FOR EACH INTEGRATOR THE EXPECTED RESULT C
10
DO 10 l=l,AMOUNT CALL TESTl1030S1 IFIADRESlII.EQ.-IIGOTO 10 CALL TCA LC IT 1M E, I DC l I I , ICl I I , EXPECT l I I I CONTINUE
C
c**** ONE ANALOG COMPUTE -RUN C
CALL NOCLOKlICON,KEYI CALL SCALElTSCALE,ICON,KEYI TIJD=TIME/l2*10**TSCALEI CALL SPIGlTIJD,l,l,KEYI C
c**** MODE-CONTROL VIA P.I.G. C C C C C C C C C C C C C C C C C C C C C C C
P.I.G.
I.
----------11 .N216 C.L.O .------>COMPUTE-INPUT ---------------1 . I I•
ON LOGIG PATCH PANEL
I I I• I I .N1l5 1---1 .~-..;----I .N2-15· I • I .------>HOLD-INPUT ON LOGIG PATCHPANEL I. -----1. I I• I I---------->TO FFO,FF1 I P • I .G •
RT --->1. UF TS1--->0.1 UF TS2--->0.01UF USING ANALOG PATCHPANEL 2 CALL SCOPIO,KEYI CALL SMODl3,ICON,KEYI CALL CPIGI3,KEYI IFlICON.EO.2IGOTO 15
FIRST P.I.G.PULSE:COMPUTE SECOND P.I.G.PULSE:COMPUTE,T/HIS IN HOLD VIA FF1 THIRD P.I.G.PULSE:HOLD
C C**** CONSOLE A : FFl---)SLO (FFI FOR T/H'SI C
20
IF(ISEN(O,KEYl.EQ.OlGOTO 20 GOTO 25
C
C**** CONSOLE B : FFl---)SLl C
IS 2S 30
IF(ISEN(l,KEYl.EQ.OlGOTO is CALL RSCOP(O,KEYI IF(IMOD(ICON,KEYl.NE.41GOTO 30 CALL CPIG(2,KEYI
C
C**** READ THE INTEGRATORS IN THE HOLD-MODE C
40 1030
DO 40 l=l,AMOUNT CALL RAMPI(ADRES(ll,RESULT(I),JCON,KEY) CALL SMOD(l,ICON,KEYI RETURN RETURNI END SUBROUTINE TCALC(TIJD,INl,IN2,OUT1) IMPLICIT INTEGER(A-Z) OUTl=IN2+INl*TIJD/l000 RETURN END SUBROUTINE CEQU(ICON,AMOUNT,*) IMPLICIT INTEGER(A-Z) COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON ADRES(1001,IDC(100),IC(100),EXPECT(1001,RESULT(100)
CC C**** COMPARE THE EXPECTED VALUES WITH THE COMPUTED RESULTS C
S 10 1030
DO 10 l=l,AMOUNT CALL TEST (1030S) ADR=ADRES(II IF(ADR.EQ.-11GOTO 10 CALL TEQU(EXPECT(ll,RESULT(I),AFW,FLAG) IF(FLAG.EQ.11GOTO 10 ADR=OCT (ADRI WRITE(OLM,SIADR,AFW FORMATl' A',!3,' AFW.:',161 CALL COUT(11,ICON,ADR,13,AFWI CaNT INUE RETURN RETURN1 END SUBROUTINE TEQU(EXP,RES,AFW,FLAGI IMPLICIT INTEGER(A-Zl COMMON/TOLERNCE/TOL(401 FLAG=l AFW=EXP-RES IF(ABS(AFWl.GT.TOL(1311FLAG=2 RETURN END SUBROUTINE MR14(*1
C
c**** TESTING OF TRACK/HOLD NETWORKS C
1030
IMPLICIT INTEGER(A-Zl COMMON/SYSD/CONS,X,Y,MC,X8,X9,ITEMS(61,COUNT COMMON TRACKH(SOI,INTEGR(SOI,IDC(SOI,IC(SO),EXPECT(S01,RESULTlSOl TIME=2000 I CON= I CNS (2 I IF(ICON.EQ.OlRETURN CALL SCHR(' MRT 14, TRACK/HOLD NETWORKS',71 IF(ICON.EQ.11CALL SCHR(' CONSOL *1*',31 IF(ICON.EQ.21CALL SCHR(' CONSOL *2*',31 CALL GEN(ICON,90,TRACKH,INTEGR,NUMBERI CALL CSTART(ICON,NUMBER,1030S1 TSCALE=O CALL CREKEN(TSCALE,ICON,TIME,NUMBER,1030S1 CALL CVERGL(ICON,NUMBER,1030S1 CALL SCHR(' MRT 14 ENO',31 RETURN RETURN1 END SUBROUTINE CSTART(ICON,AHOUNT,*1 IMPLICIT INTEGER(A-Zl
COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON TRACKHlSOI,INTEGRlSOI,IDCISOI,ICISOI,EXPECTISOI,RESULTISOI CNS=ICON C
C**** READ THE IDC- AND IC-VALUES AND CHECK THE IC-VALUES CALL SIDClO,CNS,KEYI CALL SMODI3,CNS,KEYI DO 10 1=1,AMOUNT CALL TESTl1030S1 INT=INTEGRlII CALL TSTARTlCNS,INT,IDClll,ICIII,FLAGI IFIFLAG.EQ.1IGOTO 10 TRHOLD=OCTlTRACKHlIII INT=OCTIINTI WRITElOLM,201INT,TRHOLD FORMATl' 1',13,' IC INCORRECT, T/H',13,' SKIPPED'I 20 CALL COUTI90,CNS,TRHOLD,14,11 TRACKHlll=-1 CONTINUE 10 CALL SMODI1,CNS,KEYI RETURN 1030 RETURN1 END SUBROUTINE TSTARTlCNS,INT,IN1,IN2,FLAGI IMPLICIT INTEGERlA-ZI COMMON/TOLERNCE/TOLI401 FLAG= 1 CALL RINTIlINT,IN1,CNS,KEYI CALL RAMPIlINT,IN2,CNS,KEYI IFlABSI1000Q-IN21.GT.TOLI121IFLAG=2 RETURN END SUBROUTINE CREKENITSCALE,ICON,TIME,AMOUNT,*1 IMPLICIT INTEGERlA-ZI COMMON TRACKHlSOI,INTEGRlSOI,IDClSOI ,IClSOI,EXPECTlSOI,RESULTISOI COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS C
c**** CALCULATE FOR EACH INTEGRATOR THE EXPECTED RESULT C
10
DO 10 I=1,AMOUNT CALL TESTl1030S1 IFlTRACKHlll.EQ.-1IGOTO 10 CALL TREKEN IT IME,I DC I I I, IC (I I ,EXPECT I I I I CONTINUE
C
c**** ONE ANALOG COMPUTE -RUN C
CALL NOCLOKlICON,KEYI CALL SCALEITSCALE,ICON,KEYI TIJD=TIME/12*10**TSCALEI CALL SPIGlTIJD,1,1,KEYI CALL SCOPlO,KEYI CALL SMODI3,ICON,KEYI CALL CPIGI3,KEYI IFlICON.EQ.2IGOTO 1S C
c**** CONSOLE A : FF1---)SLO lFF1 FOR T/H'SI C
20
IFlISENlO,KEYI.EQ.OIGOTO 20 GOTO 2S
C
c**** CONSOLE B : FF1---)SL1 C
1S 2S 30
IFlISENI1,KEYI.EQ.GIGOTO 1S CALL RSCOPlO,KEYI IFlIMODlICON,KEYI.NE.4IGOTO 30 CALL CPIGI2,KEYI
C
c**** READ THE TRACK/HOLD AMPLIFIERS IN THE HOLD MODE C
40 1030
DO 40 1=1,AMOUNT CALL RAMPIlTRACKHlII,RESULTlII,ICON,KEYI CALL SMODI1,ICON,KEYI RETURN RETURN1 END SUBROUTINE TREKENlTIJD,IN1,IN2,OUTI IMPLICIT INTEGERlA-ZI
OUT=-IN2-INl*TIJD/2000 RETURN END SUBROUTINE CVERGLlICON,AMOUNT,*) IMPLICIT INTEGERlA-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON TRACKHI501,INTEGRI501,IDC(50),ICI501,EXPECTI50),RESULT(50) C
C**** COMPARE THE EXPECTED VALUES WITH THE COMPUTED RESULTS
C
5 10 1030
DO 10 I=I,AMOUNT CALL TEST(1030SI TRHO=TRACKHlII IFlTRHO.EQ.-IIGOTO 10 CALL TVERGL(EXPECT(II,RESULTlII,AFW,FLAGI IFlFLAG.EQ.l)GOTO 10 TRHO=OCT lTRHOI WRITElOLM,5ITRHO,AFW FORMAT(I AI,I3,1 AFW.:I,I6) CALL COUTI90,ICON,TRHO,14,AFWI CONTINUE RETURN RETURN 1 END SUBROUTINE TVERGLlEXP,RES,AFW,FLAGI IMPLICIT INTEGERlA-ZI COMMON/TOLERNCE/TOLI401 FLAG= 1 AFW=EXP-RES IFlABSlAFWI.GT.TOL(141)FLAG=2 RETURN END SUBROUTINE MRI5(*1
C
C**** MR15 TESTS THE TRACK/TRACKS C
1030
10 20 1030
IMPLICIT INTEGER(A-ZI COMMON/SYSD/CONS,X,Y,MC,X8,X9 COMMON ADRES(200),POTI200) I CON= I CNS (2 I IFlICON.EQ.OIRETURN CALL SCHR(I MRT 15, TESTING OF TRACK/TRACKS',8) IFlICON.EQ.l)CALL SCHRII CONSOL *1*1,3) IFlICON.EQ.2ICALL SCHRl' CONSOL *2*1,31 CALL GENlICON,14,ADRES,POT,NUMBERI CALL CTRTR(ICON,NUMBER,1030SI CALL SCHR(I MRT 15 END',31 RETURN RETURNI END SUBROUTINE CTRTRlICON,AMOUNT,*1 IMPLICIT INTEGER(A-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON ADRES(2001,POTI200) CNS= ICON CALL SMODI3,CNS,KEY) DO 20 1=I,AMOUNT CALL TEST (1030SI AMP=ADRES (I I CALL TTRTR(CNS,AMP,POT(II,AFW,FLAG) IFlFLAG.EQ.l)GOTO 20' AMP=OCT(AMPI WRITElOLM,10IAMP,AFW FORMATlI A',I3,' AFW:',Hd CALL COUTI14,CNS,AMP,15,AFWI CONTINUE CALL SMODll,CNS,KEYI RETURN RETURNI END SUBROUTINE TTRTR(CONS,AMP,HODAD,MAX,FLAGI IMPLICIT INTEGER(A-ZI COMMON1TOLERNCE/TOLI401 MAX=O FLAG=1
C
C**** T/T-INPUT ON LOGIC PATCHPANEL IS CONTROLLED BY CL.2 C**** CL.2 = 0 ---) T/T = -HOD AD
C
CALL RSCOPI2,KEY) CALL RPOTIIHODAD,ANS,CONS,KEY) CALL RAMPIIAMP,VAL,CONS,KEY) MAX=-ANS-VAL C
C**** CL.2 = 1 ---> TIT = +1 C
CALL SCOPI2,KEY) CALL RAMPIIAMP,VAL,CONS,KEY) MAXl=lOOOO-VAL IFIABSIMAX).LT.ABSIMAXl»MAX=MAXl IFIABSIMAX).GT.TOLllS»FLAG=2 RETURN END SUBROUTINE MR161*) C
C**** TESTING OF COMPARATORS C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
1----
+1
-----.
C
.---------------------lcOOOI----
P050
I --------1 I 1---I 1 I I I P060 I . 1 1-1 I 1---- C
I I I. 1--1 • N200 I .--------->SLIO I 1--1 • I I. I
1----------------1 COOl 1-----------1 I I
.. .. .
1----
P061
1-1
ANALOG PATCHPANEL: +1 TO POSO,POSI POSO TO COOO-COll P051 TO C012-C023 -1 TO P060,P061, ••• ,PI03 P060 TO CODa P061 TO COOl PI03 TO C023 ON CONSOLE A AVAILABLE
COOO-C013, ON CONSOLE B
LOGIC PATCHPANEL: COOO,C001 TO N200 C002,C003 TO N201
.
C022,C023 TO N211 N200 TO T210 N201 TO T211 N211 TO T221 INTRACOM PATCHPANEl: LOGIC TRUNKS CONSOLE A: T210 TO SUO T211 TO SUI T211 TO SL21 LOGIC TRUNKS CONSOLE B: T210 TO SL22 T211 TO TSL23 T211 TO SL33 IMPLICIT INTEGERIA-Z) COMMON/SYSO/CONS,X,Y,MC,X8,X9 COMMON SLIIOO),POTSIIOO),COMPARIIOO) I CON= I CNS ( l ) IFIICON.EQ.O)RETURN CALL SCHRI' MRT 16, TESTING OF COMPARATORS',8) IFIICON.EQ.2)GOTO 20
COOO-C023
10 20
30 40 1030
CALL SCHRI' CONSOL *1*',31 DO 10 1=1,12 SLI I I =8+ I 1-11/2 COMf'ARIII=I-1 POTSIII=47+1 CALL CCOMPAIICON,12,1030S1 GOTO 40 CALL SCHRI' CONSOL *2*',31 DO 30 1=1,20 SLIII=18+11-11/2 COMPARI 11=1-1 POTSIII=47+1 CALL CCOMPAIICON,20,1030S1 CALL SCHRI' MRT 16 END',31 RETURN RETURNI END SUBROUTINE CCOMPAIICON,AMOUN1,*1 IMPLICIT INTEGERIA-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON SLII001,POTSII001,COMPARII001 CNS=ICON
C
C**** SET P050,P051 TO 5000, P060, ••• TO 0 C
10 5
20 30 1030
CALL SPOTII40,5000,ANS,CNS,KEYl1 CALL SPOTII41,5000,ANS,CNS,~EY21 IFlKEYl.NE.l.0R.KEY2.NE.IIWRITEIOLM,101 FORMATl' P050 AND/OR P051 NOT CORRECT'I DO 5 1=I,AMOUNT CALL SPOTIIPOTSIII,O,ANS,CNS,KEYI DO 30 1=I,AMOUNT CALL TEST I 1030S1 CALL TCOMPAISLIII,POTSIII,CNS,FLAGI IFIFLAG.EQ.IIGOTO 30 COM=OCTICOMPARIIII WRITEtOLM,201 COM FORMATI' C',131 CALL COUTI-l,ICON,COM,16,11 CONTINUE CALL SMODll,CNS,KEYI RETURN RETURNI END SUBROUTINE TCOMPAISENS,POT,CNS,FLAGI IMPLICIT INTEGERIA-ZI FLAG= 1 CALL SPOTIIPOT,5100,ANS,CNS,KEYI CALL SMODI3,CNS,KEYI CALL DELAYll,10,KEYI CALL RSENISENS,ANS,KEYI IFIANS.NE.IIFLAG=2 CALL SPOTIlPOT,4900,ANS,CNS,KEYI CALL SMODI3,CNS,KEYI CALL DELAYll,10,KEYI CALL RSENISENS,ANS,KEYI IFIANS.NE.0IFLAG=2 RETURN END SUBROUTINE MR171*1
C
C**** MR17 TESTS THE D/A-SWITCHES C
1030
IMPLICIT INTEGERIA-ZI COMMON/SYSD/CONS,X,Y,MC,X8,X9 COMMON ADRES12001,POT12001 ICON=ICNS 121 IFlICON.EQ.OIRETURN CALL SCHRl' MRT 17, TESTING OF D/A-SWITCHES',81 IFIICON.EQ.IICALL SCHRI' CONSOL *1*',31 IFlICON.EQ.2ICALL SCHRI' CONSOL *2*',31 CALL GENIICON,13,ADRES,POT,NUMBERI CALL CDAlICON,NUMBER,1030S1 CALL SCHRI' MRT 17 END',31 RETURN RETURNI END SUBROUTINE CDAIICON,AMOUNT,*1 IMPLICiT INTEGERlA-ZI
10 20 1030
COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON ADRES12001,POT12001 CNS=ICON CALL SMODI3,CNS,KEYI DO 20 I=l,AMOUNT CALL TESTll030S1 AMP=ADRESIII CALL TOAICNS,AMP,POTIIl,AFW,FLAGI IFIFLAG.EQ.l1GOTO 20 AMP=OCTIAMPI WRITEIOLM,101AMP,AFW FORMATI' AI,I3,1 AFW:',I61 CALL COUTI13,CNS,AMP,11,AFWI CONT INUE CALL SMOOll,CNS,KEYI RETURN RETURNl END SUBROUTINE TOAICON,AMP,HODAD,MAX,FLAGI IMPLICIT INTEGERIA-ZI COMMON/TOLERNCE/TOLI401 MAX=O FLAG=l
C
C**** D/A-INPUT ON LOGIC PATCHPANEL IS CONTROLLED BY CL.3 C**** CL.3 = 0 ---> D/A = +1 C
CALL RSCOPI3,KEYI CALL RAMPIIAMP,VAL,CON,KEYI MAX=10000-VAL C
C**** CL.3 = 1 ---> D/A = +l-HODAD C
CALL SCOPI3,KEYI CALL RPOTIIHODAD,ANS,CON,KEYI CALL RAMPIIAMP,VAL,CON,KEYI EXPVAL=10000-ANS MAX1=EXPVAL-VAL IFIABSIMAXl.LT.ABSIMAX111MAX=MAXl IFIABSIMAXl.GT.TOLll111FLAG=2 RETURN END SUBROUTINE MR1BI*1 C
C**** TESTING OF LOG-GENERATORS C
1030
10 20 1030
IMPLICIT INTEGERIA-ZI COMMON/SYSD/CONS,X,Y,MC,X8,X9 COMMON LOGSI501,POT(501 ICON=ICNS(21 IFIICON.EQ.OlRETURN CALL SCHRI' MRT 18, TESTING OF LOGCARDS',11 IFIICON.EQ.llCALL SCHR(I CONSOL *1*1,31 IFIICON.EQ.21CALL SCHRII CONSOL *2*1,31 CALL GENIICON,40,LOGS,POT,NUMBERI CALL CLOGIICON,NUMBER,1030S1 CALL SCHR(I MRT 18 END',31 RETURN RETURNl END SUBROUTINE CLOG(ICON,AMOUNT,*1 IMPLICIt INTEGERIA~Zl COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON LOGSI501,POTI501 CNS= ICON 00 20 I=l,AMOUNT CALL TEST(1030S1 LOG=LOGSIII CALL TLOG(CNS,LOG,POTIIl,AFW,FLAGI IFIFLAG.EQ.l1GOTO 20 LOG=OCTILOGI WRITEIOLM,10ILOG,AFW FORMATI' F I ,13, I AFW: I ,161 CALL COUTI40,CNS,LOG,18,AFWI CONTINUE CALL SMODll,CNS,KEYI RETURN RETURNl
END SUBROUTINE TLDGlCNS,LDG,ZET,AFW,FLAGl IMPLICIT INTEGERlA-Zl COMMON/TOLERNCE/TOLl401 DIMENSION VALUE 141 DATA VALUE/9~99,1000,leO,201 FLAG=l DO 10 1=1,4 CALL SPOTIlZET,VALUElIl,ANS,CNS,KEYl CALL SMODl3,CNS,KEYl CALL RPOTI lZET,ANS,CNS,KEYl EXPVAL=-10000.*ALOGI01ABSlANSl/10.1/3. C
C**** TOLERANCE IS : 1 V. FOR -33 V.
10 20
IFlEXPVAL.GT.-33001TOLER=TOLI181 IFlEXPVAL.LE.-33001TOLER=TOLI201 CALL RDFGIlLOG,ANS,CNS,KEYl AFW=EXPVAL-ANS IFlABSlAFWl.GT.TOLERlGOTO 20 CONTINUE RETURN FLAG=2 RETURN END SUBROUTINE MR191*1
C
C**** MR19 TESTS THE TRUNKS C
IMPLICIT INTEGERlA-Zl COMMON/SYSD/CONS,X,Y,MC,X8,X9 COMMON TRUNKSl2001 IFlCONS.NE.31GOTO 30 ICON'" ICNS 11 I IFlICON.EO.OlRETURN ICON= ICNS 121 IFlICON.EO.OlRETURN CALL SCHRl' MRT 19, TESTING OF TRUNKS',71 IFlICON.EO.11CALL SCHRl' CONSOL *1*',31 IFlICON.EO.21CALL SCHRl' CONSOL *2*',31 C
C**** TRUNKLINES 00-77,200-24310CTALl,ITHAT IS 00-63,128-163 DECIMALI C**** NUMBER OF TRUNKLINES : 100 C
10 20
30 1030
DO 10 1=1,64 TRUNKSlIl=I-1 DO 20 1=128,163 TRUNKSlI-631"'I CALL CTRUNKlICON,100,1030S1 CALL SCHRl' MRT 19 END',31 RETURN CALL SCHRl' IMPOSSIBLE TO TEST TRUNKS, CONS N.E. 3',101 RETURN RETURN1 END SUBROUTINE CTRUNKlICON,AMOUNT,*1 IMPLICIT INTEGERlA-Zl COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON TRUNKSl2001 COMMON/TOLERNCE/TOll401 CNS=ICoN
C
C**** IN RESET ALL THE TRUNKLINES MUST HAVE THE VALUE +1 C
CALL SMODI3,CNS,KEYl C
C**** TEST THE LAST TRUNKLINE, IF CORRECT ALL TRUNKLINES ARE CORRECT C
10
CALL RTRUIlTRUNKSlAMOUNTl,ANS,CNS,KEYl IFlABSlANS-100001.LE.TOLI1911GOTO 30 DO 20 I=l,AMOUNT CALL TEST 11030S1 CALL TTRUNKlTRUNKSlII,CNS,AFW,FLAGl IFlFLAG.EO.1IGOTO 20 TRU=OCTlTRUNKSlIll WRITElOLM,10ITRU,TRU,AFW FORMATl' T',I3,' AND HIGHER ADDRESSES'/,' AFW OF T',I3,' :',161 CALL COUTl-1,CNS,TRU,19,AFWl
20 30 1030
C 1030
GOTO 30 CONTINUE CALL SMODl1,CNS,KEYI RETURN RETURN1 ENO SU8ROUTINE TTRUNKITRUN,CNS,AFW,FLAG) IMPLICIT INTEGERlA-ZI COMMON/TOLERNCE/TOLl401 FLAG= 1 CALL RTRUIlTRUN,VAL,CNS,KEYI AFW=lOOOO-VAL IFlA8S1AFWI.GT.TOL(19)IFLAG=2 RETURN END SU8ROUTINE MR201*1 IMPLICIT INTEGERlA-ZI DUMMY CALL TESTl1030S1 RETURN RETURN1 END SU8ROUTINE MR211*1
C
C**** QUARTER SQUARE MULTIPLIERS C C C C C C C C C C C C C C C C
II 11--. II NO T IT
----------.1 DIA I NC
.-----I
11--.1 II NC
I 1-------- I I-----IX I
I
1
I I I-----IZ +Y -Y 1
1 1--. NO
II
ON LOGIC PATCHPANEL: 00 --) RXXX
1
.-----I
MULTIPLY MODE--)RESET MODE,RT DIVIDE MODE--)HOLD MODE,TS1 ASS.SQUARE MODE--)RESET MCDE,TS2
1-------1 I I
I I
+1 -1
IMPLICIT INTEGERlA-ZI COMMON/SYSO/CONS,X,Y,MC,X8,X9 COMMON MULTl1001,AMPlI001,HODADlI00),DUMMYI100) ICON= ICNS 121 IFlICON.EQ.OIRETURN CALL SCHRl' MRT 21,TESTING OF QUARTER SQUARE M~LTIPLIERS',121 IFlICON.EQ.IICALL SCHRI' CONSOL *1*',31 IFlICON.EQ.2ICALL SCHRI' CONSOL *2*',31 CALL GENlICON,30,MULT,AMP,NUM8ERI CALL GENlICON,32,DUMMY,HODAD,NUM81 IFlNUM8ER.NE.NUM8ICALL SCHRI' NUM8ERS OF MOXX AND MIXX NOT EQUAL', &91 CALL CQSMlICON,NUM8ER,1030SI CALL CQSDlICON,NUM8ER,1030S1 CALL CQSSlICON,NUMBER,1030S1 CALL SCHRl' MRT 21 END',31 RETURN 1030 RETURNI END SU8ROUT I NE CQS·M I ICON ,AMOUNT ,*1 IMPLICIT INTEGERIA-ZI COMMON/OEVNR/OSM, I SM,OLM ,OCM COMMON/ACTUAL/CNS COMMON MULTlI00),AMPl1001,HODADl1001,DUMMYI100) CNS=ICON C
c**** ALL TIT AND DIA SWITCHES IN WRIGHT POSITION C
CALL RSCOPI2,KEY) CALL SCOPI3,KEYI CALL SCHRl' Q.S.:MULTIPLY',4) CALL SMODll,CNS,KEY) CALL SCALEIO,CNS,KEY) 00 20 1=I,AMOUNT CALL TEST 11030S1 MUL=MULTlll CALL TQSMIMUL,AMPIII,HODADIII,CNS,MAX,FLAGI IFlFLAG.EQ.l)GOTO 20 MUL=OCTIMULI
10 20 1030
WRITElOLM,101MUL,MAX FORMATl' M',y3,' MAX.AFW:',I61 CALL COUTI30,CNS,MUL,21,11 CONTINUE CALL SMODll,CNS,KEYl RETURN RETURNI • END SUBROUTINE TQSMlMUL,AMPL,HOD,CNS,MAX,FLAGl IMPLICIT INTEGERlA-Zl COMMON/TOLERNCE/TOLI401 MAX=O FLAG= 1 DO 10 1=1,5 ALPHA=II-l1*2250 CALL SPOTIlHOD,ALPHA,VALOUT,CNS,KEYl CALL SMODI3,CNS,KEYl
C
C**** INSCHAKELVERSCHIJNSELEN MULTIPLIERS: ---) DELAY VAN 50 MSEC. C
CALL DELAYll,50,KEYl CALL RAMPIlAMPL,VALOUT,CNS,KEYl C
C**** OUTPUT
-x*y
C
10
10 20 1030
EXPOUT=-VALOUT CALL RMULIlMUL,VALOUT,CNS,KEYl AFW=EXPOUT-VALOUT IFlABSlAFWl.GT.ABSIMAXllMAX=AFW CONTINUE IFlABSlMAXl.GT.TOLI2111FLAG=2 RETURN END SUBROUTINE CQSOlICON,AMOUNT,*1 IMPLICIT INTEGERlA-Zl COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON MULTlI001 ,AMPl1001 ,HODADlI001,DUMMYI1001 CNS= ICON CALL SCHRl' Q.S.:DIVIDE',31 CALL SMODll,CNS,KEYl CALL SCALEll,CNS,KEYl DO 20 1= 1"AMOUNT CALL TEST 11030S1 MUL=MUL T I I I CALL TQSDlMUL,AMPlIl,HODADlIl,CNS,MAX,FLAGl IFlFLAG.EQ.l1GOTO 20 MUL=OCT lMUL I WRITElOLM,101MUL,MAX FORMATl' M',I3,' MAX.AFW:',I61 CALL COUTI30,CNS,MUL,21,21 CONTINUE CALL SMODll,CNS,KEYl RETURN RETURNI END SUBROUTINE TQSOlMUL,AMPL,HOO,CNS,MAX,FLAGl IMPLICIT INTEGERIA-Zl COMMON/TOLERNCE/TOLI401 MAX=O FLAG=1 DO 10 1=1,5 ALPHA=lI-l1*2250 CALL SPOTIlHOD,ALPHA,VALOUT,CNS,KEYl CALL SMODI4,CNS,KEYl CALL DELAYll,50,KEYl CALL RAMPIlAMPL,VALOUT,CNS,KEYl
C
C**** OUTPUT -Z/Y C
10
EXPOUT=-VALOUT CALL RMULIlMUL,VALOUT,CNS,KEYl AFW=EXPOUT-VALOUT IFlABSlAFWl.GT.ABSlMAXllMAX=AFW CONTINUE IFlABSlMAXI.GT.TOLI2111FLAG=2 RETURN END SUBROUTINE CQSSlICON,AMOUNT,*1 IMPLICIT INTEGERlA-Zl
10 20 1030
COMMON/OEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON MULTI100l,AMPI100l,HODADI100l,DUMMYI100l CNS=ICON CALL SCHRI' Q.S.:ASS. SQUARE',51 CALL SMODI1,CNS,KEYl CALL SCALEI2,CNS,KEYl DO 20 I=l,AMOUNT CALL TESTl1030S1 MUL=MULTlil CALL TQSSIMUL,CNS,MAX,FLAGl IFIFLAG.EQ.1lGOTO 20 MUL=OCTIMULl WRITEIOLM,lOIMUL,MAX FORMATI' M',I3,' MAX.AFW:',I61 CALL COUTI30,CNS,MUL,21,31 CONT INUE CALL SMODI1,CNS,KEYl RETURN RETURN1 END SUBROUTINE TQSSIMUL,CNS,MAX,FLAGl IMPLICIT INTEGERIA-ll COMMON/TOLERNCE/TOLI401 FLAG= 1 CALL SMODI3,CNS,KEYl
C
C**** OUTPUT -Y*IYI C
EXPOUT=-lOOOO CALL DELAYI1,50,KEYl CALL RMULIIMUL,VALOUT,CNS,KEYl AFW=EXPOUT-VALOUT IFIABSIAFWl.GT.TOLI2111FLAG=2 RETURN END SUBROUTINE MR221*1 C
C**** DUAL SQUARE MULTIPLIERS C C C C C C C C C C C
TIT
----------.
NO
D/A
+
----------.1 NC
1---------1
ON LOGIC PATCHPANEL: DO ---) RXXX
1---------1
MULTIPLY MODE--)RESET MODE,RT SQUARE MODE--)RESET MODE,TS1 SQ. ROOT MODE--)HOLD MODE,TS2
I .---------I+X / I +Y -Y I
I
I
I
I I I
+1 -1
IMPLICIT INTEGERIA-ll COMMON/SYSD/CONS,X,Y,MC,XB,X9 COMMON MULTI100l,HODlI100l,HOD211001,DUMMYI1001 ICON=ICNSI21 IFliCON.EQ.OlRETURN CALL SCHRI' MRT 22,TESTING OF DUAL SQUARE MULTIPLIERS',lll IFIICON.EQ.1lCALL SCHRI' CONSOL *1*',31 IFIICON.EQ.21CALL SCHRI' CONSOL *2*',31 CALL GENIICON,31,MULT,HOD1,NUMBERl CALL GENIICON,33,DUMMY,HOD2,NUMBl IFINUMBER.NE.NUMBlCALL SCHRI' NUMBERS OF MOX5 AND M1X5 NOT EQUAL', &9 I
1030
CALL CDSM I ICON ,NUMBER ,1030S I CALL CDSSIICON,NUMBER,1030S1 CALL CDSRIICON,NUMBER,1030S1 CALL SCHRI' MRT 22 END',31 RETURN RETURN1 END SUBROUTINE CDSMIICON,AMOUNT,*1 IMPLICIT INTEGERIA-ll COM~ON/DEVNR/OSM,ISM,OLM,OCM
COMMON/ACTUAL/CNS COMMON MULTI100l,HOD11100l,HOD211001,DUMMYI100l CNS= ICON C
C**** ALL TIT AND D/A SWITCHES IN THE WRIGHT POSITION C
CALL RSCOPI2,KEYl CALL SCOPI3,KEYl
10 20 1030
CALL SCHRI' D.S.:MULTIPLY',41 CALL SMODl1,CNS,KEYI CALL SCALEIO,CNS,KEYI DO 20 l=l,AMOUNT CALL TESTl1030S1 MUL=MULTIII CALL TDSMIMUL,HOD1111,CNS,MAX,FLAGI IFIFLAG.EQ.1IGOTO 20 MUL=OCT IMULI WRITEIOLM,10IMUL,MAX FORMATI' M',13,' MAX.AFW:',161 CALL COUTI31,CNS,MUL,22,ll CONT INUE CALL SMODl1,CNS,KEYI RETURN RETURN1 END SUBROUTINE TDSMIMUL,HOD,CNS,MAX,FLAGI IMPLICIT INTEGERIA-ZI COMMON/TOLERNCE/TOLI401 MAX=O FLAG= 1 DO 10 1=1,5 ALPHA=II-11*2250 CALL SPOTIIHOD,ALPHA,VALOUT,CNS,KEYI CALL SMODI3,CNS,KEYI
C
C**** INSCHAKELVERSCHIJNSELEN MULTIPLIERS: ---) DELAY VAN 50 MSEC. C
CALL DELAYl1,50,KEYI
C
C**** R010 CONNECTED WITH M015,M025,M035 C**** R026 CONNECTED WITH M005,M045 C
5 C
IFIMUL.LT.6.0R.MUL.GT.35IGOTO 5 CALL RRELII8,VALOUT,CNS,KEYI GOTO 7 CALL RRELII22,VALOUT,CNS,KEYI
C**** OUTPUT OF MOXX:-X*Y
C 7
10
10 20 1030
EXPOUT=-VALOUT CALL RMULIIMUL,VALOUT,CNS,KEYI AFW=EXPOUT-VALOUT IFIABSIAFWI.GT.ABSIMAXIIMAX=AFW CONTINUE IFIABSIMAXI.GT.TOLI221IFLAG=2 RETURN END SUBROUTINE CDSSIICON,AMOUNT,*1 IMPLICIT INTEGERIA-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/ACTUAL/CNS COMMON MULTl100l,HOD11100l,HOD21100l,DUMMYl1001 CNS= ICON CALL SCHRI' D.S.:SQUARE',31· CALL SMODl1,CNS,KEYI CALL SCALEl1,CNS,KEYI DO 20 l=l,AMOUNT CALL TEST 11030S1 MUL=MULT I II CALL TDSSIMUL,HOD111I,CNS,MAX,FLAGI IFIFLAG.EQ.1IGOTO 20' MUL=OCT IMUL 1 WRITEIOLM,10IMUL,MAX FORMATl' M',13,' MAX.AFW:',161 CALL coUTI31,CNS,MUL,22,21 CONTINUE CALL SMODl1,CNS,KEYI RETURN RETURN1 END SUBROUTINE TDSSIMUL,HOD,CNS,MAX,FLAGI IMPLICIT INTEGERIA-ZI COMMON/TOLERNCE/TOLI401 FLAG= 1
C
C**** OUTPUT OF MOXX:-IY**21 C
EXPOUT=-10000
CALL SHODI3,CNS,KEYI CALL DELAYll,50,KEYI CALL RHULIIMUL,VALOUT,CNS,KEYI HAX=EXPOUT-VALOUT HUL=HUL+64 DO 10 1=1,5 ALPHA=II-ll*2250 CALL SPOTIIHOD,ALPHA,VALOUT,CNS,KEYI CALL SHODI3,CNS,KEYI CALL DELAYll,50,KEYI C
C**** ROI0 CONNECTED WITH HI15,HI25,HI35 C**** R026 CONNECTED WITH HI05,H145 C
5
IFIHUL.LT.70.0R.MUL.GT.99IGOTO 5 CALL RRELII8,VALOUT,CNS,KEYI GOTO 7 CALL RRELII22,VALOUT,CNS,KEYI
C
C**** OUTPUT OF HIXX:+IX**21 C 7
10
10 20 1030
EXPOUT=VALOUT**2/10000 CALL RHULIIHUL,VALOUT,CNS,KEYI AFW=EXPOUT-VALOUT IFIABSIAFWI.GT.ABSIHAXIIHAX=AFW CONTINUE IFIABSIHAXI.GT.TOLI221IFLAG=2 HUL=HUL-64 RETURN END SUBROUTINE CDSRIICON,AHOUNT,*1 IHPLICIT INTEGERIA-ZI COMHON/DEVNR/OSH,ISH,OLH,OCH COHHON/ACTUAL/CNS COHHON HULTII001,HODlI1001,HOD211001,DUHHYI1001 CNS= ICON CALL SCHRI' D.S.:SQUARE ROOT',51 CALL SHODll,CNS,KEYI CALL SCALEI2,CNS,KEYI DO 20 I=I,AHOUNT CALL TEST 11030S1 HUL=HUL T I II CALL TDSRIHUL,HOD2III,CNS,HAX,FLAGI IFIFLAG.EQ.IIGOTO 20 HUL=OCT IHUL 1 WRITEIOLH,10IHUL,HAX FORHATI' H',13,' MAX.AFW:',I61 CALL COUTI31,CNS,MUL,22,31 CONTINUE CALL SHODll,CNS,KEYI RETURN RETURNI END SUBROUTINE TDSRIMUL,HOD,CNS,HAX,FLAGI IHPLICIT INTEGERIA-ZI COHHON/TOLERNCE/TOLI401 FLAG=1
C
C**** OUTPUT OF HOXX:+SQRTIYI C
EXPOUT=+10000 CALL SHODI4,CNS,KEYI CALL DELAYll,50,KEYI CALL RMULIIHUL,VALOUT,CNS,KEYI HAX=EXPOUT-VALOUT HUL=HUL+64 DO 10 1=1,5 ALPHA=II-ll*2250 CALL SPOTIIHOD,ALPHA,VALOUT,CNS,KEYI CALL SHODI4,CNS,KEYI CALL DELAYll,50,KEYI C
C**** ROI0 CONNECTED WITH MI15,HI25,HI35 C**** R026 CONNECTED WITH HI05,M145 C
5 C
IFIHUL.LT.70.0R.MUL.GT.99IGOTO 5 CALL RRELII8,VALOUT,CNS,KEYI GOTO 7 CALL RRELII22,VALOUT,CNS,KEYI
C**** OUTPUT OF M1XX:-SQRTIX) C 7
10
C
1030
C
1030 C C C
C
C
10 20
C C C C
25
100 30
40 101 45 C C C
102 50 60 C
EXPOUT=-SQRTI10000*VALOUT) CALL RMULIIMUL,VALOUT,CNS,KEY) AFW=EXPOUT-VALOUT IFIABSIAFW).GT.ABSIMAX))MAX=AFW CONTINUE IFIABSIMAX).GT.TOLI22))FLAG=2 MUL=MUL-64 RETURN ENO SUBROUTINE MR231*) IMPLICIT INTEGERIA-Z) DUMMY CALL TEST I 1030S) RETURN RETURN1 END SUBROUTINE MR241*) IMPLICIT INTEGERIA-Z) DUMMY CALL TESTI1030S) RETURN RETURN1 END SUBROUTINE MR25 1*) MR 25 ISSUES THE REQUEST FOR PATCHPANEL CHANGING IT RESTARTS THE MRT SEQUENCE AT MR10 THE FIRST TIME; THE SECOND TIME IT CAUSES AN EXIT FROM THE MRT MODE BACK TO SELECT IMPLICIT INTEGERIA-Z) DIMENSION ICONS(2),MUSTBEI2) LOGICAL CHPP COMMON/SYSD/CONS,X,Y,MC,XB,X9,ITEMS(6),COUNT COMMON/DEVNR/OSM,ISM,OLM,OCM INITIALISATION OF TESTSEQUENCE IN MRT COMMON/FLOW/FLOW IFIFLOW.EQ.1)GOTO 70 FIRST THE PATCHPANELCONFIGURATION IS ANALYSED ICONSlll=O ICONS(2)=0 J=CONS IFICONS.EQ.3) J=l CONTINUE DO 20 PANEL=1,2 IFICHPPIJ,PANEL))ICONSIJ)=PANEL IFICONS.NE.3.0R.J.EQ.2)GOTO 25 J=2 GOTO 10 NOW ICONS CONTAINS THE P.P. NUMBERS FOR EACH CONSOLE. ICONS=O MEANS THAT NO PATCHPANEL IS FOUND. NOW THE MESSAGES ARE PRINTED AND THE HOP WAITS FOR A SENSESWITCH INTERRUPT TO CONTINUE IFICONS.EQ.2)GOTO 30 CON=l MUSTBE(1)=1 IFIICONS(1).EQ.ll MUSTBEI1l=2 WRITEIOSM,100) MUSTBE(1) ,CON FORMATl/' *** MOUNT PP',I2,' IN CONSOLE',I2,1 ***1) IF ICONS.EQ.1) GOTO 40 CON=2 MUSTBE(2)=2 IFIICONS(2).EQ.2)MUSTBEI2)=1 WRITEIOSM,100) MUSTBE(2) ,CON WR IT EI OSM, 10 II FORMATI' »THE HOP WAITS FOR A SENSESWITCH INTERRUPT TO CONTINUEI) IFI ISSWI1 ,I) .EQ.O)GOTO 45 CALL TEST 11030S) NOW THE PATCHPANELCHANGING WILL BE VERIFIED IF THERE ARE ANY ERRORS A MESSAGE IS PRINTED, BUT THE EXECUTION WILL CONTINUE IN ANY CASE IFICONS.EQ.2IGOTO 50 CON=l IFI.NOT.CHPPl1,MUSTBE(1)))WRITEIOSM,102)CON FORMATI' NO CHANGE OR NO PANEL BEFOREHAND ON CONSOLI ,12) IFICONS.EQ.1)GOTO 60 CON=2 IFI.NOT.CHPPI2,MUSTBE(2)))WRITEIOSM,102)CON FLOW=l X=30 X=30 MEANS: GOTO MR10
1030 70 C C C
10
10S0 10Z 1030
1040 103 8S 10Z0 101
C C C C C C 1030 C C C C C
10 30 100 101
C C
RETURN1 FLOW=O X=4 NOW XMRT WILL BE LEFT AT THE NORMAL END, SINCE X=4 MEANS: RETURN TO THE SELECT ROUTINE RETURN1 END SUBROUTINE MRZS DUMMY IN S.A. SUBROUTINE MRZSI*1 COMMON/DEVNR/OSM,ISM,OLM,OCM WRITEIOSM,10} FORMATI' MR ZS DUMMY'I RETURN END SUBROUTINE XSATI*,*1 IMPLICIT INTEGER IA-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/SYSD/CONS,X,Y,MC,X8,X9,ITEMSI61,COUNT COMMON/ACTUAL/CNS EXTERNAL SENSE WRITEIOSM,10ZI FORMATI' »S.A. MODE; COMMAND?'I CALL INPUT CONTINUE CNS=O IFIX.EQ.11 GOTO 1040 IFIX.EQ.Z.OR.X.EQ.3.0R.X.EQ.41 GOTO 10Z0 IFIX.EQ.SI CALL MODIFYl10S0S1 IFIX.EQ.1SI CALL DISPLAYI10S0S1 IFIX.EQ.10SIGOTO 8S IFIX.EQ.1ZI GOTO 10S0 RETURN1 WRITEIOSM,1031 FORMATI' »INPUT REQUIRED'I GOTO 10S0 CALL EXSATISENSE,30S,1030S,10S0S) WRITEIOSM,1011 FORMATI' »S.A. MODE LEFT'} RETURNZ END SUBROUTINE EXSATIIROUT,ISEG,*,*I THIS ROUTINES CALLS THE SA ROUTINES UNDER SUPERVISION OF XSAT LOAD THE INDICATED SEGMENT CALL MANAGEIISEGI CALL ROUTINE CALL IROUTI1030S1 CHECK SENSESWITCH 1 CALL TESTI1030S1 NORMAL RETURN TO XSAT HEADING RETURNZ RETURN IN CASE OF SENSESWITCH INTERRUPT RETURN1 END SUBROUTINE COUTII,J,K,L,MI DUMMY SUBROUTINE, TO BE USED BY MR ROUTINES IN SAT-MODE END INTEGER FUNCTI~N ICNSIPANEL) THIS IS THE SAT VERSION OF ICNS ICNS INDICATES ON WHICH CONSOLE ILIMITED BY CONSI THE SPECIFIED PANEL IS MOUNTED ICNS=O MEANS: PANEL NOT FOUND; HENCE A WARNING IS GENERATED IMPLICIT INTEGERIA-ZI LOGICAL CHPP COMMON/SYSD/CONS,X,Y,MC,X8,X9,ITEMSI61,COUNT COMMON/DEVNR/OSM,ISM,OLM,OCM ICNS=O IFICONS.EQ.ZIGOTO 10 IFICHPPI1,PANELIIICNS=1 IFICONS.EQ.1IGOTO 30 IFICHPPIZ,PANELIIICNS=2 IFIICNS.NE.OIRETURN WRITEIOSM,1001 FORMATI' SKIPPED'I IFICONS.EQ.3IWRITEIOSM,101IPANEL FORMATI' WARNING: PATCHPANEL',IZ,' NOT MOUNTED') RETURN END LOGICAL FUNCTION CHPPICS,PANELI THIS ROUTINE VERIFIES IF A SPECIFIED PATCHPANEL IS MOUNTED ON A SPECIFIED CONSOLE
C C C
104 10 100
200 101
30
40 1030 C
20 101 102
103 10
105 30 106 40 107
108 1030
IMPLICIT INTEGERlA-ZI TRUNK = ITRUl165,CS,FLAGI CHPP=.FALSE. IFlPANEL.EQ.l.AND.TRUNK.GT.99001CHPP=.TRUE. IFlPANEL.EQ.2.AND.TRUNK.LT.-99001CHPP=.TRUE. RETURN END SUBROUTINE ADGENlCONS,TYPE,ADR,INP,N,*1 ADGEN PRODUCES A LIST OF ADDRESSES AND INPUT SOURCES THE FIRST PART OF THIS SUBROUTINE IS CONVERSATIONAL FOR SA TESTS THE ENTRYPOINT GEN IS USED IN THE MRT IMPLICIT INTEGERlA-ZI LOGICAL AVAIL,NOPOT DIMENSION ADRl2001,INPl2001 COMMON/DEVNR/OSM,ISM,OLM,OCH WRITE l OSM, 1041 FORMATl' FIRST-LAST ADDRESS, FORMAT XXX-XXX, 3-DIGIT, OCTAL:'1 READlISM,100IIl,I2 FORMATlI3,lX,I31 CALL TESTll030S1 Il = 00 EC l' 1 , I I IFII.EQ.21 GOTO 200 12= ODEC 112,1 I IFII.EQ.21 GOTO 200 IFIIl.LE.I21 GOTO 30 1= 11 11=12 12=1 GOTO 30 WRITEIOSM,lOll FORMATI' *** NON OCTAL INPUT STRING ***, TRY AGAIN :'1 GOTO 10 ENTRY GENlCONS,TYPE,ADR,INP,Nl 11=0 12=360 N=O NOPOT=TYPE.NE.5.AND.TYPE/lO.NE.5 DO 40 J= 11,12 IFI.NOT.AVAILlTYPE,CONS,J,INII GOTO 40 N=N+l ADRINl=I IFINOPOTI INPINl=IN CONTINUE RETURN RETURN 1 END SUBROUTINE INSATICONSOL,TYPE,N,OK,*1 INSAT IS THE STANDARD INPUT ROUTINE FOR S-A TESTS IMPLICIT INTEGERlA-Z) COMMON/DEVNR/OSM,ISM,OLM,OCH COMMON/ACTUAL/CNS COMMON ADR(200),INPl200) CNS=O WRITElOSM,lOl) FORMATl' WHICH CONSOL, 1 OR 2 :') READlISM,1021 CONSOL FORMATlIll CALL TESTll030S) GOTOllO,lO)CONSOL WR ITE l OSM ,103) FORMAT I , *** INPUT OUT OF RANGE ***') GOTO 20 CONTINUE CALL ADGENlCONSOL,TYPE,ADR,INP,OK,l030S) IFIOK.NE.O) GOTO 30 WRITElOSM,1051 FORMATl' NO EXISTING COMPONENTS IN THIS LIST'I CALL TESTll030S) GOTO 10 WRITElOSM,l06) FORMATl' HOW MANY TESTCYCLES, 2 DIGITS, DECIMAL :') REAOlISM,107)N FORMATlI21 CALL TESTll030S) IFlN.GE.llRETURN WRITElOSM,l08) FORMATl' POSITIVE INTEGER, PLEASE! :') GOTO 40 RETURNI END
SUBROUTINE SENSEI*1 C C**** SENSE TESTS THE SENSE-LINES C IMPLICIT INTEGERIA-ZI COMMON/SYSD/CONS,X,Y,MC,X8,X9 COMMON/ACTUAL/CNS CNS=O CALL SCHRI' MRT 9, SENSE-LINES',51 PAUSE 'WRIGHT INTRACOM-PANEL?' CALL CSENl1030S1 CALL SCHRI' MRT 9 END',31 RETURN 1030 RETURN1 END SUBROUTINE CSENI*1 IMPLICIT INTEGERIA-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM DO 10 1=1,32 CALL TESTlI030S1 K=I-l CALL TSENIK,FLAGI IFIFLAG.EQ.IIGOTO 10 K=OCTIKI WRITEIOSM,201 K FORMATI' S.L.',12,' DOES NOT WORK'I 20 10 CONTINUE RETURN 1030 RETURNl END SUBROUTINE TSENILINE,FLAGI IMPLICIT INTEGERIA-ZI FLAG=l CALL RSCOPILINE,KEYI IFIISENILINE,KEYI.NE.0IFLAG=2 CALL SCOPILINE,KEYI IFIISENILINE,KEYI.NE.1IFLAG=2 RETURN END SUBROUTINE XBRTI*,*1 C MANUAL MODE SECTION C ******************** ******************* C IMPLICIT INTEGERIA-O,T-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM C DUMMY WRITEIOSM,lOll FORMATI' »MANUAL MODE; COMMAND?'I 101 PAUSE 'MANUAL MODE NOT IMPLEMENTED' WRITEIOSM,1021 FORMATI' »MANUAL MODE LEFT'I 102 RETURN2 END SUBROUTINE EXPLNI*1 C INSTRUCT SECTION C *********************** ******************** C IMPLICIT INTEGERIA-O,T-ZI COMMON/DEVNR/OSM,ISM,OLM,OCM COMMON/SYSD/CONS,X,Y,MC,X8,X9,ITEMSlbl,COUNT 10 WRITEIOSM,lOll FORMATI' »INSTRUCT, WHAT?'I 101 CALL TESTl1030S1 CALL INPUT IFIX.EQ.11 WRITEIOSM,2001 FORMATI' »CONTINUES PROGRAM EXECUTION'I 200 IFIX.EQ.2.0R.X.EQ.3.0R.X.EQ.41 WRITEIOSM,2011 FORMATI' »RETURNS CONTROL TO UPPER LEVEL'I 201 IFIX.EQ.21 WRITEIOSM,2021 FORMATI' »IN MAIN PROGRAM: TERMINATES EXECUTION~I 202 IFIX.EQ.51 WRITEIOSM,2031 FORMATI' »ALLOWS USER TO MOOIFY:',/, 203 l' »CONSOLE NR.,ADDRESS OCCUPATION,TOLERANCES OR OPER. LABELS'I IFIX.EQ.l11 WRITEIOSM,2041 204 FORMATI' »CALLS MRT MODE; IN MRT: STARTS SEQUENCE AT MRT1' ,I, l'THE MRT IS AN AUTONOMOUS HYBRID TESTSEQUENCE'I IFIX.EQ.121 WRITEIOSM,2051 FORMATf' »CALLS SA MODE; IN SA: ALLOWS USER TO START NEW TEST', 205 1/,' »THIS MODE CONTAINS VARIOUS SPECIALISED TESTS'I IFIX.EQ.131 WRITEIOSM,20bl
206
FORMATI' »CALLS MANUAL MODE',I, 11 »THIS MODE ALLOWS USER TO CALL THE SOLE HYBRID LIB. ROUTINES') IFIX.EQ.21) WRITEIOSM,207) FORMATI' »MRTI TESTS THE ANALOG POWER SUPPLIES') 207 IFIX.EQ.14) WRITEIOSM,208) 208 FORMATI' »THIS COMMAND EXPLAINS THE FUNCTION OF A GIVEN NAME') IFIX.EQ.22) WRITEIOSM,Z09) 209 FORMATI' »MRT2 TESTS DVM/REF.DAC AND ANALOG MODE CONTROL') IFIX.EQ.23) WRITEIOSM,210) FORMATI' »MRT3 CHECKS THE ANALOG COMPONENT ADDRESSES') 210 IFIX.EQ.24) WRITEIOSM,211) 211 FORMATI' »MRT4 IS A HODAD AND SERVOPOT TEST') IFIX.EQ.lS1 WRITEIOSM,21Z) FORMATI' »DISPLAYS THE CURRENT HOP PAR.,OP.LBLS AND T.FILE USE') 212 GOTO 10 1030 RETURNI END