Përdoruesi:Vjola Gallapeni/Arkitektura kompjuterike
Në shkencën kompjuterike dhe inxhinierinë kompjuterike, arkitektura kompjuterike është një përshkrim i strukturës së një sistemi kompjuterik të bërë nga pjesë përbërëse.[1] Ndonjëherë mund të jetë një përshkrim i nivelit të lartë që shpërfill detajet e zbatimit.[2] Në një nivel më të detajuar, përshkrimi mund të përfshijë dizajnin e arkitekturës së grupit të udhëzimeve, dizajnin e mikroarkitekturës, dizajnin logjik dhe zbatimin.[3]
Historia
RedaktoArkitektura e parë e dokumentuar e kompjuterit gjendet në korrespondencën midis Charles Babbage dhe Ada Lovelace, ku përshkruhet motori analitik. Gjatë ndërtimit të kompjuterit Z1 në vitin 1936, Konrad Zuse përmendi në dy aplikime për patentë për projektet e tij të ardhshme se instruksionet e makinerive mund të ruhen në të njëjtën ruajtje të përdorur për të dhënat, p.sh. koncepti i programit të ruajtur.[4] Dy shembuj të tjerë të hershëm dhe të rëndësishëm janë:
- Punimi i John von Neumann-it i vitit 1945, Drafti i parë i një raporti mbi EDVAC, i cili përshkruante një organizim të elementeve logjike;[5] dhe
- Llogaritësi elektronik i propozuar më i detajuar i Alan Turing për Motorin Automatik Kompjuterik, gjithashtu i vitit 1945 dhe i cili citoi letrën e John von Neumann-it.
Termi "arkitekturë" në literaturën kompjuterike mund të kërkohet në punën e Lyle R. Johnson dhe Frederick P. Brooks, Jr., anëtarë të departamentit të Organizimit të Makinerisë në qendrën kërkimore kryesore të IBM në 1959. Johnson pati mundësinë të hartonte një komunikim kërkimor mbi pronarin e Stretch, një superkompjuter i zhvilluar nga IBM për Laboratorin Kombëtar të Los Alamos (në atë kohë i njohur si Laboratori Shkencor i Los Alamos). Për të përshkruar nivelin e detajeve për diskutimin e kompjuterit të zbukuruar në mënyrë luksoze, ai përmendi se përshkrimi i formateve, llojeve të udhëzimeve, parametrave të harduerit dhe përmirësimeve të shpejtësisë ishte në nivelin e "arkitekturës së sistemit", një term që dukej më i dobishëm se "organizimi i makinerisë".[6]
Më pas, Brooks, një nga projektuesit e Stretch, e nisi Kapitullin 2 të një libri të quajtur Planifikimi i një Sistemi Kompjuterik: Projekti Shtrirja duke thënë, "Arkitektura e kompjuterit, ashtu si arkitektura e tjera, është arti i përcaktimit të nevojave të përdoruesit të një strukture dhe më pas projektimit për të plotësuar këto nevoja në mënyrë sa më efektive që të jetë e mundur brenda kufizimeve ekonomike dhe teknologjike".[7]
Brooks vazhdoi të kontribuonte në zhvillimin e linjës së kompjuterëve IBM System/360, ku termi "arkitekturë" mori kuptimin e "asaj që përdoruesi duhet të dijë".[8] Kjo linjë u pasua nga disa linja kompjuterash të pajtueshme, përfshirë linjën aktuale IBM Z. Më vonë, përdoruesit e kompjuterëve filluan të përdorin termin në shumë mënyra më pak të qarta dhe më të ndryshme.[9]
Arkitekturat më të hershme kompjuterike projektoheshin në letër dhe më pas ndërtoheshin drejtpërdrejt në formën përfundimtare të harduerit. Më vonë, prototipet e arkitekturës kompjuterike u krijuan fizikisht në formën e një kompjuteri me logjikë transistor-transistor (TTL)-të tilla si prototipet e 6800 dhe PA-RISC, të cilat testoheshin dhe modifikoheshin përpara se të angazhoheshin në formën përfundimtare të harduerit. Që nga vitet 1990, arkitekturat e reja kompjuterike zakonisht "ndërtohen", testohen dhe rregullohen – brenda një arkitekture tjetër kompjuterike në një simulator të arkitekturës kompjuterike; ose brenda një FPGA si një mikroprocesor i butë; ose të dyja – përpara se të angazhoheni në formën përfundimtare të harduerit.[10]
Nënkategoritë
RedaktoDisiplina e arkitekturës kompjuterike ka tre nënkategori kryesore:[11]
- Arkitektura e grupit të instruksioneve (ISA): përcakton kodin e makinës që lexon dhe vepron një procesor, si dhe madhësinë e fjalës, mënyrat e adresës së kujtesës, regjistrat e procesorit dhe llojet e të dhënave.
- Mikroarkitekturë: e njohur gjithashtu si "organizim kompjuterik", përshkruan se si një procesor i veçantë do të zbatojë ISA-në.[12] Për shembull, madhësia e cache-it të CPU- së të një kompjuteri është një çështje që në përgjithësi nuk ka të bëjë me ISA-në.
- Dizajni i sistemeve: përfshin të gjithë komponentët e tjerë të harduerit brenda një sistemi kompjuterik, si përpunimi i të dhënave përveç CPU-së (p.sh. aksesi i drejtpërdrejtë në memorie ), virtualizimi dhe multiprocesimi.
Ekzistojnë teknologji të tjera në arkitekturën kompjuterike. Teknologjitë e mëposhtme përdoren në kompani më të mëdha si Intel, dhe u vlerësuan në 2002[13] se përbënin 1% të të gjithë arkitekturës kompjuterike:
- Makroarkitektura : shtresat arkitekturore më abstrakte se mikroarkitektura.
- Arkitektura e grupit të udhëzimeve të montimit: Një montues inteligjent mund të konvertojë një gjuhë asambleje abstrakte të zakonshme për një grup makinerish në gjuhë paksa të ndryshme makine për implementime të ndryshme.
- Makroarkitekturë e dukshme nga programuesi: mjetet gjuhësore të nivelit më të lartë si përpiluesit përcaktojnë një ndërfaqe ose kontratë të qëndrueshme për programuesit që i përdorin ato, duke abstraktuar ndryshimet midis ISA-ve themelore dhe mikroarkitekturave. Për shembull, standardet C, C++ ose Java përcaktojnë makroarkitektura të ndryshme të dukshme nga programuesi.
- Mikrokodi: mikrokodi është softuer që përkthen udhëzimet për të ekzekutuar në një çip. Ai vepron si një mbështjellës rreth harduerit, duke paraqitur një version të preferuar të ndërfaqes së grupit të udhëzimeve të harduerit. Kjo strukturë e përkthimit të udhëzimeve u jep dizajnuesve të çipave opsione fleksibël: P.sh. 1. Një version i ri i përmirësuar i çipit mund të përdorë mikrokodin për të paraqitur saktësisht të njëjtin grup instruksionesh si versioni i vjetër i çipit, kështu që i gjithë softueri që synon atë grup udhëzimesh do të funksionojë në çipin e ri pa pasur nevojë për ndryshime. P.sh. 2. Mikrokodi mund të paraqesë një sërë grupesh instruksionesh për të njëjtin çip themelor, duke e lejuar atë të ekzekutojë një shumëllojshmëri më të gjerë softuerësh.
- Arkitektura e pinit: Përcakton funksionet e harduerit që një mikroprocesor duhet t'i ofrojë një platforme harduerike, p.sh. kunjat x86 A20M, FERR/IGNNE ose FLUSH. Gjithashtu, përcakton mesazhet që procesori duhet të lëshojë në mënyrë që memoriet e jashtme të mund të zhvlerësohen (zbrazen). Funksionet e arkitekturës së pinit janë më fleksibël se funksionet ISA sepse hardueri i jashtëm mund të përshtatet me kodimet e reja ose të ndryshojë nga një pin në një mesazh. Termi "arkitekturë" përshtatet, sepse funksionet duhet të sigurohen për sisteme të pajtueshme, edhe nëse metoda e detajuar ndryshon.
Rolet
RedaktoPërkufizimi
RedaktoArkitektura kompjuterike ka të bëjë me balancimin e performancës, efikasitetit, kostos dhe besueshmërisë së një sistemi kompjuterik. Rasti i arkitekturës së grupit të instruksioneve (ISA), mund të përdoret për të ilustruar ekuilibrin e këtyre faktorëve konkurrues. Një grup instruksionesh më komplekse u mundëson programuesve të shkruajnë programe më efikase në hapësirë, pasi një instruksion i vetëm mund të kodojë disa abstraksione të nivelit më të lartë (si p.sh. instruksioni i ciklit x86 ).[14] Megjithatë, instruksionet më të gjata dhe më komplekse kërkojnë më shumë kohë që procesori të dekodojë dhe mund të jenë më të kushtueshme për t'u zbatuar në mënyrë efektive. Për më tepër, kompleksiteti i shtuar nga një grup i madh instruksionesh gjithashtu krijon më shumë hapësirë për mosbesueshmëri kur udhëzimet ndërveprojnë në mënyra të papritura.
Zbatimi përfshin projektimin e qarkut të integruar, paketimin, fuqinë dhe ftohjen. Optimizimi i dizajnit kërkon njohje me tema nga përpiluesit dhe sistemet operative deri te dizajni dhe paketimi logjik.[15]
Arkitektura e grupit të udhëzimeve
Redakto- Artikulli kryesor: Instruction set architecture
Një arkitekturë e grupit të instruksioneve (ISA) është ndërfaqja midis softuerit dhe harduerit të kompjuterit dhe mund të shihet si pamje e makinës nga programuesi. Kompjuterët nuk i kuptojnë gjuhët e programimit të nivelit të lartë si Java, C++ ose gjuhë të tjera të ngjashme. Një procesor i kupton vetëm udhëzimet e koduara numerikisht, zakonisht si numra binarë. Mjetet softuerike, të tilla si përpiluesit, i përkthejnë gjuhë të nivelit të lartë në udhëzime që procesori mund t'i kuptojë dhe ekzekutojë.
Përveç udhëzimeve, ISA-ja përcakton elementet në kompjuter që janë të disponueshëm për një program — si, llojet e të dhënave, regjistrat, mënyrat e adresimit dhe memoria. Udhëzimet i referohen këtyre elementeve të disponueshme me indekset (ose emrat) e regjistrave dhe mënyrat e adresimit të memories.
ISA-ja e një kompjuteri zakonisht përshkruhet në një manual të vogël udhëzimi, i cili përshkruan se si janë koduar udhëzimet. Ky manual, mund të përcaktojë emra të shkurtër (në mënyrë të paqartë) kujtimore për udhëzimet. Këta emra mund të njihen nga një mjet për zhvillimin e softuerit të quajtur assembler. Një assembler është një program që përkthen një formë të ISA-së të lexueshme nga njeriu në një formë të lexueshme nga kompjuteri. Çmontuesit janë gjithashtu gjerësisht të disponueshëm, zakonisht në debugers dhe programe softuerike për të izoluar dhe korrigjuar keqfunksionimet në programet kompjuterike binare.
ISA-të ndryshojnë në cilësi dhe plotësi. Një ISA efektive bën kompromise midis komoditetit të programuesit (sa i lehtë është kodi për t'u kuptuar), madhësisë së kodit (sasia e kodit që kërkohet për të kryer një veprim specifik), kostos së kompjuterit që të interpretoj udhëzimet (më shumë kompleksitet do të thotë më shumë pajisje të nevojshme për të deshifruar dhe ekzekutuar udhëzimet), dhe shpejtësia e kompjuterit (me harduerin më kompleks të deshifrimit nevojitet kohë më e gjatë për deshifrim). Organizimi i kujtesës përcakton se si udhëzimet ndërveprojnë me kujtesën dhe se si kujtesa ndërvepron me vetveten.
Gjatë emulimit të projektimit, emuluesit mund të ekzekutojnë programe të shkruara në një grup udhëzimesh të propozuar. Emulatorët modernë mund të matin madhësinë, koston dhe shpejtësinë për të vlerësuar nëse një ISA i veçantë është duke përmbushur qëllimet e tij.
Organizimi kompjuterik
Redakto- Artikuj kryesore: Low-power electronics
Organizimi kompjuterik ndihmon në optimizimin e produkteve të bazuara në performancë. Për shembull, inxhinierët e softuerit duhet të dinë për fuqinë përpunuese të procesorëve. Ata mund të kenë nevojë të optimizojnë softuerin në mënyrë që të fitojnë performancën më të madhe për çmimin më të ulët. Kjo mund të kërkojë një analizë mjaft të detajuar të organizimit të kompjuterit. Për shembull, në një kartë SD, projektuesit mund ta rregullojnë kartën në mënyrë që sa më shumë të dhëna të mund të përpunohen në mënyrën më të shpejtë të mundshme.
Organizimi i kompjuterit ndihmon gjithashtu në planifikimin e përzgjedhjes së një procesori për një projekt të caktuar. Projektet multimediale mund të kenë nevojë për qasje shumë të shpejtë në të dhëna, ndërsa makinat virtuale mund të kërkojnë ndërprerje të shpejta. Ndonjëherë detyra të caktuara kërkojnë edhe komponentë shtesë. Për shembull, një kompjuter që është i aftë të funksionojë si një makinë virtuale ka nevojë për pajisje të memories virtuale, në mënyrë që memoria e kompjuterëve të ndryshëm virtualë të mbetet e ndarë. Organizimi dhe veçoritë e kompjuterit ndikojnë gjithashtu në konsumin e energjisë dhe koston e procesorit.
Zbatimi
RedaktoPasi të jetë projektuar një grup instruksionesh dhe një mikroarkitekturë, duhet të zhvillohet një makinë funksionale. Ky proces i projektimit quhet zbatim. Zbatimi zakonisht nuk konsiderohet dizajn arkitektonik, por më tepër inxhinieri i dizajnit të harduerit. Zbatimi mund të ndahet më tej në disa hapa:
- Zbatimi logjik dizajnon qarqet e kërkuara në nivele të portës logjike.
- Zbatimi i qarkut bën dizajne në nivel transistor të elementeve bazë (p.sh. porta, multiplekse, mbyllëse ) dhe të disa blloqeve më të mëdha ( ALU, cache etj.), që mund të zbatohen në nivelin e portës logjike, apo edhe në nivelin fizik nëse dizajni e kërkon atë.
- Zbatimi fizik vizaton qarqe fizike. Komponentët e ndryshëm të qarkut vendosen në një plan dyshemeje në çip ose në tabelë dhe krijohen telat që i lidhin ato.
- Vlefshmëria e dizajnit teston kompjuterin në tërësi për të shikuar nëse funksionon në të gjitha situatat dhe të gjitha kohëzgjatjet. Pasi të fillojë procesi i vlefshmërisë së projektimit, dizajni në nivelin logjik testohet duke përdorur emulatorë logjikë. Megjithatë, kjo metodë shpesh është shumë e ngadaltë për të kryer teste realiste. Prandaj, pas kryerjes së korrigjimeve bazuar në testin e parë, prototipet ndërtohen duke përdorur Gate-Arrays të programueshëm në terren (FPGAs). Shumica e projekteve hobi ndalen në këtë fazë. Hapi i fundit është testimi i prototipit të qarqeve të integruara, të cilat mund të kërkojnë disa ridizajnime.
Për CPU-të, i gjithë procesi i zbatimit organizohet ndryshe dhe shpesh quhet dizajni i CPU-së.
Qëllimet e projektimit
RedaktoForma e saktë e një sistemi kompjuterik përcaktohet nga kufizimet dhe qëllimet. Arkitekturat kompjuterike shpesh shkëmbejnë standardet, fuqinë kundrejt performancës, koston, kapacitetin e kujtesës, vonesën (latenca është koha që i duhet informacionit për të kaluar nga një nyje në burim) dhe xhiros. Herë pas here konsiderata të tjera, të tilla si veçoritë, madhësia, pesha, besueshmëria dhe zgjerueshmëria janë gjithashtu faktorë.
Skema më e zakonshme bën një analizë të hollëshishme të energjisë dhe identifikon se si të mbash konsumin e ulët të energjisë përderisa ruhet performanca e duhur.
Performanca
RedaktoPerformanca moderne e kompjuterit zakonisht matet me udhëzimet për cikël (IPC), që tregon efikasitetin e arkitekturës në çdo frekuencë të orës; një normë më e shpejtë IPC do të thotë që kompjuteri është më i shpejtë. Kompjuterët e hershëm kishin numërim IPC deri në 0.1 ndërsa procesorët modernë arrijnë lehtësisht afër 1. Procesorët superscalar mund të realizojnë tre deri në pesë IPC duke ekzekutuar disa instruksione për çdo cikël orës. </link>[ citim i nevojshëm ]
Numërimi i udhëzimeve në gjuhën e makinës do të ishte mashtrues, sepse udhëzimet mund të kryejnë sasi të ndryshme pune në ISA të ndryshme. Në matjet standarde, termi "udhëzim" nuk i referohet numërimit të udhëzimeve të ISA-së në gjuhën e makinës, por një njësie matëse që zakonisht bazohet në shpejtësinë e arkitekturës së kompjuterit VAX.
Shumë njerëz matnin shpejtësinë e një kompjuteri bazuar në shpejtësinë e orës (zakonisht në MHz ose GHz), që i referohet cikleve për sekondë të orës kryesore të CPU-së. Megjithatë, kjo metrikë është disi mashtruese, pasi një makinë me një shpejtësi më të lartë të orës nuk garanton domosdoshmërisht performancë më të madhe. Për këtë arsye, prodhuesit janë larguar nga shpejtësia e orës si masë e performancës.
Faktorë të tjerë që ndikojnë në shpejtësinë, përfshijnë përzierja e njësive funksionale, shpejtësia e autobusit, memoria e disponueshme dhe lloji dhe renditja e udhëzimeve në programe.
Ekzistojnë dy lloje kryesore të shpejtësisë: vonesa dhe xhiros. Latenca është koha që kalon midis fillimit të një procesi dhe përfundimit të tij. Përfundimi është sasia e punës që kryhet për njësi të kohës. Vonesa e ndërprerjes përfaqëson kohën maksimale të garantuar të përgjigjes së sistemit ndaj një ngjarjeje elektronike (si kur disku përfundon lëvizjen e disa të dhënave).
Performanca e një sistemi kompjuterik ndikohet nga shumë zgjedhje të projektimit – për shembull, tubacioni i një procesori shpesh e përkeqëson vonesën, por e bën xhiron më të mirë. Kompjuterët që kontrollojnë makineritë zakonisht kanë nevojë për vonesa të ulëta të ndërprerjeve. Këta kompjuterë funksionojnë në një mjedis në kohë reale dhe dështojnë nëse një operacion nuk përfundon në një kohë të caktuar. Për shembull, një sistem frenimi kundër bllokimit të kontrolluar nga kompjuteri duhet të fillojë të frenojë brenda një periudhe kohore të parashikueshme dhe të kufizuar pasi të ndihet pedali i frenimit ose përndryshe do të ndodhë dështimi i frenimit.
Benchmarking merr parasysh të gjithë këta faktorë duke matur kohën që i duhet një kompjuteri për të ekzekutuar një sërë programesh testimi. Edhe pse krahasimi tregon pikat e forta, nuk duhet të jetë mënyra se si zgjidhni një kompjuter. Zakonisht makinat e matura ndahen në masa të ndryshme. Për shembull, një sistem mund të ekzekutojë aplikacionet shkencore shpejt, ndërsa një tjetër mund t'i shfaqë video lojërat më mirë. Për më tepër, projektuesit mund të synojnë dhe të integrojnë veçori të specifike në produktet e tyre në harduer ose softuer, që lejojnë një standard specifik të ekzekutohet shpejt, por nuk ofrojnë avantazhe të ngjashme me detyrat e përgjithshme.
Efikasiteti i energjisë
RedaktoEfikasiteti i energjisë është një matje e rëndësishme në kompjuterët modernë. Efikasiteti më i lartë i energjisë zakonisht mund të shkëmbehet me shpejtësi më të ulët ose kosto më të lartë. Një mënyrë tipike për të matur konsumin e energjisë në arkitekturën e kompjuterit është MIPS/W (miliona instruksione për sekondë për vat).
Qarqet moderne kanë më pak fuqi për tranzistor, ndërsa numri i transistorëve për çip rritet.[16] Kjo ndodh sepse çdo transistor që futet në një çip të ri kërkon furnizimin e tij me energji elektrike dhe ndërtimin e shtigjeve të reja për ta fuqizuar. Megjithatë, numri i transistorëve për çip ka filluar të rritet me një ritëm më të ngadaltë. Për këtë arsye, efikasiteti i energjisë ka filluar të bëhet po aq i rëndësishëm, nëse jo më i rëndësishëm sesa montimi i gjithnjë e më shumë transistorëve në një çip të vetëm. Modelet e fundit të procesorëve e kanë treguar këtë theks pasi ata kanë vënë më shumë fokus në efikasitetin e energjisë sesa të grumbullojnë sa më shumë transistorë në një çip të vetëm.[17] Në botën e kompjuterëve të integruar, efikasiteti i energjisë ka qenë prej kohësh një qëllim i rëndësishëm krahas xhiros dhe vonesës.
Ndryshimet në kërkesën e tregut
RedaktoRritjet në frekuencën e orës kanë ndodhur më ngadalë në vitet e fundit, krahasuar me përmirësimet e reduktimit të energjisë. Ky ndryshim është nxitur nga fundi i Ligjit të Moore dhe kërkesa për jetëgjatësi më të gjatë të baterisë dhe miniaturizimin në teknologjinë celulare. Ky kalim në fokus nga ritmet më të larta të orës në konsumin e energjisë dhe miniaturizimin mund të tregohet nga reduktimet e ndjeshme të konsumit të energjisë, deri në 50%, që u raportuan nga Intel në lëshimin e tyre të mikroarkitekturës Haswell; ku ata e ulën standardin e tyre të konsumit të energjisë nga 30-40 vat në 10-20 vat.[18] Kur e krahasojmë këtë me rritjen e shpejtësisë së përpunimit prej 3 GHz në 4 GHz (2002 deri në 2006), mund të shihet se fokusi në kërkimin dhe zhvillimin po largohet nga frekuenca e orës dhe po shkon drejt konsumimit të më pak energjisë dhe zënë më pak hapësirë.[19]
Shihni gjithashtu
Redakto• Krahasimi i arkitekturave të CPU
• Arkitektura e rrjedhës së të dhënave
• Arkitektura e Harvardit (e modifikuar)
• Ndikimi i IBM PC në tregun e kompjuterëve personalë
• Llogaritja e rikonfigurueshme
Burimet
Redakto- John L. Hennessy and David Patterson (2006). Computer Architecture: A Quantitative Approach (në anglisht) (bot. Fourth). Morgan Kaufmann. ISBN 978-0-12-370490-0.
- Barton, Robert S., "Functional Design of Computers", Communications of the ACM 4(9): 405 (1961).
- Barton, Robert S., "A New Approach to the Functional Design of a Digital Computer", Proceedings of the Western Joint Computer Conference, May 1961, pp. 393–396. About the design of the Burroughs B5000 computer.
- Bell, C. Gordon; and Newell, Allen (1971). "Computer Structures: Readings and Examples", McGraw-Hill.
- Blaauw, G.A., and Brooks, F.P., Jr., "The Structure of System/360, Part I-Outline of the Logical Structure", IBM Systems Journal, vol. 3, no. 2, pp. 119–135, 1964.
- Tanenbaum, Andrew S. (1979). Structured Computer Organization (në anglisht). Englewood Cliffs, New Jersey: Prentice-Hall. ISBN 0-13-148521-0.
Lidhje të jashtme
Redakto- ISCA: Punime të Simpoziumit Ndërkombëtar për Arkitekturën e Kompjuterit
- Mikro: Simpoziumi Ndërkombëtar i IEEE/ACM mbi Mikroarkitekturën
- HPCA: Simpozium Ndërkombëtar mbi Arkitekturën e Kompjuterëve me Performancë të Lartë
- ASPLOS: Konferenca Ndërkombëtare për Mbështetjen Arkitekturore për Gjuhët e Programimit dhe Sistemet Operative
- Transaksionet ACM mbi Arkitekturën dhe Optimizimin e Kodit
- Transaksionet IEEE në kompjuterë
- The von Neumann Architecture of Computer Systems tek Wayback Machine (arkivuar 2017-10-31)
Referimet
Redakto- ^ Dragoni, Nicole (n.d.). "Introduction to peer to peer computing" (PDF). DTU Compute – Department of Applied Mathematics and Computer Science (në anglisht). Lyngby, Denmark.
- ^ Clements, Alan. Principles of Computer Hardware (në anglisht) (bot. Fourth). fq. 1.
Architecture describes the internal organization of a computer in an abstract way; that is, it defines the capabilities of the computer and its programming model. You can have two computers that have been constructed in different ways with different technologies but with the same architecture.
- ^ Hennessy, John; Patterson, David. Computer Architecture: A Quantitative Approach (në anglisht) (bot. Fifth). fq. 11.
This task has many aspects, including instruction set design, functional organization, logic design, and implementation.
- ^ Williams, F. C.; Kilburn, T. (25 shtator 1948), "Electronic Digital Computers", Nature (në anglisht), vëll. 162 no. 4117, fq. 487, Bibcode:1948Natur.162..487W, doi:10.1038/162487a0
{{citation}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja) - ^ Neumann, John (1945). First Draft of a Report on the EDVAC (në anglisht). fq. 9.
- ^ Johnson, Lyle (1960). "A Description of Stretch" (PDF) (në anglisht). fq. 1. Marrë më 7 tetor 2017.
{{cite web}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja) - ^ Buchholz, Werner (1962). Planning a Computer System (në anglisht). fq. 5.
- ^ "System 360, From Computers to Computer Systems". IBM100 (në anglisht). 7 mars 2012. Arkivuar nga origjinali më prill 3, 2012. Marrë më 11 maj 2017.
{{cite web}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja) - ^ Hellige, Hans Dieter (2004). "Die Genese von Wissenschaftskonzeptionen der Computerarchitektur: Vom "system of organs" zum Schichtmodell des Designraums". Geschichten der Informatik: Visionen, Paradigmen, Leitmotive (në anglisht). fq. 411–472.
- ^ Schmalz, M.S. "Organization of Computer Systems". UF CISE (në anglisht). Marrë më 11 maj 2017.
{{cite web}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja) - ^ John L. Hennessy and David A. Patterson. Computer Architecture: A Quantitative Approach (në anglisht) (bot. Third). Morgan Kaufmann Publishers.
- ^ Laplante, Phillip A. (2001). Dictionary of Computer Science, Engineering, and Technology (në anglisht). CRC Press. fq. 94–95. ISBN 0-8493-2691-5.
- ^ John L. Hennessy and David A. Patterson. Computer Architecture: A Quantitative Approach (në anglisht) (bot. Third). Morgan Kaufmann Publishers.
- ^ Null, Linda (2019). The Essentials of Computer Organization and Architecture (në anglisht) (bot. 5th). Burlington, MA: Jones & Bartlett Learning. fq. 280. ISBN 978-1-284-12303-6.
- ^ Martin, Milo. "What is computer architecture?" (PDF). UPENN (në anglisht). Marrë më 11 maj 2017.
{{cite web}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja) - ^ "Integrated circuits and fabrication" (PDF) (në anglisht). Marrë më 8 maj 2017.
{{cite web}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja) - ^ "Exynos 9 Series (8895)". Samsung (në anglisht). Marrë më 8 maj 2017.
{{cite web}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja) - ^ "Measuring Processor Power TDP vs ACP" (PDF). Intel (në anglisht). prill 2011. Marrë më 5 maj 2017.
{{cite web}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja) - ^ "History of Processor Performance" (PDF). cs.columbia.edu (në anglisht). 24 prill 2012. Marrë më 5 maj 2017.
{{cite web}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja)
[[Kategoria:Arkitekturë kompjuterike]] [[Kategoria:Faqe me përkthime të pashqyrtuara]]