SPRUIG8J January 2018 – March 2024
The Streaming Engines (SE) provide high-speed connections between the CPU functional units and the L2 controller. They can read from L2/L3/DDR, but are most efficient when used to read from L2.
A SE is a read-only data connection, which forwards and formats data on the fly. The SE presents data at up-to vector-width-bits per CPU clock in a holding-register. (Current variants of the C7000 have either a 512-bit vector width or a 256-bit vector width.) This holding register can be used like any other global or local register. Since the SE is a read-only engine, the Streaming Engine register can be used as input to instructions, but an instruction cannot write to the register.
Each SE has one vector-width holding register. Current variants of C7000 have two instances of the SE—named SE0 and SE1. Thus, there are two Streaming Engine registers that can be used as an input to instructions.