Origin Of Microprocessors

What is the progression of microprocessor technology?
The progression of microprocessor technology is:

  • Individual transistors - Created during the time of Alan Turing and the Enigma machine.
  • Integrated circuits (logic devices) and Small Scale Integration (SSI).
  • Very Large Scale Integrated circuit (VLSI) - VLSI circuits contain 30,000 to 1,000,000 transistors.
  • Ultra Large Scale Integrated circuit (ULSI) - ULSI circuits contain more than 1,000,000 transistors.
  • Microprocessors (MPU).
  • Microcontroller (MCU).

Embedded Systems

What is a system?
A system is a set of things working together as parts of a mechanism or an interconnecting network.

What is an embedded system?
An embedded system is a special purpose computer system designed to perform one or more dedicated functions, often with real-time computing constraints.

What are embedded systems typically embedded as?
Embedded systems are typically embedded as part of a complete device including hardware and mechanical components.

General Vs. Special Purpose Computers

What are the four characteristics of a general purpose computer?
The four characteristics of a general purpose computer are that they:

  1. Are designed for computing any program.
  2. Have speed and cost in mind.
  3. Are end-user programmable.
  4. Always contain a microprocessor.

What are the four characteristics of a special purpose computer?
The four characteristics of a special purpose computer are that they:

  1. Are designed for computing one or few tasks.
  2. Operate in fixed run-time, power, size, and cost constraints.
  3. Aren't end-user programmable.
  4. Contain a microprocessor.

Embedded System Applications

Examples of the applications of embedded systems and what they are used in
  • Automotive - Engine / vehicle management devices.
  • Aircraft - Radios, avionics, engine controller / monitor.
  • Spacecraft - Sensors and controllers.
  • Home appliances - Sensors and controllers.
  • Home automation / security - Sensors and controllers.
  • Personal mobile devices - Mobile phones, Bluetooth accessories, etc.

What is a growing embedded systems application domain?
A growing embedded systems application domain is Internet of Things (IoT).

What Is A Computer System?

What is a computer system?
A computer system is a programmable machine that executes a sequence of operations to perform specific functions.

What do computer systems consist of?
Computer systems consist of:

  • Hardware.
  • Software - The operating system and applications.
Examples of computer systems
  • Servers.
  • Personal computers.
  • Embedded systems.

Microprocessor Based Systems

What are the hardware components of microprocessor-based systems?
The hardware components of microprocessor-based systems include:

  • CPU.
  • Memory.
  • I/O devices.
  • Communication interfaces.
  • Application-specific circuits.

Central Processing Unit (CPU)

What is the core of most digital systems?
The core of most digital systems is the CPU.

What does the Central Processing Unit (CPU) do?
The CPU performs arithmetic and logic operations, and controls data and I/O.

What do Central Processing Units (CPUs) consist of?
CPUs consist of:

  • Arithmetic Logic Unit (ALU).
  • Control Unit.
  • Floating Point Unit.
  • Registers.
  • Buses.
  • Cache Memory.

What are three responsibilities of the Central Processing Unit (CPU)?
Three responsibilities of the CPU are:

  1. Executing program instructions.
  2. Directing the flow of data to and from memory.
  3. Storing the results of every instruction at its suitable place in memory or in registers.

CPU Types: RISC Vs. CISC

What are the characteristics of the Reduced Instruction Set Computer (RISC) and the Complex Instruction Set Computer (CISC)?
The characteristics of RISC and CISC include:

Characteristic RISC CISC
Instruction types Simple Complex
Number of instructions Reduced (30-40) Extended (100-200)
Duration of an instruction (cycles) One More (4-120)
Instruction format Fixed Variable
Instruction execution Parallel (pipeline) Sequential
Addressing modes Simple Complex
Instruction accessing memory Two: load and store Almost all from set
Register set Multiple Unique
Complexity In compiler In CPU

Buses

What is a bus?
A bus is a set of parallel wires that transmit binary information between parts of a computer.

What is an address bus?
An address bus is a bus used to select a specific address in memory to read or write data from.

What is a data bus?
A data bus is a bus used to send or receive data to and from memory.

What are control lines?
Control lines are used to control the behavior of parts of the computer.

What is the diagram of a processor and it's address bus, data bus, and control lines?
The diagram of a processor and its address bus, data bus, and control lines is:
Diagram Of A Processor And Its Address Bus, Data Bus, And Control Lines.png

Registers

What is an n-bit register?
An n-bit register is a group of n flip-flops and logic gates capable of storing n bits of information.

Are there multiple registers within a microprocessor?
Yes, there are multiple registers within a microprocessor.

What is a control register?
A control register is a special purpose register for controlling behaviors.

What is a data register?
A data register is working memory for data which stores operands and the results of operations.

What is a flag register?
A flag register is a register for storing the status of CPU processes.

Special Purpose Registers

What is a Program Counter (PC)?
A PC is a register that contains the address of the instruction that will be executed next.

What is a Stack Pointer (SP)? (1)
An SP is a small register which stores the memory address of the last data element added to the stack.

What is a stack?
A stack is a reserved block of main memory used to save / restore data.

What implicitly uses the stack?
The stack is implicitly used by:

  • Procedure call instructions.
  • Interrupt service calls.

What does the stack typically store?
The stack typically stores contents of CPU registers that need to be restored after returning from a call instruction.

When does a stack overflow happen?
A stack overflow happens when the stack pointer runs off the end of the allocated stack memory.

What is an Instruction Register (IR)?
An IR is a register that holds the current instruction being processed by the microprocessor.

Is the Instruction Register (IR) visible to the programmer?
No, the IR is invisible to the programmer.

What is the Memory Address Register (MAR)?
The MAR is a register that holds the address in memory that is to be read from or written to.

What is the Memory Address Register (MAR) connected to?
The MAR is connected to the Address Bus and Processor Register Bus.

What is the Memory Data Register (MDR)?
The MDR is a register that holds data read from memory or data to be written to memory.

What is the Memory Data Register (MDR) connected to?
The MDR is connected to the Data Bus and Processor Register Bus.