UW-Madison
Computer Sciences Dept.

CS/ECE 552 Introduction to Computer Architecture


Spring 2012 Section 1
Instructor David A. Wood and T. A. Ramkumar Ravikumar
URL: http://www.cs.wisc.edu/~david/courses/cs552/S12/

Test Programs

Demo1:

Complex tests for demo1 (located at /p/course/cs552-david/public/html/S12/project/tests/public/complex_demo1)

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

BLTZ and BTR tests used for Demo1

  1. BLTZ test
  2. BTR test

Simple Random tests used in Demo 1

  1. Simple Random Tests - To run use

    wsrun.pl -list /p/course/cs552-david/public/html/S12/project/tests/public/rand_simple/all.list proc_hier_bench *.v

Random Tests:

  1. Simple Random Tests - (located at /p/course/cs552-david/public/html/S12/project/tests/public/rand_simple/all.list )

  2. Complex Random Tests - (located at /p/course/cs552-david/public/html/S12/project/tests/public/rand_complex/all.list )

  3. Random Control Tests - (located at /p/course/cs552-david/public/html/S12/project/tests/public/rand_ctrl/all.list )

  4. Random Memory Tests - (located at /p/course/cs552-david/public/html/S12/project/tests/public/rand_mem/all.list )

  5. Random icache Tests - (located at /p/course/cs552-david/public/html/S12/project/tests/public/rand_icache/all.list )

  6. Random dcache Tests - (located at /p/course/cs552-david/public/html/S12/project/tests/public/rand_dcache/all.list )

  7. Random idcache Tests - (located at /p/course/cs552-david/public/html/S12/project/tests/public/rand_idcache/all.list )

  8. Random Load/Store Tests - (located at /p/course/cs552-david/public/html/S12/project/tests/public/rand_ldst/all.list )


Student Tests:

  1. Instruction Tests - (located at /p/course/cs552-david/public/html/S12/project/tests/public/inst_tests/all.list )

    (only those programs which halt are included, (and don't have unaligned accesses)

Demo2:

Complex tests for demo2 (located at /p/course/cs552-david/public/html/S12/project/tests/public/complex_demo2)

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

Demo3: (make sure you run with wsrun.pl -align)

Complex tests for demo3 (located at /p/course/cs552-david/public/html/S12/project/tests/public/complex_demofinal)

  1. alignTest[1-4].asm - (make sure you run with wsrun.pl -align)

  2. cacheTest.asm

  3. ultimateTest.asm

  4. ldld.asm

  5. ldst.asm

  6. complex_exception_test.asm - Last three tests only need to pass if going for extra credit

  7. extraCreditTest.asm

  8. simple-exception-test.asm

552Marks: More Info Here

How to run tests? (examples)

  • Run 1 program:

    • Run wsrun.pl with the -prog option pointing to the assembly file to test.

    • If it fails, compare/examine the .trace files: (archsim.trace verilogsim.trace) Also, the .log files might be useful as well.

    wsrun.pl -prog /p/course/cs552-david/public/html/S12/project/tests/public/complex_demo1/firstTest.asm proc_hier_bench *.v



  • Run all programs in a test suite:

    • Run wsrun.pl with the -list option pointing to the list of files to test.

    • All test folders will have a file called all.list containing the required files

    • If you have failures, go back and test each program individually.

    wsrun.pl -list /p/course/cs552-david/public/html/S12/project/tests/public/complex_demo1/all.list proc_hier_bench *.v

  • Run test suite with pipelined processor:

    • Run wsrun.pl with the -pipe option, so it knows to compare the .ptrace files.

    • Specify your proc_hier_pbench instead of your proc_hier_bench.

    • If you have failures, go back and test each program individually. Then, compare/examine the .ptrace files: (archsim.ptrace verilogsim.ptrace) Also, the .log files might be useful as well.

    • You may utilize any of the tests suites in this manner.

    wsrun.pl -pipe -list /p/course/cs552-david/public/html/S12/project/tests/public/complex_demo2/all.list proc_hier_pbench *.v

  • Run test suite with pipelined processor with aligned memory check:

    • Enabling this lets the architectural simulator know it should fail on an unaligned access.

    wsrun.pl -pipe -align -list /p/course/cs552-david/public/html/S12/project/tests/public/complex_demo2/all.list proc_hier_pbench *.v

  • Run test suite on vsim6.3 so that you can see correct outputs on waveforms:

    wsrun.pl -pipe -args -novopt -align -list /p/course/cs552-david/public/html/S12/project/tests/public/complex_demo2/all.list proc_hier_pbench *.v

 
Computer Sciences | UW Home