JK-FlipFlop

จากวิกิพีเดีย สารานุกรมเสรี

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

JK-FlipFlop

J-K ฟลิปฟลอป จะทำโดยนำ R-S ฟลิปฟลอปและเพิ่มวงจรลอจิกเข้าไปบางส่วนนอกจากนี้ J-K ฟลิปฟลอปยังเป็นฟลิปฟลอปที่สามารถนำไปสร้างเป็นฟลิปฟลอปประเภทอื่น ๆ ได้อีกด้วย

ในรูปที่1 จะนำเอาเกดแบบ AND สองตัวมาต่อกับ R-S ฟลิปฟลอปแบบใช้สัญญาณกระตุ้นโดยนำเอาต์พุต Q และ Q- มาป้อนกลับให้เกตแต่ละตัว การป้อนกลับนี้จะทำให้สภาวะที่ Q และ Q- มีค่าเท่ากันนั้นหายไป วงจรนี้จะเรียกว่า J-K ฟลิปฟลอป โดยมีสัญญาณเข้าสองขาคือ J และ K

รูปที่ 1 วงจรและสัญลักษณ์ของ JK-FlipFlop
รูปที่ 1 วงจรและสัญลักษณ์ของ JK-FlipFlop

ฟลิปฟลอปตามรูป เมื่อสัญญาณกระตุ้น CLK เป็นลอจิก "1" จะเกิดการทำงาน ถ้าเป็นลอจิก "0" จะอยู่ในสภาวะแลตช์ข้อมูล จากรูปจะพบอินพุต J และ K จะมีค่าเป็นไปได้ทั้งหมด 4 รูปแบบ โดยพิจารณาได้ดังต่อไปนี้ (ดูที่รูปประกอบ) แบบแรก ถ้า J = "0" และ K = "0" กรณีนี้จะทำให้ขา S และ R ของ R-S ฟลิปฟลอปเป็นลอจิก "0" ทั้งคู่ ทำให้ฟลิปฟลอปอยู่ในสภาวะคงค่าข้อมูล(latch) โดย Q และ Q- จะเก็บค่าเดิมเอาไว้ แบบที่สอง ถ้า J = "0" และ K = "1" กรณีนี้ขา S จะเป็น "0" ถ้าภาวะเดิมของฟลิปฟลอปมี Q = "1" และ Q- = "0" จะทำให้อินพุต R เป็น "1" ดังนั้น S = "0" และ R = "1" หมายความว่าฟลิปฟลอปอยู่ในสถานะล้างค่า(reset) และถ้าภาวะเดิมของฟลิปฟลอปมี Q = "0" และ Q- = "1" จะทำให้ขา R เป็น "0" ดังนั้น เมื่อ S = "0" (J = "0")ฟลิปฟลอปจะคงค่า์ข้อมูล(latch) ทำให้ Q = "0" และ Q- = "1" ตามเดิม สรุปได้ว่า ถ้า J = "0" และ K = "1" จะทำให้ J-K ฟลิปฟลอป อยู่ในสภาวะถูกล้างค่า(reset) แบบที่สาม ถ้า J = "1" และ K = "0" กรณีนี้อาศัยหลักการวิเคราะห์ตามแบบที่สอง จะพบว่าจะทำให้ฟลิปฟลอปอยู่ในสภาวะตั้งค่า(set) แบบที่สี่ ถ้า J = "1" และ K = "1" กรณีนี้ถ้าภาวะเดิม Q = "1" และ Q- = "0" ทำให้อินพุต S เป็น "0" และ R เป็น "1" จะทำให้ฟลิปฟลอปถูกล้างค่า(reset) โดย Q จะเปลี่ยนเป็นลอจิก "0" ถ้าภาวะเดิม Q = "0" และ Q- = "1" ทำให้อินพุต S เป็น "1" และ R เป็น "0" จะทำให้ฟลิปฟลอปถูกตั้งค่าใหม่(set) โดย Q จะเป็นลอจิก "1" ดังนั้นสรุปได้ว่าถ้า J = "1" และ K = "1" เมื่อมีสัญญาณพัลส์เข้ามา เอาต์พุตของฟลิปฟลอปจะเปลี่ยนเป็นค่าตรงกันข้ามจากสภาวะเดิม เราเรียกการเปลี่ยนแปลงนี้ว่า Toggle Action หรือการกลับค่าของสัญญาณ การทำงานของ J-K ฟลิปฟลอป เมื่อมีสัญญาณกระตุ้นเข้ามาสามารถสรุปได้ดังตารางต่อไปนี้

รูปที่ 2 ตารางแสดงสถานะของสัญญาณต่างของ JK-Flipflop
รูปที่ 2 ตารางแสดงสถานะของสัญญาณต่างของ JK-Flipflop

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

รูปที่ 3 JK-FlipFlop แบบ  Master-Slave ที่กระตุ้นด้วยลอจิกบวก
รูปที่ 3 JK-FlipFlop แบบ Master-Slave ที่กระตุ้นด้วยลอจิกบวก

จากรูป จะพบว่าถ้าให้สัญญาณควบคุมเป็น "1" จะทำให้เกตแบบ AND ตัวที่ 1 และ 2 ส่งข้อมูลจาก J,K เข้าไปใน Master และขณะนั้นตัว Slave จะอยู่ในสภาวะคงค่าข้อมูล(latch) แต่ถ้าสัญญาณควบคุมเป็น "0" จะทำให้ตัว Master อยู่ในสภาวะคงค่าข้อมูล ส่วนตัว Slave จะรับข้อมูลจาก Q และ Q- ของ Master เข้ามา และทำงานตามที่ตัว Master ได้คงค่าข้อมูลเอาไว้ สำหรับสัญลักษณ์ของ Master –Slave J-K ฟลิปฟลอป จะเหมือนกับ J-K ฟลิปฟลอป ธรรมดา

รูปที่ 4 การทำงานของ  Master-Slave
รูปที่ 4 การทำงานของ Master-Slave

J-K ฟลิปฟลอปแบบกระตุ้นด้วยขอบของสัญญาณ ฟลิปฟลอปประเภทนี้ถ้ามีข้อมูลเข้ามาทางขา J และ K เอาต์พุตจะเปลี่ยนแปลงเมื่อมีสัญญาณเข้ามาทาง Cp (เปลี่ยนจากลอจิก "1" เป็นลอจิก "0" หรือเปลี่ยนจากลอจิก "0" เป็นลอจิก "1")สัญลักษณ์ของ J-K ฟลิปฟลอปแบบกระตุ้นด้วยขอบขาขึ้นและขาลงแสดงได้ดังรูป

รูปที่ 5 สัญลักษณ์ของ JK-FlipFlop ที่กระตุ้นด้วยขอบบวกและขอบลบ
รูปที่ 5 สัญลักษณ์ของ JK-FlipFlop ที่กระตุ้นด้วยขอบบวกและขอบลบ

ในรูป (ก) ค่าเอาต์พุต Q ของฟลิปฟลอปจะเปลี่ยนแปลงเมื่อมีขอบขาขึ้นเข้ามาหรืออินพุต Cp เปลี่ยนจากลอจิก "0" เป็นลอจิก "1" ส่วนรูป(ข) จะเป็นการกระตุ้นด้วยขอบขาลง เอาต์พุต Q จะเปลี่ยนแปลงเมื่ออินพุต Cp เปลี่ยนจากลอจิก "1" เป็นลอจิก "0" ในขาของไอซีประเภทนี้จะเขียนลาเบลเป็น Cp การทำงานของ J-K ฟลิปฟลอปที่กระตุ้นด้วยขอบขาลงแสดงได้ดังรูป (ข)

รูปที่ 6(ก)และ 6(ข) ฟังก์ชันการทำงานของฟลิปฟลอปที่กระตุ้นด้วยขอบขาลง
รูปที่ 6(ก)และ 6(ข) ฟังก์ชันการทำงานของฟลิปฟลอปที่กระตุ้นด้วยขอบขาลง

ไอซี J-K ฟลิปฟลอป

ไอซีเบอร์ 7476 และ 74LS76 เป็นไอซี J-K ฟลิปฟลอปที่นิยมใช้กันมาก โดยภายในไอซีจะประกอบด้วย J-K ฟลิปฟลอปสองตัว และมีขาอินพุตอะซิงโครนัสสองขา (RD และ SD) ขาอินพุตซิงโครนัสสามขา (Cp , J , K) ไอซีเบอร์ 7476 จะกระตุ้นด้วยขอบขาขึ้น และภายในฟลิปฟลอปแต่ละตัวจะมีโครงสร้างแบบ Master – Slave ส่วนเบอร์ 74LS76 จะกระตุ้นด้วยขอบขาลง ดังรูป เป็นสัญลักษณ์และลักษณะขาของ 74LS76 ในรูป (ก) และค่าในตารางจะเห็นว่า ขาอินพุตอะซิงโครนัส RD และ SD จะแอกทีฟลอจิก "0" โดยถ้าขา SD ถูกเซตเป็นลอจิก "0" จะทำให้เอาต์พุต Q เป็นลอจิก "1" และถ้าขา RD เป็นลอจิก "0" จะทำให้ฟลิปฟลอปถูกรีเซตเอาต์พุต Q จะเป็นลอจิก "0"

รูปที่ 8 สัญลักษณ์ทางลอจิกของฟลิปฟลอปและลักษณะขาของไอซี 74LS76
รูปที่ 8 สัญลักษณ์ทางลอจิกของฟลิปฟลอปและลักษณะขาของไอซี 74LS76
รูปที่ 9 สัญลักษณ์ทางลอจิกของฟลิปฟลอปและลักษณะขาของไอซี 74LS76
รูปที่ 9 สัญลักษณ์ทางลอจิกของฟลิปฟลอปและลักษณะขาของไอซี 74LS76

ในการใช้งานแบบซิงโครนัสจะใช้ขาอินพุต J , K และ Cp และให้ลอจิก "1" กับขาอะซิงโครนัส RD และ SD โดยอินพุต J-K จะถูกอ่านเข้าไปในฟลิปฟลอปหลังจากที่ขอบขาลงเข้ามายัง Cp เป็นเวลา 20 ns ดังนั้นในการใช้งานเราต้องอินพุตข้อมูลกับ J-K ก่อนเป็นเวลา 20 ns เนื่องจากเวลาหน่วงภายในฟลิปฟลอปเอง

ดึงข้อมูลจาก "http://th.wikipedia.org../../../j/k/-/JK-FlipFlop_ef53.html".
ภาษาอื่น