Question

Computer Systems // MARIE Assembly Question: If we decide to expand MARIE to have 21 instructions...

Computer Systems // MARIE Assembly Question:

If we decide to expand MARIE to have 21 instructions instead of 15...

a.) What impact will this have on MARIE’s instruction format? That is, what has to change to permit this?

b.) In making this change, this has impacts to things like register sizes and possibly the size of a bus and/or memory. What registers are impacted and what other hardware is/are impacted (e.g., is a bus impacted, if so, which one, and is memory impacted and if so, how)?

0 0
Add a comment Improve this question Transcribed image text
Answer #1

Currently, MARIE(Machine Architecture that is Really Intuitive and Easy) supports 15 instructions.

For part(a) of the above question:

According to the question, if we decide to expand MARIE to have 21 instructions, then we obviously have to add on to the currently supported 15 instructions. Now if we want to add more than 1 instruction, then it requires that we add to the length of the opcode.

In order to support this, if we have 4 Adds (instead of 2), 4 Subs (instead of 1), 4 Loads (instead of 2), 4 Stores (instead of 2) and 4 Jumps (instead of 2), we will be adding 11 instructions. This would bring us to 26 instructions which would require 5 bits for the opcode instead of 4.

If we add a 2-bit addressing mode, we have to obviously add 2 bits to the instruction but we also reduce the size of the instruction set. We lose 1 Load (LoadI), 1 Store (StoreI), 1 Add (AddI) and 1 Jump (JumpI). The result is 11 instructions but this still requires 4 bits for the opcode. Consequently, we are left with the choices that follow:

i) adding 1 bit to the opcode will increase the number of instructions but in doing so we can add even more instructions later because we will be using 26 of 32 possible opcodes. The extra bit means making out instructions 17 bits long or reducing memory’s size to an 11-bit space (2048 instead of 4096).

ii) add 2-bit addressing mode and reduce the number of instructions by 4 giving us space for 5 total new instructions but now our instructions have become 18 bits long or we reduce memory size to 10 bits (1024).

For part (b) of the above question:

If we want to expand from 15 instructions to 21 instructions, this requires updating all memory storage locations to be 24 bits instead of 16, a data bus of 24 bits, MBR and IR of 24 bits, and since data can now also be enlarged to 24 bits, the ALU and AC must also be 24 bits. With 20 bit addresses, the address bus will need to be 20 bits wide and the MAR and PC will need to be 20 bits long.

Hope this answer helps.

Thank you so much.

Add a comment
Know the answer?
Add Answer to:
Computer Systems // MARIE Assembly Question: If we decide to expand MARIE to have 21 instructions...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • Suppose a computer has 20-bit instructions. The instruction set consists of 32 different operations. All instructions have an opcode and two address fields (allowing for two addresses). The frst...

    Suppose a computer has 20-bit instructions. The instruction set consists of 32 different operations. All instructions have an opcode and two address fields (allowing for two addresses). The frst of these addresses must be a register, and the second must be memory. Expanding opcodes are not used. The machine has 16 registers. What is the maximum allowable size for memory? o 2 K byte O 14K byte O 11 K byte Next » ous Suppose a computer has 20-bit instructions....

  • 2018 CIS360: Info Tech Hardware & Software 6. Short answer questions Answer the following questions in...

    2018 CIS360: Info Tech Hardware & Software 6. Short answer questions Answer the following questions in the space below: a) b) c) (2 points) Name any five components of the LMC computer and their real-world equivalents (2 points) State any two guidelines that define a von Neumann architecture (2 points) The LMC computer executes instructions sequentially except when which type of instruction is encountered? (2 points) What is a register? Where is it located? What's the benefit of incorporating registers...

  • Question 20 5 pts Suppose a computer has 32-bit instructions. The instruction set consists of 64...

    Question 20 5 pts Suppose a computer has 32-bit instructions. The instruction set consists of 64 different operations. All instructions have an opcode and two address fields (allowing for two addresses). The first of these addresses must be a register direct address, and the second must be a memory address. Expanding opcodes are not used. The machine has 16 registers. What's the size of the largest memory space that can be addressed by this computer?Assume byte addressable memory.

  • pls both ans Question 20 5 pts Suppose a computer has 32-bit instructions. The instruction set...

    pls both ans Question 20 5 pts Suppose a computer has 32-bit instructions. The instruction set consists of 64 different operations. All instructions have an opcode and two address fields (allowing for two addresses). The first of these addresses must be a register direct address, and the second must be a memory address. Expanding opcodes are not used. The machine has 16 registers. How many bits can be used for the memory address? Question 21 5 pts Suppose we have...

  • Suppose that we wanted to take the VBC1 instruction set and add 2 new commands for accessing the memory READ DR, Address and WRITE DR, Addres:s Because of this we also decide to add to additional reg...

    Suppose that we wanted to take the VBC1 instruction set and add 2 new commands for accessing the memory READ DR, Address and WRITE DR, Addres:s Because of this we also decide to add to additional registers to support memory access. Theses registers are designated R2 and R3 How does this impact the machine language for the VBC1 Please do not discuss changes to the hardware Machine Language Instructions in Assembly Language Form (ALF)e Data/ Address SR Opcode DR 4...

  • computer analysis

    Questions1.  The function L is defined as L(1) = 2,L(2) = 1,L(3) = 3,L(4) = 4 and for n ≥ 4,L(n + 1) = L(n) + L(n − 1) + L(n − 2)L(n − 3)i.e., the (n + 1)-th value is given by the sum of the n-th, n − 1-th and n − 2-th values divided by the n − 3-th value.(a)  Write an assembly program for computing the k-th value L(k), where k is an integer bigger than...

  • Part 1: A pipelined computer completes instructions more quickly by having more than one instruction at...

    Part 1: A pipelined computer completes instructions more quickly by having more than one instruction at a time "in the pipeline." Explain what problem branch instructions cause with instruction pipelining. Describe one approach to overcoming this problem. Part 2: RISC computers generally execute more instructions per second than CISC computers. Describe the penalty or trade-off paid when adopting the RISC architecture. Part 3: When a cache hit to a cache on the CPU chip occurs on a memory write the...

  • MIPS Assembly Computer Organization and Design MIPS Algorithm Design (25 pts. Throughout the course, we have...

    MIPS Assembly Computer Organization and Design MIPS Algorithm Design (25 pts. Throughout the course, we have learned different types of instruction sets in MIPS programming: arithmetic instructions, branch instructions, jump instructions, and memory access instructions. Let's assume, we have a 10 line of MIPS code in which we perform 5 arithmetic operations, 2 branch operations. 1 jump operation, and 2 memory operations (1 store, 1 load). In the datapath, we are given that: fetching the instruction set takes 2 states....

  • Could you please help me doing this? Slide #14: Slide #15 The question: ARM Assembly Language...

    Could you please help me doing this? Slide #14: Slide #15 The question: ARM Assembly Language label mnemonic operand1, operand2, operand3 comments R2+R1->R3 Loc ADD R3, R2 R1 Label is a symbolic reference to this instruction's address in memory. Mnemonic represents the operation to be performed .The number of operands varies, depending on each specific instruction. Some instructions have no operands at all. operand1 is typically the destination register, and operand2 and operand3 are source operands. operand2 is usually a...

  • Question 4: Single Cycle Datapath Control (15 points) We wish to add the hardware support for...

    Question 4: Single Cycle Datapath Control (15 points) We wish to add the hardware support for a special R-type instruction jlr Jump and Link Register) to the single-cycle datapath below. Though this is an R-type instruction, but it is a special one that has the opcode being 000001 (instead of 000000), so the control unit will be able to differentiate this jlr instruction from the other R-type instructions and generate a special set of controls for this instruction. Opcode rs...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT