4 ms·
I'll teach such a course next year, based on the first half of "The Elements of Computing Systems" by Nisan and Schocken. Actually we'll start a bit earlier tha
by apricot 6y ago
I'll teach such a course next year, based on the first half of "The Elements of Computing Systems" by Nisan and Schocken. Actually we'll start a bit earlier than the book, showing how to build logic gates from transistors. Then combinatorial circuits, from logic gates to an ALU, then sequential circuits, from logic gates to registers and addressable memory, then we'll put ALU + registers together to get a CPU and we'll design the instruction set, and finally we'll have students write a symbolic assembler for their CPU and write a few programs to run on them.
Due to time constraints, and the fact that it's likely the course will be taught online, students will use circuit simulators instead of breadboards. But I think they'll still enjoy the journey of building their computer from first principles.
- bogomipz 6y agoThis sounds like a great course and approach. Do you have your prospective syllabus anywhere online? Or even one you think is similarly well-thought out?