รีจิสเตอร์เลื่อนข้อมูลแบบอนุกรมเข้า-อนุกรมออก (Serial In Serial Out - SISO)

ทำความรู้จักรีจิสเตอร์เลื่อนข้อมูลแบบ SISO และการเลื่อนข้อมูลในวงจรดิจิทัลอย่างมีประสิทธิภาพ

รีจิสเตอร์เลื่อนข้อมูลแบบอนุกรมเข้า-อนุกรมออก (Serial In Serial Out - SISO)

ในสาขาอิเล็กทรอนิกส์ดิจิทัล รีจิสเตอร์เลื่อน (Shift Register) มีบทบาทสำคัญในแอปพลิเคชันต่าง ๆ มากมาย ตั้งแต่การจัดเก็บข้อมูลไปจนถึงการประมวลผลสัญญาณ รีจิสเตอร์เลื่อนชนิดหนึ่งที่นิยมใช้งานคือ รีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออก (Serial-In Serial-Out: SISO) รีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออกเป็นวงจรลอจิกแบบซีเควนเชียล (Sequential Logic Circuit) ที่ช่วยให้สามารถเลื่อนข้อมูลเข้าและออกทีละบิตในรูปแบบอนุกรมได้ ข้อมูลอินพุตจะถูกป้อนเข้าสู่ฟลิปฟลอปตัวแรกในชุดวงจร และเมื่อมีสัญญาณนาฬิกา ข้อมูลจะถูกส่งต่อผ่านฟลิปฟลอปแต่ละตัว จนปรากฏที่เอาต์พุตในที่สุด

  • ประกอบด้วยชุดฟลิปฟลอป (Flip-Flop) ที่เชื่อมต่อเรียงต่อกันแบบอนุกรม
  • วงจรลอจิกที่แสดงด้านล่างเป็นตัวอย่างของรีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออก (SISO)
  • วงจรนี้ประกอบด้วยฟลิปฟลอปชนิด D จำนวน 4 ตัวที่เชื่อมต่อกันตามลำดับ
  • ฟลิปฟลอปเหล่านี้ทำงานแบบซิงโครนัสร่วมกัน เนื่องจากทั้งหมดได้รับสัญญาณนาฬิกาเดียวกัน
รีจิสเตอร์ SISO ขนาด 4 บิต

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

ฟลิปฟลอป D แต่ละตัวในวงจรมีอินพุตข้อมูล (D) อินพุตสัญญาณนาฬิกา (CLK) และเอาต์พุต (Q) อินพุต D ใช้สำหรับรับข้อมูลที่ต้องการโหลดเข้าสู่ฟลิปฟลอป ขณะที่อินพุต CLK เชื่อมต่อกับสัญญาณนาฬิการ่วม เอาต์พุต (Q) ของฟลิปฟลอปแต่ละตัวจะเชื่อมต่อกับอินพุต D ของฟลิปฟลอปตัวถัดไป ทำให้เกิดเป็นวงจรแบบคาสเคด (Cascaded Circuit)

หลักการทำงานของ SISO

รีจิสเตอร์เลื่อน SISO (Single Input Single Output) เป็นวงจรซีเควนเชียลที่รับข้อมูลเข้าทีละบิตและเลื่อนข้อมูลผ่านฟลิปฟลอปในแต่ละรอบสัญญาณนาฬิกา โดยสร้างสัญญาณเอาต์พุตในรูปแบบอนุกรม

  • ข้อมูลจะถูกป้อนเข้าสู่อินพุต
  • ในแต่ละรอบสัญญาณนาฬิกา ข้อมูลจะถูกส่งต่อจากฟลิปฟลอปตัวหนึ่งไปยังอีกตัวหนึ่ง
  • หลังจากผ่านไป n รอบสัญญาณนาฬิกา บิตอินพุตจะปรากฏที่เอาต์พุต
  • สัญญาณเอาต์พุตจะถูกอ่านจากฟลิปฟลอปตัวสุดท้าย

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

ตารางความจริงของ SISO

รูปคลื่นสัญญาณ

‍

ฟังก์ชันและการทำงาน

การทำงานของรีจิสเตอร์เลื่อน SISO อาศัยองค์ประกอบหลักสองส่วน ได้แก่ ฟลิปฟลอปและสัญญาณนาฬิกา

  • ฟลิปฟลอป (Flip-Flop): ฟลิปฟลอปเป็นองค์ประกอบพื้นฐานของวงจรซีเควนเชียล สำหรับรีจิสเตอร์เลื่อน SISO ฟลิปฟลอปแต่ละตัวจะจัดเก็บข้อมูลจำนวน 1 บิต จำนวนฟลิปฟลอปที่ใช้จะเป็นตัวกำหนดความยาวหรือขนาดของรีจิสเตอร์เลื่อน
  • สัญญาณนาฬิกา (Clock Signal): สัญญาณนาฬิกาทำหน้าที่ซิงโครไนซ์การเคลื่อนที่ของข้อมูลผ่านรีจิสเตอร์เลื่อน ในแต่ละรอบสัญญาณนาฬิกา ข้อมูลจะเลื่อนจากฟลิปฟลอปตัวหนึ่งไปยังอีกตัวหนึ่ง สัญญาณนาฬิกาช่วยให้มั่นใจได้ว่าการส่งผ่านข้อมูลเกิดขึ้นอย่างเป็นระบบและสอดคล้องกัน

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

การประยุกต์ใช้งาน

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

ตัวอย่างการคำนวณ

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

ข้อมูลอินพุต: 1011

สัญญาณนาฬิกา: 1 1 1 1

วิธีการแก้ปัญหา

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

Clock 1: Input: 1 0 1 1; Output: 0 0 0 0

Clock 2: Input: 1 0 1 1; Output: 1 0 0 0

Clock 3: Input: 1 0 1 1; Output: 1 1 0 0

Clock 4: Input: 1 0 1 1; Output: 1 1 1 0

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

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

ตัวอย่างข้างต้นแสดงให้เห็นถึงการทำงานของรีจิสเตอร์เลื่อน SISO ขนาด 4 บิต ซึ่งข้อมูลอินพุตจะถูกเลื่อนผ่านฟลิปฟลอปแต่ละตัวตามลำดับ และเอาต์พุตจะแสดงสถานะของฟลิปฟลอปตัวสุดท้าย

รีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออก (SISO) เป็นอุปกรณ์อเนกประสงค์ในวงการอิเล็กทรอนิกส์ดิจิทัล โดยนำเสนอวิธีการที่เรียบง่ายแต่มีประสิทธิภาพสำหรับการเลื่อนและจัดเก็บข้อมูลในรูปแบบอนุกรม การประยุกต์ใช้งานครอบคลุมหลายด้าน ได้แก่ การจัดเก็บข้อมูล การประมวลผลสัญญาณ การเข้ารหัส และการหารความถี่ การทำความเข้าใจฟังก์ชันและหลักการทำงานของรีจิสเตอร์เลื่อน SISO จึงเป็นพื้นฐานสำคัญสำหรับการออกแบบและพัฒนาระบบดิจิทัลที่ต้องอาศัยการจัดการและควบคุมข้อมูลแบบอนุกรม

ข้อดี

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

ข้อเสีย

  • อัตราการส่งข้อมูลต่ำกว่า: เนื่องจากประมวลผลข้อมูลในรูปแบบอนุกรม รีจิสเตอร์เลื่อน SISO จึงอาจมีอัตราการส่งข้อมูลต่ำกว่ารีจิสเตอร์แบบขนานที่สามารถส่งข้อมูลหลายบิตได้พร้อมกัน ซึ่งถือเป็นข้อเสียโดยเฉพาะในกรณีที่ต้องการประมวลผลข้อมูลด้วยความเร็วสูง
  • ความสามารถในการประมวลผลแบบขนานมีจำกัด: รีจิสเตอร์เลื่อน SISO ประมวลผลข้อมูลทีละบิต จึงมีข้อจำกัดด้านความสามารถในการประมวลผลแบบขนาน และไม่เหมาะสำหรับแอปพลิเคชันที่ต้องอาศัยการประมวลผลแบบขนานเป็นหลัก
  • ความซับซ้อนเมื่อต้องดำเนินการหลายรูปแบบ: ในกรณีที่แอปพลิเคชันต้องการดำเนินการทั้งทางลอจิกแบบซีเควนเชียลและแบบขนานพร้อมกันกับอินพุตหลายบิต การใช้ SISO อาจไม่เหมาะสม เนื่องจากจำเป็นต้องใช้รีจิสเตอร์ SISO หลายตัวแทนการใช้เพียงตัวเดียว ส่งผลให้วงจรมีความซับซ้อนเพิ่มขึ้นและมีประสิทธิภาพต่ำกว่าการใช้รีจิสเตอร์ PISO
  • ความยากในการซิงโครไนซ์ข้อมูล: การซิงโครไนซ์ระหว่างอินพุตและเอาต์พุตอาจทำได้ยาก เนื่องจากรีจิสเตอร์เลื่อน SISO มีลักษณะการทำงานแบบอนุกรม โดยเฉพาะในระบบที่การซิงโครไนซ์ข้อมูลมีความสำคัญ
  • ความหน่วงในการแพร่กระจายสูง: เมื่อใช้รีจิสเตอร์ SISO อาจพบความล่าช้าในการประมวลผลที่สูงขึ้นหากพยายามส่งข้อมูลผ่านวงจรเร็วเกินไป เนื่องจากวงจรไม่สามารถดำเนินการบางอย่างได้เช่นเดียวกับวงจรแอนะล็อก

รีจิสเตอร์เลื่อนข้อมูลแบบอนุกรมเข้า-อนุกรมออก (Serial In Serial Out - SISO)

ทำความรู้จักรีจิสเตอร์เลื่อนข้อมูลแบบ SISO และการเลื่อนข้อมูลในวงจรดิจิทัลอย่างมีประสิทธิภาพ

นักเขียนบทความ
by 
นักเขียนบทความ
รีจิสเตอร์เลื่อนข้อมูลแบบอนุกรมเข้า-อนุกรมออก (Serial In Serial Out - SISO)

รีจิสเตอร์เลื่อนข้อมูลแบบอนุกรมเข้า-อนุกรมออก (Serial In Serial Out - SISO)

ทำความรู้จักรีจิสเตอร์เลื่อนข้อมูลแบบ SISO และการเลื่อนข้อมูลในวงจรดิจิทัลอย่างมีประสิทธิภาพ

ในสาขาอิเล็กทรอนิกส์ดิจิทัล รีจิสเตอร์เลื่อน (Shift Register) มีบทบาทสำคัญในแอปพลิเคชันต่าง ๆ มากมาย ตั้งแต่การจัดเก็บข้อมูลไปจนถึงการประมวลผลสัญญาณ รีจิสเตอร์เลื่อนชนิดหนึ่งที่นิยมใช้งานคือ รีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออก (Serial-In Serial-Out: SISO) รีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออกเป็นวงจรลอจิกแบบซีเควนเชียล (Sequential Logic Circuit) ที่ช่วยให้สามารถเลื่อนข้อมูลเข้าและออกทีละบิตในรูปแบบอนุกรมได้ ข้อมูลอินพุตจะถูกป้อนเข้าสู่ฟลิปฟลอปตัวแรกในชุดวงจร และเมื่อมีสัญญาณนาฬิกา ข้อมูลจะถูกส่งต่อผ่านฟลิปฟลอปแต่ละตัว จนปรากฏที่เอาต์พุตในที่สุด

  • ประกอบด้วยชุดฟลิปฟลอป (Flip-Flop) ที่เชื่อมต่อเรียงต่อกันแบบอนุกรม
  • วงจรลอจิกที่แสดงด้านล่างเป็นตัวอย่างของรีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออก (SISO)
  • วงจรนี้ประกอบด้วยฟลิปฟลอปชนิด D จำนวน 4 ตัวที่เชื่อมต่อกันตามลำดับ
  • ฟลิปฟลอปเหล่านี้ทำงานแบบซิงโครนัสร่วมกัน เนื่องจากทั้งหมดได้รับสัญญาณนาฬิกาเดียวกัน
รีจิสเตอร์ SISO ขนาด 4 บิต

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

ฟลิปฟลอป D แต่ละตัวในวงจรมีอินพุตข้อมูล (D) อินพุตสัญญาณนาฬิกา (CLK) และเอาต์พุต (Q) อินพุต D ใช้สำหรับรับข้อมูลที่ต้องการโหลดเข้าสู่ฟลิปฟลอป ขณะที่อินพุต CLK เชื่อมต่อกับสัญญาณนาฬิการ่วม เอาต์พุต (Q) ของฟลิปฟลอปแต่ละตัวจะเชื่อมต่อกับอินพุต D ของฟลิปฟลอปตัวถัดไป ทำให้เกิดเป็นวงจรแบบคาสเคด (Cascaded Circuit)

หลักการทำงานของ SISO

รีจิสเตอร์เลื่อน SISO (Single Input Single Output) เป็นวงจรซีเควนเชียลที่รับข้อมูลเข้าทีละบิตและเลื่อนข้อมูลผ่านฟลิปฟลอปในแต่ละรอบสัญญาณนาฬิกา โดยสร้างสัญญาณเอาต์พุตในรูปแบบอนุกรม

  • ข้อมูลจะถูกป้อนเข้าสู่อินพุต
  • ในแต่ละรอบสัญญาณนาฬิกา ข้อมูลจะถูกส่งต่อจากฟลิปฟลอปตัวหนึ่งไปยังอีกตัวหนึ่ง
  • หลังจากผ่านไป n รอบสัญญาณนาฬิกา บิตอินพุตจะปรากฏที่เอาต์พุต
  • สัญญาณเอาต์พุตจะถูกอ่านจากฟลิปฟลอปตัวสุดท้าย

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

ตารางความจริงของ SISO

รูปคลื่นสัญญาณ

‍

ฟังก์ชันและการทำงาน

การทำงานของรีจิสเตอร์เลื่อน SISO อาศัยองค์ประกอบหลักสองส่วน ได้แก่ ฟลิปฟลอปและสัญญาณนาฬิกา

  • ฟลิปฟลอป (Flip-Flop): ฟลิปฟลอปเป็นองค์ประกอบพื้นฐานของวงจรซีเควนเชียล สำหรับรีจิสเตอร์เลื่อน SISO ฟลิปฟลอปแต่ละตัวจะจัดเก็บข้อมูลจำนวน 1 บิต จำนวนฟลิปฟลอปที่ใช้จะเป็นตัวกำหนดความยาวหรือขนาดของรีจิสเตอร์เลื่อน
  • สัญญาณนาฬิกา (Clock Signal): สัญญาณนาฬิกาทำหน้าที่ซิงโครไนซ์การเคลื่อนที่ของข้อมูลผ่านรีจิสเตอร์เลื่อน ในแต่ละรอบสัญญาณนาฬิกา ข้อมูลจะเลื่อนจากฟลิปฟลอปตัวหนึ่งไปยังอีกตัวหนึ่ง สัญญาณนาฬิกาช่วยให้มั่นใจได้ว่าการส่งผ่านข้อมูลเกิดขึ้นอย่างเป็นระบบและสอดคล้องกัน

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

การประยุกต์ใช้งาน

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

ตัวอย่างการคำนวณ

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

ข้อมูลอินพุต: 1011

สัญญาณนาฬิกา: 1 1 1 1

วิธีการแก้ปัญหา

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

Clock 1: Input: 1 0 1 1; Output: 0 0 0 0

Clock 2: Input: 1 0 1 1; Output: 1 0 0 0

Clock 3: Input: 1 0 1 1; Output: 1 1 0 0

Clock 4: Input: 1 0 1 1; Output: 1 1 1 0

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

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

ตัวอย่างข้างต้นแสดงให้เห็นถึงการทำงานของรีจิสเตอร์เลื่อน SISO ขนาด 4 บิต ซึ่งข้อมูลอินพุตจะถูกเลื่อนผ่านฟลิปฟลอปแต่ละตัวตามลำดับ และเอาต์พุตจะแสดงสถานะของฟลิปฟลอปตัวสุดท้าย

รีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออก (SISO) เป็นอุปกรณ์อเนกประสงค์ในวงการอิเล็กทรอนิกส์ดิจิทัล โดยนำเสนอวิธีการที่เรียบง่ายแต่มีประสิทธิภาพสำหรับการเลื่อนและจัดเก็บข้อมูลในรูปแบบอนุกรม การประยุกต์ใช้งานครอบคลุมหลายด้าน ได้แก่ การจัดเก็บข้อมูล การประมวลผลสัญญาณ การเข้ารหัส และการหารความถี่ การทำความเข้าใจฟังก์ชันและหลักการทำงานของรีจิสเตอร์เลื่อน SISO จึงเป็นพื้นฐานสำคัญสำหรับการออกแบบและพัฒนาระบบดิจิทัลที่ต้องอาศัยการจัดการและควบคุมข้อมูลแบบอนุกรม

ข้อดี

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

ข้อเสีย

  • อัตราการส่งข้อมูลต่ำกว่า: เนื่องจากประมวลผลข้อมูลในรูปแบบอนุกรม รีจิสเตอร์เลื่อน SISO จึงอาจมีอัตราการส่งข้อมูลต่ำกว่ารีจิสเตอร์แบบขนานที่สามารถส่งข้อมูลหลายบิตได้พร้อมกัน ซึ่งถือเป็นข้อเสียโดยเฉพาะในกรณีที่ต้องการประมวลผลข้อมูลด้วยความเร็วสูง
  • ความสามารถในการประมวลผลแบบขนานมีจำกัด: รีจิสเตอร์เลื่อน SISO ประมวลผลข้อมูลทีละบิต จึงมีข้อจำกัดด้านความสามารถในการประมวลผลแบบขนาน และไม่เหมาะสำหรับแอปพลิเคชันที่ต้องอาศัยการประมวลผลแบบขนานเป็นหลัก
  • ความซับซ้อนเมื่อต้องดำเนินการหลายรูปแบบ: ในกรณีที่แอปพลิเคชันต้องการดำเนินการทั้งทางลอจิกแบบซีเควนเชียลและแบบขนานพร้อมกันกับอินพุตหลายบิต การใช้ SISO อาจไม่เหมาะสม เนื่องจากจำเป็นต้องใช้รีจิสเตอร์ SISO หลายตัวแทนการใช้เพียงตัวเดียว ส่งผลให้วงจรมีความซับซ้อนเพิ่มขึ้นและมีประสิทธิภาพต่ำกว่าการใช้รีจิสเตอร์ PISO
  • ความยากในการซิงโครไนซ์ข้อมูล: การซิงโครไนซ์ระหว่างอินพุตและเอาต์พุตอาจทำได้ยาก เนื่องจากรีจิสเตอร์เลื่อน SISO มีลักษณะการทำงานแบบอนุกรม โดยเฉพาะในระบบที่การซิงโครไนซ์ข้อมูลมีความสำคัญ
  • ความหน่วงในการแพร่กระจายสูง: เมื่อใช้รีจิสเตอร์ SISO อาจพบความล่าช้าในการประมวลผลที่สูงขึ้นหากพยายามส่งข้อมูลผ่านวงจรเร็วเกินไป เนื่องจากวงจรไม่สามารถดำเนินการบางอย่างได้เช่นเดียวกับวงจรแอนะล็อก

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.

รีจิสเตอร์เลื่อนข้อมูลแบบอนุกรมเข้า-อนุกรมออก (Serial In Serial Out - SISO)

รีจิสเตอร์เลื่อนข้อมูลแบบอนุกรมเข้า-อนุกรมออก (Serial In Serial Out - SISO)

ทำความรู้จักรีจิสเตอร์เลื่อนข้อมูลแบบ SISO และการเลื่อนข้อมูลในวงจรดิจิทัลอย่างมีประสิทธิภาพ

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

ในสาขาอิเล็กทรอนิกส์ดิจิทัล รีจิสเตอร์เลื่อน (Shift Register) มีบทบาทสำคัญในแอปพลิเคชันต่าง ๆ มากมาย ตั้งแต่การจัดเก็บข้อมูลไปจนถึงการประมวลผลสัญญาณ รีจิสเตอร์เลื่อนชนิดหนึ่งที่นิยมใช้งานคือ รีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออก (Serial-In Serial-Out: SISO) รีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออกเป็นวงจรลอจิกแบบซีเควนเชียล (Sequential Logic Circuit) ที่ช่วยให้สามารถเลื่อนข้อมูลเข้าและออกทีละบิตในรูปแบบอนุกรมได้ ข้อมูลอินพุตจะถูกป้อนเข้าสู่ฟลิปฟลอปตัวแรกในชุดวงจร และเมื่อมีสัญญาณนาฬิกา ข้อมูลจะถูกส่งต่อผ่านฟลิปฟลอปแต่ละตัว จนปรากฏที่เอาต์พุตในที่สุด

  • ประกอบด้วยชุดฟลิปฟลอป (Flip-Flop) ที่เชื่อมต่อเรียงต่อกันแบบอนุกรม
  • วงจรลอจิกที่แสดงด้านล่างเป็นตัวอย่างของรีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออก (SISO)
  • วงจรนี้ประกอบด้วยฟลิปฟลอปชนิด D จำนวน 4 ตัวที่เชื่อมต่อกันตามลำดับ
  • ฟลิปฟลอปเหล่านี้ทำงานแบบซิงโครนัสร่วมกัน เนื่องจากทั้งหมดได้รับสัญญาณนาฬิกาเดียวกัน
รีจิสเตอร์ SISO ขนาด 4 บิต

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

ฟลิปฟลอป D แต่ละตัวในวงจรมีอินพุตข้อมูล (D) อินพุตสัญญาณนาฬิกา (CLK) และเอาต์พุต (Q) อินพุต D ใช้สำหรับรับข้อมูลที่ต้องการโหลดเข้าสู่ฟลิปฟลอป ขณะที่อินพุต CLK เชื่อมต่อกับสัญญาณนาฬิการ่วม เอาต์พุต (Q) ของฟลิปฟลอปแต่ละตัวจะเชื่อมต่อกับอินพุต D ของฟลิปฟลอปตัวถัดไป ทำให้เกิดเป็นวงจรแบบคาสเคด (Cascaded Circuit)

หลักการทำงานของ SISO

รีจิสเตอร์เลื่อน SISO (Single Input Single Output) เป็นวงจรซีเควนเชียลที่รับข้อมูลเข้าทีละบิตและเลื่อนข้อมูลผ่านฟลิปฟลอปในแต่ละรอบสัญญาณนาฬิกา โดยสร้างสัญญาณเอาต์พุตในรูปแบบอนุกรม

  • ข้อมูลจะถูกป้อนเข้าสู่อินพุต
  • ในแต่ละรอบสัญญาณนาฬิกา ข้อมูลจะถูกส่งต่อจากฟลิปฟลอปตัวหนึ่งไปยังอีกตัวหนึ่ง
  • หลังจากผ่านไป n รอบสัญญาณนาฬิกา บิตอินพุตจะปรากฏที่เอาต์พุต
  • สัญญาณเอาต์พุตจะถูกอ่านจากฟลิปฟลอปตัวสุดท้าย

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

ตารางความจริงของ SISO

รูปคลื่นสัญญาณ

‍

ฟังก์ชันและการทำงาน

การทำงานของรีจิสเตอร์เลื่อน SISO อาศัยองค์ประกอบหลักสองส่วน ได้แก่ ฟลิปฟลอปและสัญญาณนาฬิกา

  • ฟลิปฟลอป (Flip-Flop): ฟลิปฟลอปเป็นองค์ประกอบพื้นฐานของวงจรซีเควนเชียล สำหรับรีจิสเตอร์เลื่อน SISO ฟลิปฟลอปแต่ละตัวจะจัดเก็บข้อมูลจำนวน 1 บิต จำนวนฟลิปฟลอปที่ใช้จะเป็นตัวกำหนดความยาวหรือขนาดของรีจิสเตอร์เลื่อน
  • สัญญาณนาฬิกา (Clock Signal): สัญญาณนาฬิกาทำหน้าที่ซิงโครไนซ์การเคลื่อนที่ของข้อมูลผ่านรีจิสเตอร์เลื่อน ในแต่ละรอบสัญญาณนาฬิกา ข้อมูลจะเลื่อนจากฟลิปฟลอปตัวหนึ่งไปยังอีกตัวหนึ่ง สัญญาณนาฬิกาช่วยให้มั่นใจได้ว่าการส่งผ่านข้อมูลเกิดขึ้นอย่างเป็นระบบและสอดคล้องกัน

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

การประยุกต์ใช้งาน

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

ตัวอย่างการคำนวณ

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

ข้อมูลอินพุต: 1011

สัญญาณนาฬิกา: 1 1 1 1

วิธีการแก้ปัญหา

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

Clock 1: Input: 1 0 1 1; Output: 0 0 0 0

Clock 2: Input: 1 0 1 1; Output: 1 0 0 0

Clock 3: Input: 1 0 1 1; Output: 1 1 0 0

Clock 4: Input: 1 0 1 1; Output: 1 1 1 0

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

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

ตัวอย่างข้างต้นแสดงให้เห็นถึงการทำงานของรีจิสเตอร์เลื่อน SISO ขนาด 4 บิต ซึ่งข้อมูลอินพุตจะถูกเลื่อนผ่านฟลิปฟลอปแต่ละตัวตามลำดับ และเอาต์พุตจะแสดงสถานะของฟลิปฟลอปตัวสุดท้าย

รีจิสเตอร์เลื่อนแบบอนุกรมเข้า–อนุกรมออก (SISO) เป็นอุปกรณ์อเนกประสงค์ในวงการอิเล็กทรอนิกส์ดิจิทัล โดยนำเสนอวิธีการที่เรียบง่ายแต่มีประสิทธิภาพสำหรับการเลื่อนและจัดเก็บข้อมูลในรูปแบบอนุกรม การประยุกต์ใช้งานครอบคลุมหลายด้าน ได้แก่ การจัดเก็บข้อมูล การประมวลผลสัญญาณ การเข้ารหัส และการหารความถี่ การทำความเข้าใจฟังก์ชันและหลักการทำงานของรีจิสเตอร์เลื่อน SISO จึงเป็นพื้นฐานสำคัญสำหรับการออกแบบและพัฒนาระบบดิจิทัลที่ต้องอาศัยการจัดการและควบคุมข้อมูลแบบอนุกรม

ข้อดี

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

ข้อเสีย

  • อัตราการส่งข้อมูลต่ำกว่า: เนื่องจากประมวลผลข้อมูลในรูปแบบอนุกรม รีจิสเตอร์เลื่อน SISO จึงอาจมีอัตราการส่งข้อมูลต่ำกว่ารีจิสเตอร์แบบขนานที่สามารถส่งข้อมูลหลายบิตได้พร้อมกัน ซึ่งถือเป็นข้อเสียโดยเฉพาะในกรณีที่ต้องการประมวลผลข้อมูลด้วยความเร็วสูง
  • ความสามารถในการประมวลผลแบบขนานมีจำกัด: รีจิสเตอร์เลื่อน SISO ประมวลผลข้อมูลทีละบิต จึงมีข้อจำกัดด้านความสามารถในการประมวลผลแบบขนาน และไม่เหมาะสำหรับแอปพลิเคชันที่ต้องอาศัยการประมวลผลแบบขนานเป็นหลัก
  • ความซับซ้อนเมื่อต้องดำเนินการหลายรูปแบบ: ในกรณีที่แอปพลิเคชันต้องการดำเนินการทั้งทางลอจิกแบบซีเควนเชียลและแบบขนานพร้อมกันกับอินพุตหลายบิต การใช้ SISO อาจไม่เหมาะสม เนื่องจากจำเป็นต้องใช้รีจิสเตอร์ SISO หลายตัวแทนการใช้เพียงตัวเดียว ส่งผลให้วงจรมีความซับซ้อนเพิ่มขึ้นและมีประสิทธิภาพต่ำกว่าการใช้รีจิสเตอร์ PISO
  • ความยากในการซิงโครไนซ์ข้อมูล: การซิงโครไนซ์ระหว่างอินพุตและเอาต์พุตอาจทำได้ยาก เนื่องจากรีจิสเตอร์เลื่อน SISO มีลักษณะการทำงานแบบอนุกรม โดยเฉพาะในระบบที่การซิงโครไนซ์ข้อมูลมีความสำคัญ
  • ความหน่วงในการแพร่กระจายสูง: เมื่อใช้รีจิสเตอร์ SISO อาจพบความล่าช้าในการประมวลผลที่สูงขึ้นหากพยายามส่งข้อมูลผ่านวงจรเร็วเกินไป เนื่องจากวงจรไม่สามารถดำเนินการบางอย่างได้เช่นเดียวกับวงจรแอนะล็อก