Description
Objectives
- understand the inner workings of (some) EDA tools and how to use them effectively to design digital hardware; - provide students with knowledge regarding cutting-edge optimization and analysis algorithms for the design of complex digital integrated circuits and their use in designing hardware - providing working knowledge of the key technologies in Electronic Design Automation (EDA), focusing on synthesis, placement and routing algorithms that perform the major transformations between levels of abstraction
Syllabus
1. Introduction to EDA, history, players, role, trade-offs in hardware design 2. Abstraction Design and Levels of Abstraction 3. Verification 4. High- Level scheduling and Allocation 5. Multi-Level Synthesis 6. Timing 7. Simulation 8. Sizing and Physical Synthesis 9. Partitioning, Floorplanning 10. Placement and Routing 11. Optimization
Prerequisites
Fundamentals of digital systems and computer architectures. Programming and Algorithms and Data Structures
Cross Competence Component
The course covers the development of transversal competences in Critical and Innovative Thinking, Interpersonal and Intrapersonal Competencies (oral, organizational and teamwork, self-discipline, perseverance, self-motivation) and Information and media literacy (ability to locate and access information) in the laboratory component. The grading weight associated with these skills is of around 10%.
Laboratorial Component
The laboratory component will consist of two parts. On one hand small projects will be presented aimed at getting the students acquainted with the various tools they will be using throughout the course in designing components of an overall project. Additionally, a project to be undertaken by the students in groups of 2 or 3 students will be developed throughout the semester. A demonstration and a report will be requested from each group.
Programming And Computing Component
The course will develop competences in the programming and computing domains, namely by: Abstraction and automation which are essentials aspects of the course itself, translation from the specification into various design descriptions, required for translating design descriptions between levels, debugging which is an essential component of verification and test.
Ethical Principles
All members of a group are responsible for the group’s work In any assessment, every student shall honestly disclose any help received and sources used. In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.