Register shift berguna dalam sistem digital dengan mengontrol bagaimana data disimpan dan ditransfer. Di antara mereka, register shift Serial-In Parallel-Out (SIPO) menyediakan cara yang efisien untuk mengubah input serial menjadi output paralel. Artikel ini menjelaskan strukturnya, operasi tingkat sinyal, dan perilaku waktunya.

Apa itu Register Shift SIPO?
Register shift Serial-In Parallel-Out (SIPO) adalah sirkuit digital yang menerima data biner satu bit pada satu waktu melalui input serial tunggal dan menyimpan setiap bit dalam rantai sandal jepit. Setelah disimpan, semua bit dapat dibaca bersama melalui beberapa output paralel. Fungsi utamanya adalah untuk mengubah data serial menjadi data paralel.
Prinsip Kerja dan Konversi Data Register Shift SIPO

Register shift SIPO memindahkan data melalui serangkaian sandal jepit menggunakan transisi yang dikendalikan jam, memungkinkan bit input berurutan disimpan dan kemudian diakses secara bersamaan di output.
Masukan Serial (SI)
Input serial memberikan sedikit demi sedikit ke flip-flop pertama di register. Sebelum tepi clock aktif terjadi, bit input harus stabil agar dapat ditangkap dengan benar. Ketika tepi jam tiba, bit baru memasuki tahap pertama, sementara bit yang sudah disimpan bergerak ke tahap berikutnya. Ini menciptakan transfer data langkah demi langkah melalui register.
Output Paralel (Q0, Q1, Q2, ...)
Setiap sandal jepit memiliki output yang terus mencerminkan bit yang disimpan dalam tahap itu. Output ini mewakili posisi bit yang berbeda, memungkinkan data yang disimpan untuk dibaca dalam bentuk paralel. Setelah setiap tepi jam, output mencerminkan nilai yang diperbarui setelah penundaan propagasi singkat, memungkinkan semua bit diakses secara bersamaan.
Sinyal Jam (CLK)
Sinyal jam mengontrol kapan data bergerak melalui register. Data bergeser hanya pada tepi jam yang ditentukan (naik atau turun, tergantung pada desain). Karena semua sandal jepit berbagi jam yang sama, mereka merespons peristiwa pengaturan waktu yang sama. Di antara tepi jam, nilai yang disimpan tetap tidak berubah.
Mode Operasi

Sementara register SIPO dasar beroperasi melalui pergeseran serial, beberapa desain menyertakan fitur kontrol tambahan yang memodifikasi cara data dimuat atau diperbarui.
Mode Shift
Dalam mode shift, data memasuki register sedikit demi sedikit melalui input serial. Dengan setiap pulsa jam, bit yang disimpan bergerak selangkah demi selangkah dari satu sandal jepit ke sandal jepit berikutnya sambil mempertahankan urutannya. Pergeseran terus menerus ini memungkinkan data berurutan disimpan dan ditransfer secara berurutan.
Kemampuan Beban Paralel (Tergantung Perangkat)
Register shift SIPO standar biasanya tidak menyertakan pemuatan paralel. Namun, beberapa desain yang diperluas atau hibrida (seperti register shift universal) memungkinkan data dimuat ke semua sandal jepit secara bersamaan. Ketika fitur ini ada, sinyal kontrol memungkinkan semua bit ditangkap dalam satu peristiwa jam, memberikan akses langsung ke kumpulan data lengkap tanpa beberapa siklus shift.
Contoh Langkah demi Langkah dan Perilaku Transfer Data
Pertimbangkan register shift SIPO 4-bit mulai dari 0000. Urutan input serial 1011 diterapkan sedikit demi sedikit. Dalam contoh ini, bit bergeser ke posisi paling signifikan, sedangkan posisi paling tidak signifikan menyimpan data yang paling baru dimasukkan.
| Denyut Jam | Bit Masukan | Daftar Negara |
|---|---|---|
| Awal | — | 0000 |
| 1 | 1 | 0001 |
| 2 | 0 | 0010 |
| 3 | 1 | 0101 |
| 4 | 1 | 1011 |
Setelah setiap denyut nadi jam:
Bit input baru memasuki tahap pertama
Bit yang disimpan sebelumnya bergeser satu posisi ke depan
Bit sebelumnya bergerak menuju tahap output akhir
Setelah empat pulsa, data 4-bit penuh tersedia secara paralel
Pencatatan waktu lanjutan menggantikan bit yang tersimpan lama dengan data input baru
Setelah empat pulsa jam, register menyimpan 1011, dan keempat bit tersedia pada output paralel.
Kendala Waktu dan Masalah Terkait Waktu
Parameter Waktu
| Parameter | Deskripsi |
|---|---|
| Waktu penyiapan | Input harus stabil sebelum tepi jam |
| Waktu tunggu | Input harus tetap stabil setelah tepi jam |
| Penundaan propagasi | Waktu yang diperlukan untuk memperbarui output |
| Periode jam | Harus mengizinkan penyelesaian sinyal penuh |
Efek Pelanggaran Waktu
| Masalah | Hasil |
|---|---|
| Pelanggaran penyiapan | Pengambilan data yang salah |
| Pelanggaran penahanan | Output tidak stabil |
| Kecepatan clock yang berlebihan | Perpindahan gigi tidak lengkap |
Kesalahan Waktu Umum
| Kesalahan | Dampak |
|---|---|
| Mengabaikan persyaratan penyiapan/penahanan | Pengoperasian yang tidak dapat diandalkan |
| Menggunakan sinyal jam yang terlalu cepat | Pelanggaran waktu |
| Jitter jam | Pemicu yang tidak diinginkan |
Praktik Waktu yang Baik
| Praktek | Manfaat |
|---|---|
| Menggunakan sumber jam yang stabil | Perilaku pengaturan waktu yang konsisten |
| Hormati batas penyiapan/penahanan | Mencegah error data |
| Jaga frekuensi clock dalam batas aman | Pengoperasian yang andal |
| Meminimalkan penundaan jalur | Stabilitas waktu yang ditingkatkan |
Kait Keluaran dan Cascading
Kait Keluaran (Kontrol yang Ditingkatkan)

Beberapa register shift SIPO menyertakan tahap kait keluaran terpisah yang memungkinkan pembaruan output yang terkontrol.
| Operasi | Sinyal | Efek / Manfaat |
|---|---|---|
| Data bergeser melalui sandal jepit internal | Jam shift (SH_CP) | Memindahkan data tahap demi tahap tanpa memengaruhi output |
| Data tersimpan ditransfer ke tahap keluaran | Jam kait (ST_CP) | Memperbarui semua output sekaligus |
| Input data serial | Input data (SER) | Menyediakan aliran bit input |
Struktur ini mencegah data perantara muncul di output dan memungkinkan pembaruan yang disinkronkan.
Mengalir Beberapa Register SIPO

Cascading memperluas jumlah output dengan menghubungkan beberapa register.
| Aspek | Perilaku | Pertimbangan Desain | Aplikasi |
|---|---|---|---|
| Rantai serial | Output dari satu umpan input berikutnya | Waktu menjadi lebih kritis | Memperluas pin keluaran |
| Jam bersama | Semua register menggunakan jam yang sama | Penundaan propagasi meningkat | Susunan atau tampilan LED |
| Pengisian berurutan | Data terisi tahap demi tahap | Diperlukan lebih banyak siklus jam | Sistem kontrol multi-jalur |
SIPO vs. Serial-In Serial-Out (SISO)

| Fitur | SIPO | SISO |
|---|---|---|
| Jenis Masukan | Serial | Serial |
| Jenis Keluaran | Paralel | Serial |
| Akses Data | Semua bit yang disimpan tersedia sekaligus | Satu demi sedikit |
| Pergerakan Data | Shift in, baca secara paralel | Pergeseran melalui output tunggal |
| Penggunaan Khas | Konversi data | Penundaan atau transfer data |
| Waktu Keluaran | Tersedia setelah pemuatan | Muncul setelah shift penuh |
Penerapan Register Shift SIPO

Register pergeseran SIPO digunakan ketika data serial perlu disimpan, dikonversi, atau dikirim ke beberapa baris keluaran secara bersamaan.
• Penyimpanan sementara data serial sebelum penggunaan paralel – Mereka menyimpan bit serial yang masuk hingga kata data lengkap tersedia.
• Konversi data serial-ke-paralel – Mereka mengubah input satu bit pada satu waktu menjadi output paralel multi-bit.
• Ekspansi output untuk sinyal kontrol digital – Mereka memungkinkan sistem untuk mengontrol beberapa jalur output menggunakan pin input yang lebih sedikit.
• Dukungan decoding alamat – Mereka dapat membantu menyediakan alamat paralel atau bit kontrol untuk memilih lokasi memori, perangkat, atau bagian sirkuit.
Perangkat Register Shift SIPO Umum

• SN74ALS164A – Register shift SIPO dasar tanpa kait output; pembaruan keluaran langsung

• SN74AHC594 – Termasuk kait keluaran untuk pembaruan terkontrol

• SN74AHC595 – Register shift populer dengan register penyimpanan dan output tri-state

• CD4094 – Perangkat berbasis CMOS dengan dukungan kait dan cascading
Pertanyaan yang Sering Diajukan [FAQ]
Bagaimana penundaan propagasi memengaruhi beberapa register shift SIPO yang berjenjang?
Penundaan propagasi terakumulasi di seluruh tahap bertingkat, yang dapat menyebabkan ketidaksejajaran waktu antara data serial dan jam. Seiring bertambahnya panjang rantai, desainer harus mengurangi frekuensi clock atau menambahkan margin waktu untuk memastikan pergeseran data yang benar dan sinkronisasi output yang stabil.
Mengapa beberapa register shift SIPO menyertakan kait output, dan kapan diperlukan?
Kait output mengisolasi pergeseran internal dari output eksternal, mencegah data perantara muncul selama transisi jam. Hal ini diperlukan dalam aplikasi seperti kontrol LED atau penggerak tampilan, di mana semua output harus diperbarui secara bersamaan tanpa gangguan yang terlihat.
Apa batasan utama menggunakan register shift SIPO alih-alih expander GPIO?
Register shift SIPO memerlukan pencatatan waktu berkelanjutan dan pemuatan data berurutan, yang meningkatkan latensi seiring bertambahnya lebar output. Ini juga tidak memiliki kemampuan alamat dan pembacaan, sehingga kurang cocok untuk kontrol kompleks atau dua arah dibandingkan dengan ekspansi GPIO yang menggunakan I²C atau SPI.
Bagaimana batasan waktu penyiapan dan waktu tahan memengaruhi keandalan register shift SIPO?
Jika persyaratan waktu penyiapan atau tahan dilanggar, data input mungkin tidak ditangkap dengan benar di tepi jam, yang menyebabkan kesalahan bit atau output yang tidak stabil. Pengoperasian yang andal membutuhkan sinyal input yang stabil sebelum dan sesudah transisi jam dan frekuensi clock yang memungkinkan penyelesaian sinyal penuh.
Kapan seorang desainer harus menghindari penggunaan register shift SIPO dalam sistem digital?
Register shift SIPO harus dihindari ketika akses acak cepat ke output diperlukan, ketika komunikasi dua arah diperlukan, atau ketika kendala waktu ketat. Dalam kasus seperti itu, antarmuka paralel atau ekspansi berbasis komunikasi memberikan kinerja dan fleksibilitas yang lebih baik.