ตัวนับวงแหวนเป็นแอปพลิเคชั่นทั่วไปของการลงทะเบียนการแปล ตัวนับวงแหวนเกือบจะเหมือนกับตัวนับการแปล ข้อแตกต่างเพียงอย่างเดียวคือเอาต์พุตของฟลิปฟล็อปตัวสุดท้ายเชื่อมต่อกับอินพุตของฟลิปฟล็อปตัวแรกในกรณีของตัวนับลูป แต่ในกรณีของการลงทะเบียนการแปลจะถือว่าเป็นเอาต์พุต ยกเว้นประเด็นนี้ปัจจัยอื่น ๆ ทั้งหมดเหมือนกัน.
เคาน์เตอร์แหวน นี่คือเคาน์เตอร์ดิจิตอลประเภทหนึ่งที่ใช้ในวงจรไฟฟ้าซึ่งมักจะทําด้วยฟลิปฟล็อป มันทํางานโดยการเลื่อนหมายเลข 1 ผ่านชุดรองเท้าแตะทีละอันในลูป เรียกว่าตัวนับรอบเพราะหมายเลข 1 จะกลับไปที่จุดเริ่มต้นเมื่อถึงจุดสิ้นสุด ก่อตัวเป็นวัฏจักร.
จํานวนสถานะในตัวนับวงแหวน = จํานวนฟลิปฟล็อปที่ใช้
คุณสมบัติหลักของเครื่องนับแหวน บิตเดียว '1': มีเพียงหนึ่งบิตในตัวนับเท่านั้นที่ตั้งค่าเป็น 1 ในเวลาใดก็ตาม. พฤติกรรมแบบวงกลม: รูปแบบบิตเป็นไปตามพฤติกรรมแบบวงกลมและทําซ้ําหลังจากจํานวนขั้นตอนคงที่. ไม่มีการรีเซ็ต: ตัวนับเสียงกริ่งจะไม่รีเซ็ตเป็น 0 โดยอัตโนมัติ แต่จะเริ่มต้นในสถานะที่กําหนดไว้แล้วหมุนเวียนต่อไป. การทํางานของตัวนับวงแหวน โดยทั่วไปแล้วตัวนับแหวนจะสร้างขึ้นโดยใช้รองเท้าแตะ (รองเท้าแตะ D, T หรือ JK). ประกอบด้วย n ฟลิปฟล็อป โดยที่ n คือจํานวนสถานะในเคาน์เตอร์ จํานวนรองเท้าแตะเป็นตัวกําหนดจํานวนสถานะที่ไม่ซ้ํากันที่ตัวนับจะหมุนเวียนผ่าน. หนึ่งบิตในตัวนับถูกตั้งค่าเป็น 1 และบิตที่เหลือจะถูกตั้งค่าเป็น 0 ในแต่ละรอบนาฬิกา 1 บิตจะเลื่อนผ่านรองเท้าแตะและรูปแบบจะทําซ้ํา. เอาต์พุตของฟลิปฟล็อปตัวสุดท้ายจะถูกป้อนกลับไปยังฟลิปฟล็อปตัวแรก ก่อตัวเป็นลูป จึงเป็นที่มาของชื่อ Ring Counter. ตัวอย่างของตัวนับวงแหวน 4 บิต
มาดู Ring Counter 4 บิตกัน:
สถานะเริ่มต้น: 1000 (ฟลิปฟล็อปแรกถูกตั้งค่าเป็น 1 และฟลิปฟล็อปอื่นๆ ถูกตั้งค่าเป็น 0). รอบนาฬิกา 1 : บิต '1' จะสลับไปยังฟลิปฟล็อปถัดไป เพื่อสร้างสถานะ 0100. รอบนาฬิกา 2 : บิต '1' จะสลับไปยังฟลิปฟล็อปถัดไป 0010. รอบนาฬิกา 3 : บิต '1' จะสลับไปยังฟลิปฟล็อปถัดไป เพื่อสร้างสถานะ 0001. รอบนาฬิกา 4 : บิต '1' จะเลื่อนกลับไปที่ฟลิปฟล็อปแรกและทําซ้ํารอบ ส่งผลให้เกิดสถานะ 1000. ลําดับสถานะ:
1000→ 0100→ 0010→ 0001→ 1000.
ดังนั้นในการออกแบบเคาน์เตอร์วงแหวน 4 บิตเราต้องมีรองเท้าแตะ 4 ชิ้นตามการออกแบบด้านล่าง:
เคาน์เตอร์แหวน ส่วนประกอบและสัญญาณ การแทนที่อินพุต (ORI)): ORI ใช้เพื่อแทนที่ฟังก์ชันปกติของรองเท้าแตะ ในกรณีนี้ Preset (PR) และ Clear (CLR) จะใช้เป็น ORI. ที่ตั้งไว้ล่วงหน้า (PR): เมื่อสัญญาณ PR เป็น 0 เอาต์พุตของฟลิปฟล็อป (Q) จะถูกตั้งค่าเป็น 1 นี่คือสัญญาณที่ทํางานในระดับต่ํา. ล้าง (CLR): เมื่อสัญญาณ CLR เป็น 0 เอาต์พุตของฟลิปฟล็อป (Q) จะถูกตั้งค่าเป็น 0 นี่เป็นสัญญาณของกิจกรรมต่ํา. ที่ตั้งไว้ล่วงหน้า (PR) = 0, Q = 1 : เมื่อ PR เป็น 0 เอาต์พุตของฟลิปฟล็อปจะถูกบังคับให้เป็น 1 โดยไม่คํานึงถึงอินพุตหรือสัญญาณนาฬิกาอื่นๆ. ล้าง (CLR) = 0, Q = 0: เมื่อ CLR เป็น 0 เอาต์พุตของฟลิปฟล็อปจะถูกบังคับให้เขียน 0 ทับอินพุตอื่น ๆ. สัญญาณที่ตั้งไว้ล่วงหน้า (PR) และชัดเจน (CLR) ใช้เพื่อควบคุมสถานะของรองเท้าแตะ. อินพุต ORI ของฟลิปฟล็อปแต่ละตัวเชื่อมต่อกับพรีเซ็ต (PR) สําหรับ FF-0 (ฟลิปฟล็อปตัวแรก) และกับ Clear (CLR) สําหรับ FF-1, FF-2 และ FF-3 (ฟลิปฟล็อปอื่นๆ).ที่ FF-0 เมื่อ PR=0 เอาต์พุต Q=1 จะถูกสร้างขึ้น และสิ่งนี้จะสร้างสถานะเริ่มต้นของตัวนับ. ในฟลิปฟล็อปอื่นๆ (FF-1, FF-2, FF-3) CLR = 0 บังคับให้เอาต์พุต Q = 0 ที่ฟลิปฟล็อปเหล่านี้. การตั้งค่านี้สร้าง Pre-set 1 ที่ FF-0 และรองเท้าแตะอื่นๆ ถือ 0 "1" ที่ FF-0 นี้จะแพร่กระจายผ่านรองเท้าแตะเป็นวงกลม เพื่อสร้างลําดับลักษณะเฉพาะของ Ring Counter. ค่าที่ตั้งไว้ล่วงหน้า 1 ค่านี้สร้างขึ้นโดยการตั้งค่า ORI ให้ต่ําและนาฬิกาบอกเวลา (CLK) จะไม่สนใจ จากนั้น ORI จะถูกตั้งค่าเป็นสูงและสัญญาณนาฬิกาต่ําจะถูกนําไปใช้เมื่อเปิดใช้งานนาฬิกา (CLK) ที่ด้านลบ จากนั้นในแต่ละพัลส์ค่าที่ตั้งไว้ล่วงหน้า 1 จะถูกเลื่อนไปยังฟลิปฟล็อปถัดไปและสร้างลูป ด้วยวิธีนี้ จึงเป็นไปได้ที่จะออกแบบตัวนับวงแหวน 4 บิตโดยใช้ Flip-flop D สี่ตัว.
ประเภทของเคาน์เตอร์แหวน: Ring Counter มีสองประเภท:
เคาน์เตอร์แหวนตรง
เรียกอีกอย่างว่าเคาน์เตอร์หนึ่งร้อน ในเคาน์เตอร์นี้ เอาต์พุตของฟลิปฟล็อปตัวสุดท้ายจะเชื่อมต่อกับอินพุตของฟลิปฟล็อปตัวแรก ประเด็นหลักของตัวนับนี้คือมันหมุนบิตเดียว (หรือไม่มี) รอบวงแหวน ที่นี่ เราใช้ Preset (PR) สําหรับฟลิปฟล็อปตัวแรก และ Clock (CLK) สําหรับฟลิปฟล็อปสามตัวสุดท้าย.
เคาน์เตอร์แหวนตรง ตัวนับบิด
เรียกอีกอย่างว่าเคาน์เตอร์วงแหวนหางแบบสลับ เคาน์เตอร์วงแหวนเดินทาง หรือเคาน์เตอร์จอห์นสัน มันเชื่อมต่อออฟเซ็ตของเอาต์พุตของรีจิสเตอร์การแปลล่าสุดกับอินพุตของรีจิสเตอร์แรกและหมุนสตรีม 1 ตามด้วย 0 รอบวงแหวน ที่นี่เราใช้นาฬิกา (CLK) สําหรับรองเท้าแตะทั้งหมด ใน Twist Counter จํานวนสถานะ = 2 X จํานวนฟลิปฟล็อป.
ตัวนับบิด ข้อดีของเคาน์เตอร์แหวน ความเรียบง่าย: ออกแบบง่าย โดยเฉพาะอย่างยิ่งสําหรับการใช้งานขนาดเล็ก.ใช้ทรัพยากรน้อยลง: คุณไม่จําเป็นต้องมีส่วนประกอบมากนักเมื่อเทียบกับเคาน์เตอร์อื่นๆ.เอาต์พุตที่คาดการณ์ได้: จะพบชุดสถานะเดียวกันในลําดับเดียวกันเสมอ.ง่ายต่อการถอดรหัส: แต่ละสถานะแยกจากกันและถอดรหัสได้ง่าย เนื่องจากใช้การเข้ารหัสแบบ one-hot โดยมีเอาต์พุตเพียงรายการเดียวในระดับสูงในแต่ละครั้ง.เอาต์พุตที่ปราศจากความผิดพลาด: เนื่องจากมีฟลิปฟล็อปเพียงตัวเดียวที่ใช้งานในแต่ละครั้ง โอกาสที่เอาต์พุตจะทํางานผิดปกติจึงลดลง ทําให้มีความน่าเชื่อถือมากขึ้นในบางการใช้งาน.ข้อเสียของเคาน์เตอร์แหวน สถานะจํากัด: คุณสามารถเรียกดูหมายเลขสถานะได้โดยใช้หมายเลขฟลิปฟล็อปในเคาน์เตอร์เท่านั้น ดังนั้นสําหรับตัวนับ 4 บิต คุณสามารถมีสถานะที่ไม่ซ้ํากันได้เพียงสี่สถานะเท่านั้น.ไม่เหมาะสําหรับรูปแบบที่ซับซ้อน: ไม่เหมาะหากคุณต้องการตัวนับที่นับในรูปแบบสุ่มหรือไม่ใช่ไบนารี เนื่องจากถูกจํากัดไว้ที่รูปแบบวงกลมเมื่อเปลี่ยนค่า 1 ผ่านรองเท้าแตะ.คันโยกเริ่มต้น: ตัวนับรอบต้องเริ่มต้นอย่างถูกต้อง (โดยปกติจะมีฟลิปฟล็อปเพียงตัวเดียวที่ตั้งค่าเป็น 1) ก่อนเริ่มการทํางาน มิฉะนั้นอาจติดอยู่ในสถานะไม่ถูกต้อง.ต้นทุนฮาร์ดแวร์ที่เพิ่มขึ้น: เมื่อคุณเพิ่มรองเท้าแตะเพื่อเพิ่มจํานวนสถานะ ฮาร์ดแวร์ที่จําเป็นก็จะเพิ่มขึ้นด้วย ซึ่งอาจทําให้การออกแบบยุ่งยากสําหรับข้อกําหนดของรัฐขนาดใหญ่.การประยุกต์ใช้ตัวนับแหวน ตัวนับรอบจะใช้เมื่อคุณต้องการให้ระบบผ่านชุดสถานะที่เฉพาะเจาะจงและทําซ้ํา ตัวอย่าง:
การสร้างสตริง: มีประโยชน์เมื่อคุณต้องการลําดับที่คาดเดาได้ เช่น ในระบบควบคุมอย่างง่ายหรือวงจรเวลา.ระบบควบคุม: ตัวนับวงแหวนเหมาะอย่างยิ่งสําหรับอุปกรณ์ต่างๆ เช่น มัลติเพล็กเซอร์หรือวงจรเข้ารหัส ซึ่งลําดับการทํางานต้องเป็นไปตามรอบที่กําหนด.การออกแบบที่เรียบง่าย: ตัวนับวงแหวนนั้นง่ายต่อการออกแบบและเข้าใจ เนื่องจากแต่ละรัฐมีฟลิปฟล็อปเพียงชุดเดียวเป็น 1 ทําให้การดีบักและการวิเคราะห์เป็นเรื่องง่าย.Finite State Machine (FSM): ใช้ในระบบที่เคลื่อนที่ผ่านชุดของสถานะที่รู้จักในลูป เช่น ตู้จําหน่ายสินค้าอัตโนมัติหรือตัวควบคุมลิฟต์.แอปพลิเคชันตามการลงทะเบียนการกระจัด: ตัวนับตักเป็นการลงทะเบียนการกระจัดประเภทพิเศษ ดังนั้นจึงใช้ในสถานที่ที่จําเป็นต้องใช้การลงทะเบียนการกระจัดเพื่อย้ายข้อมูล.