Computer Architecture
|
|
- Ashlynn Chase
- 8 years ago
- Views:
Transcription
1 Computer Architecture Slide Sets WS 2013/2014 Prof. Dr. Uwe Brinkschulte M.Sc. Benjamin Betting Part 11 Memory Management Computer Architecture Part 11 page 1 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
2 Main Memory The main memory of a processor is usually implemented as semiconductor memory in MOS technology. Bits are stored statically using so-called flip-flops or dynamically using capacitors in a so-called 1-transistor-cell. The memory is set up as a matrix. The random access is done by the decoders. SRAM Static Random Access DRAM Dynamic Random Access Computer Architecture Part 11 page 2 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
3 Main Memory The access- and cycle-time of SRAMs is faster than that of DRAMs. But the area consumption of SRAMs is increased considerably, as six transistors are needed to form a flip-flop. Due to these characteristics, DRAMs are about ten times slower and cheaper than SRAMs. Computer Architecture Part 11 page 3 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
4 Setup Principle of a RAM & SRAM DRAM row write 0 row & R S & write 1 read CE: Chip Enable WE: Write Enable OE: Output Enable I/O: Input/Output Data A: Address D: Data U DD : Power supply U SS : Ground A 0 A 1 A n-1 1 s z 1 address input: row and column address 1 z row (word) decoder 1 s 1 2 z 1 column x row memory cell column (bit) decoder sense amplifier 2 s y memory matrix column CE WE OE control I/O buffer... U DD U SS D 0 D 1 D m I/O-interface data Computer Architecture Part 11 page 4 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
5 bit 0 bit 1 & R S & R S... decoder & & & & & & R S wired or R S & & & & wired or... word 0 word 1 Setup of an SRAM & & R S R S & & & &... A w r & & & & 1 1 i 0 l 0 i 1 l 1 & &... memory matrix A: address W: write R: read i: input o: output O 0 O 1 Computer Architecture Part 11 page 5 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
6 General DRAM Principles In a DRAM, the information (a bit) is stored in a capacity. After a certain time or when read out the information is lost. Therefore this method of storage is called dynamic as opposed to the static method, where the bit is represented by the state of a flip-flop. Dynamic semiconductor memories require rewriting the information to the cell after reading it or after a certain time span (some milliseconds). This procedure is called refresh. As a result of the necessity of a refresh, the access time and the cycle time differ observably. Computer Architecture Part 11 page 6 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
7 General DRAM Principles A chip has only a limited number of connectors. Therefore a reasonable goal is to save on address lines. This is more critical for DRAMs since due to the simple cell structure much larger memory sizes can be realized as for SRAMs Therefore, most DRAMs do this by multiplexing the address and apply it successively in two parts. The synchronization of the address parts is done by the signals RAS (Row Access Strobe) and CAS (Column Access Strobe). The row access time and the column access time sum up to the overall access time. Computer Architecture Part 11 page 7 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
8 Block Diagram of a DRAM RAS (row address strobe) row address register word selection address column address register CAS (column address strobe) sense amplifier bit-selection and driver data read/ write Computer Architecture Part 11 page 8 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
9 Speeding up DRAM Access The access time of a DRAM may be shortened by: The nibble mode When the RAS signal is set, the next bits in row are delivered as well The page mode When the RAS signal is set, the full row (page) is delivered Computer Architecture Part 11 page 9 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
10 DRAM-Variants The DRAM access characteristics can be improved by several techniques. Newer DRAM variants showing much shorter access times than standard DRAMs. EDO-RAM (Extended Data Out) EDO-RAM is dynamic memory supporting address pipelining. An already addressed line is buffered an can be read using the page mode. Computer Architecture Part 11 page 10 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
11 DRAM-Variants SDRAM (Synchronous DRAM) supports burst access to sequential RAM areas. The access time is approximately that of static RAMs. SDRAMs consist of several banks having the same bit-width as the chip itself. All banks are given the same row address signal simultaneously. A row (page) is spread over several banks. The same page can be accessed repeatedly without being opened again. If a following page is accessed which was not opened, delays occur. Computer Architecture Part 11 page 11 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
12 Structure of a SDRAM chip column address row address column address counter column address buffer row address buffer refresh counter bank0 bank1 bank2 bank3 input buffer output buffer Data Computer Architecture Part 11 page 12 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
13 DRAM-Variants RAMBUS (RDRAM) The core of a 64 MB chip consists of e.g. 16 DRAM banks which can be accessed simultaneously. When a DRAM page miss occurs, other accesses may deliver their results instead. The bus clock is 400 MHz and runs at double data rate (DDR). Computer Architecture Part 11 page 13 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
14 Virtual memory Modern microprocessor systems working on several applications need large amounts of main memory. A cheap method to enlarge the memory capacity is to integrate a mass memory (like a hard disk). The main memory and mass memory are organized to pretend a main memory of nearly unlimited capacity. The available memory area is therefore called virtual memory and the concept is called virtual memory management. Computer Architecture Part 11 page 14 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
15 Virtual memory virtual memory (addressable memory) main memory (physical memory) physical address virtual address mass memory Computer Architecture Part 11 page 15 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
16 Memory Management Unit (MMU) A special hardware in the processor, the memory management unit (MMU) translates the virtual addresses generated by the processor to physical addresses in the main memory at runtime. The needed table information is provided by the operating system. In case of a missing data in the main memory, the MMU creates an event to indicate the operating system to load (swap) the missing data from mass memory CPU MMU main memory virtual address physical address operating system provides table information and loads missing data Computer Architecture Part 11 page 16 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
17 Address translation To keep the memory management overhead low, the virtual memory is organized in blocks. The MMU s mapping information therefore refers to contiguous address areas instead of single addresses. Virtual address Physical address block# offset# address translation If the size of the blocks is fixed, we talk about paging. If it is variable depending on the application structure, we talk about segmentation. Computer Architecture Part 11 page 17 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
18 Segmentation virtual address space physical address space task 1 segment 1 segment 1 Variable size segments usually belong to tasks task 2 task 3 task 4 segment 2 segment 3 segment 4 swapped in swapped out segment 4 unused mass memory Segments reflect the logical program structure and can be rather large (MBytes) A task might consist of several segments (e.g. code segment, data segment, stack segment, heap segment) Segments are either completely swapped in or out Computer Architecture Part 11 page 18 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
19 Segmentation Address Translation virtual address n bit segment address offset address phys. descriptortable start address + m bit v bit m bit p bit segment descriptor segment type physical segment start address segment size access rights segment swapped out... m bit + m bit physical address part of segment descriptor table maintained by the operating system in the main memory Computer Architecture Part 11 page 19 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
20 An Example for Segmentation virtual address segment# offset# 8 24 segment table bits segment size 32 bits physical segment start address pjhysical address Computer Architecture Part 11 page 20 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
21 An Example for Segmentation mapping of three segments to the physical address space 16M 16M 16M virtual address space 7937 Bytes 258 Bytes 3843 Bytes virtual segment# physical base address physical address space 258 Bytes 7937 Bytes 3843 Bytes Computer Architecture Part 11 page 21 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
22 Segmentation: Diskussion Pros: Segmentation reflects the logical structure of the application Changing information about a big connected memory area (like its base address, length, access attributes, or status) represented by a segment needs little effort, because only one table entry (the segment descriptor) is affected. The tables are small, as the number of segments is usually small. Computer Architecture Part 11 page 22 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
23 Segmentation: Discussion Cons: Segments must be swapped in and out as a whole, even if only a part of them is needed in the main memory. Since segments are of variable size, a suitable free place in main memory has to be found when rolling in a segment This leads to an external fragmentation of the main memory into free and occupied chunks of different sizes. The management of the memory bubbles (free areas) therefore needs additional effort, the so-called garbage collection. Computer Architecture Part 11 page 23 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
24 Paging task 1 task 2 task 3 logical address space page Task 1 page 2 page 3 page Task 14 page 5 page 6 page Task 17 page 8 page 9 page Task 10 1 unbenutzt page 11 page 12 physical address space frame Task 1 frame 2 frame 3 frame Task 14 frame 5 frame 6 frame Task 17 frame 8 frame 9 frame Task 101 unbenutzt frame 11 frame 12 frame 13 frame 14 frame Task 151 unbenutzt frame 16 frame 17 frame 18 frame 19 frame Task 20 1 unbenutzt frame 21 frame A task is spread over many fixed sized pages Pages are rather small (e.g. 0.5kByte, 1kByte, 2kByte, 4kByte) Pages are assigned to frames of the same size in physical address space Consecutive pages might not be assigned to consecutive frames A task might be partially swapped in Computer Architecture Part 11 page 24 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
25 Paging Address Translation phys. page table start address m bit + page address logical address v bit n bit offset address p bit due to small page size, the page table might be large m bit c = concatenation frame number of the page m-p bit c m bit physical address page table in main memory Computer Architecture Part 11 page 25 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
26 Hierarchical Page Tables page directory address page directory logical address page address c offset address avoids large page tables by splitting them not all page tables must be swapped in page table c physical address Computer Architecture Part 11 page 26 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
27 Translation Look Aside Buffer (TLB) page directory address TLB logical address page address offset address speeds up address translation by caching the latest referenced table entries page directory c page table c physical address Computer Architecture Part 11 page 27 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
28 Paging: Discussion Pros: Pages can be stored non-consecutively, so that the available main memory is usable in an optimal way. The management of free memory bubbles is much simpler as the pages/frames are all the same size. There is no external fragmentation. Mechanisms like the garbage collection are not needed. It is easy to change the size of a task at run-time by adding or removing pages Swapping is done more efficiently, as only the actually needed pages of a task have to be kept in the main memory. Computer Architecture Part 11 page 28 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
29 Paging: Discussion Cons: Changes of information concerning the task (e.g. access attributes) may have to be applied to many page descriptors. The translation tables are much larger than that of segmentation. The last page of a task usually is only partly filled (internal fragmentation) Computer Architecture Part 11 page 29 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
30 Combining Segmentation and Paging logical address segmentation linear address paging combines advantages of both worlds used e.g. in the Pentium family physical address Computer Architecture Part 11 page 30 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
31 Replacement Algorithms When a page or segment fault occurs, the operating system must decide which page/segment should be removed from the main memory to free up space for the page/segment to be swapped in. If the page/segment to be removed was modified in the main memory, it must be written back to the mass memory to keep it up-to-date. If it was not modified, the new page/segment just overwrites it in the main memory. To keep track of the modification state of a page/segment, a status bit is used. This bit is called the modified-bit or dirty-bit. Replacement algorithms are needed at other layers of the memory hierarchy, as well, e.g. between main memory and cache. Computer Architecture Part 11 page 31 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
32 Replacement Algorithms The system performance highly depends on the strategy by which the pages or segments to be swapped out are selected. Several strategies are possible, e.g. randomly selecting. However it has proved to be preferable to swap out a page/segment which was seldom referenced in the past. This is because a frequently referenced page/segment has a higher probability that it will be needed again soon after being swapped out and therefore would have to be swapped in again, pushing another page or segment out. This is called the locality principle. Computer Architecture Part 11 page 32 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
33 The Optimal Replacement Algorithm The best possible replacement algorithm is easy to describe, yet impossible to implement: For every page/segment residing in the main memory it is known how many memory accesses will happen until it is referenced next. If a page/segment fault occurs, the optimal replacement algorithm just swaps out the page with the highest mark. Obviously, this algorithm cannot be implemented, as the operating system has no way to calculate the references in advance. To do this it would have to have a foresight. Computer Architecture Part 11 page 33 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
34 The Optimal Replacement Algorithm The optimal replacement algorithm has a practical meaning, however: An application can be run on a simulator. During its execution all accesses are logged, so that afterwards, all times of page/segment references are known. They are then used to measure and compare algorithms which actually can be implemented. Computer Architecture Part 11 page 34 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
35 Referenced-Bit and Modified-Bit Most page replacement algorithms keep track of which pages/segments were referenced and in which mode (read or write). To do this, two status bits R and M are assigned to every page/segment. R is set if a page/segment was referenced. M is set if a page/segment was modified and therefore must be written back to the mass memory if it is to be pushed out. As these bits are set for every access to the main memory, it is necessary to let the hardware do this. A bit is set until it is reset explicitly by the software. Resetting the R-bit introduces a temporal component to the algorithm: aging. Computer Architecture Part 11 page 35 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
36 1. The Not-Recently-Used Replacement Algorithm (NRU) NRU is a simple algorithm: When a page/segment is loaded to the main memory, R and M are set to 0. R and M are set according to the previously defined rules Periodically all R bits are reset R (referenced) M (modified) class class If a page fault occurs, the operating system does a classification (see table). The page/segment to be swapped out is chosen randomly from the lowest nonempty class class class Computer Architecture Part 11 page 36 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
37 2. The First-In-First-Out Replacement Algorithm (FIFO) The basic idea of the FIFO algorithm is to keep all pages/segments in a linked list. When a page/segment is loaded to the main memory, it is appended to this list. If a fault occurs the page/segment at the head of the list is removed. However, the FIFO principle does not consider the frequency of references. In case of a fault always the oldest page/segment is swapped out, regardless if another page/segment was rarely or even never referenced. head tail Computer Architecture Part 11 page 37 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
38 3. The Second-Chance Replacement Algorithm The second-chance replacement algorithm enhances the FIFO algorithm. When a fault occurs, the R-bit of the oldest page/segment is inspected. If it is set, then it gets reset and the page/segment is put to the tail of the list. The page/segment is then treated like newly loaded and therefore gets a second chance. Only the list element at the head of the list whose R-bit is 0 get swapped out. swap in timestamp A B C D E F G H A oldest oldest youngest youngest A is treated like newly loaded Computer Architecture Part 11 page 38 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
39 4. The Clock Replacement Algorithm The maintenance cost of the secondchance algorithm is very high, as it frequently needs inserting and deleting of elements. The clock-page algorithm is more efficient by organizing the elements in a circular list. A pointer references the oldest element. If a fault occurs, the R-bit of the referenced element is inspected. If it is 0 then the element is swapped out, else the bit gets reset. In both cases the pointer advances to the next position. J K I L H A G B F C D E Computer Architecture Part 11 page 39 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
40 5. The Least-Recently-Used Replacement Algorithm (LRU) A simple implementation of LRU with hardware assistance can be as follows: The hardware provides a counter having an appropriate bit width. Every page/segment descriptor contains a data field big enough to hold the current value of this counter. For every main memory access the current counter value is written to the descriptor of the affected page/segment. If a fault occurs, the page/segment whose descriptor holds the lowest value is pushed out. However, updating the linked list and finding the descriptor with the lowest value remains costly, even with hardware assistance. Computer Architecture Part 11 page 40 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
41 6. The Least-Frequently-Used Replacement Algorithm (LFU) Another good replacement algorithm can be achieved by considering the following observation: A page/segment which was frequently referenced up to now, will probably be referenced again in the near future. Contrarily, a page/segment which was only seldom referenced will be referenced in the near future with only a small probability. This observation leads to the so-called least-frequently-used strategy (LFU): If a fault occurs, replace the page/segment which was least frequently referenced. Computer Architecture Part 11 page 41 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
42 6. The Least-Frequently-Used Replacement Algorithm (LFU) A full implementation of LFU creates high maintenance costs: It requires keeping a linked list of all pages/segments currently residing in the main memory. The element most frequently referenced will then be put to the head of the list and the element most rarely referenced to the tail of the list. To do this, a counter is associated with every element, counting the number of references to this page/segment. The high cost arises from the need to update the counter and reordering the complete list at every main memory access. Therefore a special (and expensive) hardware or a good approximation in software is needed. Computer Architecture Part 11 page 42 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
43 7. The Not-Frequently-Used Replacement Algorithm (NFU) If no full hardware implementation of LFU is available, it can be approximated by software. To do this, a counter is associated to every page/segment residing in the main memory. Periodically (not every main memory access) the R bit of each page/segment is added to the page s or segment's counter. In case of a fault the page/segment having the least counter value will be pushed out. This method is called not-frequently-used algorithm (NFU). Computer Architecture Part 11 page 43 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
44 8. The Least-Reference-Density Replacement Algorithm (LRD) LRD is a combination of LRU and LFU It tries to maintain the advantage of LFU keeping frequently used actual elements while avoiding its disadvantage keeping as well old elements very often used a long time ago LRD calculates a reference density of an element by Reference density = number of accesses to element / element age The element with the lowest reference density will be replaced This strategy comes close to the optimal strategy, unfortunately it is very complex to implement. For each element the swap-in-time and the number of accesses must be stored using e.g. a register and a counter Furthermore, a division operation has to be executed for each element when looking for the element with the lowest reference density Computer Architecture Part 11 page 44 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Computer Architecture
Computer Architecture Random Access Memory Technologies 2015. április 2. Budapest Gábor Horváth associate professor BUTE Dept. Of Networked Systems and Services ghorvath@hit.bme.hu 2 Storing data Possible
More informationMemory unit. 2 k words. n bits per word
9- k address lines Read n data input lines Memory unit 2 k words n bits per word n data output lines 24 Pearson Education, Inc M Morris Mano & Charles R Kime 9-2 Memory address Binary Decimal Memory contents
More informationComputer Systems Structure Main Memory Organization
Computer Systems Structure Main Memory Organization Peripherals Computer Central Processing Unit Main Memory Computer Systems Interconnection Communication lines Input Output Ward 1 Ward 2 Storage/Memory
More informationMemory ICS 233. Computer Architecture and Assembly Language Prof. Muhamed Mudawar
Memory ICS 233 Computer Architecture and Assembly Language Prof. Muhamed Mudawar College of Computer Sciences and Engineering King Fahd University of Petroleum and Minerals Presentation Outline Random
More information& Data Processing 2. Exercise 3: Memory Management. Dipl.-Ing. Bogdan Marin. Universität Duisburg-Essen
Folie a: Name & Data Processing 2 3: Memory Management Dipl.-Ing. Bogdan Marin Fakultät für Ingenieurwissenschaften Abteilung Elektro-und Informationstechnik -Technische Informatik- Objectives Memory Management
More information1. Memory technology & Hierarchy
1. Memory technology & Hierarchy RAM types Advances in Computer Architecture Andy D. Pimentel Memory wall Memory wall = divergence between CPU and RAM speed We can increase bandwidth by introducing concurrency
More informationOPERATING SYSTEM - VIRTUAL MEMORY
OPERATING SYSTEM - VIRTUAL MEMORY http://www.tutorialspoint.com/operating_system/os_virtual_memory.htm Copyright tutorialspoint.com A computer can address more memory than the amount physically installed
More informationModule 2. Embedded Processors and Memory. Version 2 EE IIT, Kharagpur 1
Module 2 Embedded Processors and Memory Version 2 EE IIT, Kharagpur 1 Lesson 5 Memory-I Version 2 EE IIT, Kharagpur 2 Instructional Objectives After going through this lesson the student would Pre-Requisite
More informationSecondary Storage. Any modern computer system will incorporate (at least) two levels of storage: magnetic disk/optical devices/tape systems
1 Any modern computer system will incorporate (at least) two levels of storage: primary storage: typical capacity cost per MB $3. typical access time burst transfer rate?? secondary storage: typical capacity
More informationComputer Organization and Architecture. Characteristics of Memory Systems. Chapter 4 Cache Memory. Location CPU Registers and control unit memory
Computer Organization and Architecture Chapter 4 Cache Memory Characteristics of Memory Systems Note: Appendix 4A will not be covered in class, but the material is interesting reading and may be used in
More informationSemiconductor Device Technology for Implementing System Solutions: Memory Modules
Hitachi Review Vol. 47 (1998), No. 4 141 Semiconductor Device Technology for Implementing System Solutions: Memory Modules Toshio Sugano Atsushi Hiraishi Shin ichi Ikenaga ABSTRACT: New technology is producing
More informationThe Classical Architecture. Storage 1 / 36
1 / 36 The Problem Application Data? Filesystem Logical Drive Physical Drive 2 / 36 Requirements There are different classes of requirements: Data Independence application is shielded from physical storage
More informationOperating Systems. Virtual Memory
Operating Systems Virtual Memory Virtual Memory Topics. Memory Hierarchy. Why Virtual Memory. Virtual Memory Issues. Virtual Memory Solutions. Locality of Reference. Virtual Memory with Segmentation. Page
More informationMemory Basics. SRAM/DRAM Basics
Memory Basics RAM: Random Access Memory historically defined as memory array with individual bit access refers to memory with both Read and Write capabilities ROM: Read Only Memory no capabilities for
More informationVirtual Memory Paging
COS 318: Operating Systems Virtual Memory Paging Kai Li Computer Science Department Princeton University (http://www.cs.princeton.edu/courses/cos318/) Today s Topics Paging mechanism Page replacement algorithms
More informationChapter 5 :: Memory and Logic Arrays
Chapter 5 :: Memory and Logic Arrays Digital Design and Computer Architecture David Money Harris and Sarah L. Harris Copyright 2007 Elsevier 5- ROM Storage Copyright 2007 Elsevier 5- ROM Logic Data
More informationWe r e going to play Final (exam) Jeopardy! "Answers:" "Questions:" - 1 -
. (0 pts) We re going to play Final (exam) Jeopardy! Associate the following answers with the appropriate question. (You are given the "answers": Pick the "question" that goes best with each "answer".)
More informationMemory Hierarchy. Arquitectura de Computadoras. Centro de Investigación n y de Estudios Avanzados del IPN. adiaz@cinvestav.mx. MemoryHierarchy- 1
Hierarchy Arturo Díaz D PérezP Centro de Investigación n y de Estudios Avanzados del IPN adiaz@cinvestav.mx Hierarchy- 1 The Big Picture: Where are We Now? The Five Classic Components of a Computer Processor
More informationChapter 6. Inside the System Unit. What You Will Learn... Computers Are Your Future. What You Will Learn... Describing Hardware Performance
What You Will Learn... Computers Are Your Future Chapter 6 Understand how computers represent data Understand the measurements used to describe data transfer rates and data storage capacity List the components
More informationCOMPUTER HARDWARE. Input- Output and Communication Memory Systems
COMPUTER HARDWARE Input- Output and Communication Memory Systems Computer I/O I/O devices commonly found in Computer systems Keyboards Displays Printers Magnetic Drives Compact disk read only memory (CD-ROM)
More informationHomework # 2. Solutions. 4.1 What are the differences among sequential access, direct access, and random access?
ECE337 / CS341, Fall 2005 Introduction to Computer Architecture and Organization Instructor: Victor Manuel Murray Herrera Date assigned: 09/19/05, 05:00 PM Due back: 09/30/05, 8:00 AM Homework # 2 Solutions
More informationOpenSPARC T1 Processor
OpenSPARC T1 Processor The OpenSPARC T1 processor is the first chip multiprocessor that fully implements the Sun Throughput Computing Initiative. Each of the eight SPARC processor cores has full hardware
More informationOperating Systems CSE 410, Spring 2004. File Management. Stephen Wagner Michigan State University
Operating Systems CSE 410, Spring 2004 File Management Stephen Wagner Michigan State University File Management File management system has traditionally been considered part of the operating system. Applications
More informationA N. O N Output/Input-output connection
Memory Types Two basic types: ROM: Read-only memory RAM: Read-Write memory Four commonly used memories: ROM Flash, EEPROM Static RAM (SRAM) Dynamic RAM (DRAM), SDRAM, RAMBUS, DDR RAM Generic pin configuration:
More informationNAND Flash FAQ. Eureka Technology. apn5_87. NAND Flash FAQ
What is NAND Flash? What is the major difference between NAND Flash and other Memory? Structural differences between NAND Flash and NOR Flash What does NAND Flash controller do? How to send command to
More informationNetwork Traffic Monitoring an architecture using associative processing.
Network Traffic Monitoring an architecture using associative processing. Gerald Tripp Technical Report: 7-99 Computing Laboratory, University of Kent 1 st September 1999 Abstract This paper investigates
More informationThe Quest for Speed - Memory. Cache Memory. A Solution: Memory Hierarchy. Memory Hierarchy
The Quest for Speed - Memory Cache Memory CSE 4, Spring 25 Computer Systems http://www.cs.washington.edu/4 If all memory accesses (IF/lw/sw) accessed main memory, programs would run 20 times slower And
More informationCSCA0102 IT & Business Applications. Foundation in Business Information Technology School of Engineering & Computing Sciences FTMS College Global
CSCA0102 IT & Business Applications Foundation in Business Information Technology School of Engineering & Computing Sciences FTMS College Global Chapter 2 Data Storage Concepts System Unit The system unit
More informationWith respect to the way of data access we can classify memories as:
Memory Classification With respect to the way of data access we can classify memories as: - random access memories (RAM), - sequentially accessible memory (SAM), - direct access memory (DAM), - contents
More information1 File Management. 1.1 Naming. COMP 242 Class Notes Section 6: File Management
COMP 242 Class Notes Section 6: File Management 1 File Management We shall now examine how an operating system provides file management. We shall define a file to be a collection of permanent data with
More informationChapter 11 I/O Management and Disk Scheduling
Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 11 I/O Management and Disk Scheduling Dave Bremer Otago Polytechnic, NZ 2008, Prentice Hall I/O Devices Roadmap Organization
More informationChapter 11 I/O Management and Disk Scheduling
Operatin g Systems: Internals and Design Principle s Chapter 11 I/O Management and Disk Scheduling Seventh Edition By William Stallings Operating Systems: Internals and Design Principles An artifact can
More informationTechnical Note. Micron NAND Flash Controller via Xilinx Spartan -3 FPGA. Overview. TN-29-06: NAND Flash Controller on Spartan-3 Overview
Technical Note TN-29-06: NAND Flash Controller on Spartan-3 Overview Micron NAND Flash Controller via Xilinx Spartan -3 FPGA Overview As mobile product capabilities continue to expand, so does the demand
More informationADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-17: Memory organisation, and types of memory
ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-17: Memory organisation, and types of memory 1 1. Memory Organisation 2 Random access model A memory-, a data byte, or a word, or a double
More informationMemory Testing. Memory testing.1
Memory Testing Introduction Memory Architecture & Fault Models Test Algorithms DC / AC / Dynamic Tests Built-in Self Testing Schemes Built-in Self Repair Schemes Memory testing.1 Memory Market Share in
More informationA3 Computer Architecture
A3 Computer Architecture Engineering Science 3rd year A3 Lectures Prof David Murray david.murray@eng.ox.ac.uk www.robots.ox.ac.uk/ dwm/courses/3co Michaelmas 2000 1 / 1 6. Stacks, Subroutines, and Memory
More informationA New Chapter for System Designs Using NAND Flash Memory
A New Chapter for System Designs Using Memory Jim Cooke Senior Technical Marketing Manager Micron Technology, Inc December 27, 2010 Trends and Complexities trends have been on the rise since was first
More informationUser s Manual HOW TO USE DDR SDRAM
User s Manual HOW TO USE DDR SDRAM Document No. E0234E30 (Ver.3.0) Date Published April 2002 (K) Japan URL: http://www.elpida.com Elpida Memory, Inc. 2002 INTRODUCTION This manual is intended for users
More informationMemory. The memory types currently in common usage are:
ory ory is the third key component of a microprocessor-based system (besides the CPU and I/O devices). More specifically, the primary storage directly addressed by the CPU is referred to as main memory
More informationLecture 16: Storage Devices
CS 422/522 Design & Implementation of Operating Systems Lecture 16: Storage Devices Zhong Shao Dept. of Computer Science Yale University Acknowledgement: some slides are taken from previous versions of
More informationHY345 Operating Systems
HY345 Operating Systems Recitation 2 - Memory Management Solutions Panagiotis Papadopoulos panpap@csd.uoc.gr Problem 7 Consider the following C program: int X[N]; int step = M; //M is some predefined constant
More informationMemory Management Outline. Background Swapping Contiguous Memory Allocation Paging Segmentation Segmented Paging
Memory Management Outline Background Swapping Contiguous Memory Allocation Paging Segmentation Segmented Paging 1 Background Memory is a large array of bytes memory and registers are only storage CPU can
More informationCOS 318: Operating Systems. Virtual Memory and Address Translation
COS 318: Operating Systems Virtual Memory and Address Translation Today s Topics Midterm Results Virtual Memory Virtualization Protection Address Translation Base and bound Segmentation Paging Translation
More informationTable 1 SDR to DDR Quick Reference
TECHNICAL NOTE TN-6-05 GENERAL DDR SDRAM FUNCTIONALITY INTRODUCTION The migration from single rate synchronous DRAM (SDR) to double rate synchronous DRAM (DDR) memory is upon us. Although there are many
More informationOperating Systems, 6 th ed. Test Bank Chapter 7
True / False Questions: Chapter 7 Memory Management 1. T / F In a multiprogramming system, main memory is divided into multiple sections: one for the operating system (resident monitor, kernel) and one
More informationData Storage - I: Memory Hierarchies & Disks
Data Storage - I: Memory Hierarchies & Disks W7-C, Spring 2005 Updated by M. Naci Akkøk, 27.02.2004 and 23.02.2005, based upon slides by Pål Halvorsen, 11.3.2002. Contains slides from: Hector Garcia-Molina,
More informationCHAPTER 7: The CPU and Memory
CHAPTER 7: The CPU and Memory The Architecture of Computer Hardware, Systems Software & Networking: An Information Technology Approach 4th Edition, Irv Englander John Wiley and Sons 2010 PowerPoint slides
More informationChapter 13 File and Database Systems
Chapter 13 File and Database Systems Outline 13.1 Introduction 13.2 Data Hierarchy 13.3 Files 13.4 File Systems 13.4.1 Directories 13.4. Metadata 13.4. Mounting 13.5 File Organization 13.6 File Allocation
More informationChapter 13 File and Database Systems
Chapter 13 File and Database Systems Outline 13.1 Introduction 13.2 Data Hierarchy 13.3 Files 13.4 File Systems 13.4.1 Directories 13.4. Metadata 13.4. Mounting 13.5 File Organization 13.6 File Allocation
More informationChapter 12 File Management
Operating Systems: Internals and Design Principles Chapter 12 File Management Eighth Edition By William Stallings Files Data collections created by users The File System is one of the most important parts
More informationLecture 17: Virtual Memory II. Goals of virtual memory
Lecture 17: Virtual Memory II Last Lecture: Introduction to virtual memory Today Review and continue virtual memory discussion Lecture 17 1 Goals of virtual memory Make it appear as if each process has:
More informationChapter 12 File Management
Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 12 File Management Dave Bremer Otago Polytechnic, N.Z. 2008, Prentice Hall Roadmap Overview File organisation and Access
More informationMemory unit sees only the addresses, and not how they are generated (instruction counter, indexing, direct)
Memory Management 55 Memory Management Multitasking without memory management is like having a party in a closet. Charles Petzold. Programming Windows 3.1 Programs expand to fill the memory that holds
More informationChapter 12 File Management. Roadmap
Operating Systems: Internals and Design Principles, 6/E William Stallings Chapter 12 File Management Dave Bremer Otago Polytechnic, N.Z. 2008, Prentice Hall Overview Roadmap File organisation and Access
More informationMachine Architecture and Number Systems. Major Computer Components. Schematic Diagram of a Computer. The CPU. The Bus. Main Memory.
1 Topics Machine Architecture and Number Systems Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number System Converting from Decimal to Binary Major Computer Components
More informationI/O. Input/Output. Types of devices. Interface. Computer hardware
I/O Input/Output One of the functions of the OS, controlling the I/O devices Wide range in type and speed The OS is concerned with how the interface between the hardware and the user is made The goal in
More information361 Computer Architecture Lecture 14: Cache Memory
1 361 Computer Architecture Lecture 14 Memory cache.1 The Motivation for s Memory System Processor DRAM Motivation Large memories (DRAM) are slow Small memories (SRAM) are fast Make the average access
More informationFile Management. Chapter 12
Chapter 12 File Management File is the basic element of most of the applications, since the input to an application, as well as its output, is usually a file. They also typically outlive the execution
More informationCopyright 2007 Ramez Elmasri and Shamkant B. Navathe. Slide 13-1
Slide 13-1 Chapter 13 Disk Storage, Basic File Structures, and Hashing Chapter Outline Disk Storage Devices Files of Records Operations on Files Unordered Files Ordered Files Hashed Files Dynamic and Extendible
More informationRecord Storage and Primary File Organization
Record Storage and Primary File Organization 1 C H A P T E R 4 Contents Introduction Secondary Storage Devices Buffering of Blocks Placing File Records on Disk Operations on Files Files of Unordered Records
More informationVirtual vs Physical Addresses
Virtual vs Physical Addresses Physical addresses refer to hardware addresses of physical memory. Virtual addresses refer to the virtual store viewed by the process. virtual addresses might be the same
More informationLogical Operations. Control Unit. Contents. Arithmetic Operations. Objectives. The Central Processing Unit: Arithmetic / Logic Unit.
Objectives The Central Processing Unit: What Goes on Inside the Computer Chapter 4 Identify the components of the central processing unit and how they work together and interact with memory Describe how
More informationRAM. Overview DRAM. What RAM means? DRAM
Overview RAM In this chapter, you will learn how to Identify the different types of RAM packaging Explain the varieties of DRAM Install RAM properly Perform basic RAM troubleshooting Program Execution
More informationAMD Opteron Quad-Core
AMD Opteron Quad-Core a brief overview Daniele Magliozzi Politecnico di Milano Opteron Memory Architecture native quad-core design (four cores on a single die for more efficient data sharing) enhanced
More informationW4118 Operating Systems. Instructor: Junfeng Yang
W4118 Operating Systems Instructor: Junfeng Yang Outline x86 segmentation and paging hardware Linux address space translation Copy-on-write Linux page replacement algorithm Linux dynamic memory allocation
More informationRAM & ROM Based Digital Design. ECE 152A Winter 2012
RAM & ROM Based Digital Design ECE 152A Winter 212 Reading Assignment Brown and Vranesic 1 Digital System Design 1.1 Building Block Circuits 1.1.3 Static Random Access Memory (SRAM) 1.1.4 SRAM Blocks in
More informationStorage in Database Systems. CMPSCI 445 Fall 2010
Storage in Database Systems CMPSCI 445 Fall 2010 1 Storage Topics Architecture and Overview Disks Buffer management Files of records 2 DBMS Architecture Query Parser Query Rewriter Query Optimizer Query
More informationChapter 13. Disk Storage, Basic File Structures, and Hashing
Chapter 13 Disk Storage, Basic File Structures, and Hashing Chapter Outline Disk Storage Devices Files of Records Operations on Files Unordered Files Ordered Files Hashed Files Dynamic and Extendible Hashing
More informationSlide Set 8. for ENCM 369 Winter 2015 Lecture Section 01. Steve Norman, PhD, PEng
Slide Set 8 for ENCM 369 Winter 2015 Lecture Section 01 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary Winter Term, 2015 ENCM 369 W15 Section
More informationSwitch Fabric Implementation Using Shared Memory
Order this document by /D Switch Fabric Implementation Using Shared Memory Prepared by: Lakshmi Mandyam and B. Kinney INTRODUCTION Whether it be for the World Wide Web or for an intra office network, today
More informationCS 61C: Great Ideas in Computer Architecture Virtual Memory Cont.
CS 61C: Great Ideas in Computer Architecture Virtual Memory Cont. Instructors: Vladimir Stojanovic & Nicholas Weaver http://inst.eecs.berkeley.edu/~cs61c/ 1 Bare 5-Stage Pipeline Physical Address PC Inst.
More informationINTRODUCTION The collection of data that makes up a computerized database must be stored physically on some computer storage medium.
Chapter 4: Record Storage and Primary File Organization 1 Record Storage and Primary File Organization INTRODUCTION The collection of data that makes up a computerized database must be stored physically
More informationOperating System Tutorial
Operating System Tutorial OPERATING SYSTEM TUTORIAL Simply Easy Learning by tutorialspoint.com tutorialspoint.com i ABOUT THE TUTORIAL Operating System Tutorial An operating system (OS) is a collection
More informationVirtual Memory. How is it possible for each process to have contiguous addresses and so many of them? A System Using Virtual Addressing
How is it possible for each process to have contiguous addresses and so many of them? Computer Systems Organization (Spring ) CSCI-UA, Section Instructor: Joanna Klukowska Teaching Assistants: Paige Connelly
More information1 / 25. CS 137: File Systems. Persistent Solid-State Storage
1 / 25 CS 137: File Systems Persistent Solid-State Storage Technology Change is Coming Introduction Disks are cheaper than any solid-state memory Likely to be true for many years But SSDs are now cheap
More informationMemory Allocation. Static Allocation. Dynamic Allocation. Memory Management. Dynamic Allocation. Dynamic Storage Allocation
Dynamic Storage Allocation CS 44 Operating Systems Fall 5 Presented By Vibha Prasad Memory Allocation Static Allocation (fixed in size) Sometimes we create data structures that are fixed and don t need
More informationMICROPROCESSOR BCA IV Sem MULTIPLE CHOICE QUESTIONS
MICROPROCESSOR BCA IV Sem MULTIPLE CHOICE QUESTIONS 1) Which is the microprocessor comprises: a. Register section b. One or more ALU c. Control unit 2) What is the store by register? a. data b. operands
More informationChapter 13 Disk Storage, Basic File Structures, and Hashing.
Chapter 13 Disk Storage, Basic File Structures, and Hashing. Copyright 2004 Pearson Education, Inc. Chapter Outline Disk Storage Devices Files of Records Operations on Files Unordered Files Ordered Files
More informationCommunicating with devices
Introduction to I/O Where does the data for our CPU and memory come from or go to? Computers communicate with the outside world via I/O devices. Input devices supply computers with data to operate on.
More informationComputer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to:
55 Topic 3 Computer Performance Contents 3.1 Introduction...................................... 56 3.2 Measuring performance............................... 56 3.2.1 Clock Speed.................................
More informationModeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: 03-4227151 ext:34534 Email: jimmy@ee.ncu.edu.tw. Sequential Circuit
Modeling Sequential Elements with Verilog Prof. Chien-Nan Liu TEL: 03-4227151 ext:34534 Email: jimmy@ee.ncu.edu.tw 4-1 Sequential Circuit Outputs are functions of inputs and present states of storage elements
More informationRandom Access Memory (RAM) Types of RAM. RAM Random Access Memory Jamie Tees SDRAM. Micro-DIMM SO-DIMM
Random Access Memory (RAM) Sends/Receives data quickly between CPU This is way quicker than using just the HDD RAM holds temporary data used by any open application or active / running process Multiple
More informationChapter 7 Memory and Programmable Logic
NCNU_2013_DD_7_1 Chapter 7 Memory and Programmable Logic 71I 7.1 Introduction ti 7.2 Random Access Memory 7.3 Memory Decoding 7.5 Read Only Memory 7.6 Programmable Logic Array 77P 7.7 Programmable Array
More informationPOSIX. RTOSes Part I. POSIX Versions. POSIX Versions (2)
RTOSes Part I Christopher Kenna September 24, 2010 POSIX Portable Operating System for UnIX Application portability at source-code level POSIX Family formally known as IEEE 1003 Originally 17 separate
More informationFPGA. AT6000 FPGAs. Application Note AT6000 FPGAs. 3x3 Convolver with Run-Time Reconfigurable Vector Multiplier in Atmel AT6000 FPGAs.
3x3 Convolver with Run-Time Reconfigurable Vector Multiplier in Atmel AT6000 s Introduction Convolution is one of the basic and most common operations in both analog and digital domain signal processing.
More informationLecture 9: Memory and Storage Technologies
CS61: Systems Programming and Machine Organization Harvard University, Fall 2009 Lecture 9: Memory and Storage Technologies October 1, 2009 Announcements Lab 3 has been released! You are welcome to switch
More informationFile-System Implementation
File-System Implementation 11 CHAPTER In this chapter we discuss various methods for storing information on secondary storage. The basic issues are device directory, free space management, and space allocation
More informationLecture 25 Symbian OS
CS 423 Operating Systems Design Lecture 25 Symbian OS Klara Nahrstedt Fall 2011 Based on slides from Andrew S. Tanenbaum textbook and other web-material (see acknowledgements) cs423 Fall 2011 1 Overview
More informationUnit 4.3 - Storage Structures 1. Storage Structures. Unit 4.3
Storage Structures Unit 4.3 Unit 4.3 - Storage Structures 1 The Physical Store Storage Capacity Medium Transfer Rate Seek Time Main Memory 800 MB/s 500 MB Instant Hard Drive 10 MB/s 120 GB 10 ms CD-ROM
More informationPage 1 of 5. IS 335: Information Technology in Business Lecture Outline Operating Systems
Lecture Outline Operating Systems Objectives Describe the functions and layers of an operating system List the resources allocated by the operating system and describe the allocation process Explain how
More informationFPGA Implementation of IP Packet Segmentation and Reassembly in Internet Router*
SERBIAN JOURNAL OF ELECTRICAL ENGINEERING Vol. 6, No. 3, December 2009, 399-407 UDK: 004.738.5.057.4 FPGA Implementation of IP Packet Segmentation and Reassembly in Internet Router* Marko Carević 1,a,
More informationUnderstanding Memory TYPES OF MEMORY
Understanding Memory TYPES OF MEMORY In this study unit, you ll learn about physical and logical memory. Physical memory comes in two types, random access memory (RAM) and read-only memory (ROM). Typically,
More informationEFFICIENT EXTERNAL SORTING ON FLASH MEMORY EMBEDDED DEVICES
ABSTRACT EFFICIENT EXTERNAL SORTING ON FLASH MEMORY EMBEDDED DEVICES Tyler Cossentine and Ramon Lawrence Department of Computer Science, University of British Columbia Okanagan Kelowna, BC, Canada tcossentine@gmail.com
More informationChapter 13. Chapter Outline. Disk Storage, Basic File Structures, and Hashing
Chapter 13 Disk Storage, Basic File Structures, and Hashing Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Chapter Outline Disk Storage Devices Files of Records Operations on Files Unordered Files
More informationLecture 1: Data Storage & Index
Lecture 1: Data Storage & Index R&G Chapter 8-11 Concurrency control Query Execution and Optimization Relational Operators File & Access Methods Buffer Management Disk Space Management Recovery Manager
More informationChapter 7 Memory Management
Operating Systems: Internals and Design Principles Chapter 7 Memory Management Eighth Edition William Stallings Frame Page Segment A fixed-length block of main memory. A fixed-length block of data that
More informationPrice/performance Modern Memory Hierarchy
Lecture 21: Storage Administration Take QUIZ 15 over P&H 6.1-4, 6.8-9 before 11:59pm today Project: Cache Simulator, Due April 29, 2010 NEW OFFICE HOUR TIME: Tuesday 1-2, McKinley Last Time Exam discussion
More informationChapter 12. Paging an Virtual Memory Systems
Chapter 12 Paging an Virtual Memory Systems Paging & Virtual Memory Virtual Memory - giving the illusion of more physical memory than there really is (via demand paging) Pure Paging - The total program
More informationJava Virtual Machine: the key for accurated memory prefetching
Java Virtual Machine: the key for accurated memory prefetching Yolanda Becerra Jordi Garcia Toni Cortes Nacho Navarro Computer Architecture Department Universitat Politècnica de Catalunya Barcelona, Spain
More information