User Tools

Site Tools


announcements

Announcements

June 15, 2020

HW Discussion Session II

Dear Digital Design and Computer Architecture Students,

We released the second homework discussion session with 10 questions from HW5 to HW7.

I would like to encourage you to watch it. It can be very helpful for you to understand how to proceed with these exercises, how to reason, how to make assumptions, etc.

D2: HW Discussion Session II. https://www.youtube.com/watch?v=egOrgRZRjAk https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-discussion-session-ii-beforelecture.pptx

Optional HWs: We released the solutions to HW7: https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw7_sol_s20.pdf

REMINDER on Piazza discussions: We are glad to see more discussions on Piazza, our class's Q&A and discussion forum. If you have not registered for Piazza, I would strongly advise you to do so immediately, so that you can benefit from discussions + participate in the online discussion session. Here is how you can register for Piazza: piazza.com/ethz.ch/spring2020/252002800ldigitaltechnikfs2020

REMINDER: I would like to encourage you to keep posting questions about any course material on Piazza. Please be proactive, ask, answer, and help your classmates. We, the teaching team, will make sure that your questions receive answers.

Professor Onur Mutlu

May 29, 2020

Returning the FPGA Boards

Dear students,

We will be collecting the Basys 3 FPGA boards during the final exam. Please do not forget to bring your FPGA board to the exam room on the day of the exam.

Alternatively, if it is not possible for you to bring the FPGA board to the exam, you can send us the board by post to the following address.

Hasan Ibrahim Hasan, Universitatstrasse 6, CAB E 78, CH-8006 Zurich

We wish you good luck with your final exam.

May 27, 2020

Week of May 25-29 (Lectures 24-25 and HW Discussion Session I)

Dear Digital Design and Computer Architecture Students,

Lecture materials (lecture videos, readings, buzzwords) for Lectures 24 and 25 are already available on the course website. In addition, we release a homework discussion session with 10 exercises from HW1 to HW4. https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=schedule

In Lecture 24, we will finish the study of the concept of virtual memory. We will learn how processors use a Page Table to perform the virtual-to-physical address translation. To make the translation faster, processors incorporate a small cache for the page table that is called Translation Lookaside Buffer (TLB). We will finish the lecture with an overview of security implications related to virtual memory.

L24: Virtual Memory II. https://youtu.be/0WuUAAxUaOI https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture24-virtual-memory-ii-afterlecture.pptx

As an epilogue to the lectures, Lecture 25 reviews the main goals of the course and reminds you how Digital Design and Computer Architecture will be useful to you in every field of Computer Science. We will also introduce several ideas and topics in Computer Architecture that we did not have time to cover in this course (e.g., prefetching, runahead execution), but are also exciting and widely-used in computers these days. Finally, I would like to encourage you to continue expanding your knowledge on Computer Architecture with the Seminar and the Master's course, and get in touch with me if you are interested in doing research on Computer Architecture. We have many exciting projects and research positions available.

L25: Epilogue. https://youtu.be/_ILEe86Oxmo https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture25-epilogue-beforelecture.pptx

In order to clarify some key types of HW questions, we have prepared a discussion session for HWs 1 to 4. I would really like to encourage you to watch it. It can be very helpful for you to understand how to proceed with these exercises, how to reason, how to make assumptions, etc. We will release the second discussion session for HWs 5 to 7 in early June.

D1: HW Discussion Session I. https://youtu.be/tAgqUbR3VJc https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-discussionsession1-beforelecture.pptx

Office hours: You can attend office hours every week, as indicated in a previous post: https://moodle-app2.let.ethz.ch/mod/forum/discuss.php?d=43137

Optional HWs: This week, we will release the solutions to HW6 and the new HW7.

REMINDER on Piazza discussions: We are glad to see more discussions on Piazza, our class's Q&A and discussion forum. If you have not registered for Piazza, I would strongly advise you to do so immediately, so that you can benefit from discussions + participate in the online discussion session. Here is how you can register for Piazza: piazza.com/ethz.ch/spring2020/252002800ldigitaltechnikfs2020

REMINDER: I would like to encourage you to keep posting questions about the lectures (and any other material we cover in the course) on Piazza. It would be good to see more participation. Be proactive, ask, answer, and help your classmates. We, the teaching team, will make sure that your questions receive answers. At some point, when the volume of interesting questions is large enough, we will plan for an online discussion session to handle some of the asked questions. The key to this is, of course, your participation in asking questions on Piazza – so, please participate if you would like clarifications on any topic.

I would encourage you to see past emails for other reminders about labs, Piazza, pacing yourself in all aspects of the course, and making use of other optional online resources. As you already know, all parts of the course are online and I would suggest making progress on all parts, without falling behind on any.

Enjoy the best of online learning and let us know if you have any comments or suggestions.

I wish you all the best in your studies during these difficult times.

Professor Onur Mutlu

May 21, 2020

Week of May 18-22 (Lecture 23)

Dear Digital Design and Computer Architecture Students,

Lecture materials (lecture videos, readings, buzzwords) for Lectures 23a and 23b are already available on the course website. https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=schedule

This week, we will continue with the study of caches, with a focus on caching issues in multiprocessor systems. Since almost all modern systems are multiprocessor (multi-core) systems, issues that arise with caches in such systems are pretty much everywhere in the computers we use. Unfortunately, we do not have enough time in this semester to cover the issues in depth, but hopefully this week's lecture will serve as an introduction to some interesting and challenging problems such as fair caching and cache coherence.

We will also start the study of the concept of virtual memory this week. Virtual memory is yet another architectural concept that has eased the lives of programmers since its invention in the 1960s. It has relieved the programmer from having to manage limited amount of physical memory in their programs and essentially assume they have “infinite” (or, more accurately, large enough) memory. Virtual memory is also one of the most prominent successful examples of hardware/software cooperation in computing systems. We will continue its study next week.

L23a: Multiprocessor Caches. https://youtu.be/OUk96_Bz708 https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture23a-multiprocessor-caches-beforelecture.pptx

L23b: Virtual Memory. https://youtu.be/0mGI4btwI_k https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture23b-virtual-memory-beforelecture.pptx

Office hours: You can attend office hours every week, as indicated in a previous post: https://moodle-app2.let.ethz.ch/mod/forum/discuss.php?d=43137

Optional HWs: Last week, we released the new HW6: https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw6.pdf

REMINDER on Piazza discussions: We are glad to see more discussions on Piazza, our class's Q&A and discussion forum. If you have not registered for Piazza, I would strongly advise you to do so immediately, so that you can benefit from discussions + participate in the online discussion session. Here is how you can register for Piazza: piazza.com/ethz.ch/spring2020/252002800ldigitaltechnikfs2020

REMINDER: I would like to encourage you to keep posting questions about the lectures (and any other material we cover in the course) on Piazza. It would be good to see more participation. Be proactive, ask, answer, and help your classmates. We, the teaching team, will make sure that your questions receive answers. At some point, when the volume of interesting questions is large enough, we will plan for an online discussion session to handle some of the asked questions. The key to this is, of course, your participation in asking questions on Piazza – so, please participate if you would like clarifications on any topic.

I would encourage you to see past emails for other reminders about labs, Piazza, pacing yourself in all aspects of the course, and making use of other optional online resources. As you already know, all parts of the course are online and I would suggest making progress on all parts, without falling behind on any.

Enjoy the best of online learning and let us know if you have any comments or suggestions.

I wish you all the best in your studies during these difficult times.

Professor Onur Mutlu

May 13, 2020

Week of May 11-15 (Lecture 21-22)

Dear Digital Design and Computer Architecture Students,

Lecture materials (lecture videos, readings, buzzwords) for Lectures 21 and 22 are already available on the course website. https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=schedule

This week, we will start studying the memory subsystem in more depth. First, we will learn the memory organization and the major memory technologies present in a computing system. Then, we will study the memory hierarchy and the internals of caches. As we have mentioned before when we talked about “mysteries in computer architecture”, the memory subsystem is a major performance, energy, reliability, and security bottleneck in modern systems due to the need for fast access to ever larger amounts of data. Knowing the fundamentals, as we will cover, of memory will not only help you understand the basics of data management in computing systems but also give you an opportunity to potentially improve systems and programs by optimizing either the software for the memory system or the hardware for the programs, and ideally, by doing both. Enjoy the basics this week.

L21a: Memory Organization and Memory Technology. http://www.youtube.com/watch?v=SdIt2seT_z0 https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture21a-memory-organization-beforelecture.pptx

L21b: Memory Hierarchy and Caches. http://www.youtube.com/watch?v=mZ7CPJKzwfM https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture21b-memory-hierarchy-and-caches-beforelecture.pptx

L22: More Caches. http://www.youtube.com/watch?v=TsxQPLMXT60 https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture22-more-caches-beforelecture.pptx

Optional supplementary material on memory organization, memory technology, and caches: If you would like to watch a different perspective of these lectures, I recommend you the following videos:

Memory Organization and Memory Technology. https://youtu.be/c3HwKHEddUk

Memory Hierarchy and Caches. https://youtu.be/N_q2xi_WYak

More Caches. https://youtu.be/Q9SAHFFeVKw

Office hours: You can attend office hours every week, as indicated in a previous post: https://moodle-app2.let.ethz.ch/mod/forum/discuss.php?d=43137

Optional HWs: This week, we release the solutions to HW5 and the new HW6.

Piazza discussions: We are glad to see more discussions on Piazza, our class's Q&A and discussion forum. If you have not registered for Piazza, I would strongly advise you to do so immediately, so that you can benefit from discussions + participate in the online discussion session. Here is how you can register for Piazza: piazza.com/ethz.ch/spring2020/252002800ldigitaltechnikfs2020

REMINDER: I would like to encourage you to keep posting questions about the lectures (and any other material we cover in the course) on Piazza. It would be good to see more participation. Be proactive, ask, answer, and help your classmates. We, the teaching team, will make sure that your questions receive answers. At some point, when the volume of interesting questions is large enough, we will plan for an online discussion session to handle some of the asked questions. The key to this is, of course, your participation in asking questions on Piazza – so, please participate if you would like clarifications on any topic.

I would encourage you to see past emails for other reminders about labs, Piazza, pacing yourself in all aspects of the course, and making use of other optional online resources. As you already know, all parts of the course are online and I would suggest making progress on all parts, without falling behind on any.

Enjoy the best of online learning and let us know if you have any comments or suggestions.

I wish you all the best in your studies during these difficult times.

Professor Onur Mutlu

May 6, 2020

Week of May 4-8 (Lecture 19-20)

Dear Digital Design and Computer Architecture Students,

Lecture materials (lecture videos, readings, buzzwords) for Lectures 19 and 20 are already available on the course website. https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=schedule

This week we will cover SIMD processors, an execution paradigm that exploits regular data parallelism, and GPUs, which combine SIMD processing and fine-grained multithreading. As you may know, GPUs initially started as very specialized “accelerator” engines to speed up graphics. Over time, various folks have realized that the capabilities of the graphics accelerator engine could be made more flexible and other suitable parallel programs could benefit from the engine. Today, GPUs are extremely popular and powerful, and much more “general purpose” than their predecessors. They are the reason why the third wave of machine learning took off in the past decade: with GPUs, people were able to execute large neural networks fast enough to be useful, whereas they could not do it at such speed and relatively low cost before. As such, SIMD+GPUs are an example processing paradigm that has revolutionized applications and software, within the timeframe of our recent lifetimes. So, I hope you enjoy the lectures.

Lecture 19. SIMD Processors https://youtu.be/2XZ3ik6xSzM https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture19-simd-beforelecture.pptx

Lecture 20. Graphics Processing Units https://youtu.be/dg0VN-XCGKQ https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture20-gpu-beforelecture.pptx

Optional supplementary material on “GPU Programming”: If you would like to learn more on how to program GPUs, I would suggest also watching our “GPU Programming” lecture from a past semester: https://youtu.be/y40-tY5WJ8A

Office hours: You can attend office hours every week, as indicated in a previous post: https://moodle-app2.let.ethz.ch/mod/forum/discuss.php?d=43137

Optional HWs: Last week we released the solutions to HW4 and the new HW5: https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw4_sol.pdf https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw5.pdf

Piazza discussions: We are glad to see more discussions on Piazza, our class's Q&A and discussion forum. If you have not registered for Piazza, I would strongly advise you to do so immediately, so that you can benefit from discussions + participate in the online discussion session. Here is how you can register for Piazza: piazza.com/ethz.ch/spring2020/252002800ldigitaltechnikfs2020

REMINDER: I would like to encourage you to keep posting questions about the lectures (and any other material we cover in the course) on Piazza. It would be good to see more participation. Be proactive, ask, answer, and help your classmates. We, the teaching team, will make sure that your questions receive answers. At some point, when the volume of interesting questions is large enough, we will plan for an online discussion session to handle some of the asked questions. The key to this is, of course, your participation in asking questions on Piazza – so, please participate if you would like clarifications on any topic.

I would encourage you to see past emails for other reminders about labs, Piazza, pacing yourself in all aspects of the course, and making use of other optional online resources. As you already know, all parts of the course are online and I would suggest making progress on all parts, without falling behind on any.

Enjoy the best of online learning and let us know if you have any comments or suggestions.

I wish you all the best in your studies during these difficult times.

Professor Onur Mutlu

April 29, 2020

Week of April 27-May 1 (Lecture 18)

Dear Digital Design and Computer Architecture Students,

Lecture materials (lecture videos, readings, buzzwords) for Lectures 18a, 18b, and 18c are already available on the course website. https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=schedule

This week we will cover four other exciting execution paradigms in high-performance computer architecture: VLIW, Systolic Arrays (which are the basis of a majority of machine learning and artificial intelligence hardware accelerators designed today), decoupled access-execute, and fine-grained multithreading (which is employed in all GPUs today). I hope you will enjoy the material and view these lectures with a critical mind trying to distill the tradeoffs associated with each paradigm. Here are the three sub-lectures, covering the four paradigms:

Lecture 18a. VLIW https://youtu.be/B9e6m5Raqkk https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture18a-vliw-beforelecture.pptx

Lecture 18b. Systolic Arrays and Beyond https://youtu.be/5RqDe1_qZSo https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture18b-systolicarrays-beforelecture.pptx

Lecture 18c. Fine-Grained Multithreading https://youtu.be/bu5dxKTvQVs https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture18c-fgmt-beforelecture.pptx

Optional supplementary material on “Static Instruction Scheduling”: If you would like to learn more on how compilers schedule instructions, which is critical to the success of VLIW and modern compilers, I would suggest also watching my “Static Instruction Scheduling” lecture from a past semester: https://www.youtube.com/watch?v=isBEVkIjgGA

Office hours: You can attend office hours every week, as indicated in a previous post: https://moodle-app2.let.ethz.ch/mod/forum/discuss.php?d=43137

Optional HWs: This week we will release the solutions of HW4, and the new HW5.

Piazza discussions: We are glad to see more discussions on Piazza, our class's Q&A and discussion forum. If you have not registered for Piazza, I would strongly advise you to do so immediately, so that you can benefit from discussions + participate in the online discussion session. Here is how you can register for Piazza: piazza.com/ethz.ch/spring2020/252002800ldigitaltechnikfs2020

REMINDER: I would like to encourage you to keep posting questions about the lectures (and any other material we cover in the course) on Piazza. It would be good to see more participation. Be proactive, ask, answer, and help your classmates. We, the teaching team, will make sure that your questions receive answers. At some point, when the volume of interesting questions is large enough, we will plan for an online discussion session to handle some of the asked questions. The key to this is, of course, your participation in asking questions on Piazza – so, please participate if you would like clarifications on any topic.

I would encourage you to see past emails for other reminders about labs, Piazza, pacing yourself in all aspects of the course, and making use of other optional online resources. As you already know, all parts of the course are online and I would suggest making progress on all parts, without falling behind on any.

Enjoy the best of online learning and let us know if you have any comments or suggestions.

I wish you all the best in your studies during these difficult times.

Professor Onur Mutlu

April 23, 2020

Online discussion session (April 24, 1pm)

Dear Digital Design and Computer Architecture Students,

Given that the participation in Piazza for questions about the lectures has been low by the deadline we set, and that the questions are already answered by the teaching team, we will not have enough content for an online discussion session tomorrow. Therefore, we are cancelling this planned online discussion session.

However, we will schedule multiple discussion+solution sessions in the future, including a session for solutions to selected homework and exam questions – stay tuned.

I would like to encourage you to keep posting questions about the lectures (and any other material we cover in the course) on Piazza. It would be good to see more participation. We, the teaching team, will make sure that your questions receive answers. At some point, when the volume of interesting questions is large enough, we will plan for an online discussion session to handle some of the asked questions. The key to this is, of course, your participation in asking questions on Piazza – so, please participate if you would like clarifications on any topic.

If you have any thoughts or feedback you would like to share about a future discussion session or about the course in general, please send me an email (CC Juan).

And, a reminder: we still have video lectures this week, on three exciting topics: Dataflow, Superscalar Execution, and Branch Prediction. I would suggest studying these in detail and asking questions when you are in doubt. The topics we will cover in the next few weeks on various execution models will not generally be in your recommended books (Harris and Harris or Patt and Patel books), so I would suggest going over the videos even more carefully than before and doing the assigned readings. These are also great topics to ask questions about on Piazza.

Best of luck in your studies,

Professor Onur Mutlu

April 21, 2020

Week of April 20-24 (Lectures 16-17)

Dear Digital Design and Computer Architecture Students,

Lecture materials (lecture videos, readings, buzzwords) for Lectures 16a, 16b, and 17 are already available on the course website. https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=schedule

Lecture 16a. Dataflow and Superscalar Execution http://www.youtube.com/watch?v=3FmWv3qjQF8 https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture16a-dataflow-superscalar-beforelecture.pptx

Lecture 16b. Branch Prediction I http://www.youtube.com/watch?v=h6l9yYSyZHM https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture16b-branch-prediction-i-beforelecture.pptx

Lecture 17. Branch Prediction II http://www.youtube.com/watch?v=z77VpggShvg https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture17-branch-prediction-ii-beforelecture.pptx

Office hours: You can attend office hours every week, as indicated in a previous post: https://moodle-app2.let.ethz.ch/mod/forum/discuss.php?d=43137

Optional HWs: We released HW4 with exercises about Pipelining, Tomasulo's Algorithm, and Out-of-Order Execution: https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw4.pdf

HW3 solutions are already available: https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw3_sol.pdf

Piazza discussions: We are glad to see lively discussions on Piazza, our class's Q&A and discussion forum. If you have not registered for Piazza, I would strongly advise you to do so immediately, so that you can benefit from discussions + participate in the online discussion session. Here is how you can register for Piazza: piazza.com/ethz.ch/spring2020/252002800ldigitaltechnikfs2020

REMINDER: Online discussion session on Friday, April 24th at 1pm. We will soon communicate Zoom meeting details. For the preparation of the discussion session, please follow the next steps:

1. All students can post questions in Piazza. Please use the corresponding Piazza folder (lectures 1 to 15b) to post your question.

2. If you want your questions to be answered in the online discussion session, please post your questions before April 21 at 1pm.

3. We will select some good questions to answer them during the online discussion session. The rest of questions will be answered in Piazza.

If the need arises for you to ask a question during the discussion session, please (virtually) raise your hand (see screenshot) and wait until the host lowers it and lets you ask.

As of now, we do not see many people participating in asking questions. We hope this will change so that we can have a fruitful discussion session. Otherwise, we may switch to an alternate format this week or delay the discussion session until we can collect questions. Please participate.

REMINDER: Labs: In order to give you more flexibility and the ability to self-pace this semester, we have released all lab materials for the rest of the semester (Labs 5, 6, 7, 8.1, 8.2, 9). This way, you can organize your time and progress, and get your lab grades from your assistants as soon as each of your labs is ready.

Together with the lab materials that we use in regular lab sessions (slides, lab manual, code), we have also released all lab reports. The deadlines for the lab reports remain the same as before, as you can find on the course website: https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=labs

REMINDER: Piazza for lecture, labs, and HWs discussions: I would like to encourage you to keep using Piazza for discussions related to all part of the course. Be proactive, ask, answer, and help your classmates. Course staff supervise these discussions and provide feedback. Please continue exploiting office hours and Piazza as much as possible.

REMINDER: Pacing yourself for continuous learning: Finally, I would strongly recommend you to work on all parts (lectures, labs, HWs) of the course regularly and consistently. Everything is online and you can pace yourself accordingly, and I would suggest not delaying any assignment unnecessarily. I know these are difficult times for everyone, and we are doing our best to maximize flexibility while also ensuring that you all can maximize your learning and growth.

I would recommend that you all take this situation as an opportunity to explore innovative ways of learning.

OTHER OPTIONAL ONLINE RESOURCES: I would also suggest exploring other resources that I provide online, if you would like to enhance your learning, understanding and critical thinking. For example, my past courses offer slightly different perspectives into some of the topics we cover in Digital Design and Computer Architecture this semester. Consider these as resources that are at your service, should you want to dig deeper, learn more, and get slightly different perspectives.

In general, if you would like to go deeper and get a slightly different and more detailed perspective on the concepts we cover in Digital Design and Computer Architecture this semester, I would suggest optionally following the corresponding lectures from my 2015 Computer Architecture course at CMU: https://www.youtube.com/playlist?list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq http://www.archive.ece.cmu.edu/~ece447/s15/doku.php?id=schedule

Enjoy the best of online learning and let us know if you have any comments or suggestions.

I wish you all the best in your studies during these difficult times.

Professor Onur Mutlu

April 8, 2020

Week of April 6-10 (Lecture 15)

Dear Digital Design and Computer Architecture Students,

Lecture materials (lecture videos, readings, buzzwords) for Lectures 15a and 15b are already available on the course website. https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=schedule

Lecture 15a. Out-of-Order Execution http://www.youtube.com/watch?v=EdYAKfx9JEA https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture15a-out-of-order-execution-beforelecture.pptx

Lecture 15b. Out-of-Order Execution, DataFlow & Load/Store Handling http://www.youtube.com/watch?v=WExCvQAuTxo https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture15b-out-of-order-execution-dataflow-load_store_handling-beforelecture.pptx

Office hours: You can attend office hours every week, as indicated in a previous post: https://moodle-app2.let.ethz.ch/mod/forum/discuss.php?d=43137

Optional HWs: We released HW3 with exercises about ISA, microarchitecture, and performance evaluation: https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw3.pdf We will release HW4 early next week.

Piazza discussions: We are glad to see lively discussions on Piazza, our class's Q&A and discussion forum. If you have not registered for Piazza, I would strongly advise you to do so immediately, so that you can benefit from discussions + participate in the online discussion session. Here is how you can register for Piazza: piazza.com/ethz.ch/spring2020/252002800ldigitaltechnikfs2020

Online discussion session: We will have our first online discussion after the Easter Break. You will receive a separate email about this.

REMINDER: Labs: In order to give you more flexibility and the ability to self-pace this semester, we have released all lab materials for the rest of the semester (Labs 5, 6, 7, 8.1, 8.2, 9). This way, you can organize your time and progress, and get your lab grades from your assistants as soon as each of your labs is ready.

Together with the lab materials that we use in regular lab sessions (slides, lab manual, code), we have also released all lab reports. The deadlines for the lab reports remain the same as before, as you can find on the course website: https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=labs

REMINDER: Piazza for lecture, labs, and HWs discussions: I would like to encourage you to keep using Piazza for discussions related to all part of the course. Be proactive, ask, answer, and help your classmates. Course staff supervise these discussions and provide feedback. Please continue exploiting office hours and Piazza as much as possible.

REMINDER: Pacing yourself for continuous learning: Finally, I would strongly recommend you to work on all parts (lectures, labs, HWs) of the course regularly and consistently. Everything is online and you can pace yourself accordingly, and I would suggest not delaying any assignment unnecessarily. I know these are difficult times for everyone, and we are doing our best to maximize flexibility while also ensuring that you all can maximize your learning and growth.

I would recommend that you all take this situation as an opportunity to explore innovative ways of learning.

OTHER OPTIONAL ONLINE RESOURCES: I would also suggest exploring other resources that I provide online, if you would like to enhance your learning, understanding and critical thinking. For example, my past courses offer slightly different perspectives into some of the topics we cover in Digital Design and Computer Architecture this semester. Consider these as resources that are at your service, should you want to dig deeper, learn more, and get slightly different perspectives.

In general, if you would like to go deeper and get a slightly different and more detailed perspective on the concepts we cover in Digital Design and Computer Architecture this semester, I would suggest optionally following the corresponding lectures from my 2015 Computer Architecture course at CMU: https://www.youtube.com/playlist?list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq http://www.archive.ece.cmu.edu/~ece447/s15/doku.php?id=schedule

Enjoy the best of online learning and let us know if you have any comments or suggestions.

I wish you all the best in your studies during these difficult times.

Have a good, restful, and healthy Easter Break.

Professor Onur Mutlu

Online discussion session (April 24, 1pm)

Dear Digital Design and Computer Architecture Students,

We are organizing an online discussion session to answer all questions you may have about Lectures 1 to 15b. The online discussion session will take place on April 24 at 1pm. You all are welcome to join. We will communicate the Zoom meeting details later.

For the preparation of the discussion session, we will follow the next steps:

1. All students can post questions in Piazza. Please use the corresponding Piazza folder (lectures 1 to 15b) to post your question.

2. If you want your questions to be answered in the online discussion session, please post your questions before April 21 at 1pm.

3. We will select some good questions to answer them during the online discussion session. The rest of questions will be answered in Piazza.

If the need arises for you to ask a question during the discussion session, please (virtually) raise your hand (see screenshot) and wait until the host lowers it and lets you ask.

Best regards,

Professor Onur Mutlu

April 1, 2020

Week of March 30-April 3 (Lectures 13-14)

Dear Digital Design and Computer Architecture Students,

Lecture materials (lecture videos, readings, buzzwords) for Lectures 13 and 14 are already available on the course website. https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=schedule

Lecture 13: Pipelining http://www.youtube.com/watch?v=_WNdzZB0RJA https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture13-pipelining-beforelecture.pptx

Lecture 14: Pipelining Issues http://www.youtube.com/watch?v=Q7CBJrXirdA https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture14-pipelining-issues-beforelecture.pptx

Office hours: You can attend office hours every week, as indicated in a previous post: https://moodle-app2.let.ethz.ch/mod/forum/discuss.php?d=43137

Optional HWs: We released HW3 with exercises about ISA, microarchitecture, and performance evaluation: https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw3.pdf Solutions to HW2 are available in the course website: https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw2_solution.pdf

REMINDER: Labs: In order to give you more flexibility and the ability to self-pace this semester, we have released all lab materials for the rest of the semester (Labs 5, 6, 7, 8.1, 8.2, 9). This way, you can organize your time and progress, and get your lab grades from your assistants as soon as each of your labs is ready.

Together with the lab materials that we use in regular lab sessions (slides, lab manual, code), we have also released all lab reports. The deadlines for the lab reports remain the same as before, as you can find on the course website: https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=labs

REMINDER: Piazza for lecture, labs, and HWs discussions: I am glad to see discussions on Piazza on various topics related to the course. I would like to encourage you to keep using Piazza for discussions related to all part of the course. Be proactive, ask, answer, and help your classmates. Course staff supervise these discussions and provide feedback. We will communicate more on online discussion/Q&A sessions, but for now continue as we suggest, exploiting office hours and Piazza as much as possible.

REMINDER: Pacing yourself for continuous learning: Finally, I would strongly recommend you to work on all parts (lectures, labs, HWs) of the course regularly and consistently. Everything is online and you can pace yourself accordingly, and I would suggest not delaying any assignment unnecessarily. I know these are difficult times for everyone, and we are doing our best to maximize flexibility while also ensuring that you all can maximize your learning and growth.

I would recommend that you all take this situation as an opportunity to explore innovative ways of learning.

OTHER OPTIONAL ONLINE RESOURCES: I would also suggest exploring other resources that I provide online, if you would like to enhance your learning, understanding and critical thinking. For example, my past courses offer slightly different perspectives into some of the topics we cover in Digital Design and Computer Architecture this semester. Consider these as resources that are at your service, should you want to dig deeper, learn more, and get slightly different perspectives. These are by no means required, but if you are interested, I would also recommend taking a look at these two lectures on pipelining and pipelining related issues.: https://www.youtube.com/watch?v=dKXbONPqBNY&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq&index=8 https://www.youtube.com/watch?v=2Sa55D_Ve4U&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq&index=9

In general, if you would like to go deeper and get a slightly different and more detailed perspective on the concepts we cover in Digital Design and Computer Architecture this semester, I would suggest optionally following the corresponding lectures from my 2015 Computer Architecture course at CMU: https://www.youtube.com/playlist?list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq http://www.archive.ece.cmu.edu/~ece447/s15/doku.php?id=schedule

Enjoy the best of online learning and let us know if you have any comments or suggestions.

I wish you all the best in your studies during these difficult times,

Professor Onur Mutlu

March 25, 2020

Week of March 23-27 (Lectures 11-12)

Dear Digital Design and Computer Architecture Students,

Lecture materials (lecture videos, readings, buzzwords) for lectures 11 and 12 are already available in the course website. https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=schedule

Lecture 11: Microarchitecture I http://www.youtube.com/watch?v=uKchSidT_Uo https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture11-microarchitecture-i-beforelecture.pptx

Lecture 12: Microarchitecture II http://www.youtube.com/watch?v=7R-NvVms3uY https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture12-microarchitecture-ii-beforelecture.pptx

Office hours: You can attend office hours every week, as indicated in a previous post: https://moodle-app2.let.ethz.ch/mod/forum/discuss.php?d=43137

Optional HWs: HW2 is available in the course website. We will release the solutions early next week. https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw2_2020.pdf

Labs: In order to give you more flexibility and the ability to self-pace this semester, we have released all lab materials for the rest of the semester (Labs 5, 6, 7, 8.1, 8.2, 9). This way, you can organize your time and progress, and get your lab grades from your assistants as soon as each of your labs is ready.

Together with the lab materials that we use in regular lab sessions (slides, lab manual, code), we have also released all lab reports. The deadlines for the lab reports remain the same as before, as you can find on the course website: https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=labs

REMINDER: Piazza for lecture, labs, and HWs discussions: I would like to encourage you to keep using Piazza for discussions related to all part of the course. Be proactive, ask, answer, and help your classmates. Course staff supervise these discussions and provide feedback. We will communicate more on online discussion/Q&A sessions, but for now continue as we suggest, exploiting office hours and Piazza as much as possible.

REMINDER: Finally, I would strongly recommend you to work on all parts (lectures, labs, HWs) of the course regularly and consistently. Everything is online and you can pace yourself accordingly, and I would suggest not delaying any assignment unnecessarily. I know these are difficult times for everyone, and we are doing our best to maximize flexibility while also ensuring that you all can maximize your learning and growth.

I would recommend that you all take this situation as an opportunity to explore innovative ways of learning.

Enjoy the best of online learning and let us know if you have any comments or suggestions.

I wish you all the best in your studies during these difficult times,

Professor Onur Mutlu

March 23, 2020

Early release of all labs

Dear Digital Design and Computer Architecture Students,

In order to give you more flexibility and the ability to self-pace this semester, we have released all lab materials for the rest of the semester (Labs 5, 6, 7, 8.1, 8.2, 9). This way, you can organize your time and progress, and get your lab grades from your assistants as soon as each of your labs is ready.

Together with the lab materials that we use in regular lab sessions (slides, lab manual, code), we have also released all lab reports. The deadlines for the lab reports remain the same as before, as you can find on the course website: https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=labs

If you have any question, post it in Piazza or contact your assistant.

Best regards,

Professor Onur Mutlu.

March 18, 2020

Week of March 16-20 (Lectures 9-10)

Dear Digital Design and Computer Architecture Students,

Lecture materials (lecture videos, readings, buzzwords) for lectures 9, 10a, and 10b are already available in the course website. https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=schedule

Lecture 9: Von Neumann Model, ISA, LC-3 and MIPS http://www.youtube.com/watch?v=RwQdPdGN9l0 https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=digitaldesign-2020-lecture9-lc3andmips-beforelecture.pptx

Lecture 10a: Instruction Set Architecture http://www.youtube.com/watch?v=FUleWv4_rOg https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=digitaldesign-2020-lecture10a-lc3andmips-beforelecture.pptx

Lecture 10b: Assembly Programming http://www.youtube.com/watch?v=hIou97MUv9I https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=digitaldesign-2020-lecture10b-programming-beforelecture.pptx

Piazza for lecture discussions: We will schedule remote Q&A sessions. We will detail the plan for them in future communication. Meanwhile, we would like to strongly encourage you to use Piazza for online discussions. We have created a folder for each lecture (see screenshot), in order to keep questions/discussions organized. There, you can post your questions and discuss with your classmates, as well as course staff.

Piazza for labs and HWs discussions: We would also like to encourage you to keep using Piazza for questions related to labs and HWs. Be proactive, ask, answer, and help your classmates. As you know, our assistants supervise these discussions and provide feedback.

Office hours: You can attend office hours every week, as indicated in a previous post: https://moodle-app2.let.ethz.ch/mod/forum/discuss.php?d=43137

Optional HWs: As you might have already seen, this week we have released the solutions of HW1 and the new HW2. https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw1_2020-solution.pdf https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=optional_hw2_2020.pdf

Labs: This week we will release the materials for Lab 4. We also want to remind you that March 20 is the deadline for Lab 1 report.

You are already in touch with an assistant for lab grading and questions. If you did not sign up on time, please send an email to digitaltechnik@lists.inf.ethz.ch. Note that it is critical to read all our messages and proceed as requested as soon as possible. Not doing so harms your learning and puts an unnecessary burden on the assistants, who are working hard to make sure that your education does not get affected by the current situation.

Finally, I would strongly recommend you to work on all parts (lectures, labs, HWs) of the course regularly and consistently. Everything is online and you can pace yourself accordingly, and I would suggest not delaying any assignment unnecessarily. I know these are difficult times for everyone, and we are doing our best to maximize flexibility while also ensuring that you all can maximize your learning and growth.

I would recommend that you all take this situation as an opportunity to explore innovative ways of learning.

Enjoy the best of online learning and let us know if you have any comments or suggestions.

Best regards,

Professor Onur Mutlu

March 15, 2020

FPGA boards

Dear Digital Design and Computer Architecture Students,

We are aware that, because of the coronavirus crisis, some of you are planning to return to your home country. We completely understand and support that decision. As you already know, we have already organized the lectures and the labs for you to be able to attend remotely.

However, if you have to return to your home country, you are *not* allowed to take the FPGA board with you. These are two possible cases:

1. Either you or your lab partner has to return to his/her home country, and one of you stays in Switzerland: The one who stays should keep the FPGA board. You should distribute the work in some balanced way and both should gain full competence over the labs. You both will get the same lab grades, and you will both be asked to demonstrate competence of each lab.

2. You and your lab partner *both* have to return to your home country/countries: You have to return the FPGA board before leaving Switzerland. Because you will have to come back to Switzerland to sit the exam in August (at the latest), you can come a few days earlier, get one FPGA board from us, work on the labs, show us all your lab solutions, and get your lab grade.

To return the FPGA board, please send an email to digitaltechnik@lists.inf.ethz.ch, and we will indicate how to proceed.

We hope you understand this decision, given the difficult situation.

Best regards,

Professor Onur Mutlu

March 13, 2020

Office hours

Dear Students,

We will meet online for the next office hour on next Monday 16 March 2020, 1:30 - 2:30 pm. Please use the information below to join Zoom meeting. Please let me know if you have any trouble joining the meeting after it starts by emailing me directly to alserm@inf.ethz.ch.

This post is only for Monday meeting, we will update you accordingly.

Thanks.

Topic: Digitaltechnik: Office Hour Time: Mar 16, 2020 01:30 PM Zurich

Join Zoom Meeting https://ethz.zoom.us/j/855019824

Meeting ID: 855 019 824

Dial by your location +1 646 558 8656 US (New York) +1 669 900 6833 US (San Jose) Meeting ID: 855 019 824 Find your local number: https://ethz.zoom.us/u/aoQ9EhvmY

Join by SIP 855019824@129.132.197.30

Join by H.323 129.132.197.30 Meeting ID: 855 019 824

Join by Skype for Business https://ethz.zoom.us/skype/855019824

March 12, 2020

Online labs starting on Friday, March 13

Dear Digital Design and Computer Architecture Students,

Due to the rapid spread of coronavirus, and following ETH & Swiss Confederation guidelines, we have decided to move all labs of Digital Design and Computer Architecture online. This measure will be maintained until new notice from us.

Please read the following instructions carefully and follow them.

Attending the lab sessions: The lab sessions are now completely online. Of course, you can keep coming to the lab rooms at the corresponding times, if you wish. But you will work on your own. There won't be any assistants physically present.

Lab slides, manual, and report template: We will upload them before the first date for a particular lab as indicated in the lab schedule (https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=labs).

Working on the lab manual and report: After reading the slides, you and your partner can work autonomously on the manual and the report. You have been given an FPGA board, which allows you to work at home, without having to come to lab rooms. You are free to organize and distribute the work as you prefer.

Asking for assistants' help: You should use Piazza. This way, your questions and our answers will be helpful to all students. When asking a question on Piazza, we ask that you select the appropriate folder (see screenshot). This will help keep Piazza organized, making navigation easier for you, your classmates, and the instructors.

Lab manual grading: The assistants will be available for online grading. You and your partner will have a remote meeting with an assistant using a video call system (e.g., Skype, Hangouts). Your assistant will let you know in advance. The online grading will take place during the 5-minute slot that you choose in the corresponding Moodle scheduler: Lab grading (Tuesday) - https://moodle-app2.let.ethz.ch/mod/scheduler/view.php?id=424727 Lab grading (Wednesday) - https://moodle-app2.let.ethz.ch/mod/scheduler/view.php?id=424726 Lab grading (Friday 8-10) - https://moodle-app2.let.ethz.ch/mod/scheduler/view.php?id=424731 Lab grading (Friday 10-12) - https://moodle-app2.let.ethz.ch/mod/scheduler/view.php?id=424733

Two important rules: 1. Sign up for a slot corresponding to your lab session. 2. Only one of the two partners needs to sign up.

For the preparation of the online meeting, make sure you have all of the following ready: - All written tasks are on the extra sheet that you can find at the end of the lab manual (from Lab 2 manual onwards). - Your microphone and webcam are working properly. - You have finished all tasks that are required. - You have all written tasks open on your computer. If you did not write them digitally please scan the paper or make a good photo of it. - You have Vivado open with your code. - You have your FPGA ready with the program running (if required).

In your first 5-minute slot (on Fri. 13.03, Tue. 17.03, or Wed. 18.03), you will show your solution to lab 2. If it is not ready, you can get feedback, fix it, and schedule a later meeting. You can also use this meeting to ask questions about the newly released lab 3.

Lab report submission and grading: Since submission and grading of lab report was already online, nothing changes here.

Finally, we would like to strongly recommend you to protect yourself and others by following all prevention recommendations: https://ethz.ch/services/en/service/safety-security-health-environment/health-protection/coronavirus.html https://www.bag.admin.ch/bag/en/home/krankheiten/ausbrueche-epidemien-pandemien/aktuelle-ausbrueche-epidemien/novel-cov/so-schuetzen-wir-uns.html

Best of luck in your studies,

Professor Onur Mutlu

March 11, 2020

Online lectures starting on Thursday, March 12

Dear Digital Design and Computer Architecture Students,

Due to the rapid spread of coronavirus, and following ETH & Swiss Confederation guidelines, we have decided to move all lectures of Digital Design and Computer Architecture online.

This measure will be maintained until new notice from us. Every week, we will provide links to lecture videos (or hold an online lecture session that will be recorded). Watching these videos on your own is mandatory (i.e., essential for your understanding of the core course concepts).

In order to clarify any questions and provide further explanations as needed, we intend to schedule remote Q&A sessions via Zoom. We will announce the exact format, date of the first remote Q&A session in future communication. Videoconferencing software is currently being set up and tested to ensure we can handle a class of our size (i.e., close to 500). You can, of course, ask any questions you may have on our online discussion and Q&A forum, Piazza – I would encourage you to use Piazza actively.

This week (March 12-13), your required lecture videos are the following. Note that these particular lectures are recordings that were made of the same lectures we delivered in Spring 2019. This is intentional so that you can get a natural “classroom feel” similar to what you would get if you were attending the lectures physically.

Lecture 7a: Sequential Logic Design II

https://youtu.be/LZHZJ4VHD6w

https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture7a-sequential-logic-ii-beforelecture.pptx

Lecture 7b: Hardware Description Languages and Verilog

https://youtu.be/c7aAtG0qBHw

https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture7b-hdl-beforelecture.pptx

Lecture 8: Timing and Verification

https://youtu.be/YoCGX2XgsPo

https://safari.ethz.ch/digitaltechnik/spring2020/lib/exe/fetch.php?media=onur-digitaldesign-2020-lecture8-timing-and-verification-beforelecture.pptx

You can also find links to these lecture videos, slides, and readings on the course website:

https://safari.ethz.ch/digitaltechnik/spring2020/doku.php?id=schedule

I would recommend doing the readings for these lectures, especially for the Timing and Verification lecture, which will aid your understanding quite a bit. You can find the “required” readings in the lecture slides as well as on the course website.

Finally, we would like to strongly recommend you to protect yourself and others by following all prevention recommendations:

https://ethz.ch/services/en/service/safety-security-health-environment/health-protection/coronavirus.html

https://www.bag.admin.ch/bag/en/home/krankheiten/ausbrueche-epidemien-pandemien/aktuelle-ausbrueche-epidemien/novel-cov/so-schuetzen-wir-uns.html

Best of luck in your studies,

Professor Onur Mutlu

announcements.txt · Last modified: 2020/06/15 00:26 (external edit)