Sequential Logic
แบ่งได้เป็น 2 แบบ คือซิงโครนัสและอะซิงโครนัส ส่วนรายละเอียดจะลงลึกไปทีหลัง
Flip - Flop
อุปกรณ์ความจำหรืออุปกรณ์ที่สามารถเก็บลอจิกได้ เป็นอุปกรณ์หลักสำหรับวงจร Sequential LogicSR Flip - Flop
เป็น Flip - Flop ที่ง่ายที่สุดที่ประกอบ Input S และ R และ Output Q และ Q' การต่อวงจรก็นำ NOR หรือ NAND มาต่อ โดย Input แรกจะเป็น S หรือ R ก็ได้ ส่วน Input อีกช่องจะเป็น Output จาก NOR หรือ NAND อีกตัวมาต่อไขว้กัน ทำให้ได้ OUTPUT เป็น Q และ Q'
SR Flip - Flop With NOR Gate
การทำงานของวงจรนี้ขึ้นอยู่กับ Input S และ R ถ้าสัญญาณใดสัญญาณหนึ่งเป็น Logic 1 สัญญาณนั้นจะเป็นตัวกำหนดค่า Output Q' เช่นถ้า S เป็น 1 และ R เป็น 0 ก็เป็นการ Set ให้ Output Q' เป็น 1 แต่ถ้า S เป็น 0 แล้ว R เป็น 1 จะเป็นการ Reset Output Q' เป็น 0 แต่ถ้าเป็น 0 ทั้งคู่ Output Q' จะคงสภาพเดิมไม่เปลี่ยนแปลง เป็นสภาวะที่ใช้จำข้อมูล ส่วนสภาวะสุดท้ายที่เป็น 1 ทั้งคู่ เป็นสภาวะที่ไม่นำมาใช้งานเพราะว่าการทำงานของวงจรจะไม่เหมือนกันเมื่อเปลี่ยน Gate Flip - Flop ดังนั้นจึงไม่สามารถทำนายการทำงานของวงจรได้ เรียกเงื่อนไขนี้ว่า "Invalid Condition"
SR Flip - Flop With NAND Gate
การทำงานเหมือนกันเด้ะ แต่ต่างกันในสภาวะเก็บข้อมูล กรณีที่ใช้ Gate NAND สภาวะข้อมูลไม่เปลี่ยน จะเกิดขึ้นเมื่อ Input S และ R เป็น 1 ทั้งคู่ ส่วนสภาวะ "Invalid" จะเกิดเมื่อ Input เป็น 0 ทั้งคู่
JK Flip - Flop
การทำงานจะขึ้นอยู่กับ Output Q Input J , K และ ขอบสัญญาณขาขึ้นของสัญญาณ CLK ถ้า CLK มี Logic 1 หรือ 0 หรือ ขอบลบ ค่า Q จะคงค่าเดิมไว้ไม่ว่า J และ K จะเป็นอะไรก็ตาม แต่ถ้า CLK เป็นขอบบวก การทำงานจะขึ้นกับ Input J K และค่า Q เดิม เช่นถ้า J เป็น 1 และ K เป็น 0 จะ Set Flip - Flop ทำให้ Q เป็น 1 แต่ถ้า J เป็น 0 และ K เป็น 1 จะเป็นการ Reset Flip - Flop ทำให้ Q เป็น 0 แต่ถ้า J เป็น 0 และ K เป็น 0 Flip - Flop จะอยู่ในสภาวะจำค่าเดิม Q ไม่เปลี่ยน และถ้า J เป็น 1 และ K เป็น 1 Flip - Flop จะอยู่ในสภาวะกลับตัว (Toggle) คือ Q จะเปลี่ยนเป็นค่าตรงข้ามกับค่าเดิม
D Type Flip - Flop
เพื่อแก้ปัญหาสภาวะ "Invalid" ของ SR Flip - Flop เมื่อปรับวงจรตามรูปแล้ว ทำให้ S และ R ไม่มีโอกาสเป็น 0 พร้อมกัน สภาวะ "Invalid" ก็ไม่เกิดขึ้น การทำงานของวงจร สัญญาณ Output Q จะมีค่าเหมือนกับ D
แต่รูปที่นำมานั้นดันมีสัญญาณ CLK มาด้วย เรียก Flip - Flop นี้ว่า D Type Flip - Flop แบบมีสัญญาณควบคุม
T Type Flip - Flopอนึ่งการทำงานของ Flip - Flop ในสภาวะกลับตัว คือ Q เปลี่ยนจากค่าเดิมเป็นค่าตรงข้ามนี้สามารถพิจารณาให้เป็น Flip - Flop อีกแบบหนึ่งได้ เรียกว่า T Type Flip - Flop เป็น Flip - Flop ที่สร้างจาก D Type Flip - Flop และ T Type Flip - Flop ก็สามารถสร้างจาก JK Flip - Flop ได้เช่นกัน
ประโยชน์ทางการ Flip Flop
วงจร Flip Flop สร้างขึ้นมาเพื่อใช้ในการเก็บ Memory ของ Input Logic ที่เข้ามา ดังนั้น ประโยชน์หลักๆของ Flip Flop คือ
1. Digital Counter
การนับของวงจรดิจิตอลนั้นจะแบ่งออกเป็น 2 ประเภท คือ
1.1 Asynchronous Counter
สถานะ Output ของ Flip Flop แต่ละตัวนั้น จะขึ้นอยู่กับสถานะ Output ของ Flip Flop ตัวก่อนหน้า คือ Flip Flop ตัวแรกจะส่งสัญญาน (Plus) จาก Q ไปกระตุ้น (Trigger) ที่ Clk ของ Flip Flop ของตัวที่สอง และ Flip Flop ตัวที่สองก็จะส่งสัญญาณไปกระตุ้น (Trigger) ที่ Clk ของ Flip Flop ของตัวที่สาม ไปเรื่อยๆ ตามขั้นตอนการทำงานของวงจรแบบนี้จะมีลักษณะไหลเป็นระลอก
ข้อดี
- สร้างง่าย
ข้อเสีย
- ประเด็นเรื่องของความเร็ว จากการสะสม Propagation Delay จาก Gate แต่ละตัว ยกตัวอย่าง Flip Flop ตัวนึงใช้เวลาในการทำงาน 50 ns หากมีการใช้ Flip Flop 4 ตัว ต้องใช้เวลาในการทำงานทั้งสิ้น 50 ns * 4 = 200 ns แสดงว่าความถี่สูงสุดในการนับที่ใช้ได้คือ 1/(200*10^-9) = 5 MHz
- Ripple Effect
1.2 Synchronous Counter
การทำงานของวงจรนับที่ความถี่สูงๆ จำเป็นที่ต้องให้ Flip Flop หลายๆตัวต่อกัน ได้รับสัญญาณกระตุ้นไปพร้อมๆกัน เพื่อหลีกเลี่ยงปัญหาที่เกิดจากการหน่วงเวลาของ Flip Flop เป็นวงจรนับที่ Output ของ Flip Flop ที่เปลี่ยนแปลงพร้อมๆกันตามสัญญาณ Clock
Synchronous Counter ประยุกต์อะไรได้บ้าง
- วงจรนับเลข binary 4 bit
- วงจรนับเลขถอยหลัง binary 4 bit
ขอขอบคุณ Ref :: https://th.wikipedia.org/wiki/วงจรนับเลข
2. ประยุกต์เป็นวงจรเช็ครอบการหมุนของมอเตอร์
เป็นวงจรที่ใช้หลอด LED คู่กับ Photo-transistor เพื่อตรวจสอบแสงที่เข้าไปกระทบกับ Photo-transistor ในแต่ละรอบการตกกระทบนั้น ก็จะถูกเก็บไว้เป็น Counter ในแต่ละครั้ง
3. Shift Register
คือ กลุ่มของ Flip Flop ที่ต่อเรียงกันและทำงานร่วมกัน ใช้สำหรับจัดเก็บข้อมูลหรือส่งออกข้อมูลในรูปเลขฐานสอง โดยพื้นฐานเกิดจากการนำ D - Type Flip Flop มาต่อเรียงกัน
Shift Register มีโหมดการทำงานอยู่ 4 โหมด คือ
3.1 Serial - in to Parallel - out (SIPO)
3.2 Serial - in to Serial - out (SISO)
3.3 Parallel - in to Serial - out (PISO)
3.4 Parallel - in to Parallel - out (PIPO)
------------------------------------------------------------------------------------------------------
3.1 Serial - in to Parallel - out (SIPO)
เมื่อนำข้อมูล Input เข้าทีละหลัก แต่นำออก Output พร้อมกัน เรียกว่า Serial - in to Parallel - out
3.2 Serial - in to Serial - out (SISO)
เป็น Shift Register แบบ Serial - in to Serial - out ข้อมูลแบบอนุกรมจะถูกป้อนเข้าที่ Input Serial Data in และข้อมูลอนุกรมออกที่ Output Serial Data out
3.3 Parallel - in to Serial - out (PISO)
เมื่อนำข้อมูล Input เข้าพร้อมกัน แต่นำออกทีละหลัก เรียกว่า Parallel - in to Serial - out
3.4 Parallel - in to Parallel - out (PIPO)
เมื่อนำข้อมูล Input เข้าพร้อมกัน และนำข้อมูลออกที่ Output พร้อมกัน เรียกว่า Parallel - in to Parallel - out
ขอขอบคุณ Ref :: shift-register
------------------------------------------------------------------------------------------------------
Class Work
1. ทดลองต่อ Flip Flop เล่นและต่อวงจร Counter ขึ้นมา
ผลปรากฏว่า ใช้งานได้ตาม Truth Table เป๊ะ
2. ต่อวงจร Shift Register โดยใช้ IC 74HC166 8-bit parallel - in / serial - out Shift Register
พบปัญหา คือ วงจรไม่ทำงาน ตอนแรกไล่เช็คตาม Datasheet แล้วก็ต่อถูกตาม Datasheet ซึ่งตอนหลังก็พบสาเหตุมาดังนี้
1. เผลต่อเป็น Serial in/Serial out วงจรไม่ทำงาน
2. น่าเจ็บใจมาก เสียบ IC ไม่แน่น +++ !!!!! ทำให้วงจรไม่ทำงาน (พอเสียบแล้วต้องมือกดช่วย มันเด้งออกตลอด)
สุดท้ายวงจรก็ใช้งานได้
------------------------------------------------------------------------------------------------------
ปัญหาทางการเรียน
- ไม่เข้าใจในเรื่องของ Synchronous Counter ทำให้ต้องอ่านตำรานอกเพิ่มเพื่อความเข้าใจ
- ยังไม่เห็นประโยชน์ทางด้าน Shift Register มากขึ้น
- ไม่ค่อยเห็น T Type Flip Flop ใช้งานจริงมากนัก
ไม่มีความคิดเห็น:
แสดงความคิดเห็น