This video completely explains how microprocessor 8085 works. Its shows full architecture along with all bus controls. With good animation work the flow of data and address from one place to another place are explained in detail manner.
Acumulator:-It is a 8-bit register which is
used to perform airthmetical and logical operation. It stores the output of any
operation. It also works as registers for i/o accesses.
Temporary
Register:-It is a
8-bit register which is used to hold the data on which the acumulator is
computing operation. It is also called as operand register because it provides
operands to ALU.
Registers:-These are general purposes
registers.Microprocessor consists 6 general purpose registers of
8-bit each named as B,C,D,E,H and L. Generally theses registers are
not used for storing the data permanently. It carries the 8-bits
data. These are used only during the execution of the instructions.
These registers
can also be used to carry the 16 bits data by making the pair of 2 registers.
The valid register pairs available are BC,DE HL. We can not use other pairs
except BC,DEand HL. These registers are programmed by user.
ALU:-ALU performs the airthmetic
operations and logical operation.
Flag
Registers:-It
consists of 5 flip flop which changes its status according to the result stored
in an accumulator. It is also known as status registers. It is connected to the
ALU.
There are
five flip-flops in the flag register are as follows:
1.Sign(S)
2.zero(z)
3.Auxiliary
carry(AC)
4.Parity(P)
5.Carry(C)
The bit
position of the flip flop in flag register is:
All of
the three flip flop set and reset according to the stored result in the
accumulator.
1.Sign- If D7 of the result is 1 then
sign flag is set otherwise reset. As we know that a number on the D7 always
desides the sign of the number.
if D7 is
1: the number is negative.
if D7 is
0: the number is positive.
2.Zeros(Z)-If the result stored in an accumulator
is zero then this flip flop is set otherwise it is reset.
3.Auxiliary
carry(AC)-If any
carry goes from D3 to D4 in the output then it is set otherwise it is
reset.
4.Parity(P)-If the no of 1's is even in the
output stored in the accumulator then it is set otherwise it is reset for the
odd.
5.Carry(C)-If the result stored in an
accumulator generates a carry in its final output then it is set otherwise it
is reset.
Instruction
registers(IR):-It is a
8-bit register. When an instruction is fetched from memory then it is stored in
this register.
Instruction
Decoder:-
Instruction decoder identifies the instructions. It takes the informations
from instruction register and decodes the instruction to be performed.
Program
Counter:-It is a
16 bit register used as memory pointer. It stores the memory address of the
next instruction to be executed. So we can say that this register is used to
sequencing the program. Generally the memory have 16 bit addresses so that it
has 16 bit memory.
The
program counter is set to 0000H.
Stack
Pointer:-It is
also a 16 bit register used as memory pointer. It points to the memory
location called stack. Generally stack is a reserved portion of memory where
information can be stores or taken back together.
Timing
and Control Unit:-It
provides timing and control signal to the microprocessor to perform the various
operation.It has three control signal. It controls all external and internal
circuits. It operates with reference to clock signal.It synchronizes all the
data transfers.
There are
three control signal:
1.ALE-Airthmetic Latch Enable,It
provides control signal to synchronize the components of microprocessor.
2.RD- This is active low used for
reading operation.
3.WR-This is active low used for
writing operation.
There are
three status signal used in microprocessor S0, S1 and IO/M. It changes its
status according the provided input to these pins.
Serial
Input Output Control-There are
two pins in this unit. This unit is used for serial data communication.
Interrupt Unit-There are 6 interrupt pins in this
unit. Generally an external hardware is connected to these pins. These pins
provide interrupt signal sent by external hardware to microprocessor
and microprocessor sends acknowledgement for receiving the interrupt
signal. Generally INTA is used for acknowledgement.
By using this software you can execute and check all type of microprocessor 8085 programs. Its a free version. You can download the software freely from the below link. Its similar to the microprocessor 8085 kit which we are using in the laboratory. If you have any doubt in executing any problems using it, feel free to contact me.
A 8085 SIMULATOR with stepper motor interfacing
and keyboard interrupts, Includes load and save options and comes with
10 sample programs. The simulator clearly shows the flags being affected
instruction being executed and the stack. Try it out. If you find any
bugs please report it . The program is 2.11Mb in size.
In general a simple instruction consists of one or two or three hex code. Hence in order to feed a simple instruction into a microprocessor kit, we usually gives the hex code into the kit.
Eg.Instruction MOV B,A represents that the contents of A register is moved into B register. Inorder to feed this instruction into a kit, we usually refer an opcode sheet and check for the corresponding hexcode, here for MOV B,A we have 47. Hence 47 is typed to represents this command.
Now we are going to see how hex code for each instructions are framed.
In the design of the 8085 microprocessor chip, all the operations, registers and staus flags are identified with a specific code. For Eg, all internal registers are identified as follows:
Code Registers Code Register Pair 000 B 00 BC 001 C 01 DE 010 D 10 HL 011 E 11 SP 100 H 101 L 111 A 110 Reserved for memory related operation
Lets now see how some operations are developed:
1. Add the contents of a register to the Accumulator 10000 SSS
(5-bit opcode 3-bits are reserved for a register)
Add : 10000
Reg B : 000
Hence Binary instruction : 10000 000 --> Corresponding hexcode is 80
2. Move(copy) the contents of reg Rs to reg Rd 01 DDD SSS
copy reg Rd reg Rs
For MOV C,A :
Move : 01
To reg C : 001 (DDD)
Form reg A : 111 (SSS)
Binary instruction: 01 001 111 ---> corresponding hexcode is 4F
Similarly all other hexcode for each instructions can be easily developed.
Organization of Micro Computers –
Organization of 8085: Architecture, Internal Register
Organization and Pin Configuration – Instruction
Set of 8085 – addressing modes – instruction and machine cycles with states and
timing diagram. Methods of 8085 programs and 8085 assembly language.