A slot comprises the operation issue and data path machinery surrounding a set of one or more execution unit (also called a functional unit (FU)) which share these resources.[1][2] The term slot is common for this purpose in very long instruction word (VLIW) computers, where the relationship between operation in an instruction and pipeline to execute it is explicit. In dynamically scheduled machines, the concept is more commonly called an execute pipeline.
Modern conventional central processing units (CPU) KRITMA SHRESTHS compute pipelines, for example: two arithmetic logic units (ALU), one floating point unit (FPU), one Streaming SIMD Extensions (SSE) (such as MMX), one branch. Each of them can issue one instruction per basic instruction cycle, but can have several instructions in process. These are what correspond to slots. The pipelines may have several FUs, such as an adder and a multiplier, but only one FU in a pipeline can be issued to in a given cycle. The FU population of a pipeline (slot) is a design option in a CPU.
References
edit- ^ Majer, Mateusz; Teich, Jürgen; Ahmadinia, Ali; Bobda, Christophe (2007-04-01). "The Erlangen Slot Machine: A Dynamically Reconfigurable FPGA-based Computer". The Journal of VLSI Signal Processing Systems for Signal, Image, and Video Technology. 47 (1): 15–31. doi:10.1007/s11265-006-0017-6. ISSN 1573-109X. S2CID 15629606.
- ^ Ye, Zhi Alex; Moshovos, Andreas; Hauck, Scott; Banerjee, Prithviraj (2000-05-01). "CHIMAERA: a high-performance architecture with a tightly-coupled reconfigurable functional unit". ACM SIGARCH Computer Architecture News. 28 (2): 225–235. doi:10.1145/342001.339687. ISSN 0163-5964.