Flip Flop ฟลิปฟล๊อป
โดย : Admin

เรียบเรียงโดย : แอดมิน สุชิน เสือช้อย

 

Flip Flop  ฟลิปฟล๊อปแต่ละชนิดทำงานอย่างไร


 

ฟลิปฟล็อป (Flip-flop) หรือ แลตช์ (Latch) เป็นวงจรอิเล็กทรอนิกส์ที่มีเอาท์พูท (Output)  คงที่อยู่ 2 สถานะ ซึ่งมีผลลัพธ์ทางลอจิกหรือตรรกะตรงข้ามกัน (Opposite)  นอกจากนั้นฟลิปฟล็อปยังเป็นอุปกรณ์ทางลอจิก (Logic) ซึ่งมีหน่วยความจำขนาดหนึ่งบิต บางครั้งอาจเรียกว่า อุปกรณ์ที่มีเสถียรภาพแบบสองสถานะ คือ ฟลิปฟล็อปหนึ่งตัวสามารถใช้เก็บค่า 0 หรือ 1 ได้

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

สัญญาณนาฬิกา หรือ Clock pulse  เป็นวิธีการที่ทำให้ฟลิปฟล็อปแต่ละตัวสามารถเปลี่ยนสภาวะไปพร้อม ๆ กันได้ โดยต้องมีการให้สัญญาณการเปลี่ยนสภาวะ  ซึ่งสัญญาณนี้เรียกว่า Clock pulse (CK) ส่วนนี้เองที่ทำให้ไม่ต้องใช้ฟลิปฟล็อปต่อร่วมกันหลาย ๆ อัน

 

ชนิดของฟลิปฟล๊อป

Flip Flop เป็น Multivibrator ชนิด Bistable คือ มี Output คงที่ 2 สภาวะ คำว่าคงที่ คือ คงอยู่ในสภาวะใดสภาวะหนึ่งโดยไม่จำกัดเวลาจนกว่าจะมี input เข้ามากระตุ้นอีกครั้ง 

Flip Flop คือ หน่วยความจำประเภทหนึ่ง ที่สามารถเก็บรักษาข้อมูล หรือสภาวะ (state) ทางตรรกไว้ได้ และจะรักษาจนกว่า input เข้าใหม่ และเปลี่ยนสัญญาณ clock จึงจะทำให้ output มีการเปลี่ยนแปลง
 

โดยทั่วไปฟลิปฟล็อปจะประกอบด้วย 4 ประเภท คือ เอสอาร์ฟลิปฟล็อป (RS Flip Flop) ดีฟลิปฟล็อป (D Flip Flop) ทีฟลิปฟล็อป (T Flip Flop) และ เจเคฟลิปฟล็อป (JK Flip Flop)  ดังนี้


1

อาร์เอสฟลิปฟล็อป (R-S flip-flop)


เป็นฟลิปฟล็อปสมมติ เพราะอินพุตแบบอาร์เอสมักเป็น แลตซ์ (Latch) ไม่ใช่ฟลิปฟล็อป ซึ่งจะมีอินพุตสามตัว คือ S (set), R (reset) และ C (clock)

- S ใช้ในการ set ค่าของฟลิปฟล็อป คือ ทำให้ฟลิปฟล็อปมีค่าเป็น 1 ดังนั้นถ้า S=1 และ R=0 แล้ว Q จะเท่ากับ 1

- R ใช้ในการ reset ค่าของฟลิปฟล็อป คือ ทำให้ฟลิปฟล็อปมีค่าเป็น 0 ดังนั้นถ้า R=1 และ S=0 แล้ว Q จะเท่ากับ 0

- ถ้า S และ R เป็น 0 ทั้งคู่ ฟลิปฟล็อปจะคงค่าเดิมไว้

- ถ้า S และ R เป็น 1 ทั้งคู่ ถือเป็นกรณีที่ผิดปรกติ เพราะว่าเอาต์พุตของฟลิปฟล็อปไม่ได้ถูกกำหนดไว้ในกรณีนี้ (ภาวะแข่งขัน)

ดีฟลิปฟล็อป (D flip-flop)

จะมีการทำงานเมื่อถูกกระตุ้นด้วยสัญญาณนาฬิกาหรือ clock (CLK) ซึ่งสัญญาณนาฬิกาจะเปลี่ยนแปลงจาก 0>1>0>1>... เช่นนี้เรื่อยไป

การกระตุ้นด้วยสัญญาณนาฬิกามีสองแบบ

- ขอบขาขึ้น (positive หรือ rising edge) คือ จะมีการเปลี่ยนแปลงจาก 0 เป็น 1

- ขอบขาลง (negative หรือ falling edge) คือ จะมีการเปลี่ยนแปลงจาก 1 เป็น 0

ทีฟลิปฟล็อปหรือท๊อกเกิลฟลิปฟล็อป (T flip-flop หรือ Toggle flip-flop)

จะมีอินพุตสองตัว คือ T (toggle) และ C (clock) อินพุต T ใช้เพื่อ toggle หรือกลับค่า output ของฟลิปฟล็อป

- T มีค่า 1 ค่าของ Q จะถูก toggle นั่นคือกลับค่าจาก 0 เป็น 1 หรือ 1 เป็น 0

- T มีค่า 0 ค่าของ Q จะไม่เปลี่ยนแปลง

เจเคฟลิปฟล็อป (JK flip-flop) จะมีอินพุตสามตัว คือ J, K และ C (clock)

- J ใช้ในการ set ค่าของฟลิปฟล็อป คือ ทำให้ฟลิปฟล็อปมีค่าเป็น 1 ดังนั้นถ้า J=1 และ K=0 แล้ว Q จะเท่ากับ 1

- K ใช้ในการ reset ค่าของฟลิปฟล็อป คือ ทำให้ฟลิปฟล็อปมีค่าเป็น 0
ดังนั้นถ้า K=1 และ J=0 แล้ว Q จะเท่ากับ 0

- ถ้า J และ K เป็น 0 ทั้งคู่ ฟลิปฟล็อปจะคงค่าเดิมไว้ (ถ้าเป็น RS จะไม่เปลี่ยนแปลง)

- ถ้า J และ K เป็น 1 ทั้งคู่ ฟลิปฟล็อปจะกลับค่าเดิม (ถ้าเป็น RS จะไม่ใช้งาน เพราะถือว่าไม่ปกติ)


 

 

เนื้อหาโดย: 9engineer.com (https://9engineer.com/)