ตัวนับระลอกคลื่นในตรรกะดิจิทัล

เรียนรู้วิธีการทำงานของฟลิปฟลอปแบบอนุกรมเพื่อสร้างตรรกะที่เรียบง่ายแต่ทรงพลังของตัวนับแบบริปเปิล

ตัวนับระลอกคลื่นในตรรกะดิจิทัล

ตัวนับแบบริปเปิล (Ripple Counter) เป็นตัวนับแบบอะซิงโครนัสที่สร้างขึ้นโดยการต่อฟลิปฟลอปแบบอนุกรม โดยเอาต์พุตของฟลิปฟลอปตัวหนึ่งจะควบคุมสัญญาณนาฬิกาของฟลิปฟลอปตัวถัดไป มีเพียงฟลิปฟลอปตัวแรกเท่านั้นที่รับสัญญาณนาฬิกาจากภายนอก ส่วนฟลิปฟลอปตัวอื่นๆ จะถูกกระตุ้นด้วยเอาต์พุตของฟลิปฟลอปตัวก่อนหน้า ทำให้เกิดผลแบบ "ริปเปิล"

  • การทำงานแบบอะซิงโครนัส
  • ฟลิปฟลอปทำงานในโหมดสวิตช์ชิ่ง
  • ฟลิปฟลอปเพียงตัวเดียวเท่านั้นที่รับสัญญาณนาฬิกาภายนอก (บิตต่ำสุด)
  • สามารถตั้งค่าให้เป็นตัวนับขึ้น ตัวนับลง หรือตัวนับขึ้น/ลงได้

ตัวนับแบบริปเปิล n บิต มีสถานะ 2ⁿ และเรียกอีกอย่างว่าตัวนับ MOD-n ลำดับการนับจะวนซ้ำหลังจากถึงค่าสูงสุดหรือต่ำสุด:

  • หมายเลขเคาน์เตอร์: 000 → 001 → ... → 111 → 000...
  • ตัวนับลง: 111 → 110 → ... → 000 → 111...

ตัวนับแบบ Ripple 3 บิตโดยใช้ฟลิปฟลอป JK

ในวงจรที่แสดงในรูปด้านล่าง Q0 (LSB) จะสลับสถานะทุกครั้งที่มีพัลส์สัญญาณนาฬิกา เนื่องจากฟลิปฟลอป JK ทำงานในโหมดสวิตช์เมื่อป้อนค่า 1, 1 หรือค่าสูงให้กับทั้ง J และ K ตัวนับตัวหลังจะสลับสถานะเมื่อตัวนับตัวแรกเปลี่ยนจาก 1 เป็น 0

ตารางข้อเท็จจริง

ตัวนับแบบริปเปิล 3 บิตที่ใช้ในวงจรข้างต้นมีสถานะที่แตกต่างกันแปดสถานะ โดยแต่ละสถานะแทนค่าการนับ ในทำนองเดียวกัน ตัวนับที่มีฟลิปฟลอป n ตัว สามารถมีสถานะเลขชี้กำลังได้มากที่สุด 2<sup>n</sup> สถานะ จำนวนสถานะที่ตัวนับมีเรียกว่าเลขโมดูลัส ดังนั้น ตัวนับ 3 บิตจึงเป็นตัวนับโมดูลัส 8 ตัวนับโมดูลัส n สามารถอธิบายได้ว่าเป็นตัวนับหารด้วย n เนื่องจากฟลิปฟลอปที่มีนัยสำคัญที่สุด (ฟลิปฟลอปที่อยู่ไกลจากพัลส์นาฬิกาเริ่มต้นมากที่สุด) สร้างพัลส์หนึ่งพัลส์สำหรับทุกๆ n พัลส์ที่อินพุตนาฬิกาของฟลิปฟลอปที่มีนัยสำคัญน้อยที่สุด (ฟลิปฟลอปที่ถูกกระตุ้นโดยพัลส์นาฬิกา) ดังนั้น ตัวนับข้างต้นจึงเป็นตัวอย่างของตัวนับหารด้วย 4

ไทม์ไลน์

สมมติว่าสัญญาณนาฬิกาถูกกระตุ้นที่ขอบลบ ดังนั้นตัวนับข้างต้นจะทำงานเป็นตัวนับขึ้น เนื่องจากสัญญาณนาฬิกาถูกกระตุ้นที่ขอบลบและเอาต์พุตถูกนำมาจาก Q


ตัวนับถูกใช้บ่อยมากในการแบ่งความถี่สัญญาณนาฬิกา และการใช้งานส่วนใหญ่เกี่ยวข้องกับนาฬิกาดิจิทัลและการมัลติเพล็กซ์ ตัวอย่างของตัวนับที่เป็นที่รู้จักกันอย่างแพร่หลายคือ ตัวนับแบบขนานที่มีตรรกะการแปลงข้อมูลแบบอนุกรม

ข้อดีของตัวนับแบบริปเปิลในตรรกะดิจิทัล

  • สามารถออกแบบได้อย่างง่ายดายโดยใช้ฟลิปฟลอปแบบ T-flip หรือ D-flip
  • สามารถใช้ในวงจรความเร็วต่ำและใช้เป็นตัวแบ่งสำหรับตัวนับ n ตัวได้
  • ใช้เป็นตัวนับแบบตัดทอนเพื่อออกแบบตัวนับโหมดใดๆ (เช่น โหมด 4, โหมด 3)

ข้อเสียของตัวนับแบบริปเปิลในตรรกะดิจิทัล

  • จำเป็นต้องใช้ฟลิปฟลอปเพิ่มเติมเพื่อทำการซิงโครไนซ์ใหม่
  • ในการนับลำดับของตัวนับที่ถูกตัดทอน จำเป็นต้องมีตรรกะป้อนกลับเพิ่มเติม
  • ตัวนับแบบอะซิงโครนัสจะประสบปัญหาความล่าช้าในการส่งสัญญาณอย่างมากเมื่อนับจำนวนบิตจำนวนมาก
  • อาจเกิดข้อผิดพลาดในการนับเนื่องจากความล่าช้าในการส่งสัญญาณที่ความถี่สัญญาณนาฬิกาสูง

บทความที่เกี่ยวข้อง

ตัวนับระลอกคลื่นในตรรกะดิจิทัล

เรียนรู้วิธีการทำงานของฟลิปฟลอปแบบอนุกรมเพื่อสร้างตรรกะที่เรียบง่ายแต่ทรงพลังของตัวนับแบบริปเปิล

นักเขียนบทความ
by 
นักเขียนบทความ
ตัวนับระลอกคลื่นในตรรกะดิจิทัล

ตัวนับระลอกคลื่นในตรรกะดิจิทัล

เรียนรู้วิธีการทำงานของฟลิปฟลอปแบบอนุกรมเพื่อสร้างตรรกะที่เรียบง่ายแต่ทรงพลังของตัวนับแบบริปเปิล

ตัวนับแบบริปเปิล (Ripple Counter) เป็นตัวนับแบบอะซิงโครนัสที่สร้างขึ้นโดยการต่อฟลิปฟลอปแบบอนุกรม โดยเอาต์พุตของฟลิปฟลอปตัวหนึ่งจะควบคุมสัญญาณนาฬิกาของฟลิปฟลอปตัวถัดไป มีเพียงฟลิปฟลอปตัวแรกเท่านั้นที่รับสัญญาณนาฬิกาจากภายนอก ส่วนฟลิปฟลอปตัวอื่นๆ จะถูกกระตุ้นด้วยเอาต์พุตของฟลิปฟลอปตัวก่อนหน้า ทำให้เกิดผลแบบ "ริปเปิล"

  • การทำงานแบบอะซิงโครนัส
  • ฟลิปฟลอปทำงานในโหมดสวิตช์ชิ่ง
  • ฟลิปฟลอปเพียงตัวเดียวเท่านั้นที่รับสัญญาณนาฬิกาภายนอก (บิตต่ำสุด)
  • สามารถตั้งค่าให้เป็นตัวนับขึ้น ตัวนับลง หรือตัวนับขึ้น/ลงได้

ตัวนับแบบริปเปิล n บิต มีสถานะ 2ⁿ และเรียกอีกอย่างว่าตัวนับ MOD-n ลำดับการนับจะวนซ้ำหลังจากถึงค่าสูงสุดหรือต่ำสุด:

  • หมายเลขเคาน์เตอร์: 000 → 001 → ... → 111 → 000...
  • ตัวนับลง: 111 → 110 → ... → 000 → 111...

ตัวนับแบบ Ripple 3 บิตโดยใช้ฟลิปฟลอป JK

ในวงจรที่แสดงในรูปด้านล่าง Q0 (LSB) จะสลับสถานะทุกครั้งที่มีพัลส์สัญญาณนาฬิกา เนื่องจากฟลิปฟลอป JK ทำงานในโหมดสวิตช์เมื่อป้อนค่า 1, 1 หรือค่าสูงให้กับทั้ง J และ K ตัวนับตัวหลังจะสลับสถานะเมื่อตัวนับตัวแรกเปลี่ยนจาก 1 เป็น 0

ตารางข้อเท็จจริง

ตัวนับแบบริปเปิล 3 บิตที่ใช้ในวงจรข้างต้นมีสถานะที่แตกต่างกันแปดสถานะ โดยแต่ละสถานะแทนค่าการนับ ในทำนองเดียวกัน ตัวนับที่มีฟลิปฟลอป n ตัว สามารถมีสถานะเลขชี้กำลังได้มากที่สุด 2<sup>n</sup> สถานะ จำนวนสถานะที่ตัวนับมีเรียกว่าเลขโมดูลัส ดังนั้น ตัวนับ 3 บิตจึงเป็นตัวนับโมดูลัส 8 ตัวนับโมดูลัส n สามารถอธิบายได้ว่าเป็นตัวนับหารด้วย n เนื่องจากฟลิปฟลอปที่มีนัยสำคัญที่สุด (ฟลิปฟลอปที่อยู่ไกลจากพัลส์นาฬิกาเริ่มต้นมากที่สุด) สร้างพัลส์หนึ่งพัลส์สำหรับทุกๆ n พัลส์ที่อินพุตนาฬิกาของฟลิปฟลอปที่มีนัยสำคัญน้อยที่สุด (ฟลิปฟลอปที่ถูกกระตุ้นโดยพัลส์นาฬิกา) ดังนั้น ตัวนับข้างต้นจึงเป็นตัวอย่างของตัวนับหารด้วย 4

ไทม์ไลน์

สมมติว่าสัญญาณนาฬิกาถูกกระตุ้นที่ขอบลบ ดังนั้นตัวนับข้างต้นจะทำงานเป็นตัวนับขึ้น เนื่องจากสัญญาณนาฬิกาถูกกระตุ้นที่ขอบลบและเอาต์พุตถูกนำมาจาก Q


ตัวนับถูกใช้บ่อยมากในการแบ่งความถี่สัญญาณนาฬิกา และการใช้งานส่วนใหญ่เกี่ยวข้องกับนาฬิกาดิจิทัลและการมัลติเพล็กซ์ ตัวอย่างของตัวนับที่เป็นที่รู้จักกันอย่างแพร่หลายคือ ตัวนับแบบขนานที่มีตรรกะการแปลงข้อมูลแบบอนุกรม

ข้อดีของตัวนับแบบริปเปิลในตรรกะดิจิทัล

  • สามารถออกแบบได้อย่างง่ายดายโดยใช้ฟลิปฟลอปแบบ T-flip หรือ D-flip
  • สามารถใช้ในวงจรความเร็วต่ำและใช้เป็นตัวแบ่งสำหรับตัวนับ n ตัวได้
  • ใช้เป็นตัวนับแบบตัดทอนเพื่อออกแบบตัวนับโหมดใดๆ (เช่น โหมด 4, โหมด 3)

ข้อเสียของตัวนับแบบริปเปิลในตรรกะดิจิทัล

  • จำเป็นต้องใช้ฟลิปฟลอปเพิ่มเติมเพื่อทำการซิงโครไนซ์ใหม่
  • ในการนับลำดับของตัวนับที่ถูกตัดทอน จำเป็นต้องมีตรรกะป้อนกลับเพิ่มเติม
  • ตัวนับแบบอะซิงโครนัสจะประสบปัญหาความล่าช้าในการส่งสัญญาณอย่างมากเมื่อนับจำนวนบิตจำนวนมาก
  • อาจเกิดข้อผิดพลาดในการนับเนื่องจากความล่าช้าในการส่งสัญญาณที่ความถี่สัญญาณนาฬิกาสูง

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

บทความที่เกี่ยวข้อง

ตัวนับระลอกคลื่นในตรรกะดิจิทัล

ตัวนับระลอกคลื่นในตรรกะดิจิทัล

เรียนรู้วิธีการทำงานของฟลิปฟลอปแบบอนุกรมเพื่อสร้างตรรกะที่เรียบง่ายแต่ทรงพลังของตัวนับแบบริปเปิล

Lorem ipsum dolor amet consectetur adipiscing elit tortor massa arcu non.

ตัวนับแบบริปเปิล (Ripple Counter) เป็นตัวนับแบบอะซิงโครนัสที่สร้างขึ้นโดยการต่อฟลิปฟลอปแบบอนุกรม โดยเอาต์พุตของฟลิปฟลอปตัวหนึ่งจะควบคุมสัญญาณนาฬิกาของฟลิปฟลอปตัวถัดไป มีเพียงฟลิปฟลอปตัวแรกเท่านั้นที่รับสัญญาณนาฬิกาจากภายนอก ส่วนฟลิปฟลอปตัวอื่นๆ จะถูกกระตุ้นด้วยเอาต์พุตของฟลิปฟลอปตัวก่อนหน้า ทำให้เกิดผลแบบ "ริปเปิล"

  • การทำงานแบบอะซิงโครนัส
  • ฟลิปฟลอปทำงานในโหมดสวิตช์ชิ่ง
  • ฟลิปฟลอปเพียงตัวเดียวเท่านั้นที่รับสัญญาณนาฬิกาภายนอก (บิตต่ำสุด)
  • สามารถตั้งค่าให้เป็นตัวนับขึ้น ตัวนับลง หรือตัวนับขึ้น/ลงได้

ตัวนับแบบริปเปิล n บิต มีสถานะ 2ⁿ และเรียกอีกอย่างว่าตัวนับ MOD-n ลำดับการนับจะวนซ้ำหลังจากถึงค่าสูงสุดหรือต่ำสุด:

  • หมายเลขเคาน์เตอร์: 000 → 001 → ... → 111 → 000...
  • ตัวนับลง: 111 → 110 → ... → 000 → 111...

ตัวนับแบบ Ripple 3 บิตโดยใช้ฟลิปฟลอป JK

ในวงจรที่แสดงในรูปด้านล่าง Q0 (LSB) จะสลับสถานะทุกครั้งที่มีพัลส์สัญญาณนาฬิกา เนื่องจากฟลิปฟลอป JK ทำงานในโหมดสวิตช์เมื่อป้อนค่า 1, 1 หรือค่าสูงให้กับทั้ง J และ K ตัวนับตัวหลังจะสลับสถานะเมื่อตัวนับตัวแรกเปลี่ยนจาก 1 เป็น 0

ตารางข้อเท็จจริง

ตัวนับแบบริปเปิล 3 บิตที่ใช้ในวงจรข้างต้นมีสถานะที่แตกต่างกันแปดสถานะ โดยแต่ละสถานะแทนค่าการนับ ในทำนองเดียวกัน ตัวนับที่มีฟลิปฟลอป n ตัว สามารถมีสถานะเลขชี้กำลังได้มากที่สุด 2<sup>n</sup> สถานะ จำนวนสถานะที่ตัวนับมีเรียกว่าเลขโมดูลัส ดังนั้น ตัวนับ 3 บิตจึงเป็นตัวนับโมดูลัส 8 ตัวนับโมดูลัส n สามารถอธิบายได้ว่าเป็นตัวนับหารด้วย n เนื่องจากฟลิปฟลอปที่มีนัยสำคัญที่สุด (ฟลิปฟลอปที่อยู่ไกลจากพัลส์นาฬิกาเริ่มต้นมากที่สุด) สร้างพัลส์หนึ่งพัลส์สำหรับทุกๆ n พัลส์ที่อินพุตนาฬิกาของฟลิปฟลอปที่มีนัยสำคัญน้อยที่สุด (ฟลิปฟลอปที่ถูกกระตุ้นโดยพัลส์นาฬิกา) ดังนั้น ตัวนับข้างต้นจึงเป็นตัวอย่างของตัวนับหารด้วย 4

ไทม์ไลน์

สมมติว่าสัญญาณนาฬิกาถูกกระตุ้นที่ขอบลบ ดังนั้นตัวนับข้างต้นจะทำงานเป็นตัวนับขึ้น เนื่องจากสัญญาณนาฬิกาถูกกระตุ้นที่ขอบลบและเอาต์พุตถูกนำมาจาก Q


ตัวนับถูกใช้บ่อยมากในการแบ่งความถี่สัญญาณนาฬิกา และการใช้งานส่วนใหญ่เกี่ยวข้องกับนาฬิกาดิจิทัลและการมัลติเพล็กซ์ ตัวอย่างของตัวนับที่เป็นที่รู้จักกันอย่างแพร่หลายคือ ตัวนับแบบขนานที่มีตรรกะการแปลงข้อมูลแบบอนุกรม

ข้อดีของตัวนับแบบริปเปิลในตรรกะดิจิทัล

  • สามารถออกแบบได้อย่างง่ายดายโดยใช้ฟลิปฟลอปแบบ T-flip หรือ D-flip
  • สามารถใช้ในวงจรความเร็วต่ำและใช้เป็นตัวแบ่งสำหรับตัวนับ n ตัวได้
  • ใช้เป็นตัวนับแบบตัดทอนเพื่อออกแบบตัวนับโหมดใดๆ (เช่น โหมด 4, โหมด 3)

ข้อเสียของตัวนับแบบริปเปิลในตรรกะดิจิทัล

  • จำเป็นต้องใช้ฟลิปฟลอปเพิ่มเติมเพื่อทำการซิงโครไนซ์ใหม่
  • ในการนับลำดับของตัวนับที่ถูกตัดทอน จำเป็นต้องมีตรรกะป้อนกลับเพิ่มเติม
  • ตัวนับแบบอะซิงโครนัสจะประสบปัญหาความล่าช้าในการส่งสัญญาณอย่างมากเมื่อนับจำนวนบิตจำนวนมาก
  • อาจเกิดข้อผิดพลาดในการนับเนื่องจากความล่าช้าในการส่งสัญญาณที่ความถี่สัญญาณนาฬิกาสูง

Related articles