Von Neumanni arhitektuur: erinevus redaktsioonide vahel

Eemaldatud sisu Lisatud sisu
TuuleT (arutelu | kaastöö)
PResümee puudub
TuuleT (arutelu | kaastöö)
Eemaldasin toimetusmärkuse
1. rida:
{{keeletoimeta}}
[[Fail:Von Neumanni arhitektuur.png|pisi|293x293px|von Neumanni arhitektuur|alt=]]
'''Von Neumanni arhitektuur''', tuntud ka nime all von Neumanni mudel või Princetoni arhitektuur, on [[arvutiarhitektuur]], mis põhineb aastal 1945 matemaatik [[John von Neumann|John von Neumanni]] poolt välja pakutud arvuti arhitektuuri kirjeldusel uue täis-elektroonilise [[EDVAC]] arvuti jaoks. Käsikiri “First Draft of a Report on the EDVAC”<ref name="FirstDraftReport" /> kirjeldas arvuti arhitektuurilist ülesehitust, kus käske ja andmeid säilitatakse arvutis ühises mäluruumis ning arvutit juhitakse tema enese [[Mälu (arvuti)|mällu]] salvestatud programmiga. See arvutiarhitektuur on saanud aluseks suurema osa tänapäeva arvutite disainile.
 
Terminist “von Neumanni arhitektuur” on kujunenud mõiste, mis kirjeldab kõiki siseprogrammarvuteid, milles ühise [[Siin|siini]] tõttu ei saa käskudega ja andmetega seotud operatsioonid toimuda samal ajal. Von Neumanni arhitektuuril põhinevad arvutid on lihtsama disainiga kui [[Harvardi arhitektuur|Harvardi arhitektuuriga]] arvutid, mis on samuti siseprogrammarvutid, kuid millel on eraldi aadressidaadressi- ja andmesiinid mälust lugemise/kirjutamise jaoks ning käskude mälust võtmiseks.
 
Kuigi mällu salvestatud programmi abil talitav ning ühitatud käsu- ja andmemäluga arvutiarhitektuur on saanud nimetuse von Neumanni järgi, siis esimesena pakkusid sellise idee välja 1944. aastal ENIACI projekteeriad J. Presper Eckert ja John Mauchly ning von Neumann tegelikult arendas ja viimistles nende kontseptsiooni edasi.
10. rida ⟶ 9. rida:
 
==Ajalugu==
Siseprogrammarvutid olid suur edasiminek 1940. aastate programmjuhtimisega arvutitest, nagu Colossus ja ENIAC, kuna arvuti töö juhtimiseks hakati kasutama arvuti mälus säilitatavat programmi. Paljud esimesed arvutid ei olnud kas üldse ümberprogrammeeritavad (arvuti täitis vaid üht kindlat riistvarasse installeeritud programmi) või siis oli võimalik arvuti ülesannet teatud piirides muuta, kuid see nõudis palju vaeva. Näiteks kuigi ENIACi puhul oli tegemist juba täiselektroonilise arvutiga, programmeeriti seda ikka käsitsi sadade ja tuhandete pistikute ning lülitite ümberseadistamisega ningja seega võis uue programmi ülesseadmine võtta aega koguni kolm nädalat.<ref name="8WN9s" />
Käsikirjas “First Draft of a Report on the EDVAC” kirjeldab von Neumann arhitektuurilist ülesehitust elektroonilise digitaalse arvuti jaoks, millel on järgnevad komponendid:
 
==Tööpõhimõte==
[[Pilt:Von Neumann Arhitektuuri Diagramm.png|pisi|Von Neumanni arhitektuuri skeem|240x240px]]Käsikirjas “First Draft of a Report on the EDVAC” kirjeldab von Neumann arhitektuurilist ülesehitust elektroonilise digitaalse arvuti jaoks, millel on järgnevad komponendid:
 
* keskseade, millel on aritmeetika-loogikaseade ja registrid
17. rida ⟶ 19. rida:
* väline massmälu
* sisend-väljund seadmed<ref name="FirstDraftReport" />
 
Siseprogrammarvutid olid suur edasiminek 1940. aastate programmjuhtimisega arvutitest, nagu Colossus ja ENIAC, kuna arvuti töö juhtimiseks hakati kasutama arvuti mälus säilitatavat programmi. Paljud esimesed arvutid ei olnud kas üldse ümberprogrammeeritavad (arvuti täitis vaid üht kindlat riistvarasse installeeritud programmi) või siis oli võimalik arvuti ülesannet teatud piirides muuta, kuid see nõudis palju vaeva. Näiteks kuigi ENIACi puhul oli tegemist juba täiselektroonilise arvutiga, programmeeriti seda ikka käsitsi sadade ja tuhandete pistikute ning lülitite ümberseadistamisega ning seega võis uue programmi ülesseadmine võtta aega koguni kolm nädalat.<ref name="8WN9s" />
 
==Tööpõhimõte==
[[Pilt:Von Neumann Arhitektuuri Diagramm.png|pisi|Von Neumanni arhitektuuri skeem|240x240px]]
Von Neumanni arhitektuur koosneb mälust, [[protsessor]]ist, kellast, [[andmesiin]]ist, [[aadressisiin]]ist ja [[kontrollsiin]]ist. Mälu koosneb riividest, [[aadressi dekoodrist]], kontroll loogikast, [[aadressisiinist]], ja [[andmesiin]]ist. Protsessor koosneb registritest, [[aadressisiin]]ist, [[andmesiin]]ist ja [[loogikaüksus]]est (tavaliselt [[Aritmeetika-loogika seade]]) ja kontrollloogikast. Kell on [[vooluring]], mis pidevalt tekitab mustri ühtedest ja nullidest erinevatel liinidel (juhtmetel). Aadressisiin on hulk juhtmeid, mis on ühendatud igaüks erineva riiviga mälus, mida kasutatakse riivi valimiseks, millest loetakse väärtusi. Andmesiin on juhtmete hulk, millest igaüks on ühendatud kõikide mälu riivide ühe bitiga ning protsessoris asuvate registritega. Kontrollsiin on juhtmete hulk, mis ühendavad kella erinevad väljundid vastavate protsessori ja mälu osadega.
 
Ladustatud programmidega arvuti disain sisaldab [[käsustik]]ku ja saab mälus hoida käskude komplekte ([[arvutiprogramm|programme]]). Võimalus käsitleda käske andmetena teeb ladustatud programmidega arvutites võimalikuks [[assemblerkeel]]e, [[kompilaator]]ite ja teiste automatiseeritud programmeerimistööriistade olemasolu. Võimalik on "kirjutada programme mis kirjutavad programme".<ref name="u5WlN" />
 
==Varajased Von Neumanni arhitektuuril põhinevad arvutid==
30. rida ⟶ 24. rida:
 
* ARC2 - Birkbecki kolledž, [[Londoni Ülikool]], [[Suurbritannia]]. Alustas ametlikult tööd 12. mail 1948.
*Manchester Baby - [[Manchesteri Ülikool]], Suurbritannia. Tuntud ka nimega SSEM (Small-Scale Experimental Machine), jooksutas edukalt mällu salvestatud programmi esimest korda 21. juunil 1948. SSEM oli suuteline mällu salvestadasalvestama mitte ainult andmeid, vaid ka lühikest programmi.
* EDSAC - [[Cambridge'i Ülikool]], Suurbritannia. Esimene praktiline salvestatud programmidega elektrooniline arvuti - juhtmeid ega lüliteid polnud vaja uute arvutuste jaoks ümberseadistada (mai 1949).
* Manchester Mark 1 - Manchesteri Ülikool, Suurbritannia. SSEM-i edasiarendus (juuni 1949).
* CSIRAC - Austraalia teadusorganisatsioon CSIRO,. [[Austraalia]] esimene digitaalne arvuti (november 1949).
* [[EDVAC]] - loodi Ameerika Ühendriikide armee Ballistilise Teadustöö Labori jaoks (sai valmis 1949, alustas tööd 1951).
* ORDVAC - [[Illinoisi Ülikool]], [[Ameerika Ühendriigid]]. Sai valmis novembris 1951, valmistati samuti Ballistilise Teadustöö Labori jaoks.<ref name="6SVPN" />
44. rida ⟶ 38. rida:
* BESK - [[Stockholm]], [[Rootsi]] (1953).
* JOHNNIAC - Ameriika Ühendriigid, RAND korporatsioon (jaanuar 1954).
* DASK - [[Taani]], põhines rootslaste BESK'-il (1955).
* WEIZAC - Rehovot, [[Iisrael]] (1955).
* PERM - [[München]], [[Saksamaa]] (1956).
50. rida ⟶ 44. rida:
 
==Von Neumanni arhitektuuri piirangud==
Käske ja andmeid hoitakse ühtses mälukeskkonnas ning sellest tingituna on samuti jagatud siini kasutus protsessori ja mälu vahel samuti jagatud. Käsud ja andmed loetakse mälust jadapöördusega, mis aga seab olulisi piiranguid mälupöördustele. Sellist olukorda nimetatakse von Neumanni pudelikaelaks. Kuna erinevalt Harvardi arhitektuurist ei saa programmi mälu ja andmete mälu lugeda samaaegselt, on infotöötluse kiirus palju väiksem protsessori tegelikust jõudlusest, sest protsessor on sunnitud ootama seni, kuni andmete lugemine/kirjutamine mälust on lõpetatud.
 
Kuna von Neumanni arhitektuuri puhul puudub erisus mälus säilitatava info - andmete ja käskude - vahel, siis on oht, et programmis tekkiva vea tõttu kirjutatakse üle arvuti mälus olevad käsud, mis võib kahjustada hetkel arvutis jooksvat programmi, teisi arvuti mälus olevaid programme või koguni arvuti operatsioonisüsteemi.