Razlika između verzija stranice "Von Neumannova arhitektura"

[pregledana izmjena][pregledana izmjena]
Uklonjeni sadržaj Dodani sadržaj
mNo edit summary
m razne ispravke
Red 1:
[[Datoteka:Von_Neumann_architecture.svg|link=https://bs.wikipedia.org/wiki/Datoteka:Von_Neumann_architecture.svg|alt=|mini|Šematski{{Mrtav link|datum=Novembar 2019 |bot=InternetArchiveBot }} prikaz Von Neumannove arhitekture]]
'''Von Neumannova arhitektura''' - poznata i kao '''von Neumannov model''' ili '''Princeton arhitektura''' - jest [[računarska arhitektura]] zasnovana na opisu matematičara i fizičara [[John von Neumann|Johna von Neumanna]] iz 1945. godine u ''Prvom nacrtu izvještaja o EDVAC-u''.<ref name="FirstDraftReport">{{Citation|authorlink=John von Neumann|title=First Draft of a Report on the EDVAC|date=1945|url=https://sites.google.com/site/michaeldgodfrey/vonneumann/vnedvac.pdf|accessdate=2011-08-24. 8. 2011|archiveurl=https://web.archive.org/web/20130314123032/http://qss.stanford.edu/~godfrey/vonNeumann/vnedvac.pdf|archivedate=2013-03-14. 3. 2013}}</ref> Taj dokument opisuje dizajn arhitekture za elektronski [[Računar|digitalni kompjuter]] sa ovim komponentama:
 
* [[Procesor|Procesorska jedinica]] za obradu koja sadrži [[Artimetička logička jedinica|aritmetičku logičku jedinicu]] i [[Procesorski registri|procesorske registre]]
* [[ Kontrolna jedinica |Upravljačka jedinica]] koja sadrži [[ Registar uputa |instrukcijski registar]] i [[ Programski brojač |programski brojač]]
* [[ Memorija računara |Memorija]] koja pohranjuje podatke i [[Arhitektura seta instrukcija|instrukcije]]
* [[Pohrana podataka|Disk za pohranu]]
* [[Ulaz/izlaz|Ulazno/izlazni mehanizmi]]<ref name="FirstDraftReport">{{Citation|authorlink=John von Neumann|title=First Draft of a Report on the EDVAC|date=1945|url=https://sites.google.com/site/michaeldgodfrey/vonneumann/vnedvac.pdf|accessdate=2011-08-24. 8. 2011|archiveurl=https://web.archive.org/web/20130314123032/http://qss.stanford.edu/~godfrey/vonNeumann/vnedvac.pdf|archivedate=2013-03-14. 3. 2013}}</ref><ref name="GanesanCh4">{{Harvnb|Ganesan|2009}}</ref>
 
Izraz "von Neumannova arhitektura" se danas odnosi na svaki računar kojie sprema programske instrukcije u elektronsku memoriju u kojoj se [[instrukcijski ciklus]] i podatkovna operacija ne mogu desiti u istom momentu jer dijele zajedničku [[Sabirnica|sabirnicu]] . To se naziva von Neumann-ovo usko grlo i često ograničava performanse sistema.<ref>{{Citation|title=The Von Neumann Bottleneck|date=2007|url=http://aws.linnbenton.edu/cs271c/markgrj/|archiveurl=https://web.archive.org/web/20131212205159/http://aws.linnbenton.edu/cs271c/markgrj/|archivedate=December12. 12,. 2013}}</ref>
 
Dizajn von Neumannove arhitekture je jednostavniji od [[Harvard arhitektura računara|harvardske arhitektonske]] mašine - koji je također sistem pohranjenog programa, ali ima jedan namjenski skup adresa i podatkovnih sabirnica za čitanje i pisanje u memoriju, te drugi skup adresa i podatkovnih sabirnica za dohvaćanje instrukcija.
 
Digitalni računar pohranjenog programa čuva i [[Računarski program|programske upute]] i podatke u [[RAM|memoriji sa nasumičnim pristupom]] (RAM) za [[Piši briši memorija|čitanje i pisanje]]. Računari sa pohranjenim programom bili su napredak nad računarima iz 1940-ih, poput [[ Colossus računar |Colossus]]-a i [[ENIAC|ENIAC-a]]. Oni su programirani postavljanjem prekidača i umetanjem kablova za usmjeravanje podataka i upravljačkih signala između različitih jedinica.
 
== Sposobnosti ==
U velikoj mjeri, sposobnost tretiranja uputa kao podataka je omogućilo [[Asembler|asemblereasembler]]e, [[Kompajler|kompajlerekompajler]]e, [[Linker|linkerelinker]]e, [[Loader (računarstvo)|loadere]] i druge alate za automatsko programiranje. Omogućava "programe koji pišu programe".<ref>{{Citation|url=http://catb.org/~esr/jargon/html/M/MFTL.html|title=''MFTL'' (My Favorite Toy Language) entry Jargon File 4.4.7|accessdate=2008-07-11. 7. 2008}}</ref>
 
Neki programski jezici visokog nivoa utiču na von Neumannovu arhitekturu tako što pružaju apstraktni, mašinski nezavisan način manipulacije izvršnim kodom pri izvođenju (npr. [[Lisp (programski jezik)|LISP]]).
 
== Rani računari von Neumannove arhitekture ==
 
* [[ APEXC |ARC2]] (Birkbeck, Univerzitet u Londonu) 12. maj 1948. <ref name="birkbeck">{{Cite journal|date=Aprilapril 1982|title=The Development of Computer Programming in Britain (1945 to 1955)|journal=IEEE Annals of the History of Computing|volume=4|issue=2|pages=121–139|doi=10.1109/MAHC.1982.10016}}</ref>
* [[ Manchester Baby |Manchester Baby]] (Univerzitet Victoria u Manchesteru, Engleska) 21. juni 1948.
* [[ EDSAC |EDSAC]] (Univerzitet u Cambridgeu, Engleska) maj 1949
* [[ Manchester Mark 1 |Manchester Mark 1]] (Univerzitet u Manchesteru, Engleska) juni 1949
* [[ CSIRAC |CSIRAC]], Australija, novembar 1949.
* [[ EDVAC |EDVAC]], 1951
* [[ ORDVAC |ORDVAC]], novembar 1951<ref>{{Citation|title=Illiac Design Techniques|publisher=report number UIUCDCS-R-1955-146, Digital Computer Laboratory, University of Illinois at Urbana-Champaign|date=1955}}</ref>
* [[ IAS mašina |IAS mašina]] na Univerzitetu Princeton, januar 1952
* [[ MANIAC I |MANIAC I]], mart 1952.
* [[ ILLIAC |ILLIAC]], septembar 1952.
* [[ BESM |BESM-1]] u Moskvi, 1952
* [[ BESK |BESK]] u Štokholmu, 1953
* [[ JOHNNIAC |JOHNNIAC]], Izrael, januar 1954.
* [[ DASK |DASK]] u Danskoj, 1955.
* [[PERM (#računar)|PERM]] u Minhenu, 1956.?
 
== Evolucija ==
[[Datoteka:Computer_system_bus.svg|mini| Evolucija arhitekture sa jednom [[Sistemska sabirnica|sistemskom sabirnicom]] ]]
Između 1960-ih i 1970-ih računari su uglavnom postali i manji i brži, što je dovelo do evolucije u njihovoj arhitekturi. Na primjer, memorijski mapirani ulazno/izlazni uređaji se mogu tretirati isto kao i memorija.<ref>{{Citation|title=A New Architecture for Mini-Computers—The DEC PDP-11|authorlink=Gordon Bell|website=Spring Joint Computer Conference|pages=657–675|date=1970|url=http://research.microsoft.com/en-us/um/people/gbell/CGB%20Files/New%20Architecture%20PDP11%20SJCC%201970%20c.pdf}}</ref> Jedna sistemska sabirnica se može koristiti za pružanje modularnog sistema. To se ponekad naziva "moderniziranje" arhitekture.<ref>{{Citation|title=The essentials of computer organization and architecture|publisher=[[Jones & Bartlett]] Learning|date=2010|isbn=978-1-4496-0006-8|edition=3rd|pages=36, 199–203|url=https://books.google.com/books?id=f83XxoBC_8MC&pg=PA36}}</ref> U sljedećim desetljećima, jednostavniji [[Mikrokontroler|mikrokontrolerimikrokontroler]]i su često izostavljali neke mogućnosti zbog smanjivanja troškova ili veličine uređaja. S druge strane, veći računari dodavali mogućnosti za veće performanse.
 
== Ograničenja dizajna ==
 
=== Von Neumannovo usko grlo ===
Dijeljena sabirnica između programske memorije i podatkovne memorije dovodi do ''von Neumannova uskog grla'', ograničene propusnosti (brzina prenosa podataka) između [[Procesor|centralnog procesora]] (CPU) i memorije u odnosu na količinu memorije. Procesor je stalno [[Stanje čekanja (računarstvo)|prisiljen čekati]] da potrebni podaci pređu u memoriju ili iz nje.
 
Postoji nekoliko poznatih metoda za ublažavanje uskog grla. Na primjer, sljedeće stvari mogu poboljšati performanse:
 
* [[ CPU keš memorija |Procesorska keš memorija]] (cache) između CPU-a i [[ Glavna memorija |glavne memorije]]
* korištenje algoritama i logike za [[predviđanje grananja]].
* Smanjenje latencije između [[Procesorski registar|procesorskih registara]] i glavne memorije, pružajući veću [[lokalnost referenci]] {{Mdashb}} pojava koja opisuje istu vrijednost, ili odgovarajuće lokacije za skladištenje kojima se često pristupa
 
Problem se može donekle zaobići i [[Paralelni sistemi|paralelnim sistemima]], koristeći na primjer, [[NUMA]] arhitekturu {{Mdashb}} ovaj pristup se obično koristi kod superračunara.
 
== Također pogledajte ==
 
* [[ Mašina sa slučajnim pristupom |Mašina sa slučajnim pristupom]]
* [[Turingova mašina|Turing mašina]]
* [[ Neuromorfni inženjering |Neuromorfni inženjering]]
* [[ Eckert arhitektura |Eckert arhitektura]]
 
== Reference ==
Red 67:
* [http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/ka11516.html Harvard protiv von Neumanna]
* [https://web.archive.org/web/20080219131555/http://home.gna.org/vov/ Alat koji oponaša ponašanje von Neumannove mašine]
* [http://sourceforge.net/projects/johnnysimulator/ JOHNNY: Jednostavan simulator otvorenog koda von Neumannove mašine za obrazovne svrhe]
 
[[Kategorija:Neriješeni problemi]]
[[Kategorija:Računarska arhitektura]]