- เคาน์เตอร์คืออะไร?
- อะซิงโครนัสคืออะไร?
- ตัวนับแบบอะซิงโครนัส
- Asynchronous Truncated Counter และ Decade Counter
- แผนภาพเวลาของเครื่องนับทศวรรษแบบอะซิงโครนัสและตารางความจริง
- การสร้างตัวนับแบบอะซิงโครนัสตัวอย่างและการใช้งาน
- ตัวแบ่งความถี่
- ข้อดีและข้อเสียของ Asynchronous Counter
เคาน์เตอร์คืออะไร?
ตัวนับเป็นอุปกรณ์ที่สามารถนับเหตุการณ์ใดเหตุการณ์หนึ่งโดยพิจารณาจากจำนวนครั้งที่เกิดเหตุการณ์นั้น ๆ ในระบบลอจิกดิจิทัลหรือคอมพิวเตอร์ตัวนับนี้สามารถนับและจัดเก็บจำนวนครั้งที่เกิดเหตุการณ์หรือกระบวนการใด ๆ ขึ้นอยู่กับสัญญาณนาฬิกา ประเภทของตัวนับที่พบมากที่สุดคือวงจรลอจิกดิจิทัลแบบเรียงลำดับที่มีอินพุตนาฬิกาเดียวและเอาต์พุตหลายตัว ผลลัพธ์แสดงถึงเลขฐานสิบสองหรือเลขฐานสองที่เข้ารหัส นาฬิกาแต่ละตัวจะเพิ่มจำนวนหรือลดจำนวน
อะซิงโครนัสคืออะไร?
Asynchronous ย่อมาจากการไม่มีการซิงโครไนซ์ สิ่งที่ไม่ได้มีอยู่หรือเกิดขึ้นในเวลาเดียวกัน ในสตรีมการประมวลผลหรือโทรคมนาคม Asynchronous ย่อมาจากการควบคุมจังหวะการทำงานโดยการส่งพัลส์เฉพาะเมื่อการดำเนินการก่อนหน้านี้เสร็จสิ้นแทนที่จะส่งในช่วงเวลาปกติ
ตัวนับแบบอะซิงโครนัส
ตอนนี้เราเข้าใจแล้วว่าอะไรคือสิ่งที่ ตอบโต้ และความหมายของคำว่า อะซิงโครนัส คืออะไร เคาน์เตอร์ Asynchronous สามารถนับโดยใช้การป้อนข้อมูลนาฬิกา Asynchronous สามารถทำเคาน์เตอร์ได้อย่างง่ายดายโดยใช้รองเท้าแตะ เนื่องจากการนับขึ้นอยู่กับสัญญาณนาฬิกาในกรณีของตัวนับแบบอะซิงโครนัสการเปลี่ยนบิตสถานะจึงถูกจัดเตรียมไว้เป็นสัญญาณนาฬิกาไปยังฟลิปฟล็อปที่ตามมา รองเท้าแตะเหล่านี้เชื่อมต่อกันเป็นชุดและชีพจรนาฬิกาจะกระเพื่อมผ่านตัวนับ เนื่องจากการเต้นของชีพจรนาฬิกามักเรียกว่าตัวนับระลอกคลื่น ตัวนับแบบอะซิงโครนัสสามารถนับสถานะการนับที่เป็นไปได้2 n - 1
Asynchronous Truncated Counter และ Decade Counter
เนื่องจากมีหมายเลขเอาต์พุตสูงสุดสำหรับตัวนับแบบอะซิงโครนัสเช่นMOD-16 ที่มีความละเอียด 4 บิตจึงมีความเป็นไปได้ที่จะใช้ตัวนับแบบอะซิงโครนัสพื้นฐานในการกำหนดค่าที่สถานะการนับจะน้อยกว่าจำนวนเอาต์พุตสูงสุด ตัวนับ Modulo หรือ MOD เป็นหนึ่งในเคาน์เตอร์ประเภทนั้น การกำหนดค่าที่สร้างขึ้นในลักษณะที่ตัวนับจะรีเซ็ตตัวเองเป็นศูนย์ตามค่าที่กำหนดไว้ล่วงหน้าและมีลำดับที่ถูกตัดทอน
ดังนั้นถ้าเคาน์เตอร์ที่มีหมายเลขเฉพาะมติ (n-bit ความละเอียด) นับถึงจะเรียกว่าเป็นเคาน์เตอร์ลำดับเต็มรูปแบบและในทางกลับกันถ้ามันเป็นนับน้อยกว่าจำนวนสูงสุดที่จะเรียกว่าเป็นเคาน์เตอร์ตัดทอน
เพื่อให้ได้ประโยชน์จากอินพุตแบบอะซิงโครนัสในฟลิปฟล็อปตัวนับ Asynchronous Truncated สามารถใช้กับตรรกะแบบผสม
ตัวนับแบบอะซิงโครนัส Modulo 16 สามารถแก้ไขได้โดยใช้ลอจิกเกตเพิ่มเติมและสามารถใช้ในลักษณะที่เอาต์พุตจะให้เอาต์พุตตัวนับเป็นทศวรรษ (หารด้วย 10) ซึ่งมีประโยชน์ในการนับเลขฐานสิบมาตรฐานหรือในวงจรเลขคณิต ประเภทของเคาน์เตอร์นี้เรียกว่าเป็นตัวนับทศวรรษ
Decade Counters ต้องการการรีเซ็ตเป็นศูนย์เมื่อเอาต์พุตถึงค่าทศนิยม 10
ถ้าเรานับ 0-9 (10 ก้าว) เลขฐานสองจะเป็น -
จำนวนนับ | เลขฐานสอง | ค่าทศนิยม |
0 | 0000 | 0 |
1 | 0001 | 1 |
2 | 0010 | 2 |
3 | 0011 | 3 |
4 | 0100 | 4 |
5 | 0101 | 5 |
6 | 0110 | 6 |
7 | 0111 | 7 |
8 | 1,000 | 8 |
9 | 1001 | 9 |
ดังนั้นเมื่อเอาต์พุตถึง1001 (BCD = 9) ตัวนับจะต้องถูกรีเซ็ต ในการรีเซ็ตตัวนับเราต้องป้อนเงื่อนไขนี้กลับไปที่อินพุตรีเซ็ต ตัวนับซึ่งนับ0000 (BCD = 0) ถึง1001 (BCD = 9) เรียกว่าตัวนับเลขฐานสอง BCD หรือรหัสฐานสอง
แผนภาพเวลาของเครื่องนับทศวรรษแบบอะซิงโครนัสและตารางความจริง
ในภาพด้านบนตัวนับแบบอะซิงโครนัสพื้นฐานที่ใช้เป็นการกำหนดค่าตัวนับทศวรรษโดยใช้รองเท้าแตะ JK 4 ตัวและประตู NAND 74LS10D หนึ่งตัว ตัวนับแบบอะซิงโครนัสนับขึ้นไปในแต่ละพัลส์นาฬิกาเริ่มตั้งแต่ 0000 (BCD = 0) ถึง 1001 (BCD = 9) เอาต์พุตฟลิปฟล็อป JK แต่ละตัวจะให้เลขฐานสองและไบนารีออกจะถูกป้อนเข้าในฟลิปฟล็อปถัดไปที่ตามมาเป็นอินพุตนาฬิกา ในผลลัพธ์สุดท้าย 1001 ซึ่งเป็นเลข 9 ในทศนิยมเอาต์พุต D ซึ่งเป็นบิตที่มีนัยสำคัญที่สุดและเอาต์พุต A ซึ่งเป็นบิตที่มีนัยสำคัญน้อยที่สุดทั้งสองอยู่ในลอจิก 1 เอาต์พุตทั้งสองนี้เชื่อมต่อกับอินพุตของ 74LS10D เมื่อได้รับพัลส์นาฬิกาถัดไปเอาต์พุตของ 74LS10D จะเปลี่ยนสถานะจาก Logic High หรือ 1 เป็น Logic Low หรือ 0
ในสถานการณ์เช่นนี้เมื่อ 74LS10D เปลี่ยนเอาต์พุต 74LS73 JK Flip-flops จะได้รับการรีเซ็ตเมื่อเอาต์พุตของเกต NAND เชื่อมต่อกับอินพุต 74LS73 CLEAR เมื่อรีเซ็ตฟลิปฟล็อปเอาต์พุตจาก D ถึง A ทั้งหมดจะกลายเป็น 0000 และเอาต์พุตของเกต NAND จะรีเซ็ตกลับเป็น Logic 1 ด้วยการกำหนดค่าดังกล่าววงจรด้านบนที่แสดงในภาพจะกลายเป็น Modulo-10 หรือตัวนับทศวรรษ
ตารางความจริงของเคาน์เตอร์ทศวรรษที่ปรากฏอยู่ใน table- ถัดไป
นาฬิกา Pulse | ค่าทศนิยม | เอาต์พุต - D | เอาต์พุต - C | เอาต์พุต - B | เอาต์พุต - |
1 | 0 | 0 | 0 | 0 | 0 |
2 | 1 | 0 | 0 | 0 | 1 |
3 | 2 | 0 | 0 | 1 | 0 |
4 | 3 | 0 | 0 | 1 | 1 |
5 | 4 | 0 | 1 | 0 | 0 |
6 | 5 | 0 | 1 | 0 | 1 |
7 | 6 | 0 | 1 | 1 | 0 |
8 | 7 | 0 | 1 | 1 | 1 |
9 | 8 | 1 | 0 | 0 | 0 |
10 | 9 | 1 | 0 | 0 | 1 |
11 | 0 | 0 | 0 | 0 | 0 |
ด้านล่างของภาพจะแสดงแผนภาพเวลาและสถานะ 4 เอาท์พุทสัญญาณนาฬิกา การรีเซ็ตพัลส์จะแสดงในแผนภาพด้วย
การสร้างตัวนับแบบอะซิงโครนัสตัวอย่างและการใช้งาน
เราสามารถแก้ไขรอบการนับสำหรับตัวนับแบบอะซิงโครนัสโดยใช้วิธีการที่ใช้ในการตัดทอนเอาต์พุตตัวนับ สำหรับรอบการนับอื่น ๆ เราสามารถเปลี่ยนการเชื่อมต่ออินพุตข้าม NAND gate หรือเพิ่มการกำหนดค่าลอจิกเกตอื่น ๆ
ที่เรากล่าวก่อนที่โมดูลัสสูงสุดที่สามารถดำเนินการกับ n ตัวเลขของ flip-flop เป็น2 n สำหรับสิ่งนี้หากเราต้องการออกแบบตัวนับแบบอะซิงโครนัสแบบตัดทอนเราควรหากำลังต่ำสุดของสองตัวซึ่งมากกว่าหรือเท่ากับโมดูลัสที่เราต้องการ
ตัวอย่างเช่นหากเราต้องการนับ 0 ถึง 56 หรือ mod - 57 และทำซ้ำจาก 0 จำนวนฟลิปฟล็อปสูงสุดที่ต้องการคือ n = 6 ซึ่งจะให้โมดูลัสสูงสุด 64 หากเราเลือกจำนวนฟลิปฟล็อปน้อยลง โมดูลัสจะไม่เพียงพอที่จะนับตัวเลขตั้งแต่ 0 ถึง 56 หากเราเลือก n = 5 MOD สูงสุดจะเป็น = 32 ซึ่งไม่เพียงพอสำหรับการนับ
เราสามารถเรียงตัวนับระลอกคลื่น 4 บิตสองตัวขึ้นไปและกำหนดค่าแต่ละตัวเป็น " หารด้วย 16"หรือ " หารด้วย 8"เพื่อให้ได้ MOD-128 หรือตัวนับที่ระบุมากกว่า
ในเซ็กเมนต์ 74LS สามารถกำหนดค่า IC 7493 ในลักษณะนี้ได้เช่นถ้าเรากำหนดค่า 7493 เป็นตัวนับ " หารด้วย 16 " และเรียงชิปเซ็ต 7493 อีกตัวเป็นตัวนับ " หารด้วย 8 " เราจะได้ความถี่" หารด้วย 128"ตัวแบ่ง
IC อื่น ๆ เช่น74LS90มีตัวนับหรือตัวแบ่งระลอกที่ตั้งโปรแกรมได้ซึ่งสามารถกำหนดค่าเป็นหารด้วย 2 หารด้วย 3หรือหารด้วย 5หรือชุดค่าผสมอื่น ๆ ได้เช่นกัน
ในทางกลับกัน 74LS390 เป็นอีกหนึ่งทางเลือกที่ยืดหยุ่นซึ่งสามารถใช้สำหรับการหารจำนวนมากด้วยตัวเลขตั้งแต่2 ถึง 50,100และชุดค่าผสมอื่น ๆ เช่นกัน
ตัวแบ่งความถี่
หนึ่งของการใช้ที่ดีที่สุดของเคาน์เตอร์ตรงกันคือการใช้เป็น divider เราสามารถลดความถี่สัญญาณนาฬิกาสูงลงเป็นค่าที่ใช้งานได้และมีเสถียรภาพต่ำกว่านาฬิกาความถี่สูงจริงมาก สิ่งนี้มีประโยชน์มากในกรณีของอุปกรณ์อิเล็กทรอนิกส์ดิจิทัลแอปพลิเคชั่นที่เกี่ยวข้องกับเวลานาฬิกาดิจิตอลเครื่องกำเนิดไฟฟ้าขัดจังหวะ
สมมติว่าเราใช้ IC จับเวลา NE555 แบบคลาสสิกซึ่งเป็น Monostable / Astable Multivibrator ทำงานที่ 260 กิโลเฮิรตซ์และความเสถียรคือ +/- 2% เราสามารถเพิ่มตัวนับระลอกคลื่น 18 บิต“ หารด้วย 2”ได้อย่างง่ายดายและได้เอาต์พุตที่เสถียร 1 Hz ซึ่งสามารถใช้เพื่อสร้างความล่าช้า 1 วินาทีหรือ 1 วินาทีของพัลส์ซึ่งมีประโยชน์สำหรับนาฬิกาดิจิตอล
นี่เป็นวงจรง่ายๆในการสร้างความถี่หรือเวลาที่เสถียรจากแหล่งที่ไม่เสถียรโดยการหารความถี่โดยใช้ตัวนับระลอกคลื่น ออสซิลเลเตอร์คริสตัลที่แม่นยำยิ่งขึ้นสามารถผลิตความถี่สูงที่แม่นยำนอกเหนือจากเครื่องกำเนิดสัญญาณ
ข้อดีและข้อเสียของ Asynchronous Counter
สามารถสร้างเคาน์เตอร์แบบอะซิงโครนัสได้อย่างง่ายดายโดยใช้ฟลิปฟลอป Type D สามารถใช้งานได้โดยใช้วงจรตัวนับ" หารด้วย n " ซึ่งให้ความยืดหยุ่นมากขึ้นในการใช้งานที่เกี่ยวข้องกับช่วงการนับที่มีขนาดใหญ่ขึ้นและตัวนับที่ถูกตัดทอนสามารถสร้างจำนวนโมดูลัสได้
แต่แม้จะมีคุณสมบัติเหล่านั้นเคาน์เตอร์ Asynchronous มีข้อ จำกัด และข้อเสียบางอย่าง
ขณะที่การใช้เคาน์เตอร์ Asynchronous การส่งออก resynchronizing เพิ่มเติม flipflops จำเป็นสำหรับ resynchronizing FLIPFLOPS นอกจากนี้สำหรับการนับลำดับที่ถูกตัดทอนเมื่อไม่เท่ากับจำเป็นต้องใช้ตรรกะของข้อเสนอแนะเพิ่มเติม
เมื่อนับจำนวนบิตจำนวนมากเนื่องจากระบบลูกโซ่ความล่าช้าในการแพร่กระจายตามขั้นตอนต่อเนื่องมีขนาดใหญ่เกินไปซึ่งยากที่จะกำจัดออกไป ในสถานการณ์เช่นนี้ตัวนับซิงโครนัสจะเร็วกว่าและเชื่อถือได้ นอกจากนี้ยังมีข้อผิดพลาดในการนับใน Asynchronous Counter เมื่อใช้ความถี่สัญญาณนาฬิกาสูง