How many operands you want your instructions to handle

Assignment Help Computer Engineering
Reference no: EM132585073

Assignment: Prompt: In this project, you will design and build a simple CPU on Logisim and write programs that can run on it.

Your design will go through four phases. In the first phase, you will design and build the ALU using Logisim. In the second phase, you will design the instruction set that implements the instructions you designed in phase one. In the third phase, you will design and implement a control unit for this ALU using Logisim. By connecting the CU to the ALU, you will get a functional CPU. In phase four of the project, you will write assembly language programs for the CPU you built.

Phase One: Start by building an 8-bit ALU using Logisim. This ALU can implement 16 instructions on 8-bit operands. We would suggest the following minimum list of instructions:

• Arithmetic addition

• Increment

• Decrement

• Comparison (with 3 outputs: one for equals, one for less than and one for greater than)

• Logic bitwise Not

• Logic bitwise And

• Logic bitwise Or

• Register right logic shift

• Register left logic shift

In addition to these nine instructions, please suggest five more instructions that the ALU can implement for a total of 14 instructions (we are reserving 2 instructions for branching). Justify the importance of the five instructions you added in a Word doc to submitted as part of this assignment. Label these instructions as 'Phase One.'

After you've suggested and justified your five suggested instructions, please build at least the nine above-mentioned operations as blocks in Logisim.

Phase Two: In phase two of the project, you are required to design the instruction set of the ALU/CPU as follows:

1. Create the opcode table for the ALU by giving a binary code and a name for each instruction you built in Logisim in phase one.

2. Decide how many operands you want your instructions to handle and justify your choice. We suggest either one operand with accumulator or two operands with the result stored in one of the input registers.

3. In Logisim, add a multiplexer to the circuit you built in phase one that chooses one of the available operations. The simplest way to create this part of the CPU is to connect the outputs of the multiplexer to the inputs of AND arrays connected to the output of the operation blocks.

Please record your answer to phase two in the same Word doc and label it 'Phase Two.'

Phase Three: In phase three, you are required to use Logisim to implement the control unit for at least the following three operations:

• addition

• logic bitwise AND

• right logic shift

In order to finish this phase, you need to add operand registers according to the decision you took for the number of operands in phase two and, if needed, a flag register.

Please record your answer to phase three in the same Word doc and label it 'Phase Three.'

Phase Four: In order to be able to write assembly language for the CPU we need to add to instructions (without implementation):

• branch to an address (name it JMP)

• conditional branch to an address (name it CJMP and suppose that the jump takes place if the comparison operation result is 'equals')

Now, write the following programs using the assembly language you designed in the previous phases of the project as well as these two branching additional instructions:

• Write a program that adds two operands.

• Write a program that adds operands until the new value to be added is 0. You do not need to implement the input operations to modify the contents of the registers. Just assume that by the end of each iteration, the register content is modified.

• Write a program that increments by 2 the content of a register 10 times.

• Write a program that shifts the content of a register until the least significant bit is 0. Think of a way to stop shifting if the content of the register is 11111111 and add it to your program.

• Please record your programs in the same Word doc and label them under the section 'Phase Four.'

Reference no: EM132585073

Questions Cloud

Explain different uses of the tools besides cryptography : In this module, you learned that random numbers (or, at least, pseudorandom numbers) are essential in cryptography, but it is extremely difficult even.
What are sources of additional paid in capital : What are sources of additional paid in capital. Distinguish among: cash dividends, property dividends, liquidating dividends and stock dividends?
Explain how macroeconomic factors affect health care costs : Explain how macroeconomic factors affect health care costs. describe how financing is provided to both national health care systems.
Analyse the pros and cons of the ifrs standards : Analyse the pros and cons of the IFRS standards, which require the use of fair value in recognition and measurement, from debt holders' perspectives
How many operands you want your instructions to handle : Decide how many operands you want your instructions to handle and justify your choice. We suggest either one operand with accumulator or two operands with.
How are various management systems such as human resource : How are various management systems such as human resource management, costs, capital budgeting, and performance measurement incorporated
Compute the diluted earnings per share for kane company : Compute the diluted earnings per share for 2010. Sold at par, convertible into 200,000 shares of common (adjusted for split). $1,000,000
Pioneer petroleum corporation : The Pioneer Petroleum Corporation has a bond outstanding with an $90 annual interest payment, a market price of $860
Compare and contrast the service positioning matrix : Compare and contrast the service positioning matrix and the product process matrix in terms of their differences and similarities.

Reviews

Write a Review

Computer Engineering Questions & Answers

  Show the current selections made by the user

construct a program that demonstrates the enhanced options for the MessageBox class. Use three GroupBox controls with RadioButton controls contained within each.

  Describe disparity between vulnerability, threat and control

Describe disparity between vulnerability, threat and control

  Write down a 200- to 300-word response to the given the

write a 200- to 300-word response to the following the usage of an automated response system ars enables problem

  Perform an amortized analysis of the running time of n

Suppose that after every K operations, we automatically make a copy of the stack for back-up purposes. (Note the stack may or may not be full at this point.)

  Discuss the issue of securing backups

Discuss the issue of securing backups. There have been several incidents lately in which backup media containing personal customer information.

  Compare the advantages and disadvantages of atm

Compare the advantages and disadvantages of ATM to those of frame relay. Recommend the superior technology and explain your rationale

  Prepare a visual rendering depicting your design via the

as the lead software engineer for a medium-sized hospital you have been asked to spearhead an effort to improve the

  Write a matlab script that plots the given functions

Produce a single plot that displays the graphs of the functions sin(kx) across [0,211'], k = 1:5.

  How much time will it take with pipelining fully explain

alwaysclean is a laundromat that has three operations wash dry and iron. it takes 30 minutes to wash one load 40

  Write program that make calculations for arbitrary purchases

Write a program that can make these calculations for arbitrary purchases and sales of shares in a single company.

  How to write a report on object-oriented systems

How to write a report on Object-Oriented Systems?

  Designing and developing a simple im system

In this project you will be designing/developing a simple IM system. However, we will leave the precise details of the design up to you (maybe you want to make it state driven, using an Finite State Machine design

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd