Differentiate: hardware and software interrupt

Differentiate:   hardware and software interrupt 

Software Interrupt Hardware Interrupt
It is synchronous event It is an asynchronous event
PC incremented PC is not incremented
It has highest priority among interrupt it has lowest priority then software interrupt
It cannot be ignored It can be ignored
Software interrupts can be classified into two types they are: 1. Normal Interrupts. 2. Exception Hardware interrupts can be classified into two types they are: 1. Maskable Interrupt. 2. Non Maskable Interrupt
Generated by executing instruction Generated by external devices
Get a higher priority Do not get a higher priority
Increase the program counter Do not increment the program counter