เรียนรู้วิธีการทำงานของฟลิปฟลอปแบบอนุกรมเพื่อสร้างตรรกะที่เรียบง่ายแต่ทรงพลังของตัวนับแบบริปเปิล
ตัวนับแบบริปเปิล (Ripple Counter) เป็นตัวนับแบบอะซิงโครนัสที่สร้างขึ้นโดยการต่อฟลิปฟลอปแบบอนุกรม โดยเอาต์พุตของฟลิปฟลอปตัวหนึ่งจะควบคุมสัญญาณนาฬิกาของฟลิปฟลอปตัวถัดไป มีเพียงฟลิปฟลอปตัวแรกเท่านั้นที่รับสัญญาณนาฬิกาจากภายนอก ส่วนฟลิปฟลอปตัวอื่นๆ จะถูกกระตุ้นด้วยเอาต์พุตของฟลิปฟลอปตัวก่อนหน้า ทำให้เกิดผลแบบ "ริปเปิล"
ตัวนับแบบริปเปิล n บิต มีสถานะ 2ⁿ และเรียกอีกอย่างว่าตัวนับ MOD-n ลำดับการนับจะวนซ้ำหลังจากถึงค่าสูงสุดหรือต่ำสุด:
ในวงจรที่แสดงในรูปด้านล่าง Q0 (LSB) จะสลับสถานะทุกครั้งที่มีพัลส์สัญญาณนาฬิกา เนื่องจากฟลิปฟลอป JK ทำงานในโหมดสวิตช์เมื่อป้อนค่า 1, 1 หรือค่าสูงให้กับทั้ง J และ K ตัวนับตัวหลังจะสลับสถานะเมื่อตัวนับตัวแรกเปลี่ยนจาก 1 เป็น 0
ตัวนับแบบริปเปิล 3 บิตที่ใช้ในวงจรข้างต้นมีสถานะที่แตกต่างกันแปดสถานะ โดยแต่ละสถานะแทนค่าการนับ ในทำนองเดียวกัน ตัวนับที่มีฟลิปฟลอป n ตัว สามารถมีสถานะเลขชี้กำลังได้มากที่สุด 2<sup>n</sup> สถานะ จำนวนสถานะที่ตัวนับมีเรียกว่าเลขโมดูลัส ดังนั้น ตัวนับ 3 บิตจึงเป็นตัวนับโมดูลัส 8 ตัวนับโมดูลัส n สามารถอธิบายได้ว่าเป็นตัวนับหารด้วย n เนื่องจากฟลิปฟลอปที่มีนัยสำคัญที่สุด (ฟลิปฟลอปที่อยู่ไกลจากพัลส์นาฬิกาเริ่มต้นมากที่สุด) สร้างพัลส์หนึ่งพัลส์สำหรับทุกๆ n พัลส์ที่อินพุตนาฬิกาของฟลิปฟลอปที่มีนัยสำคัญน้อยที่สุด (ฟลิปฟลอปที่ถูกกระตุ้นโดยพัลส์นาฬิกา) ดังนั้น ตัวนับข้างต้นจึงเป็นตัวอย่างของตัวนับหารด้วย 4
สมมติว่าสัญญาณนาฬิกาถูกกระตุ้นที่ขอบลบ ดังนั้นตัวนับข้างต้นจะทำงานเป็นตัวนับขึ้น เนื่องจากสัญญาณนาฬิกาถูกกระตุ้นที่ขอบลบและเอาต์พุตถูกนำมาจาก Q
ตัวนับถูกใช้บ่อยมากในการแบ่งความถี่สัญญาณนาฬิกา และการใช้งานส่วนใหญ่เกี่ยวข้องกับนาฬิกาดิจิทัลและการมัลติเพล็กซ์ ตัวอย่างของตัวนับที่เป็นที่รู้จักกันอย่างแพร่หลายคือ ตัวนับแบบขนานที่มีตรรกะการแปลงข้อมูลแบบอนุกรม