Nord-10
Utvecklare | Norsk Data |
---|---|
Tillverkare | Norsk Data |
Produktfamilj | Nord |
Typ | Minidator |
Generation | 3 |
Utgivningsdatum | 1973 |
Livslängd | 1973–1979 |
Avvecklad | 1979 |
Operativ system | Sintran III |
CPU | 16-bitars |
Kamera | ingen |
Pekplatta | ingen |
Företrädare | Nord-1 |
Efterträdare | Nord-100 |
Hemsida |
Nord-10 var en medelstor generell 16-bitars minidator designad för flerspråkiga tidsdelningsapplikationer och för realtids flerprogramsystem, producerad av Norsk Data . Den introducerades 1973. Den senare uppföljningsmodellen, Nord-10/S, introducerades 1975, introducerade CPU-cache , personsökning och andra diverse förbättringar.
CPU:n hade en mikroprocessor, som definierades i manualen som en portmanteau av mikrokodprocessor , inte att förväxla med den då begynnande mikroprocessorn. CPU:n innehöll dessutom instruktioner, operatörskommunikation, bootstrap-laddare och hårdvarutestprogram, som implementerades i ett 1K skrivskyddat minne .
Mikroprocessorn gjorde det också möjligt för kundspecificerade instruktioner att byggas in. Nord-10 hade ett minneshanteringssystem med hårdvarusökning som utökade minnesstorleken från 64 till 256K 16-bitars ord och två oberoende skyddssystem, ett som verkade på varje sida och ett på instruktionernas sätt. Avbrottssystemet hade 16 programnivåer i hårdvara, var och en med sin egen uppsättning allmänna register.
Obs: Mycket av följande information är hämtad från ett dokument skrivet av Norsk Data som introducerar Nord-10. Viss information, särskilt om minnessystemet, kan vara felaktig för den senare Nord-10/S.
Central processor
Den centrala processorenheten (CPU) bestod av totalt 24 kretskort . De sista åtta positionerna i racket användes för in-/utgångsenheter (I/O) som styrdes av programstyrning, såsom konsolfjärrskrivare ( teletyp), pappersstansad tejp och hålkortsläsare och stans, linjeskrivare, display, operatörspanel , och en realtidsklocka .
Nord-10 hade 160 processorregister , varav 128 var tillgängliga för program, åtta på var och en av de 16 programnivåerna. Sex av dessa register var allmänna register, ett var programräknaren och det andra innehöll statusinformation. Flyttalsaritmetiska operationer var standard. Instruktionerna kan fungera på fem olika format, en bit , en 8-bitars byte , 16-bitars ord, 32-bitars dubbla ord och 48-bitars flyttalsord.
Minne
Det slumpmässiga minnessystemet i de första Nord-10:orna byggdes upp av 8K 16-bitars moduler inrymda i ett speciellt minnesställ. Ett 19-tumsställ kan rymma upp till åtta 8K-moduler. Det var möjligt att utöka Nord-10:s fysiska adressutrymme utöver 64K upp till maximalt 256K 16-bitars ord. Personsökningssystemet översatte en 16-bitars virtuell adress till en 18-bitars fysisk adress .
Hårdvarusökningssystemet gjorde det möjligt för en användare att skriva program upp till 64K (virtuellt minne), och att endast delar av programmet fanns i det fysiska minnet när som helst (med dynamisk minnesallokering). Personsökningssystemet delade upp minnet i 1K sidor. De fyra sidornas indextabeller hittades i ett 256 ord extremt snabbt minnesblock. Beräkningen av en fysisk adress resulterade inte i någon nämnvärd fördröjning av den effektiva minnescykeltiden.
Nord-10 hade två oberoende skyddssystem. Varje enskild sida skulle kunna skyddas mot att läsas från, skrivas in i (typdata eller typinstruktioner) eller mot läsning av instruktioner. Dessutom fanns ett system som delade in sidorna i fyra olika kategorier, kallade ringar. Ringarna åt sidorna på en högre ring. Program som kördes på ring 2 och 3 kunde använda hela Nord-10-instruktionsuppsättningen, medan program på ring 0 och 1 endast hade en begränsad instruktionsuppsättning tillgänglig. De olika ringarna visades på operatörspanelen. Till exempel kan ring 0 (användare) ha innehaft ett användarprogram, medan kompilatorer och sammanställare körde i ring 1 (skyddad användare). Huvuddelen av operativsystemet kan köras i ring 2 (System) och kärnan i ring 3 (Protected System). Om man försökte utföra privilegierade instruktioner i ring 0 eller 1, eller försök gjordes att komma åt en skyddad sida, skulle ett hårdvarustatusavbrott automatiskt genereras på programnivå 14 som indikerar felet.
I/O-system och bussarkitektur
NORD-10 var utrustad med ett gemensamt bussystem för alla externa kringutrustningar . Bussystemet var indelat i grupper och mycket ansträngning hade gjorts för att säkerställa att ingen enhet skulle kunna blockera bussystemet vid fel. Varje grupp hade sin egen styrenhet som förutom att fungera som en elektronisk växel för bussystemet, även kunde ändra prioritet för hela gruppen. Alla sammankopplingar mellan korten gjordes med flerlagers kretskort med bakledningar , och alla in-/utgångsgränssnitt hade samma standardform. Systemet kan därför utökas eller konfigureras om genom att koppla in nya eller byta runt de befintliga gränssnittskorten. Placeringen av enhetsgränssnittet i kortstället bestämde enhetens avbrottsprioritet . Vid direkta minnesåtkomstöverföringar skulle enheten skicka en begäran . CPU:n skulle svara med en beviljande signal, som skulle skickas från enhet till enhet tills den kom till enheten som initierade begäran och överföring till minnet kunde ske. När två eller flera enheter begär en DMA-begäran samtidigt till CPU hade högsta prioritet. En minnescykel senare skulle nästa DMA längs kedjan tillåtas att skicka data, och så vidare, tills en enhet med högre prioritet igen skickade en begäran. Detta innebar att många DMA-enheter kunde använda samma bussystem med full dataöverföringshastighet. Det var inte nödvändigt att upprätta en master-slav- förbindelse. Överföringen var ett 16-bitars ord/850 nanosekunder, eller 2,2 MB/s.
Det tryckta bakplanet på I/O-bussen var modulärt i grupper om 8 gränssnittsplatser. Gränssnitt för masslagring som disk , trumma , magnetband , etc. byggdes med ett gränssnittskort som skulle pluggas på lämplig plats i bussystemet, de återstående styrkorten (6-7) placerades i en av bakplansmodulerna .
Avbryta systemet
Nord-10 hade ett multiprogramsystem med 16 prioriterade programnivåer. Varje programnivå hade sin egen uppsättning register, inklusive en programräknare och ett statusord . Nivåerna som körs kan visas på frontpanelen genom att trycka på knappen "aktiva nivåer". Nivåerna 0 till 9 användes för program. Interna hårdvarustatusavbrott tilldelades nivå 14, medan nivå 15 var reserverad för extremt snabba användaravbrott (detta kallades i dagligt tal "synkrotronnivån", eftersom det enda programmet som någonsin har använt det var programmet som styrde synkrotronen på CERN )
Nivåerna 10, 11, 12 och 13 var reserverade för externa enheter. Varje enhet hade sin egen unika identifieringsvektor. Sammanlagt 2048 sådana vektorer fanns tillgängliga. "ident"-instruktionen bestämde vilken enhet som gav ett avbrott. Identifieringen av ett avbrott tog 1,7 mikrosekunder, inklusive tiden det tog att aktivera och inaktivera registren.
Systemmjukvara
Nord-10 levererades med ett tidsdelat system, Nord-TSS, och ett multitasking- operativsystem i realtid , Sintran III . Minsta konfigurationen för Sintran III inkluderade en standard Nord-10 med 8K magnetiskt kärnminne .
Med NORD-TSS kunde alla användare samtidigt köra vilket som helst av systemen Fortran IV , BASIC , MAC Assembler , NODAL , NORD-PL eller QED .
Kända återstående system
Det finns flera Nord-10- och Nord-10/S-system som är kända för att finnas kvar, varav många är i nästan operativt skick, och flera är under vård av NODAF. Återställningar av system planeras i både Oslo av NODAF [1] och Trondheim av Norges tekniska och naturvetenskapliga universitet .
Dess föregångare var Nord-1 och dess efterföljare Nord-100 .