VLSI Design Project 2013/2014 - Design Phase

Microprocessor Specification


Overview

Constraints

As much as possible you are left to make your own decisions on the form of your design.

Hopefully the research phase of this project will give you a good starting point for attempting this design. Further research is likely to be required as your ideas develop. Although your design may have more in common with microprocessors of the late 1970s and 1980s than with modern microprocessors, the same principles of good design apply. Remember that you are not competing with the a multi-threaded, multi-core, superscalar, super-pipelined microprocessor; you are only competing with the designs put forward by other teams undertaking this course.

Memory Access

All memory accesses take four cycles of the system clock

Note that it is this four cycle memory access that precludes the use of pipelining in your design. No benefit can be gained from pipelining here without the use of an on-chip memory cache which is not within the scope of this project.

Accessing Slow Memory

The nWait signal is used to lengthen the memory cycle when accessing slow peripherals. This input signal is normally high. It may be taken low by a slow peripheral during the Data Setup cycle. Should this occur, the microprocessor should remain in the Data Setup cycle until nWait becomes high again.

Interrupt

The nIRQ signal is an active low, level sensitive, interrupt request input. Support for this interrupt facility is an optional extra, allowing you to show off your talents.

Notes

  1. Since the nIRQ signal is an asynchronous input, you should retime the signal through two D-types before using it within your control unit, in order to reduce susceptiblity to the problems of metastability.
  2. The interrupt mechanism should be designed to support nested interrupts.

Support for interrupts is technically and conceptually difficult. Although any team may opt to attempt to implement interrupt support, if you fail to keep up with the design milestones for the interrupts you will have to remove interrupt support from your design.

I/O information

Pad cells for this design will be taken from On Semiconductor's amis350ucapta library for their 0.35um CMOS process. On Semiconductor provide us with empty abstract representations of these cells since the contents are considered company confidential. You will be provided with dummy versions of the cells which should simulate correctly using Magic and Verilog. To avoid design rule violations with the real pad cells you should keep routing wires one full design rule away from the edge of the pad cells except where connection is required.

The following types of pad are available:

The following pads will exist on the finished chip:

Pad Arrangement and DIL40 Pinout


Iain McNally

29-1-2014