330 likes | 539 Vues
I207 Digitaalloogika ja -süsteemid. http://www. itcollege .ee/ ~ lrv/I207/ Peeter Ellervee TTÜ - ICT-526 620 2258 511 3631 LRV@ati.ttu.ee http://www. itcollege .ee/ ~ lrv/ http:// www .ati.ttu.ee/~lrv/. Sissejuhatuse asemel. Me kõik teame, et vanasti.
E N D
I207Digitaalloogika ja -süsteemid http://www.itcollege.ee/~lrv/I207/ Peeter Ellervee TTÜ - ICT-526 620 2258 511 3631 LRV@ati.ttu.ee http://www.itcollege.ee/~lrv/ http://www.ati.ttu.ee/~lrv/ I207 - Digitaalloogika ja -süsteemid - L1
Sissejuhatuse asemel • Me kõik teame, et vanasti ... • … oli lumi valgem, taevas sinisem, varblased suuremad, … • Tegelikkus on aga veelgi huvitavam • Ka transistor oli vanasti palju suurem! I207 - Digitaalloogika ja -süsteemid - L1
“Digitaalarvuti” - ~500 e.m.a. - abakus (abacus) Ajaloost ... • “Analoogarvuti” - 1625 - lükati (slide rule) I207 - Digitaalloogika ja -süsteemid - L1
pommitus-arvuti astrolaab [16. saj.] Norden differentsiaal-analüsaator vesiarvuti [University of Pensylvania, ca 1942] [NSLV 1936] Ajaloost ... • Analoogarvutid I207 - Digitaalloogika ja -süsteemid - L1
1642 – Blaise Pascal (1623-1662) liitmismasin 1834 – Charles Babbage (1792-1871) analüütiline masin (analytical engine) 1906 valmistati osa protsessorist (töötas!) Ajaloost ... • 1874 või 1885 • Aritmomeeter • Frank S. Baldwin (US) • Willgodt T. Odhner (RU) I207 - Digitaalloogika ja -süsteemid - L1
Ajaloost ... • Elektromehhaaniline relee – 19. saj. • Elektronlamp – 20. saj. algus • 1904 - diood - J. A. Fleming [UK] • 1906 - triood - L. De Forest [US] • 1941 (dets.) – V3 (hilisem Z3) [D] • Konrad Zuse (1910-1995) • elektromehhaaniline (releed) • esimene programmeeritav kalkulaator I207 - Digitaalloogika ja -süsteemid - L1
Ajaloost – Colossus [UK] • 1943 (dets.) • varaseim programmeeritav elektronarvuti • 2400 lampi, • 5000 süm./sek. • “Enigma” koodi dešifreerimine I207 - Digitaalloogika ja -süsteemid - L1
Ajaloost – ENIAC [US] • 1946Electronic Numerical Integrator and Computer • 18000 lampi • ~5000 liitm./sek. • 30 tonni, 25 kW • ballistika, vesinikupomm I207 - Digitaalloogika ja -süsteemid - L1
Ajaloost ... • 1947. a. lõpp – transistor [Bell Labs] • W.B. Shockley, J. Bardeen & W.H. Brattain • Teise põlvkonna arvutid Nairi Minsk 32 I207 - Digitaalloogika ja -süsteemid - L1
TRS-80 PDP-8 Ajaloost ... • Esimene mikroskeem • 12.09.1958 - TI • Jack St. Clair Kilby • Esimene mälukiip • 1970 - Intel - 1Kb • Esimene mikroprotsessor • 15.11.1971 - Intel - i4004 • 4-bitti, 2300 transistori • ~60 kOPs (108 kHz) I207 - Digitaalloogika ja -süsteemid - L1
Ajaloost – VAX 780 • 3. põlvkonna arvutid • mikroskeemid • pooljuhtmälud • magnetlindid • kõvakettad • terminalid • arvutivõrgud • CAD/CAE I207 - Digitaalloogika ja -süsteemid - L1
Ajaloost – EC seeria protsessor ketasmälu printer I207 - Digitaalloogika ja -süsteemid - L1
Ajaloost ... • 1950 – pehmeketas – Y. Nakamats • 1965 – hiir – D. Englebart • 1979 – CD • Neljanda põlvkonna arvutid • personaalarvutid, tööjaamad jne. • A Brief History of Computing http://www.ox.compsoc.net/~swhite/history/ I207 - Digitaalloogika ja -süsteemid - L1
M500 Tänapäev • Gordon Moore seadus (1965) • kahekordistumine iga 18 kuuga • Head • jõudlus, odavus, töökindlus, energiasäästlikkus • Vead (?) • projekteerimise ja valmistamise maksumus • muutmise ja parandamise keerukus • SoC – System-on-a-Chip (kiipsüsteem) • NoC – Network-on-a-Chip (kiipvõrk) • SoP – System-on-a-Package I207 - Digitaalloogika ja -süsteemid - L1
RAM ROM I/O DSP CPU ADC DAC siinid / loogika Arvutisüsteemid tänapäeval • Sardsüsteem = programm + mikroskeem • == [rakendus + OS] + [digitaal + analoog] • programmeerimine & digitaal-loogika & elektroonika I207 - Digitaalloogika ja -süsteemid - L1
RAM ROM I/O DSP CPU süsteemid elektroonilised alamsüsteemid ADC DAC siinid / loogika integraal-skeemid EDA digitaal-süsteemid Digitaalsüsteem • Alamhulk süsteemidest I207 - Digitaalloogika ja -süsteemid - L1
Baby AT (IBM, 1985) Asus a8n VMCSM02 Arvuti == mälu & protsessor • Von Neumanni arhitektuur • mälu • protsessor • juhtseade • ALU I207 - Digitaalloogika ja -süsteemid - L1
Mälu & Protsessor ASRock K7VT4A Pro I207 - Digitaalloogika ja -süsteemid - L1
andmed Mälu OS funktsioonid aadress andmed programm kompilaator linker 0306 0010.0011.0100.0001 aadress andmed add r3,r4,r2 0010001101000001 Protsessor PC IR 0306 2.3.4.1 RF 2r/1w ALU CU OS teegid Mälu & Protsessor . . . n=k+l; . . . I207 - Digitaalloogika ja -süsteemid - L1
Ülesanne → algoritm → realisatsioon Neli kahend-sisendit ja -väljundit nt. 4 lülitit (S1-S4) ja 4 valgusdioodi (L1-L4) Sisendite muutumine muudab väljundeid kui S1=1 & S2=0, siis L1←1, muidu L1←0 kui S1=0 & S3↑, siis V++ (V[1]≡L2, V[0]≡L3) kui S1=1 & S2=1 & S4↓,siis L4← ┐L4 Realisatsioon – “must kast” & 4 nuppu, 4 lampi mikrokontroller & programm loogikaskeem & juhtautomaat Võimalik programm int s3p=0, s4p=0, v=0; l4=0; while (1) { if (s1&!s2) l1=1; else l1=0; if (!s1&((s3^s3p)&s3)) v++; if (v>3) v=0; l2=v/2; l3=v%2; if (s1&s2&((s4^s4p)&!s4)) l4~=l4; s3p=s3; s4p=s4; wait_100ms(); } Protsessor e. täitur muutujate salvestamine registrid operatsioonide täitmine kombinatoorsed funktsioonid operatsioonide järjestamine juhtosa Algoritm & realisatsioon I207 - Digitaalloogika ja -süsteemid - L1
aritmeetika- loogikaseade juhtautomaat sisend/ väljund registrid Protsessor • (C)PU – (Central) Processing Unit • sisendid/väljundid (lülitid, lambid, releed, ...) • vahetulemused (nt. muutujad registrites/mälus) • töötlus- e. arvutus-sõlm (nt. aritmeetika-loogikaseade) • juhtosa (käsuloendur ja -register, juhtautomaat, ...) I207 - Digitaalloogika ja -süsteemid - L1
Protsessor kui digitaalsüsteem The Central Processing Unit – http://courses.cs.vt.edu/~csonline/MachineArchitecture/Lessons/CPU/index.html Java Applet on RT-Level Design – http://www.pld.ttu.ee/applets/rtl/ I207 - Digitaalloogika ja -süsteemid - L1
Projekteerimine • Programmist skeemini? • Millised käsud on olemas? • Kuidas järjestada käsud? • Mis töötleb käske? • Tulemuseks moodulid ehk struktuur-skeem • Skeemist transistorini? • Millest koosnevad moodulid? • Kuidas komponente siduda ja paigutada? • Tulemuseks trükkplaat / mikroskeem I207 - Digitaalloogika ja -süsteemid - L1
Turg e. $$$ • Projekteerimise maksumus • projekteerimisaeg, kapitalimahutused, parandatavus • Muudatuste kõrge hind • tootmismahud, null-defekti, turusuundumused • Hind pöördvõrdeline tootmismahuga • üldotstarbelised protsessorid << ASIC << prototüübid << spetsrakendused • Rekonfigureeritavus • paindlikud tooted I207 - Digitaalloogika ja -süsteemid - L1
Soovunelm Automatiseerimine? Tegelikkus I207 - Digitaalloogika ja -süsteemid - L1
Kasutajaliides Operatsiooni- süsteem Pooljuhid: Si, GaAs & Co sümbolid / kümnendarvud reaalarvud Rakendus- programmid Progr. keeled Transistorid / traadid Assembler / binaarkood Loogika- elemendid Arvutisüsteem: CPU + RAM RTL: ALU & Co Loogika- funktsioonid Protsessor Abstraktsioonitasemed kahendarvud / kahendloogika I207 - Digitaalloogika ja -süsteemid - L1
Kursuse sisu • Loengud - 40 h [ 20 x 2 ] • Harjutustunnid - 16 h [ 8 x 2 ] • Praktikumid - 16 h [ 8 x 2 ] • Kirjandus: • John F. Wakerly, “Digital Design: Principles and Practices”. • Dirk Jansen et al. (editors), “The electronic design automation handbook”. • Harri Lensen, Margus Kruus, “Diskreetne matemaatika”. • Kalle Tammemäe, “Riistvara kirjeldamiskeel VHDL”. I207 - Digitaalloogika ja -süsteemid - L1
Kursuse sisu • L1. Sissejuhatus • L2-L3. Loogikafunktsioonid, teisendamine • L4-L7. Riistvara kirjelduskeel VHDL • Modelleerimine • L8-L12. Kombinatsioonskeemide disain • Loogikafunktsioonide süsteemid • L13-L15. Mäluga süsteemide disain • Juht- ja operatsiooni-automaadid • L16-17. Loogikaelemendid & digitaalaritmeetika • L18-L20. Kompleksed digitaalsüsteemid I207 - Digitaalloogika ja -süsteemid - L1
Kursuse sisu • Harjutustunnid • H1-H3. Kahendloogika, avaldised ja - funktsioonid • H4. Loogikaskeemide koostamine • H5, H6. Heuristiline ja täpne minimeerimine • H7, H8. Automaadid, realiseerimine • Praktikumid • Loogikafunktsioonide modelleerimine & minimeerimine • Kombinatsioon- ja mäluga skeemide modelleerimine VHDL-s • Hindamine • Kodutöö – loogikafunktsiooni minimeerimine, realisatsioon ja modelleerimine (40%) • Praktikumide ülesannete kaitsmine (20%) • Kirjalik eksam – teoreetilised ja praktilised erineva keerukusega ülesanded, kestus 2 tundi I207 - Digitaalloogika ja -süsteemid - L1
Lõpetuseks... • Ka see on ajalugu ... • 1899 – “Everything that can be invented has already been invented” • “Kõik, mis võimalik, on juba leiutatud” • C. H. Duell, USA Patendiameti direktor • 1943 – “I think there is a world market for maybe five computers” • “Arvan, et ilmaturg vajab ehk viit arvutit” • Thomas Watson, IBM esimees I207 - Digitaalloogika ja -süsteemid - L1
Lõpetuseks... • 1949 – “Computers in the future may weigh no more than 1.5 tons” • “Tulevikus võivad arvutid kaaluda vähem kui poolteist tonni” • ajakirja “Popular Mechanics” ennustus • 1968 – “But what ... is it good for?” • “Jah aga, … milleks see ka kõlbab?” • IBM’I insener mikroskeemi kohta (Advanced Computing Systems Division) • 1977 – “There is no reason anyone would want a computer in their home” • “Pole olemas põhjust, et keegi sooviks koju arvutit” • Ken Olson, DEC (Digital Equipment Corporation) president, esimees ja asutaja I207 - Digitaalloogika ja -süsteemid - L1
Koduarvuti? http://urbanlegends.about.com/library/bl_rand_home_computer.htm I207 - Digitaalloogika ja -süsteemid - L1