Difference between revisions of "Syllabus"
From CSE362 Wiki
Jump to navigationJump to search(280 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | + | {| class="wikitable" | |
− | + | |+FALL 2018 | |
− | + | |- | |
− | + | |LECTURE | |
− | + | |DATE | |
− | + | |TOPICS | |
− | + | |PREPARATION | |
− | + | |ASSIGNED | |
− | + | |DUE | |
− | + | ||
− | + | |- | |
− | + | |1 | |
− | + | |AUG 28 | |
− | + | |Course Introduction<br />Classification of Computers and Instructions<br />Addressing Modes | |
− | + | |[[media:Day_1.pdf|Course Introduction]]<br />[[media:Ch1CSDA.pdf|Chapter 1]]<br />[[media:Ch2CSDA.pdf|Chapter 2]] | |
− | + | |Homework 1 | |
− | + | | | |
− | + | ||
− | + | |- | |
− | + | |2 | |
− | + | |AUG 30 | |
− | + | |RISC vs. CISC<br />The Really Simple RISC Computer (RSRC)<br />SRC/RSRC Assembly Language | |
− | + | |[[media:Ch2CSDA.pdf|Chapter 2]]<br />[[media:RISC.pdf|The Case for the RISC]]<br />[https://en.wikipedia.org/wiki/David_Patterson_(computer_scientist) David Patterson]<br />[https://www.ece.iastate.edu/profiles/david-ditzel/ David Ditzel]<br />[[media:The_Really_Simple_RISC_Computer.pdf|The Really Simple RISC Computer]]<br />[[media:The_RSRC_SRC_Instruction_Set.pdf|The SRC/RSRC Instruction Set]] | |
− | + | | | |
− | + | | | |
− | + | ||
− | + | |- | |
− | + | |3 | |
− | + | |SEPT 4 | |
− | + | |RSRC VHDL/FPGA Implementation | |
− | + | |[[media:EVERYTHING_YOU_ALWAYS_WANTED.PDF|VHDL Tutorial]]<br />[[media:RSRC_Vivado_Tutorial.pdf|RSRC Vivado Tutorial]]<br />[https://www.xilinx.com/video/hardware/creating-basic-clock-constraints.html Xilinx Vivado Clock Constraints Tutorial] | |
− | + | |Homework 2 | |
− | + | |Homework 1 | |
− | + | ||
− | + | |- | |
− | + | |4 | |
− | + | |SEPT 6 | |
− | + | |Introduction to Memory<br />Address Decoding<br />Xilinx IP Cores<br />→Xilinx FPGA Block RAM<br />→Xilinx Digital Clock Manager (DCM) | |
− | + | |[[media:Ch7CSDA.pdf|Chapter 7]]<br />[[media:Am27c256.pdf|AM27C256 EPROM Datasheet]]<br />[[media:EPROM_Example.pdf|EPROM Example]]<br />[[media:Cy7c199n_8.pdf|CY7C199N SRAM Datasheet]]<br />[[media:SRAM_Example.pdf|SRAM Example]] | |
− | + | | | |
− | + | | | |
− | + | ||
− | + | ||
− | + | |- | |
− | + | |5 | |
− | + | |SEPT 11 | |
− | + | |Microprogramming the RSRC | |
− | + | |[[media:Ch5CSDA.pdf|Chapter 5]]<br />[[media:Microprogrammed_RSRC_Control_Unit.pdf|Microprogrammed RSRC Control Unit]]<br />[[media:Control.pdf|Microprogrammed RSRC CONTROL.VHD]]<br />[[media:Controlstore.pdf|Microprogrammed RSRC CONTROLSTORE.VHD]]<br />[[media:Microcodedsrcvhdl.zip|Microcoded RSRC VHDL Zip File]]<br />[[media:64-ia-32-architectures-software-developer-vol-3a-part-1-manual.pdf|Intel Software Developer's Manual (see pages 285, 339)]]<br />[[media:Microprogrammed_RSRC_Control_Unit_Modifed.pdf|Microprogrammed RSRC Control Unit Modified]] | |
− | + | |Lab 1 | |
− | + | |Homework 2 | |
− | + | ||
− | + | |- | |
− | + | |6 | |
− | + | |SEPT 13 | |
− | + | |1-Bus vs 2-Bus vs 3-Bus Microarchitecture<br />Introduction to Pipelining | |
− | + | |[[media:Ch4WDR.pdf|Chapter 4]]<br />[[media:Two_Bus_SRC.pdf|2-Bus SRC Block Diagrams]]<br />[[media:3_Bus_Block_Diagrams.pdf|3-Bus SRC Block Diagrams]]<br />[[media:Ch5CSDA.pdf|Chapter 5]]<br />[[media:BasicPipelinedSRC.pdf|Basic Pipelined SRC/RSRC]] | |
− | + | | | |
− | + | | | |
− | + | ||
− | + | |- | |
− | + | |7 | |
− | + | |SEPT 18 | |
− | + | |Pipelining the SRC/RSRC | |
− | + | |[[media:Ch5CSDA.pdf|Chapter 5]]<br />[[media:Table_5P1.pdf|Table 5.1]]<br />[[media:BasicPipelinedSRC.pdf|Basic Pipelined SRC/RSRC]]<br />[[media:Corrected_Figure_5.15.pdf|Corrected Figure 5.15]] | |
− | + | |Homework 3 | |
− | + | | | |
− | + | ||
− | + | |- | |
− | + | |8 | |
− | + | |SEPT 20 | |
− | + | |Pipelined SRC/RSRC VHDL/FPGA Implementation<br /><br />Interrupts/Exceptions | |
− | + | |[[media:Ch5CSDA.pdf|Chapter 5]]<br />[[media:Pipelined_SRC.pdf|Pipelined SRC/RSRC Execution Simulation]]<br />[[media:Ch4WDR.pdf|Chapter 4]] | |
− | + | | | |
− | + | | | |
− | + | ||
− | + | |- | |
− | + | |9 | |
− | + | |SEPT 25 | |
− | + | |Review | |
− | + | | | |
− | + | | | |
− | + | |Homework 3<br />Lab 1 | |
− | + | ||
− | + | |- | |
− | + | |10 | |
− | + | |SEPT 27 | |
− | + | |Exam 1 | |
− | + | | | |
− | + | | | |
− | + | | | |
− | + | ||
− | + | |- | |
− | + | |11 | |
− | + | |OCT 2 | |
− | + | |Memory DIMMs and Modules<br />Introduction to Schematic Capture | |
− | + | |[[media:Ch7CSDA.pdf|Chapter 7]]<br />[[media:ExpressSCH_Quick_Start_Guide.pdf|ExpressSCH Quick Start Guide]] | |
− | + | |Homework 4<br />Lab 2 | |
− | + | | | |
− | + | ||
− | + | |- | |
− | + | |12 | |
− | + | |OCT 4 | |
− | + | |FPM DRAM<br />SRC/RSRC FPM DRAM Design Examples | |
− | + | |[[media:MT4LC8M8B6.pdf|FPM DRAM Datasheet]]<br />[[media:FPM_DRAM_Example.pdf|SRC/RSRC FPM DRAM Design Examples]] | |
− | + | | | |
− | + | | | |
− | + | ||
− | + | |- | |
− | + | |13 | |
− | + | |OCT 9 | |
− | + | |SDRAM<br />DDR DRAM<br />DDR2 DRAM<br />DDR3 DRAM | |
− | # | + | |[[media:DRAM_TYPES.pdf|DRAM Types]]<br />[[media:MT48LCM8A2.pdf|MT48LC8M8A2 SDRAM Datasheet]]<br />[[media:1GbDDRx4x8x16.pdf|MT46V128M8 DDR DRAM Datasheet]]<br />[[media:2gbddr2.pdf|MT47H256M8 DDR2 DRAM Datasheet]]<br />[[media:4Gb_DDR3_SDRAM.pdf|MT41J512M8 DDR3 DRAM Datasheet]]<br />[[media:8Gb_DDR4_SDRAM.pdf|MT40A1G8 DDR4 DRAM]]<br />[https://reference.digilentinc.com/learn/programmable-logic/tutorials/nexys-4-ddr-sram-to-ddr-component/start DDR2 Core for Digilent NEXYS4DDR Board]<br />[https://www.xilinx.com/products/intellectual-property/ddr3.html Xilinx DDR3 Core for 7 Series FPGAs] |
+ | | | ||
+ | |Homework 4 | ||
+ | |||
+ | |- | ||
+ | |14 | ||
+ | |OCT 11 | ||
+ | |Cache<br />Virtual Memory | ||
+ | |[[media:Ch7CSDA.pdf|Chapter 7]]<br />[[media:Cache_Example.pdf|SRC/RSRC Cache Example]]<br />[[media:SRC_Cache_Datapath.pdf|SRC/RSRC Cache Datapath Example]]<br />[[media:Intel_Haswell_Cache.png|Intel Core i7 (Haswell) Cache Parameters]]<br />[[media:VIRTUAL_MEMORY.pdf|Virtual Memory Concepts]]<br />[[media:Virtual_Memory_H&P.pdf|Virtual Memory H&P]] | ||
+ | |Homework 5 | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | | | ||
+ | |OCT 16 | ||
+ | |Fall Break | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | |15 | ||
+ | |OCT 18 | ||
+ | |Memory-Mapped I/O<br />Shared I/O<br />Polling<br />Interrupt-Driven I/O<br />Direct Memory Access (DMA)<br />The Multi-Master SRC Bus<br />Bus Arbitration | ||
+ | |[[media:Ch8CSDA.pdf|Chapter 8]]<br />[[media:Stereo.pdf|SRC Stereo Card Bus Alternatives]]<br />[[media:IN_OUT_RTN.pdf|SRC IN and OUT RTN]]<br />[[media:THREE-SLOT_MULTI-MASTER_SRC_MOTHERBOARD.pdf|Three-Slot Multi-Master SRC Motherboard]] | ||
+ | |Lab 3 | ||
+ | |Lab 2 | ||
+ | |||
+ | |- | ||
+ | |16 | ||
+ | |OCT 23 | ||
+ | |The PCI Bus | ||
+ | |[[media:PCI_Lecture.pdf|PCI Lecture Notes]]<br />[[media:X86_Chipset_Evolution.pdf|X86 Chipset Evolution]] | ||
+ | | | ||
+ | |Homework 5 | ||
+ | |||
+ | |- | ||
+ | |17 | ||
+ | |OCT 25 | ||
+ | |Serial vs. Parallel I/O Buses<br />PCIe | ||
+ | |[[media:LTSPICE_TUTORIAL.pdf|LTSPICE Tutorial]]<br />[[media:Reflection_Lecture.pdf|Reflection Lecture]]<br />[[media:PCIe_Lecture.pdf|PCIe Lecture]] | ||
+ | |Homework 6 | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | |18 | ||
+ | |OCT 30 | ||
+ | |Parity<br />Hamming Codes<br />ECC Memory | ||
+ | |[[media:Ch8CSDA.pdf|Chapter 8]]<br />[[media:Coding_Theory_001.pdf|Coding Theory 101]]<br />[[media:Hamming_Code_Example_With_Odd_Parity.pdf|Hamming Codes]]<br />[http://www.verien.com/pcie_primer.htm PCIe CRC] | ||
+ | | | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | |19 | ||
+ | |NOV 1 | ||
+ | |Disks<br />Video<br />DACs<br />ADCs | ||
+ | |[[media:Ch9CSDA.pdf|Chapter 9]]<br />[[media:Video_Example.pdf|SRC Video Example]]<br />[[media:R2R_DAC.pdf|R2R DAC Example]]<br />[[media:2-Bit_Flash_ADC.pdf|Flash ADC Example]] | ||
+ | | | ||
+ | |Homework 6 | ||
+ | |||
+ | |- | ||
+ | |20 | ||
+ | |NOV 6 | ||
+ | |USB 2.0/3.0<br />IEEE 1394 (Firewire) | ||
+ | |[[media:Ch10CSDA.pdf|Chapter 10]]<br />[[media:Usb_20.pdf|USB 2.0 Specification]] | ||
+ | | | ||
+ | |Lab 3 | ||
+ | |||
+ | |- | ||
+ | |21 | ||
+ | |NOV 8 | ||
+ | |Exam 2 | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | |22 | ||
+ | |NOV 13 | ||
+ | |Very Long Instruction Word (VLIW) Computing<br />Superscalar/Out-of-Order Processing | ||
+ | |[[media:CPU History.pdf|CPU History]]<br />[[media:Fisher_Paper_1.pdf|Fisher Paper 1]]<br />[[media:Fisher_Paper_2.pdf|Fisher Paper 2]]<br />[[media:VLIW.pdf|VLIW Notes]]<br />[[media:K7pres.pdf|AMD K7 Presentation]] | ||
+ | | | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | |23 | ||
+ | |NOV 15 | ||
+ | |Explicitly Parallel Instruction Computing (EPIC)<br />64-Bit Desktop Computing: AMD vs. Intel | ||
+ | |[[media:Itanium.ua_ovw.pdf|Intel Intanium]]<br />[[media:MPF_Hammer_Presentation.pdf|AMD Hammer]] | ||
+ | | | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | |24 | ||
+ | |NOV 20 | ||
+ | |Transmeta Crusoe | ||
+ | |[https://www.ece.iastate.edu/profiles/david-ditzel David Ditzel]<br />[[media:Paper_aklaiber_19jan00.pdf|Transmeta Crusoe White Paper]]<br />[[media:Transmeta_Laptop.pdf|HP Transmeta Crusoe Laptop]] | ||
+ | | | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | | | ||
+ | |NOV 22 | ||
+ | |Thanksgiving Break | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | |25 | ||
+ | |NOV 27 | ||
+ | |Symmetric Multiprocessing (SMP)<br />Simultaneous Multithreading (SMT)<br />Introduction to Multicore/Cache Coherency<br />→Global Directory<br />→MESI (Snoopy/Pentium II)<br />→MOESI (ccNUMA/AMD Hammer)<br />→MESIF (ccNUMA/Intel Xeon Phi) | ||
+ | |[[media:Intel-core-x-series-processor-overview.pdf|Intel Core i9]]<br />[[media:O13-024-sparc-t5-architecture-1920540.pdf|SPARC T5]]<br />[[media:01675013.pdf|Censier Paper]]<br />[[media:Papamarcos.isca84.pdf|Illinois Protocol Paper (1984)]]<br />[[media:29056402.pdf|Intel Pentium II MESI Chipset]]<br />[[media:MPF_Hammer_Presentation.pdf|AMD Hammer]]<br />[[media:Intel_Xeon_Phi_Whitepaper.pdf|Intel Xeon Phi]] | ||
+ | | | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | |26 | ||
+ | |NOV 29 | ||
+ | |Deep Dive: The Illinois Protocol (MESI) | ||
+ | |[[media:Papamarcos.isca84.pdf|Illinois Protocol Paper (1984)]]<br />[[media:29056402.pdf|Intel Pentium II MESI Chipset]] | ||
+ | | | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | |27 | ||
+ | |DEC 4 | ||
+ | |Supercomputing | ||
+ | |[https://en.wikipedia.org/wiki/TOP500 Top 500]<br />[https://en.wikipedia.org/wiki/FLOPS FLOPS]<br />[http://www.roylongbottom.org.uk/linpack%20results.htm Longbottom's Linpack Page]<br /n>[https://www.mir.wustl.edu/research/research-support-facilities/center-for-high-performance-computing-chpc WUSTL CHPC]<br />[https://source.wustl.edu/2017/12/view-12-4-17/#jp-carousel-245238 CHPC Photo]<br />[http://clusters.engineering.wustl.edu/index.php/Lab_Cluster WUSTL SEAS Linux Lab Cluster] | ||
+ | | | ||
+ | | | ||
+ | |||
+ | |- | ||
+ | |28 | ||
+ | |DEC 6 | ||
+ | |Exam 3 | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | |||
+ | |} |