1. An instruction cache, comprising: single-ported memories; a cache control logic configured to process cache events of different types that may be received by the instruction cache, and being configured with a multi-stage pipeline that coordinates processing of the cache events to the single-ported memories; and the multi-stage pipeline having different stages pre-assigned as read/write stages for the cache events to minimize access conflicts between the cache events.