Addressing Sequencing | Computer Architecture & Organisation (CAO) - Computer Science Engineering (CSE) PDF Download

Addressing sequencing

  • Microinstructions are stored in control memory in groups, with each group specifying a routine.
  • Each computer instruction has its own microprogram routine in control memory to generate the microoperations that execute the instruction.
  • To appreciate the address sequencing in a microprogram control unit:
    • An initial address is loaded into the control address register when power is turned on in the computer.
    • This address is usually the address of the first microinstruction that activates the instruction fetch routine.
    • The control memory next must go through the routine that determines the effective address of the operand.
    • The next step is to generate the microoperations that execute the instruction fetched from memory.

Question for Addressing Sequencing
Try yourself:
What is the purpose of storing microinstructions in groups in control memory?
View Solution

  • The transformation from the instruction code bits to an address in control memory where the routine is located is referred to as a mapping process.
  • The address sequencing capabilities required in a control memory are:
    • Incrementing of the control address register
    • Unconditional branch or conditional branch, depending on status bit conditions
    • A mapping process from the bits of the instruction to an address for control memory
    • A facility for subroutine call and return
  • Fig. 3-2 shows a block diagram of a control memory and the associated hardware needed for selecting the next microinstruction address.
  • The microinstruction in control memory contains
    • a set of bits to initiate microoperations in computer registers
    • Other bits to specify the method by which the next address is obtained

Sequencing Capabilities Required in Control Storage 

  • Incrementing of the control address register
  • Unconditional and conditional branches
  • A mapping process from the bits of the machine instruction to an address for control memory
  • A facility for subroutine call and return

Addressing Sequencing | Computer Architecture & Organisation (CAO) - Computer Science Engineering (CSE)

Conditional Branching

  • The branch logic of Fig. 3-2 provides decision-making capabilities in the control unit.
  • The status conditions are special bits in the system that provides parameter information.
    • e.g. the carry-out, the sign bit, the mode bits, and input or output status
  • The status bits, together with the field in the microinstruction that specifies a branch address, control the conditional branch decisions generated in the branch logic.
  • The branch logic hardware may be implemented by multiplexer.
    • Branch to the indicated address if the condition is met;
    • Otherwise, the address register is incremented.
  • An unconditional branch microinstruction can be implemented by loading the branch address from control memory into the control address register.
  • If Condition is true, then Branch (address from the next address field of the current microinstruction) else Fall Through
  • Conditions to Test: O(overflow), N(negative), Z(zero), C(carry), etc.

Question for Addressing Sequencing
Try yourself:
What is the purpose of the mapping process in control memory?
View Solution

Unconditional Branch

  • Fixing the value of one status bit at the input of the multiplexer to 1

Mapping of Instructions

  • A special type of branch exists when a microinstruction specifies a branch to the first word in control memory where a microprogram routine for an instruction is located.
  • The status bits for this type of branch are the bits in the operation code part of the instruction.
  • One simple mapping process that converts the 4-bit operation code to a 7-bit address for control memory is shown in Fig. 3-3.
    • Placing a 0 in the most significant bit of the address
    • Transferring the four operation code bits
    • Clearing the two least significant bits of the control address register
  • This provides for each computer instruction a microprogram routine with a capacity of four microinstructions.
    • If the routine needs more than four microinstructions, it can use addresses 1000000 through 1111111.
    • If it uses fewer than four microinstructions, the unused memory locations would be available for other routines.
  • One can extend this concept to a more general mapping rule by using a ROM or programmable logic device (PLD) to specify the mapping function.

Addressing Sequencing | Computer Architecture & Organisation (CAO) - Computer Science Engineering (CSE)

Addressing Sequencing | Computer Architecture & Organisation (CAO) - Computer Science Engineering (CSE)

Fig 3-3 (b): Mapping Function Implemented by ROM and PLD
Mapping from the OP-code of an instruction to the address of the Microinstruction which is the starting microinstruction of its execution microprogram.

Question for Addressing Sequencing
Try yourself:
What is the purpose of the unconditional branch in a microprogram routine?
View Solution

Subroutine

  • Subroutines are programs that are used by other routines to accomplish a particular task.
  • Microinstructions can be saved by employing subroutines that use common sections of microcode.
  • e.g. effective address computation
  • The subroutine register can then become the source for transferring the address for the return  to the main routine.
  • The best way to structure a register file that stores addresses for subroutines is to organize the registers in a last-in, first-out (LIFO) stack.

Read all about ALU, Data Path & Control Unit here. 

The document Addressing Sequencing | Computer Architecture & Organisation (CAO) - Computer Science Engineering (CSE) is a part of the Computer Science Engineering (CSE) Course Computer Architecture & Organisation (CAO).
All you need of Computer Science Engineering (CSE) at this link: Computer Science Engineering (CSE)
20 videos|86 docs|48 tests

Top Courses for Computer Science Engineering (CSE)

FAQs on Addressing Sequencing - Computer Architecture & Organisation (CAO) - Computer Science Engineering (CSE)

1. What is sequencing in computer science engineering?
Ans. Sequencing in computer science engineering refers to the process of arranging instructions in a particular order to achieve a specific outcome. It is a fundamental concept in programming, and it involves breaking down a problem into smaller tasks and executing them in a specific order.
2. Why is sequencing important in computer science engineering?
Ans. Sequencing is essential in computer science engineering because it helps organize the steps required to solve a problem or complete a task. By sequencing instructions, programmers can ensure that the computer executes them in the correct order and produces the intended output. Without sequencing, the computer may not be able to perform the desired task correctly.
3. What are some examples of sequencing in computer science engineering?
Ans. Some examples of sequencing in computer science engineering include creating a program to calculate the area of a circle, sorting data in ascending or descending order, and printing out the first ten numbers in a sequence. In each of these examples, the programmer must arrange the instructions in a specific order to achieve the desired outcome.
4. How can sequencing be improved in computer science engineering?
Ans. Sequencing can be improved in computer science engineering by breaking down complex problems into smaller, more manageable tasks and arranging them in the correct order. Additionally, it is essential to use clear and concise instructions and to test the program rigorously to ensure that it produces the desired output.
5. What are some common challenges programmers face when sequencing in computer science engineering?
Ans. Some common challenges programmers face when sequencing in computer science engineering include ensuring that the instructions are in the correct order, avoiding infinite loops, debugging errors in the code, and optimizing the program for efficiency. It is essential to have a solid understanding of programming concepts and to approach sequencing with a logical and methodical mindset to overcome these challenges.
20 videos|86 docs|48 tests
Download as PDF
Explore Courses for Computer Science Engineering (CSE) exam

Top Courses for Computer Science Engineering (CSE)

Signup for Free!
Signup to see your scores go up within 7 days! Learn & Practice with 1000+ FREE Notes, Videos & Tests.
10M+ students study on EduRev
Related Searches

MCQs

,

Extra Questions

,

Free

,

Addressing Sequencing | Computer Architecture & Organisation (CAO) - Computer Science Engineering (CSE)

,

Sample Paper

,

shortcuts and tricks

,

Exam

,

pdf

,

Addressing Sequencing | Computer Architecture & Organisation (CAO) - Computer Science Engineering (CSE)

,

Summary

,

video lectures

,

Objective type Questions

,

Semester Notes

,

ppt

,

Important questions

,

Previous Year Questions with Solutions

,

Addressing Sequencing | Computer Architecture & Organisation (CAO) - Computer Science Engineering (CSE)

,

mock tests for examination

,

study material

,

Viva Questions

,

past year papers

,

practice quizzes

;