INNEHALL 7 7.1 7.2 7.2.1 7.2.2 7.2.3 7.2.4 7.2.5 7.2.6 7.2.7 7.2.8 t.3 DATORER Allmänt Digitl dtorer Orgnistion Ordmm Minnesenheten Aritmetisk enheten Styrenheten In/utenheten Avbrott Spräk och proglmm ering Anlog dtorer
7 DATORER 7.1 ALLMANT Den öknde komplexiteten hos modern vioniksystem och det likledes öknde behovet v noggrnn informtion ht lett till tt dtorer v olik slg numer instllers i de flest militär och i mäng civil flygpln. Med dtor skll vi här förstä en dtbehndlre som utn mänskligt ingripnde kn utför omfttnde beräkningr med stort ntl ritmetisk eller logisk opertioner. En förteckning över de ätgärder som dtorn vidtr klls progrm. Med hänsyn till den tidpunkt vid vilk dt berbets skiljer mn pä reltddsbeübetning oh stsvis berbetning. Vid reltidsberbetning rpporters och behndls omedelbrt vrje inträffd händelse (t ex mätning eller en knpptryckning), vrefter berbetde dt genst sänds vidre till en lämplig bonnent (t ex ett presenttionsorgn). Vid stsvis berbetning registrers en mängd vid olik tidpunkler inträffdc händelser, vrefter berbetning sker periodiskt (t ex en gäng/dg). Nvigeringsberbetningr görs prktiskt tget lltid i rel tid. Dt kn representers pä olik sätt. Huvudformern är nlog och diskret representtion. Anlog dt representers v kontinuerligt vribl fysiklisk storheter, t ex längder, vinklr, spänningr eller frekvenser. Diskret dt representers v tecken, vrvid vrje möjligt dtumvärde motsvrs v ett bestämt tecken eller v en bestämd teckengrupp. En räknestick eller en kvicksilvertermometer ger nlog dt; frän en kulrm, rdknesnurr eller trippmätre i en bil fäs däremot diskret dt. Om tecknen i den diskret representtionen utgörs v siffror klls representtionen digitl. Med hänsyn till representtionen v dt i dtorn tlr rnn om nlogddtoler (nlog representtion), digitldtorer (diskret representtion) hyblidddtorer (b^de nlog och diskret representtion). I digitldtorern nvänds vnligen en representtion om tvä tecken (oftst benämnd noll och ett). Dess kn representers v t ex hög respektive läg spänningr eller de tvä mgnetiseringsriktningrn i en järnkäm. Digitl dt mäste oft omvndls till nlog eller tvärtom. Dett görs i DIAomv n dlre och A I D o m vndlr e. De först flygburn dtorern vr nlog, decentrliserde enheter som vr speciltillverkde för tt berbet dt frän en eller fler sensorer och sedn sänd dess vidre för presenttion. Pä 6O-tlet kom centrldtorbegreppet tt dominer. En end dtor skulle sköt ll utomtisk dtbehndling i flygplnet. Det ökde berbetningsbehovet hr emellertid lett till tt mn pä senre är äter börjt instller med sensorer och instrument härt integrerde specildtorer som för- eller efterberbetr dt till och frän centrldtorn. Exempel pä olik nvändningsomräden för flygbum dtorer är. Luftdtberäkningr. Dtorn beräknr ur primär mätningr v tryck, tempertur m m flygplnets hstighet och höjd r Nvigeringsberäkningr. Här ingär positionsberäkningr ur primärdt frän RN-system, utomtisk dödräkning, smt styrorderberäkningr vid brytpunktsoch lndningsnvigering o Beräkning v bränslemrginler r Komplementär- och Klmnfiltrering v primärdt (vsn 14)
FV Nvgering.hndbok Förinställning och precedering v ttityd- och TN-plttformr Siktes- och vpenberäkningr Beräkning v dt för presenttionsutrustningr Funktionskontroll Dtregistrering 7.2 7.2.1 DIGITALA DATORER Olgnistion En typisk digitl dtor bestär i llmänhet v fyr huvudenheter: styrcnhet, minne. inlutenhet och ritmetisk enhet (brld 7. I ). Minnesenheten nvänds för tt lgr progrminstruktioner och ndr dt. Den ritmetisk enheten utför ritmetisk opertioner och ndr mnipultioner pä dt. In/utenheten (oft fler enheter) hndhr dtorns förbindelser med omvärlden (instrument, presenttionsorgn, reglge etc). Styrenheten smordnr och dministrerr de övrig enheterns verksmhet i enlighet med det i minnet lgrde progrmmet. Det är inte lltid möjligt tt fysiskt sänkilj styrenhet och ritmetisk enhet eftersom de oft är strkt integrerde. De brukr oft smmnftts under benämningen centrlenhet. 7.2.2 Ordmm Den minst informtionsbärnde enheten är i de flest dtorer en binnr siffr (bit, phtr bitr) dvs en ett eller noll. Bitrn smordns till ord om 8-64 bitr som representerr dt. Överföring v ett ord frän en del v dtorn till en nnn kn ske pä tvä sätt: i serie eller prllellt. Vid serieöverföring behndls en bit i tget, medn mn i prllellvrinten överför fler bitr (t ex ett helt eller ett hlvt ord) pä en gäng. Den senre metoden är snbbst; den fön kräver mindre komplicerd ketsteknik och är därför billigre. I minnen hos flygburn dtorer bestär de dt som ej är instruktioner vnligen v tl. Dess kn representers pä tvä sätt: /st tlsrepresenttion och flyttlsrepresenttion. Vid fsttlsrepresenttion är decimlkommts plcering underföntädd och konstnt. Vid flyttlsrepresenttion nges även en exponent som utmärker decimlkommts plts. Mn hr dä stöne möjlighet tt lät tlet vrier melln vitt skild storleksordningr. Ar ordlängden liten representers tlen vnligen v tvä ord (dubbelord). För tt nge en deciml siffr krävs i genomsnitt c 3.3 bitr. Desutom mäste en (fsttlsrepr) eller tvä (flyttlsrepr) bitr reservers för tecken. Bild 7.1 Digitldtor, blockschem
7 Dtorer 5 Ord kn även innehäil progrminstruktioner. Dess bestär v en opertionsdel och en dressdel. Opertionsdelen nger vd som skll görs (t ex en ddition) medn dressdelen nger den loktion (plts) i minnet eller de register i ritmetisk enheten som berörs v opertionen. Med en loktion förstäs här en dresserbdr enhet i minnet eller ritmetisk enheten. Normlt rymmer en loktion ett eller ett hlvt ord, men det finns ocksä dtorer där mn kn dresser enstk bitr. En bit i vrje ord brukr nvänds som pitetsbit- den väljs sä tt totl ntlet ettor i ordet lltid är t ex udd. Härisenom kn dtorn utför en utomtisk felkontroll. 7.2.3 Minnesenheten Minnen hos flygburn dtorer brukr f n (1972) h en utrymmeskpcitet om 2000-64 000 ord. I flygburn dtorer nvänds vnligen direktmirzne, dvs minnen där vrje ord kn näs pä en tid som är oberoende v oidets läge i minnet. (cykeltiden, dvs den tid det tr tt läs och äter lgr ett ord i ett direktminne rör sig f n hos snbbre dtorer om 1l ps. Sekvensminnen ä nd,r sidn mäste lltid eenomsöks i viss följd tills mn finner vd mn söker. Mäng dtorsysten hr fler minnen: ett p/in tjrminne, som hr direktförbindelse med centrlenheten, där progrminstruktioner och ktuell dt lgrs smt ett eller fler sekundtirminnen där stor mängder mindre ktuell dt lgrs. Sekundärminnet kn endst utbyt dt med primärminnet, ej med nägon nnn enhet. Med, eti flyktigt minne förstäs ett minne vrs innehäll förstörs vid strömvbrott. Vid flygburn tillämpningr där dtorn oft rbetr i en päfrestnde miljö är det önskvärt med icke-flyktig m innen. Fst minne (skrivskyddt minne)klls ett minne där det krävs speciell ingrepp för tt lgr inform tion. För tt ök tillförlitligheten är i flygburn dtorer oft den del v minnet där progrminstruktionern och yiss konstnter är lgrde skrivskyddd. Det för närvrnde vnligste pdmärminnet är l({imminnet som är ett ickeflyktigt minne. Det bestär v ett ntl (en för vrje bit) ferritringr, vilks mgnetiseringsriktning vgör om respektive bit är en ett eller noll. Lgring och läsning sker genom tt sänd elektrisk pulser genom trädr som genomlöper ringrn i ett visst mönster. Läsning v informtion leder i konventionell typer v kärnminnen vnligen till tt informtionen förstön och därför omedelbrt mäste äterlgrs. Speciell typer v kärnminnen hr utvecklts där denn nckdel eliminerts, vrigenom tillförlitligheten kn öks. Nckdelrn är främst tt kostndern ökr och snbbheten minskr. Hos s k mgnetminnen lgrs informtionen i ett tunt mgnetiserbrt skikt som kn vr plcert pä ett bnd (bndminne), en roternde cylinder ( trumminne) eller en roternde skiv (skivminne,,l. Lgring och läsning sker genom tt mn läter skiktet psser och växelverk med ett mgnethuvud. Denn typ v minnen nvänds som sekundärminnen, och hr hittills rönt fög nvändning för flygbruk. I börjn v 7O-tlet kommer emellertid s k utomtisk integrerde dtsystem (dtloggr) tt ts i bruk för flygpln. Systemen registrerr pä bndspelre under flygningen dt som efterät kn (stsvis) berbets för bl utbildnings-, underhälls- och flygsäkerhetsndmäi. Spningstillämpningr är ocksä tänkbr.
FV Nvigeringshndbok Aven trumminnen och skivminnen (som i motsts till bndminnet är direktminnen) vänts fä viss nvändning i flygpln. Den stor kpciteten gör tt de lämpr sig för lgring v icke regelbundet nvänd progrm (t ex viss testprogrm eller progrm vsedd tt nvänds vid speciell uppdrg). När progrmmet skll nvänds {lytts det över till kärnminnet. Minnen bserde pä hlvledrteknik hr ocksä pä senre är börjt nvänds i flygpln. Hlvledrminnen är ( 1972) ntingen flyktig och dä mindre lämplig för flygbruk eller ocksä fst. I motsts till ferritminnen där skrivskyddet ästdkomms med kretsteknisk medel härrör >fstheten) hos hlvledrminnen frän ders fysiklisk egenskper, vilket gör en omprogrmmering reltivt besvärlig. 7.2,4 Aritmetisk enheten Aritmetisk enheten bestär v ett eller fler register (loktioner vsedd för speciell ändmäl) smt logisk och ritmetisk kretsr som utför de ritmetisk opertionern. I registren lgrs de ord som skll behndls v enheten eller är resulttet v behndlingen. De ritmetisk kretsrn bestär i sitt enklste utseende endst v en dderre. Smtlig elementär räkneopertioner kn nämligen genom viss mnipultioner bryts ned till dditioner. I llmänhet finns dock särskild fciliteter för multipliktion och division inbyggd. Typisk opertionstider för flygburn högprestnddt orer tu (1972): ddition. subtrktion 3 s multipliktion 6 ps division l0 ps 7.2.5 Styrenheten Styrenheten innehäller bl vkodrkretsr, klock och diverse register. Avkodren översätter de frän minnet hämtde instruktionern till signler som genererr respektive opertion i de övrig enhetern. Klockn utgörs vnligen v en pulsgenertor med stbil pulsfrekvens. I synkron dtorer kn de olik opertionern endst päbörjs dä genertorn ger ifrän sig en puls. I synkron dtorer päbörjs istället vrje opertion när den föregäende vsluts. Den senre typen kn i princip görs snbbre, men kräver mer komplicerd elektronik. Klockn spelr ocksä stor roll för väro ttsystemet (vsn 7.2.7) Indexregistren möjliggör flexibilitet i dresseringen genom tt mn dderr innehället i ett v dess till en del v dressdelen v instruktionen. Härigenom kn dressen vrier med indexregistrets innehäll. I instruktionsdressregßtret lgrs dressen till den instruktion som är under utförnde. Indiktorrcgßter (som i llmänhet är smä, med plts för en eller ett pr bitr) nvänds för ett flertl uppgifter. De kn t ex indiker pritetsfel, spill (en dtmetisk opertion ger ett resultt som ej fär rum i ett ord), otilläten opertion (t ex division med noll) eller tecknet pä resulttet v en ritmetisk opertion' 7.2.6 In/utenheten In/utenheten sköter dtorns förbindelser med omvärlden, t ex givre, presenttionsorgn (vsn l1) och mnöverorgn m m. I mäng system hr mn skild enheter för in- och utmtning och mn kn ocksä h fler enheter v vrder slget. Kontktern med omvärlden kn h bäde digitl och nlog form. I det senre fllet mäste in/utenheten vr försedd med D/A- och Ä',/D-omvndlre. De olik informtionskällom kn h mycket olik intensitet. En kurs- eller frtgivre kn ge prktiskt tget kontinuerlig informtion, medn t ex DMEfixr endst kommer in med (reltivt) stor och oregelbundn mellnrum.
7 Dtcrer Av dess skäl mäste informtion v den senre typen ges prioritet för tt inte gä förlord. Alterntivt kn in/utenheten vr försedd med buffertegister där informtionen kn lsrs tills minnet kn t emot den. 7.2.7 Avbrott Viss regelbundet eller oregelbundet inträffde händelser gör det iblnd nödvändigt tt vbryt körningen v det pägäende progrmmet lör tt hopp in i ett nnt progrm. När det ny progrmmet fullföljt sin uppgift kn ätergäng till det gml eller inhopp i ett tredje progrm ske. De vbrytnde progrmmen kn ges olik prloritet sä tt lägprioriterde progrm ej kn vbryt ett högre prioritert progrm utn mäste vänt tills det förr kvittert, dvs deklrert tt det fulltöljt sin uppgift. Nedn följer nägr exempel pä typisk vbrott i en fl ygburen dtor (i tänkbr prioritetsordning). Frdn- och tillsldg v sptinning. Dtorn kn i llmänhet fortsätt tt rbet ett ntl ps efter det tt mtningsspänningen börjt sjunk. Under denn tid genomlöps ett progrm som förbereder dtorn för fömyt rbete otn spänningen äter släs till. Om dett inträffr, sker inhopp iill ett progrm som äterställer dtorn i det tillständ som rädde före fränslgct. Progrmfel, t ex spill, pritetsfel, otilläten opertion, skrivorder till skrivskyddd loktion. Avbrott v denn typ leder till inhopp i lämpligt dignosprogrm som söker detekter felet. Inlutmtning kn led till vbrott med regelbundn eller oregelbundn mellnrum. In/utknlern kn sinsemelln vr prioriterde. Klockvbrott inträffr med regelbundn mellnrurn. Huvudprogrmnret genomlöps normlt en gäng per smplingsintervll (typisk längd:c 100 ms). Därefter finns i llmänhet tid över innn smplingsintervllet är slut. Denn tid kn nvänds för ett lägre prioritert progrm, t ex funktionskontroll. När smplingsintervllet är slut sker klockvbrott och äterinhopp i huludprogrmmet. Iblnd mäste viss beräkningr utförs flcr gänger per smplingsintervll. I sä fll mäste ytterligre klockvbrott införs. 7.2,8 Spräk och progrmmering Ett progrm skrivet pä en för dtorn dirckt begriplig form (pä muskinsprdk) tttgörs väsentligen v ett ntl instruktioner skrivn med ettor och nolior. Att progrmmer i ett sädnt spräk är utomordentligt besvärligt och tidsödnde. Proceduren underlätts väsentligt om mn i stället nvänder ett s k dssembleringssprdk som skrivs med bokstäver och deciml siffror och där vrje sts svrr mot en viss instruktion i mskinspräket och omvänt. Översättning sker med ett speciellt progrm som klls ssembleringsprogrm. Högte problemorienterde spräk som t ex ALGOL eller FORTRAN tilläter progrmmerren tt nvänd komplicerde ritmetisk uttryck som vrt och ett motsvrr en stor mängd stser i mskin- eller ssemblerspräk. Översättning till mskinspräk sker här med ett progrm som klls kompiltor. Progrm skrivn i dess spräk kräver i llmänhet större minnesutrymme och längre beräkningstid än ssembleringsprogrm. I gengäld gär progrmmeringen längsmmre med dc senre. Vid progrmmering v fiygburn dtorer nvänds i llmänhet ssembleringsspräk. När progrmmet ssemblerts (kompilcrts; dvs överstts), lgrs det i minnet som en följd v instruktioner. En instruktion upptr vnligen en eller tvä hel minnesloktioner och bestär som förut frmgätt v tvä delr, opertionsdel och dressdel. Opertionsdelen nger vd som skll uträtts och dressdelen nger vilken minnesloktion e d som berörs. Instruktionern utförs efter inls-
FV Nvigeringshndbok ning till styrenheten normlt i ordning efter de loktioner ivilk de är lgrde. Med s k hoppinstruktioner kn dock denn ordning bryts' Vi skll vis ett prov pä hur en progrmsekvens i ssemberingsspräk för en (mycket enkel) dtor kn se ut. Progrmmet läser frän in/utenhetens inknl nr 6 ktuell kurs som sedn lgrs i dtorns minne och jämförs med i dtorn lgrd kommenderd kurs. Skillnden sänds i form v styrorder vidre till t ex siktlinjesindiktom genom in/utenhetens knl 8. Cell nr Opertionsdel Adressdel 0031 0032 0033 0034 IN SKR SUB UT 6 KURS KOMKURS 8 Instruktionssekvensen är lgrd i minnescellern 3 I -34. Instruktionen i cell 31 läser v in/utenhetens inknl nr 6 och plcerr informtionen i ett register i ritmetisk enheten. Utn tt registerinnehället förstörs skrivs dett sedn med instruktionen i cell 32 in i en minnesloktion som i progrmmet hr nmnet KURS. (Numret pä denn loktion behöver i llmänhet ej specificers v progrmmerren - det sköter i stället ssemblern om). Instruktionen i cell 33 iubtrherr sedn innehället i en loktion med nmnet KOMKURS frän innehället i registret, som sedn innehäller skillnden (loktion KOMKURS ändrs ej). Slutligen utmts med instruktionen i cell 34 registerinnehället till indiktorn, Yrvid registret förblir oförändrt. Motsvrnde progrmsekvens skulle i mskinspräk bestä v fyr (t ex) 24-siffrig binär tl. I ALGOL skulle sekvensen kunn se ut sä här: Red (6) kurs; styrorder: = kurs-komkurs; write (8) styrorder; ( I-räsren bör observer tt i levnde livet är beräkning v styrorder en längt mer komplicerd procedur än vd som här hr ntytts). Viss typer v beräkningr (t ex trigonometrisk funktioner och rotutdrgningr) behöver oft genomförs fler gänger i ett progrm. De plcers dä i specilprogtm, sk subrutinel vilk nrops v hurudprogrmmet sä snrt en dylik beräkning mäste görs. 7.3 ANALOGA DATORER Anlog dtorer nvänder kontinuerlig storheter, t ex spänningsniväer, vridningsvinklr eller frekvenser för tt representer olik prmetrr' De bestär v elektrisk, meknisk och hydrulisk komponenter som oft är strkt integrerde med de instrument, mnöver- och presenttionsorgn med vilk de smrbetr' Anlogdtorer kn utför elementär ritmetisk opertioner, beräkn trigonometrisk funktioner, utför koordinttrnsformtioner deriver och integrer, smt lös enkl differentilekvtioner. De är lämplig tt nvänd när uppgiften är tt snbbt och med mättlig noggrnnhet lös ett fätl differentil- eller lgebrisk ekvtioner. De pssr däremot inte för noggrnn beräkningr och stor dtmängder. Nägot liknnde de digitl dtorems progrm finns ej, utn )progrmmeringeo bestär i tt pä lämpligt sätt smmnkoppl de olik komponentem. Utvecklingstendensern tycks för närvrnde vr inriktde pä olik typer v hy bidiseing, dvs blndning v digitl och nlog teknik. Dett yttrr sig dels i tt delr v nlogdtorern digitlisers (vilket ocksä innebär tt elektronisk komponenter breder ut sig pä de meknisks bekostnd), dels i tt nlogdtorer nvänds för speciell ändmäl i ett i övrigt digitlt system, t ex för förberbetning v dt frän sensorer innn de sänds vidre till den digitl centrldtorn.