Question: Project description: In this project, we need to upgrade our accumulator computer described and implemented in the example above to a bit more complicated computer.
Project description:
In this project, we need to upgrade our accumulator computer described and implemented in the example above to a
bit more complicated computer. The memory in this computer system is bit cell memory with size of cells
ie cell width bits The memory is synchronous to the CPU, and the CPU can readwrite one cell in a
single clock cycle. The memory can only be accessed through the memory address register MAR and the
memory buffer register MBR
The CPU has a program counter PC register and an instruction register IR This CPU has eight bit
generalpurpose registers RR
The bit instruction format is as follow:
Opcodebits Dst Register bits mode bits Src Register Memory Address bits
Addressing Modes bits for the last field of the instruction bits:
Direct memory address
Register
Register Indirect
Constant
The opcodes are:
LOAD Ri operand: loads register Ri with a memory cell of address operandregister content of address operand
memory cell of address in register operandor a constant integer operand.
STORE RiM: Stores the contents of Ri in memory cell of address Monly mode is supported with store
instruction
ADD Ri operand: Adds the contents of Ri to the operand, and store the result in Ri
SUB Ri M: subtract the contents operand from Ri and store the result in Ri
MUL Ri M: Multiplies the contents of Ri by the operand, and store the result in Ri
DIV Ri M: Divides the contents of operand by Ri and store the result in Ri
Assume data is singed bit integers in twos complement format.
Example:
To add memory cell of address with a constant and store the result in memory cell of address we can
use the following program:
Assembly Machine codebinary Machine codeHex
Load Rx
Load Rx
Add R Rx
Store RxA
Requirements:
a How many instructions this machine can support ie max
b What is the range of unsigned and signed constant numbers this machine supports?
c What is the length in bits of the following registers in this machine?
PC:
IR:
MAR:
MBR:
Simulate the following program by converting each instruction to corresponding machine code. Then store the
machine code in memory starting from location :
Memory Address Contents
Load Rinstruction
Load Rinstruction
Add RRinstruction
load Rinstruction
Sub Rinstruction
Add RRinstruction
Store Rinstruction
data
data
data
data
data
Verify that it works correctly and the also verify that the result stored at address is correct. Attach simulation
waveform and the Verilog source file.
Assume ABCDE and Y are memory cells with addresses and respectively.
Given
a Write assembly code for implementing the above arithmetic expression?
b Convert the above assembly instructions into machine code Hex and store them in the memory starting at
address
address content
c Set PC and simulate the above program. Verify that it works correctly and the result stored at memory
variable Y is correct. Attach simulation waveform and the Verilog source file. Assume A B C D and E have
the values and respectively.
What to submit:
Each group needs to submit the followings within the specified deadline by any partner:
All Verilog code for each required simulation
A short report pages includes the project design and implementation including your answers to the
above questions. It should also include code and simulation waveforms for each required simulation task.
The report should include a section illustrating the role and tasks achieved by each team member.
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
