CENG4120 Computer-aided Design for Very Large Scale Integrated Circuits

 

Course code CENG4120
Course title Computer-aided Design for Very Large Scale Integrated Circuits
超大規模集成電路的計算機輔助設計
Course description This course aims at providing students basic knowledge and background on VLSI CAD. The course will cover various topics on automation across the design of a VLSI circuit including but not limited to, Boolean matching, logic optimization, chip planning, placement, routing, interconnect optimization, testing and manufacturing. Students will learn to use some EDA tools and also develop some algorithms to solve EDA problems.
本科旨在賦予學生VLSI(超大規模集成)CAD(計算機輔助設計)的基本知識和背景。本科會覆蓋VLSI電路設計過程的自動化話題,包括但不限於:布爾匹配、邏輯優化、芯片規劃、布局、布線、互聯優化、測試和製造。學生將學習一些EDA(電子設計自動化)工具,並且開發一些解決EDA問題的算法。
Unit(s) 3
Course level Undergraduate
Pre-requisites CSCI2100 or CSCI2520 or ESTR2102
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 objectives At the end of the course of studies, students will have acquired:
1. Knowledge in using some commercial EDA tools;
2. Understanding of the objectives and constraints in different stages of an EDA flow;
3. Understanding of the basic methodologies and algorithms to solve problems in different stages of an EDA flow;
4. Ability to innovate and develop some new methods in solving EDA problems;
5. Knowledge of the new developments in the EDA industry. 
Learning outcomes At the end of the course of studies, students will have acquired the ability to
1. Use some EDA tools from vendors like Cadence and Synopsys;
2. Understand the objectives and constraints in different stages of an EDA flow;
3. Understand the basic methodologies and algorithms to solve problems in different stages of an EDA flow;
4. Innovate and develop some new methods in solving EDA problems;
5. Know and appreciate the new developments in the EDA industry.
Assessment
(for reference only)
Essay test or exam: 40%
Assignment: 20%
Quiz: 20%
Lab reports: 10%
Presentation: 10%
Recommended Reading List 1. “VLSI Physical Design: From Graph Partitioning to Timing Closure” by A.B. Kahng, J. Lienig, I.L. Markov and J. Hu. (Publisher: Springer)
2. “Practical Problems in VLSI Physical Design Automation” by Sung Kyu Lim, (Publisher: Springer)
3. “VHDL for Logic Synthesis”, Andrew Rushton, 3rd. Ed. (Publisher: Wiley)
4. “CMOS VLSI Design – A Circuits and Systems Perspective” by Neil H.E., Weste and D. Harris 3rd. Ed. (Publisher: Addison-Wesley)

 

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); TP
2. design, implement, test, and evaluate a computer system, component, or algorithm to meet desired needs (K/S);
TP
3. receive the broad education necessary to understand the impact of computer engineering solutions in a global and societal context (K/V); T
4. communicate effectively (S/V);
TP
5. succeed in research or industry related to computer engineering (K/S/V);
TP
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