ชิฟต์รีจิสเตอร์
จากวิกิพีเดีย สารานุกรมเสรี
ชิฟต์รีจิสเตอร์ (shift register) เป็นอุปกรณ์ทางลอจิกที่สร้างมาจากฟลิปฟลอปใช้เก็บข้อมูลชั่วคราวการส่งข้อมูลเข้ารีจิสเตอร์ส่งได้ทีละบิต รีจิสเตอร์ที่เก็บข้อมูลสามารถเลื่อนข้อมูลได้เราเรียกว่า รีจิสเตอร์เลื่อนข้อมูล หรือ ชิฟต์รีจิสเตอร์ (shift register) ถ้านำฟลิบฟลอบมาต่อเรียงกันจะทำให้ฟลิบฟลอบเอาข้อมูลจาก input ไปยัง output ได้เมื่อมีสัญญาณการกระตุ้นจะเกิดการเลื่อนข้อมูลที่ละบิต ตัวเลื่อนข้อมูลจัดเป็นการนำ FLIP FLOP ไปใช้งานได้ การเลื่อนข้อมูลจะมีลักษณะต่างกันดังนี้
- ชิฟต์รีจิสเตอร์เข้าขนานออกขนาน
- ชิฟต์รีจิสเตอร์เข้าขนานออกอนุกรม
- ชิฟต์รีจิสเตอร์เข้าอนุกรมออกขนาน
- ชิฟต์รีจิสเตอร์เข้าอนุกรมออกอนุกรม
ต่อจากนี้เราจะมาดูการทำงานตามลักษณะของชิฟต์รีจิสเตอร์ที่ละตัว
1.ชิฟต์รีจิสเตอร์เข้าขนานออกขนาน ตัวเลื่อนข้อมูลนี้ ใช้เป็นตัวจดบันทึก หรือคงค่า (latch) ข้อมูล
1.1ตัวบันทึกข้อมูลแบบ 2 บิท เรานำฟลิปฟลอปมาสร้างเป็นตัวรับข้อมูลแบบ 2 บิท จะได้ดัง รูป 1.
1.2 ตัวบันทึกข้อมูล แบบ 8 บิท จากรูปที่1. เรานำมาทำการดัดแปลงโดยใช้ D-FLIPFLOP จำนวน 8 ตัวมาต่อขนานกันแล้ว ใช้สัญญาณ CLOCKร่วมกัน จะได้ตัวรับข้อมูลแบบ 8 บิท ดังรูป 2.
2.ชิฟต์รีจิสเตอร์เข้าขนานออกอนุกรม ชิฟต์รีจิสเตอร์เข้าขนานออกอนุกรมจะรับข้อมูลทุกๆบิตเข้าสู่รีจิสเตอร์พร้อมๆกันซึ้งเราจะเรียกมันว่าการโหลดข้อมูล และมันก็จะส่งข้อมูลออกมาทีละบิตเมื่อมีสัญญาณมากระตุ้นมัน ดังรูป 3.
รูปที่ 3. ตัวเลื่อนข้อมูลชนิดรับส่งข้อมูลเข้าแบบขนาน และส่งข้อมูลแบบอนุกรม โดยใช้ฟลิปฟลอป ชนิด J - K รูปการโหลดข้อมูลปตัวอย่างการเลื่อนข้อมูลเข้าขนานและออกอนุกรมโดยใช้ J-K ฟลิบฟลอบ และจากรูปนี้ข้อมูลที่เราต้องการที่จะโหลดเข้ามาแบบขนานจะต้องป้อนเข้ามารอไว้ที่ D2 D1 D0 เมื่อได้สัญญาณโหลดเปน”1 ” การโหลดจะได้ “0” และยังคงค่า“0” เหมือนเดิม
รูป 4. ตัวรับข้อมูลแบบขนาน 4 บิท และส่งออกอนุกรม เมื่อให้สัญญาณเคลียร์ output ของทุกตัวเป็น “0” เมื่อ ให้สัญญาณ Preset ตัวที่มีข้อมูลเข้ามาเป็น "1" จะมีoutput Q เป็น “1”
3.ชิฟต์รีจิสเตอร์เข้าอนุกรมออกขนาน ตัวเลื่อนข้อมูลแบบ เข้าอนุกรมออกขนาน นำoutputมาใช้ได้ใน 2 ลักษณะ คือ นำoutputขนานมาใช้ คือ OUTPUT QA, QB, QC และ QD นำoutputอนุกรมมาใช้ คือ จาก QA มาใช้ การนำเอาต์พุตขนานมาใช้ อาศัยการเลื่อน 4 จังหวะ ถึงจะได้ข้อมูล ครบถ้วน ส่วนข้อมูลอนุกรมจะได้ครบต้องอาศัยการเลื่อน 8 จังหวะ ดังรูปที่ 5.
ปกติตัวเลื่อนแบบ เข้าอนุกรมออกขนาน จะนำมาใช้เมื่อต้องการหน่วงเวลาสัญญาณเท่านั้น ต่อไปนี้เป็นตัวอย่างการใช้ฟลิปฟลอปชนิด D ในการเลื่อนข้อมูลแบบรับเข้าอนุกรม และส่งออกแบบขนาน ดังรูปที่ 6.
4.ชิฟต์รีจิสเตอร์เข้าอนุกรมออกอนุกรม การส่งข้อมูลแบบอนุกรมและตัวรับแบบอนุกรมนี้ไม่มีใช้ในการรับส่งข้อมูลทั่วไป แต่ใช้เพื่อหน่วงเวลาของข้อมูล หากต้องการ หน่วงเวลาของข้อมูลไป 1 ช่วงสัญญาณนาฬิกาก็ได้ ฟลิปฟลอปชนิด D จำนวน 1 ภาค และเพิ่มขึ้นทุกจำนวน 1 ภาค ต่อการหน่วง ไป 1 จังหวะของสัญญาณนาฬิกา ตามจำนวนบิทของข้อมูลที่ส่งต่อหน่วยเวลาเท่ากับความถี่ของสัญญาณนาฬิกาที่ให้กับ ฟลิปฟลอปชนิดD ดังรูปที่ 7.
รูปที่ 8. เป็นการหน่วงเวลาของข้อมูลโดยใช้ D FLIPFLOP จำนวน 2 ภาค เพื่อสร้างเป็นตัวรับแบบอนุกรม และส่งออกแบบอนุกรม
วงจรนับแบบชิฟต์รีจิสเตอร์
1. วงจรนับแบบจอห์นสัน วงจรนี้นำอินเวิร์ต output ของฟลิบฟลอบบิตสูงสุดป้อนกลับมายังขาข้อมูลเข้าของฟลิบฟลอบตัวแรก และเราสามารถที่จะหารูปแบบของการนับได้จากสูตร 2n โดยที่ n ในที่นี้เป็นจำนวนบิต
2. วงจรนับแบบวงแหวน วงจรนี้จะต่อ output ของฟลิบฟลอบที่บิตตัวสุดท้ายกับขา input ของฟลิบฟลอบที่บิตตัวแรก ซึ้งจะทำให้เกิดรูปแบบการนับเลื่อนกลับเป็นวงกลมถ้าหากมีสัญญาณเข้ามา