00 Microcomputers

Post on 12-Dec-2015

223 views 2 download

description

microporcessing

Transcript of 00 Microcomputers

Συστήµατα Μικροϋπολογιστών

Εισαγωγή

Ύλη Μαθήµατος

Εσωτερική Αρχιτεκτονική µΕBuses, Interface & Μνήµη µΥ-ΣMacros, Υπορουτίνες, Σωρός & Τρόποι Αναφοράς στη ΜνήµηΤεχνικές Ι/Ο στα µΥ-Σ∆ιακοπές, Ι/Ο µε ∆ιακοπέςΠρογραµµατισµός σε Συµβολική Γλώσσα των µΕ INTEL 8085/80 & 8086/88

19801970 1990 2000 2010

108

107

106

105

104

Πλήθος Transistors(Ν)

ΕΤΟΣ(Υ)

*

**

**

** *

*

16Κ

64Κ

256Κ

16Μ32Μ

64Μ

Pentium III

Pentium II

Pentium

8048680386

8028668000

8086

8080

4004

Μνήµες (DRAM)

Επεξεργαστές

Ο Νόµος Tου Moore Ο νόµος Moore:

Ν=2Υ-1959

(για το 1999 ⇒ 109

transistors)

Ο ακριβής νόµος:

N=1,6Y-1959

Η ∆ιάσταση Του Transistor

19801970 1990 2000 2010

10µm

∆ιαστάσεις τουtransistor (πύλης)

σε µm

ΕΤΟΣ(Υ)

1µm

0,1µm

0,01µm

τρίχα

βακτήριο

ιός

0,18µm

Τεχνολογία µΕ (πριν το 1980)

Ξεκίνησε για απλές εφαρµογές ψηφιακής σχεδίασηςΑπό 1970-1980 χρησιµοποιήθηκαν τεχνολογίες TTL & ECL:! Bipolar τεχνολογίες! Όχι VLSI! Υψηλή κατανάλωση & ταχύτητα λειτουργίας! Χαµηλή πυκνότητα ολοκλήρωσης

Τεχνολογία µΕ (1980-σήµερα)

Μετά το 1980 χρησιµοποιήθηκε η τεχνολογία CMOS:

! Καθαρότητα υλικού (Si)! Ακρίβεια τεχνολογίας κατασκευής! Μεγάλη σµίκρυνση

Ο Πρώτος µΕ

Intel 4004 (4001 2 3)! ROM! RAM! I/O

"Παράλληλη" Σειριακή

Σήµερα φτάσαµε να έχουµε VLSI µε >1000 φορές λόγο επεξεργασίας / κόστους

Εξέλιξη Τεχνολογίας VLSI

# Πυκνότητα x4 κάθε 4 χρόνια

# Χρόνος προσπέλασης /10 κάθε 5 χρόνια

# Στοιχεία x2 κάθε χρόνο

# Κόστος /2 κάθε 3 χρόνια

ΕΠΕΞΕΡΓΑΣΙΑ:ΜΝΗΜΕΣ:

ΠΑΡΑΓΟΝΤΕΣ# Αύξηση επιφάνειας ψηφίδας# Σµίκρυνση (Scale Down)# Nέες τεχνικές κατασκευής# Καλύτερες αρχιτεκτονικές

Οικογένειες µΕ4004

8008 8080 8085

8088 80188

8086 8018680286

80486

Pentium

80386

Pentium II Pentium III

INTEL

6800

6809

68000

68040

68030

68020

8-bit

16-bit

32-bit

64-bit

MOTOROLA

Itanium

Βασικά Αρχιτεκτονικά Χαρακτηριστικά µΕΜήκος λέξηςΤύποι δεδοµένωνΤαχύτηταΙκανότητα επεξεργασίας

Είσοδος ROM RAM ΟθόνηΠληκτρολόγιο

∆ιάδροµος του συστήµατος (δεδοµένων)

RD

IO/M=1 IO/M

RDWR RD RD WRIO/M=0IO/M=0

Έξοδος

IO/M=1

WR

µΕ

∆ιάδροµος του συστήµατος (διευθύνσεων)

∆ιαχείριση Μνήµης

Χειρισµοί διακοπών

Επικοινωνίες

Παρελκόµενα & Περιφερειακά

$ Ελεγκτές διακοπών και DMA

$ Μονάδες A/D και D/A

∆ιεθνή Πρωτόκολλα (π.χ. RS-232, EIA-485, Firewire, IDE, SCSI, USB)

Παράλληλη & Σειριακή Επικοινωνία$ Μονάδες I/O:

EPLDs GALsFlash

PLAE2PROM

ΣτατικέςEPROM

∆υναµικέςPROM

RAMROM

$ ΜΝΗΜΕΣ:

Μνήµες ROM

CE

ROM

A0A1A2

A9A10

D0D1D2

D7

.

.

....

ΕΝΕΡΓΟΠΟΙΗΣΗ

Χωρητικότητα:

211 x 8 = 2 Kbyte

210 = 1024 = 1 K

Οι γραµµές δεδοµένων µπορούν να χρησιµοποιηθούν µόνο για ανάγνωση

Μνήµες RAM

CE

RAM

A0A1A2

A9A10

D0D1D2

D7

.

.

....

ΕΝΕΡΓΟΠΟΙΗΣΗR / W

Οι γραµµές δεδοµένων µπορούν να χρησιµοποιηθούν για ανάγνωση και εγγραφή. Η κατεύθυνση ελέγχεται από το σήµα R/W.

Αρχιτεκτονική µΕ 8-bit

∆είκτηςΣωρού (SP)

ΜετρητήςΠρογράµµατος

(P C)

Καταχωρητές γενικής καιειδικής χρήσης

ΜονάδαΕλέγχου

Απ οµονωτής διεύθυνσης/ δεδοµένων

ALU

Κ5

Κ3

Κ1 Κ2Κ4Κ6

Καταχωρητής Εντολών

Εξωτερικά Σήµατα Ελέγχου(CLOCK, RESET, RD, WR, IO/M, INT κλπ .)

Εσωτερικός ∆ιάδροµος ∆εδοµένων µΕ

∆ιάδροµος ∆ιευθύνσεων και ∆εδοµένων

Αρχιτεκτονική µΕ 8085

ΣΥΣΣΩΡΕΥΤΗΣ(Καταχωρητής Α)

(8)

ΠροσωρινόςΚαταχωρητής

(8)

Σηµαίες(Flip-Flops )

(5)

AΛΜ

(8)

(8)

ΧΡΟΝΙΣΜΟΣ ΚΑΙ ΕΛΕΓΧΟΣ

Ελεγχος Κατάσταση DMA RESET

CLK OUTREADYRD WR ALE

S0 S1IO/M HOLD

HLDARES ET IN

RESET OUT

X2

X1

INTR INTA' RS T5.5

RS T6.5

RS T7.5

TRAP

ΕΛΕΓΧΟΣ ∆ΙΑΚΟΠΩΝ

8-bit Εσωτερικός ∆ιάδροµος ∆εδοµένων

Σειριακή Ε/Ε

S ID SOD

Καταχωρητής Β Καταχωρητής C(8) (8)

(8) (8)

(8) (8)

Καταχωρητής D Καταχωρητής E

Καταχωρητής H Καταχωρητής L

Μετρητής Προγράµµατος(PC)

∆είκτης Στοίβας (SP )

Αποµονωτής ∆ιεύθυνσης

(16)

(16)

(16)

(8)

Απ οµονωτής∆εδοµένων/∆ιεύθυνσης

(8)

Α8-Α15 ΑD0-ΑD7∆ιάδροµος ∆ιευθύνσεων ∆ιάδροµος

∆εδοµένων/∆ιευθύνσεων

Απ οκωδικοπ οίηση Εντολών και Κωδικοπ οίηση

Κύκλων Μηχανής

Καταχωρητής Εντολών

Latch ∆ιεύθυνσηςµε Αύξηση/Μείωση

ΓεννήτριαΡολογιού

ΚαταχωρητήςΣηµαιών

S Z AC P CY

ΠΡΟΣΗΜΟ ΜΗ∆ΕΝΙΣΜΟΣ

ΒΟΗΘΗΤΙΚΟΚΡΑΤΟΥΜΕΝΟ

ΙΣΟΤΙΜΙΑ(ΑΡΤΙΑ)

ΚΡΑΤΟΥΜΕΝΟ

Τύποι Αρχιτεκτονικών ΓιαΜικροελεγκτέςΑρχιτεκτονική βασισµένη σε καταχωρητές

DATA BUS

TEMPORARY

RAMRegister

tile

ALU

Αρχιτεκτονική βασισµένη σε συσσωρευτή

DATA BUS

.

.

.

ACCUMULATOR

RAM

ALU

CPU(µPs)

ΣειριακήΕπικοινωνία

RAM128-256

bytes

ΧΡΟΝΙΣΤΕΣ1-3

RΟM1-8 Κbytes

Ι / Ο

Μετατροπείς

αναλογικού

σήµατος σε

ψηφιακή

µορφή

(AD

C)

Πολυπλέκτες

ΑναλογικέςΕίσοδοι

3 x 8 bits ΨηφιακέςΕίσοδοι - Έξοδοι

Κοινά Χαρακτηριστικά µΕ

Τεχνικά Χαρακτηριστικά Σύγχρονων µΕ

Συχνότητα λειτουργίας 40+ ΜHzΑρχιτεκτονική RISC128 Kbytes ROM (EPROM)>32 Kbyte RAM (on-chip)Μνήµη Flash 8 KbyteDMAFuzzy LogicDigital Signal Processing Capabilities(16 x 16 Multiply-Accumulate)

Υλοποίηση 7-segment display σε µΕ (Α)

Αρχιτεκτονική συστήµατος

ROM input portµΕ outputport

4 7

7-segment

BCD digit

Υλοποίηση 7-segment display σε µΕ (Β)

∆ιάγραµµα ροήςInput BCD

digit

Look-up7-bit

Output 7-bit

Από πίνακα24 = 16 bytes

Κύκλωµα Συστήµατος Ελέγχου Επίβλεψης

ΦΥΣΙΚΗ ∆ΙΑ∆ΙΚΑΣΙΑ(π.χ. Φούρνος)

D/A A/D

RS-232I/O

10 bits 10 bits

Αισθητήρας

ΑνατροφοδότησηΕλέγχου

RAMROM

CPU

ΠρογράµµαταΕλέγχου

Επικοινωνίας(Interrupts -

DMA)

ΤΡΟΠΟΙ ΕΛΕΓΧΟΥ:

INTERRUPTSPOLLINGPRIORITY

ΜODEM

ΜODEM

ΤΗΛΕΦΩΝΙΚΟ∆ΙΚΤΥΟ

ADDRESS / DATABUFFERS

INTERNAL BUS

ADDRESSCONVERSIONMECHANISM

SEGMENTREGISTER

INSTRUCTIONLOOK-AHEAD

DECODINGCIRCUIT

BUS

GENERALPURPOSE

REGISTERSPROGRAMCOUNTER

STACKPOINTER TIMING &

CONTROL

FLAGS

AddressBits

Address / Data(AD0-AD15)

ControlSignals

ALU

Αρχιτεκτονική µΕ 16-bit

Σύγχρονες Αρχιτεκτονικές Υπολογιστικών Συστηµάτων

Μιας κεντρικής µονάδας:! CISC (PCs)! RISC (Σταθµοί εργασίας)! Υψηλών επιδόσεων υπολογιστικά συστήµατα: SIMD-Array processors

! Χρησιµοποιούν τεχνολογία cache memory και pipelined αρχιτεκτονικές

Σύγχρονες Αρχιτεκτονικές Υπολογιστικών Συστηµάτων

Πολλών Επεξεργαστών! Ισχυρά διασυνδεδεµένα

" MIMD" Crossbar-switch

! Χαλαρά διασυνδεδεµένα" Transputers

! Τοπικά δίκτυα υπολογιστών (LAN) ∆ίκτυα ευρείας ζώνης (WAN)" Ανταλλαγή δεδοµένων σε υψηλές ταχύτητες" Κυριότερο πρόβληµα είναι το λογισµικό (για υποστήριξη πολυ-επεξεργασίας)

"Hypercubes"Μαζικά παράλληλοι επεξεργαστές

"High-speed serial link (>10Mbps)

Ιεραρχία ∆ιαδρόµων

I/O Interface: DMA Controller Keyboard Controller Graphics Controller

Clock µPsMath CoprocessorCommunications CoprocessorGraphics Coprocessor

CPU / PROCESSOR BUS

INTERFACE MMUCache

LOCAL BUS

System BusInterface

EPROM DRAM&

CONTROL

LOCAL I/O

SYSTEM BUS

RS-232 SCSI GPIB LAN

SYSTEM I/O

Αρχιτεκτονική των PC 486

SIMM 30 72 pinsΟργάνωση: 8 bit (+1 parity)Μέγεθος: 1 , 2, 4, 8, 16 Mbytes

Μνήµες:

Serial, Parallel, Modem, ∆ικτύουΚάρτες:

ISA ή ΑΤ-bus 8 MHz και 16-bitPCI Local Bus 33.33 MHz και 32 bit)

System Bus:

66-120 MHz % 33 MHz εσωτ. (DX2 / DX4)

33-40-50 MHz εσωτ.% ίδια εσωτ.(DX)

Ρολόι:

32-bit data bus (4 Gbytes address space)

Επεξεργαστής:

Οι µΕ 80486 και PentiumO µΕ 80486:& 168 pins& 5 Watt κατανάλωση ισχύος& 1,2 εκατ. Transistors& RISC Pipeline& Cache& Floating Point Unit (FPU)& 50-66-100-120 MHz& 32 bits

O µΕ Pentium (80586):

& 238 pins

& 8 W κατανάλωση ισχύος

& RISC 2 Pipelines (U, V) 5 σταδίων

& Cache Εντολών (8 Kbytes)

& Cache ∆εδοµένων (8 Kbytes)

& Floating Point Unit (FPU)

& 50 200 MHz

& 3,5 εκατ. Transistors

& 64 bit Data Bus, 32 Bit Address Bus

1 2 3 4 5 6 7 8 910111213141516 17

ABCDEFGHIJKLMNOPQRS

O µΕ Pentium MMX

Pentium MMX:

& MultiMedia eXtensions

& 57 Εντολές για πράξεις σε µεγάλους ακεραίους (64 bit)

& 16 Kbytes I- και D- Cache

& Pipelines 6 σταδίων

& 166 200 233 MHz

& 4,5 εκατ. Transistors

& 8 18 W κατανάλωση ισχύος (233 MHz)

Το chip του µΕ Pentium

CacheΕντολών

Cache∆εδοµένων

BUS

386

FPURISC

Write-throughWrite-back

Υπολογιστές Pentium

DIMM-168 pins:Οργάνωση: 64 bitΜέγεθος: 32-256 Mbytes

SIMM 72 pinsΟργάνωση: 32 bitΜέγεθος: 8-16-32 Mbytes

Μνήµες:

Γραφικών, Video (MPEG)Serial, Parallel στο Motherboard από chipsetΚάρτες:

PCI 32 bit και 33 ή 66 MHzSystem Bus:

233 333 MHz εσωτ. % 66 MHz εξωτ.350 450 MHz εσωτ. % 100 MHz εξωτ.Ρολόι:

64 Bit data bus, 32-36 Bit Address BusAccumulator: 32 BitΕπεξεργαστής:

∆ιαχείριση Μνήµης στα Συστήµατα Pentium

CORE L2

CPUPCI

AGP

2 επίπεδα cache:1o επίπεδο: 32 64 Kbyte (Data & program)2o επίπεδο: 256 Kbytes 1 Mbyte

Motherboard:

Chipset (2 IC)

Cache Controller

Interrupt Contr.

DMA Contr.

Απλοποιηµένη Σωλήνωση 5 Σταδίων

IF ID ALU MEM WB

κύκλοςρολογιού

ΙF : Ανάκληση εντολής

ID : Αποκωδικοποίηση εντολής

ALU : Εκτέλεση πράξης

ΜΕM : Προσπέλαση µνήµης

WB : Ενηµέρωση καταχωρητών

Φυσική Αναπαράσταση Σωλήνωσης 5 Σταδίων

EΝΤ1

EΝΤ2

EΝΤ3

EΝΤ4

EΝΤ5

EΝΤ6

Βάθος 5

IF ID ALU MEM WB

IF ID ALU MEM WB

IF ID ALU MEM WB

IF ID ALU MEM WB

IF ID ALU MEM WB

IF ID ALU MEM WB

IF ID ALU MEM WB

IF ID ALU MEM WB

0 1 2 3 4 5 6 7 8 9 10

ΚύκλοςΡολογιού

I-CACHE

DECODE CPU-REG

ALUADDRESS

GENERATION

I-CACHE

CPU-REG

IF

ID

ALU

MEM

WB

1

2

3

4

5

ClockCycle

Στάδια Σωλήνωσης στην Εκτέλεση Εντολής (Α)

IF = Instruction Fetch (Προσκόµιση Εντολής)! Προσπέλαση I-Cache! ∆ιεύθυνση % Ι-Cache % Ανάγνωση

ID = Instruction Decode (Αποκωδικοποίηση Εντολής)! Είσοδος εντολής στον αποκωδικοποιητή εντολών! Αποκωδικοποίηση! Προσδιορισµός από Μονάδα Ελέγχου µήκους εντολής, καταχωρητών, κλπ.

Στάδια Σωλήνωσης στην Εκτέλεση Εντολής (Β)

ALU=Λειτουργίες Αριθµητικής & Λογικής Μονάδας! Φόρτωση από µνήµη και αποθήκευση σε µνήµη! Υπολογισµός ενεργού διεύθυνσης! Υπολογισµός διεύθυνσης σε άλµα

ΜΕΜ = Memory Access (Προσπέλαση µνήµης)! Προσπέλαση κύριας µνήµης για φόρτωση ή αποθήκευση

WB=Write Back (Εγγραφή)! Ενηµέρωση καταχωρητών εγγραφής µε τα δεδοµένα της

µνήµης ή µε τα αποτελέσµατα της CPU

Cache Memory (A)

Λειτουργικό διάγραµµα βαθµίδων γρήγορης µνήµης που τοποθετείται µεταξύ µΕ και κύριας µνήµης

µPs

MemorySRAM

Controllers

ΚΥΡΙΑΜΝΗΜΗDRAM

DATA

DATA

NAI ENHMEP

ADDR

OXIADDR

CACHE MEMORYBUS

Cache Memory (B)

Ενοποιηµένη εξωτερική cache

CISC CACHE DRAMMEMORY

MEMORYBUS

Cache Memory (Γ)Μικροεπεξεργαστής µε εσωτερική (on-chip) cache

µP 80486ή

Pentium

I D

Εσωτ.Cache

Controller Cache RAM &Controller

DRAM

First-Level cache

Local Bus

Second-Level cache

Memory / System Bus