4-Bit Shift Register SISO
Serial-in, serial-out shift register with oscilloscope. Learn data shifting and serial communication concepts.
배울 내용
- Distinguish SISO from SIPO shift register configurations.
- Recognize the 4-cycle latency from input to output for a 4-bit SISO.
- Apply SISO as a delay line for signal alignment.
- Use SISO in FIR filters and clock-domain synchronizers.
- Understand that SISO hides internal state — only input and output are visible.
작동 원리
A SISO (Serial-In Serial-Out) shift register has one serial input and one serial output, with N flip-flops in between as a delay chain. Bits entered at the input emerge at the output exactly N clock cycles later. The internal state of the register isn't directly visible — only the output pin tells you what came out.
This configuration is the most basic delay line in digital design. Useful when you need to align a fast signal with a slower one by a fixed number of cycles, or when implementing pipelines where a value must wait N cycles before being used.
For a 4-bit SISO register: - Cycle 0: Input bit 0 captured into FF0. - Cycle 1: FF0 → FF1; new input → FF0. - Cycle 2: FF1 → FF2; ... - Cycle 3: FF2 → FF3; ... - Cycle 4: FF3 → output.
So the bit you put in on cycle 0 emerges on the output at cycle 4 (or cycle 5 depending on whether the output samples after the shift). 4 cycles of latency.
SISO registers are also the basis of digital filters — a tapped delay line can implement FIR filters by adding weighted contributions from each tap.
단계별로 시도해 보세요
위 임베드에서 입력을 설정한 후, 예상 결과를 읽고 직접 확인하세요.
- 1Serial in = 1 then 0 0 0 Clock = 4 edges예상:
Output = 1 on the 4th edge관찰 포인트: Single 1 input followed by 0s. The 1 walks through the register and emerges 4 cycles later. - 2Serial in = 1 0 1 0 ... Clock = running예상:
Output = same alternating pattern, 4 cycles delayed관찰 포인트: Pattern emerges intact but offset in time. The SISO register is acting as a 4-cycle delay line. - 3Serial in = 0 always Clock = running예상:
Output = 0관찰 포인트: Sustained 0 input → output stays 0 (after initial register flush). Steady-state behavior matches the input. - 4Serial in = 1 always Clock = running예상:
Output = 1 (after 4 cycles)관찰 포인트: Sustained 1 input → after 4 cycles the register fills with 1s, output goes high. Steady-state is also a wire — just 4 cycles late.
사용된 구성 요소
실제 응용 사례
Pipeline alignment. When two signals need to arrive at the same downstream gate but one is N cycles ahead, a SISO register delays the early one to align them.
FIR filter delay lines. Each tap of a finite-impulse-response filter is one stage of a SISO register, multiplied by a coefficient.
Synchronizers. Crossing clock domains uses 2-stage SISO registers (the standard "two flop" synchronizer) to reduce metastability risk.
Token rings and circular buffers. A SISO with output fed back to input forms a circular delay buffer of fixed size.
Signature analyzers. BIST signature compression uses SISO with feedback to compute a CRC-like signature of test responses.