Lompat ke konten Lompat ke sidebar Lompat ke footer

Rangkaian Johnson Ring Counter

Johnson Ring Counter terdiri dari sejumlah counter yang terhubung bersama dengan output yang diumpankan ke input.

Dalam tutorial Register Geser sebelumnya kami melihat bahwa jika kami menerapkan sinyal data seri ke input Register Geser Seri-in ke Seri-out, urutan data yang sama akan keluar dari flip flip terakhir dalam rantai register. Pergerakan data seri ini melalui register terjadi setelah sejumlah siklus clock yang telah ditentukan sehingga memungkinkan register SISO untuk bertindak sebagai semacam rangkaian waktu tunda ke sinyal data input asli.

Tapi apa jika kita menghubungkan output dari register geser ini kembali ke input sehingga output dari terakhir flip-flop, QD menjadi input dari flip-flop pertama, QA. Kami kemudian akan memiliki rangkaian loop tertutup yang "resirkulasi" bit DATA yang sama di sekitar loop kontinu untuk setiap keadaan urutannya, dan ini adalah operasi utama Ring Counter.

Kemudian dengan memutar kembali output ke input, (umpan balik) kita dapat mengubah rangkaian register geser standar menjadi Ring Counter. Pertimbangkan rangkaian di bawah ini.

Rangkaian Ring Counter 4-bit Dasar

Johnson Ring Counter

Contoh Ring Counter sinkron di atas, telah disetel sehingga tepat satu bit data dalam register diatur ke logika "1" dengan semua bit lainnya diatur ulang ke "0". Untuk mencapai hal ini, sinyal "CLEAR" pertama-tama diterapkan pada semua flip-flop bersama untuk "RESET" output mereka ke level logika "0" dan kemudian pulsa "PRESET" diterapkan pada input flip-flop pertama. ( FFA ) sebelum pulsa clock diterapkan. Ini kemudian menempatkan nilai logika "1" tunggal ke dalam rangkaian ring counter.

Jadi pada setiap pulsa clock berturut-turut, counter mengedarkan bit data yang sama antara empat flip-flop berulang-ulang di sekitar "ring" setiap siklus clock keempat. Tetapi untuk menggilir data dengan benar di sekitar counter, kita harus terlebih dahulu "memuat" counter dengan pola data yang cocok karena semua logika "0" atau semua logika "1" yang dihasilkan pada setiap siklus clock akan membuat ring counter tidak valid.

Jenis pergerakan data ini disebut "rotasi", dan seperti register geser sebelumnya, efek dari pergerakan bit data dari kiri ke kanan melalui ring counter dapat disajikan secara grafis sebagai berikut bersama dengan diagram waktunya:

Gerakan Rotasi Ring Counter

Johnson Ring Counter

Urutan Waktu Ring Counter

Johnson Ring Counter

Karena contoh ring counter yang ditunjukkan di atas memiliki empat keadaan yang berbeda, ia juga dikenal sebagai counter “modulo-4” atau “mod-4” dengan setiap output flip-flop yang memiliki nilai frekuensi sama dengan seperempat atau seperempat (1/4) frekuensi clock utama.

"MODULO" atau "MODULUS" dari counter adalah jumlah status counter yang dihitung atau urutan sebelum mengulangi sendiri dan Ring Counter dapat dibuat untuk menampilkan nomor modulo. Ring Counter “mod-n” akan membutuhkan “n” jumlah flip-flop yang dihubungkan bersama untuk mensirkulasikan bit data tunggal yang menyediakan “n” status output yang berbeda.

Misalnya, ring counter mod-8 membutuhkan delapan flip-flop dan ring counter mod-16 akan membutuhkan enam belas flip-flop. Namun, seperti dalam contoh kami di atas, hanya empat dari enam belas kemungkinan keadaan digunakan, membuat ring counter sangat tidak efisien dalam hal penggunaan status output mereka.

Johnson Ring Counter

Johnson Ring Counter atau “Twisted Ring Counter”, adalah salah satu register geser dengan umpan balik persis sama sebagai standar Ring Counter atas, kecuali bahwa kali ini output terbalik  yang terakhir flip-flop sekarang terhubung kembali ke input D flip-flop pertama seperti yang ditunjukkan di bawah ini.

Keuntungan utama dari jenis Ring Counter ini adalah bahwa ia hanya membutuhkan setengah jumlah flip-flop dibandingkan dengan Ring Counter standar, maka jumlah modulo-nya dikurangi setengahnya. Jadi Johnson Counter "n-stage" akan mengedarkan sedikit data tunggal yang memberikan urutan 2n keadaan yang berbeda dan karenanya dapat dianggap sebagai "counter mod-2n".

Johnson Ring Counter 4-bit


Pembalikan Q ini sebelum diumpankan kembali ke input D menyebabkan counter “menghitung” dengan cara yang berbeda. Alih-alih menghitung melalui set pola yang tetap seperti Ring Counter normal seperti untuk Counter 4-bit, "0001" (1), "0010" (2), "0100" (4), "1000" (8) dan berulang, Johnson Counter menghitung ke atas dan ke bawah ketika logika awal "1" melewatinya ke kanan menggantikan logika sebelumnya "0".

Johnson Ring Counter 4-bit melewati blok empat logika "0" dan kemudian empat logika "1" sehingga menghasilkan pola 8-bit. Ketika output terbalik  terhubung ke input D, pola 8-bit ini terus berulang. Misalnya, "1000", "1100", "1110", "1111", "0111", "0011", "0001", "0000" dan ini ditunjukkan dalam tabel berikut di bawah ini.

Tabel Kebenaran Johnson Ring Counter 4-bit

No.  Pulsa Clock
FFA
TBS
FFC
FFD
0
0
0
0
0
1
1
0
0
0
2
1
1
0
0
3
1
1
1
0
4
1
1
1
1
5
0
1
1
1
6
0
0
1
1
7
0
0
0
1
Selain menghitung atau memutar data di sekitar loop kontinu, Ring Counter juga dapat digunakan untuk mendeteksi atau mengenali berbagai pola atau nilai angka dalam satu set data. Dengan menghubungkan gerbang logika sederhana seperti gerbang AND atau gerbang OR ke output flip-flop, rangkaian dapat dibuat untuk mendeteksi angka atau nilai yang ditetapkan.

Johnson Ring Counter 2, 3 atau 4 tahap standar juga dapat digunakan untuk membagi frekuensi sinyal clock dengan memvariasikan koneksi umpan balik mereka dan output bagi-ke-3 atau bagi-ke-5 juga tersedia.

Misalnya, Johnson Ring Counter 3-tahap dapat digunakan sebagai 3-fasa, 120 derajat fasa geser generator gelombang persegi dengan menghubungkan ke output data pada A, B dan NOT-B.

Johnson Counter 5-tahap standar seperti CD4017 yang biasanya tersedia umumnya digunakan sebagai rangkaian counter/pembagi dekade sinkron.

Kombinasi lain seperti rangkaian 2-tahap yang lebih kecil yang juga disebut Osilator atau Generator "Quadrature" (sinus/cosine) dapat digunakan untuk menghasilkan empat output individu yang masing-masing 90 derajat "di luar fasa" sehubungan dengan masing-masing lain untuk menghasilkan sinyal timing 4 fasa seperti yang ditunjukkan di bawah ini.

Generator Ring Counter Quadrature 2-bit

Johnson Ring Counter
Output
A
B
C
D
QA+QB
1
0
0
0
QA+QB
0
1
0
0
QA+QB
0
0
1
0
QA+QB
0
0
0
1
2-bit Quadrature Osilator,
Menghitung Urutan
Sebagai empat output, A ke D adalah fasa bergeser 90 derajat berkaitan satu sama lain, mereka dapat digunakan dengan rangkaian tambahan, untuk menggerakkan motor stepper 2-fasa penuh untuk kontrol posisi atau kemampuan untuk memutar motor untuk lokasi tertentu seperti yang ditunjukkan di bawah ini.

Kontrol Motor Stepper

Johnson Ring Counter
Rangkaian Motor Stepper Full-Step 2-fasa (unipolar)

Kecepatan rotasi Motor Stepper akan tergantung terutama pada frekuensi clock dan rangkaian tambahan akan diperlukan untuk menggerakkan "kekuatan" persyaratan motor. Karena bagian ini hanya dimaksudkan untuk memberi pembaca pemahaman dasar tentang Johnson Ring Counter dan aplikasinya, untuk lebih jelas secara lebih rinci jenis dan persyaratan penggerak motor stepper bisa dilihat pada artikel Motor Stepper.

Johnson Ring Counter tersedia dalam bentuk TTL atau CMOS IC standar, seperti CD4017 5-Stage, decade Johnson ring counter dengan 10 output aktif HIGH decoded atau CD4022 4-stage, divide-8-Johnson counter dengan 8 active HIGH decoded output.