ENGG5101 Advanced Computer Architecture


Course code ENGG5101
Course title Advanced Computer Architecture
Course description This course is designed to present an overview of some advanced computer architectures and their underlying design principles. Issues discussed will include scalability and performance evaluation. The underlying technologies such as processor and memory hierarchy, cache and shared memory, and advanced pipelining techniques will be presented. Examples of high performance vector processors, multicomputers and massive parallel processors will be compared. Some novel architectures such as VLIW, fault tolerant systems and data flow machines will also be elaborated.
Advisory: Students are expected to have taken CENG3420 or having background knowledge in computer organization.
Unit(s) 3
Course level Postgraduate
Exclusion CENG5410
Semester 1 or 2
Grading basis Graded
Grade Descriptors A/A-:  EXCELLENT – exceptionally good performance and far exceeding expectation in all or most of the course learning outcomes; demonstration of superior understanding of the subject matter, the ability to analyze problems and apply extensive knowledge, and skillful use of concepts and materials to derive proper solutions.
B+/B/B-:  GOOD – good performance in all course learning outcomes and exceeding expectation in some of them; demonstration of good understanding of the subject matter and the ability to use proper concepts and materials to solve most of the problems encountered.
C+/C/C-: FAIR – adequate performance and meeting expectation in all course learning outcomes; demonstration of adequate understanding of the subject matter and the ability to solve simple problems.
D+/D: MARGINAL – performance barely meets the expectation in the essential course learning outcomes; demonstration of partial understanding of the subject matter and the ability to solve simple problems.
F: FAILURE – performance does not meet the expectation in the essential course learning outcomes; demonstration of serious deficiencies and the need to retake the course.
Learning outcomes At the end of the course of studies, students will have acquired the ability to
1. Understand different processor architectures and system-level design processes
2. Understand the organization and operation of parallel computer systems
3. Understand memory hierarchy and its implication on system performance
4. Understand power and reliability of computer systems 5. Read and evaluate research papers
(for reference only)
Essays :40%
Essay test or exam :20%
Others :20%
Presentation :20%
Recommended Reading List 1. Computer Architecture: A Quantitative Approach, 5th edition


CENGN programme learning outcomes Course mapping
Upon completion of their studies, students will be able to:  
1. identify, formulate, and solve computer engineering problems (K/S); T
2. design, implement, test, and evaluate a computer system, component, or algorithm to meet desired needs (K/S);
3. receive the broad education necessary to understand the impact of computer engineering solutions in a global and societal context (K/V); TP
4. communicate effectively (S/V);
5. succeed in research or industry related to computer engineering (K/S/V);
6. have solid knowledge in computer engineering, including programming techniques, circuit design, micro-system prototyping, solid state device development, algorithms and theory, etc. (K/S); TP
7. integrate well into and contribute to the local society and the global community related to computer engineering (K/S/V);
8. practise high standard of professional ethics (V);
9. draw on and integrate knowledge from many related areas (K/S/V);
Remarks: K = Knowledge outcomes; S = Skills outcomes; V = Values and attitude outcomes; T = Teach; P = Practice; M = Measured