1. A method for collecting operands specified by instructions, comprising: storing a sequence of instructions that specify operands in a queue; assigning each operand specified by an instruction in the queue to a different read request port to produce a set of assigned operands for each one of the read request ports, wherein each read request ports is associated with a read port of a multi-bank register file; reordering the assigned operands within each set of assigned operands to avoid bank conflicts between different banks of the multi-bank register file; and reading the multi-bank register file to obtain one operand from each set of assigned operands in an access cycle.