CS552 Course Wiki: Spring 2021 | Main »
WISC-SP13 Microarchitecture Specification |
|
WISC-SP13 Microarchitecture Specification On this page... (hide)
The WISC-SP13 architecture that you will design for the final project shares many resemblances with the MIPS R2000 described in the textbook. The major differences are a smaller instruction set and 16-bit words for the WISC-SP13. Similarities include a load/store architecture and three fixed-length instruction formats. 1. RegistersThere are eight user registers, R0-R7. Unlike the MIPS R2000, R0 is not always zero. Register R7 is used as the link register for JAL or JALR instructions. The program counter is separate from the user register file. A special register named EPC is used to save the current PC upon an exception or interrupt invocation. 2. Memory SystemThe WISC-SP13 is a Harvard architecture, meaning instructions and data are located in different physical memories. It is byte-addressable, word aligned* (where a word is 16 bits long), and big-endian. The final version of the WISC-SP13 will include a multi-cycle memory and level-1 cache. However, initial versions of the machine will contain a single cycle memory. See the project deadlines for more details. The WISC-SP13 cache replacement policy is deterministic. See the cache module description for an outline of the algorithm you must use. NOTE: For demo1 and demo2, you will work with a simplified memory model which supports un-aligned accesses 3. PipelineThe final version of the WISC-SP13 contains a five stage pipeline identical to the MIPS R2000. The stages are:
See Figure 6.17 on page 395 of the text for a good starting point. 4. OptimizationsYour goal in optimizations is to reduce the CPI of the processor or the total cycles taken to execute a program. While the primary concern of the WISC-SP13 is correct functionality, the architecture must still have a reasonable clock period. Therefore, you may not have more than one of the following in series during any stage:
You may implement any type of optimization to reduce the CPI. The required optimizations are:
5. Exceptions: extra creditException handling is extra credit. If you choose not to implement exception handling, an illegal instruction should be treated as a nop.
The exception handler itself need not be complex. At a minimum it should load the value 0xBADD into R7 and then call the RTI instruction. |
Page last modified on September 25, 2020, visited times |