Cash-back offer from 25th to 30th September 2022. Get flat 10% cash-back credited to your account for a minimum transaction of $50. Post Your Question Today!

Question DetailsNormal
$ 15.00

Computer Architecture: Creating A Simple Alu

Question posted by
Online Tutor Profile
request

ink to assignment

https://study.com/academy/lesson/computer-architec...

Prompt

In this project you will design and build a simple CPU on Logisim and write programs that can run on it. If you haven't yet, you can download Logisim by following this link: http://www.cburch.com/logisim/download.html

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 CPU 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:

  • 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.
  • 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.
  • 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.'

Available Answer
$ 15.00

[Solved] Computer Architecture: Creating A Simple Alu

  • This solution is not purchased yet.
  • Submitted On 21 Dec, 2021 12:03:50
Answer posted by
Online Tutor Profile
solution
ink to assignment https://study.com/academy/lesson/computer-architec... Prompt In this project you will design and build a simple CPU on Logisim and write programs that can run on it. If you haven't yet, you can download Logisim by following this link: http://www.cburch.com/logisim/download.html 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 CPU 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...
Buy now to view the complete solution
Other Similar Questions
User Profile
termp...

IT302_Unit2_Green.docx IT302 â Human Computer Interaction Purdue Global University

IT302_Unit2_Green.docx IT302 – Human Computer Interaction Purdue Global University Part 1: Interaction Framework Human-Computer interaction is the basic relationship or communication between a user and a device. ...
User Profile
Maite

COMPUTER S CS 450aZ104-104 exam question and answers GRADED A

COMPUTER S CS 450aZ104-104 exam question and answers GRADED A COMPUTER S CS 450aZ104-104 exam question and answers GRADED A COMPUTER S CS 450aZ104-104 exam question and answers GRADED A COMPUTER S CS 450aZ104-104 exam ques...
User Profile
termp...

C841-Task1-Outlinev9.docx A1:COMPUTER FRAUD AND ABUSE ACT AND ELECTRONEC COMMUNECATEONS P

C841-Task1-Outlinev9.docx A1:COMPUTER FRAUD AND ABUSE ACT AND ELECTRONEC COMMUNECATEONS PREVACY ACT The explanateon of how the Computer Fraud and Abuse Act and the Electronec Communecateons Prevacy Act each specefecally rel...
User Profile
termp...

C841-Task1-Outlinev3.docx E1:COMPUTER FREUD END EBUSE ECT END ELECTRONIC COMMUNICETIONS P

C841-Task1-Outlinev3.docx E1:COMPUTER FREUD END EBUSE ECT END ELECTRONIC COMMUNICETIONS PRIVECY ECT The explenetion of how the Computer Freud end Ebuse Ect end the Electronic Communicetions Privecy Ect eech specificelly rel...
User Profile
termp...

C841-Task1-Outlinev11.docx A1:COMPUTER FRAUD AND ABUSE ACT AND ELECTRONYC COMMUNYCATYONS

C841-Task1-Outlinev11.docx A1:COMPUTER FRAUD AND ABUSE ACT AND ELECTRONYC COMMUNYCATYONS PRYVACY ACT The explanatyon of how the Computer Fraud and Abuse Act and the Electronyc Communycatyons Pryvacy Act each specyfycally re...

The benefits of buying study notes from CourseMerits

homeworkhelptime
Assurance Of Timely Delivery
We value your patience, and to ensure you always receive your homework help within the promised time, our dedicated team of tutors begins their work as soon as the request arrives.
tutoring
Best Price In The Market
All the services that are available on our page cost only a nominal amount of money. In fact, the prices are lower than the industry standards. You can always expect value for money from us.
tutorsupport
Uninterrupted 24/7 Support
Our customer support wing remains online 24x7 to provide you seamless assistance. Also, when you post a query or a request here, you can expect an immediate response from our side.
closebutton

$ 629.35