ความแตกต่างระหว่าง I2C และ TWI คืออะไร?


26

อะไรคือความแตกต่างระหว่างอินเตอร์เฟส I2C และ TWI? Wikipedia กล่าวว่า TWI นั้นแตกต่างจาก I2C แหล่งข้อมูลอื่นบอกว่าชื่อแตกต่างกันเท่านั้น ...

i2c 

13
AFAIK TWI เป็นสิ่งที่ผู้ผลิต (เคย) เรียกใช้อินเทอร์เฟซ I2C เพื่อหลีกเลี่ยงปัญหาทางกฎหมายกับ Philips
Wouter van Ooijen

33
รุ่นหนึ่งมาพร้อมกับทนายความ!
Connor Wolf

1
Wouter van Ooijen: ถ้าเป็นเช่นนั้นมันก็เพียงพอแล้วที่จะเปลี่ยนชื่อ? IANAL

คำตอบ:


25

ฉันเห็นด้วยกับทุกอย่างที่ @Wouter กล่าวว่า ... โดยปกติ TWI จะถูกใช้โดยผู้ผลิต (เช่น Atmel) เพื่ออ้างถึงอินเทอร์เฟซ I2C ของพวกเขาเพื่อหลีกเลี่ยงปัญหาทางกฎหมายกับ Philips เนื่องจาก I2C เป็นเครื่องหมายการค้าจดทะเบียน ผู้ผลิตบางราย (เช่น Atmel) ได้นำคุณสมบัติที่เป็นกรรมสิทธิ์ไปใช้ด้านบนของ I2C เพื่อให้ TWI ของพวกเขาเป็นซูเปอร์เซ็ตของ I2C

เพื่อตอบคำถามติดตามของคุณใช่ เพียงแค่เปลี่ยนชื่อ เครื่องหมายการค้าคุ้มครองเฉพาะชื่อ หากมีการจดสิทธิบัตรแล้วสถานการณ์จะแตกต่างกัน

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


1
ฉันคิดว่าการจับมือกันของ I2C บางแง่มุมนั้นแปลกใหม่พอที่จะได้รับการคุ้มครองสิทธิบัตรแม้ว่าสิ่งต่าง ๆ เช่น EEPROM ที่ไม่ใช้การจับมือกันอาจไม่ใช้คุณสมบัติที่คุ้มค่ากับสิทธิบัตรใด ๆ สำหรับส่วนขยายของ I2C นั้นสิ่งหนึ่งที่ฉันต้องการคือความสามารถในการใช้อุปกรณ์ทาสในการอนุญาโตตุลาการในแบบเดียวกับที่เจ้านายใช้ (ทาสที่พยายามจะเอาท์พุท "1" ในขณะที่ทาสอีกตัวหนึ่งกำลังส่งออก "0" ควรส่งสัญญาณอนุญาโตตุลาการที่หายไปและลดลงในช่วงเวลาที่เหลือของไบต์นั้น) [โปรโตคอลระดับสูงจะตัดสินใจว่าจุดใดที่ทาสสามารถเข้าร่วมได้อีกครั้ง]
supercat

1
ด้วยคุณสมบัติเช่นนี้มันจะเป็นเรื่องง่ายสำหรับอุปกรณ์ที่มีหมายเลขตามอำเภอใจเช่นหมายเลข ID 64- บิตที่จะอ่านข้อมูลประจำตัวของพวกเขา (ง่ายกว่าด้วย 1wire) มีที่อยู่อุปกรณ์ "เริ่มอ่านรหัส" จากนั้นให้แต่ละอุปกรณ์ส่งออก 8 ไบต์ของ ID (เลื่อนออกหากสูญเสียการอนุญาโตตุลาการ) และมีอุปกรณ์แต่ละตัวที่ไม่สามารถส่งออก ID กลับเข้าร่วมได้ทุก 8 ไบต์ ต้นแบบจะอ่าน ID ของอุปกรณ์ทุกเครื่องตามลำดับตัวเลขลงท้ายด้วย FF ทั้งหมดเมื่ออุปกรณ์ทั้งหมดเสร็จสิ้น
supercat

1
@supercat และหากมีการจดสิทธิบัตรแล้วมันจะป้องกันผู้ผลิตรายอื่นจากการใช้มันสำหรับผลิตภัณฑ์ต้นทุนต่ำ มันจะเป็นฝันร้ายของผู้ใช้อีกคน
JB

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

9

จากi2c-bus.org :

TWI ย่อมาจาก Two Wire Interface และบัสนี้เหมือนกับI²C Atmel ได้รับการแนะนำให้รู้จักกับชื่อ TWI และ บริษัท อื่น ๆ เพื่อหลีกเลี่ยงความขัดแย้งกับปัญหาเครื่องหมายการค้าที่เกี่ยวข้องกับI²C คำอธิบายของความสามารถของอินเตอร์เฟส TWI สามารถพบได้ในแผ่นข้อมูลของอุปกรณ์ที่เกี่ยวข้อง คาดว่าอุปกรณ์ TWI จะเข้ากันได้กับอุปกรณ์I²Cยกเว้นลักษณะเฉพาะบางอย่างเช่นการออกอากาศทั่วไปหรือการกำหนดแอดเดรส 10 บิต

สำหรับตอนนี้ยังไม่มีโหมดความเร็วสูง TWI

หากคุณมีตัววิเคราะห์I²Cมันจะทำงานกับการตั้งค่า TWI ด้วยโดยไม่มีการดัดแปลง


2

อุปกรณ์ TWI มักจะไม่สอดคล้องกับข้อกำหนด I2C อย่างสมบูรณ์

โดยเฉพาะอย่างยิ่งการยืดนาฬิกามักจะไม่รองรับ


เช่นถ้าหน่วยความจำของฉันให้บริการฉันอย่างถูกต้องส่วนต่อประสานI²Cของ Raspberry Pi ที่จัดทำโดย Broadcomm SoC ที่เป็นหัวใจ ...
SlySven
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.