Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

System Hardware

SOEN228

Lab Report #
Student Name Student ID Lab section Lecture section
Vlad Tita 40209853 I SS
Hichem Sehabi 40212336 I SS

Department of Computer Science & Software


Engineering
Concordia University

Winter 2022
1. Objectives
The objectives for this experiment are to wire the two data registers (A and B) to the timing signal
generator and to the instruction decoder so the functions stored in the address register get executed.
The remaining timing pulses of the computer (T4 to T7,), previously left unused, will help perform
this task. The goal of this experiment is to finalize the computer by implementing the necessary
combinational logic to perform the basic functions decoded from memory.

2. Introduction
Control Signal Generator:
The control signal generator is the combinational logic required to perform the task stored
in memory after they’ve been decoder by the decoder. The CSG takes the decoder output to control
the behavior of the registers.

3. Experimental Results and Questions


75154 Timing Diagram:

Question 1: Assume that the ability to invert a register is wanted. How could this be
implemented? Provide a detailed explanation.
To implement this, we would have to add a new Invert Register. This would be made with a 7404
Inverter that takes the input from the bus and outputs it into a 74574 register. We would also need
to add two new instruction signals and update the EPROM OP-Codes to include (InvA) and (InvB).
Here is how it would function in our circuit :
1- A register will output its contents onto the bus
2- The IR will store the contents of the bus and gets inverted through a 7404 IC
3- The IR will output its contents onto the bus
4- A register stores the content of the bus which is now inverted!

Question 2: Similarly to the previous question, now assume an AND function is to be


implemented. Is this possible? If so, how can it be implemented?
We think this is possible, but its output would be outputted to the bus and not saved. We would
need to add 2 registers, an AND and a BF (buffer). We also need to add an extra AND operation
to the EPROM. If properly implemented here is how it would function in our circuit :
1- Register A will output its contents to the bus
2- The BF register will store the contents of the bus
3- Then register B will output to the bus
4- The AND register will store the contents of the bus and will take that and the contents of
the BF register and put them through an AND IC (7408)
5- Finally, the AND register will output to the bus and the A AND B operation will be
complete!
4. Discussion
A discussion section must be added to each part of the lab experiment to provide your observations
about the result and technical facts. A snapshot of your simulation (one sample only) shows the
full documentation in the circuit. No repeated figures. (1/2 - 1 page)
In this lab we had to build the control signal generator to finalize our computer. This final piece
required our program counter, timing/clock system and memory to be working. To make the
control signal generator we had to make use of the four pulses from the TSG (Timing Signal
Generator) that we had not used yet in order to execute the instructions. The first instruction is the
IncA instruction which increments A and then stores it in the Data register. The second instruction
is IncB which does the same thing as IncA but with B. Next is the MovAB instruction which
simply copies the values of Data Register A to Data Register B by using the bus. Then there is the
MovBA instruction which does the opposite. Finally, there is the NOP instruction which is simply
a delay as it does nothing. After having completed all of this, we finally finished our project and
saw the final product. It was very interesting to see how all these pieces interacted with one
another, although it was a bit disappointing not to see it in person.

Overall, this project allowed us to learn a lot about the inner workings of a computer and let us get
some hands-on experience of making a very basic computer.

5. Conclusions
In this section, a full summary about activities and results should be stated. (5-10 sentences)
In this lab experiment we had to make the final piece of our computer which was the control
signal generator. After some careful tinkering, we managed to make it as described and attach it
to the rest of the project. There was no real way to test if our project was working but everything
that we built so far worked just fine and there did not seem to be any problems. The computer we
made currently executes a series of 6 instructions loaded to the EPROM. These instructions
consist of a combination of incrementing registers and moving data from one register to another.
It would have been interesting to see how our computer would execute different commands and
what we could have added to it if we had more time.
Sample of documented simulation file:

You might also like