From CS552 Course Wiki: Spring 2017

Main: Test programs

On this page... (hide)

  1. 1. Tests for Demo 1
    1. 1.1 Simple tests (testprograms/public/inst_tests)
    2. 1.2 Complex tests for demo1 (testprograms/public/complex_demo1)
    3. 1.3 Random tests used in demo1
  2. 2. Additional Tests for Demo 2
    1. 2.1 Complex tests for demo2 (testprograms/public/complex_demo2)
  3. 3. Additional tests for final demo
    1. 3.1 Programs required for final submission (for final demo).

All programs can also be accessed through the file system from this directory:


As you progress to the further demos the number of tests that you will be expected to pass will increase. With each iteration all prior tests are expected to continue to pass as well as the additional tests for that demo stage.

1.  Tests for Demo 1

1.1  Simple tests (testprograms/public/inst_tests)

These tests target each instruction individually and use a minimal number of other instructions to test their behavior. For tests for a specific instruction copy the *.asm file named for the instruction from: /u/k/a/karu/courses/cs552/spring2016/handouts/testprograms/public/inst_tests/

A list file with all the program names on a line: all.list

Or copy from here: /u/k/a/karu/courses/cs552/spring2016/handouts/testprograms/public/inst_tests/all.list

See -list option.

1.2  Complex tests for demo1 (testprograms/public/complex_demo1)

A list file with all the program names on a line: all.list

Or copy from here: ~karu/courses/cs552/spring2016/handouts/testprograms/public/complex_demo1/all.list

  1. branchTest.asm
  2. easyTest.asm
  3. firstTest.asm
  4. loadStoreTest.asm
  5. shiftTest.asm

1.3  Random tests used in demo1

2.  Additional Tests for Demo 2

Remember that all tests for demo 1 are still required

2.1  Complex tests for demo2 (testprograms/public/complex_demo2)


  1. pipeTest.asm
  2. stallTest.asm
  3. alignTest.asm
  4. perf-test-dep-all.asm
  5. perf-test-dep-ld.asm
  6. perf-test-dep-ldst.asm
  7. perf-test-dep-waw.asm
  8. perf-test-dep-zero.asm

3.  Additional tests for final demo

For the final demo, there are several more tests provided. All are are subdirectories from: ~karu/courses/cs552/spring2016/handouts/testprograms/public/

There are two categories of tests:

Simple tests

The same as previously but when you just begin adding a new feature, use these tests to make sure basic functionality is still there. I recommend you use these tests as you start integrating different memories to your processor.

  1. inst_tests

Exhaustive tests

I recommend, that you run all of these when you make a large change to your processor. When you believe stalling instruction memory is complete for example, run all of these and make sure they all pass. similarly when your data-cache is fully integrated run them all and make sure your processor works.

3.1  Programs required for final submission (for final demo).

Your submission must include the following:

You can use the script to run all the required tests. It will create all these summary.log files. Running all the tests will take about 40 minutes. So plan ahead!

If you look closely, you will see that rand_final has a mix of tests from all the categories.

rand_mem and rand_simple are intentionally left out to reduce the time it takes to run all simulations

Retrieved from
Page last modified on March 01, 2016, at 01:50 AM