ECE 705 Memory Systems

Covers recent research on overcoming the problem of memory access and memory speed, two major limitations on the speed of computers. Overview of the current state of memory technologies, novel cache structures and management techniques, prefetching,memory compression, and parallelism at the instruction and thread levels. Research papers required. 3 credit hours

 
   
   
Prerequisite
 

ECE 521

 

Course Objectives  

This course addresses topics in designing the memory systems of current and future microprocessor and multiprocessor architectures. Special emphasis is given for multicore processors, including the issues of how memory systems can be designed to scale to manycore processors. Various aspects of memory systems, such as latency, bandwidth, power efficiency, reliability, and security, will be covered. There will be coverage on both hardware techniques as well as software techniques such as how the OS manages the main memory. There will also be coverage of emerging technology such as virtualization and embedded DRAM, and how they affect memory system design.

This course is intended as an advanced graduate course for Master's degree students as well as PhD students working in the area of computer architecture and systems. Examples of topics that will be covered include:

  • Basic organization of caches, translation lookaside buffer, and page table.
  • Cache design issues for single processor systems
  • Cache design issues for multiprocessor and multicore systems
  • Trends in memory hierarchy design: cache sharing, non-uniform cache architecture, interconnection of cache banks, tiled cache architectures, etc.
  • Prefetching techniques
  • Advanced cache management techniques
  • Cache and memory compression techniques
  • Software management of memory: virtual memory management, memory protection
  • Reliability of the memory systems: soft errors, hard failures, error correction and detection, etc.
  • DRAM organization and its performance characteristics
  • Emerging memory technology: embedded DRAM caches, MRAM, etc.
  • Memory management in systems with virtualization
  • Memory performance isolation and Quality of Service.
  • Design of secure memory.

 

 

 

Course Requirements  

HOMEWORK: weekly paper reading assignments, plus either presentations or special reports.

EXAMINATIONS: one mid-term and one final exam

PROJECTS: one experimental project

SOFTWARE REQUIREMENTS: an SSH client, and a C/C++ language editor

 

 

 

Textbook  

There is no required textbook. Most readings are taken from research and technical papers. Students who have not taken any of ECE 521, CSC/ECE 506, or CSC 501, will be assigned required additional reading materials so that they can keep up with the course.

 

 

 

Computer and Internet Requirements  

NCSU has recommended minimum specifications for computers used for classes. Depending on your computer needs, we recommend your computer meet or exceed the following minimum specifications below.

PCs must have an Intel-compatible 1 GHz processor, 512 MB RAM, 60 GB hard drive with 1 GB free space available, 256 Color Display, CD-ROM drive, 1024x768 (min.) video adapter, sound card, and speakers. The operating system should be Windows XP Pro. Real One Player Basic (available free online) and high speed Internet connection such as cable, DSL, T1 or LAN will be required for EOL courses.

MAC users must have a G4 processor with firewire and USB factory built-in, 512 MB RAM, 60 GB with 1GB free space available, 256 Color Display, CD-ROM drive, 1024x768 (min) video adapter, sound card, and speakers. The operating system must be MacOS 10.4 (minimum) along with the above RealOne and Internet specifications above.

For more detailed information on computer specifications and recommendations, please refer to our website at: http://engineeringonline.ncsu.edu/currentstudents/computeraccess.htm

 

Instructor  

Dr. Yan Solihin, Associate Professor
2307 Partners I 2307, Box 7256
NCSU Campus
Raleigh, NC 27695

Phone: 919-513-2965
Fax: 919-513-7075
EMail: solihin@eos.ncsu.edu
Web Site: http://www.ece.ncsu.edu/arpers