วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/slide/4121701z/digital...

26
วงจรนับ Counter Circuits

Upload: others

Post on 03-Feb-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบCounter Circuits

Page 2: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบ

เปนวงจรลอจกทใชนบสญญาณพลสในระบบดจตอล โดยนบออกมาในรปของเลขฐานสอง หรอ รหส BCD

วงจรนบสามารถน าไปประยกตกบงานหลายๆ ดาน เชน วงจรหารสญญาณนาฬกา

ภายในวงจรนบประกอบดวย ฟลปฟลอปและเกต น ามาเรยงตอกบส าหรบนบสญญาณพลส

หากฟลปฟลอปทกตวท างานพรอมๆกนเมอมสญญาณพลสเขามา จะเรยกวา วงจรนบแบบเขาจงหวะ (synchronous)

แตหากมสญญาณเขามา และฟลปฟลอปท างานไมพรอมกนจะเรยกวา วงจรนบแบบไมเขาจงหวะ (Asynchronous)

Page 3: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบเลขฐานสอง

เปนวงจรทคาเอาตพตทไดจะอยในรปของเลขฐานสองตามจ านวนพลสของสญญาณทไปดงรป

โดย เอาตพตทไดจะเปนเลขฐาน 2 จ านวน 2 หลก

จากรปจะเหนวาวงจรนบจะใช jk ฟลปฟลอป ท างานดวยสญญาณขอบขาขน และใหคา output กลบไปกลบมา เมอให input jk เปน ลอจก 1 เพอทจะใหท างานโหมด toggle

Page 4: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบเลขฐานสอง

สญญาณ CLK จะตอกบ ฟลปฟลอปตวแรก สวนสญญาณ ~Q จะตอกบสญญาณกระตนของฟลปฟลอปตวท 2

เมอขอบขาขนของสญญาณ CLK เขามาลกแรก จะท าให Q0 เปนลอจก 1 และ ~Q0 เปนลอจก 0

และเมอมขอบขาขนของสญญาณ CLK เขามา จะท าให Q0 เปนลอจก 0 และ ~Q0 เปนลอจก 1 จงเสมอน ท าให ฟลปฟลอปตวท 2 ไดรบสญญาณขอบขาขน จงท าให Q1 มลอจกเปน 1

ในลกท 3 เมอมสญญาณ CLK เขามาจะท าให Q0 กลบเปนลอจก 1 และ Q1 เปน 1 ตามเดมดวย

ส าหรบลกท 4 คาของ Q0 กลบเปนลอจก 0 สงผลใหมการเปลยนแปลงของ ~Q0 จาก 0 เปน 1 ท าให Q1 เปลยนเปน 0

Page 5: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบเลขฐานสอง

จะเหนไดวา วงจรนบ แบบ 2 บต จะใชฟลปฟลอปจ านวน 2 ตว

สามารถแทนคาได 4 จ านวน ตามตาราง และรป ดานขาง

Page 6: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบแบบ 3 บต

วงจรนบแบบ 3 บตท างานคลายกบวงจรนบแบบ 2 บต แตจะใชฟลปฟลอป จ านวน 3 ตวเรยงตอกนดงวงจร

ใหนกศกษาทดลองเขยน Time Diagram ของวงจรภาพดานลาง

Page 7: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบแบบ 3 บต

ทดลองวาด Time Diagram ของวงจรนบแบบ 3 บต( ขอบขาขน )

Page 8: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบแบบ 3 บต

จากวงจรทผานมา เปนฟลปฟลอปทกระตนดวยของขาขนดงนนจงจ าเปนตองตอกบ เอาพตทเปน ~Q

แตหากใชกบวงจรนบทกระตนดวยขอบขาลงจะตองใชฟลปฟลอปทกระตนดวยของขาลงดงวงจร

ในรปจะใชฟลปฟลอปทมขา S และ R เมอเรมตนการนบ

จะใหขา R เปน 0 เพอใหฟลปฟลอปทกตวมเอาพตเปน

0 และหากเรมการนบจะตองใหขา S และ R เปน 1

ทงค การท างานจะเปนไปตาม Time Diagram ในหนา

ตอไป

Page 9: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบแบบ 3 บต

จาก Time Diagram จะเหนวาวงจรนบจะนบเมอสญญาณพลสทเขามาเปนขอบขาลงและเรมท าการนบ ตงแต 000 ไปจนถง 111 จงครบรอบการนบ แลวจะเรมนบใหม

วงจรนบทผานมาเราจะเรยกวา วงจรนบแบบรปเบล หรอ วงจรนบแบบระลอก เปนวงจรงายทสด ไมซบซอน

วงจรจะท างานไมพรอมกน เมอมสญญาณเขาไปฟลปฟลอปตวหนงจะท าหนาทไปกระตนฟลปฟลอบอกตวหนง

การท างานเชนนเปนวงการการท างานประเภท ไมเขาจงหวะ (Asynchoronus)

Page 10: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบแบบ 3 บต

จาก Time Diagram จะเหนวาวงจรนบจะนบเมอสญญาณพลสทเขามาเปนขอบขาลงและเรมท าการนบ ตงแต 000 ไปจนถง 111 จงครบรอบการนบ แลวจะเรมนบใหม

วงจรนบทผานมาเราจะเรยกวา วงจรนบแบบรปเบล หรอ วงจรนบแบบระลอก เปนวงจรงายทสด ไมซบซอน

วงจรจะท างานไมพรอมกน เมอมสญญาณเขาไปฟลปฟลอปตวหนงจะท าหนาทไปกระตนฟลปฟลอบอกตวหนง

การท างานเชนนเปนวงการการท างานประเภท ไมเขาจงหวะ (Asynchoronus)

Page 11: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบแบบ 3 บต

ขอเสยของวงจรนบแบบไมเขาจงหวะคอ ไมสามารถท างานทความถสงๆ ได เพราะการท างานของฟลปฟลอปในบตสดทาย จะตองรอสญญาณจากฟลปฟลอปกอนหนา จนไดรบสญญาณกระตนและใหคาเอาตพตออกมา เวลาทเสยไปนเราจะเรยกวาเวลาหนวง หนวงเพอให เอาพตเปลยนจากลองจกหนงไปยงอกลอจกหนง 0-> 1 หรอ 1-> 0 ถาเวลาหนวงของการเปลยนจาก 1->0 ใช TPHL แตถา เปลยนจาก 0->1 ใช TPLH

ดงนนหากม ฟลปฟลอบ 3 ตวและมการตอ แบบวงจรนบแบบรปเบล มการเปลยนจาก 011 เปน 100 และให TPHL แตละตวมคาเทากบ 30 ns และ TPLH มคาเทากบ 20 ns จะตองใชเวลาในการเปลยนจาก 011 เปน 100 ทงหมด

TPHL1 + TPHL2 + TPLH3 = 30 + 30 + 20 = 80

Page 12: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบแบบ 3 บต

Page 13: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

ตวอยาง

วงจรนแบบระลอก 4 บต ดงรป น าฟลปฟลอปทท างานดวยการกระตนขอบขาลงมาตอกน ถาฟลปฟลอปแตละตวมเวลาหนวง TPHL และ TPLH เทากบ 10 ns จงค านวณวาความถสงสดทวงจรนจะท างานไดเทากบเทาไรและวาดไดอะแกรมเวลาของวงจรนบแบบไมคดเวลาหนวง

วธท า

Page 14: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบลง

สามารถตอวงจรไดดงรป โดยน าคา ~Q มาเปนคา

เอาพตโดยเรมตนจะเคลยทกฟลปฟลอบจะท าให ~Q เปน 1 และการนบจะเรมจาก 111 ไปจนถง 000 และเรมนบใหม

Page 15: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรมอดลส

วงจรมอดลสเปนวงจรทเมอมสญญาณพลสเขามาทางอนพตเปนจ านวน N ลก วงจรดงกลาวตองกลบมาอยทคาเรมตนใหม

วงจรนบแบบ 3 บตทกลาวมาอาจจะเรยกไดวาวงจร mod-8 ไดเชนกน เพราะเมอสญญาณ มาครบ 8ลก วงจรจะกลบไปนบท 00 ใหม

จากวงจรนบแบบ 3 บต จะเหนวาเมอมมพสมา 8 ลก เราจะได คาบตสดทายใหสญญาณพล ออกมา 1ลก

สามารถใชหารสญญาณนาฬกาทเขามาทางอนพตได เชนถาสญญาณมาดวยความถ 24 kHz เอาตพตทไดจะมคาเทากบ 3 kHz

วงจรมอดลสบางครงจะเรยกวาวงจรหาร

Page 16: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรมอดลส

วงจรมอดลสไมจ าเปนตองนบใหเทากบ 2n เราสามารถออกแบบใหนบแบบอนได เชน วงจรนบแบบ Mod-5 อาจจะใชวงจร Mod-8 ดดแปลงเพมเตม โดยเมอผลลพธมคาเทากบ 5 (101) ใหทกฟลปฟลอปรเซตตวเอง ซงเราจะใชประโยชนจากขา R และ S ของ ฟลปฟลอบท าการรเซตได

Page 17: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

ตวอยาง

จงออกแบบวงจรนบแบบมอดลสเพอนบเลขฐาน 2 ตงแต 0000 ถง 1011

วธท า

หากเราใช ฟลปฟลอป 3 ตวจะไดแค 8 สถาณะดงนนตองใชฟลปฟลอป 4 ตว จากโจทย ตองการใหนบถง 1011 และกลบมาเรมนบ 0000 ใหม ดงนนเมอถง 1011 จะตองให ฟลปฟลอปเครยตวเองเมอพยายามจะนบ 1100

จะเหนวา Q0 และ Q1 มสถาณะเปน 0 อยแลว แต Q2 และ Q3 เปน 1 ทงคเราจงจ าเปนตองท าการเคลยฟลปฟลอบของ FF2 และ FF3 จงวาดวงจรไดดงรป

Page 18: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

ตวอยาง

Page 19: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบแบบไดจงหวะ

วงจรนบแบบไดจงหวะ (Synchronous counter) ฟลปฟลอปทกตวจะท างานทสญญาณกระตนพรอมๆ กน ท าใหวงจรแบบนท างานดวยความเรวสงไดด

แตวงจรนบประเภทนมความซบซอนมากกวาแบบระลอก หากมการออกแบบวงจรแบบ mod-n ใดๆ โดยท n ไมใช 2n จะมความซบซอนมากขน ตวอยางวงจรนบแบบจงหวะแสดงดงรป

Page 20: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบแบบไดจงหวะ 2 บต

จากรปจะเหนวามสญญาณนาฬการทตองการนบถกตอไปยงฟลปฟลอปทกตว และคาของ เอาพตจะไดคาอะไรขนอยกบคาทอยกบ ขา jk ซงแตกตางกบแบบละลอก ขาjk จะอยท 1 ทงค

ตวอยาง ถาคาเอาตพตเรมมคาเปน 00 และมสญญาณพลลกแรกเขามาท FF0 จะได Toggle และใหเอาพตเปน 1

ดงนนขา j-k ของ FF1 จะไดคาเปน 1 ดวย แตคาของ FF1 ยงคงใหเอาพตเปน 0 อย

เมอมลกท 2 เขามาเอาตพตของ FF0 เปลยนจาก 1 เปน 0 และเอาตพตของ FF1 เปลยนจาก 0 เปน 1 เพราะขา jk ของ FF1 เปน 1 อยกอนหนาแลว ท าเชนนไปเรอยๆ จบมาเรม ท 00 ใหม

Page 21: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบไดจงหวะแบบ 3 บต

เชนเดม เมอม 3 บตจ าเปนตองใช ฟลปฟลอบ 3 ตวตอกบดงรป

หากสงเกตจะเหนวา Q1 ทเปนเอาของ FF1 จะ toggle เมอ Q0 เปนลอจก1 ดงนนวงจรของ 2 บตแรกเหมอนกบวงจรนบแบบ 2 บต

สวนเอาพต Q2 ซงจะเปน อนพตของ FF2 จะ Toggle เมอม อนพต 2บตแรกเปนลอจก 1 ทงค

ดงนนเราจะให FF2 อยในสภาวะ Toggle เมอ Q0 และ Q1 เปนลอจก 1 ซงอาจจะน าเอาตพตของ Q0 และ Q1 มา AND กนและตอใหกบ JK ของ FF2

Page 22: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบแบบ 4 บต

ใหนกศกษาทดลองออกแบบวงจรนบแบบ 4 บต ใหสงเกตการเปลยนแปลงของบตในแตละการนบ

Clock Q3 Q2 Q1 Q0

เรมตน 0 0 0 0

1 0 0 0 1

2 0 0 1 0

3 0 0 1 1

4 0 1 0 0

5 0 1 0 1

6 0 1 1 0

7 0 1 1 1

8 1 0 0 0

9 1 0 0 1

10 1 0 1 0

11 1 0 1 1

12 1 1 0 0

13 1 1 0 1

14 1 1 1 0

15 1 1 1 1

16 0 0 0 0

Page 23: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบ BCD แบบไดจงหวะ

การนบแบบ BCD จะเรมนบจาก 0000 ไปจนถง 1001 ทงหมด 10 คา (0-9) ดงนนเมอวงจรนบมาจนถง 1001 และจะขามไป 1010 ฟลปฟลอปตองท าการรเซตเพอเรมตนการนบใหม

ในการออกแบบใหพจารณาดงน เรมจากท าฟลปฟลอปมาจากน 4 ตว โดยใหสญญาณนาฬการทกตวเขาดวยกน

จากตารางพบวา FF0 จะตองท างานแบบ Toggle ตลอดดงนนตอขา jk ของ FF0 ไวเปนลอจก 1

จากตารางพบวา FF1 จะเปลยนเมอ Q0 เปน 1 และ Q3 เปน 0 ดงนนจะตองให FF1 ท างานแบบ Toggle ดงนนเขยนสมการไดดงน

Page 24: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบ BCD แบบไดจงหวะ (ตอ)

จากตารางพจารณา Q2 พบวา FF2 จะเปน Toggle เมอ Q0 =1 และ Q1 = 1 ดงนนเขยนสมการอนพตของ FF2 ไดเปน

จากตารางพจารณา Q3 พบวา FF3 จะเปลยน Toggle เมอ Q0 = 1 ,Q1 = 1 และ Q2 = 1 หรอเปลยนเมอ Q0=1 และ Q3 = 1 ดงนนเขยนเปนสมการอนพตของฟลปฟลอป FF3 ไดเปน

Page 25: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบขนนบลงแบบไดจงหวะ

วงจรนบเลขแบบ 3 บต ถาหากมการควบคมใหมการนบขนและนบลง จ าเปนตองม Input เพอใชในการควบคมทศทางของการนบ

ใหสงเกตคาของ Q0 ไมวาจะมการนบขนหรอละ คาของ Q0 จะเปนสภาวะ Toggle เสมอ ดงนนขา jkของ FF0 จะเปน 1 เสอม

ส าหรบ Q1 จะเปลยนเมอ Q0 มลอจกเปน 1 ส าหรบนบขนและถานบลง Q1 จะเปลยนเมอ Q0 มลอจกเปน 0 ดงนน อนพต JK ของ FF1 มเงอนไขดงน

สวน Q2 ส าหรบการนบขนจะเปลยนเมอ Q0 และ Q1 = 1 สวนการนบลง จะเปลยนเมอ Q0 และ Q1 = 0 ดงนนอนพตของ FF2 เปนไปตามสมการ

Page 26: วงจรนับ - mathcom.uru.ac.thmathcom.uru.ac.th/~beebrain/Slide/4121701Z/Digital Section09.pdf · โดย เอาต์พุตที่ได้จะเป็นเลขฐาน

วงจรนบขนนบลงแบบไดจงหวะ

จากเงอนไขตางๆ ท าใหเราสามารถวาดวงจรเพอใชในการนบขนและลง โดยม สญญาณควบคมทศทางการนบ โดยถาขา UP/Down เปนลอจก 1 จะเปนการนบจน และถาเปน ลอจก 0 จะเปนการนบลง