Upload
phamminh
View
316
Download
11
Embed Size (px)
Citation preview
Dobro došli!
Logičko projektovanje računarskih sistema 2
L01. Uvod. Pojam bita i predstave brojeva
Logičko projektovanje računarskih sistema 2
L01. Uvod. Pojam bita i predstave brojeva
O predmetu
Gradimo most!
21 Feb 2018 L01. Uvod i ponavljanje gradiva 4
FizikaElektrotehnikaAnalogna elektronikaDigitalna elektronika
ProgramiranjeObjektno programiranjeAlgoritmiObrada signala
LPRS
O predmetu
Naučićemo da projektujemo hardver i softver računarskih sistema.
TRI CELINE
1. Projektovanje digitalnih sistema
2. Projektovanje procesorskih sistema
3. Projektovanje računarskih sistema
21 Feb 2018 L01. Uvod i ponavljanje gradiva 5
I celina. Projektovanje digitalnih sistema
• Pojam bita. Predstava brojeva
• Digitalna logička kola. CMOS
• Kombinacione mreže i njihov opis u VHDL jeziku
• Sekvencijalne mreže i njihov opis u VHDL jeziku
• Vremenske karakteristike digitalnih sistema
• Protočne strukture u digitalnim sistemima
21 Feb 2018 L01. Uvod i ponavljanje gradiva 6
II celina. Projektovanje procesorskih sistema
• Strukture za računanje
• Upravljačke jedinice
• Procesor – implementacija bez protočne strukture
• Projektovanje skupa instrukcija. Asembler
• Prevodioci viših programskih jezika
21 Feb 2018 L01. Uvod i ponavljanje gradiva 7
III celina. Projektovanje računarskih sistema
• Memorijska hijerarhija i projektovanje skrivenih memorija
• Virtualna memorija
• Prekidi i periferne jedinice
• Implementacija procesora sa protočnom strukturom
• Problemi protočne strukture
21 Feb 2018 L01. Uvod i ponavljanje gradiva 8
Šta treba da znam ovog trenutka?
• Algebra (Bool-ova algebra)• Šta su AND, OR, NOT, NAND, itd.?
• Kako se računa pomoću logičkih operacija?
• Osnovi elektrotehnike• Šta je napon?
• Kako se rešava kolo jednosmerne struje?
• Osnovi elektronike• Šta su logička kola i kako se prave?
• Šta su kombinacione i sekvencijalne mreže?
21 Feb 2018 L01. Uvod i ponavljanje gradiva 9
Šta treba da instaliram na svoj računar?
(Microsoft Windows 7 OR Microsoft Windows XP OR Linux)
AND
(Xilinx ISE WebPACK 14.7)
http://www.xilinx.com
21 Feb 2018 L01. Uvod i ponavljanje gradiva 10
Koliko puno ću učiti?
• Fond časova: 4+4• Predavanja
• Sreda 17:15 – 19:00
• Petak 15:45 – 17:30
• Laboratorijske vežbe• 2 x 2 časa nedeljno, prema rasporedu
• Sve aktivnosti (nastava, domaći zadaci, učenje, ispiti)Ukupno 240 sati = 8 ECTS poena
21 Feb 2018 L01. Uvod i ponavljanje gradiva 11
Literatura
1. Vladimir Kovačević, Branislav Atlagić: „Logičko projektovanje računarskih sistemaII: Projektovanje računarskih sistema“, FTN Izdavaštvo (238), Novi Sad, 2009.
2. Nebojša Pjevalica, Ivan Kaštelan, Nikola Teslić, Vladimir Kovačević: „Logičko projektovanje računarskih sistema 1: zbirka rešenih zadataka“, FTN Izdavaštvo (629), Novi Sad, 2017
+ Prezentacije sa predavanja (PPT)
+ Materijali za laboratorijske vežbe (PDF)
21 Feb 2018 L01. Uvod i ponavljanje gradiva 12
Nastavnički tim
21 Feb 2018 L01. Uvod i ponavljanje gradiva 13
doc. dr Ivan Kaštelanpredavanja
Đorđe Juhas, MSclab. vežbe
Konsultacije: utorak 12:15 – 13:00(od 27 Feb do prvog termina ispita)
Konsultacije: ponedeljak 08:15 – 09:00(od 05 Mar do prvog termina ispita)
Organizacija nastave
• Predavanja [predispitna obaveza]• Interaktivna, učešće studenata u diskusiji
• Dodatni oblik nastave – računarske vežbe [predispitna obaveza]• Laboratorija MI B4-1A (Mašinski institut FTN)
• Pokazne vežbe (uglavnom)
• Složeni oblik vežbi (3x)• Prezentacija rešenja domaćeg zadatka (do 3 poena)
• Dodatni zadatak na terminu vežbi (do 2 poena)
• Ukupno 5 poena po vežbi
21 Feb 2018 L01. Uvod i ponavljanje gradiva 14
Predispitne i ispitne obaveze
• Domaći zadaci (2x) [predispitna obaveza]• Predaju se predmetnom nastavniku na papiru
• Domaći zadaci služe kao priprema za testove
• 5 poena po domaćem zadatku; mogućnost osvajanja dodatnih poena
• Testovi (4x) [predispitna obaveza]• Dva testa sa zadacima za rad na papiru i dva testa sa zadacima na računaru
• 10 poena po testu; održavaju se ukupno dva puta u toku semestra
• Finalni ispit• Obavezna prijava na studentskoj službi u redovnim terminima
• Sastoji se iz zadataka za rad na papiru i zadataka za rad na računaru
21 Feb 2018 L01. Uvod i ponavljanje gradiva 15
Nadoknada predispitnih obaveza
• Student ne može popravljati osvojen broj poena sa predispitnih obaveza – prisustva, složenih oblika vežbi, testova i domaćih zadataka.
• Jedna računarska vežba koja spada u složene oblike vežbi se može nadoknaditi na kraju semestra, ukoliko postoji opravdan razlog odsustva u redovnom terminu.
• Nadoknada testova nije predviđena, osim u opravdanim okolnostima, uz obavezno odobrenje predmetnog nastavnika, šefa katedre i rukovodioca departmana.
21 Feb 2018 L01. Uvod i ponavljanje gradiva 16
Poništavanje ocene
• Poništavanje predispitnih obaveza nema smisla jer se ne mogu popravaljati.
• Poništavanje ispita se može uraditi na terminu ispita:• Student ima pravo da, praćeno svojim potpisom, ispitnu svesku označi sa
„PONIŠTENO“ i time poništi svoj rad.• Poništeni ispit se neće pregledati.
• Ostvarena ocena na ispitu se prosleđuje studentskoj službi.
• Student ima pravo da poništi ispit do 72h nakon polaganja prigovorom studentskoj službi. Ukoliko se prigovor uvaži, student je u obavezi da ispit polaže u narednom ispitnom roku. Ocena prilikom ponovnog polaganja je konačna i ne može da se poništi.
21 Feb 2018 L01. Uvod i ponavljanje gradiva 17
Važenje predispitnih obaveza
• Ukoliko se ispit ne položi tokom tekuće školske godine, broj poena ostvaren na predispitnim obavezama važi 3 semestra nakon semestra u kome je predmet pohađan.
• Studentima koji su predmet pohađali pre školske 2017/18 god. i koji nisu položili ispit, ostvareni poeni sa predispitnih obaveza u godini u kojoj su slušali predmet važe do 28.02.2019.
21 Feb 2018 L01. Uvod i ponavljanje gradiva 18
Formiranje zaključne oceneCelina Broj poena Struktura Napomena
Prisustvo na predavanjima i vežbama 5 3 + 23 poena na predavanjima
2 poena na vežbama
Domaći zadaci – papirni deo 10 2 x 5
Složeni oblici vežbi 15 3 x 5
Testovi 40 4 x 102 testa na papiru
2 testa na računaru
PREDISPITNE OBAVEZE 70obavezan minimum od
ukupno 21 poen
FINALNI ISPIT 30Pismeni ispit
(papir + računar)
UKUPNO 100
21 Feb 2018 L01. Uvod i ponavljanje gradiva 19
Akademska etika
• Poštovanje intelektualnih prava
• Očekujemo poštenje prilikom izrade ispitnih obaveza
• Dozvoljeno:• Grupni rad prilikom izrade domaćih zadataka i vežbi uz referenciranje
• Na papirnom rešenju navesti imena svih članova grupe (ali svako predaje pojedinačno)
• Na računarskom rešenju svi članovi grupe treba da pokažu zadovoljavajuće znanje
• Nije dozvoljeno:• Grupni rad prilikom izrade domaćih zadataka i vežbi, a potpisivanje samo sebe
• Grupni rad prilikom izrade testova i finalnog ispita
21 Feb 2018 L01. Uvod i ponavljanje gradiva 20
© Telegraph UK
http://www.rt-rk.uns.ac.rs
21 Feb 2018 L01. Uvod i ponavljanje gradiva 21
http://www.rt-rk.uns.ac.rs
21 Feb 2018 L01. Uvod i ponavljanje gradiva 22
Kalendar
Materijali
Kalendar održavanja nastave
21 Feb 2018 L01. Uvod i ponavljanje gradiva 23
21 Feb 2018 L01. Uvod i ponavljanje gradiva 24
© 123RF
Pojam bita i predstave brojeva
21 Feb 2018 L01. Uvod i ponavljanje gradiva 25
Informacija
Nešto što primimo (podaci) sa ciljem smanjivanja neodređenosti o nekoj činjenici ili pojavi.
Primer: karta se uzima slučajno iz špila od 52 karte. Koja poruka donosi najviše informacije?
• Karta je sa znakom herca.
• Karta nije A pik.
• Karta je jedna od: J, Q, K.
• Karta je kralj herca.
21 Feb 2018 L01. Uvod i ponavljanje gradiva 26
1351121
Koliko je preostalo mogućnosti?
Claude Shannon (1948)
Slučajna promenljiva X• N mogućih vrednosti: X1, X2, … XN
• Verovatnoće: p1, p2, … pN
Informacija koju donosi svaka od mogućih vrednosti:
𝐼 𝑥𝑖 = 𝑙𝑜𝑔21
𝑝𝑖[bit]
Koliko informacije nosi poruka „Karta je sa znakom herca“?
21 Feb 2018 L01. Uvod i ponavljanje gradiva 27
2 bit
Primeri računanja količine informacije
Podatak Verovatnoća podatka Količina informacije [bit]
Karta je sa znakom herca.
Karta nije A pik.
Karta je jedna od: J, Q, K.
Karta je kralj herca.
21 Feb 2018 L01. Uvod i ponavljanje gradiva 28
Primeri računanja količine informacije
Podatak Verovatnoća podatka Količina informacije [bit]
Karta je sa znakom herca. 13/52 Log2(52/13) = 2 bit
Karta nije A pik. 51/52 0.028 bit
Karta je jedna od: J, Q, K. 12/52 2.115 bit
Karta je kralj herca. 1/52 5.7 bit
21 Feb 2018 L01. Uvod i ponavljanje gradiva 29
Količina informacije u skupu poruka (Entropija)Srednja vrednost količine informacije u jednoj poruci u nizu poruka
21 Feb 2018 L01. Uvod i ponavljanje gradiva 30
𝐻 𝑥 =
𝑖=1
𝑁
𝑝𝑖 ∗ 𝑙𝑜𝑔21
𝑝𝑖
Primer: Poruka pi
A 1/3
B 1/2
C 1/12
D 1/12
H(x) = 1.626 bit
Kodiranje podataka
Entropija nam daje informaciju o optimalnoj širini (broju bita) potrebnom za kodovanje poruka iz skupa svih poruka.
Mora biti nedvosmisleno!
Npr. A 0 Šta je 0 1 1 0 ?
B 1
C 10
D 11
21 Feb 2018 L01. Uvod i ponavljanje gradiva 31
Kodovanje fiksne dužine
Engl. Fixed-length encoding
• Svaki simbol u poruci ima isti broj bita.
Npr. BCD (Binary Coded Decimal)
Da li je optimalno?
21 Feb 2018 L01. Uvod i ponavljanje gradiva 32
Simbol Kod
0 0000
1 0001
2 0010
3 0011
4 0100
Simbol Kod
5 0101
6 0110
7 0111
8 1000
9 1001
Optimalno kodovanje pozitivnih celih brojeva
Binarna predstava broja!
𝒗𝒓𝒆𝒅𝒏𝒐𝒔𝒕 =
𝒊=𝟎
𝑵−𝟏
𝟐𝒊 ∗ 𝒄𝒊
npr. 24 11000
Heksadecimalna notacija: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
21 Feb 2018 L01. Uvod i ponavljanje gradiva 33
24 0x18
Binarna predstava negativnih brojeva
Nekoliko mogućnosti:
• Znak-moduo : 0 (+) 1 (-) znak & apsolutna_vrednost
• Prvi komplement : negacija binarne predstave
• Drugi komplement: negacija binarne predstave + 1
-24 : 00011000 11100111 11101000
21 Feb 2018 L01. Uvod i ponavljanje gradiva 34
Operacije nad binarnim brojevima – ponoviti!
• Kako se radi sabiranje?
• Kako se radi oduzimanje?
• Kako se radi množenje?
• Logičke operacije
21 Feb 2018 L01. Uvod i ponavljanje gradiva 35
Binarna predstava racionalnih brojeva
• Binarna predstava u nepokretnom zarezu/tački (Fixed-point)
21 Feb 2018 L01. Uvod i ponavljanje gradiva 36
0 1 0 0 1 1 0 1
Dogovorimo se da je tačka ovde!
8 + 1 + 1/2 + 1/8 = 9.625
Binarna predstava racionalnih brojeva
• Binarna predstava u nepokretnom zarezu/tački (Fixed-point)
• Negativni racionalni brojevi: drugi komplement svih bita!
21 Feb 2018 L01. Uvod i ponavljanje gradiva 37
0 1 0 0 1 1 0 1
Dogovorimo se da je tačka ovde!
8 + 1 + 1/2 + 1/8 = 9.625
Binarna predstava racionalnih brojeva
• Binarna predstava u pokretnom zarezu/tački (Floating-point)
21 Feb 2018 L01. Uvod i ponavljanje gradiva 38
0 1 0 0 1 1 0 1
Znak Eksponent Mantisa(označen) (1 + razlomljeni deo)
𝒗𝒓𝒆𝒅𝒏𝒐𝒔𝒕 = (−𝟏)𝒁 ∗ 𝑴 ∗ 𝟐𝑬
+ 1.1101 * 2100 (binarno)+ 1.8125 * 2-4
Kodovanje promenljive dužine
Zbog optimizacije binarne predstave simbola:
Simboli veće verovatnoće treba da imaju manju dužinu.
Simboli manje verovatnoće treba da imaju veću dužinu.
21 Feb 2018 L01. Uvod i ponavljanje gradiva 39
Huffman
• Algoritam:• 2 simbola sa najmanjom verovatnoćom se spajaju u podstablo
• Formirano podstablo se posmatra kao simbol u narednoj iteraciji, sa verovatnoćom jednakom zbiru svojih članova
• Iterativno se formiraju viši nivoi stabla
21 Feb 2018 L01. Uvod i ponavljanje gradiva 40
Primer Huffman kodovanja
21 Feb 2018 L01. Uvod i ponavljanje gradiva 41
Poruka pi
A 1/3
B 1/2
C 1/12
D 1/12
Kod
11
0
100
101
𝐻 𝑥 =1
3∗ 2 +
1
2∗ 1 +
1
12∗ 3 +
1
12∗ 3 =
5
3~ 1.667 𝑏𝑖𝑡 > 1.626 𝑏𝑖𝑡
Detekcija greške u prenosu podataka
• Bit pariteta• Neparni paritet – ukupan broj jedinica (sa paritetom) treba da bude neparan
• Parni paritet – ukupan broj jedinica (sa paritetom) treba da bude paran
• Koja funkcija formira bit pariteta?• Neparni paritet?
• Parni paritet?
21 Feb 2018 L01. Uvod i ponavljanje gradiva 42
X Y X xor Y
0 0 0
0 1 1
1 0 1
1 1 0
XOR
XNOR
OK, znam da kodujem poruku, ali …
21 Feb 2018 L01. Uvod i ponavljanje gradiva 43
Kako da predstavim elementarne simbole 0 i 1?
© Universal Studios, Revealing Homes
21 Feb 2018 L01. Uvod i ponavljanje gradiva 44