MPMC (Unit 01) Part 02
MPMC (Unit 01) Part 02
Microcontrollers (ECE3004)
Module – 01 (Part – 02)
Complex Instruction
Set Computers
5
CISC vs RISCA race to increase the CPU performance
Example:
• Task: Let's say we want to find the product of two numbers - one
stored in location 2:3 and another stored in location 5:2 - and then
store the product back in the location 2:3.
CISC vs RISC A race to increase the CPU performance
Multiplying 2 Nos. in Memory (CISC):
• The primary goal of CISC architecture is to complete a task in as few lines The primary advantages of this
of assembly as possible. system is that:
• This is achieved by building processor hardware that is capable of i. The compiler has to do
understanding and executing a series of operations. very little work to translate
a high-level language
• For this particular task, a CISC processor would come prepared with a statement into assembly.
specific instruction (we'll call it "MULT"). ii. Because the length of the
• Thus, the entire task of multiplying two numbers can be completed with code is relatively short.
one instruction: iii. Very little RAM is required
to store instructions.
• At first, this may seem like a much less efficient way of completing the
operation. Because there are more lines of code, more RAM is needed to store
the assembly level instructions.
CISC vs RISC A race to increase the CPU performance
RISC CISC
CISC:
Focus on software Focus on hardware IBM 370/168 – It was introduced in the year
1970. CISC design is a 32 bit processor and
Uses both hardwired and micro four 64-bit floating point registers.
Uses only Hardwired control unit
programmed control unit
VAX 11/780 – CISC design is a 32-bit
processor and it supports many numbers of
Transistors are used for storing addressing modes and machine instructions
Transistors are used for more registers
complex Instructions which is from Digital Equipment
Corporation.
Fixed sized instructions Variable sized instructions Intel 80486 – It was launched in the year
Can perform only Register to Register Can perform REG to REG or REG to 1989 and it is a CISC processor, which has
Arithmetic operations MEM or MEM to MEM instructions varying lengths from 1 to 11 and
it will have 235 instructions.
Requires more number of registers Requires less number of registers
Coprocessor
• A coprocessor is a specially designed microprocessor, which can handle its particular
function many times faster than the ordinary microprocessor.
Input/output Processor
• It is a specially designed microprocessor having a local memory of its own, which is used to
control I/O devices with minimum CPU involvement.
For example −
• DMA (direct Memory Access) controller
• Keyboard/mouse controller
• Graphic display controller
• SCSI port controller
Special Processor
DSP (Digital Signal Processor)
• This processor is specially designed to process the analog signals into a digital form. This is
done by sampling the voltage level at regular time intervals and converting the voltage at
that instant into a digital form. This process is performed by a circuit called an analogue to
digital converter, A to D converter or ADC.
• A DSP contains the following components −
• Program Memory − It stores the programs that DSP will use to process data.
• Data Memory − It stores the information to be processed.
• Compute Engine − It performs the mathematical processing, accessing the program from the program
memory and the data from the data memory.
• Input/output − It connects to the outside world.
• Applications
• Sound and music synthesis
• Audio and video compression
• Video signal processing
• 2D and 3d graphics acceleration.
• For example − Texas Instrument’s TMS 320 series, e.g., TMS 320C40, TMS320C50.
15
Evolution of Microprocessor
16
Intel 4004
Year of introduction 1971
4-bit microprocessor
4 KB main memory
45 instructions
PMOS technology
16 KB main memory
48 instructions
PMOS technology
Slow
Intel 8080
Year of introduction 1973
8-bit microprocessor
64 KB main memory
500,000 instructions/sec.
NMOS technology
Small computers (Microcomputers) were designed in mid 1970’s using 8080 as CPU.
Intel 8085
Year of introduction 1975
64 KB main memory
246 instructions
1 MB main memory
I/O
1. Processor : The computers are used for computing Fig.: Computing System
and the main task of computing is done by processor
or CPU (that contains an ALU).
27
• Primary memory includes ROM and RAM, and is located close to the CPU on
the computer motherboard, enabling the CPU to read data from primary
memory very quickly indeed. It is used to store data that the CPU needs
imminently so that it does not have to wait for it to be delivered.
• Secondary memory by contrast, is usually physically located within a separate
storage device, such as a hard disk drive or solid state drive (SSD), which is
connected to the computer system either directly or over a network. The cost per
gigabyte of secondary memory is much lower, but the read and write speeds are
significantly slower.
28
ALU
ALU
Registers ROM RAM
Control Unit
Registers
Timer Interrupt
Serial Watchdog
Communication Timer
Control Unit
Ports
Microprocessor Development Tools
Software Tools:
• Assembler
• Linker
• Loader
• Compiler
• Libraries
• Pre-compiler
• Simulator
• IDE - integrated development environment
Development Tools
Hardware Tools:
• In Circuit Emulator (ICE)
• Logic Analyzer
• Microprocessor Development Systems
Assembler
• Translates the assembly language mnemonics for instructions to corresponding binary codes.
• Reads the source file of your program from the disk, then determines the displacement of named
data items, the offset of labels, etc. and puts this information in a symbol table.
• Produces the binary code for each instruction and inserts the offsets, etc. that it calculated during
the first pass.
• The assembler generates 2 files on the floppy disk or hard disk. The first file is called object file
(.obj).
• The second file generated by assembler is called the assembler list file and is given extension (.lst).
Linker
A linker is a program used to join several object files into one large object file.
The linker produces a link file which contains the binary codes for all the
combined modules.
linker also produces a link map file which contains the address information about
the linked files (.exe).
Logic Analyzer
Developed out of the need to be able de-bug and undertake fault-finding on
microprocessor based systems, need for simultaneous monitoring of many lines
and test points.
Widely used to develop and debug complex digital electronic logic circuits
Displays traces of multiple logic channels and reveal the circuit operation.
Displays relative timing of a large number of signals, enabling traces of logic
signals to be seen in such a way that the operation of several lines in a digital
circuit can be monitored and investigated.
Have much greater levels of flexibility and processing power when connected with
computer.
Logic Analyzer
Logic Analyzer Characteristics
• Multiple channels
About 32 and 200+ channels, each channel monitoring one digital line
Horizontal time axis and a vertical axis to indicate a logic high or low states