$24
Description
• Figure C.5.15 on page C-37 in Appendix-C-Computer-Organization.pdf contains Verilog code for a MIPS ALU. (NOTE: The Appendix C referred to here is not from our textbook. Please refer to the Appendix-C-Computer-Organization.pdf available on Canvas.)
• Study the Verilog code to determine how it works. Enter the Verilog code into a file called MIPSALU.v.
• Compile the Verilog code for the MIPS ALU. Suggestions for free Verilog compilation and simulation tools can be found in the text file Verilog_tools.rtf on Canvas.
• Use the testbench test_mipsalu.v to simulate operation of the MIPS ALU Verilog module. Modify the testbench to experiment with all available operations for four different values of the 32-bit A and B operands. Verify that the correct results are produced by the ALU.
• Summarize your observations in a report.
Report Format
• Provide a brief summary of your experiment.
• Include waveforms for your simulation showing all ports of the ALU (as a function of simulated time).
• Attach your Verilog code for the MIPS ALU and testbench with your submission.
• Submit a tarball or zip file of your files through Canvas.
Reference Materials (available on Canvas)
• Appendix-C-Computer-Organization.pdf – The Basics of Hardware Design
• Appendix-D-Computer-Organization.pdf – Mapping control to Hardware
• Section-4.12-Computer-Organization.pdf – An introduction to digital design using a hardware language to describe and model a pipeline and more pipelining illustrations