superscalar

A superscalar architecture is a uniprocessor that can execute two or more scalar operations in parallel. Some definitions include superpipelined and VLIW architectures; others do not. Superscalar architectures (apart from superpipelined architectures) require multiple functional units, which may or may not be identical to each other. In some superscalar processors the order of instruction execution is determined statically (purely at compile-time), in others it is determined dynamically (partly at run time).