HDMI e I


15

Stavo guardando il pinout HDMI e ho pensato: perché dovrebbero usare I 2 C per la comunicazione display-host? La mia domanda qui riguarda le metriche di progettazione che portano a questa scelta.2

HDMI è uno standard abbastanza recente mentre I 2 C è in circolazione dal 1982 . I 2 C è progettato per la comunicazione integrata chip-to-chip, inoltre lo standard consente più dispositivi collegati allo stesso bus. Un cavo HDMI può essere lungo circa 15 m , quindi il segnale I 2 C dovrebbe probabilmente usare tensioni più alte del normale per evitare troppo rumore, aggiungendo la necessità di tranceiver su entrambi i lati. Per quanto riguarda il multi dispositivo, non riesco davvero a pensare come collegare più di un monitor a una singola porta HDMI a meno che tu non sia molto, molto non standard.222

Non sono davvero un esperto di protocolli di comunicazione, ma penso che RS485, CAN o qualche altro punto a punto, full duplex, protocollo SNR superiore sarebbe stato migliore.

Quindi perché dovrebbero scegliere I 22 C?

nota: so che questo potrebbe essere contrassegnato come "basato sull'opinione", spero che qualcuno in giro possa pensare / conoscere alcune ragioni oggettive.


+1 per una grande domanda! Penso che sia legato al CEC! Uso STM32 e hanno una periferica CEC e non vedo l'ora di conoscere la risposta.
Roh,

2
Ho prestato servizio su alcuni pannelli VESA come rappresentante standard di una semi-azienda (VGA) durante l'implementazione del DDC2. Philips è stata in grado di negoziare per implementare lo standard, che era poco controverso in quanto si trattava di una soluzione proprietaria, sebbene sia una buona soluzione per plug and play. Quindi @TurboJ ha la risposta giusta. All'epoca il multi-drop non era considerato importante in quanto era punto a punto analogico (VGA).
segnaposto

Risposte:


8

La cronologia DCC in HDMI va via DVI fino a VGA. È implementato in modo da poter semplicemente collegare un chip di memoria eeprom I²C standard sul lato monitor, che è quasi economico come lo sporco (AT24C01 e compatibile).

Il segnale I2C dovrebbe probabilmente usare tensioni più alte del normale per evitare troppo rumore

No. I +5 Volt ti raccontano una storia diversa. Ciò che potrebbero fare è una frequenza di clock inferiore sul bus. Anche i cavi HDMI sono schermati bene.

Quindi perché dovrebbero scegliere I2C?

Era lì in DVI (a cui HDMI è compatibile) e funziona ed è economico.


2
Quindi, in sintesi, stai dicendo che è dovuto a problemi di compatibilità legacy e funziona bene, quindi perché cambiarlo?
horta,

3

I2C è molto economico e semplice da implementare per una serie di motivi. Viene spesso utilizzato quando è necessario trasferire solo pochi byte. È anche un'interfaccia molto strutturata, con un protocollo definito per chi dovrebbe parlare in un determinato momento. I2C, grazie alla sua età, è anche ben supportato dai produttori di I2C (quindi perché è economico e semplice da implementare). A causa della bassa velocità dei dati, SNR non è in realtà un problema e 3,3 V è una tensione del bus tipica e può essere filtrato con passa-basso pesante, se necessario.

Penso che sia importante sottolineare come l'I2C sarebbe usato in un monitor. Non solo l'I2C consentirebbe la comunicazione con più monitor, ma con più dispositivi (ad es. Più circuiti integrati) all'interno di ciascun monitor, anche se esiste probabilmente un bus I2C separato per ciascun cavo HDMI nella maggior parte dei sistemi host. L'interfaccia I2C verrebbe probabilmente usata per stabilire la connessione con l'host, dove l'host interrogherebbe il monitor per scoprire cose come la sua risoluzione, frame rate, produttore, nome e probabilmente altre cose. I2C non sarebbe abbastanza veloce per trasferire dati di immagine e suono, che le informazioni passano attraverso i fili TDMS, che saranno ad alta velocità e basso SNR.


Quindi stai dicendo che su una configurazione multi hdmi è richiesto solo un ricetrasmettitore i2c sul lato host, ed è per questo che la comunicazione multi point è una cosa carina da avere?
Vladimir Cravero,

Non avresti nemmeno bisogno di un ricetrasmettitore dedicato (come in un singolo CI la cui unica funzione è comunicare su I2C). Potrebbe essere solo una piccola responsabilità di un bridge IC che gestisce una varietà di interfacce diverse. Tuttavia, è probabile che esista un bus I2C dedicato per ciascun monitor. Uno degli inconvenienti di I2C (IMO) è che non è possibile configurare due slave con lo stesso indirizzo bus e non esiste un protocollo (di cui sono a conoscenza) per l'assegnazione dinamica di nuovi indirizzi agli slave.
kjgregory,

Sì, quello era il mio punto, inoltre suppongo che due monitor identici abbiano lo stesso indirizzo, quindi avrai comunque bisogno di linee separate.
Vladimir Cravero,

1
Non penso che questo sia davvero un grosso problema o contro-argomento per il suo utilizzo in HDMI. Soprattutto se si considera che qualsiasi altro protocollo richiederebbe comunque un'interfaccia separata per ciascun monitor.
kjgregory,

Sì, sono d'accordo
Vladimir Cravero il

0

È economico, funziona, era già lì dall'era VGA e non c'era alcun motivo reale per cambiarlo.

Una buona ingegneria nello spazio di consumo è economica e funziona abbastanza bene (cosa che HDMI fa per lo più), nessuno vince punti per la progettazione di qualcosa in quello spazio che utilizza chip extra, ha spese generali di comunicazione e supporta complesse topologie multidrop per qualcosa di simile.

Il chip viene letto una volta all'avvio del collegamento, quindi anche se puoi solo sincronizzare la cosa a frequenze KHz, questo non è un problema per i cento byte circa di dati. CAN o RS485 avrebbero entrambi richiesto più azioni in un'applicazione consumer con costi molto limitati.

Ho il sospetto che le cose del DDC siano state importate all'ingrosso senza nemmeno pensarci troppo, come in effetti era la maggior parte del timing video (Displayport e HDMI sono praticamente identici elettricamente), e il timing video può essere facilmente rintracciato almeno fino al video composito su CRT, portico anteriore, video attivo, portico posteriore, intervallo di ritraccia .... Sembra molto familiare a qualsiasi ragazzo della TV della vecchia scuola.

Questo in realtà è un caso alquanto raro di un ente normativo che NON apporta modifiche per rimuovere il vantaggio di un produttore, e invece va con un noto funzionante defacto standard. Non sarei stato sorpreso da I2C ma con il bus abbattuto e lo stato attivo era logico 1, o qualcosa di altrettanto asinino solo per evitare di dare un vantaggio a Phillips / NXP / Nexperia!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.