XC3000 | XC4000E | XC4000X | XC5200 | XC9000 | Spartan | SpartanXL | Virtex |
---|---|---|---|---|---|---|---|
Macro | Macro | Macro | Macro | Macro | Macro | Macro | Macro |
SR4CLE, SR8CLE, and SR16CLE are 4-, 8-, and 16-bit shift registers, respectively, with a shift-left serial input (SLI), parallel inputs (D), parallel outputs (Q), and three control inputs: clock enable (CE), load enable (L), and asynchronous clear (CLR).The register ignores clock transitions when L and CE are Low. The asynchronous CLR, when High, overrides all other inputs and resets the data outputs (Q) Low. When L is High and CLR is Low, data on the Dn - D0 inputs is loaded into the corresponding Qn - Q0 bits of the register. When CE is High and L and CLR are Low, data on the SLI input is loaded into the first bit of the shift register during the Low-to-High clock (C) transition and appears on the Q0 output. During subsequent clock transitions, when CE is High and L and CLR are Low, the data is shifted to the next highest bit position as new data is loaded into Q0 (SLIQ0, Q0Q1, Q1Q2, and so forth).
Registers can be cascaded by connecting the last Q output (Q3 for SR4CLE, Q7 for SR8CLE, or Q15 for SR16CLE) of one stage to the SLI input of the next stage and connecting clock, CE, L, and CLR inputs in parallel.
The register is asynchronously cleared, outputs Low, when power is applied. For CPLDs, the power-on condition can be simulated by applying a High-level pulse on the PRLD global net. FPGAs simulate power-on when global reset (GR) or global set/reset (GSR) is active. GR for XC3000 is active-Low. GR for XC5200 and GSR (XC4000, Spartans, Virtex) default to active-High but can be inverted by adding an inverter in front of the GR/GSR input of the STARTUP or STARTUP_VIRTEX symbol.
Inputs | Outputs | ||||||
---|---|---|---|---|---|---|---|
CLR | L | CE | SLI | Dn - D0 | C | Q0 | Qz - Q1 |
1 | X | X | X | X | X | 0 | 0 |
0 | 1 | X | X | Dn - D0 | d0 | dn | |
0 | 0 | 1 | SLI | X | SLI | qn-1 | |
0 | 0 | 0 | X | X | X | No Chg | No Chg |
z = 3 for SR4CLE; z = 7 for SR8CLE; z = 15 for SR16CLE dn = state of referenced input one setup time prior to active clock transition qn-1 = state of referenced output one setup time prior to active clock transition |
Figure 10.5 SR8CLE Implementation XC3000, XC4000, XC5200, XC9000, Spartans, Virtex |