19
Jan

D latch คืออะไร?

มาเรียนรู้กันว่า D latch คืออะไร

D latch คืออะไร?

D latch เป็นวงจรดิจิทัลประเภทหนึ่งที่สามารถเก็บข้อมูลได้ 1 บิตด้วยอินพุต 1 ตัว (D สำหรับข้อมูล/ความล่าช้า) และสัญญาณเปิดใช้งาน (CLK หรือ EN) เอาต์พุตของแลตช์จะตามหลังอินพุต D เมื่อ CLK สูง และยังคงเท่าเดิมเมื่อ CLK ต่ำ อาจถือได้ว่าเป็นเซลล์หน่วยความจำพื้นฐานที่สามารถตั้งค่าหรือรีเซ็ตได้ด้วยการป้อนข้อมูล

พิน D จากพิน SR

สามารถออกแบบ Delay Latch (D-Latch) ได้โดยใช้กลอนประตู SR พร้อมอินเวอร์เตอร์ (NOT gate) ที่เชื่อมต่อระหว่างอินพุตเปิดใช้งาน ซึ่งทำให้สามารถใช้งานอินพุต D (ข้อมูล) ได้หนึ่งรายการ มันช่วยให้แน่ใจว่าในเวลาเดียวกัน อินพุตทั้งสอง นั่นคือ S และ R จะไม่เท่ากับ 1 เลย ดังนั้นจึงหลีกเลี่ยงสถานะต้องห้ามในแลตช์ SR พิน D เป็นพินที่สำคัญและพบได้ทั่วไปที่สุดในบรรดาพินนาฬิกาอื่นๆ เนื่องจากต้องใช้ชิ้นส่วนน้อยที่สุดและมีหลักการทำงานที่เรียบง่ายมาก

เป็นไปได้ที่จะสร้างพิน D โดยใช้พิน SR ทำได้โดยเชื่อมต่ออินพุต D เข้ากับอินพุต Set (S) ไม่ใช่ D เข้ากับอินพุต Reset (R) และใช้สัญญาณนาฬิกาเพื่อเปิดใช้งานอินพุต Set และ Reset พร้อมกันโดยใช้เกต AND การกำหนดค่านี้จะช่วยให้แน่ใจว่าเมื่อสัญญาณนาฬิกาทำงาน อินพุต D จะถูกส่งไปยังเอาต์พุตของแลตช์ ซึ่งทำให้เกิดแลตช์ D อย่างมีประสิทธิภาพ เมื่ออินพุตนาฬิกาต่ำ แลตช์ SR จะอยู่ในสถานะยึดและรักษาค่าที่โหลดไว้ก่อนหน้านี้

ขา D จากอินเวอร์เตอร์ซีรีส์

รูปที่ 2: อินเวอร์เตอร์หันเข้าหากันเหมือนหมุด

การสร้าง D-pin จากพิน SR ต้องใช้ชิ้นส่วนเพิ่มเติม ดังนั้นจึงมีอีกวิธีหนึ่งในการสร้าง D-pin ที่ใช้กันอย่างแพร่หลายในอุตสาหกรรมอิเล็กทรอนิกส์

ในรูปที่ 2(a) อินเวอร์เตอร์แบบแบ็คทูแบ็คที่แสดงนี้สามารถจัดเก็บข้อมูลได้ 1 บิต อย่างไรก็ตาม หากไม่มีการแก้ไขใด ๆ ก็ไม่มีทางที่จะเปลี่ยนแปลงข้อมูลได้ เพื่อทำความเข้าใจเรื่องนี้ ให้ถือว่าในรูปที่ 2(b) แลตช์ได้จัดเก็บตรรกะ 1 ไว้ที่เอาต์พุตอย่างใดอย่างหนึ่ง

ในรูปที่ 2(c) เพื่อเปลี่ยนตรรกะ สวิตช์จะถูกใช้กับเกตของอินเวอร์เตอร์ตัวที่สอง เราจะเรียกสวิตช์นี้ว่าสวิตช์ข้อมูล สวิตช์ข้อมูลนี้กำลังพยายามบังคับค่าจาก 0 เป็น 1 ที่พอร์ตอินเวอร์เตอร์ตัวที่สอง อย่างไรก็ตาม อินเวอร์เตอร์ตัวแรกกำลังพยายามรักษาลอจิก 0 ไว้ที่โหนดเดียวกัน และสวิตช์กำลังบังคับให้เป็นลอจิก 1 ดังนั้นจึงมีการโต้แย้งที่ชัดเจน สวิตช์อินเวอร์เตอร์ตัวแรกและ NMOS สร้างเส้นทางความต้านทานต่ำมากจากแหล่งจ่ายไฟไปยังกราวด์ ซึ่งอาจส่งผลให้เกิดกระแสไฟฟ้าขนาดใหญ่

ในรูปที่ 2(d) เพื่อขัดจังหวะเส้นทางกระแสไฟฟ้า สวิตช์จะถูกแทรกระหว่างเอาต์พุตของอินเวอร์เตอร์ตัวแรกและเกตของอินเวอร์เตอร์ตัวที่สอง ดังนั้นจะต้องถอดสวิตช์นี้ออกก่อนแล้วจึงเชื่อมต่อสวิตช์ข้อมูล

รูปที่ 3: การปรับเปลี่ยนสลักแบบอินเวอร์เตอร์แบบแบ็คทูแบ็คให้เป็นสลักแบบ D ที่สามารถใช้งานได้

เราได้เห็นในรูปที่ 2 แล้วว่าข้อมูลสามารถโหลดลงในแลตช์ได้อย่างไรโดยอาศัยอินเวอร์เตอร์แบบแบ็คทูแบ็ค เราจะเพิ่มอินเวอร์เตอร์อีกตัวหนึ่งก่อนสวิตช์ข้อมูลดังแสดงในรูปที่ 3 ในรูปที่ 3 สวิตช์ข้อมูลแสดงโดย TG2 TG ย่อมาจาก Transmission Gate Switch วงจรสมบูรณ์ของแลตช์ D แสดงอยู่ในรูปที่ 3 (ขวา)

D latch ตาม MUX (มัลติเพล็กเซอร์)

รูปที่ 4: D latch ที่ใช้มัลติเพล็กเซอร์

อีกวิธีหนึ่งในการทำความเข้าใจต้นกำเนิดของ D latch คือการคิดว่ามันเป็นมัลติเพล็กเซอร์ เอาท์พุตของมัลติเพล็กเซอร์ 2 x 1 สามารถป้อนกลับไปยังอินพุตตัวใดตัวหนึ่งได้ (CLK=0) อินพุตอื่น (CLK=1) อาจเป็นอินพุต D วงจรภายในจะมีลักษณะคล้ายกับวงจรอินเวอร์เตอร์แบบแบ็คทูแบ็ค

ตารางความจริงของแลตช์ D

ตารางการกระตุ้นของพิน D ระบุไว้ข้างต้น D คืออินพุต Q คือสถานะปัจจุบัน Qn + 1 คือสถานะเอาต์พุตถัดไป Qn+1 จะเป็น 0 เสมอเมื่อ D เป็น 0 และ Qn+1 จะเป็น 1 เสมอเมื่อ D เป็น 1 โดยไม่คำนึงถึงสถานะปัจจุบันของฟลิปฟล็อป X หมายความว่าไม่สนใจ

แลตช์ D เรียกอีกอย่างหนึ่งว่าแลตช์โปร่งใส เนื่องจากเมื่อ CLK สูง เอาต์พุต Q จะโปร่งใสต่ออินพุต D ซึ่งหมายความว่าการเปลี่ยนแปลงใดๆ ใน D จะสะท้อนไปยัง Q ทันที อย่างไรก็ตาม นั่นยังหมายความอีกด้วยว่าข้อผิดพลาดใดๆ ที่อินพุต D จะปรากฏที่เอาต์พุตระหว่างช่วง CLK สูง ซึ่งอาจทำให้เกิดข้อผิดพลาดหรือความขัดข้องได้

D Flip-Flop คืออะไร?

เพื่อหลีกเลี่ยงปัญหาการทำงานผิดปกติของตัวล็อก D ที่ทริกเกอร์ระดับ เราสามารถใช้ฟลิปฟล็อป D อื่นได้ ฟลิปฟล็อป AD เป็นวงจรที่อัปเดตเอาต์พุตเฉพาะที่ขอบ (เพิ่มขึ้นหรือลดลง) ของสัญญาณนาฬิกาเท่านั้น แทนที่จะอัปเดตที่ระดับ (สูงหรือต่ำ) ของสัญญาณนาฬิกา วิธีนี้จะช่วยให้แน่ใจว่าเอาต์พุต Q จะเปลี่ยนแปลงเฉพาะในเวลาที่แยกจากกันและคาดเดาได้เท่านั้น การเปลี่ยนแปลงสัญญาณทั้งหมดเกิดขึ้นในสถานะคงที่ของสัญญาณนาฬิกา ซึ่งอาจเกิดข้อผิดพลาดได้ ดังนั้นขอบนาฬิกาคือเวลาที่ดีที่สุดในการจับและล็อคอินพุตครั้งสุดท้าย

ฟลิปฟล็อป D (หรือดีเลย์) ทำหน้าที่เป็นองค์ประกอบหน่วยความจำอิเล็กทรอนิกส์ เนื่องจากเอาต์พุตจะถูกเก็บรักษาไว้ เว้นแต่จะมีการปรับเปลี่ยนโดยตั้งใจโดยสัญญาณนาฬิกาขอบขาขึ้น ฟลิปฟล็อปนี้ยังใช้ในการหน่วงเวลาการเปลี่ยนแปลงในสัญญาณเอาต์พุต (Q) จนกระทั่งถึงขอบขาขึ้นถัดไปของสัญญาณอินพุตการจับเวลาสัญญาณนาฬิกา

โครงสร้างของ D Flip-Flop (Master-Slave)

รูปที่ 5: ขอบด้านลบจะกระตุ้น D Flip-Flop

สามารถสร้างฟลิปฟล็อป AD ได้โดยเชื่อมต่อพิน D สองพินแบบอนุกรมโดยมีสัญญาณนาฬิกากลับด้าน (ดังแสดงในรูปที่ 5) พินแรกเรียกว่าพินหลักและพินที่สองเรียกว่าพินสเลฟ พินหลักจะเริ่มต้นที่ D เมื่อ CLK มีค่าสูงและส่งต่อไปยังพินสเลฟ CLK มีค่าต่ำ ตอนนี้ข้อผิดพลาดใดๆ ที่อินพุตจะไม่ส่งผลต่อเอาท์พุตของสเลฟ เนื่องจากแลตช์หลักถูกปิดใช้งาน สิ่งนี้จะเห็นได้เมื่อตัวล็อคกำลังอัปเดตเอาต์พุต Q บนขอบตกของนาฬิกาและยึดไว้จนกระทั่งถึงขอบตกครั้งต่อไปของนาฬิกา

รูปที่ 6: ขอบบวกจะเปิดใช้งาน D Flip-Flop

สามารถสร้างฟลิปฟล็อป D ที่ทริกเกอร์ขอบบวกได้โดยการเชื่อมต่ออินเวอร์เตอร์อื่นหลังจาก CLK หรือโดยการจัดเรียงอินเวอร์เตอร์ที่มีอยู่ใหม่ (แสดงในรูปที่ 6)

D Flip-Flop ใช้ SR Flip-Flop หรือ latch

สามารถสร้าง D flip-flop ได้โดยใช้ SR Flip-Flop โดยเชื่อมต่อเกต NOT จากพิน SET เข้ากับพิน RESET ตามที่แสดงในรูปด้านบน วิธีนี้ช่วยหลีกเลี่ยงสถานะต้องห้ามในฟลิปฟล็อป SR และช่วยให้แน่ใจว่าอินพุต S และ R จะตรงกันข้ามกันเสมอ แม้ว่านี่จะเป็นวิธีสร้าง D Flip-Flop จาก SR Flip-Flop แต่จำนวนเกตที่จำเป็นจะมากกว่าโครงสร้างมาสเตอร์-สเลฟที่ใช้ MUX

ฟลิปฟล็อปของทรานซิสเตอร์คลาส D

รูปที่ 7: แผนภาพระดับทรานซิสเตอร์ของ D Flip-Flop

ไดอะแกรมระดับทรานซิสเตอร์ของ D Flip-Flop แบบทริกเกอร์ที่ขอบแสดงอยู่ในรูปที่ 7 โดยใช้แลตช์แบบเกต (รูปที่ 4) เพื่อสร้าง D Flip-Flop (รูปที่ 7) นี่เป็นเวอร์ชันยอดนิยมที่สุดของ D flip-flop ที่ผลิตในเชิงพาณิชย์ สามารถเพิ่มอินพุตเพิ่มเติม เช่น PRESET (PRE) และ CLEAR (CLR) สำหรับฟังก์ชันเพิ่มเติมได้

รูปที่ 8: แผนผังภายในของวงจรรวม 74HC74 จาก Texas Instruments (ที่มา - Texas Instruments Inc.)

ไดอะแกรมระดับทรานซิสเตอร์ของวงจรรวม 74HC74 เชิงพาณิชย์จาก Texas Instruments แสดงอยู่ในรูปที่ 8 ไดอะแกรมนี้คล้ายกับไดอะแกรมที่แสดงในรูปที่ 7 โดยมีอินพุตเพิ่มเติม เช่น PRE และ CLR อินพุต PRE ระดับต่ำทำงานอยู่ที่นี่ นั่นคือ เมื่อ PRE = 1 ข้อมูลที่เก็บไว้ในแลตช์จะเป็น 1 ส่งผลให้เอาต์พุต Q = 1 ซึ่งจะใช้ในการตั้งค่าเงื่อนไขเริ่มต้นสำหรับฟลิปฟล็อป หากต้องการให้ PRE ส่งผลต่อสถานะภายใน ไม่จำเป็นต้องรอขอบสัญญาณนาฬิกา CLR จะล้างสถานะภายในและตั้งค่าเอาต์พุตเป็น 0 ซึ่งยังไม่ขึ้นอยู่กับขอบสัญญาณนาฬิกาด้วย

การประยุกต์ใช้งานของ D Flip-Flop

  1. ฟลิปฟล็อป D มีความหลากหลายมากในระบบดิจิทัล มีบทบาทในวงจรหน่วยความจำ การสร้างรีจิสเตอร์ เคาน์เตอร์ และการพัฒนาระบบซิงโครนัส ใช้ในการจัดเก็บข้อมูล ช่วยให้สามารถกำหนดขนาดรีจิสเตอร์ได้อย่างยืดหยุ่น นับเหตุการณ์ได้ และช่วยออกแบบระบบแบบซิงโครนัส
  2. D Flip Flops ทำหน้าที่เป็นส่วนประกอบพื้นฐานในการสร้างรีจิสเตอร์กะ เมื่อ D Flip Flop จำนวน 8 ตัวเชื่อมโยงกันแบบต่อเนื่อง เช่น สามารถเก็บข้อมูลได้ 1 ไบต์ (8 บิต) หลังจากรอบสัญญาณนาฬิกา 8 รอบ
  3. การสร้างวงจรตัวแบ่งพื้นฐานเกี่ยวข้องกับการเชื่อมโยงเอาต์พุตที่ไม่ใช่ Q ของ D Flip Flop กลับไปยังอินพุต D การกำหนดค่านี้ส่งผลให้เอาต์พุต D เปลี่ยนสถานะที่ความถี่ครึ่งหนึ่งของสัญญาณนาฬิกา โดยการเชื่อมต่อแบบต่อเนื่องของฟลิปฟล็อป D และการออกแบบเกตตรรกะเชิงผสมภายนอกอย่างพิถีพิถัน จึงสามารถสร้างตัวจับเวลาถอยหลังได้

May 26, 2025

D latch คืออะไร?

มาเรียนรู้กันว่า D latch คืออะไร

นักเขียนบทความ
by 
นักเขียนบทความ
D latch คืออะไร?

D latch คืออะไร?

มาเรียนรู้กันว่า D latch คืออะไร

D latch เป็นวงจรดิจิทัลประเภทหนึ่งที่สามารถเก็บข้อมูลได้ 1 บิตด้วยอินพุต 1 ตัว (D สำหรับข้อมูล/ความล่าช้า) และสัญญาณเปิดใช้งาน (CLK หรือ EN) เอาต์พุตของแลตช์จะตามหลังอินพุต D เมื่อ CLK สูง และยังคงเท่าเดิมเมื่อ CLK ต่ำ อาจถือได้ว่าเป็นเซลล์หน่วยความจำพื้นฐานที่สามารถตั้งค่าหรือรีเซ็ตได้ด้วยการป้อนข้อมูล

พิน D จากพิน SR

สามารถออกแบบ Delay Latch (D-Latch) ได้โดยใช้กลอนประตู SR พร้อมอินเวอร์เตอร์ (NOT gate) ที่เชื่อมต่อระหว่างอินพุตเปิดใช้งาน ซึ่งทำให้สามารถใช้งานอินพุต D (ข้อมูล) ได้หนึ่งรายการ มันช่วยให้แน่ใจว่าในเวลาเดียวกัน อินพุตทั้งสอง นั่นคือ S และ R จะไม่เท่ากับ 1 เลย ดังนั้นจึงหลีกเลี่ยงสถานะต้องห้ามในแลตช์ SR พิน D เป็นพินที่สำคัญและพบได้ทั่วไปที่สุดในบรรดาพินนาฬิกาอื่นๆ เนื่องจากต้องใช้ชิ้นส่วนน้อยที่สุดและมีหลักการทำงานที่เรียบง่ายมาก

เป็นไปได้ที่จะสร้างพิน D โดยใช้พิน SR ทำได้โดยเชื่อมต่ออินพุต D เข้ากับอินพุต Set (S) ไม่ใช่ D เข้ากับอินพุต Reset (R) และใช้สัญญาณนาฬิกาเพื่อเปิดใช้งานอินพุต Set และ Reset พร้อมกันโดยใช้เกต AND การกำหนดค่านี้จะช่วยให้แน่ใจว่าเมื่อสัญญาณนาฬิกาทำงาน อินพุต D จะถูกส่งไปยังเอาต์พุตของแลตช์ ซึ่งทำให้เกิดแลตช์ D อย่างมีประสิทธิภาพ เมื่ออินพุตนาฬิกาต่ำ แลตช์ SR จะอยู่ในสถานะยึดและรักษาค่าที่โหลดไว้ก่อนหน้านี้

ขา D จากอินเวอร์เตอร์ซีรีส์

รูปที่ 2: อินเวอร์เตอร์หันเข้าหากันเหมือนหมุด

การสร้าง D-pin จากพิน SR ต้องใช้ชิ้นส่วนเพิ่มเติม ดังนั้นจึงมีอีกวิธีหนึ่งในการสร้าง D-pin ที่ใช้กันอย่างแพร่หลายในอุตสาหกรรมอิเล็กทรอนิกส์

ในรูปที่ 2(a) อินเวอร์เตอร์แบบแบ็คทูแบ็คที่แสดงนี้สามารถจัดเก็บข้อมูลได้ 1 บิต อย่างไรก็ตาม หากไม่มีการแก้ไขใด ๆ ก็ไม่มีทางที่จะเปลี่ยนแปลงข้อมูลได้ เพื่อทำความเข้าใจเรื่องนี้ ให้ถือว่าในรูปที่ 2(b) แลตช์ได้จัดเก็บตรรกะ 1 ไว้ที่เอาต์พุตอย่างใดอย่างหนึ่ง

ในรูปที่ 2(c) เพื่อเปลี่ยนตรรกะ สวิตช์จะถูกใช้กับเกตของอินเวอร์เตอร์ตัวที่สอง เราจะเรียกสวิตช์นี้ว่าสวิตช์ข้อมูล สวิตช์ข้อมูลนี้กำลังพยายามบังคับค่าจาก 0 เป็น 1 ที่พอร์ตอินเวอร์เตอร์ตัวที่สอง อย่างไรก็ตาม อินเวอร์เตอร์ตัวแรกกำลังพยายามรักษาลอจิก 0 ไว้ที่โหนดเดียวกัน และสวิตช์กำลังบังคับให้เป็นลอจิก 1 ดังนั้นจึงมีการโต้แย้งที่ชัดเจน สวิตช์อินเวอร์เตอร์ตัวแรกและ NMOS สร้างเส้นทางความต้านทานต่ำมากจากแหล่งจ่ายไฟไปยังกราวด์ ซึ่งอาจส่งผลให้เกิดกระแสไฟฟ้าขนาดใหญ่

ในรูปที่ 2(d) เพื่อขัดจังหวะเส้นทางกระแสไฟฟ้า สวิตช์จะถูกแทรกระหว่างเอาต์พุตของอินเวอร์เตอร์ตัวแรกและเกตของอินเวอร์เตอร์ตัวที่สอง ดังนั้นจะต้องถอดสวิตช์นี้ออกก่อนแล้วจึงเชื่อมต่อสวิตช์ข้อมูล

รูปที่ 3: การปรับเปลี่ยนสลักแบบอินเวอร์เตอร์แบบแบ็คทูแบ็คให้เป็นสลักแบบ D ที่สามารถใช้งานได้

เราได้เห็นในรูปที่ 2 แล้วว่าข้อมูลสามารถโหลดลงในแลตช์ได้อย่างไรโดยอาศัยอินเวอร์เตอร์แบบแบ็คทูแบ็ค เราจะเพิ่มอินเวอร์เตอร์อีกตัวหนึ่งก่อนสวิตช์ข้อมูลดังแสดงในรูปที่ 3 ในรูปที่ 3 สวิตช์ข้อมูลแสดงโดย TG2 TG ย่อมาจาก Transmission Gate Switch วงจรสมบูรณ์ของแลตช์ D แสดงอยู่ในรูปที่ 3 (ขวา)

D latch ตาม MUX (มัลติเพล็กเซอร์)

รูปที่ 4: D latch ที่ใช้มัลติเพล็กเซอร์

อีกวิธีหนึ่งในการทำความเข้าใจต้นกำเนิดของ D latch คือการคิดว่ามันเป็นมัลติเพล็กเซอร์ เอาท์พุตของมัลติเพล็กเซอร์ 2 x 1 สามารถป้อนกลับไปยังอินพุตตัวใดตัวหนึ่งได้ (CLK=0) อินพุตอื่น (CLK=1) อาจเป็นอินพุต D วงจรภายในจะมีลักษณะคล้ายกับวงจรอินเวอร์เตอร์แบบแบ็คทูแบ็ค

ตารางความจริงของแลตช์ D

ตารางการกระตุ้นของพิน D ระบุไว้ข้างต้น D คืออินพุต Q คือสถานะปัจจุบัน Qn + 1 คือสถานะเอาต์พุตถัดไป Qn+1 จะเป็น 0 เสมอเมื่อ D เป็น 0 และ Qn+1 จะเป็น 1 เสมอเมื่อ D เป็น 1 โดยไม่คำนึงถึงสถานะปัจจุบันของฟลิปฟล็อป X หมายความว่าไม่สนใจ

แลตช์ D เรียกอีกอย่างหนึ่งว่าแลตช์โปร่งใส เนื่องจากเมื่อ CLK สูง เอาต์พุต Q จะโปร่งใสต่ออินพุต D ซึ่งหมายความว่าการเปลี่ยนแปลงใดๆ ใน D จะสะท้อนไปยัง Q ทันที อย่างไรก็ตาม นั่นยังหมายความอีกด้วยว่าข้อผิดพลาดใดๆ ที่อินพุต D จะปรากฏที่เอาต์พุตระหว่างช่วง CLK สูง ซึ่งอาจทำให้เกิดข้อผิดพลาดหรือความขัดข้องได้

D Flip-Flop คืออะไร?

เพื่อหลีกเลี่ยงปัญหาการทำงานผิดปกติของตัวล็อก D ที่ทริกเกอร์ระดับ เราสามารถใช้ฟลิปฟล็อป D อื่นได้ ฟลิปฟล็อป AD เป็นวงจรที่อัปเดตเอาต์พุตเฉพาะที่ขอบ (เพิ่มขึ้นหรือลดลง) ของสัญญาณนาฬิกาเท่านั้น แทนที่จะอัปเดตที่ระดับ (สูงหรือต่ำ) ของสัญญาณนาฬิกา วิธีนี้จะช่วยให้แน่ใจว่าเอาต์พุต Q จะเปลี่ยนแปลงเฉพาะในเวลาที่แยกจากกันและคาดเดาได้เท่านั้น การเปลี่ยนแปลงสัญญาณทั้งหมดเกิดขึ้นในสถานะคงที่ของสัญญาณนาฬิกา ซึ่งอาจเกิดข้อผิดพลาดได้ ดังนั้นขอบนาฬิกาคือเวลาที่ดีที่สุดในการจับและล็อคอินพุตครั้งสุดท้าย

ฟลิปฟล็อป D (หรือดีเลย์) ทำหน้าที่เป็นองค์ประกอบหน่วยความจำอิเล็กทรอนิกส์ เนื่องจากเอาต์พุตจะถูกเก็บรักษาไว้ เว้นแต่จะมีการปรับเปลี่ยนโดยตั้งใจโดยสัญญาณนาฬิกาขอบขาขึ้น ฟลิปฟล็อปนี้ยังใช้ในการหน่วงเวลาการเปลี่ยนแปลงในสัญญาณเอาต์พุต (Q) จนกระทั่งถึงขอบขาขึ้นถัดไปของสัญญาณอินพุตการจับเวลาสัญญาณนาฬิกา

โครงสร้างของ D Flip-Flop (Master-Slave)

รูปที่ 5: ขอบด้านลบจะกระตุ้น D Flip-Flop

สามารถสร้างฟลิปฟล็อป AD ได้โดยเชื่อมต่อพิน D สองพินแบบอนุกรมโดยมีสัญญาณนาฬิกากลับด้าน (ดังแสดงในรูปที่ 5) พินแรกเรียกว่าพินหลักและพินที่สองเรียกว่าพินสเลฟ พินหลักจะเริ่มต้นที่ D เมื่อ CLK มีค่าสูงและส่งต่อไปยังพินสเลฟ CLK มีค่าต่ำ ตอนนี้ข้อผิดพลาดใดๆ ที่อินพุตจะไม่ส่งผลต่อเอาท์พุตของสเลฟ เนื่องจากแลตช์หลักถูกปิดใช้งาน สิ่งนี้จะเห็นได้เมื่อตัวล็อคกำลังอัปเดตเอาต์พุต Q บนขอบตกของนาฬิกาและยึดไว้จนกระทั่งถึงขอบตกครั้งต่อไปของนาฬิกา

รูปที่ 6: ขอบบวกจะเปิดใช้งาน D Flip-Flop

สามารถสร้างฟลิปฟล็อป D ที่ทริกเกอร์ขอบบวกได้โดยการเชื่อมต่ออินเวอร์เตอร์อื่นหลังจาก CLK หรือโดยการจัดเรียงอินเวอร์เตอร์ที่มีอยู่ใหม่ (แสดงในรูปที่ 6)

D Flip-Flop ใช้ SR Flip-Flop หรือ latch

สามารถสร้าง D flip-flop ได้โดยใช้ SR Flip-Flop โดยเชื่อมต่อเกต NOT จากพิน SET เข้ากับพิน RESET ตามที่แสดงในรูปด้านบน วิธีนี้ช่วยหลีกเลี่ยงสถานะต้องห้ามในฟลิปฟล็อป SR และช่วยให้แน่ใจว่าอินพุต S และ R จะตรงกันข้ามกันเสมอ แม้ว่านี่จะเป็นวิธีสร้าง D Flip-Flop จาก SR Flip-Flop แต่จำนวนเกตที่จำเป็นจะมากกว่าโครงสร้างมาสเตอร์-สเลฟที่ใช้ MUX

ฟลิปฟล็อปของทรานซิสเตอร์คลาส D

รูปที่ 7: แผนภาพระดับทรานซิสเตอร์ของ D Flip-Flop

ไดอะแกรมระดับทรานซิสเตอร์ของ D Flip-Flop แบบทริกเกอร์ที่ขอบแสดงอยู่ในรูปที่ 7 โดยใช้แลตช์แบบเกต (รูปที่ 4) เพื่อสร้าง D Flip-Flop (รูปที่ 7) นี่เป็นเวอร์ชันยอดนิยมที่สุดของ D flip-flop ที่ผลิตในเชิงพาณิชย์ สามารถเพิ่มอินพุตเพิ่มเติม เช่น PRESET (PRE) และ CLEAR (CLR) สำหรับฟังก์ชันเพิ่มเติมได้

รูปที่ 8: แผนผังภายในของวงจรรวม 74HC74 จาก Texas Instruments (ที่มา - Texas Instruments Inc.)

ไดอะแกรมระดับทรานซิสเตอร์ของวงจรรวม 74HC74 เชิงพาณิชย์จาก Texas Instruments แสดงอยู่ในรูปที่ 8 ไดอะแกรมนี้คล้ายกับไดอะแกรมที่แสดงในรูปที่ 7 โดยมีอินพุตเพิ่มเติม เช่น PRE และ CLR อินพุต PRE ระดับต่ำทำงานอยู่ที่นี่ นั่นคือ เมื่อ PRE = 1 ข้อมูลที่เก็บไว้ในแลตช์จะเป็น 1 ส่งผลให้เอาต์พุต Q = 1 ซึ่งจะใช้ในการตั้งค่าเงื่อนไขเริ่มต้นสำหรับฟลิปฟล็อป หากต้องการให้ PRE ส่งผลต่อสถานะภายใน ไม่จำเป็นต้องรอขอบสัญญาณนาฬิกา CLR จะล้างสถานะภายในและตั้งค่าเอาต์พุตเป็น 0 ซึ่งยังไม่ขึ้นอยู่กับขอบสัญญาณนาฬิกาด้วย

การประยุกต์ใช้งานของ D Flip-Flop

  1. ฟลิปฟล็อป D มีความหลากหลายมากในระบบดิจิทัล มีบทบาทในวงจรหน่วยความจำ การสร้างรีจิสเตอร์ เคาน์เตอร์ และการพัฒนาระบบซิงโครนัส ใช้ในการจัดเก็บข้อมูล ช่วยให้สามารถกำหนดขนาดรีจิสเตอร์ได้อย่างยืดหยุ่น นับเหตุการณ์ได้ และช่วยออกแบบระบบแบบซิงโครนัส
  2. D Flip Flops ทำหน้าที่เป็นส่วนประกอบพื้นฐานในการสร้างรีจิสเตอร์กะ เมื่อ D Flip Flop จำนวน 8 ตัวเชื่อมโยงกันแบบต่อเนื่อง เช่น สามารถเก็บข้อมูลได้ 1 ไบต์ (8 บิต) หลังจากรอบสัญญาณนาฬิกา 8 รอบ
  3. การสร้างวงจรตัวแบ่งพื้นฐานเกี่ยวข้องกับการเชื่อมโยงเอาต์พุตที่ไม่ใช่ Q ของ D Flip Flop กลับไปยังอินพุต D การกำหนดค่านี้ส่งผลให้เอาต์พุต D เปลี่ยนสถานะที่ความถี่ครึ่งหนึ่งของสัญญาณนาฬิกา โดยการเชื่อมต่อแบบต่อเนื่องของฟลิปฟล็อป D และการออกแบบเกตตรรกะเชิงผสมภายนอกอย่างพิถีพิถัน จึงสามารถสร้างตัวจับเวลาถอยหลังได้

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

D latch คืออะไร?
Jan 19, 2024

D latch คืออะไร?

มาเรียนรู้กันว่า D latch คืออะไร

Lorem ipsum dolor amet consectetur adipiscing elit tortor massa arcu non.

D latch เป็นวงจรดิจิทัลประเภทหนึ่งที่สามารถเก็บข้อมูลได้ 1 บิตด้วยอินพุต 1 ตัว (D สำหรับข้อมูล/ความล่าช้า) และสัญญาณเปิดใช้งาน (CLK หรือ EN) เอาต์พุตของแลตช์จะตามหลังอินพุต D เมื่อ CLK สูง และยังคงเท่าเดิมเมื่อ CLK ต่ำ อาจถือได้ว่าเป็นเซลล์หน่วยความจำพื้นฐานที่สามารถตั้งค่าหรือรีเซ็ตได้ด้วยการป้อนข้อมูล

พิน D จากพิน SR

สามารถออกแบบ Delay Latch (D-Latch) ได้โดยใช้กลอนประตู SR พร้อมอินเวอร์เตอร์ (NOT gate) ที่เชื่อมต่อระหว่างอินพุตเปิดใช้งาน ซึ่งทำให้สามารถใช้งานอินพุต D (ข้อมูล) ได้หนึ่งรายการ มันช่วยให้แน่ใจว่าในเวลาเดียวกัน อินพุตทั้งสอง นั่นคือ S และ R จะไม่เท่ากับ 1 เลย ดังนั้นจึงหลีกเลี่ยงสถานะต้องห้ามในแลตช์ SR พิน D เป็นพินที่สำคัญและพบได้ทั่วไปที่สุดในบรรดาพินนาฬิกาอื่นๆ เนื่องจากต้องใช้ชิ้นส่วนน้อยที่สุดและมีหลักการทำงานที่เรียบง่ายมาก

เป็นไปได้ที่จะสร้างพิน D โดยใช้พิน SR ทำได้โดยเชื่อมต่ออินพุต D เข้ากับอินพุต Set (S) ไม่ใช่ D เข้ากับอินพุต Reset (R) และใช้สัญญาณนาฬิกาเพื่อเปิดใช้งานอินพุต Set และ Reset พร้อมกันโดยใช้เกต AND การกำหนดค่านี้จะช่วยให้แน่ใจว่าเมื่อสัญญาณนาฬิกาทำงาน อินพุต D จะถูกส่งไปยังเอาต์พุตของแลตช์ ซึ่งทำให้เกิดแลตช์ D อย่างมีประสิทธิภาพ เมื่ออินพุตนาฬิกาต่ำ แลตช์ SR จะอยู่ในสถานะยึดและรักษาค่าที่โหลดไว้ก่อนหน้านี้

ขา D จากอินเวอร์เตอร์ซีรีส์

รูปที่ 2: อินเวอร์เตอร์หันเข้าหากันเหมือนหมุด

การสร้าง D-pin จากพิน SR ต้องใช้ชิ้นส่วนเพิ่มเติม ดังนั้นจึงมีอีกวิธีหนึ่งในการสร้าง D-pin ที่ใช้กันอย่างแพร่หลายในอุตสาหกรรมอิเล็กทรอนิกส์

ในรูปที่ 2(a) อินเวอร์เตอร์แบบแบ็คทูแบ็คที่แสดงนี้สามารถจัดเก็บข้อมูลได้ 1 บิต อย่างไรก็ตาม หากไม่มีการแก้ไขใด ๆ ก็ไม่มีทางที่จะเปลี่ยนแปลงข้อมูลได้ เพื่อทำความเข้าใจเรื่องนี้ ให้ถือว่าในรูปที่ 2(b) แลตช์ได้จัดเก็บตรรกะ 1 ไว้ที่เอาต์พุตอย่างใดอย่างหนึ่ง

ในรูปที่ 2(c) เพื่อเปลี่ยนตรรกะ สวิตช์จะถูกใช้กับเกตของอินเวอร์เตอร์ตัวที่สอง เราจะเรียกสวิตช์นี้ว่าสวิตช์ข้อมูล สวิตช์ข้อมูลนี้กำลังพยายามบังคับค่าจาก 0 เป็น 1 ที่พอร์ตอินเวอร์เตอร์ตัวที่สอง อย่างไรก็ตาม อินเวอร์เตอร์ตัวแรกกำลังพยายามรักษาลอจิก 0 ไว้ที่โหนดเดียวกัน และสวิตช์กำลังบังคับให้เป็นลอจิก 1 ดังนั้นจึงมีการโต้แย้งที่ชัดเจน สวิตช์อินเวอร์เตอร์ตัวแรกและ NMOS สร้างเส้นทางความต้านทานต่ำมากจากแหล่งจ่ายไฟไปยังกราวด์ ซึ่งอาจส่งผลให้เกิดกระแสไฟฟ้าขนาดใหญ่

ในรูปที่ 2(d) เพื่อขัดจังหวะเส้นทางกระแสไฟฟ้า สวิตช์จะถูกแทรกระหว่างเอาต์พุตของอินเวอร์เตอร์ตัวแรกและเกตของอินเวอร์เตอร์ตัวที่สอง ดังนั้นจะต้องถอดสวิตช์นี้ออกก่อนแล้วจึงเชื่อมต่อสวิตช์ข้อมูล

รูปที่ 3: การปรับเปลี่ยนสลักแบบอินเวอร์เตอร์แบบแบ็คทูแบ็คให้เป็นสลักแบบ D ที่สามารถใช้งานได้

เราได้เห็นในรูปที่ 2 แล้วว่าข้อมูลสามารถโหลดลงในแลตช์ได้อย่างไรโดยอาศัยอินเวอร์เตอร์แบบแบ็คทูแบ็ค เราจะเพิ่มอินเวอร์เตอร์อีกตัวหนึ่งก่อนสวิตช์ข้อมูลดังแสดงในรูปที่ 3 ในรูปที่ 3 สวิตช์ข้อมูลแสดงโดย TG2 TG ย่อมาจาก Transmission Gate Switch วงจรสมบูรณ์ของแลตช์ D แสดงอยู่ในรูปที่ 3 (ขวา)

D latch ตาม MUX (มัลติเพล็กเซอร์)

รูปที่ 4: D latch ที่ใช้มัลติเพล็กเซอร์

อีกวิธีหนึ่งในการทำความเข้าใจต้นกำเนิดของ D latch คือการคิดว่ามันเป็นมัลติเพล็กเซอร์ เอาท์พุตของมัลติเพล็กเซอร์ 2 x 1 สามารถป้อนกลับไปยังอินพุตตัวใดตัวหนึ่งได้ (CLK=0) อินพุตอื่น (CLK=1) อาจเป็นอินพุต D วงจรภายในจะมีลักษณะคล้ายกับวงจรอินเวอร์เตอร์แบบแบ็คทูแบ็ค

ตารางความจริงของแลตช์ D

ตารางการกระตุ้นของพิน D ระบุไว้ข้างต้น D คืออินพุต Q คือสถานะปัจจุบัน Qn + 1 คือสถานะเอาต์พุตถัดไป Qn+1 จะเป็น 0 เสมอเมื่อ D เป็น 0 และ Qn+1 จะเป็น 1 เสมอเมื่อ D เป็น 1 โดยไม่คำนึงถึงสถานะปัจจุบันของฟลิปฟล็อป X หมายความว่าไม่สนใจ

แลตช์ D เรียกอีกอย่างหนึ่งว่าแลตช์โปร่งใส เนื่องจากเมื่อ CLK สูง เอาต์พุต Q จะโปร่งใสต่ออินพุต D ซึ่งหมายความว่าการเปลี่ยนแปลงใดๆ ใน D จะสะท้อนไปยัง Q ทันที อย่างไรก็ตาม นั่นยังหมายความอีกด้วยว่าข้อผิดพลาดใดๆ ที่อินพุต D จะปรากฏที่เอาต์พุตระหว่างช่วง CLK สูง ซึ่งอาจทำให้เกิดข้อผิดพลาดหรือความขัดข้องได้

D Flip-Flop คืออะไร?

เพื่อหลีกเลี่ยงปัญหาการทำงานผิดปกติของตัวล็อก D ที่ทริกเกอร์ระดับ เราสามารถใช้ฟลิปฟล็อป D อื่นได้ ฟลิปฟล็อป AD เป็นวงจรที่อัปเดตเอาต์พุตเฉพาะที่ขอบ (เพิ่มขึ้นหรือลดลง) ของสัญญาณนาฬิกาเท่านั้น แทนที่จะอัปเดตที่ระดับ (สูงหรือต่ำ) ของสัญญาณนาฬิกา วิธีนี้จะช่วยให้แน่ใจว่าเอาต์พุต Q จะเปลี่ยนแปลงเฉพาะในเวลาที่แยกจากกันและคาดเดาได้เท่านั้น การเปลี่ยนแปลงสัญญาณทั้งหมดเกิดขึ้นในสถานะคงที่ของสัญญาณนาฬิกา ซึ่งอาจเกิดข้อผิดพลาดได้ ดังนั้นขอบนาฬิกาคือเวลาที่ดีที่สุดในการจับและล็อคอินพุตครั้งสุดท้าย

ฟลิปฟล็อป D (หรือดีเลย์) ทำหน้าที่เป็นองค์ประกอบหน่วยความจำอิเล็กทรอนิกส์ เนื่องจากเอาต์พุตจะถูกเก็บรักษาไว้ เว้นแต่จะมีการปรับเปลี่ยนโดยตั้งใจโดยสัญญาณนาฬิกาขอบขาขึ้น ฟลิปฟล็อปนี้ยังใช้ในการหน่วงเวลาการเปลี่ยนแปลงในสัญญาณเอาต์พุต (Q) จนกระทั่งถึงขอบขาขึ้นถัดไปของสัญญาณอินพุตการจับเวลาสัญญาณนาฬิกา

โครงสร้างของ D Flip-Flop (Master-Slave)

รูปที่ 5: ขอบด้านลบจะกระตุ้น D Flip-Flop

สามารถสร้างฟลิปฟล็อป AD ได้โดยเชื่อมต่อพิน D สองพินแบบอนุกรมโดยมีสัญญาณนาฬิกากลับด้าน (ดังแสดงในรูปที่ 5) พินแรกเรียกว่าพินหลักและพินที่สองเรียกว่าพินสเลฟ พินหลักจะเริ่มต้นที่ D เมื่อ CLK มีค่าสูงและส่งต่อไปยังพินสเลฟ CLK มีค่าต่ำ ตอนนี้ข้อผิดพลาดใดๆ ที่อินพุตจะไม่ส่งผลต่อเอาท์พุตของสเลฟ เนื่องจากแลตช์หลักถูกปิดใช้งาน สิ่งนี้จะเห็นได้เมื่อตัวล็อคกำลังอัปเดตเอาต์พุต Q บนขอบตกของนาฬิกาและยึดไว้จนกระทั่งถึงขอบตกครั้งต่อไปของนาฬิกา

รูปที่ 6: ขอบบวกจะเปิดใช้งาน D Flip-Flop

สามารถสร้างฟลิปฟล็อป D ที่ทริกเกอร์ขอบบวกได้โดยการเชื่อมต่ออินเวอร์เตอร์อื่นหลังจาก CLK หรือโดยการจัดเรียงอินเวอร์เตอร์ที่มีอยู่ใหม่ (แสดงในรูปที่ 6)

D Flip-Flop ใช้ SR Flip-Flop หรือ latch

สามารถสร้าง D flip-flop ได้โดยใช้ SR Flip-Flop โดยเชื่อมต่อเกต NOT จากพิน SET เข้ากับพิน RESET ตามที่แสดงในรูปด้านบน วิธีนี้ช่วยหลีกเลี่ยงสถานะต้องห้ามในฟลิปฟล็อป SR และช่วยให้แน่ใจว่าอินพุต S และ R จะตรงกันข้ามกันเสมอ แม้ว่านี่จะเป็นวิธีสร้าง D Flip-Flop จาก SR Flip-Flop แต่จำนวนเกตที่จำเป็นจะมากกว่าโครงสร้างมาสเตอร์-สเลฟที่ใช้ MUX

ฟลิปฟล็อปของทรานซิสเตอร์คลาส D

รูปที่ 7: แผนภาพระดับทรานซิสเตอร์ของ D Flip-Flop

ไดอะแกรมระดับทรานซิสเตอร์ของ D Flip-Flop แบบทริกเกอร์ที่ขอบแสดงอยู่ในรูปที่ 7 โดยใช้แลตช์แบบเกต (รูปที่ 4) เพื่อสร้าง D Flip-Flop (รูปที่ 7) นี่เป็นเวอร์ชันยอดนิยมที่สุดของ D flip-flop ที่ผลิตในเชิงพาณิชย์ สามารถเพิ่มอินพุตเพิ่มเติม เช่น PRESET (PRE) และ CLEAR (CLR) สำหรับฟังก์ชันเพิ่มเติมได้

รูปที่ 8: แผนผังภายในของวงจรรวม 74HC74 จาก Texas Instruments (ที่มา - Texas Instruments Inc.)

ไดอะแกรมระดับทรานซิสเตอร์ของวงจรรวม 74HC74 เชิงพาณิชย์จาก Texas Instruments แสดงอยู่ในรูปที่ 8 ไดอะแกรมนี้คล้ายกับไดอะแกรมที่แสดงในรูปที่ 7 โดยมีอินพุตเพิ่มเติม เช่น PRE และ CLR อินพุต PRE ระดับต่ำทำงานอยู่ที่นี่ นั่นคือ เมื่อ PRE = 1 ข้อมูลที่เก็บไว้ในแลตช์จะเป็น 1 ส่งผลให้เอาต์พุต Q = 1 ซึ่งจะใช้ในการตั้งค่าเงื่อนไขเริ่มต้นสำหรับฟลิปฟล็อป หากต้องการให้ PRE ส่งผลต่อสถานะภายใน ไม่จำเป็นต้องรอขอบสัญญาณนาฬิกา CLR จะล้างสถานะภายในและตั้งค่าเอาต์พุตเป็น 0 ซึ่งยังไม่ขึ้นอยู่กับขอบสัญญาณนาฬิกาด้วย

การประยุกต์ใช้งานของ D Flip-Flop

  1. ฟลิปฟล็อป D มีความหลากหลายมากในระบบดิจิทัล มีบทบาทในวงจรหน่วยความจำ การสร้างรีจิสเตอร์ เคาน์เตอร์ และการพัฒนาระบบซิงโครนัส ใช้ในการจัดเก็บข้อมูล ช่วยให้สามารถกำหนดขนาดรีจิสเตอร์ได้อย่างยืดหยุ่น นับเหตุการณ์ได้ และช่วยออกแบบระบบแบบซิงโครนัส
  2. D Flip Flops ทำหน้าที่เป็นส่วนประกอบพื้นฐานในการสร้างรีจิสเตอร์กะ เมื่อ D Flip Flop จำนวน 8 ตัวเชื่อมโยงกันแบบต่อเนื่อง เช่น สามารถเก็บข้อมูลได้ 1 ไบต์ (8 บิต) หลังจากรอบสัญญาณนาฬิกา 8 รอบ
  3. การสร้างวงจรตัวแบ่งพื้นฐานเกี่ยวข้องกับการเชื่อมโยงเอาต์พุตที่ไม่ใช่ Q ของ D Flip Flop กลับไปยังอินพุต D การกำหนดค่านี้ส่งผลให้เอาต์พุต D เปลี่ยนสถานะที่ความถี่ครึ่งหนึ่งของสัญญาณนาฬิกา โดยการเชื่อมต่อแบบต่อเนื่องของฟลิปฟล็อป D และการออกแบบเกตตรรกะเชิงผสมภายนอกอย่างพิถีพิถัน จึงสามารถสร้างตัวจับเวลาถอยหลังได้