Κύρια Μνήμη (Main Memory)

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Κύρια Μνήμη (Main Memory)"

Transcript

1 Κύρια Μνήμη (Main Memory) 1

2 Πηγές/Βιβλιογραφία Memory Systems: Cache, DRAM, Disk, Bruce Jacob, Spencer W. Ng, David T. Wang, Morgan Kaufmann Publishers, 2008 Onur Mutlu, Main Memory & DRAM Fundamentals, Computer Architecture - Lecture 4 ETH, 2017 (slides & video) 2

3 Η μνήμη για τον προγραμματιστή LOAD MEMORY STORE 3

4 Ιδανική Μνήμη Μηδενικό κόστος προσπέλασης (zero latency) Άπειρη χωριτικότητα (infinite capacity) Άπειρο εύρος ζώνης (infinite bandwidth) Μηδενικό κόστος ($) (zero cost) Πρόβλημα Οι απαιτήσεις της ιδανικής μνήμης είναι αντικρουόμενες Μεγάλη χωρητικότητα αυξημένος χρόνος προσπέλασης Μικρός χρόνος προσπέλασης αυξημένο κόστος ($) Μεγάλο εύρος ζώνης αυξημένο κόστος ($) 4

5 _bitline Τεχνολογίες Μνήμης: DRAM Dynamic random access memory (DRAM) Η λογική τιμή == φορτίο πυκνωτή» 1 ο πυκνωτής ειναι φορτισμένος» 0 ο πυκνωτής είναι εκφορτισμένος Μικρό δομικό στοιχείο Μεγάλη πυκνότητα (higher density) Πυκνωτής Αργή προσπέλαση (slower access) Χρειάζεται αναζωογόνηση (refresh)» ρεύματα διαρροής ο πυκνωτής μπορεί να αποφορτιστεί σε μερικά ms row enable 5

6 bitline _bitline Τεχνολογίες Μνήμης: SRAM Static random access memory (SRAM) Η λογική τιμή αποθηκεύεται σε διάταξη 2 αντιστροφέων διασταυρωμένης σύζευξης Μεγάλο δομικό στοιχείο (6Τ) Μικρή πυκνότητα (lower density) Όχι πυκνωτής Γρήγορη προσπέλαση (faster access) Δε χρειάζεται αναζωογόνηση (no refresh) row select 6

7 low cost fast access large capacity fast access Τεχνολογίες μνήμης Aπαιτήσεις μνήμης Tradeoffs Μεγαλύτερη χωρητικότητα αργή προσπέλαση SRAM, 512 Bytes, sub-nanosec SRAM, KByte~Mbyte, ~nanosec DRAM, Gigabyte, ~50 nanosec Hard Disk, Terabyte, ~10 millisec Γρηγορότερη προσπέλαση αυξημένο κόστος ($) SRAM, < 10$ per Megabyte DRAM, < 1$ per Megabyte Hard Disk < 1$ per Gigabyte Οι τιμές αλλάζουν με τον χρόνο, αλλά η τάση είναι η ίδια 7

8 faster per byte cheaper per byte Ιεραρχία μνήμης CPU Καλό locality των δεδομένων η μνήμη φαίνεται γρήγορη μεγάλη Μεταφορά δεδομένων που χρησιμοποιούνται εδώ fast and small Mem Backup large but slow Mem 8

9 Ιεραρχία μνήμης On CPU Chip Register File 32 words, sub-nsec L1 cache ~32 KB, ~nsec L2 cache ~256 KB, many nsec manual/compiler Register spilling Automatic HW management L3 cache, ~8MB, many nsec Intel RDT HW/SW management Off Chip Main memory (DRAM), GB, ~100 nsec Swap Disk 100 GB, ~10 msec Automatic (OS) demand paging 9

10 H μνήμη σε ένα σύγχρονο σύστημα Intel Broadwell-E Core i7 [2016] 10

11 On CPU Chip Ιεραρχία μνήμης Register File 32 words, sub-nsec L1 cache ~32 KB, ~nsec L2 cache ~256 KB, many nsec manual/compiler Register spilling Automatic HW management L3 cache, ~8MB, many nsec Main memory (DRAM), GB, ~100 nsec Swap Disk 100 GB, ~10 msec Automatic (OS) demand paging 11

12 Γιατί η κύρια μνήμη είναι σημαντική? 12

13 Το σύστημα κύριας μνήμης Processors and caches Main Memory Storage (SSD/HDD) Η κύρια μνήμη είναι κρίσιμο δομικό στοιχείο κάθε υπολογιστικού συτήματος: server, mobile, embedded etc. Το σύστημα της κύριας μνήμης πρέπει να κλιμακώνει (σε μέγεθος, τεχνολογία, απόδοση, κόστος, διαχείριση) για να διατηρούνται τα οφέλη της αυξημένης επίδοσης. 13

14 Η μνήμη ως διαμοιραζόμενος πόρος Η πλειοψηφία των πόρων χρησιμοποιείται για την αποθήκευση και μετάδοση data 14

15 Επίδοση 15

16 It s the Memory, Stupid! It s the Memory, Stupid! (Richard Sites, MPR, 1996) 16

17 Ενέργεια 17

18 Ενεργειακό Κόστος Επικοινωνίας Dally, HiPEAC 2015 Dally, HiPEAC 2015 A memory access consumes ~1000X the energy of a complex addition

19 Σύγχρονες Ανάγκες/Προκλήσεις Ανάγκη για μεγαλύτερη χωρητικότητα (capacity), μεγαλύτερο εύρος διαύλου (bandwidth) και καλύτερη ποιότητα υπηρεσίας (QoS) Multicore systems: cores Data-intensive applications: data (size, throughput) Consolidation: ετερογένεια 19

20 Χωρητικότητα Κύριας Μνήμης Ο αριθμός πυρήνων διπλασιάζεται ~ κάθε 2 χρόνια Η χωρητικότητα της DRAM διπλασιάζεται ~ κάθε 3 χρόνια Lim et al., ISCA 2009 Η χωρητικότητα μνήμης/πυρήνα αναμένεται να μειώνεται κατά 30% κάθε δύο χρόνια. Για το εύρος ζώνης τα πράγματα είναι χειρότερα... 20

21 DRAM Improvement (log) Bandwidth & latency 100 Capacity Bandwidth Latency 128x 20x x O χρόνος προσπέλασης παραμένει σχεδόν σταθερός 21

22 Γιατί ο χρόνος απόκρισης του συστήματος μνήμης ειναι κρίσιμός? In-memory Databases Graph/Tree Processing Εφαρμογές έντασης δεδομένων το σύστημα μνήμης γίνεται το σημείο συμφόρησης In-Memory Data Analytics Datacenter Workloads 22

23 Η μνήμη ως διαμοιραζόμενος πόρος σε σύγχρονα συστήματα FPGAs Αυξανόμενη πολυπλοκότητα και ετερογένεια! Hybrid Main Memory Heterogeneous Processors and Accelerators Persistent Memory/Storage (General Purpose) GPUs 23

24 Σύγχρονες Ανάγκες/Προκλήσεις Ανάγκη για μεγαλύτερη χωρητικότητα (capacity), μεγαλύτερο εύρος διαύλου (bandwidth) και καλύτερη ποιότητα υπηρεσίας (QoS) Multicore systems: cores Data-intensive applications: data (size, throughput) Consolidation: ετερογένεια Η κατανάλωση ενέργειας της κύριας μνήμης ~40-50% energy in off-chip (IBM, 2003) 24

25 DRAM Power consumption Υψηλή κατανάλωση ισχύος σε σύγχρονα συστήματα >40% in POWER7 (Ware+, HPCA 10) >40% in GPU (Paul+, ISCA 15) 25

26 Ενεργειακό Κόστος DRAM Refresh H DRAM καταναλώνει ενέργεια και όταν δε προσπελαύνεται Liu et al., RAIDR: Retention-Aware Intelligent DRAM Refresh, ISCA

27 Σύγχρονες Ανάγκες/Προκλήσεις Ανάγκη για μεγαλύτερη χωρητικότητα (capacity), μεγαλύτερο εύρος διαύλου (bandwidth) και καλύτερη ποιότητα υπηρεσίας (QoS) Multicore systems: cores Data-intensive applications: data (size, throughput) Consolidation: ετερογένεια Η κατανάλωση ενέργειας της κύριας μνήμης ~40-50% energy in off-chip (IBM, 2003) >40% power in DRAM Καταναλώνει ενέργεια και όταν δε χρησιμοποιείται Η κλιμάκωση (λόγω τεχνολογίας) «τελειώνει» 27

28 Κλιμακωσιμότητα DRAM O πυκνωτής πρέπει να είναι αρκετά μεγάλος για αξιόπιστη ανίχνευση φορτίου Το τρανζίστορ προσπέλασης πρέπει να είναι αρκετά μεγάλο για περιορισμένα ρεύματα διαρροής Η κλιμακωσιμότητα πέρα απο τα 40-35nm (2013) θα είναι πρόκληση [ITRS 09] (18nm, 2017) Emerging Memory Technologies 3D-Stacked DRAM higher bandwidth smaller capacity Reduced-Latency DRAM (e.g., RL/TL-DRAM, FLY-RAM) Low-Power DRAM (e.g., LPDDR3, LPDDR4, Voltron) Non-Volatile Memory (NVM) (e.g., PCM, STTRAM, ReRAM, 3D Xpoint) lower latency lower power larger capacity higher cost higher latency higher cost higher latency higher dynamic power lower endurance 28

29 Υβριδικά Συστήματα Σχεδίαση συστημάτων Χρήση πολλαπλών τεχνολογιών και HW/SW ενορχηστρωμένη διαχείριση τους CPU DRAM PCM DRAM Ctrl Ctrl Phase Change Memory (or Tech. X) Fast, durable Small, leaky, volatile, high-cost Large, non-volatile, low-cost Slow, wears out, high active energy 29

30 Near Data Processing Η μεταφορά δεδομένων καθοριστικό σημείο συμφόρησης επίδοσης και κατανάλωσης ενέργειας Ιδέα: Μείωση της μεταφοράς δεδομένων κάνοντας υπολογισμούς απευθείας εκεί οπου βρίσκονται τα δεδομένα Processor Core Cache Query Results Memory Interconnect Database Graphs Media 30

31 3D-Stacked memory Near Memory Computing Ευκαιρία: Logic + Memory Memory Logic 31

32 Αξιοπιστία/Ασφάλεια 32

33 Αξιοπιστία/Ασφάλεια Όσο η τεχνολογία κατεβαίνει σε nm μειώνεται η αξιoπιστία της Μια ιδιαίτερη ανακάλυψη (2014): Πολλές επαναλαμβανόμενες προσπελάσεις μιας γραμμής της κύριας μνήμης (DRAM row), πριν η μνήμη αναζωογονηθεί (refresh), προκαλούν σφάλματα διαταραχής σε ακολουθητικές γραμμές εμφανίζεται σε πολλά σύγχρονα πραγματικά DRAM chips (RowHammer problem) Download from: 33

34 RowHammer CPU Dally, HiPEAC 2015 Dally, HiPEAC 2015 DRAM Module loop: mov (X), %eax mov (Y), %ebx clflush (X) clflush (Y) mfence jmp loop X Y Download from: 34

35 RowHammer CPU DRAM Module loop: mov (X), %eax mov (Y), %ebx clflush (X) clflush (Y) mfence jmp loop X Y Download from: 35

36 RowHammer CPU DRAM Module loop: mov (X), %eax mov (Y), %ebx clflush (X) clflush (Y) mfence jmp loop X Y Download from: 36

37 RowHammer: Security Attack Κανείς μπορεί με προβλέψιμο τρόπο να εισάγει σφάλματα σε σύγχρονα DRAM chips Ένας απλός μηχανισμός αποτυχίας του HW μπορεί να δημιουργήσει ένα ευρύ κενό ασφαλείας στο σύστημα 37

38 RowHammer: Security Attack Κανείς μπορεί με προβλέψιμο τρόπο να εισάγει σφάλματα σε σύγχρονα DRAM chips Ένας απλός μηχανισμός αποτυχίας του HW μπορεί να δημιουργήσει ένα ευρύ κενό ασφαλείας στο σύστημα Induce bit flips in page table entries gain write access to the page table from user space gain read/write access to entire memory oiting-dram-rowhammer-bug-to-gain.html 38

39 Apple Patch for RowHammer HP, Lenovo, and other vendors released similar patches 39

40 Οργάνωση DRAM 40

41 Memory chip abstraction Address n 2 n x k bits CE (chip enable) WE (write enable) k 41

42 Address Register Row Decoder Memory Bank 222D storage array Address MSB LSB Column Decoder Data Out 42

43 Οργάνωση DRAM Channel DIMM Rank Chip Bank Row, Col Cell 43

44 Οργάνωση DRAM Bottom Up 44

45 _bitline Δομικό στοιχείο DRAM row enable Κυψελίδα (cell) 1 Πυκνωτής Λογική τιμή αποθηκεύεται με τη μορφή φορτίου πυκνωτή 1 Τρανζίστορ προσπέλασης On/Off συνδέει/αποσυνδέει τον πυκνωτή σε καλώδιο που ονομάζεται bitline 45

46 wordlines DRAM πίνακας (array) bitlines Cell Row 2D πίνακας κυψελίδων (cell) DRAM row ή DRAM page Κοινό καλώδιο (wordline) ελέγχει τα τρανζίστορ προσπέλασης. Sense Amp Sense Amp Sense Amp Sense Amp Row Buffer Row Buffer Κάθε bitline συνδέεται σε αισθητήραενισχυτή για την αξιόπιστη ανίχνευση του μικρού φορτίου πυκνωτή ενός cell. Προσπέλαση θέσης μνήμης: Ενεργοποίηση ολόκληρης γραμμής cells συνδέονται σε bitlines Ανοιγμα /τοποθέτηση γραμμής σε Row Buffer Read/Write εντολές διαβάζουν/γράφουν στο row buffer Μόνο μια γραμμή μπορεί να είναι ανοιχτή τη φορά! 46

47 Column Addr Latch Row MUX 2 14 rows DRAM πίνακας (array) -- αφαίρεση 2 10 columns 14 DRAM (2 24 bytes) 10 Column MUX 2 10 x 8 bits Row Buffer (sense amplifiers) 8 bits DRAM διεύθυνση από το memory controller Δεδομένα προς το memory controller Εντολή από τον memory controller 47

48 Column Addr Latch Row MUX 2 14 rows DRAM πίνακας (array) -- αφαίρεση 2 10 columns 14 DRAM (2 24 bytes) 10 Column MUX 2 10 x 8 bits 8 bits Row Buffer (sense amplifiers) Το μέγεθος του column είναι το width αυτου του interface Κάθε διεύθυνση είναι ένα ζεύγος <row, column> Δεδομένα προς το memory controller Εντολή από τον memory controller 48

49 Column Addr Latch Row MUX 2 14 rows Προσπέλαση DRAM array columns DRAM (2 24 bytes) 2 10 Row 0 Column MUX 2 10 x 8 bits Row Buffer (sense amplifiers) 8 bits Access Address (Row 0, Column 2) Δεδομένα προς το memory controller Εντολή από τον memory controller 49

50 Πρόβλημα Διαστρωμάτωση (interleaving/banking) Ένας μεγάλος μονολιθικός πίνακας μνήμης Έχει μεγάλο χρόνο απόκρισης (latency) Δεν επιτρέπει πολλαπλές παράλληλες προσπελάσεις (memory level parallelism MLP) Ιδέα Διαίρεση πίνακα σε N επιμέρους banks που μπορούν να προσπελαστούν στον ίδιο ή σε ακολουθητικό κύκλο (cycle) Κάθε bank έχει μέγεθος συνολική μνήμη/n Προσπέλασεις σε διαφορετικά banks επικαλύπτονται Bits της διεύθυνσης καθορίζουν σε ποιο bank θα αντιστοιχηθεί 50

51 1K rows DRAM Bank DRAM bank : ένα memory array H μικρότερη δομή μνήμης η οποία μπορεί να προσπελαστεί παράλληλα (bank level parallelism) Αφαιρετική λογική αναπαράσταση bank Address Bank 0 CE (chip enable) WE (write enable) 32 bits 51

52 DRAM chip DRAM chip: διάταξη μνήμης που αποτελείται από πολλαπλά banks (8 συνήθως) Τα banks διαμοιράζονται κοινούς διαύλους εντολών/διευθύνσεων/δεδομένων (common command/address/data buses) pipelined accesses 52

53 Row Address Decoder Column 0 Column C-1 DRAM CHIP Bank 0 Row 0 DRAM chip Bank 7 Row Address... Row R-1 ROW BUFFER Column Address DRAM address bus Column Decoder DRAM command bus DRAM MEMORY CONTROLLER 32 DRAM data bus 32 53

54 1K rows Πρόβλημα: DRAM chip Η κατασκευή ενός DRAM chip με ευρύ interface (π.χ 32-bit/pin chip) είναι ακριβή ($). DRAM CHIP Bank 7 Bank 1 Bank 0 Address Bank bits 54

55 Κατάτμηση: DRAM Rank Ιδέα: Συλλογική χρήση σύνολου chip, το καθένα με μικρό interface, για τη δημιουργία μιας ευρείας διεπαφής (wide interface). Rank: Σύνολο από chip που αποκρίνονται στην ίδια εντολή και στην ίδια διεύθυνση ταυτόχρονα αποθηκεύοντας διαφορετικό μέρος των ζητούμενων δεδομένων Μια δομική μονάδα DRAM (DRAM module) αποτελείται από 1 ή περισσοτερα ranks π.χ DIMM (dual inline memory module) αυτό συνδέουμε στη μητρική μας κάρτα! 55

56 1K rows 64-bit Wide DIMM (one rank) Παράδειγμα: δημιουργία 64-bit interface με το memory controller, με ένα rank από 8 chip με 8-bit interfaces. Η σωρευτική έξοδος δίνει τα 64-bit. DIMM DRAM CHIP 7 DRAM CHIP 1 DRAM CHIP 0 Address Bank 1 Bank 0 Bank 7 Bank bits 8 bits 8 bits 64 bits 56

57 <0:7> <8:15> <56:63> 64-bit Wide DIMM (one rank) Ένας άλλος τρόπος να το σκεφτούμε/απεικονίσουμε είναι η κατάτμηση (partitioning) του κάθε bank στα διαφορετικά chips του ίδιου rank. Chip 0 Chip 1 Chip 7 Bank 7 Bank 0 Bank 7 Bank 0... Bank 7 Bank 0 Rank 0 ROW BUFFER ROW BUFFER ROW BUFFER Data <0:63> 57

58 64-bit Wide DIMM (one rank) Τα chip του ίδιου rank έχουν κοινό command και address bus (ανταποκρίνονται στην ίδια εντολή) αλλά έχουν διαφορετικό data bus (παρέχουν διαφορετικό τμήμα των δεδομένων) DRAM Chip DRAM Chip DRAM Chip DRAM Chip DRAM Chip DRAM Chip DRAM Chip DRAM Chip Command Data 58

59 <0:7> <8:15> <56:63> 64-bit Wide DIMM (one rank) To bank εξακολουθεί να είναι η μικρότερη δομή μνήμης που μπορεί να προσπελαστεί παράλληλα, απλώς είναι κατανεμημένο. Open Bank 0, Row 0 Chip 0 Chip 1 Chip 7 Bank 7 Bank 0 Bank 7 Bank 0... Bank 7 Bank 0 Rank 0 ROW BUFFER ROW BUFFER ROW BUFFER Data <0:63> 59

60 <0:7> <8:15> <56:63> 64-bit Wide DIMM (one rank) To bank εξακολουθεί να είναι η μικρότερη δομή μνήμης που μπορεί να προσπελαστεί παράλληλα, απλώς είναι κατανεμημένο. Access data: Row0, Col 0 (8 bytes dictated by interfaces) Chip 0 Chip 1 Chip 7 Bank 7 Bank 0 Bank 7 Bank 0... Bank 7 Bank 0 Rank 0 8b 8b 8b 8Bytes Data <0:63> 60

61 <0:7> <8:15> <56:63> 64-bit Wide DIMM (one rank) Πλεονεκτήματα: Λειτουργεί ως ένα chip μεγάλης χωρητικότητας και διευρυμένης διεπαφής (wide interface) έχοντας χαμηλότερο κόστος. Ο memory controller δε χρειάζεται να διαχειριστεί τα chip Διαχειρίζεται τα banks (η μικρότερη δομή που μπορεί να προσπελαστεί παράλληλα bank level parallelism) αγνοώντας οτι ειναι κατανεμημένα. Chip 0 Chip 1 Chip 7 Bank 7 Bank 0 Bank 7 Bank 0... Bank 7 Bank 0 Rank 0 ROW BUFFER ROW BUFFER ROW BUFFER Data <0:63> 61

62 <0:7> <8:15> <56:63> 64-bit Wide DIMM (one rank) Μειονεκτήματα: Granularity: δε μπορούν να γίνουν προσπελάσεις μικρότερες από το εύρος της διεπαφής (8 bytes) Chip 0 Chip 1 Chip 7 Bank 7 Bank 0 Bank 7 Bank 0... Bank 7 Bank 0 Rank 0 ROW BUFFER ROW BUFFER ROW BUFFER Data <0:63> 62

63 Δίαυλοι DRAM (DRAM channels) Channel: Το σύνολο των banks (οργανωμένα σε ranks και DIMMs) τα οποία διαμοιράζονται κοινό link (εντολών, διευθύνσεων, δεδομένων) προς τον επεξεργαστή. 2 ανεξάρτητα Channels: 2 memory controllers 63

64 Η γενική εικόνα 64

65 Οργάνωση DRAM Top Down 65

66 Memory Channels Channel DIMM (Dual in-line memory module) Processor Memory channel Memory channel 66

67 DIMM DIMM (Dual in-line memory module) Side view Front of DIMM Back of DIMM 67

68 DIMM DIMM (Dual in-line memory module) Side view Rank 0 Rank1 68

69 Breaking Down a DIMM Ranks Rank 0 (Back) Rank 1 (Back) <0:63> MUX <0:63> Addr/Cmd CS <0:1> Data <0:63> Memory channel 69

70 <0:7> <8:15> <56:63> Chip 0 Chip 1 Chip 7 Breaking down a Rank Chip Rank 0... <0:63> Data <0:63> 70

71 <0:7> <0:7> Chip 0 Breaking down a chip Banks Bank 0 <0:7> <0:7>... MUX <0:7> 71

72 <0:7> Breaking Down a Bank 1B (column) 2kB row 16k-1 Bank 0... row 0 ROW BUFFER 1B 1B... 1B 1B 72

73 ... Παράδειγμα: Μεταφορά ενός cache block Physical memory space 0xFFFF F Channel 0 DIMM 0 0x40 0x00 64B cache block Rank 0 73

74 <0:7> <8:15> <56:63>... Παράδειγμα: Μεταφορά ενός cache block Physical memory space 0xFFFF F Chip 0 Chip 1 Chip 7 Rank x40 0x00 64B cache block Data <0:63> 74

75 <0:7> <8:15> <56:63>... Παράδειγμα: Μεταφορά ενός cache block Physical memory space 0xFFFF F Row 0 Col 0 Chip 0 Chip 1 Chip 7 Rank x40 0x00 64B cache block Data <0:63> 75

76 <0:7> <8:15> <56:63>... Παράδειγμα: Μεταφορά ενός cache block Physical memory space 0xFFFF F Row 0 Col 0 Chip 0 Chip 1 Chip 7 Rank x40 0x00 8B 64B cache block 8B Data <0:63> 76

77 <0:7> <8:15> <56:63>... Παράδειγμα: Μεταφορά ενός cache block Physical memory space 0xFFFF F Row 0 Col 1 Chip 0 Chip 1 Chip 7 Rank x40 0x00 8B 64B cache block Data <0:63> 77

78 <0:7> <8:15> <56:63>... Παράδειγμα: Μεταφορά ενός cache block Physical memory space 0xFFFF F Row 0 Col 1 Chip 0 Chip 1 Chip 7 Rank x40 0x00 8B 8B 64B cache block 8B Data <0:63> 8 κύκλοι I/O χρειάζονται για τη μεταφορά ενος block 64B Διαβάζονται 8 στήλες του κατανεμημένου bank ακολουθητικά 78

79 Γιατί τα πολλαπλά banks (interleaving) είναι σημαντικά? Επιτρέπουν πολλαπλές ταυτόχρονες προσβάσεις μνήμης Addr Bus A 0 A 1 A 2 DRAM Wait for DRAM access Wait for DRAM access Wait for DRAM Data Bus D 0 D 1 No interleaving Addr Bus A 0 A 1 A 2 A 3 DRAM Wait for DRAM bank 0 Wait for DRAM bank 1 Wait for DRAM bank 2 Wait for DRAM bank 3 Interleaving No bank conflicts Data Bus D 0 D 1 D 2 D 3 79

80 Αντιστοίχιση (mapping) σε banks (interleaving) Bits της διεύθυνσης χρησιμοποιούνται για την αντιστοίχιση Παράδειγμα: Row interleaving Row (14 bits) 2GB μνήμη, 8 banks, 16Κ rows & 2K columns per bank, memory bus 8 bytes Bank (3 bits) Column (11 bits) Byte in bus (3 bits) Ακολουθητικά rows σε ακολουθητικά banks Προσπελάσεις ακολουθητικών cache blocks εξυπηρετούνται με pipelined τρόπο Cache Block interleaving (cache block 64Β) Row (14 bits) High Col (8 bits) Bank (3 bits) Low Col (3 bits) Byte in bus (3 bits) Ακολουθητικά cache blocks σε ακολουθητικά banks Προσπελάσεις ακολουθητικών cache blocks εξυπηρετούνται παράλληλα 80

81 Πολλαπλά banks Επιτρέπουν ταυτόχρονες προσβάσεις μνήμης (concurrency) Bits της διεύθυνσης χρησιμοποιούνται για την αντιστοίχιση Στόχος: Μείωση των bank conflicts Πως επιλέγω τα bits-δείκτες για διασπορά στα banks? Τα LSB έχουν μεγαλύτερη εντροπία Χρήση συναρτίσεων κατακερματισμού (hash) (π.χ XOR διαφόρων bits της διεύθυνσης) 81

82 OS interference Virtual Memory: το λειτουργικό σύστημα μπορεί να παρέμβει στη διαδικασία αντιστοίχισης χωρίς έλεγχο (uncontrolled) VA Virtual Page Number (52bits) Page Offset (12 bits) PA Physical Page Frame (19 bits) Page Offset (12 bits) Row (14 bits) Bank (3 bits) Column (11 bits) Byte in bus (3 bits) 82

83 Πολλαπλά channels Όμοια οφέλη με πολλαπλά banks (concurrency) Ακόμα καλύτερα διότι έχουν διαφορετικά buses Αυξημένο εύρος ζώνης (bus bandwidth) Μειονεκτήματα: Αυξημένο κόστος σε $ και σε area 83

84 Αντιστοίχιση σε multiple channels C Row (14 bits) Bank (3 bits) Column (11 bits) Byte in bus (3 bits) Row (14 bits) C Bank (3 bits) Column (11 bits) Byte in bus (3 bits) Row (14 bits) Bank (3 bits) C Column (11 bits) Byte in bus (3 bits) Row (14 bits) Bank (3 bits) Column (11 bits) C Byte in bus (3 bits) 84

85 Χρόνος απόκρισης DRAM 85

86 wordlines Επισκόπηση DRAM Bank bitlines Cell Row Sense Amp Sense Amp Sense Amp Sense Amp Row Buffer 86

87 Λειρουργία DRAM 3 Βασικές Eντολές Προσπέλασης: Activate Open row (place it into Row Buffer) Read/Write Read/Write column in the Row Buffer Precharge Close the row and prepare the bank for a next access 87

88 Προσπέλαση / Περιορισμοί Χρονισμού 88

89 ACT READ PRE Προσπέλαση / Περιορισμοί χρονισμού trc Memory array tras 1. Activation trp 3. Prech. Periph. & I/O circuitry trcd 2. I/O time Bus tcl data tbl The three phases of a DRAM access Διαφορετικές ακολουθίες προσπελάσεων με διαφορετικές τοπικότητες (i.e bank, row, rank etc hit/conflict) έχουν διαφορετικούς χρόνους απόκρισης 89

90 ACT READ PRE ACT READ Προσπέλαση / Περιορισμοί χρονισμού trc Memory array tras 1. Activation trp 3. Prech. 1. Activation Periph. & I/O circuitry trcd 2. I/O trcd 2. I/O time Bus tcl data tcl data tbl tbl Consecutive accesses same bank Row Closed or Row Conflict First access trcd+tcl+tbl Second access trp+trcd+tcl+tbl 90

91 ACT READ READ READ Προσπέλαση / Περιορισμοί χρονισμού Memory array tras 1. Activation Periph. & I/O circuitry Bus trcd 2. I/O tcl 2. I/O data 2. I/O data data time tbl Consecutive accesses same bank Row Opened and Row Buffer Hit (only column access) First access trcd+tcl+tbl Second access tcl+tbl Third Acess tcl+tbl 91

92 Ποιός ελέγχει τη λειτουργία της μνήμης? Eλεγκτές μνήμης (Memory Controller) 92

93 Η DRAM ως παράδειγμα Οι μνήμες με μεγάλους χρόνους απόκρισης έχουν παρόμοια χαρακτηριστικά που απαιτούν διαχείριση/έλεγχο. Θα χρησιμοποιήσουμε την DRAM ως παράδειγμα Όμως τα βασικά ζητήματα και αρχές χρονολόγησης αιτήσεων μνήμης και ελέγχου μνήμης που θα συζητήσουμε, είναι συναφή για ελεγκτές διαφόρων τύπων μνήμης 93

94 Λειτουργίες Memory Controller Διασφαλίζει την ορθή λειτουργία της DRAM (refresh/timing) Εξυπηρετεί τις αιτήσεις μνήμης προς την DRAM σεβόμενος τους περιορισμούς χρονισμού του DRAM chip Μεταφράζει τις αιτήσεις μνήμης σε ακολουθίες εντολών DRAM (activate, read/write, precharge etc.) Περιορισμοί: resource conflicts (bank, bus, channel etc) Αποθηκεύει τις αιτήσεις σε ενδιάμεση μνήμη (buffering) και τις χρονοδρομολογεί με στόχο την υψηλή επίδοση + QoS Reordering row-buffer/bank/rank/bus etc. management Διαχειρίζεται την κατανάλωση ισχύος της DRAM Turn on/off DRAM chips 94

95 Τοποθέτηση DRAM controller Στον επεξεργαστή (on CPU chip) Μικρότερος χρόνος απόκρισης για ένα memory access Μεγαλύτερο εύρος ζώνης ανάμεσα στους πυρήνες και τον memory controller Πιο εύκολη επικοινωνία πληροφορίας μεταξύ τους (π.χ πόσο σημαντικό είναι ένα request?) Στο DRAM chipset Eυκολία πρόσδεσης (plug-in) διαφόρων τύπων μνήμης στο σύστημα Μειωμένο power budget του CPU chip 95

96 Ενας σύγχρονος memory controller Buffering/queueing requests per bank. Scheduling per bank & across banks 96

97 Ενας σύγχρονος memory controller 97

98 Διαχείριση του Row Buffer Πολιτικές: Open Row: Close Row: Hybrid: Κρατάω τη γραμμή ανοιχτή στο Row Buffer (δεν κάνω precharge αμέσως). Ακολουθητικές προσπελάσεις σε στήλες ανοιχτής γραμμής έχουν πολύ μικρότερο κόστος. Ευνοεί αιτήσεις μνήμης με locality. (commodity systems, small agent number) Κλείνω τη γραμμή στο Row Buffer (precharge αμέσως). Ακολουθητικές προσπελάσεις σε διαφορετικά rows έχουν μικρότερο κόστος. Ευνοεί irregular αιτήσεις μνήμης. (systems with large agent number) Δυναμική προσαρμοστική (adaptive) τεχνική 98

99 Row decoder Row Hit / Row Conflict Columns Rows Empty Row Buffer 99

100 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) Columns Rows Empty Row Buffer 100

101 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) Columns Row address 0 Rows Empty Row Buffer 101

102 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) Columns Row address 0 Rows Empty Row Buffer 102

103 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) Columns Row address 0 Rows Row 0 Row Buffer 103

104 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) Columns Row address 0 Rows Row 0 Row Buffer Column address 0 Column mux 104

105 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) Columns Row address 0 Rows Row 0 Row Buffer Column address 0 Column mux 105

106 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) Columns Row address 0 Rows Row 0 Row Buffer Column address 0 Column mux Data 106

107 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) Columns Row address 0 Rows Row 0 Row Buffer Column address 0 Column mux Data 107

108 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) Columns Row address 0 Rows Row 0 Row Buffer Column mux Data 108

109 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) Columns Row address 0 Rows Row 0 Row Buffer Column mux Data 109

110 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) Columns Row address 0 Rows Row 0 Row Buffer HIT Column mux Data 110

111 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) Columns Row address 0 Rows Row 0 Row Buffer HIT Column address 1 Column mux Data 111

112 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) Columns Row address 0 Rows Row 0 Row Buffer HIT Column address 1 Column mux Data 112

113 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) Columns Row address 0 Rows Row 0 Row Buffer HIT Column address 1 Column mux Data 113

114 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) Columns Row address 0 Rows Row 0 Row Buffer Column mux Data 114

115 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) Columns Row address 0 Rows Row 0 Row Buffer Column mux Data 115

116 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) Columns Row address 0 Rows Row 0 Row Buffer HIT Column mux Data 116

117 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) Columns Row address 0 Rows Row 0 Row Buffer HIT Column address 85 Column mux Data 117

118 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) Columns Row address 0 Rows Row 0 Row Buffer HIT Column address 85 Column mux Data 118

119 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) Columns Row address 0 Rows Row 0 Row Buffer HIT Column address 85 Column mux Data 119

120 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) Columns Row address 0 Rows Row 0 Row Buffer Column mux Data 120

121 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) (Row 1, Column 0) Columns Rows Row 0 Row Buffer Column mux Data 121

122 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) (Row 1, Column 0) Columns Rows Row 0 Row Buffer CONFLICT! Column mux Data 122

123 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) (Row 1, Column 0) Columns Rows Row Buffer CONFLICT! Column mux Data 123

124 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) (Row 1, Column 0) Columns Row address 1 Rows Row Buffer CONFLICT! Column mux Data 124

125 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) (Row 1, Column 0) Columns Row address 1 Rows Row Buffer CONFLICT! Column mux Data 125

126 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) (Row 1, Column 0) Columns Row address 1 Rows Row 1 Row Buffer CONFLICT! Column mux Data 126

127 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) (Row 1, Column 0) Columns Row address 1 Rows Row 1 Row Buffer CONFLICT! Column address 0 Column mux Data 127

128 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) (Row 1, Column 0) Columns Row address 1 Rows Row 1 Row Buffer CONFLICT! Column address 0 Column mux Data 128

129 Row decoder Row Hit / Row Conflict Access Address: (Row 0, Column 0) (Row 0, Column 1) (Row 0, Column 85) (Row 1, Column 0) Columns Row address 1 Rows Row 1 Row Buffer Column address 0 Column mux Data 129

130 Row Buffer Management Policies Policy First access Next access Commands needed for next access Open row Row 0 Row 0 (row hit) Read Open row Row 0 Row 1 (row conflict) Closed row Row 0 Row 0 access in request buffer (row hit) Closed row Row 0 Row 0 access not in request buffer (row closed) Precharge + Activate Row 1 + Read Read Activate Row 0 + Read + Precharge Closed row Row 0 Row 1 (row closed) Activate Row 1 + Read + Precharge 130

131 Αντιστοίχιση (mapping) διευθύνσεων channel 0 bank 5 rank 0 row 0x19C col 0x60 channel 0 bank 2 rank 0 row 0x7E2 col 0x8E 131

132 Πολιτικές χρονοδρομολόγησης DRAM Πολιτική χρονοδρομολόγησης == μηχανισμός απόδοσης προτεραιοτήτων σε διαφορετικά requests Η απόδοση προτεραιότητας μπορεί να βασίζεται Στην ηλικία του request Στον χρόνο που απαιτείται για να εξυπηρετηθεί Στον τύπο του Στην κρισιμότητα του 132

133 Πολιτικές χρονοδρομολόγησης DRAM FCFS (first come first served) - Η γηραιότερη αίτηση πρώτη FR-FCFS (first ready, first come first served) 1. Αιτήσεις που οδηγούν σε Row-Hit πρώτες 2. Η γηραιότερη αίτηση πρώτη Στόχος: Μεγιστοποίηση του row hit rate μεγιστοποίηση του DRAM throughput Η χρονοδρομολόγηση γίνεται στο επίπεδο εντολών - Εντολές στήλης (read/write) παίρνουν προτεραιότητα από τις εντολές γραμμής (activate/precharge) - Σε κάθε group οι εντολές παίρνουν προτεραιότητα με βάση το χρόνο αναμονής στην ουρά (γηραιότητα). 133

134 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

135 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

136 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

137 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

138 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

139 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

140 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

141 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

142 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

143 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

144 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

145 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

146 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

147 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

148 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

149 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

150 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

151 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

152 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

153 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

154 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

155 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

156 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

157 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

158 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

159 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

160 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

161 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T0: Row 0 T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

162 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM T0: Row 0 Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

163 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM Column mux Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

164 Row decoder Memory Interference σε πολυπύρηνες αρχιτεκτονικές Open Row Buffer FR-FCFS T1: Row 5 T1: Row 111 T1: Row 16 Memory Request Buffer Row 0 Row Buffer T0: STREAM T1: RANDOM Column mux Row size: 8KB, cache block size: 64B 128 (8KB/64B) requests of T0 serviced before T1 Data Moscibroda and Mutlu, Memory Performance Attacks, USENIX Security

165 Διαχείριση του Memory Interference Ο memory controller πρέπει να λαμβάνει υπόψη του και: Fairness Predictability Quality of Service (QoS) Μείωση/έλεγχος της παρεμβολής στο σύστημα μνήμης Έξυπνες τεχνικές χρονοδρομολόγησης σε ετερογενή πολύπλοκα συστήματα: π.χ εφαρμογή τεχνικών εκμάθησης Data/application partitiotining/mapping στα banks/ranks/channels Μεταφορά πληροφορίας μικροαρχιτεκτονική controller π.χ κρισιμότητα των requests, thread awareness κ.α 165

166 DRAM Refresh 166

167 O πυκνωτής της κυψελίδας DRAM μπορεί να αποφορτιστεί ρεύματα διαρροής Ο memory controller πρέπει να διαβάζει περιοδικά κάθε row για να αποκαθιστά το φορτίο (refresh) Activate + Precharge κάθε row άνα Ν ms (συνήθως Ν=64) Επιπτώσεις στην επίδοση: DRAM Refresh To DRAM bank δεν είναι διαθέσιμο όσο αναζωογονείται Μεγάλοι χρόνοι αναμονής: Αν όλα τα rows αναζωογονηθούν μαζί (in burst), η DRAM δεν είναι διαθέσιμη κάθε 64ms μέχρι να ολοκληρωθεί το refresh 167

168 DRAM Refresh Burst Refresh: όλα τα rows αναζωογονούνται κατευθείαν το ένα μετά το άλλο Distributed Refresh: κάθε row αναζωογονείται σε διαφορετική χρονική στιγμή ανά τακτά χρονικά διαστήματα To distributed refresh εξαλείφει τους μεγάλους χρόνους αναμονής 168

169 Refresh: Κόστος σε επίδοση Liu et al., RAIDR: Retention-Aware Intelligent DRAM Refresh, ISCA

Κύρια Μνήμη (Main Memory)

Κύρια Μνήμη (Main Memory) Κύρια Μνήμη (Main Memory) 1 Πηγές/Βιβλιογραφία Memory Systems: Cache, DRAM, Disk, Bruce Jacob, Spencer W. Ng, David T. Wang, Morgan Kaufmann Publishers, 2008 Onur Mutlu, Main Memory & DRAM Fundamentals,

Διαβάστε περισσότερα

Οργάνωση Υπολογιστών (ΙI)

Οργάνωση Υπολογιστών (ΙI) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2016-17 Οργάνωση Υπολογιστών (ΙI) (κύρια και κρυφή μνήμη) http://mixstef.github.io/courses/csintro/ Μ.Στεφανιδάκης Ένα τυπικό

Διαβάστε περισσότερα

Τεχνολογίες Κύριας Μνήμης

Τεχνολογίες Κύριας Μνήμης Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Τεχνολογίες Κύριας (και η ανάγκη για χρήση ιεραρχιών μνήμης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Κύρια Μνήμη

Διαβάστε περισσότερα

Κύρια μνήμη. Μοντέλο λειτουργίας μνήμης. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (ΙI)

Κύρια μνήμη. Μοντέλο λειτουργίας μνήμης. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (ΙI) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 015-16 Οργάνωση Υπολογιστών (ΙI) (κύρια και ) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα τυπικό υπολογιστικό

Διαβάστε περισσότερα

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Τεχνολογίες Κύριας (και η ανάγκη για χρήση ιεραρχιών μνήμης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης i Στα σύγχρονα

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Ιεραρχία συχνά και το

Διαβάστε περισσότερα

CMOS Technology for Computer Architects

CMOS Technology for Computer Architects CMOS Technology for Computer Architects Iakovos Mavroidis Giorgos Passas Manolis Katevenis Lecture 13: On chip SRAM Technology FORTH ICS / EURECCA & UoC GREECE ABC A A E F A BCDAECF A AB C DE ABCDAECF

Διαβάστε περισσότερα

Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy)

Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy) Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy) 1 Συστήματα Μνήμης Η οργάνωση του συστήματος μνήμης επηρεάζει τη λειτουργία και απόδοση ενός μικροεπεξεργαστή: Διαχείριση μνήμης και περιφερειακών (Ι/Ο) απότολειτουργικόσύστημα

Διαβάστε περισσότερα

Ιεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες

Ιεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Για βελτίωση της απόδοσης

Διαβάστε περισσότερα

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων Χειµερινό Εξάµηνο 2017-2018 Δυναµικές Μνήµες - DRAM ΗΥ220 - Γιώργος Καλοκαιρινός & Βασίλης Παπαευσταθίου 1 Βασικό Block Diagram Υποσυστηµάτων Μνήµης Word Line Address

Διαβάστε περισσότερα

Εικονική Μνήμη (Virtual Μemory)

Εικονική Μνήμη (Virtual Μemory) ΗΥ 431 Αρχιτεκτονική Παραλλήλων Συστημάτων Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1

Διαβάστε περισσότερα

ΣΤΑΤΙΚΕΣ ΚΑΙ ΔΥΝΑΜΙΚΕΣ ΜΝΗΜΕΣ ΤΥΧΑΙΑΣ ΠΡΟΣΠΕΛΑΣΗΣ (Static and Dynamic RAMs). ΔΙΑΡΘΡΩΣΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΘΕΜΑΤΙΚΕΣ ΕΝΟΤΗΤΕΣ

ΣΤΑΤΙΚΕΣ ΚΑΙ ΔΥΝΑΜΙΚΕΣ ΜΝΗΜΕΣ ΤΥΧΑΙΑΣ ΠΡΟΣΠΕΛΑΣΗΣ (Static and Dynamic RAMs). ΔΙΑΡΘΡΩΣΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΘΕΜΑΤΙΚΕΣ ΕΝΟΤΗΤΕΣ ΣΤΑΤΙΚΕΣ ΚΑΙ ΔΥΝΑΜΙΚΕΣ ΜΝΗΜΕΣ ΤΥΧΑΙΑΣ ΠΡΟΣΠΕΛΑΣΗΣ (Static and Dynamic RAMs). ΔΙΑΡΘΡΩΣΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΘΕΜΑΤΙΚΕΣ ΕΝΟΤΗΤΕΣ ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ ΗΜΙΑΓΩΓΙΚΩΝ ΜΝΗΜΩΝ. ΒΑΣΙΚΗ ΛΕΙΤΟΥΡΓΙΑ RAM CMOS. ΤΥΠΟΙ ΚΥΤΤΑΡΩΝ ΑΡΧΕΣ

Διαβάστε περισσότερα

.Λιούπης. Ψηφιακά Ηλεκτρονικά - Ηµιαγωγικές Μνήµες 1

.Λιούπης. Ψηφιακά Ηλεκτρονικά - Ηµιαγωγικές Μνήµες 1 Ψηφιακά Ηλεκτρονικά Ηµιαγωγικές µνήµες.λιούπης Ψηφιακά Ηλεκτρονικά - Ηµιαγωγικές Μνήµες 1 Τυπική εσωτερική οργάνωση µνήµης γραµµές λέξης wordlines () κύκλωµα προφόρτισης (pre-charge circuit) γραµµές ψηφίου

Διαβάστε περισσότερα

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems)

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems) Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems) Μαθηµα 2 ηµήτρης Λιούπης 1 Intel SA-1110 µc StrongARM core. System-on-Chip. Εξέλιξη των SA-110 και SA-1100. 2 ARM cores ARM: IP (intellectual

Διαβάστε περισσότερα

Ιεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης

Ιεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής ρχιτεκτονική Υπολογιστών 2016-17 Εικονική Μνήμη (και ο ρόλος της στην ιεραρχία μνήμης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Δευτερεύουσα μνήμη

Διαβάστε περισσότερα

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 7ο μάθημα: Κρυφές μνήμες (cache) - εισαγωγή Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Σύστημα μνήμης! Η μνήμη είναι σημαντικό

Διαβάστε περισσότερα

Εικονική Μνήμη (Virtual Μemory)

Εικονική Μνήμη (Virtual Μemory) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1

Διαβάστε περισσότερα

Εικονική Μνήμη (virtual memory)

Εικονική Μνήμη (virtual memory) Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται

Διαβάστε περισσότερα

Με τον όρο μνήμη αναφερόμαστε στα μέσα που χρησιμοποιούνται για την αποθήκευση προγραμμάτων και δεδομένων σε έναν υπολογιστή ή άλλη ψηφιακή

Με τον όρο μνήμη αναφερόμαστε στα μέσα που χρησιμοποιούνται για την αποθήκευση προγραμμάτων και δεδομένων σε έναν υπολογιστή ή άλλη ψηφιακή Μνήμη Με τον όρο μνήμη αναφερόμαστε στα μέσα που χρησιμοποιούνται για την αποθήκευση προγραμμάτων και δεδομένων σε έναν υπολογιστή ή άλλη ψηφιακή ηλεκτρονική συσκευή, σε προσωρινή ή μόνιμη βάση. Τα σύγχρονα

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 4 : Κρυφή Μνήμη Καρβούνης Ευάγγελος Δευτέρα, 30/11/2015 Χαρακτηριστικά Θέση Χωρητικότητα Μονάδα Μεταφοράς

Διαβάστε περισσότερα

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων. Χειμερινό Εξάμηνο

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων. Χειμερινό Εξάμηνο ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων Δυναμικές Μνήμες DRAM Χειμερινό Εξάμηνο 2009 2010 Βασικό Block Diagram Υποσυστημάτων Μνήμης Word Line Address Decoder Memory cell 2 n word lines n Address Bits RAM/ROM

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 5 : Η Εσωτερική Μνήμη Καρβούνης Ευάγγελος Τρίτη, 01/12/2015 Οι τύποι μνήμης με ημιαγωγούς 2 2 Η λειτουργία

Διαβάστε περισσότερα

Είδη των Cache Misses: 3C s

Είδη των Cache Misses: 3C s Είδη των Cache Misses: 3C s 1 Compulsory: Συμβαίνουν κατά την πρώτη πρόσβαση σε ένα block. Το block πρέπει να κληθεί από χαμηλότερα επίπεδα μνήμης και να τοποθετηθεί στην cache (αποκαλούνται και cold start

Διαβάστε περισσότερα

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. ΚΕΦΑΛΑΙΟ 4ο ΜΝΗΜΕΣ. (c) Αμπατζόγλου Γιάννης, Ηλεκτρονικός Μηχανικός, καθηγητής ΠΕ17

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. ΚΕΦΑΛΑΙΟ 4ο ΜΝΗΜΕΣ. (c) Αμπατζόγλου Γιάννης, Ηλεκτρονικός Μηχανικός, καθηγητής ΠΕ17 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 4ο ΜΝΗΜΕΣ Μνήμες (Memory) - Είναι ημιαγώγιμα κυκλώματα που μπορούν να αποθηκεύσουν ένα σύνολο από δυαδικά ψηφία (bit). - Μια μνήμη αποθηκεύει λέξεις (σειρές από bit). - Σε κάθε

Διαβάστε περισσότερα

Processor-Memory (DRAM) ιαφορά επίδοσης

Processor-Memory (DRAM) ιαφορά επίδοσης Processor-Memory (DRAM) ιαφορά επίδοσης µproc 6%/yr 98 98 982 983 984 985 986 987 988 989 99 99 992 993 994 995 996 997 998 999 2 2 22 23 24 25 Performance Processor-Memory Performance Gap: (grows 5% /

Διαβάστε περισσότερα

Μελλοντικές Κατευθύνσεις

Μελλοντικές Κατευθύνσεις Ψηφιακά Ηλεκτρονικά Μελλοντικές Κατευθύνσεις.Λιούπης Ψηφιακά Ηλεκτρονικά Μελλοντικές Κατευθύνσεις 1 Ψηφιακά Ηλεκτρονικά Μελλοντικές Κατευθύνσεις 2 Σύγχρονα Τρανζίστορ Αύξηση της απόδοσης Μίγµα silicon

Διαβάστε περισσότερα

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων Χειµερινό Εξάµηνο 2007-2008 υναµικές Μνήµες -DRAM ΗΥ220 - Βασίλης Παπαευσταθίου 1 Βασικό Block Diagram Υποσυστηµάτων Μνήµης Word Line Address Decoder Memory cell 2

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2011-12 Εικονική (και ο ρόλος της στην ιεραρχία μνήμης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Ιεραρχία η νέα τάση: [2011]

Διαβάστε περισσότερα

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων Χειμερινό Εξάμηνο 2015-2016 Στατικές Μνήμες - SRAM 1 Περίληψη Μνήμη είναι μια συλλογή από κελιά αποθήκευσης μαζί με κατάλληλα κυκλώματα για είσοδο και έξοδο από και

Διαβάστε περισσότερα

Διαφορές single-processor αρχιτεκτονικών και SoCs

Διαφορές single-processor αρχιτεκτονικών και SoCs 13.1 Τα συστήματα και η επικοινωνία μεταξύ τους γίνονται όλο και περισσότερο πολύπλοκα. Δεν μπορούν να περιγραφούνε επαρκώς στο επίπεδο RTL καθώς αυτή η διαδικασία γίνεται πλέον αρκετά χρονοβόρα. Για αυτό

Διαβάστε περισσότερα

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης.

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης Εικονική Μνήμη Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

Διάλεξη 15 Απόδοση της Ιεραρχίας Μνήμης Βελτιστοποίηση της απόδοσης

Διάλεξη 15 Απόδοση της Ιεραρχίας Μνήμης Βελτιστοποίηση της απόδοσης ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 5 Απόδοση της Ιεραρχίας Μνήμης Βελτιστοποίηση της απόδοσης Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Πόσο μεγάλη είναι μια μνήμη cache;

Διαβάστε περισσότερα

Ηλεκτρονικοί Υπολογιστές Δ Εξάμηνο

Ηλεκτρονικοί Υπολογιστές Δ Εξάμηνο AEN ΗΠΕΙΡΟΥ ΣΧΟΛΗ ΠΛΟΙΑΡΧΩΝ Ηλεκτρονικοί Υπολογιστές Δ Εξάμηνο ΘΕΩΡΙΑ 3 η Διάλεξη ΧΑΣΑΝΗΣ ΒΑΣΙΛΕΙΟΣ ΥΠΟΛΟΓΙΣΤΙΚΟ ΣΥΣΤΗΜΑ Υπολογιστικό σύστημα: Ένα δυναμικό σύστημα που: Χρησιμοποιείται για επίλυση προβλημάτων

Διαβάστε περισσότερα

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Κρυφές μνήμες

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Κρυφές μνήμες Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Κρυφές μνήμες Αρης Ευθυμίου Το σημερινό μάθημα Κρυφές μνήμες (cache memory) Βασική οργάνωση, παράμετροι: γραμμές, συσχετιστικότητα, συνολική χωρητικότητα Επίδοση:

Διαβάστε περισσότερα

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης. Cache Optimizations

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης. Cache Optimizations Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης Cache Optimizations Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων Χειµερινό Εξάµηνο 2017-2018 Στατικές Μνήµες - ΗΥ220 - Γιώργος Καλοκαιρινός & Βασίλης Παπαευσταθίου 1 Περίληψη Μνήµη είναι µια συλλογή από κελιά αποθήκευσης µαζί µε

Διαβάστε περισσότερα

Αρχιτεκτονική-ΙI Ενότητα 4 :

Αρχιτεκτονική-ΙI Ενότητα 4 : ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Αρχιτεκτονική-ΙI Ενότητα 4 : Μνήμες Ιωάννης Έλληνας Τμήμα Η/ΥΣ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Σχεδίαση και Υλοποίηση Μηχανισμού Μεταφοράς Δεδομένων από Συσκευές Αποθήκευσης σε Δίκτυο Myrinet, Χωρίς τη Μεσολάβηση της Ιεραρχίας Μνήμης

Σχεδίαση και Υλοποίηση Μηχανισμού Μεταφοράς Δεδομένων από Συσκευές Αποθήκευσης σε Δίκτυο Myrinet, Χωρίς τη Μεσολάβηση της Ιεραρχίας Μνήμης Σχεδίαση και Υλοποίηση Μηχανισμού Μεταφοράς Δεδομένων από Συσκευές Αποθήκευσης σε Δίκτυο Myrinet, Χωρίς τη Μεσολάβηση της Ιεραρχίας Μνήμης Αναστάσιος Α. Νάνος ananos@cslab.ntua.gr Επιβλέπων: Νεκτάριος

Διαβάστε περισσότερα

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων Χειµερινό Εξάµηνο 2006-2007 Στατικές Μνήµες -SRAM ΗΥ220 - Βασίλης Παπαευσταθίου 1 Περίληψη Μνήµη είναι µια συλλογή από κελιά αποθήκευσης µαζί µε κατάλληλα κυκλώµατα

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Η/Υ

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 8 «Ιδεατή Μνήμη» Διδάσκων: Δ. Λιαροκαπης Διαφάνειες: Π. Χατζηδούκας Ιδεατή Μνήμη Οργάνωση. Εισαγωγή. Ιδεατές και πραγματικές διευθύνσεις. Λογική οργάνωση. Τμηματοποίηση

Διαβάστε περισσότερα

Υ- 01 Αρχιτεκτονική Υπολογιστών

Υ- 01 Αρχιτεκτονική Υπολογιστών Υ- 01 Αρχιτεκτονική Υπολογιστών Ιεραρχία μνήμης: προχωρημένα θέματα, μέρος 2 ο Αρης Ευθυμίου Το σημερινό μάθημα Compiler op

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 11: Κρυφή Μνήμη Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr/mdasyg

Διαβάστε περισσότερα

Αποθήκευση εδομένων. ομή ενός Σ Β. Εισαγωγή Το «εσωτερικό» ενός ΜΕΡΟΣ Β : Η (εσωτερική) αρχιτεκτονική ενός Σ Β είναι σε επίπεδα

Αποθήκευση εδομένων. ομή ενός Σ Β. Εισαγωγή Το «εσωτερικό» ενός ΜΕΡΟΣ Β : Η (εσωτερική) αρχιτεκτονική ενός Σ Β είναι σε επίπεδα Αποθήκευση εδομένων Βάσεις Δεδομένων 2009-2010 Ευαγγελία Πιτουρά 1 ΜΕΡΟΣ Β : Εισαγωγή Το «εσωτερικό» ενός Σ Β ομή ενός Σ Β Η (εσωτερική) αρχιτεκτονική ενός Σ Β είναι σε επίπεδα Τυπικά, κάθε σχέση σε ένα

Διαβάστε περισσότερα

Προηγμένοι Μικροεπεξεργαστές. Paging & Segmentation

Προηγμένοι Μικροεπεξεργαστές. Paging & Segmentation Προηγμένοι Μικροεπεξεργαστές Paging & Segmentation Segmentation Τεχνική για σπάσουμε την μνήμη σε λογικά κομμάτια Κάθε κομμάτι αποθηκεύει πληροφορία σχετική με data segments for each process code segments

Διαβάστε περισσότερα

Ψηφιακή Λογική Σχεδίαση

Ψηφιακή Λογική Σχεδίαση Ψηφιακή Λογική Σχεδίαση Επιμέλεια: Γεώργιος Θεοδωρίδης, Επίκουρος Καθηγητής Ανδρέας Εμερετλής, Υποψήφιος Διδάκτορας Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Σημείωμα Αδειοδότησης Το παρόν

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Cach O p i timisati tions

Cach O p i timisati tions Cache Optimisations i 1 Διαφορά Επίδοσης Processor-Memory Performance Gap: (grows 50% / year) 2 SRAM vs DRAM 1-transistor DRAM cell 6-transistor SRAM cell 3 Intel 45nm 6T SRAM cell 4 Ιεραρχία Μνήμης Πρέπει

Διαβάστε περισσότερα

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων Χειμερινό Εξάμηνο 2013-2014 Στατικές Μνήμες - SRAM 1 Περίληψη Μνήμη είναι μια συλλογή από κελιά αποθήκευσης μαζί με κατάλληλα κυκλώματα για είσοδο και έξοδο από και

Διαβάστε περισσότερα

ΔΙΑΧΥΤΑ ΚΑΙ ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ

ΔΙΑΧΥΤΑ ΚΑΙ ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΥΤΑ ΚΑΙ ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ Πλατφόρμες ενσωματωμένων συστημάτων Διδάσκων: Παναγιώτης Καρκαζής Περίγραμμα - Δίαυλοι επικοινωνίας - Μνήμες -Συσκευές Ι/Ο Timers Counters keyboards Leds 7 segment display

Διαβάστε περισσότερα

Processor-Memory (DRAM) Διαφορά επίδοσης

Processor-Memory (DRAM) Διαφορά επίδοσης Performance Processor-Memory (DRAM) Διαφορά επίδοσης 98 98 982 983 984 985 986 987 988 989 99 99 992 993 994 995 996 997 998 999 2 2 22 23 24 25 µproc 6%/yr Processor-Memory Performance Gap: (grows 5%

Διαβάστε περισσότερα

Ψηφιακή Σχεδίαση Ενότητα 11:

Ψηφιακή Σχεδίαση Ενότητα 11: Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Ψηφιακή Σχεδίαση Ενότητα 11: Μνήμη και Προγραμματίσιμη Λογική Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Διάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης

Διάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 H Μικρο-αρχιτεκτονική μας 4 1 0 PCSrc IF/ID Control ID/EX

Διαβάστε περισσότερα

Η ιεραρχία της μνήμης

Η ιεραρχία της μνήμης Η ιεραρχία της μνήμης Οι περιορισμοί στο σχεδιασμό της μνήμης συνοψίζονται σε τρεις ερωτήσεις : 1) Πόση 2) Πόσο γρήγορη 3) Πόσο ακριβή Ερωτήματα-Απαντήσεις Ερώτημα πόση μνήμη. Είναι ανοικτό. Αν υπάρχει

Διαβάστε περισσότερα

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Ενότητα 7(α) - Ιεραρχία Μνήμης

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Ενότητα 7(α) - Ιεραρχία Μνήμης ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Ενότητα 7(α) Ιεραρχία Μνήμης 1 Οργάνωση Συστήματος Μνήμης Μια από τις κυριότερες λειτουργίες ενός υπολογιστικού συστήματος ηαποθήκευσηκαιηανάκλησηπληροφοριώναπότιςμονάδες

Διαβάστε περισσότερα

Τεχνολογία μνημών Ημιαγωγικές μνήμες Μνήμες που προσπελαύνονται με διευθύνσεις:

Τεχνολογία μνημών Ημιαγωγικές μνήμες Μνήμες που προσπελαύνονται με διευθύνσεις: Σύστημα μνήμης Ο κύριος σκοπός στο σχεδιασμό ενός συστήματος μνήμης είναι να προσφέρουμε επαρκή χωρητικότητα αποθήκευσης διατηρώντας ένα αποδεκτό επίπεδο μέσης απόδοσης και επίσης χαμηλό μέσο κόστος ανά

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Υποσύστημα μνήμης Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

Μάθημα 8: Διαχείριση Μνήμης

Μάθημα 8: Διαχείριση Μνήμης Μάθημα 8: Διαχείριση Μνήμης 8.1 Κύρια και δευτερεύουσα μνήμη Κάθε μονάδα ενός υπολογιστή που χρησιμεύει για τη μόνιμη ή προσωρινή αποθήκευση δεδομένων ανήκει στην μνήμη (memory) του υπολογιστή. Οι μνήμες

Διαβάστε περισσότερα

Εικονική Μνήμη (Virtual memory)

Εικονική Μνήμη (Virtual memory) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 16 Εικονική Μνήμη (Virtual memory) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Προβλήματα φυσικής μνήμης (1) Τι θα συμβεί εάν η μνήμη

Διαβάστε περισσότερα

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Μικροϋπολογιστής Υπολογιστής που χρησιμοποιείται για την είσοδο, επεξεργασία και έξοδο πληροφοριών. Είδη μικροϋπολογιστών:

Διαβάστε περισσότερα

Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC

Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC Πλεονεκτήματα MPSoC Είναι ευκολότερο να σχεδιαστούν πολλαπλοί πυρήνες επεξεργαστών από τον σχεδιασμό ενός ισχυρότερου και πολύ πιο σύνθετου μονού επεξεργαστή.

Διαβάστε περισσότερα

Προχωρηµένα Θέµατα Αρχιτεκτονικής

Προχωρηµένα Θέµατα Αρχιτεκτονικής Προχωρηµένα Θέµατα Αρχιτεκτονικής Memory Hierarchy Design. Λιούπης Ιεραρχία Μνήµης Τα προγράµµατα απαιτούν όλο και περισσότερη και πιο γρήγορη µνήµη Γρήγορη και µεγάλη µνήµη -> ακριβή Αυτό οδηγεί σε ιεραρχία

Διαβάστε περισσότερα

Processor-Memory (DRAM) ιαφορά επίδοσης

Processor-Memory (DRAM) ιαφορά επίδοσης Processor-Memory (DRAM) ιαφορά επίδοσης µproc 6%/yr 98 98 982 983 984 985 986 987 988 989 99 99 992 993 994 995 996 997 998 999 2 2 22 23 24 25 Performance Processor-Memory Performance Gap: (grows 5% /

Διαβάστε περισσότερα

Προχωρηµένα Θέµατα Αρχιτεκτονικής Η/Υ. Storage Systems.. Λιούπης

Προχωρηµένα Θέµατα Αρχιτεκτονικής Η/Υ. Storage Systems.. Λιούπης Προχωρηµένα Θέµατα Αρχιτεκτονικής Η/Υ Storage Systems. Λιούπης Απόδοση συστηµάτων Ι/Ο Απόδοση Ι/Ο: πόσο σηµαντική είναι; Αύξηση απόδοσης ανά έτος: CPU: περίπου 55% I/O:

Διαβάστε περισσότερα

ΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή

ΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή ΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή Αρης Ευθυμίου Σύστημα μνήμης Η μνήμη είναι σημαντικό κομμάτι ενός υπολογιστή Επηρεάζει κόστος, ταχύτητα, κατανάλωση

Διαβάστε περισσότερα

ΠΛΕ- 027 Μικροεπεξεργαστές

ΠΛΕ- 027 Μικροεπεξεργαστές ΠΛΕ- 027 Μικροεπεξεργαστές 10ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Εικονική μνήμη, σχεδίαση αποδοτικής κρυφής μνήμης, προγραμματισμός για κρυφή μνήμη Αρης Ευθυμίου Εικονική μνήμη ως cache Η κύρια

Διαβάστε περισσότερα

Κύρια & Περιφερειακή Μνήµη

Κύρια & Περιφερειακή Μνήµη Κύρια & Περιφερειακή Μνήµη Κύρια Μνήµη RAM ROM Cache Περιεχόµενα Μονάδες Μαζικής Αποθήκευσης Μαγνητικοί ίσκοι Μαγνητικές Ταινίες Οπτικά Μέσα Ηκύρια µνήµη (Main Memory) Η κύρια µνήµη: Αποθηκεύει τα δεδοµένα

Διαβάστε περισσότερα

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM). Μνήμες Ένα από τα βασικά πλεονεκτήματα των ψηφιακών συστημάτων σε σχέση με τα αναλογικά, είναι η ευκολία αποθήκευσης μεγάλων ποσοτήτων πληροφοριών, είτε προσωρινά είτε μόνιμα Οι πληροφορίες αποθηκεύονται

Διαβάστε περισσότερα

Chapter 9 Memory Basics

Chapter 9 Memory Basics Logic and Computer Design Fundamentals Chapter 9 Memory Basics Charles Kime & Thomas Kaminski 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Περίληψη Memory definitions

Διαβάστε περισσότερα

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

Συστήματα Μικροϋπολογιστών Συστήματα Μικροϋπολογιστών Συστήματα Μνημών Υπεύθυνος Μαθήματος: K. ΠΕΚΜΕΣΤΖΗ Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες,

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 3 : Μια άποψη του κορυφαίου επιπέδου λειτουργίας και διασύνδεσης του υπολογιστή Καρβούνης Ευάγγελος Η έννοια

Διαβάστε περισσότερα

Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering. Εργαστήριο 8. Χειμερινό Εξάμηνο

Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering. Εργαστήριο 8. Χειμερινό Εξάμηνο Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering Οργάνωση και Σχεδίαση Η/Y (HY232) Εργαστήριο 8 Χειμερινό Εξάμηνο 2016-2017 1. Προσομοίωση λειτουργίας ιεραρχίας

Διαβάστε περισσότερα

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Μάθημα 5 ο Οργάνωση Υπολογιστών. Δρ.

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Μάθημα 5 ο Οργάνωση Υπολογιστών. Δρ. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Πληροφορική Ι Μάθημα 5 ο Οργάνωση Υπολογιστών Δρ. Γκόγκος Χρήστος Υποσυστήματα αυτόνομου υπολογιστή Κεντρική Μονάδα Επεξεργασίας (CPU)

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΤΕΛΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) Τετάρτη, 21 Δεκεμβρίου 2016 ΔΙΑΡΚΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ 3 ΩΡΕΣ Για πλήρη

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών 1 Οργάνωση υπολογιστών ΚΜΕ Κύρια Μνήμη Υποσύστημα εισόδου/εξόδου 2 Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) R1 R2 ΑΛΜ

Διαβάστε περισσότερα

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Μάθημα 4.5 Η Μνήμη - Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Όταν ολοκληρώσεις το μάθημα αυτό θα μπορείς: Να αναφέρεις τα κυριότερα είδη μνήμης

Διαβάστε περισσότερα

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ) ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ) Συσκευές αποθήκευσης Ένας υπολογιστής προκειµένου να αποθηκεύσει δεδοµένα χρησιµοποιεί δύο τρόπους αποθήκευσης: Την Κύρια Μνήµη Τις συσκευές µόνιµης αποθήκευσης (δευτερεύουσα

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System)

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System) ..8 Κατανομή των αρχείων σε συσκευές Ακολουθείται κάποια λογική στην αποθήκευση των αρχείων:.αρχεία που χρησιμοποιούνται συχνά τοποθετούνται στους σκληρούς δίσκους που έχουν μεγάλη ταχύτητα πρόσβασης..αν

Διαβάστε περισσότερα

Οργάνωση Ιεραρχίας Μνήμης - Caches

Οργάνωση Ιεραρχίας Μνήμης - Caches Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης Οργάνωση Ιεραρχίας Μνήμης - Caches Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό

Διαβάστε περισσότερα

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing)

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 2 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Καθυστερήσεις και Εκκενώσεις Εντολών

Διαβάστε περισσότερα

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών Οργάνωση Υπολογιστών Οργάνωση υπολογιστών ΚΜΕ Κύρια Μνήμη Υποσύστημα εισόδου/εξόδου Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) R1 R2 ΑΛΜ R3 I Καταχωρητές PC Κεντρική Μονάδα Επεξεργασίας Αριθμητική και λογική μονάδα

Διαβάστε περισσότερα

ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι

ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: Λειτουργικά Συστήματα Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Διδάσκων: Καθ. Κ. Λαμπρινουδάκης clam@unipi.gr 1 ΕΙΣΑΓΩΓΗ Μνήμη : Πόρος ζωτικής σημασίας του οποίου η διαχείριση απαιτεί ιδιαίτερη

Διαβάστε περισσότερα

HY330 Ψηφιακά Κυκλώματα - Εισαγωγή στα Συστήματα VLSI. Σταθερές Μνήμες Αρχιτεκτονικές Μνήμης RAM

HY330 Ψηφιακά Κυκλώματα - Εισαγωγή στα Συστήματα VLSI.  Σταθερές Μνήμες Αρχιτεκτονικές Μνήμης RAM HY330 Ψηφιακά Κυκλώματα - Εισαγωγή στα Συστήματα VLSI Διδάσκων: Χ. Σωτηρίου, Βοηθοί: θα ανακοινωθούν http://inf-server.inf.uth.gr/courses/ce330 1 ΗΥ330 - Διάλεξη 12η - Κυκλώματα Μνήμης Περιεχόμενα Είδη

Διαβάστε περισσότερα

Μνήμη Διευθύνσεις Δείκτες. Προγραμματισμός II 1

Μνήμη Διευθύνσεις Δείκτες. Προγραμματισμός II 1 Μνήμη Διευθύνσεις Δείκτες Προγραμματισμός II 1 lalis@inf.uth.gr Μνήμη Η/Υ Ειδικό υλικό, ξεχωριστό από τον επεξεργαστή Χρησιμεύει για την αποθήκευση δεδομένων και της κατάστασης εκτέλεσης του προγράμματος

Διαβάστε περισσότερα

ΔΙΑΛΕΞΗ 8: ΕΙΚΟΝΙΚΗ (Virtual) ΜΝΗΜΗ

ΔΙΑΛΕΞΗ 8: ΕΙΚΟΝΙΚΗ (Virtual) ΜΝΗΜΗ 2/9/5 ΗΜΥ 32 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 8: ΕΙΚΟΝΙΚΗ (Virtual) ΜΝΗΜΗ Διδάσκουσα: ΜΑΡΙΑ Κ. ΜΙΧΑΗΛ Επίκουρη Καθηγήτρια, ΗΜΜΥ (mmichael@ucy.ac.cy) [Προσαρµογή από Computer Architecture,

Διαβάστε περισσότερα

Λειτουργικά Συστήματα (Λ/Σ)

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Διαχείριση Μνήμης Βασίλης Σακκάς 6/12/2013 1 Διαχείριση Μνήμης 1 Το τμήμα του Λ/Σ που διαχειρίζεται τη μνήμη λέγεται Διαχειριστής Μνήμης (Memory manager). Καθήκον του είναι

Διαβάστε περισσότερα

Δομή Ηλεκτρονικού υπολογιστή

Δομή Ηλεκτρονικού υπολογιστή Δομή Ηλεκτρονικού υπολογιστή Η κλασσική δομή του μοντέλου που πρότεινε το 1948 ο Von Neumann Κεντρική Μονάδα Επεξεργασίας Είσοδος Αποθήκη Αποθήκη - Έξοδος Εντολών Δεδομένων Κλασσικό μοντέλο Von Neumann

Διαβάστε περισσότερα

Κεντρική Μονάδα Επεξεργασίας

Κεντρική Μονάδα Επεξεργασίας Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Μονάδα Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 201 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 11: Κρυφή Μνήμη Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr/mdasyg

Διαβάστε περισσότερα

Λογικά σύμβολα των CPU, RAM, ROM και I/O module

Λογικά σύμβολα των CPU, RAM, ROM και I/O module Μικροϋπολογιστές Λογικά σύμβολα των CPU, RAM, ROM και I/O module Data CPU Data Data Address RAM Control Address Control External Data Data Address Control I/O module External Data External Control ROM

Διαβάστε περισσότερα

ΜΕΛΕΤΗ ΗΛΕΚΤΡΟΝΙΚΟΥ ΕΞΟΠΛΙΣΜΟΥ

ΜΕΛΕΤΗ ΗΛΕΚΤΡΟΝΙΚΟΥ ΕΞΟΠΛΙΣΜΟΥ ΔΕΠΑΝΟΜ Α.Ε. ΔΗΜΟΣΙΑ ΕΠΙΧΕΙΡΗΣΗ ΑΝΕΓΕΡΣΗΣ ΝΟΣΗΛΕΥΤΙΚΩΝ MΟΝΑΔΩΝ Γ.Ν. ΙΩΑΝΝΙΝΩΝ «ΧΑΤΖΗΚΩΣΤΑ» Πολυδύναμο Κέντρο Αντιμετώπισης της Κρίσης των Χρηστών Ναρκωτικών και Αλκοολισμού ΜΕΛΕΤΗ ΗΛΕΚΤΡΟΝΙΚΟΥ ΕΞΟΠΛΙΣΜΟΥ

Διαβάστε περισσότερα

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07 Ενότητα 4 Εισαγωγή στην Πληροφορική Κεφάλαιο 4Α: Αναπαράσταση πληροφορίας Κεφάλαιο 4Β: Επεξεργαστές που χρησιµοποιούνται σε PCs Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή

Διαβάστε περισσότερα

Το υλικό του υπολογιστή

Το υλικό του υπολογιστή Το υλικό του υπολογιστή Ερωτήσεις 1. Τι αντιλαμβάνεστε με τον όρο υλικό; Το υλικό(hardware) αποτελείται από το σύνολο των ηλεκτρονικών τμημάτων που συνθέτουν το υπολογιστικό σύστημα, δηλαδή από τα ηλεκτρονικά

Διαβάστε περισσότερα

Εισαγωγή στην επιστήµη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών

Εισαγωγή στην επιστήµη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών Εισαγωγή στην επιστήµη των υπολογιστών Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών Εισαγωγή Θα δούµε την οργάνωση ενός υπολογιστή Στον επόµενο µάθηµα θα δούµε πως συνδέονται πολλοί Η/Υ για να σχηµατίσουν

Διαβάστε περισσότερα

Οργάνωση Υπολογιστών (IΙI)

Οργάνωση Υπολογιστών (IΙI) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2016-17 Οργάνωση Υπολογιστών (IΙI) (συσκευές εισόδου-εξόδου) http://mixstef.github.io/courses/csintro/ Μ.Στεφανιδάκης Ένα τυπικό

Διαβάστε περισσότερα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα 1. Ποια είναι η σχέση της έννοιας του μικροεπεξεργαστή με αυτή του μικροελεγκτή; Α. Ο μικροεπεξεργαστής εμπεριέχει τουλάχιστο έναν μικροελεγκτή. Β. Ο

Διαβάστε περισσότερα

Υλικό Υπολογιστών (Hardware) ΜΥΥ-106 Εισαγωγή στους Η/Υ και Πληροφορική

Υλικό Υπολογιστών (Hardware) ΜΥΥ-106 Εισαγωγή στους Η/Υ και Πληροφορική Υλικό Υπολογιστών (Hardware) ΜΥΥ-106 Εισαγωγή στους Η/Υ και Πληροφορική Κύρια μέρη υπολογιστή Υπάρχουν διάφορα είδη υπολογιστών προσωπικοί (επιτραπέζιοι, φορητοί,...), ενσωματωμένοι, εξυπηρετητές (servers)

Διαβάστε περισσότερα

ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ ΚΑΤΑΓΡΑΦΗ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΛΙΚΟΥ ΚΑΙ ΔΙΑΥΛΩΝ ΕΠΙΚΟΙΝΩΝΙΑΣ

ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ ΚΑΤΑΓΡΑΦΗ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΛΙΚΟΥ ΚΑΙ ΔΙΑΥΛΩΝ ΕΠΙΚΟΙΝΩΝΙΑΣ ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ ΚΑΤΑΓΡΑΦΗ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΛΙΚΟΥ ΚΑΙ ΔΙΑΥΛΩΝ ΕΠΙΚΟΙΝΩΝΙΑΣ SOCKET CPU Χρόνια Επεξεργαστές Συχνότητα Yπολογιστής 2000 Intel Pentium 4 100-200 478/ Intel Celeron N Intel Pentium 4 EE 400-800

Διαβάστε περισσότερα

ΔΙΑΛΕΞΗ 8: ΕΙΚΟΝΙΚΗ (Virtual) ΜΝΗΜΗ

ΔΙΑΛΕΞΗ 8: ΕΙΚΟΝΙΚΗ (Virtual) ΜΝΗΜΗ ΗΜΥ 32 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 8: ΕΙΚΟΝΙΚΗ (Virtual) ΜΝΗΜΗ Διδάσκων: Χάρης Θεοχαρίδης, ΗΜΜΥ ttheocharides@ucy.ac.cy [Προσαρμογή από Computer Architecture, Hennessy & Patterson,

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 5 : Η Εσωτερική Μνήμη Φώτης Βαρζιώτης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα