I207 Digitaalloogika ja

Download Report

Transcript I207 Digitaalloogika ja

Slide 1

I207
Digitaalloogika ja
-süsteemid
http://www.itcollege.ee/~lrv/I207/

Peeter Ellervee
TTÜ - ICT-526
620 2258
511 3631
[email protected]
http://www.itcollege.ee/~lrv/
http://www.ati.ttu.ee/~lrv/

© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

1


Slide 2

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!
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

2


Slide 3

Ajaloost ...
 “Digitaalarvuti” - ~500 e.m.a. - abakus (abacus)

 “Analoogarvuti” - 1625 - lükati (slide rule)

© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

3


Slide 4

Ajaloost ...
 Analoogarvutid
astrolaab

pommitusarvuti

[16. saj.]
Norden

differentsiaal-analüsaator

vesiarvuti

[University of Pensylvania, ca 1942]

[NSLV 1936]

© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

4


Slide 5

Ajaloost ...
 1642 – Blaise Pascal (1623-1662)
 liitmismasin

 1834 – Charles Babbage (1792-1871)
 analüütiline masin (analytical engine)
 1906 valmistati osa protsessorist (töötas!)

 1874 või 1885
 Aritmomeeter
 Frank S. Baldwin (US)
 Willgodt T. Odhner (RU)
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

5


Slide 6

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
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

6


Slide 7

Ajaloost – Colossus [UK]
 1943 (dets.)
 varaseim
programmeeritav
elektronarvuti
 2400 lampi,
 5000 süm./sek.
 “Enigma” koodi
dešifreerimine
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

7


Slide 8

Ajaloost – ENIAC [US]
 1946
Electronic Numerical
Integrator and Computer

 18000 lampi
 ~5000 liitm./sek.
 30 tonni, 25 kW

 ballistika,
vesinikupomm
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

8


Slide 9

Ajaloost ...
 1947. a. lõpp – transistor [Bell Labs]
 W.B. Shockley, J. Bardeen & W.H. Brattain

 Teise põlvkonna arvutid

Nairi
© Peeter Ellervee

Minsk 32
I207 - Digitaalloogika ja -süsteemid - L1

9


Slide 10

Ajaloost ...
 Esimene mikroskeem
 12.09.1958 - TI
 Jack St. Clair Kilby

 Esimene mälukiip
 1970 - Intel - 1Kb

TRS-80
PDP-8

 Esimene mikroprotsessor
 15.11.1971 - Intel - i4004
 4-bitti, 2300 transistori
 ~60 kOPs (108 kHz)
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

10


Slide 11

Ajaloost – VAX 780
 3. põlvkonna
arvutid
 mikroskeemid
 pooljuhtmälud
 magnetlindid
 kõvakettad
 terminalid
 arvutivõrgud

 CAD/CAE
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

11


Slide 12

Ajaloost – EC seeria

protsessor
© Peeter Ellervee

ketasmälu
I207 - Digitaalloogika ja -süsteemid - L1

printer
12


Slide 13

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/
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

13


Slide 14

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
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

M500

14


Slide 15

Arvutisüsteemid tänapäeval
 Sardsüsteem = programm + mikroskeem
 == [rakendus + OS] + [digitaal + analoog]
 programmeerimine & digitaal-loogika & elektroonika
ROM

RAM

ADC
siinid / loogika

I/O

DAC
DSP

© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

CPU

15


Slide 16

Digitaalsüsteem
 Alamhulk süsteemidest
süsteemid
elektroonilised
alamsüsteemid
ROM
ADC

integraalskeemid

EDA

© Peeter Ellervee

RAM

siinid / loogika

I/O

DAC

digitaalsüsteemid

I207 - Digitaalloogika ja -süsteemid - L1

DSP

CPU

16


Slide 17

Arvuti == mälu & protsessor
 Von Neumanni arhitektuur

Asus a8n VMCSM02

 juhtseade
 ALU

Baby AT (IBM, 1985)

 mälu
 protsessor

© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

17


Slide 18

Mälu & Protsessor

ASRock K7VT4A Pro

© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

18


Slide 19

Mälu & Protsessor
andmed

Mälu
aadress

...
n=k+l;
...

OS funktsioonid

andmed

kompilaator

programm
0306

Protsessor

0010.0011.0100.0001

add r3,r4,r2

aadress

PC

0306

2.3.4.1

andmed

IR

RF

CU

© Peeter Ellervee

ALU

0010001101000001

linker

2r/1w

I207 - Digitaalloogika ja -süsteemid - L1

OS
teegid

19


Slide 20

Algoritm & realisatsioon
 Ü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
© Peeter Ellervee

 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

I207 - Digitaalloogika ja -süsteemid - L1

20


Slide 21

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, ...)
aritmeetikaloogikaseade
juhtautomaat
registrid

© Peeter Ellervee

sisend/
väljund

I207 - Digitaalloogika ja -süsteemid - L1

21


Slide 22

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/
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

22


Slide 23

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
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

23


Slide 24

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
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

24


Slide 25

Automatiseerimine?
Soovunelm

© Peeter Ellervee

Tegelikkus

I207 - Digitaalloogika ja -süsteemid - L1

25


Slide 26

Rakendusprogrammid

Kasutajaliides

Progr.
keeled

Assembler /
binaarkood

Arvutisüsteem:
CPU + RAM

© Peeter Ellervee

reaalarvud

Operatsioonisüsteem

sümbolid /
kümnendarvud

Abstraktsioonitasemed

kahendarvud /
kahendloogika
Protsessor

RTL:
ALU & Co

I207 - Digitaalloogika ja -süsteemid - L1

Pooljuhid:
Si, GaAs & Co

Transistorid /
traadid

Loogikaelemendid

Loogikafunktsioonid

26


Slide 27

Kursuse sisu
 Loengud
 Harjutustunnid
 Praktikumid

- 40 h [ 20 x 2 ]
- 16 h [ 8 x 2 ]
- 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”.

© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

27


Slide 28

Kursuse sisu






L1. Sissejuhatus
L2-L3. Loogikafunktsioonid, teisendamine
L4. Digitaalsüsteem, struktuur
L5-L6. Riistvara kirjelduskeel VHDL
L7-L11. Kombinatsioonskeemide disain
 Loogikafunktsioonide süsteemid

 L12-L15. Mäluga süsteemide disain
 Juht- ja operatsiooni-automaadid, süntees

 L16-17. Loogikaelemendid & digitaalaritmeetika
 L18-L20. Kompleksed digitaalsüsteemid
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

28


Slide 29

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 (30%)
 Kirjalik eksam – teoreetilised ja praktilised erineva
keerukusega ülesanded, kestus 1 1/2 tundi
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

29


Slide 30

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

© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

30


Slide 31

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
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

31


Slide 32

Koduarvuti?

http://urbanlegends.about.com/library/bl_rand_home_computer.htm
© Peeter Ellervee

I207 - Digitaalloogika ja -süsteemid - L1

32