The Triscuit (Tiny RISCy circUIT) processor is a very small and simple eight-bit computer. The last lab of the quarter is to build this processor out of components in your lab kits, including the Xilinx parts. Before you panic, this is a very simple processor! It has only five instructions, and I'll walk you through much of the design. You will also be working in teams of two on this project so find a partner. The entire processor will be implemented using the Xilinx FPGAs so you won't have to spend time wiring up that part of the circuit. You will, however, have to wire the switches and lights that are used to control the processor, and have to wire the Xilinx part itself to the switches and lights, but this shouldn't be too bad. You will also use the backplane bus in your lab kit so that the Triscuit will be built on two boards: one for the Xilinx chip, and one for the switches and lights.
The Triscuit processor can be split into two large sections: a data path circuit, and a control circuit. The data path will be built using parts from the xc3000 library according to the block diagram shown later, and the control circuit will be a finite state machine of the type we've been talking about in class. These two circuits interact to make the Triscuit processor execute tiny programs. The control circuit uses signals from the data path as inputs to the state machine. These inputs determine the operation of the state machine. The outputs of the state machine are the control inputs to the data path. They control, for example, the incrementing of the PC, or the latching of the register that acts as the accumulator.
This lab has two main purposes. The first is to is to offer a (slightly) more realistic circuit than the previous labs. This processor, while ridiculously small and simple, shows off many ideas that are found in any real computer processor. The second is to give you a more realistic view of what state machines are used for in digital systems. Instead of being used to solve the problem on their own, state machines are usually used as controlling circuits for other parts of a complete system. The state machine in Triscuit is a controller for the data path. Its job is to make sure that operations occur in the data path in the correct order so that the instructions are executed correctly.
The circuits that make up Triscuit are a little bigger, but otherwise no different from, the circuits you have built already, and that we have talked about in class. It may look daunting at first, but with a little planning, and attention to detail, you should be able to complete the project before the last day of class.