Granite River Labs HDMI CEC 機上盒 電視 影音設備 傳輸協定

HDMI CEC影音裝置串聯手法揭曉(1)

2023-05-25
隨著家中影音設備越來越多,遙控器也逐漸增加,每次開關都是一項大工程。為了解決這個問題,HDMI協會開發CEC技術,能夠使用單一遙控器操控多個裝置,大幅簡化操作方式、提升使用者體驗。
Pixabay

您是否曾在生活中遇到以下情景?結束一天忙碌的工作,回家想看一部電影好好放鬆,此時要拿出好幾個遙控器,將電視、機上盒、音響逐一開啟並進行節目設定,有時候甚至可能找不到遙控器,如此繁複的操作難免令人煩躁沮喪。不過,如果所使用的影音設備皆支援CEC功能,情況可就大為不同,以上惱人的問題將不復存在。讓我們一起來看看CEC究竟是什麼神奇的技術吧!

HDMI CEC是什麼?怎麼用?

CEC的全名為Consumer Electronics Control,是一項由HDMI協會所開發的技術與功能,專為HDMI介面所設計。設計初衷是要讓消費者能夠使用「一個」遙控器來控制並操作所有的HDMI連接裝置,簡化繁複的影音設備操作(如家庭劇院等),帶給使用者更方便的生活體驗。以目前常見的One Touch Play功能為例,若同時使用支援CEC功能的機上盒及電視,使用者只需要按下機上盒的開機按鈕,電視就會跟著開啟,並且自動切換輸入端口,播放機上盒的影音內容。這聽起來是不是很神奇呢?

為了實現多個影音設備的控制,需要採用一套完整且一致的傳輸協定規範。目前HDMI協會發布了兩個版本的CEC規範,分別為CEC 1.4與CEC 2.0。CEC 2.0基於CEC 1.4版本進行擴充,雖然其支援的功能較多,但原則上採用相同的實體及協定架構。

HDMI CEC傳輸架構與原理

CEC技術實體層介紹

CEC為單線雙向溝通技術,實體層上只需要單一CEC接腳就能與所有連結裝置進行溝通。在HDMI連接網路上,裝置間的CEC線路設計要求相連,因此HDMI產品無論是否支援CEC功能,都需要配置CEC接腳並滿足特定的電氣規範,確保即使有不支援CEC的裝置連接於網路中,其餘設備依然能正常運作。

對於不支援CEC功能的HDMI裝置,除了HDMI影音數據需要正確傳輸外,CEC電容、電阻、電壓也要符合規範,才能被認證為合格的HDMI裝置。

以下是相關的CEC線路電氣規範:

一、為了避免連結裝置對線路造成過大電容負載,Source(發送端)產品最大電容容許值為150pF,Sink(接收端)產品則為200pF。

二、一般而言,若產品有多個HDMI輸入端(如電視),輸入端之間的CEC線路必須相連(舉例來說:輸入端1與輸入端2之間的電阻值需要小於5歐姆)。若產品有多個輸出端,其CEC線路間不能相連(舉例來說,輸出端1與輸出端2之間的電阻值需要大於1M歐姆)。若產品為Repeater類型,則依其是否為CEC_Root_Device,來設計輸出端及輸入端之間CEC的線路相連情形。

三、在產品斷電時,CEC線路上的漏電流需要小於1.8uA。且無論產品處於開機、關機或休眠(若支援)狀態,在外部上拉或下拉的測試條件下,CEC線路上的電壓皆需要維持在特定範圍內(表1)。

表1 支援HDMI CEC的產品須遵守的電氣規範(前三點) (資料來源:HDMI Spec 1.4b)

四、若產品支援CEC功能,為確保產品能夠輸出正確的CEC訊號,除了滿足前面提及的三點規範外,還需要符合表2規範。CEC線路在閒置狀態時,線路電壓須透過27k歐姆電阻上拉至2.5~3.63V間,以維持在邏輯1的狀態。開始傳輸訊息後,需要拉低線路電壓至0~0.6V以代表邏輯0。另外,CEC並非高速傳輸介面,上升與下降時間的要求分別小於250us及50us。

表2 支援HDMI CEC的產品須遵守的電氣規範(第四點) (資料來源:HDMI Spec 1.4b)

CEC技術協定層介紹

CEC傳輸過程,通常需要一個Initiator以及一個或以上的Follower組成。Initiator負責傳輸訊號,Follower負責接收訊號。一段完整的CEC訊號,放大來看是由許多的bit組成,bit可再細分為Start bit與Data bit。

.Start bit格式:Initiator未傳輸CEC訊息時,CEC線路上為邏輯1;要開始傳輸訊息時,會將線路拉低至邏輯0(圖1)。Start bit的格式僅在此處使用,Follower收到此格式的訊息後就會準備接收後續data bit。

圖1 HDMI CEC Start bit格式 (資料來源:HDMI Spec 1.4b)

.Data bit格式:Start bit傳輸過後,緊接著傳輸的是Data bit,邏輯1和0須依照圖2格式輸出。Initiator會使用邏輯1和0傳輸數據,而Follower會使用邏輯0來回覆ACK。

圖2 HDMI CEC Data bit格式 (資料來源:HDMI Spec 1.4b)

.Header/Data Block格式:每10個Data bit可以組成更大的單位,稱為Header/Data Block(圖3)。前面八個Information bits根據用途能用來傳輸Data、Logical address、Opcodes等訊息。最後兩個EOM以及ACK bit具有以下用途:

圖3 Header/Data Block格式 (資料來源:HDMI Spec 1.4b)

(1)EOM(End of Message):用來告知Follower這是不是最後傳輸的Data block,1代表訊息已傳輸完成,0則代表後續仍有數據傳輸。

(2)ACK(Acknowledge):Initiator固定將ACK設置為1,Follower會藉由回覆ACK,來反應是否成功接收資訊。注意Follower會因為傳輸模式的不同(Direct/Broadcast),對ACK有不同的回覆方法。若Initiator傳輸訊息給單一follower,這類訊息稱為Direct message,follower可將ACK設置為0,代表正確接收訊息。若Initiator傳輸訊息給複數個follower,這類訊息稱為Broadcast message,follower可將ACK設置為0,代表沒有正確接收訊息。因此當Initiator監測到ACK為0,則可能代表有一個或以上的follower沒有成功接收訊息;反之若ACK為1,代表所有follower均正確接收。

綜合以上內容,一段完整的CEC指令依照順序會由Start bit、Header Block、許多的Data Block組成。Initiator可藉由傳輸不同的Data Block內容,對連接的Follower進行不同的功能控制。

HDMI CEC影音裝置串聯手法揭曉(2)

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!