Micro-architecture consists of a set of processor design techniques used to implement the instruction set (including microcode, pipelining, cache systems, etc.).