"Von Neumann" architektūra: termino kilmė
Taip pat žinoma von Neumanno mašinos architektūrakaip von Neumanno modelis arba Prinstono architektūra, remiasi 1945 m. aprašytu metodu, kurį matematikas ir fizikas John von Neumann aprašė "First Project" ataskaitoje apie EDVAC kompiuterį.
Architektūros kontūrai
"The von Neumann report" apibūdino elektroninio skaitmeninio kompiuterio architektūros schemą su dalimis, kurias sudaro procesoriai, kuriuose yra:
- aritmetinis loginis įrenginys;
- procesoriaus registrai;
- valdymo blokas, kuriame yra komandų registras ir komandų skaitiklis;
- saugojimo įrenginys duomenims saugoti;
- išorinis saugojimo įrenginys;
- įvesties ir išvesties mechanizmai.
Vystymosi prasmė buvo ta, kad bet kokiaKompiuteriu saugomą informaciją galima naudoti programoje, kurioje vienu metu negalima atkurti pasirinktų operacinių duomenų, nes jie naudojasi bendra autobusu. Tai paminėta "Pirmasis projektas", kuriame aprašytos mokslininko minties apie tai, kokia architektūra turėtų būti. Von Neumannas šią situaciją pavadino "butelio kakliuku", kuris dažnai riboja sistemos našumą.
Von Neumanno architektūros principai
Skaitmeninis kompiuteris yra kompiuteris, kuriame saugoma programa,kuriame yra programos instrukcijos, skaitymo, rašymo duomenys, taip pat yra laisvosios kreipties atmintis (RAM). Jono von Neumanno architektūros principai taip pat išdėstyti jo darbe "Pirmasis projektas". Pasak jo, kompiuteriai, kurių atmintyje saugoma programa, buvo kompiuterių valdymo pagerėjimas, pvz., ENIAC. Pastarasis buvo užprogramuotas nustatant jungiklius ir įterpiant pleistras, kuris veda prie duomenų perdavimo ir valdymo signalų tarp įvairių funkcijų blokų. Daugumoje šiuolaikinių kompiuterių atmintis taip pat naudojama panašiu būdu. Tuo pačiu metu, von Neumanno kompiuterio architektūra, pavyzdžiui, skiriasi nuo Harvardo, nes ji naudoja ne pagrindinę, bet laikinąją atmintį.
Priešistorė
Pirmieji kompiuteriai buvo iš anksto nustatytifiksuotos programos. Kai kurie labai paprasti kompiuteriai vis dar naudoja šį dizainą arba paprastumo, arba švietimo tikslais. Pavyzdžiui, kompiuterio skaičiuoklė taip pat yra kompiuteris su fiksuota programa. Jis gali dirbti su matematikos pagrindais, tačiau jis negali būti naudojamas kaip teksto redaktorius ar žaidimų konsolė. Pakeitus fiksuotą mašinos programą, reikia iš naujo įrengti, pertvarkyti ar reorganizuoti mašiną. Ankstyviausi kompiuteriai nebuvo tokie siaurūs, nes jie buvo sukurti pirmą kartą ir moksliniams tikslams. Perprogramavimas atsirado daug vėliau, ir tai buvo daug laiko reikalaujantis procesas, pradedant nuo blokinių diagramų ir popierinių sąskaitų, baigiant išsamiais techniniais projektais. Ypač sudėtinga buvo mašinų atstatymo kanalų fizinės modernizacijos procesas. Programos įdiegimui ENIAC gali užtrukti tris savaites ir pabandyti ją pradėti dirbti.
Nauja idėja
Su kompiuterio, kuriame saugomos programos, pasiūlymasatmintis, viskas pasikeitė. Saugomi atmintyje - tai dizainas su instrukcijų rinkiniu. Taigi, mašina gali nedelsdama gauti skaičiavimų komandų rinkinį.
Remiantis šių programų projektavimusavarankiškai modifikuoti kodai. Vienas iš pirmųjų tokio objekto įrenginių buvo algoritmo, kuris padidintų ar kitaip pakeistų komandų adresų dalį, poreikis. Tai buvo padaryta rankiniu būdu ankstyvuoju dizainu. Tai tapo mažiau reikšminga, kai indekso registrai ir netiesioginis adresavimas tapo įprastais požymiais, kuriuos turi kompiuterio "John von Neumann" kompiuterio architektūra. Kitas naudojimas yra dažnai naudojamų duomenų įvedimas į komandinį šriftą, naudojant greitą sprendimą. Tačiau savireguliavimo kodas buvo labai kritikuojamas, nes jį paprastai sunku suprasti ir derinti. Be to, jis taip pat buvo neefektyvus šiuolaikinių procesorių atkūrimo ir saugojimo schemų požiūriu.
Apskritai, gebėjimas susieti suDuomenų nurodymai yra tai, ką surinkėjai, kompiliatoriai, statybininkai, krautuvai ir kiti įrankiai su galimais automatizuoto programavimo objektais. Taigi sakyk, rašyk programas, kurios rašo programas. Mažesniu mastu, pasikartojančiais intensyvūs įvesties ir išvesties operacijų, pavyzdžiui, BitBlt-vaizdo manipuliacijų primityvių arba pikselių ir viršūnių shaders šiuolaikinių 3D-grafika, buvo nustatyta, kad neveiksminga paleisti be vartotojo įrenginių.
Programoje saugomos atmintyje koncepcijos kūrimas
Matematikas Alanas Turingas, kuris buvo suinteresuotasį matematinės logikos problemos po Max Newman paskaitos Kembridžo universitete, parašė straipsnį 1936 metais, jis buvo paskelbtas Londono Mathematical Society leidimas. Be to, jis aprašė hipotetinę mašina, kurią jis pavadino "Universal skaičiavimo mašina", ir kuri dabar žinoma kaip universali Tiuringo mašina. Ji turėjo begalinį saugojimo (šiuolaikinėje terminologijoje - atminties), kuriame yra abu instrukcijas ir duomenis, kurie buvo sukurta ir architektūra. Von Neumann susipažino su Turingo tuo metu, kai jis buvo vizituojantis profesorius Kembridžo 1935, o ginti daktaro disertaciją ne Turingo Institute for Advanced Study Prinstono (New Jersey) į 1936-1937 metu.
Nepriklausomai vienas nuo kito, Ji Presper Eckert irJohn Mauchly, kuris sukūrė ENIAC Pensilvanijos universiteto Elektros inžinerijos mokykloje, parašė apie mašiną, saugojusią programą atmintyje 1943 m. Gruodžio mėn. Planuodama naują mašiną EDVAC, Eckert 1944 m. Sausio mėn. Rašė, kad ji saugo duomenis ir programas naujame įrenginyje, kuriame yra atminties nukreipimas, atidedant metalinį gyvsidabrį. Tai buvo pirmas kartas, kai buvo pasiūlyta įrenginio, saugančio programą atmintyje, statyba. Tuo pačiu metu jis ir Mauchly nežinojo apie Turingo darbą (nuotrauka žemiau).
Kompiuterių architektūra: von Neumann principas
Von Neumann dalyvavo Manheteno projekteLos Alamos nacionalinė laboratorija, kuriai reikėjo didžiulių skaičiavimų. Tai pritraukė jį į ENIAC projektą 1944 m. Vasarą. Ten jis prisijungė prie diskusijų dėl EDVAC kompiuterio kūrimo. Pagal šią grupę jis parašė straipsnį "Pirmoji EDVAC ataskaitos projektas", pagrįstas Eckerto ir Mauchly darbais. Jis buvo neišsamus, kai jo kolega Goldsteinas skleidė projektą su pavadinimu von Neumannu (beje, Eckertas ir Mauchly jų šoktelėjo). Šį dokumentą skaitė dešimtys kolegos von Neumanno Amerikoje ir Europoje ir turėjo didžiulę įtaką kitam kompiuterių kūrimo etapui.
Pagrindiniai von Neumanno architektūros principai,aprašytas "Pirmasis projektas", įgijo didelį populiarumą, o Turingas pateikė savo ataskaitą apie elektroninį skaičiuotuvą, kuris buvo išsamiai apibūdintas inžinerijos ir programavimo srityse. Jame buvo autoriaus pateiktas aparatas, kuris vadinamas Automatinio kompiuterio varikliu (ACE). Jis pristatė jį 1946 m. Didžiosios Britanijos nacionalinės fizinės laboratorijos vykdomajam komitetui. Po kurio laiko buvo padaryta netgi įvairių sėkmingų "ACE" dizaino realizacijų.
pradėti projektai
Tiek von Neumannas, tiek Turingo dokumentaiaprašyti kompiuteriai, kurie saugo tam tikrą programą atmintyje, bet von Neumannas pasiekė didesnę apyvartą visuomenėje, o kompiuterių architektūra tapo vadinama "John von Neumann" architektūra.
1945 m. Prof. Neumannas, kuris tadadirbo Filadelfijos inžinerijos mokykloje, kurioje buvo pastatytas pirmasis ENIAC, kolegų grupės vardu išleido pranešimą apie skaitmeninių kompiuterių loginį dizainą. Ataskaitoje pateikiamas gana išsamus pasiūlymas dėl mašinos, kuri nuo šiol tapo žinoma kaip EDVAC, projektavimas. Tai buvo neseniai įsteigta Amerikoje, tačiau ataskaita įkvėpė von Neumanną sukurti EDSAC.
Maniacs ir Joniacs
1947 m. Burksas, Goldsteinas ir von Neumannaspaskelbė kitą pranešimą, kuriame buvo aptariamas kito tipo mašinos (šiuo metu lygiagretus) projektas, kuris turėjo būti labai greitas, galintis atlikti iki 20 000 operacijų per sekundę. Jie pažymėjo, kad neišspręstos problemos kuriant ją buvo tinkamos atminties kūrimas, visas turinys turėtų būti iš karto prieinamas. Pirmiausia jie pasiūlė naudoti specialų vakuuminį vamzdį, vadinamą "Selectron", kuris buvo išrastas Princetono laboratorijoje. Tokie vamzdžiai buvo brangūs ir labai sudėtingi, ypač jei naudojama ši architektūra. Vonas Neumanas vėliau nusprendė statyti mašiną, pagrįstą "Williams" atmintimi. Ši mašina, kuri buvo baigta 1952 m. Birželio mėn. Prinstone, tapo plačiai žinoma MANIAC (arba tiesiog Maniacs). Jo dizainas įkvėpė kūrėjus kurti pusę ar daugiau panašių prietaisų, kurie šiuo metu yra statomi Amerikoje ir yra vadinami kominiškais Johnykais.
Kūrimo principai
Vienas iš moderniausių skaitmeninių kompiuterių,įkūnijantis plėtrą ir pagerinti automatinio elektroninių skaičiavimo technika buvo įrodyta ne National Physical Laboratory Teddington, kur jis buvo suprojektuotas ir pastatytas nedidelis grupės matematikai, inžinieriai bei mokslinių tyrimų inžinierių, su iš gamybos inžinierių skaičių paramą iš anglų Electric Company Ltd. Įranga vis dar yra laboratorijoje, tačiau tik kaip žymiai didesnio įrenginio prototipas, kuris vadinamas Automatinio skaičiavimo varikliu. Tačiau, nepaisant santykinai nedidelės masės ir tik 800 termiacinių vožtuvų turinio, tai itin greita ir universali skaičiavimo mašina.
Pagrindinės sąvokos ir abstrakti skaičiavimo principaiMašinos buvo parengtos Dr. Turingo pagrindu toje pačioje Londono matematinių visuomenėje dar 1936 m., Tačiau karo darbas su tokiomis mašinomis JK buvo uždelstas. 1945 m. Nacionalinių fizikinių laboratorijų tyrimo klausimas dėl tokių prietaisų kūrimo buvo tęsiamas dr. Vormsley, Matematikos katedros laboratorijos viršininkas. Jis prisijungė prie Turingo su mažais specialistų darbuotojais, o iki 1947 m. Preliminarus planavimas buvo pakankamai išvystytas, kad pateisintų specialios grupės kūrimą.
Pirmieji kompiuteriai von Neumanno architektūroje
Pirmasis projektas apibūdina schemą, kurią daugelis universitetų ir korporacijų naudojo kurdami savo kompiuterius. Tarp jų tik ILLIAC ir ORDVAC turėjo suderinamus instrukcijų rinkinius.
Klasikinė von Neumanno architektūra buvoyra įkūnyta Mančesterio mažoje eksperimentinėje mašinoje (SSEM), vadinama "Baby" iš Mančesterio universiteto, kuri pirmą sėkmingą paleidimą padarė kaip prietaisą, saugantį programą atmintyje 1948 m. birželio 21 d.
EDSAC iš Kembridžo universiteto - pirmojo praktinio tokio tipo elektroninio kompiuterio - pirmą kartą sėkmingai pradėtas 1949 m. Gegužę.
Sukurtų modelių kūrimas
IBM SSEC sugebėjo apsvarstytinurodymai kaip duomenys ir buvo viešai parodyta 1948 m. sausio 27 d. Šis gebėjimas buvo patvirtintas JAV patentu. Tačiau tai buvo iš dalies elektromechaninė mašina, o ne visiškai elektroninė. Praktiškai instrukcijos buvo skaitomos iš popieriaus juostos dėl ribotos atminties.
Baby buvo pirmasis visiškai elektroninis kompiuterispradėti saugomas programas. Tai faktoringo programa truko 52 minučių, 21 birželio 1948 metų pradėjus ir paprastas skaičiavimas dalijant skaičiavimą, kuris rodo, kad du skaičiai yra tarpusavyje paprastųjų.
ENIAC buvo modifikuotas dirbti kaipprimityvus kompiuteris tik skaitymui, tačiau dėl tos pačios architektūros ir buvo parodytas 1948 m. rugsėjo 16 d., o von Neumanno pagalba buvo sukurta programa Adel Goldstein.
BINAC atliko kelias testavimo programasVasario, kovo ir balandžio mėn. 1949 m., Nors jis nebuvo baigtas iki 1949 m. Rugsėjo mėn. Be to, buvo atlikti bandymai (kai kurie sėkmingi) kiti elektroniniai kompiuteriai, kuriems ši architektūra yra būdinga. Beje, von Neumannas toliau dirbo Manheteno projekte. Tai toks visuotinis žmogus.
Autobusų architektūros sistemos evoliucija
Per dešimtmečius, jau 60-70-kompiuteriai apskritai tapo mažesni ir greitesni, dėl ko buvo padaryta tam tikra evoliucija, per kurią buvo atlikta kompiuterinė architektūra pagal von Neumanną. Pavyzdžiui, įvesties ir išvesties atmintyje esantis ekranas leidžia apdoroti atitinkamus įtaisus, duomenis ir instrukcijas, skirtas integruotis į sistemą, kad liktų atmintyje. Viena magistralės sistema gali būti naudojama mažiau modulinei sistemai teikti. Tai kartais vadinama architektūros "racionalizacija". Per ateinančius dešimtmečius paprasti mikrovaldikliai kartais nenaudoja tam tikrų tipiško modelio savybių, kad būtų galima sumažinti išlaidas ir dydį. Tačiau dideli kompiuteriai laikosi nustatytos architektūros, nes jie pridėjo funkcijų, kurios pagerintų našumą.