You are on page 1of 34

บทที่

6 ฟลิปฟลอป

ฟลิปฟลอป (Flip flop) หรื อแลตช์ (Latch) เป็ นวงจรอิเล็กทรอนิกส์ที่มีเอาต์พุต


(Output) คงที่อยู่ 2 สถานะที่เป็ นคอมพลีเมนต์ (Complement) ซึ่ งกันและกัน คือ Q และ
Q ซึ่งบางครั้งอาจเรี ยกว่า เป็ นอุปกรณ์ที่มีเสถียรภาพแบบ 2 สถานะ นัน่ คือฟลิปฟลอป 1
ตัว สามารถใช้เก็บค่า 0 หรื อ 1 ได้ เอาต์พุตของฟลิปฟลอปจะคงค่าอยูใ่ นสภาวะอันใด
อันหนึ่ ง จนกว่าจะมีอินพุตพัลส์ (Input pulse) หรื อสัญญาณนาฬิกา (Clock) มากระตุน้
ให้เปลี่ยนสภาวะไป ฟลิปฟลอปได้ถูกนํามาใช้งานในอุปกรณ์ดิจิตอล ทําหน้าที่เสมือน
เป็ นส่ วนของหน่วยความจําในวงจรนับ (Counter) และรี จิสเตอร์ (Register) เป็ นต้น

6.1 วงจรแลตช์

แลตช์ (Latch) คืออุปกรณ์เก็บข้อมูลชัว่ คราวชนิดหนึ่งซึ่งมี 2 สเตตคงที่ (State)


ทั้งนี้ ขอ้ แตกต่างระหว่างแลตช์กบั ฟลิปฟลอปคือ วิธีที่เอาต์พุต (Output) หรื อสเตตของ
วงจรแลตช์น้ ันจะเปลี่ ยนค่าด้วยระดับของสัญญาณการทริ ก (Level-triggered) ขณะที่
เอาต์พตุ ของวงจรฟลิปฟลอปจะเปลี่ยนค่าได้เฉพาะช่วงเวลาที่สญ ั ญาณนาฬิกาเปลี่ยนจาก
1 เป็ น 0 หรื อเปลี่ยนจาก 0 เป็ น 1 เท่านั้น (Edge-triggered)

S-R แลตช์
ส่ วนใหญ่พ้ืนฐานวงจรแลตช์หรื อฟลิปฟลอปสามารถสร้างได้จากเกตแบบนอร์
(NOR) จํานวน 2 ตัว หรื อเกตแบบแนนด์ (NAND) จํานวน 2 ตัว ดังแสดงในรู ปที่ 6.1
และรู ปที่ 6.2 ตามลําดับ จากวงจรจะมีการต่อป้ อนกลับของเอาต์พุตมาเป็ นอินพุตของ
วงจร มีเอาต์พุต 2 สภาวะคือ Q และ Q และมี 2 อินพุต คือเซต (Set: S) และรี เซต
(Reset: R) วงจรที่กล่าวมานี้มีชื่อว่า Direct-coupled S-R ฟลิปฟลอป หรื อ S-R แลตช์

6-1
บทที่ 6 ฟลิปฟลอป

S (Set) Q S Q
อินพุต เอาต์พตุ

R (Reset) Q’ R Q’

(ก) ลอจิกไดอะแกรม (ข) สัญลักษณ์

อินพุต เอาต์พตุ
S R Q Q สภาวะการทํางาน
0 0 Q Q คงค่าเดิม (No change)
1 0 1 0 เซต
0 1 0 1 รี เซต
1 1 0 0 สภาวะที่ไม่ใช้งาน

(ค) ตารางความจริ ง

รู ปที่ 6.1 วงจร S-R แลตช์ที่ใช้เกตแบบนอร์ซ่ ึงอินพุตเป็ นแบบ Active high

ตารางความจริ งของ S-R แลตช์ที่ใช้เกตแบบนอร์ แสดงในรู ปที่ 6.1(ค) แสดงให้


เห็นว่าการออกแบบ S-R แลตช์ที่ใช้เกตแบบนอร์ ได้ให้เอาต์พุตเป็ น Q และ Q ซึ่งเป็ น
คอมพลีเมนต์ซ่ ึ งกันและกัน ตรงตามที่ได้นิยามไว้แต่ตน้ แต่สาํ หรับกรณี ที่อินพุต S, R
เป็ น 11 เอาต์พตุ Q และ Q เป็ น 0 ทั้งคู่ พิจารณาได้ดงั นี้

Q = (R + Q )
Q = (1 + Q ) = 1 =0
Q = (S + Q)
Q = ( 1 + Q) = 1 =0

6-2
บทที่ 6 ฟลิปฟลอป

ดังนั้นกรณี ที่อินพุต S = R = 1 ของวงจร S-R แลตช์ที่ใช้เกตแบบนอร์ น้ ีทาํ ให้ได้


เอาต์พตุ Q = Q = 0 จะถูกหลีกเลี่ยงในการนํามาใช้งาน เช่นเดียวกันนี้วงจร S-R แลตช์ ที่
ใช้เกตแบบแนนด์แสดงในรู ปที่ 6.2 โดยพบว่ากรณี S, R เป็ น 00 จะได้เอาต์พุต Q และ
Q เป็ น 1 ทั้งคู่เช่นกัน ซึ่ งจะต้องหลีกเลี่ยงในการนํามาใช้งานด้วย เรี ยกเป็ นสภาวะที่ไม่
ใช้งาน (Invalid condition)

S’ S Q
อินพุต เอาต์พตุ
R’ R Q’

(ก) ลอจิกไดอะแกรม (ข) สัญลักษณ์

อินพุต เอาต์พตุ
S R Q Q สภาวะการทํางาน
0 0 1 1 สภาวะที่ไม่ใช้งาน
1 0 1 0 เซต
0 1 0 1 รี เซต
1 1 Q Q คงค่าเดิม

(ค) ตารางความจริ ง

รู ปที่ 6.2 วงจร S-R แลตช์ที่ใช้เกตแบบแนนด์ซ่ ึงอินพุตเป็ นแบบ Active low

นอกจากนี้แล้ว S-R แลตช์ที่สร้างด้วยเกตแบบนอร์กบั ที่สร้างด้วยเกตแบบแนนด์


นั้น ยังต้องการอินพุตที่ต่างกันด้วย กล่าวคือ S-R แลตช์ที่สร้างด้วยเกตแบบนอร์ อินพุต
จะเป็ นแบบ Active high ส่ วน S-R แลตช์ที่สร้างด้วยเกตแบบแนนด์อินพุตจะเป็ นแบบ
Active low ซึ่ งถ้าต้องการให้ S-R แลตช์ ที่สร้างมาจากเกตแบบแนนด์มีการทํางาน
เหมือนกับที่สร้างมาจากเกตแบบนอร์ คือมีอินพุตเป็ นแบบ Active high นั้น สามารถทํา
ได้โดยนําอินเวอร์เตอร์มาต่อที่อินพุตเพื่อทําหน้าที่กลับค่า แสดงในรู ปที่ 6.3

6-3
บทที่ 6 ฟลิปฟลอป

(ก) วงจรการต่อ

+5 V Q Q’

14 13 12 11 10 9 8
Vcc

GND
1 2 3 4 5 6 7
R’
S’
S R

(ข) การประยุกต์ใช้ไอซีเบอร์ 7400 ต่อเป็ นวงจร S-R แลตช์

รู ปที่ 6.3 วงจร S-R แลตช์สร้างจากเกตแบบแนนด์ที่เป็ นแบบ Active high

นอกจากนี้ เ พื่ อควบคุ มการทํางานของวงจรแลตช์ เราสามารถปรั บปรุ งให้มี


อินพุตเพิ่มขึ้นได้ดงั แสดงในรู ปที่ 6.4 จากวงจรถ้าอินพุต C เป็ น 0 เอาต์พุต Q จะไม่
เปลี่ยนแปลงไม่ว่า S และ R จะเป็ นลอจิกอะไรก็ตาม ทั้งนี้ ถา้ จะให้เอาต์พุตมีการ
เปลี่ยนแปลงต้องให้ C เป็ น 1 จึงจะทํางานเป็ นวงจรแลตช์ปกติ ข้อควรระวังห้ามเป็ น 1
ทั้ง 3 ตัว

6-4
บทที่ 6 ฟลิปฟลอป

(ก) ลอจิกไดอะแกรม

อินพุต เอาต์พตุ
C S R Qn+1
0 X X คงค่าเดิม
1 0 0 คงค่าเดิม
1 0 1 Q = 0; รี เซต
1 1 0 Q = 1; เซต
1 1 1 สภาวะที่ไม่ใช้งาน

(ข) ตารางความจริ ง เมื่อ X คือสถานะที่ไม่สนใจ (Don’t care condition)

รู ปที่ 6.4 วงจร S-R แลตช์แบบควบคุมอินพุต

D แลตช์
วงจร D แลตช์ ได้ถูกพัฒนามาจาก S-R แลตช์ โดยได้ปรับปรุ งให้อินพุตไม่เป็ น
1 ทั้งคู่ (จากวงจร S-R แลตช์ ในรู ปที่ 6.4) แสดงวงจรดังรู ปที่ 6.5 ในรู ปจะนําอินพุต D
ต่อตรงเข้าที่ขา S และต่อผ่านอินเวอร์เตอร์เป็ น D เพื่อต่อเข้าที่ขา R

6-5
บทที่ 6 ฟลิปฟลอป

เราสามารถใช้ D แลตช์ เป็ นตัวเก็บข้อมูลได้ ซึ่งถ้าขาควบคุม C เป็ น 0 มันจะ


เก็บค่าเดิมไว้ตลอด แต่เมื่อ C เป็ น 1 เอาต์พุตจะมีค่าเหมือนกับอินพุต D ทุกประการ ทํา
ให้มีชื่อเป็ นวงจรแลตช์ทรานส์พาเรนต์ (Transparent latch) เช่น ถ้า D เป็ น 1 เอาต์พุต Q
ในสเตตถัดไป (Next state) ซึ่งแทนด้วย Qn+1 ก็จะเป็ น 1 ด้วยเช่นกัน

(ก) ลอจิกไดอะแกรม

D Q อินพุต เอาต์พตุ
C D Qn+1
อินZfพุต เอาต์พ\8ตุ _K 0 X คงค่าเดิม
1 0 Q = 0; รี เซต
C Q’ 1 1 Q = 1; เซต

(ข) สัญลักษณ์ (ค) ตารางความจริ ง

รู ปที่ 6.5 วงจร D แลตช์

ตัวอย่ างที่ 6.1 จากไดอะแกรมเวลาอินพุตที่กาํ หนดมาให้ของวงจร S-R แลตช์ ใน


รู ปที่ 6.1(ก) จงหาไดอะแกรมเวลาเอาต์พตุ Q และ Q

วิธีทาํ

6-6
บทที่ 6 ฟลิปฟลอป

1
S
0
1
R
0
1
Q เซต รี เซต เซต คงค่าเดิม รี เซต
0
Q’ 1
0 เวลา

ตอบ

ตัวอย่ างที่ 6.2 จากไดอะแกรมเวลาอินพุตที่กาํ หนดมาให้ของวงจร D แลตช์ จงหา


ไดอะแกรมเวลาเอาต์พตุ Q และ Q
วิธีทาํ
1
D
0
1
C
0
1
Q
0
Q’ 1
0
เวลา

ตอบ

6-7
บทที่ 6 ฟลิปฟลอป

6.2 ฟลิปฟลอป

วงจรแลตช์ตามที่ได้กล่าวมา จะทํางานตามระดับของสัญญาณอินพุตที่ป้อนเข้า
มาโดยตรง แต่สําหรั บฟลิ ปฟลอป (Flip-Flop) นั้นจะใช้พลั ส์ สัญญาณนาฬิ กา (Clock
Pulse) ในการเปลี่ยนสถานะ โดยเฉพาะในกรณี ที่ใช้ฟลิปฟลอปต่อร่ วมกันหลายๆ ตัว จะ
ทําให้ฟลิปฟลอปสามารถเปลี่ยนสภาวะพร้อมๆ กันได้เป็ นอย่างดี

พัลส์บวก
1

ขอบขาบวก ขอบขาลบ
หรื อขอบขาขึ้น หรื อขอบขาลง

รู ปที่ 6.6 ประเภทของพัลส์สญ


ั ญาณนาฬิกา

สัญญาณนาฬิกา (Clock: CK) หมายถึงสัญญาณที่มีการเปลี่ยนระดับลอจิกไปมา


จากระดับหนึ่ งไปอีกระดับหนึ่ ง และจะสลับกลับมายังระดับลอจิกเดิมดังแสดงในรู ปที่
6.6 ซึ่ งแบ่งออกได้เป็ น 2 ประเภทใหญ่ๆ คือ สัญญาณพัลส์บวก (Positive pulse) และ
สัญญาณพัลส์ลบ (Negative pulse) ทั้งนี้ สัญญาณพัลส์บวก หมายถึง สัญญาณพัลส์ซ่ ึ ง
ปกติมีระดับลอจิกเป็ น “0” และเมื่อเกิ ดพัลส์จะมีการเปลี่ยนระดับไปยังลอจิ ก “1”
ชัว่ ขณะแล้วกลับมาอยูใ่ นระดับลอจิก “0” ตามเดิม สําหรับสัญญาณพัลส์ลบ หมายถึง
สัญญาณพัลส์ซ่ ึ งปกติมีระดับลอจิกเป็ น “1” และเมื่อเกิดพัลส์จะมีการเปลี่ยนระดับไปยัง
ลอจิก “0” ชัว่ ขณะแล้วกลับมาอยูใ่ นระดับลอจิก “1” เช่นเดิม ทั้งนี้การเปลี่ยนจาก 0 ไป 1
เรี ยกเป็ นขอบขาขึ้นหรื อขอบขาบวก (Positive edge) และการเปลี่ยนจาก 1 ไป 0 เรี ยก
เป็ นขอบขาลงหรื อขอบขาลบ (Negative edge)

6-8
บทที่ 6 ฟลิปฟลอป

สัญญาณนาฬิกาตามที่ได้กล่าวมานี้ ได้ถูกนํามาใช้ในการเปลี่ยนสถานะเอาต์พุต
Q ของฟลิปฟลอป ทั้งนี้ ฟลิปฟลอปสามารถสร้างได้จากทรานซิสเตอร์ (Transistor) หรื อ
วงจรเกต (Gate) โดยในบทนี้ จะกล่าวเฉพาะฟลิปฟลอปที่สร้างจากวงจรเกตเท่านั้นซึ่งมี
4 ประเภท ได้แก่
S-R ฟลิปฟลอป (S-R flip-flop)
T ฟลิปฟลอป (T flip-flop)
D ฟลิปฟลอป (D flip-flop)
J-K ฟลิปฟลอป (J-K flip-flop)

S-R ฟลิปฟลอป
ฟั งก์ชนั ของ S-R ฟลิปฟลอปจะเหมือนกับ S-R แลตช์ ต่างกันที่ S-R ฟลิปฟลอป
จะมีสญั ญาณนาฬิกาแทนด้วย CK จากภายนอกเพื่อควบคุมสเตตถัดไป (Next state) ของ
เอาต์พุตด้วย ในรู ปที่ 6.7 แสดงสัญลักษณ์ของ S-R ฟลิปฟลอป 2 ประเภท คือ S-R ฟลิป
ฟลอปแบบ Active high ที่มีการกระตุน้ ด้วยขอบขาบวกหรื อขอบขาขึ้น (Positive edge-
triggered) และฟลิปฟลอปแบบ Active low คือเป็ นฟลิปฟลอปที่มีการกระตุน้ ด้วยขอบ
ขาลบหรื อขอบขาลง (Negative edge-triggered) ตามลําดับ ในรู ปที่ 6.8(ก) แสดงวงจร
การต่อ S-R ฟลิปฟลอป ที่สร้างมาจากเกตแบบนอร์ ร่วมกับเกตแบบแอนด์พร้อมทั้ง
สัญญาณนาฬิกา โดยมีตารางความจริ งแสดงในตารางที่ 6.1

(ก) แบบกระตุน้ ด้วยขอบขาบวก (ข) แบบกระตุน้ ด้วยขอบขาลบ

รู ปที่ 6.7 สัญลักษณ์ S-R ฟลิปฟลอป 2 ประเภท

6-9
บทที่ 6 ฟลิปฟลอป

(ก) วงจร S-R ฟลิปฟลอปแบบกระตุน้ ด้วยขอบขาขึ้น

(ข) วงจร S-R ฟลิปฟลอปพร้อมขาเคลียร์

S CLR Q
CK
R PR Q’

(ค) สัญลักษณ์ของ S-R ฟลิปฟลอป

รู ปที่ 6.8 วงจร S-R ฟลิปฟลอป

6-10
บทที่ 6 ฟลิปฟลอป

ตารางที่ 6.1 ตารางความจริ งของ S-R ฟลิปฟลอป

อินพุต เอาต์พตุ
CK S R Q Qn+1 สภาวะการทํางาน
0 0
↑ 0 0
1 1
คงค่าเดิม
0 1
↑ 1 0
1 1
เซต
0 0
↑ 0 1
1 0
รี เซต
0 0 สภาวะนี้ตอ้ งหลีกเลี่ยง
↑ 1 1 1 0 เพราะ Qn+1 = 0 ด้วย
0 0 คงค่าเดิม
X X เพราะ CK = 0
1 1

จากที่กล่าวมาแล้วว่า S-R ฟลิปฟลอปจะเปลี่ยนสภาวะของเอาต์พุตตามอินพุต S


และ R พร้อมด้วยสัญญาณนาฬิกา CK แต่ในการใช้งานฟลิปฟลอปนั้นบางครั้งเราอาจ
ต้องการให้เอาต์พุต Q เป็ นลอจิก 0 หรื อ 1 ทันที ซึ่งสามารถทําได้โดยการเพิ่มขาเคลียร์
(Clear: CLR) และพรี เซต (Preset: PR) เข้าไป แสดงการต่อวงจรในรู ปที่ 6.8(ข) ทั้งนี้ ใน
กรณี ที่ตอ้ งการให้เอาต์พตุ Q = 0 ในทันที โดยไม่สนใจว่าอินพุต R, S และ CK เป็ นอะไร
จะสามารถทําได้โดยการป้ อนลอจิก 1 เข้าที่ขา CLR เอาต์พุต Q ก็จะเปลี่ยนเป็ นลอจิก 0
ทันที และในกรณี ที่ตอ้ งการให้เอาต์พุต Q = 1 ในทันทีก็สามารถทําได้โดยป้ อนลอจิก 1
เข้าที่ขา PR ก็จะทําให้เอาต์พตุ Q เป็ นลอจิก 1 ทันที ทั้งนี้ในการทํางานปกติแล้วขาเคลียร์
(CLR) และพรี เซต (PR) จะถูกกําหนดให้มีลอจิกเป็ น 0

6-11
บทที่ 6 ฟลิปฟลอป

ตัวอย่ างที่ 6.3 จงเขียนรู ปคลื่นเอาต์พุต Q ของ S-R ฟลิปฟลอปแบบเกตนอร์ เมื่อ


กําหนดสัญญาณอินพุตมาให้ และ S-R ฟลิปฟลอปเป็ นแบบ
(ก) กระตุน้ ด้วยขอบขาขึ้น
(ข) กระตุน้ ด้วยขอบขาลง

วิธีทาํ (ก)
1
S
0
1
R
0
1
CK
0
1
Q
0 เวลา
รี เซต เซต รี เซต เซต คงค่าเดิม
วิธีทํา
(ข)

ตอบ

6-12
บทที่ 6 ฟลิปฟลอป

Clear (CLR)

J Q
CK

K Q’

Preset (PR)
(ก) วงจร J-K ฟลิปฟลอปพร้อมขาเคลียร์และพรี เซต

J CLR Q
CK
K PR Q’

(ข) สัญลักษณ์ของ J-K ฟลิปฟลอป

รู ปที่ 6.9 J-K ฟลิปฟลอป

J-K ฟลิปฟลอป
J-K ฟลิปฟลอปมีลกั ษณะการทํางานคล้ายกับ S-R ฟลิปฟลอปแต่มีคุณลักษณะ
เพิ่มเติมจาก S-R ฟลิปฟลอป คือสามารถป้ อนค่าอินพุต J และ K ที่เป็ นลอจิก 0 พร้อมกัน
ได้ ซึ่ งจะทําหน้าที่เป็ นท็อกเกิล (Toggle) หรื อก็คือเป็ นการสลับค่าเอาต์พุต จากเดิมเป็ น
ลอจิก 1 สลับให้เป็ นลอจิก 0 หรื อจากเดิมเป็ นลอจิก 0 สลับให้เป็ นลอจิก 1 ทั้งนี้ เรา

6-13
บทที่ 6 ฟลิปฟลอป

สามารถสร้าง J-K ฟลิปฟลอปจาก S-R ฟลิปฟลอปได้โดยการนําเอาต์พุต Q และ Q มา


ต่อเข้ากับเกตแบบแอนด์ที่มี 3 อินพุต จํานวน 2 ตัว แสดงในรู ปที่ 6.9 ทั้งนี้ตารางความ
จริ งของ J-K ฟลิปฟลอปดังกล่าว แสดงในตารางที่ 6.2

ตารางที่ 6.2 ตารางความจริ งของ J-K ฟลิปฟลอป

อินพุต เอาต์พตุ
CK J K Qn+1 สภาวะการทํางาน
↑ 0 0 Qn คงค่าเดิม
↑ 1 0 1 เซต
↑ 0 1 0 รี เซต
↑ 1 1 Qn+1 ท็อกเกิล
X X Qn คงค่าเดิม

ตัวอย่ างที่ 6.4 จงเขียนไดอะแกรมเวลาของรู ปคลื่นเอาต์พุต Q ของ J-K ฟลิปฟลอป


ที่มีการควบคุมขาเคลียร์ (CLR) และพรี เซต (PR)

+5 V PR’

J PR Q
CK’ CK
K CLR Q’

CLR’

6-14
บทที่ 6 ฟลิปฟลอป

ตอบ

และเพื่อความเข้าใจในตารางความจริ งของ J-K ฟลิปฟลอป จึงได้แสดงให้เห็น


การเปลี่ยนแปลงของเอาต์พุตปั จจุบนั Q และเอาต์พุตต่อไป Qn+1 ในแต่ละกรณี ของ
อินพุตที่ต่างกันดังแสดงในตารางที่ 6.3 กล่าวคือทุกครั้งที่มีสัญญาณนาฬิกา (CK) เข้ามา
โดยในตารางความจริ งนี้ ได้อา้ งอิงกับฟลิปฟลอปที่เป็ นแบบกระตุน้ ด้วยขอบขาขึ้น ( )
ทั้งนี้เมื่อมีสญ
ั ญาณนาฬิกาเข้ามาที่ขา CK ของ J-K ฟลิปฟลอป ซึ่งถ้าในขณะนั้นอินพุต J
= 0 และ K = 0 เอาต์พุต Q จะไม่มีการเปลี่ยนแปลงไม่ว่าเอาต์พุตเดิมจะอยูใ่ นสภาวะ
ลอจิกใดก็ตาม อีกกรณี หนึ่ง ถ้าอินพุต J = 0 และ K = 1 เอาต์พุต Q จะเป็ น 0 ไม่ว่า
เอาต์พุตเดิมจะเป็ นอะไรก็ตาม และสําหรับกรณี ที่อินพุต J = 1 และ K = 1 เอาต์พุต Q จะ
เปลี่ยนสภาวะเป็ นตรงกันข้ามหรื อเรี ยกว่าท็อกเกิล โดยสภาวะนี้ จะมีฟลิปฟลอปเฉพาะ
มีชื่อเรี ยกว่า T ฟลิปฟลอปซึ่ งจะได้กล่าวต่อไป และเพื่อความเข้าใจที่ดีข้ ึนให้ดูตวั อย่างที่
6.5 – 6.6 และผลการจําลองในรู ปที่ 6.10

6-15
บทที่ 6 ฟลิปฟลอป

ตารางที่ 6.3 การเปลี่ยนแปลงของเอาต์พตุ Q และต่อไป Qn+1 กรณี อินพุตต่างกัน


อินพุต เอาต์พตุ
CK J K Q Qn+1 สภาวะการทํางาน
0 0
↑ 0 0
1 1
คงค่าเดิม
0 1
↑ 1 0
1 1
เซต
0 0
↑ 0 1
1 0
รี เซต
0 1
↑ 1 1
1 0
ท็อกเกิล
0 0 คงค่าเดิมเพราะไม่มี
X X สัญญาณนาฬิกา (CK)
1 1

ตัวอย่ างที่ 6.5 จงเขียนรู ปคลื่นเอาต์พุต Q ของ J-K ฟลิปฟลอปแบบกระตุน้ ด้วยขอบ


ขาลง เมื่อกําหนดสัญญาณอินพุตมาให้
วิธีทาํ
1
J
0
1
K
0
1
CK
0
1
Q
0 เวลา
ท็อกเกิล คงค่าเดิม รี เซต เซต เซต
ตอบ

6-16
บทที่ 6 ฟลิปฟลอป

รู ปที่ 6.10 ตัวอย่างของวงจร J-K ฟลิปฟลอปแบบกระตุน้ ด้วยขอบขาลง


และผลการจําลอง

6-17
บทที่ 6 ฟลิปฟลอป

ตัวอย่ างที่ 6.6 จงเขียนรู ปคลื่นเอาต์พุต Q และ Q ของ J-K ฟลิปฟลอปแบบกระตุน้


ด้วยขอบขาขึ้น เมื่อกําหนดสัญญาณอินพุตมาให้

วิธีทาํ
1
J
0
1
K
0
1
CK
0
1
Q
0
Q’ 1
0
เวลา
ตอบ

D ฟลิปฟลอป
เป็ นฟลิปฟลอปที่มี 2 อินพุตคือ สัญญาณข้อมูล (Data) กับสัญญาณนาฬิกา โดย
เอาต์พุตที่ได้จะเหมือนกับอินพุต จึงเรี ยกเป็ นดาต้าฟลิปฟลอฟ (Data flip-flop หรื อ D
ฟลิปฟลอป) ซึ่ งมีท้ งั D ฟลิปฟลอปแบบกระตุน้ ด้วยขอบขาขึ้นและ D ฟลิปฟลอปแบบ
กระตุน้ ด้วยขอบขาลง วิธีการสร้าง D ฟลิปฟลอปสามารถทําได้ง่าย ด้วยการเพิ่มเกต
แบบน็อตจํานวน 1 ตัว ต่อเพิ่มเข้าไปในวงจร S-R ฟลิปฟลอป แสดงการต่อวงจรในรู ปที่
6.11(ก) ซึ่ งการต่อวงจรในลักษณะดังกล่าวทําให้อินพุต S และ R มีสภาวะลอจิกที่
ตรงกันข้ามตลอด นอกจากนี้ แล้วยังสามารถสร้างได้จาก J-K ฟลิปฟลอปด้วย แสดงใน
รู ปที่ 6.11(ข) ทั้งนี้ สัญลักษณ์และตารางความจริ งของ D ฟลิปฟลอปแสดงในรู ปที่
6.11(ค) และ 6.11(ง) ตามลําดับ

6-18
บทที่ 6 ฟลิปฟลอป

(ก) สร้างจากวงจร S-R ฟลิปฟลอป

(ข) สร้างจากวงจร J-K ฟลิปฟลอป

D Q อินพุต เอาต์พตุ
CK D Qn+1
CK ↑ 0 0
↑ 1 1
Q’ 0 X คงค่าเดิม

(ค) สัญลักษณ์ของ D ฟลิปฟลอป (ง) ตารางความจริ งของ D ฟลิปฟลอป

รู ปที่ 6.11 วงจร D ฟลิปฟลอป

6-19
บทที่ 6 ฟลิปฟลอป

ตัวอย่ างที่ 6.7 จงหารู ปคลื่นเอาต์พุต Q และ Q ของ D ฟลิปฟลอปแบบกระตุน้ ด้วย


ขอบขาขึ้น เมื่อกําหนดสัญญาณอินพุตมาให้
วิธีทาํ
1
D
0
1
CK
0

1
Q
0
Q’ 1
0
เวลา
ตอบ

ตัวอย่ างที่ 6.8 จงหารู ปคลื่นเอาต์พุต Q ของ D ฟลิปฟลอปแบบกระตุน้ ด้วยขอบขา


ขึ้น เมื่อกําหนดสัญญาณอินพุตมาให้
วิธีทาํ

ตอบ

6-20
บทที่ 6 ฟลิปฟลอป

ในการใช้งานมากที่ สุดของ D ฟลิ ปฟลอป ซึ่ งเอาต์พุต Q จะมี ค่าเดี ยวกันกับ


อินพุต D เท่านั้นภายใต้การควบคุมด้วยสัญญาณนาฬิกา ตัวอย่างหนึ่ งของการนําไปใช้
งานแสดงในรู ปที่ 6.12 โดยเอาต์พุต X, Y และ Z จากวงจรลอจิกคอมไบเนชันจะถูกถ่าย
โอน (Transfer) ไปยังฟลิปฟลอป QA, QB และ QC ตามลําดับ สําหรับเก็บค่าไว้ ทั้งนี้ฟลิป
ฟลอปแต่ละตัวจะเก็บค่าเหล่านี้ ไว้เพื่อการประมวลผลต่อไป ซึ่ งตัวอย่างวงจรการถ่าย
โอนข้อมูลฐานสองแบบขนาน 3 บิตนี้ จะทําให้เอาต์พุต X, Y แล Z ถูกถ่ายโอนอย่าง
พร้อมกัน

D QA QA = X*

CK

X QA’

วงจรลอจิก Y QB = Y*
คอมไบเนชัน D QB
Z
CK
QB’

D QC QC = Z*
1
0 CK
สัญญาณนาฬิกา QC’

รู ปที่ 6.12 วงจรการถ่ายโอนข้อมูลฐานสองแบบขนานโดยใช้ D ฟลิปฟลอป


(หมายเหตุ * หมายถึง หลังจากที่มีสญ
ั ญาณนาฬิกาเข้ามาแล้ว)

6-21
บทที่ 6 ฟลิปฟลอป

T ฟลิปฟลอป
เป็ นฟลิปฟลอปที่มีการทํางานเป็ นแบบท็อกเกิล (Toggle หรื อ T ฟลิปฟลอป)
การทํางานของ T ฟลิปฟลอป คือจะเปลี่ยนสภาวะทุกครั้งที่มีสัญญาณนาฬิกาเข้ามาที่ขา
T เช่น สภาวะปั จจุบนั ของเอาต์พุต Qn เป็ น 0 เมื่อมีพลั ส์สัญญาณนาฬิกาเข้ามา จะทําให้
เอาต์พตุ Qn+1 เปลี่ยนสภาวะจาก 0 เป็ น 1 และถ้ามีพลั ส์สญ ั ญาณนาฬิกาเข้ามาอีก เอาต์พุต
ก็จะเปลี่ยนสภาวะจาก 1 เป็ น 0 หรื อกล่าวได้ว่าเมื่อมีพลั ส์สัญญาณนาฬิกาเข้ามาที่ขา T
จะทําให้เอาต์พุต Q เปลี่ยนสภาวะเป็ นตรงกันข้ามทุกครั้ง T ฟลิปฟลอปสามารถแบ่งได้
เป็ น T ฟลิปฟลอปแบบกระตุน้ ด้วยขอบขาขึ้น และ T ฟลิปฟลอปแบบกระตุน้ ด้วยขอบ
ขาลง สัญลักษณ์และตารางความจริ งของ T ฟลิปฟลอปแสดงในรู ปที่ 6.13

R Q
CK
S Q’

(ก) สร้างจากวงจร S-R ฟลิปฟลอป (ข) สัญลักษณ์ T ฟลิปฟลอป

อินพุต เอาต์พตุ
CK Qn+1
↑ หรื อ ↓ Qn ตรงข้าม
Qn คงค่าเดิม
(ค) ตารางความจริ งของ T ฟลิปฟลอป

รู ปที่ 6.13 T ฟลิปฟลอป

6-22
บทที่ 6 ฟลิปฟลอป

(ก) วงจรหารความถี่โดยใช้ T ฟลิปฟลอป

1
CK
0
1
QC
0
1
QB 0
1
QA
0
เวลา
(ข) ไดอะแกรมเวลาของผลการหาร

รู ปที่ 6.14 การประยุกต์ใช้งานของ T ฟลิปฟลอป

การประยุกต์ใช้งาน T ฟลิปฟลอปแสดงในรู ปที่ 6.14(ก) ซึ่ งแสดงการนําเอา T


ฟลิปฟลอปแบบกระตุน้ ด้วยขอบขาลงมาต่อพ่วงกัน 3 ตัว โดยมีสัญญาณนาฬิกา CK
ป้ อนโดยตรงให้กบั TC แล้วใช้เอาต์พตุ QC เป็ นสัญญาณนาฬิกาป้ อนให้กบั TB ได้เอาต์พตุ
QB นําไปเป็ นสัญญาณนาฬิกาป้ อนให้กบั TA เพื่อให้ได้เอาต์พุต QA ทั้งนี้ ไดอะแกรมเวลา
ของสัญญาณนาฬิ กา และสัญญาณเอาต์พุตของแต่ละฟลิ ปฟลอปที่ ได้ แสดงในรู ปที่
6.14(ข) โดยพบว่าสัญญาณไดอะแกรมเวลาที่ได้จากเอาต์พุต QC, QB และ QA มีความถี่

6-23
บทที่ 6 ฟลิปฟลอป

ของสัญญาณที่แตกต่างกัน นัน่ คือในแต่ละความถี่เอาต์พุต (Output frequency) ที่ได้จะ


เป็ นการหารความถี่ของสัญญาณ (นาฬิกา) อินพุตด้วย 2 นัน่ เอง ถ้าสมมุติว่าความถี่ของ
สัญญาณนาฬิกา (Clock frequency) เท่ากับ 800 Hz จะได้ความถี่เอาต์พุตของ QC =
สัญญาณนาฬิกา 2 = 800 2 = 400 Hz และได้ความถี่เอาต์พุตของ QB = QC 2 =
400 2 = 200 Hz และได้ความถี่เอาต์พุตของ QA = QB 2 = 200 2 = 100 Hz หรื อ
สรุ ปได้เป็ น

QC = สัญญาณนาฬิกา 2
QB = สัญญาณนาฬิกา 4
QA = สัญญาณนาฬิกา 8

T J
Q
CK

K Q’

(ก) วงจรการสร้าง T ฟลิปฟลอปจาก J-K ฟลิปฟลอป

(ข) สัญลักษณ์

รู ปที่ 6.15 T ฟลิปฟลอปที่สร้างจาก J-K ฟลิปฟลอป

6-24
บทที่ 6 ฟลิปฟลอป

รู ปที่ 6.16 ผลการจําลองวงจร J-K ฟลิปฟลอปที่ทาํ หน้าที่เป็ น T ฟลิปฟลอป


สําหรับประยุกต์ใช้เป็ นวงจรหารความถี่

6-25
บทที่ 6 ฟลิปฟลอป

เราสามารถนําเอาฟลิปฟลอปแบบอื่นๆ มาดัดแปลงให้เป็ น T ฟลิปฟลอปได้


เช่น สามารถใช้ J-K ฟลิปฟลอปให้เป็ น T ฟลิปฟลอปได้ ดังแสดงวงจรในรู ปที่ 6.15 ใน
รู ปที่ 6.16 แสดงผลการจําลองของวงจร J-K ฟลิปฟลอปที่ทาํ หน้าที่เป็ น T ฟลิปฟลอป
สําหรับประยุกต์ใช้เป็ นวงจรหารความถี่

รู ปที่ 6.17 โครงสร้างวงจรของ D ฟลิปฟลอปให้ทาํ หน้าที่เป็ น T ฟลิปฟลอป


และผลการจําลอง

6-26
บทที่ 6 ฟลิปฟลอป

นอกจากนี้ยงั สามารถนํา D ฟลิปฟลอปให้ทาํ หน้าที่เดียวกันกับ T ฟลิปฟลอปได้


แสดงการต่อวงจรในรู ปที่ 6.17 พร้อมทั้งผลการจําลอง ซึ่งจากวงจรหลังจากที่มีสัญญาณ
นาฬิกา (CK) เข้ามา จะทําให้เอาต์พุตถัดไป Qn+1 = D (จากตารางความจริ งของ D ฟลิป
ฟลอป) แต่จากวงจรได้นาํ Q ไปใช้งาน จึงได้ Qn+1 = Qn และนัน่ ก็คือ T ฟลิปฟลอป
นัน่ เอง

(ก) โครงสร้างวงจรของ J-K ฟลิปฟลอปแบบมาสเตอร์/สเลฟ

J Q
CK M/S
K Q’

(ข) สัญลักษณ์ของ J-K ฟลิปฟลอปแบบมาสเตอร์/สเลฟ

รู ปที่ 6.18 J-K ฟลิปฟลอปแบบมาสเตอร์/สเลฟ

6.3 J-K ฟลิปฟลอปแบบมาสเตอร์ /สเลฟ

J-K ฟลิปฟลอปแบบมาสเตอร์ /สเลฟ (Master/Slave J-K flip flop) เป็ นฟลิป


ฟลอปที่มีการเปลี่ ยนสภาวะ เมื่ อพัลส์ สัญญาณนาฬิ กาเปลี่ยนสภาวะแล้วกลับมาเป็ น

6-27
บทที่ 6 ฟลิปฟลอป

สภาวะเดิมใหม่หรื อที่เวลาครบ 1 รอบ (Cycle) นัน่ เอง ซึ่ งต่างกับ J-K ฟลิปฟลอปแบบ
ธรรมดาตรงที่ว่า J-K ฟลิปฟลอปนั้นสนใจเฉพาะขอบของพัลส์สัญญาณนาฬิกาเท่านั้น
แต่ J-K ฟลิปฟลอปแบบมาสเตอร์ /สเลฟ ต้องรอจนกว่าจะครบเต็ม 1 รอบก่อนจึงจะมี
การเปลี่ยนสภาวะ รู ปที่ 6.18 แสดงโครงสร้างวงจรของ J-K ฟลิปฟลอปแบบมาสเตอร์/
สเลฟ และเพื่อความเข้าใจยิง่ ขึ้นให้ดูตวั อย่างที่ 6.9 และผลการจําลองในรู ปที่ 6.19

ตัวอย่ างที่ 6.9 จงหารู ปคลื่นเอาต์พุต Q ของ J-K ฟลิปฟลอปแบบมาสเตอร์ /สเลฟ


เมื่อกําหนดสัญญาณอินพุตมาให้
วิธีทาํ

1
J
0
1
K
0
1
CK
0
1
Q
0 เวลา
เซต รี เซต เซต เซต รี เซต

ตอบ

นอกจากนี้ยงั สามารถสร้าง D ฟลิปฟลอปแบบมาสเตอร์/สเลฟได้อีกด้วย โดยนํา


D ฟลิปฟลอป 2 ตัว และอินเวอร์ เตอร์ 1 ตัวมาต่อกัน ดังรู ปที่ 6.20 เมื่อ D ฟลิปฟลอปตัว
แรกเป็ นมาสเตอร์ตวั ที่สองเป็ นสเลฟ และไม่ตอ้ งใช้เกตแบบน็อตก็ได้ ถ้ากรณี ใช้ D ฟลิป
ฟลอปแบบกระตุน้ ด้วยขอบขาลงเป็ นสเลฟ ซึ่ งการทํางานของ D ฟลิ ปฟลอปแบบ
มาสเตอร์ /สเลฟนี้ จะเปลี่ยนแปลงเอาต์พุต Q เมื่อวงจรทํางานที่ขอบขาลงของสัญญาณ
นาฬิกา

6-28
บทที่ 6 ฟลิปฟลอป

รู ปที่ 6.19 ผลการจําลอง J-K ฟลิปฟลอปแบบมาสเตอร์/สเลฟ

6-29
บทที่ 6 ฟลิปฟลอป

รู ปที่ 6.20 D ฟลิปฟลอปแบบมาสเตอร์/สเลฟ

6.4 ฟลิปฟลอปประเภทอืน่ ๆ

เนื่องจากการผลิตเกตที่ประหยัดและมีประสิ ทธิภาพนั้น D ฟลิปฟลอปแบบทริ ก


หรื อกระตุน้ ที่ขอบขา (Edge-triggered) มักจะถูกนํามาผลิตมากที่สุด เพราะมันสามารถ
นํามาดัดแปลงให้เป็ นฟลิปฟลอปประเภทอื่นได้ ซึ่งฟลิปฟลอป 2 ประเภทที่นาํ มาใช้งาน
บ่อยที่สุดคือ J-K ฟลิปฟลอปและ T ฟลิปฟลอป แสดงการต่อวงจรในรู ปที่ 6.21 และรู ป
ที่ 6.22 ตามลําดับ

รู ปที่ 6.21 วงจร D ฟลิปฟลอปเมื่อสร้างให้เป็ น J-K ฟลิปฟลอป

6-30
บทที่ 6 ฟลิปฟลอป

รู ปที่ 6.22 วงจร T ฟลิปฟลอปที่สร้างมาจาก D ฟลิปฟลอปและผลการจําลอง

6-31
บทที่ 6 ฟลิปฟลอป

ส่ วนใหญ่ J-K ฟลิปฟลอปถูกนํามาใช้งาน 3 สภาวะคือเซตให้เป็ น 1 รี เซตให้


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

D = JQ + K Q

สําหรับ T ฟลิปฟลอปเป็ นคอมพลีเมนต์ฟลิปฟลอป สร้างโดยนําอินพุต J-K ต่อ


พ่วงกัน ทั้งนี้เมื่อกําหนดให้ T = 0 (J = K = 0) เอาต์พตุ จะคงค่าเดิม แต่เมื่อ T = 1 (J = K =
1) ขอบของสัญญาณนาฬิกาจะสัง่ สลับเอาต์พตุ ทั้งนี้ส่วนมากแล้วเราจะใช้ T ฟลิปฟลอป
ในวงจรนับฐานสอง (Binary counter) นอกจากนี้ เรายังสามารถนํา D ฟลิปฟลอปมา
สร้างเป็ น T ฟลิปฟลอปได้ดงั รู ปที่ 6.22 ที่มีสมการเป็ น

D = T Q = TQ + T Q

แบบฝึ กหัดท้ ายบทที่ 6

6.1 จงออกแบบวงจรหารความถี่ลง 8 เท่า โดยใช้ S-R ฟลิปฟลอป และ T ฟลิป


ฟลอป
6.2 จงออกแบบวงจรหารความถี่ลง 16 เท่า โดยใช้ D ฟลิปฟลอป และ J-K ฟลิป
ฟลอป
6.3 จงเขียนไดอะแกรมเวลาของเอาต์พุต Q ของ J-K ฟลิปฟลอป เมื่อ J-K ฟลิป
ฟลอปเป็ นแบบกระตุน้ ด้วยขอบขาขึ้น ( ) และกระตุน้ ด้วยขอบขาลง ( )
(กําหนดให้เอาต์พตุ ปั จจุบนั ของ J-K ฟลิปฟลอปเป็ น 1)

6-32
บทที่ 6 ฟลิปฟลอป

1
CK
0
J Q
1
J CK
0
1 K Q’
K
0

6.4 จากวงจรการต่อในไอซีเบอร์ 555 ซึ่งใช้สาํ หรับสร้างสัญญาณนาฬิกา ให้สืบค้น


ข้อมูลของการนําไอซีเบอร์ดงั กล่าวไปใช้งาน

+Vcc

R1 (4)(8)
(7) RESET Vcc
DISCH (3) 1 . 44
(6) 555 OUT f
R1 2 R 2 C1
R2 THRESH
(2) TRIG CONT (5)
C1 GND C2
(1) 0.01 F

รู ปที่ 6.23 ไอซี 555 สําหรับสร้างสัญญาณนาฬิกา

6-33
บทที่ 6 ฟลิปฟลอป

6.5 จงเขียนไดอะแกรมเวลาที่ตาํ แหน่ งอินพุต K และเอาต์พุต Y ของ J-K ฟลิป


ฟลอป เมื่อกําหนดอินพุต A, B และ C มาให้ เมื่อเอาต์พุตปั จจุบนั ของ Q เป็ น
ลอจิก “1”

CK

6-34

You might also like