A superscalar implementation of a processor architecture is one in which common
instructions—integer and floating-point arithmetic, loads, stores, and conditional
branches—can be initiated simultaneously and executed independently. Such implementations
raise a number of complex design issues related to the instruction pipeline