ทำไม Digital 0 ไม่ใช่ 0V ในระบบคอมพิวเตอร์


32

ฉันกำลังเรียนหลักสูตรการออกแบบระบบคอมพิวเตอร์และอาจารย์ของฉันบอกกับเราว่าในระบบดิจิทัลแรงดันไฟฟ้าแบบเดิมที่ใช้เพื่อแสดงว่าดิจิตอล 0 และดิจิตอล 1 มีการเปลี่ยนแปลงตลอดหลายปีที่ผ่านมา

เห็นได้ชัดว่าย้อนกลับไปในยุค 80 มีการใช้ 5 V เป็น 'สูง' และ 1 V ถูกใช้เพื่อแสดงถึง 'ต่ำ' ทุกวันนี้ 'สูง' คือ 0.75 V และ 'ต่ำ' อยู่ที่ประมาณ 0.23 V. เขาเสริมว่าในอนาคตอันใกล้เราอาจเปลี่ยนไปใช้ระบบที่ 0.4 V หมายถึงสูงและ 0.05 V ต่ำ

เขาแย้งว่าค่าเหล่านี้มีขนาดเล็กลงเพื่อให้เราสามารถลดการใช้พลังงานของเรา หากเป็นเช่นนั้นทำไมเราจึงมีปัญหาในการตั้งค่า 'ต่ำ' ให้เป็นแรงดันบวกใด ๆ เลย? ทำไมเราไม่ตั้งค่าให้แรงดัน 0 V จริง (เป็นกลางจากสายไฟฉันเดา)


9
ฉันคิดว่าคำอธิบายที่ง่ายที่สุดคือมีความต้านทานต่อกาฝากในสายไฟ / ร่องรอย / "สวิทช์" (ทรานซิสเตอร์) ดังนั้นคุณจะไม่มีวันถึง 0V ดังนั้นคุณต้องมีระยะขอบ เมื่อเทคโนโลยีดีขึ้นอัตรากำไรก็จะเข้มงวดขึ้น
เวสลีย์ลี

26
ลอจิกไม่เคยมีค่าเดียวที่แน่นอนสำหรับสูงและต่ำ; TTL มีช่วงสัมบูรณ์และ CMOS บริสุทธิ์มีช่วงที่กำหนดโดยรางพลังงาน
ปีเตอร์สมิ ธ

8
ขีด จำกัด ต่ำสุดไม่เคยมีมาก่อน 1v เช็คเอาท์คำตอบของ Andy ที่ระบุว่าเป็น 0.4v หรือ 0.8v ขึ้นอยู่กับว่าคุณกำลังส่งหรือรับ (พูดอย่างถูกต้องฟังให้อภัย)
Neil_UK

4
แรงดันไฟฟ้าที่คุณอ้างอิงคือขอบเขตบน (ขีด จำกัด ) สำหรับศูนย์ตรรกะ
CramerTV

3
ไม่มีสิ่งใดเช่น 0 V เราจะพูดถึงมันในโลกที่สมบูรณ์แบบเท่านั้น
เสา

คำตอบ:


45

คุณกำลังสับสนค่า "อุดมคติ" กับช่วงอินพุตที่ถูกต้อง

ในตรรกะปกติในสภาวะอุดมคติศูนย์โลจิคัลจะเป็น 0V อย่างแม่นยำ อย่างไรก็ตามไม่มีอะไรสมบูรณ์แบบในโลกแห่งความเป็นจริงและผลผลิตอิเล็กทรอนิกส์มีความอดทนบางอย่าง แรงดันไฟฟ้าขาออกที่แท้จริงขึ้นอยู่กับคุณภาพของสายไฟเสียงอีเอ็มไอกระแสไฟฟ้าที่ต้องจัดหา ฯลฯ เพื่อรองรับความไม่สมบูรณ์เหล่านี้อินพุตตรรกะจะจัดการกับแรงดันไฟฟ้าทั้งช่วงเป็น 0 (หรือ 1) ดูรูปภาพในคำตอบของ Andy

สิ่งที่อาจารย์ของคุณอาจหมายถึงโดย 0.75V เป็นหนึ่งในจุดที่ทำให้ตรรกะ 0 ช่วง

โปรดทราบว่ามีช่วงว่างระหว่าง 0 ถึง 1 หากแรงดันไฟฟ้าขาเข้าตกที่นี่วงจรอินพุตไม่สามารถรับประกันการทำงานที่เหมาะสมดังนั้นพื้นที่ดังกล่าวจึงถูกห้าม


76

คุณกำลังสับสน ดูที่ TTL เช่น: -

ป้อนคำอธิบายรูปภาพที่นี่

ระดับอินพุตต่ำอยู่ระหว่าง 0 โวลต์และค่าเล็ก ๆ น้อยกว่า 0 โวลต์ (0.8 โวลต์สำหรับกรณีของ TTL)

เหตุใดเราจึงใช้ปัญหาในการตั้งค่า 'ต่ำ' เป็นแรงดันบวกใด ๆ เลย?

เราใช้ปัญหาเพื่อให้แน่ใจว่ามีค่าน้อยกว่าที่กำหนด

ภาพจากที่นี่


ในการขยายตัวนี้ช่วงแรงดันไฟเข้าที่ถูกต้องจะแตกต่างกันสำหรับการส่งสัญญาณ TTL กับ CMOS และการส่งสัญญาณ LVCMOS เหตุผลของเรื่องนี้คือตรรกะ TTL (และ NMOS ที่ใช้งานร่วมกันได้ที่ตามมา) มีความยากลำบากมากในการดึงขึ้นไปยังรางบวกกว่าลงไปที่พื้น ตรรกะ CMOS ที่ทันสมัยสามารถดึงได้ดีเท่ากันไม่ว่าจะด้วยวิธีใดและมันก็ง่ายกว่าที่จะสร้างเวทีอินพุต CMOS แบบสมมาตรเช่นกัน เอาต์พุต CMOS จะขับอินพุต TTL อย่างมีความสุข แต่คุณต้องใช้อินพุตที่เข้ากันได้กับ TTL พิเศษด้วยเอาต์พุต TTL
Chromatix

มีคำอธิบายที่ดีและมีรายละเอียดเกี่ยวกับเรื่องนี้จาก TI ที่นี่: ti.com/lit/an/scla011/scla011.pdf
Chromatix

16

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

สถานะไบนารี 1 และ 0 แสดงในวงจรตรรกะดิจิตอลโดยลอจิกสูงและแรงดันไฟฟ้าต่ำตรรกะตามลำดับ แรงดันไฟฟ้าที่เป็นตัวแทนของลอจิกสูงและลอจิกต่ำตกอยู่ในช่วงที่กำหนดไว้ล่วงหน้าและตกลงล่วงหน้าสำหรับตระกูลลอจิกที่ใช้

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

ด้วยวงจรอะนาล็อกมันเป็นเรื่องยากมากที่จะแยกเสียงจากสัญญาณที่น่าสนใจและเป็นไปไม่ได้ในทางปฏิบัติ


4
เกณฑ์ที่คมชัดมาก (ไม่มี hysteresis) ยังหมายถึงแอมพลิฟายเออร์เกนกำลังสูง เป็นที่ทราบกันดีว่ามีการตอบรับที่ไม่น่าเชื่อและความผันผวนอย่างรุนแรง
rackandboneman

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

โน้ตคือตรรกะโหมดปัจจุบันที่ค่าตรรกะถูกกำหนดในแง่ของกระแสมากกว่าแรงดัน วิธีนี้ช่วยให้สามารถสลับสัญญาณได้เร็วขึ้นและทนต่อสัญญาณรบกวนได้ดีขึ้น (เนื่องจากกฎหมายปัจจุบันของ Kirchhoff) ด้วยต้นทุนการใช้พลังงานที่เพิ่มขึ้น (แม้ว่า Wikipedia จะอ้างว่า picoamp CML นั้นประสบความสำเร็จ
John Dvorak

8

นอกจากนี้ในประเด็นที่ทำโดยคำตอบอื่น ๆ มีปัญหาเรื่องความสามารถของกาฝากที่ความเร็วในการเปลี่ยนสูง สายมักจะมีความต้านทานเล็กน้อย (แบบจำลองง่ายมาก!)

แผนผัง

จำลองวงจรนี้ - แผนผังที่สร้างโดยใช้CircuitLab

ในฐานะที่เป็นเครือข่าย RC ผลลัพธ์นี้จะเป็นเส้นโค้ง falloff exponential (V ~ e ^ -kt) หากผู้รับตั้งค่าเกณฑ์ต่ำมาก (ใกล้ 0V) ก็จะต้องรอเวลาที่สำคัญสำหรับแรงดันเอาท์พุทลดลงพอที่จะเรียกเกณฑ์ เวลานี้อาจดูไม่สำคัญ แต่สำหรับอุปกรณ์ที่ควรเปลี่ยนเป็นล้านครั้ง (พันล้านเท่า) ต่อวินาทีนี่เป็นปัญหา ทางออกคือการเพิ่มแรงดันไฟฟ้า "OFF" เพื่อหลีกเลี่ยงหางยาวของฟังก์ชันเลขชี้กำลัง


6

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


3

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

นี่คือนอกเหนือจากระยะขอบที่จำเป็นในการปิดเสียงรบกวนพื้นดิน (ระดับพื้นดินที่แตกต่างกันหรือ "ศูนย์" ระดับแรงดันไฟฟ้าระหว่างวงจรต้นทางและปลายทาง), แหล่งกำเนิดเสียงอื่น ๆ , ความคลาดเคลื่อนและอื่น ๆ


0

ตรงกันข้ามกับคำตอบบางอย่างที่นี่ฉันค่อนข้างแน่ใจว่าในอดีตที่ผ่านมามีความบริสุทธิ์ต่ำ 0V ตรรกะการถ่ายทอด! ฉันไม่คิดว่าเราต้องการกลับไปที่แม้ว่า!


6
รีเลย์ของคุณใช้ตัวนำยิ่งยวดหรือไม่? ฉันไม่คิดอย่างนั้น
Elliot Alderson

1
+1 เนื่องจากการวิจารณ์ที่ไม่เป็นธรรม 0V บริสุทธิ์สามารถทำได้อย่างง่ายดาย สามารถทำได้โดยใช้รีเลย์และสามารถเข้าถึงอุปกรณ์ที่เชื่อมต่อกับอุปกรณ์สิ้นเปลืองและข้อเสนอแนะเชิงลบได้หากต้องการ ว่ามันถูกใช้เป็นค่าการออกแบบที่จำเป็นสำหรับการสื่อสารแบบดิจิตอลดูเหมือนไม่น่าจะเกิดขึ้น แต่ก็ไม่น่าจะมีเหตุผลที่จะลงคะแนนในคำตอบนี้
KalleMP

2
@ElliotAlderson ไม่ฉันไม่สามารถทำได้ฉันเขียนโดยเฉพาะว่ามันไม่น่าจะมีอยู่จริงซึ่งหมายความว่าฉันไม่มีทางพิสูจน์ได้ อย่างไรก็ตามคุณสามารถพิสูจน์ได้ว่าไม่จำเป็นต้องมีค่าการออกแบบดังกล่าว? ฉันไม่คิดอย่างนั้น ตอนนี้ไปและให้คะแนนคนใหม่ (เพื่อให้มันกลับเป็นศูนย์) ดังนั้นเขาจึงไม่ได้รับกำลังใจจาก nitpicking และจากไปและเราก็ปล่อยจิตใจที่สดใส (เด็ก) อีกคนหนึ่งเพราะไม่มีเหตุผลที่ดี
KalleMP

1
@ElliotAlderson ฉันคิดว่าถ้าคุณวางขอบเขตบนขดลวดรีเลย์จริงคุณจะเห็นแรงดันไฟฟ้าผ่านศูนย์ในทางที่จะเป็นค่าลบขนาดใหญ่เมื่อผู้ติดต่อเปิด แต่มันก็ไม่ชัดเจนสำหรับฉันไม่ว่าคุณจะพูดถึงวงจรจริงหรือวงจรในอุดมคติ สนใจผู้ติดต่อที่เหมาะ? ถ้าไม่เช่นนั้นแรงดันจะต้องไปที่ค่าลบอนันต์ ในกรณีกรณีใด ๆ หลังจากที่ติดต่อได้เปิดและส่วนโค้งจะดับความต้านทานในวงจรที่เหมาะจะไม่มีที่สิ้นสุด ไม่แน่ใจว่าสิ่งใดที่ทำให้เวลาของคุณคงที่
โซโลมอนช้า

1
@SolomonSlow พฤติกรรมชั่วคราวนั้นเป็นของจริง แต่สามารถสร้างแบบจำลองได้ง่ายด้วยวงจรในอุดมคติ ความต้านทานที่ควบคุมพฤติกรรมของแรงดันไฟฟ้าของขดลวดหลังจากหน้าสัมผัสเปิดเป็นความต้านทานของขดลวดเอง (ให้ประโยชน์กับคุณไม่ต้องสงสัยเลยว่าไม่มีกระแสรั่วไหลใด ๆ ) มันเป็นวงจร RL ขนานที่จุดนั้นซึ่งต้องใช้เวลาที่ไม่มีที่สิ้นสุดสำหรับการเหนี่ยวนำกระแสจะตกอยู่กับว่าเป็นศูนย์ แม้ในโลกที่ใช้งานได้มีบางครั้งที่แรงดันไฟฟ้าข้ามขดลวดไม่เป็นศูนย์ แต่หน้าสัมผัสของรีเลย์กลายเป็นเปิด ... ตรรกะ '0' กับแรงดันไฟฟ้าที่ไม่เป็นศูนย์
Elliot Alderson
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.