Purpose of using Instruction Queue:
BIU contains an instruction queue. When the EU executes instructions, the BIU gets up to 6 bytes of the next instruction and stores them in the instruction queue and this process is called instruction prefetch. This is a process to speed up the processor. A subtle advantage of instruction queue is that, as next several instructions are usually in the queue, the BIU can access memory at a somewhat “leisurely” pace. This means that slow-memory parts can be used without affecting overall system performance.
why it is 6 byte long only?
It was 6 byte long in a 16 bit processor, now with every other parts, I think this might have increased too. But if you want an exact reason, then I don't know. Sorry …
How does it achieve its purpose?