As discussed in class, complete the crs.vhd and drr.vhd VHDL entities of the Superscalar Abstract Machine VHDL model. Your model only needs to be able to execute the integer instructions (addreg, addimm, multreg, multimm). This zip archive contains the VHDL model of the abstract Superscalar CPU discussed in class. The archive contains a subdirectory called test_abm_ss which has some sample assembly language sequences which you can use to test your model; feel free to use these or make up you own. When I grade your VHDL model, I will use these tests plus some others.
This zip archive is a version of the pipelined abstract machine that has been modified to read instructions from a file just like the superscalar abstract machine. You can run your test programs on the pipelined model to get the correct register values, then compare these to the register values produced by the superscalar model (for long tests, this is easier than determining the register contents manually and less error prone).
The zip archive does not contain the "./obj" tree for the 'abm_ss' library. Before executing the makefile for the first time do (from the vhdl/src directory):
% qhlib ../obj/qhdl/abm_ss % mkdir ../obj/qhdl/abm_ss/ts % qhmap abm_ss ../obj/qhdl/abm_ss
After this, you can execute:
% gmake -f Makefiles/Makefile.abm_ss TOOLSET=qhdl
to compile the code.
I have placed some new tests for your ABM SS implementation here . I tried to put comments in each file indicating if there is something special I am trying to test.
Please execute this submission script to submit your work. You will need to save this file, then give if execute mode permission:
% chmod +x submit_ee8063_sim3.pl
The script looks for a directory called 'sim3', you need to place all of your modified VHDL files in this directory before executing the script. It will tar up the directory and the email it to me. This script must be executed on a Sun Solaris machine.
Last modified: Mon Oct 5 14:37:23 CDT 1998