SlideShare a Scribd company logo
1 of 35
Micro-programmed Control
Control Unit Organization
Micro-programmed Control
• Use sequences of instructions (see earlier notes) to control complex
operations
• Called micro-programming or firmware
Implementation (1)
• All the control unit does is generate a set of control signals
• Each control signal is on or off
• Represent each control signal by a bit
• Have a control word for each micro-operation
• Have a sequence of control words for each machine code instruction
• Add an address to specify the next micro-instruction, depending on
conditions
Implementation (2)
• Today’s large microprocessor
• Many instructions and associated register-level hardware
• Many control points to be manipulated
• This results in control memory that
• Contains a large number of words
• co-responding to the number of instructions to be executed
• Has a wide word width
• Due to the large number of control points to be manipulated
Micro-program Word Length
• Based on 3 factors
• Maximum number of simultaneous micro-operations supported
• The way control information is represented or encoded
• The way in which the next micro-instruction address is specified
Micro-instruction Types
• Each micro-instruction specifies single (or few) micro-operations to
be performed
• (vertical micro-programming)
• Each micro-instruction specifies many different micro-operations to
be performed in parallel
• (horizontal micro-programming)
Vertical Micro-programming
• Width is narrow
• n control signals encoded into log2 n bits
• Limited ability to express parallelism
• Considerable encoding of control information requires external
memory word decoder to identify the exact control line being
manipulated
Horizontal Micro-programming
• Wide memory word
• High degree of parallel operations possible
• Little encoding of control information
Typical Microinstruction Formats
Compromise
• Divide control signals into disjoint groups
• Implement each group as separate field in memory word
• Supports reasonable levels of parallelism without too much
complexity
Organization of
Control Memory
Control Unit
Control Unit Function
• Sequence login unit issues read command
• Word specified in control address register is read into
control buffer register
• Control buffer register contents generates control signals
and next address information
• Sequence login loads new address into control buffer
register based on next address information from control
buffer register and ALU flags
Next Address Decision
• Depending on ALU flags and control buffer register
• Get next instruction
• Add 1 to control address register
• Jump to new routine based on jump microinstruction
• Load address field of control buffer register into control address register
• Jump to machine instruction routine
• Load control address register based on opcode in IR
Functioning of Microprogrammed
Control Unit
Wilkes Control
• 1951
• Matrix partially filled with diodes
• During cycle, one row activated
• Generates signals where diode present
• First part of row generates control
• Second generates address for next cycle
Wilkes's Microprogrammed Control Unit
Advantages and Disadvantages of
Microprogramming
• Simplifies design of control unit
• Cheaper
• Less error-prone
• Slower
Tasks Done By Microprogrammed
Control Unit
• Microinstruction sequencing
• Microinstruction execution
• Must consider both together
Design Considerations
• Size of microinstructions
• Address generation time
• Determined by instruction register
• Once per cycle, after instruction is fetched
• Next sequential address
• Common in most designed
• Branches
• Both conditional and unconditional
Sequencing Techniques
• Based on current microinstruction, condition flags, contents of IR,
control memory address must be generated
• Based on format of address information
• Two address fields
• Single address field
• Variable format
Branch Control Logic:
Two Address Fields
Branch Control
Logic: Single
Address Field
Branch Control
Logic: Variable
Format
Address Generation
Explicit Implicit
Two-field Mapping
Unconditional Branch Addition
Conditional branch Residual control
Execution
• The cycle is the basic event
• Each cycle is made up of two events
• Fetch
• Determined by generation of microinstruction address
• Execute
Execute
• Effect is to generate control signals
• Some control points internal to processor
• Rest go to external control bus or other interface
Control Unit
Organization
A Taxonomy of Microinstructions
• Vertical/horizontal
• Packed/unpacked
• Hard/soft microprogramming
• Direct/indirect encoding
Improvements over Wilkes
• Wilkes had each bit directly produced a control signal or directly
produced one bit of next address
• More complex address sequencing schemes,
• using fewer microinstruction bits, are possible
• Require more complex sequencing logic module
• Control word bits can be saved by encoding and subsequently
decoding control information
How to Encode
• K different internal and external control signals
• Wilkes’s:
• K bits dedicated
• 2K control signals during any instruction cycle
• Not all used
• Two sources cannot be gated to same destination
• Register cannot be source and destination
• Only one pattern presented to ALU at a time
• Only one pattern presented to external control bus at a time
• Require Q < 2K which can be encoded with log2Q < K bits
• Not done
• As difficult to program as pure decoded (Wilkes) scheme
• Requires complex slow control logic module
• Compromises
• More bits than necessary used
• Some combinations that are physically allowable are not possible to encode
Specific Encoding Techniques
• Microinstruction organized as set of fields
• Each field contains code
• Activates one or more control signals
• Organize format into independent fields
• Field depicts set of actions (pattern of control signals)
• Actions from different fields can occur simultaneously
• Alternative actions that can be specified by a field are mutually
exclusive
• Only one action specified for field could occur at a time
Microinstruction Encoding
Direct Encoding
Microinstruction Encoding
Indirect Encoding

More Related Content

What's hot

Asynchronous data transfer
Asynchronous data transferAsynchronous data transfer
Asynchronous data transferpriya Nithya
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processingKamal Acharya
 
CS4109 Computer System Architecture
CS4109 Computer System ArchitectureCS4109 Computer System Architecture
CS4109 Computer System Architecturektosri
 
Direct Memory Access (DMA)-Working and Implementation
Direct Memory Access (DMA)-Working and ImplementationDirect Memory Access (DMA)-Working and Implementation
Direct Memory Access (DMA)-Working and ImplementationShubham Kumar
 
Computer architecture cache memory
Computer architecture cache memoryComputer architecture cache memory
Computer architecture cache memoryMazin Alwaaly
 
Direct Memory Access(DMA)
Direct Memory Access(DMA)Direct Memory Access(DMA)
Direct Memory Access(DMA)Page Maker
 
Pipeline hazard
Pipeline hazardPipeline hazard
Pipeline hazardAJAL A J
 
Introduction to Computer Architecture
Introduction to Computer ArchitectureIntroduction to Computer Architecture
Introduction to Computer ArchitectureAnkush Srivastava
 
Interfacing memory with 8086 microprocessor
Interfacing memory with 8086 microprocessorInterfacing memory with 8086 microprocessor
Interfacing memory with 8086 microprocessorVikas Gupta
 
Computer Organisation & Architecture (chapter 1)
Computer Organisation & Architecture (chapter 1) Computer Organisation & Architecture (chapter 1)
Computer Organisation & Architecture (chapter 1) Subhasis Dash
 
RISC Vs CISC, Harvard v/s Van Neumann
RISC Vs CISC, Harvard v/s Van NeumannRISC Vs CISC, Harvard v/s Van Neumann
RISC Vs CISC, Harvard v/s Van NeumannRavikumar Tiwari
 
8257 DMA Controller
8257 DMA Controller8257 DMA Controller
8257 DMA ControllerShivamSood22
 
Computer architecture
Computer architectureComputer architecture
Computer architectureRishabha Garg
 

What's hot (20)

Asynchronous data transfer
Asynchronous data transferAsynchronous data transfer
Asynchronous data transfer
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processing
 
CS4109 Computer System Architecture
CS4109 Computer System ArchitectureCS4109 Computer System Architecture
CS4109 Computer System Architecture
 
Direct Memory Access (DMA)-Working and Implementation
Direct Memory Access (DMA)-Working and ImplementationDirect Memory Access (DMA)-Working and Implementation
Direct Memory Access (DMA)-Working and Implementation
 
Computer architecture cache memory
Computer architecture cache memoryComputer architecture cache memory
Computer architecture cache memory
 
CPU Architecture
CPU ArchitectureCPU Architecture
CPU Architecture
 
Direct Memory Access(DMA)
Direct Memory Access(DMA)Direct Memory Access(DMA)
Direct Memory Access(DMA)
 
Microprogrammed Control Unit
Microprogrammed Control UnitMicroprogrammed Control Unit
Microprogrammed Control Unit
 
Pipeline hazard
Pipeline hazardPipeline hazard
Pipeline hazard
 
Introduction to Computer Architecture
Introduction to Computer ArchitectureIntroduction to Computer Architecture
Introduction to Computer Architecture
 
Interfacing memory with 8086 microprocessor
Interfacing memory with 8086 microprocessorInterfacing memory with 8086 microprocessor
Interfacing memory with 8086 microprocessor
 
Data transferschemes
Data transferschemesData transferschemes
Data transferschemes
 
Computer Organisation & Architecture (chapter 1)
Computer Organisation & Architecture (chapter 1) Computer Organisation & Architecture (chapter 1)
Computer Organisation & Architecture (chapter 1)
 
Assembly Language
Assembly LanguageAssembly Language
Assembly Language
 
Interrupts
InterruptsInterrupts
Interrupts
 
Interrupts
InterruptsInterrupts
Interrupts
 
Interrupts and types of interrupts
Interrupts and types of interruptsInterrupts and types of interrupts
Interrupts and types of interrupts
 
RISC Vs CISC, Harvard v/s Van Neumann
RISC Vs CISC, Harvard v/s Van NeumannRISC Vs CISC, Harvard v/s Van Neumann
RISC Vs CISC, Harvard v/s Van Neumann
 
8257 DMA Controller
8257 DMA Controller8257 DMA Controller
8257 DMA Controller
 
Computer architecture
Computer architectureComputer architecture
Computer architecture
 

Viewers also liked

Viewers also liked (7)

Osi model 7 Layers
Osi model 7 LayersOsi model 7 Layers
Osi model 7 Layers
 
Getting started into mySQL
Getting started into mySQLGetting started into mySQL
Getting started into mySQL
 
Basic networking
Basic networkingBasic networking
Basic networking
 
Micro programmed control
Micro programmed controlMicro programmed control
Micro programmed control
 
Datapath Design of Computer Architecture
Datapath Design of Computer ArchitectureDatapath Design of Computer Architecture
Datapath Design of Computer Architecture
 
Mysql grand
Mysql grandMysql grand
Mysql grand
 
Hardwired control
Hardwired controlHardwired control
Hardwired control
 

Similar to Micro programmed control

17 micro programmed control
17 micro programmed control17 micro programmed control
17 micro programmed controldilip kumar
 
Microarchitecture
MicroarchitectureMicroarchitecture
Microarchitecturemeashi
 
Control unit design
Control unit designControl unit design
Control unit designDhaval Bagal
 
Control Units : Microprogrammed and Hardwired:control unit
Control Units : Microprogrammed and Hardwired:control unitControl Units : Microprogrammed and Hardwired:control unit
Control Units : Microprogrammed and Hardwired:control unitabdosaidgkv
 
Unit 2 ca- control unit
Unit 2 ca- control unitUnit 2 ca- control unit
Unit 2 ca- control unitBBDITM LUCKNOW
 
3 4- computer organization and archietecture- COA- CO- Computer organization
3 4- computer organization and archietecture- COA- CO- Computer organization3 4- computer organization and archietecture- COA- CO- Computer organization
3 4- computer organization and archietecture- COA- CO- Computer organizationJay Patel
 
Design of control unit.pptx
Design of control unit.pptxDesign of control unit.pptx
Design of control unit.pptxShubham014
 
Ch7 official=computer organization and archietectur- CO-COA
Ch7 official=computer organization and archietectur- CO-COACh7 official=computer organization and archietectur- CO-COA
Ch7 official=computer organization and archietectur- CO-COAJay Patel
 
15 control-computer organization and archietecture-CO-COA
15 control-computer organization and archietecture-CO-COA15 control-computer organization and archietecture-CO-COA
15 control-computer organization and archietecture-CO-COAJay Patel
 
Reduced instruction set computers
Reduced instruction set computersReduced instruction set computers
Reduced instruction set computersSyed Zaid Irshad
 
Basics of micro controllers for biginners
Basics of  micro controllers for biginnersBasics of  micro controllers for biginners
Basics of micro controllers for biginnersGerwin Makanyanga
 
conrol_Unit_part_of_computer_architecture.pptx
conrol_Unit_part_of_computer_architecture.pptxconrol_Unit_part_of_computer_architecture.pptx
conrol_Unit_part_of_computer_architecture.pptxjbri1395
 
CS304PC:Computer Organization and Architecture UNIT II .pdf
CS304PC:Computer Organization and Architecture UNIT II .pdfCS304PC:Computer Organization and Architecture UNIT II .pdf
CS304PC:Computer Organization and Architecture UNIT II .pdfAsst.prof M.Gokilavani
 
Simple CPU Instruction Set Design.pptx
Simple CPU Instruction Set Design.pptxSimple CPU Instruction Set Design.pptx
Simple CPU Instruction Set Design.pptxssuser3aa461
 
Unit 3. control unit
Unit 3. control unitUnit 3. control unit
Unit 3. control unitKiran Bagale
 

Similar to Micro programmed control (20)

17 micro programmed control
17 micro programmed control17 micro programmed control
17 micro programmed control
 
Microarchitecture
MicroarchitectureMicroarchitecture
Microarchitecture
 
Control unit design
Control unit designControl unit design
Control unit design
 
Control unit
Control unit Control unit
Control unit
 
Control Units : Microprogrammed and Hardwired:control unit
Control Units : Microprogrammed and Hardwired:control unitControl Units : Microprogrammed and Hardwired:control unit
Control Units : Microprogrammed and Hardwired:control unit
 
Unit 2 ca- control unit
Unit 2 ca- control unitUnit 2 ca- control unit
Unit 2 ca- control unit
 
3 4- computer organization and archietecture- COA- CO- Computer organization
3 4- computer organization and archietecture- COA- CO- Computer organization3 4- computer organization and archietecture- COA- CO- Computer organization
3 4- computer organization and archietecture- COA- CO- Computer organization
 
Unit 3 CO.pptx
Unit 3 CO.pptxUnit 3 CO.pptx
Unit 3 CO.pptx
 
Design of control unit.pptx
Design of control unit.pptxDesign of control unit.pptx
Design of control unit.pptx
 
Ch7 official=computer organization and archietectur- CO-COA
Ch7 official=computer organization and archietectur- CO-COACh7 official=computer organization and archietectur- CO-COA
Ch7 official=computer organization and archietectur- CO-COA
 
15 control-computer organization and archietecture-CO-COA
15 control-computer organization and archietecture-CO-COA15 control-computer organization and archietecture-CO-COA
15 control-computer organization and archietecture-CO-COA
 
Reduced instruction set computers
Reduced instruction set computersReduced instruction set computers
Reduced instruction set computers
 
Ch7 official
Ch7 officialCh7 official
Ch7 official
 
Unit II.pptx
Unit II.pptxUnit II.pptx
Unit II.pptx
 
Basics of micro controllers for biginners
Basics of  micro controllers for biginnersBasics of  micro controllers for biginners
Basics of micro controllers for biginners
 
conrol_Unit_part_of_computer_architecture.pptx
conrol_Unit_part_of_computer_architecture.pptxconrol_Unit_part_of_computer_architecture.pptx
conrol_Unit_part_of_computer_architecture.pptx
 
Unit 2.1. cpu
Unit 2.1. cpuUnit 2.1. cpu
Unit 2.1. cpu
 
CS304PC:Computer Organization and Architecture UNIT II .pdf
CS304PC:Computer Organization and Architecture UNIT II .pdfCS304PC:Computer Organization and Architecture UNIT II .pdf
CS304PC:Computer Organization and Architecture UNIT II .pdf
 
Simple CPU Instruction Set Design.pptx
Simple CPU Instruction Set Design.pptxSimple CPU Instruction Set Design.pptx
Simple CPU Instruction Set Design.pptx
 
Unit 3. control unit
Unit 3. control unitUnit 3. control unit
Unit 3. control unit
 

More from Syed Zaid Irshad

More from Syed Zaid Irshad (20)

Operating System.pdf
Operating System.pdfOperating System.pdf
Operating System.pdf
 
DBMS_Lab_Manual_&_Solution
DBMS_Lab_Manual_&_SolutionDBMS_Lab_Manual_&_Solution
DBMS_Lab_Manual_&_Solution
 
Data Structure and Algorithms.pptx
Data Structure and Algorithms.pptxData Structure and Algorithms.pptx
Data Structure and Algorithms.pptx
 
Design and Analysis of Algorithms.pptx
Design and Analysis of Algorithms.pptxDesign and Analysis of Algorithms.pptx
Design and Analysis of Algorithms.pptx
 
Professional Issues in Computing
Professional Issues in ComputingProfessional Issues in Computing
Professional Issues in Computing
 
Reduce course notes class xi
Reduce course notes class xiReduce course notes class xi
Reduce course notes class xi
 
Reduce course notes class xii
Reduce course notes class xiiReduce course notes class xii
Reduce course notes class xii
 
Introduction to Database
Introduction to DatabaseIntroduction to Database
Introduction to Database
 
C Language
C LanguageC Language
C Language
 
Flowchart
FlowchartFlowchart
Flowchart
 
Algorithm Pseudo
Algorithm PseudoAlgorithm Pseudo
Algorithm Pseudo
 
Computer Programming
Computer ProgrammingComputer Programming
Computer Programming
 
ICS 2nd Year Book Introduction
ICS 2nd Year Book IntroductionICS 2nd Year Book Introduction
ICS 2nd Year Book Introduction
 
Security, Copyright and the Law
Security, Copyright and the LawSecurity, Copyright and the Law
Security, Copyright and the Law
 
Computer Architecture
Computer ArchitectureComputer Architecture
Computer Architecture
 
Data Communication
Data CommunicationData Communication
Data Communication
 
Information Networks
Information NetworksInformation Networks
Information Networks
 
Basic Concept of Information Technology
Basic Concept of Information TechnologyBasic Concept of Information Technology
Basic Concept of Information Technology
 
Introduction to ICS 1st Year Book
Introduction to ICS 1st Year BookIntroduction to ICS 1st Year Book
Introduction to ICS 1st Year Book
 
Using the set operators
Using the set operatorsUsing the set operators
Using the set operators
 

Recently uploaded

Solving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.pptSolving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.pptJasonTagapanGulla
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...121011101441
 
Internet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxInternet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxVelmuruganTECE
 
Steel Structures - Building technology.pptx
Steel Structures - Building technology.pptxSteel Structures - Building technology.pptx
Steel Structures - Building technology.pptxNikhil Raut
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
home automation using Arduino by Aditya Prasad
home automation using Arduino by Aditya Prasadhome automation using Arduino by Aditya Prasad
home automation using Arduino by Aditya Prasadaditya806802
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncssuser2ae721
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionDr.Costas Sachpazis
 
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfg
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfgUnit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfg
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfgsaravananr517913
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvLewisJB
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionMebane Rash
 
Indian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptIndian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptMadan Karki
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleAlluxio, Inc.
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating SystemRashmi Bhat
 
welding defects observed during the welding
welding defects observed during the weldingwelding defects observed during the welding
welding defects observed during the weldingMuhammadUzairLiaqat
 
Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm Systemirfanmechengr
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHC Sai Kiran
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxKartikeyaDwivedi3
 

Recently uploaded (20)

Solving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.pptSolving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.ppt
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...
 
Internet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxInternet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptx
 
Steel Structures - Building technology.pptx
Steel Structures - Building technology.pptxSteel Structures - Building technology.pptx
Steel Structures - Building technology.pptx
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
home automation using Arduino by Aditya Prasad
home automation using Arduino by Aditya Prasadhome automation using Arduino by Aditya Prasad
home automation using Arduino by Aditya Prasad
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
 
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfg
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfgUnit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfg
Unit7-DC_Motors nkkjnsdkfnfcdfknfdgfggfg
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvv
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of Action
 
Indian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptIndian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.ppt
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at Scale
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating System
 
welding defects observed during the welding
welding defects observed during the weldingwelding defects observed during the welding
welding defects observed during the welding
 
Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm System
 
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
 
young call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Serviceyoung call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Service
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECH
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptx
 

Micro programmed control

  • 3. Micro-programmed Control • Use sequences of instructions (see earlier notes) to control complex operations • Called micro-programming or firmware
  • 4. Implementation (1) • All the control unit does is generate a set of control signals • Each control signal is on or off • Represent each control signal by a bit • Have a control word for each micro-operation • Have a sequence of control words for each machine code instruction • Add an address to specify the next micro-instruction, depending on conditions
  • 5. Implementation (2) • Today’s large microprocessor • Many instructions and associated register-level hardware • Many control points to be manipulated • This results in control memory that • Contains a large number of words • co-responding to the number of instructions to be executed • Has a wide word width • Due to the large number of control points to be manipulated
  • 6. Micro-program Word Length • Based on 3 factors • Maximum number of simultaneous micro-operations supported • The way control information is represented or encoded • The way in which the next micro-instruction address is specified
  • 7. Micro-instruction Types • Each micro-instruction specifies single (or few) micro-operations to be performed • (vertical micro-programming) • Each micro-instruction specifies many different micro-operations to be performed in parallel • (horizontal micro-programming)
  • 8. Vertical Micro-programming • Width is narrow • n control signals encoded into log2 n bits • Limited ability to express parallelism • Considerable encoding of control information requires external memory word decoder to identify the exact control line being manipulated
  • 9. Horizontal Micro-programming • Wide memory word • High degree of parallel operations possible • Little encoding of control information
  • 11. Compromise • Divide control signals into disjoint groups • Implement each group as separate field in memory word • Supports reasonable levels of parallelism without too much complexity
  • 14. Control Unit Function • Sequence login unit issues read command • Word specified in control address register is read into control buffer register • Control buffer register contents generates control signals and next address information • Sequence login loads new address into control buffer register based on next address information from control buffer register and ALU flags
  • 15. Next Address Decision • Depending on ALU flags and control buffer register • Get next instruction • Add 1 to control address register • Jump to new routine based on jump microinstruction • Load address field of control buffer register into control address register • Jump to machine instruction routine • Load control address register based on opcode in IR
  • 17. Wilkes Control • 1951 • Matrix partially filled with diodes • During cycle, one row activated • Generates signals where diode present • First part of row generates control • Second generates address for next cycle
  • 19. Advantages and Disadvantages of Microprogramming • Simplifies design of control unit • Cheaper • Less error-prone • Slower
  • 20. Tasks Done By Microprogrammed Control Unit • Microinstruction sequencing • Microinstruction execution • Must consider both together
  • 21. Design Considerations • Size of microinstructions • Address generation time • Determined by instruction register • Once per cycle, after instruction is fetched • Next sequential address • Common in most designed • Branches • Both conditional and unconditional
  • 22. Sequencing Techniques • Based on current microinstruction, condition flags, contents of IR, control memory address must be generated • Based on format of address information • Two address fields • Single address field • Variable format
  • 23. Branch Control Logic: Two Address Fields
  • 26. Address Generation Explicit Implicit Two-field Mapping Unconditional Branch Addition Conditional branch Residual control
  • 27. Execution • The cycle is the basic event • Each cycle is made up of two events • Fetch • Determined by generation of microinstruction address • Execute
  • 28. Execute • Effect is to generate control signals • Some control points internal to processor • Rest go to external control bus or other interface
  • 30. A Taxonomy of Microinstructions • Vertical/horizontal • Packed/unpacked • Hard/soft microprogramming • Direct/indirect encoding
  • 31. Improvements over Wilkes • Wilkes had each bit directly produced a control signal or directly produced one bit of next address • More complex address sequencing schemes, • using fewer microinstruction bits, are possible • Require more complex sequencing logic module • Control word bits can be saved by encoding and subsequently decoding control information
  • 32. How to Encode • K different internal and external control signals • Wilkes’s: • K bits dedicated • 2K control signals during any instruction cycle • Not all used • Two sources cannot be gated to same destination • Register cannot be source and destination • Only one pattern presented to ALU at a time • Only one pattern presented to external control bus at a time • Require Q < 2K which can be encoded with log2Q < K bits • Not done • As difficult to program as pure decoded (Wilkes) scheme • Requires complex slow control logic module • Compromises • More bits than necessary used • Some combinations that are physically allowable are not possible to encode
  • 33. Specific Encoding Techniques • Microinstruction organized as set of fields • Each field contains code • Activates one or more control signals • Organize format into independent fields • Field depicts set of actions (pattern of control signals) • Actions from different fields can occur simultaneously • Alternative actions that can be specified by a field are mutually exclusive • Only one action specified for field could occur at a time