อ่าน 10 นาที
องค์ประกอบซี
ในการคำนวณแบบดิจิทัล วงจร Muller C-element ( C-gate , hysteresis flip-flop , coincident flip-flopหรือวงจรความปลอดภัยแบบสองมือ ) เป็น...
องค์ประกอบซี



ในการคำนวณแบบดิจิทัล วงจร Muller C-element ( C-gate , hysteresis flip-flop , coincident flip-flopหรือวงจรความปลอดภัยแบบสองมือ ) เป็น วงจรตรรกะไบนารีขนาดเล็กที่ใช้กันอย่างแพร่หลายในการออกแบบวงจรและระบบแบบอะซิงโครนัส โดยจะให้เอาต์พุตเป็น 0 เมื่ออินพุตทั้งหมดเป็น 0 ให้เอาต์พุตเป็น 1 เมื่ออินพุตทั้งหมดเป็น 1 และจะคงสถานะเอาต์พุตไว้ในกรณีอื่นๆDavid E. Muller [ 3 ] ได้กำหนดนิยามอย่างเป็นทางการในปี 1955 และใช้งานครั้งแรกในคอมพิวเตอร์ILLIAC II [ 4 ]ในแง่ของทฤษฎีแลตทิซวงจร C-element เป็นวงจรแบบกระจายกึ่งโมดูลาร์ ซึ่งการทำงานในเวลาจะอธิบายโดยแผนภาพHasse [ 5 ] [ 6 ] [ 7 ] [ 8 ]วงจร C-element มีความเกี่ยวข้องอย่างใกล้ชิดกับ องค์ประกอบ rendezvous [ 9 ]และjoin [ 10 ]ซึ่งไม่อนุญาตให้อินพุตเปลี่ยนแปลงสองครั้งติดต่อกัน ในบางกรณี เมื่อทราบความสัมพันธ์ระหว่างความล่าช้า องค์ประกอบ C สามารถสร้างขึ้นเป็นวงจรผลรวมของผลคูณ (SOP) ได้[ 11 ] [ 12 ] เทคนิคก่อนหน้านี้สำหรับการใช้ งานองค์ประกอบ C [ 13 ] [ 14 ]ได้แก่Schmitt trigger [ 15 ] Eccles-Jordan flip-flop และ last moving point flip-flop
ตารางความจริงและข้อสมมติเรื่องความล่าช้า
สำหรับสัญญาณอินพุตสองตัว องค์ประกอบ C จะถูกกำหนดโดยสมการซึ่งสอดคล้องกับตารางความจริงต่อไปนี้:
| 0 | 0 | 0 |
| 0 | 1 | |
| 1 | 0 | |
| 1 | 1 | 1 |
ตารางนี้สามารถแปลงเป็นวงจรได้โดยใช้แผนที่คาร์โนห์อย่างไรก็ตาม การนำไปใช้งานที่ได้นั้นยังไม่สมบูรณ์ เนื่องจากไม่ได้กล่าวถึงข้อสมมติฐานเรื่องความล่าช้าใดๆ เพื่อทำความเข้าใจว่าวงจรที่ได้นั้นใช้งานได้ภายใต้เงื่อนไขใด จำเป็นต้องทำการวิเคราะห์เพิ่มเติม ซึ่งจะเผยให้เห็นว่า
- delay1 คือค่าความหน่วงในการส่งสัญญาณจากโหนด 1 ผ่านสภาพแวดล้อมไปยังโหนด 3
- delay2 คือค่าหน่วงเวลาในการส่งสัญญาณจากโหนด 1 ผ่านการป้อนกลับภายในไปยังโหนด 3
- delay1 ต้องมากกว่า delay2
ดังนั้น การใช้งานแบบง่ายๆ จึงถูกต้องเฉพาะในสภาพแวดล้อมที่ช้า เท่านั้น [ 16 ]
การนำองค์ประกอบ C ไปใช้
ขึ้นอยู่กับข้อกำหนดเกี่ยวกับความเร็วในการสลับและการใช้พลังงาน องค์ประกอบ C สามารถสร้างขึ้นเป็นวงจรแบบหยาบหรือละเอียดได้ นอกจากนี้ ควรแยกแยะระหว่างการสร้างองค์ประกอบ C แบบเอาต์พุตเดี่ยวและแบบรางคู่[ 17 ]องค์ประกอบ C แบบรางคู่สามารถสร้างได้บน NAND (NOR) 2 อินพุตเท่านั้น[ 18 ]การสร้างแบบเอาต์พุตเดี่ยวสามารถใช้งานได้ก็ต่อเมื่อ: [ 19 ]
- วงจรซึ่งแต่ละอินพุตขององค์ประกอบ C เชื่อมต่อผ่านอินเวอร์เตอร์แยกต่างหากไปยังเอาต์พุตนั้น มีลักษณะกึ่งโมดูลาร์เมื่อเทียบกับสถานะที่อินเวอร์เตอร์ทั้งหมดได้รับพลังงาน
- สถานะนี้ทำงานอยู่สำหรับเกตเอาต์พุตขององค์ประกอบ C
การใช้งาน แบบคงที่และแบบกึ่งคงที่


ในรายงานของเขา[ 3 ] Muller เสนอให้สร้าง C-element เป็นเกตเสียงข้างมากที่มีการป้อนกลับ อย่างไรก็ตาม เพื่อหลีกเลี่ยงอันตรายที่เกี่ยวข้องกับความคลาดเคลื่อนของความล่าช้าภายใน เกตเสียงข้างมากจะต้องมีทรานซิสเตอร์จำนวนน้อยที่สุดเท่าที่จะเป็นไปได้[ 27 ] [ 28 ]โดยทั่วไป C-element ที่มีสมมติฐานเรื่องเวลาที่แตกต่างกัน[ 29 ]สามารถสร้างขึ้นบนAND-OR-Invert (AOI) [ 30 ] [ 31 ]หรือเกตคู่ของมัน OR-AND-Invert (OAI) [ 32 ] [ 33 ]และอินเวอร์เตอร์ อีกทางเลือกหนึ่งที่ได้รับการจดสิทธิบัตรโดย Varshavsky et al. [ 34 ] [ 35 ]คือการต่อขนานสัญญาณอินพุตเมื่อสัญญาณเหล่านั้นไม่เท่ากัน การสร้างเหล่านี้มีความเรียบง่ายมาก แต่ใช้พลังงานมากขึ้นเนื่องจากการลัดวงจร เมื่อเชื่อมต่อเกตเสียงข้างมากเพิ่มเติมเข้ากับเอาต์พุตกลับด้านขององค์ประกอบ C เราจะได้ ฟังก์ชัน OR แบบรวม (EDLINCOR): [ 36 ] [ 37 ] วงจรอะซิงโครนัสแบบง่ายบางวงจร เช่น ตัวกระจายพัลส์[ 38 ]สามารถสร้างได้โดยใช้เกตเสียงข้างมากเพียงอย่างเดียว
C-element แบบกึ่งคงที่เก็บสถานะก่อนหน้าโดยใช้อินเวอร์เตอร์แบบไขว้สองตัว คล้ายกับ เซลล์ SRAMอินเวอร์เตอร์ตัวหนึ่งอ่อนกว่าส่วนที่เหลือของวงจร ดังนั้นจึงสามารถถูกครอบงำโดยเครือข่ายพูลอัพและพูลดาวน์ได้ หากอินพุตทั้งสองเป็น 0 เครือข่ายพูลอัพจะเปลี่ยน สถานะของ แลตช์และ C-element จะส่งค่า 0 ออกมา หากอินพุตทั้งสองเป็น 1 เครือข่ายพูลดาวน์จะเปลี่ยนสถานะของแลตช์ ทำให้ C-element ส่งค่า 1 ออกมา มิฉะนั้น อินพุตของแลตช์จะไม่เชื่อมต่อกับขั้วใดขั้วหนึ่งหรือกราวด์ ดังนั้นอินเวอร์เตอร์ที่อ่อนกว่าจะครอบงำ และแลตช์จะส่งค่าสถานะก่อนหน้าออกมา นอกจากนี้ยังมี C-element แบบกึ่งคงที่เวอร์ชันที่สร้างขึ้นบนอุปกรณ์ที่มีความต้านทานเชิงอนุพันธ์ลบ (NDR) [ 39 ] [ 40 ] NDR มักถูกกำหนดไว้สำหรับสัญญาณขนาดเล็ก ดังนั้นจึงยากที่จะคาดหวังว่า C-element ดังกล่าวจะทำงานในช่วงแรงดันหรือกระแสเต็มรูปแบบ
การใช้งานระดับเกต



มีวงจรเอาต์พุตเดี่ยวที่แตกต่างกันหลายแบบของ C-element ที่สร้างขึ้นบนเกตตรรกะ[ 42 ] [ 43 ]โดยเฉพาะอย่างยิ่ง การใช้งานที่เรียกว่าของ Maevsky [ 44 ] [ 45 ] [ 46 ]เป็นวงจรแบบกึ่งโมดูลาร์ แต่ไม่ใช่แบบกระจาย (OR-causal) ที่อิงตาม[ 47 ]เกต NAND3 ในวงจรนี้สามารถแทนที่ด้วยเกต NAND2 สองตัว โปรดทราบว่า C-element ของ Maevsky จริงๆ แล้วเป็น Join element ซึ่งสัญญาณอินพุตไม่สามารถสลับได้สองครั้ง[ 44 ]วงจรอื่นที่มี OR-causality ซึ่งทำงานเป็น Join element [ 48 ]การสร้าง C-element บนเกตอินพุตสองตัวเท่านั้นได้รับการเสนอโดย Tsirlin [ 49 ]และจากนั้นได้รับการสังเคราะห์โดย Starodoubtsev et al. โดยใช้ภาษา Taxogram [ 50 ]วงจรนี้สอดคล้องกับวงจรที่ Bartky [ 1 ] [ 44 ] คิดค้นขึ้น และสามารถทำงานได้โดยไม่ต้องใช้แลตช์อินพุต โปรดทราบว่าทั้งวงจร Maevsky และ Tsirlin นั้นอิงตามสิ่งที่เรียกว่าเซลล์ David [ 51 ]การใช้งานระดับทรานซิสเตอร์ที่รวดเร็วของวงจรนี้ถูกนำมาใช้ใน C-element แบบกึ่งคงที่ที่เสนอ[ 52 ]วงจรแบบกึ่งคงที่อีกวงจรหนึ่งที่ใช้ทรานซิสเตอร์แบบส่งผ่าน (จริงๆ แล้วคือ MUX 2:1) ได้รับการเสนอ[ 53 ]อีกเวอร์ชันหนึ่งของ C-element ที่สร้างขึ้นบนแลตช์ SR สองตัว ได้รับการสังเคราะห์โดย Murphy [ 54 ]โดยใช้เครื่องมือ Petrify อย่างไรก็ตาม วงจรนี้มีอินเวอร์เตอร์ที่เชื่อมต่อกับอินพุตตัวหนึ่ง อินเวอร์เตอร์นี้ควรมีการหน่วงเวลาเล็กน้อย อย่างไรก็ตาม มีการสร้างแลตช์ SR ที่มีอินพุตกลับด้านอยู่แล้วหนึ่งตัว ตัวอย่างเช่น[ 55 ]แนวทางที่ไม่ขึ้นกับความเร็วบางวิธี[ 56 ] [ 57 ]ถือว่าอินเวอร์เตอร์อินพุตแบบไม่มีความล่าช้ามีให้ใช้งานบนเกตทั้งหมด ซึ่งเป็นการละเมิดหลักการไม่ขึ้นกับความเร็วที่แท้จริง แต่ค่อนข้างปลอดภัยในทางปฏิบัติ ตัวอย่างอื่นๆ ของการใช้สมมติฐานนี้ก็มีอยู่เช่นกัน[ 58 ]
การใช้งานที่ไม่ใช้ทรานซิสเตอร์
เทคโนโลยีอื่นๆ ที่เหมาะสมสำหรับการสร้างองค์ประกอบพื้นฐานแบบอะซิงโครนัส รวมถึงองค์ประกอบ C ได้แก่ ท่อนาโนคาร์บอน อุปกรณ์อุโมงค์อิเล็กตรอนเดี่ยว[ 59 ]จุดควอนตัม[ 60 ]และนาโนเทคโนโลยีระดับโมเลกุล[ 61 ]
การสรุปทั่วไปสำหรับตรรกะหลายค่า
นิยามขององค์ประกอบ C สามารถสรุปได้สำหรับตรรกะหลายค่า[ 7 ] [ 62 ] [ 63 ]หรือแม้แต่สำหรับสัญญาณต่อเนื่อง:
ตัวอย่างเช่น ตารางความจริงสำหรับองค์ประกอบ C แบบไตรภาคสมดุลที่มีอินพุตสองตัวคือ
| −1 | −1 | −1 |
| −1 | 0 | |
| −1 | 1 | |
| 0 | −1 | |
| 0 | 0 | 0 |
| 0 | 1 | |
| 1 | −1 | |
| 1 | 0 | |
| 1 | 1 | 1 |
เนื่องจากเกตเสียงข้างมากเป็นกรณีพิเศษของเกตเกณฑ์ ดังนั้นการสร้างเกตเกณฑ์ที่รู้จักใดๆ[ 64 ]สามารถนำมาใช้สร้างองค์ประกอบ C ได้ในหลักการ อย่างไรก็ตาม ในกรณีที่มีค่าหลายค่า การเชื่อมต่อเอาต์พุตของเกตเสียงข้างมากเข้ากับอินพุตหนึ่งหรือหลายอินพุตอาจไม่มีผลที่พึงประสงค์ ตัวอย่างเช่น การใช้ฟังก์ชันเสียงข้างมากแบบไตรภาคที่กำหนดไว้เป็น[ 65 ]
หากผลรวมไม่ได้ถูกแยกออกเป็นคู่ๆ จะไม่นำไปสู่ C-element แบบไตรภาคที่ระบุโดยตารางความจริง อย่างไรก็ตาม แม้ไม่มีการแยกดังกล่าว ฟังก์ชันเสียงข้างมากแบบไตรภาคสองฟังก์ชันก็เหมาะสมสำหรับการสร้างเก ต ORแบบรวมไตรภาค
ลิงก์ภายนอก
- เครื่องมือ Workcraft: การสังเคราะห์และการตรวจสอบองค์ประกอบ C
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ องค์ประกอบซี
ในการคำนวณแบบดิจิทัล วงจร Muller C-element ( C-gate , hysteresis flip-flop , coincident flip-flopหรือวงจรความปลอดภัยแบบสองมือ ) เป็น...
ตารางความจริงและข้อสมมติเรื่องความล่าช้า
สำหรับสัญญาณอินพุตสองตัว องค์ประกอบ C จะถูกกำหนดโดยสมการซึ่งสอดคล้องกับตารางความจริงต่อไปนี้: y n = x 1 x 2 + ( x 1 + x 2 ) y n − 1 {\displaystyle y_{n}=x_{1}x_{2}+(x_{1}+x_{2})y_{n-1}}
การนำองค์ประกอบ C ไปใช้
ขึ้นอยู่กับข้อกำหนดเกี่ยวกับความเร็วในการสลับและการใช้พลังงาน องค์ประกอบ C สามารถสร้างขึ้นเป็นวงจรแบบหยาบหรือละเอียดได้ นอกจากนี้ ควรแยกแยะระหว่างการสร้างองค์ประกอบ C แบบเอาต์พุตเดี่ยวและแบบรางคู่ [ 17 ] องค์ประกอบ C แบบรางคู่สามารถสร้างได้บน NAND (NOR) 2...
การใช้งาน แบบคงที่ และแบบกึ่งคงที่
ในรายงานของเขา [ 3 ] Muller เสนอให้สร้าง C-element เป็นเกตเสียงข้างมากที่มีการป้อนกลับ อย่างไรก็ตาม เพื่อหลีกเลี่ยงอันตรายที่เกี่ยวข้องกับความคลาดเคลื่อนของความล่าช้าภายใน เกตเสียงข้างมากจะต้องมีทรานซิสเตอร์จำนวนน้อยที่สุดเท่าที่จะเป็นไปได้ [ 27 ] [ 28 ]...