隨著技術(shù)進(jìn)展,下一代電視、機(jī)上盒、以及數(shù)位媒體配接器等裝置,都變得越來越有‘智慧’,不僅能彼此互連,還能與網(wǎng)際網(wǎng)路連接。這些智慧型裝置都將成為令人注目的平臺(tái),以為儲(chǔ)存和分享音樂、視訊、云端應(yīng)用、社交媒體帶來全新的消費(fèi)者體驗(yàn)。同時(shí),這些裝置也將能與智慧型家庭、智慧型行動(dòng)裝置間無縫互動(dòng),打造出真正的連網(wǎng)新體驗(yàn)。
下一代智慧型連網(wǎng)電視平臺(tái),例如最近發(fā)表的GoogleTV,將成為單一、簡(jiǎn)易好用的多媒體來源與平臺(tái),可有效地結(jié)合網(wǎng)際網(wǎng)路多媒體互動(dòng)內(nèi)容與地面、衛(wèi)星電視頻道,帶來一致性、直覺式的使用者體驗(yàn)。消費(fèi)者將能搜尋、組織、并體驗(yàn)從廣播業(yè)者、網(wǎng)路服務(wù)、個(gè)人內(nèi)容圖書館、以及透過行動(dòng)應(yīng)用產(chǎn)生或存取到的各種來源內(nèi)容。
本文將介紹開發(fā)下一代智慧型連網(wǎng)電視平臺(tái)時(shí),所需考量的軟體和硬體需求。
智慧型電視的軟體需求
下一代智慧型電視(smart TV)將包含可管理底層硬體的先進(jìn)軟體,并為終端使用者帶來一致性的使用者介面(UI)與可擴(kuò)展的多樣化應(yīng)用程式。
關(guān)鍵軟體包括具豐富功能的Android作業(yè)系統(tǒng)、Adobe Flash Player、以及Google Chrome或JavaScript-based widget引擎等快速網(wǎng)路體驗(yàn)。
Android是專為用來作為下一代智慧型電視等連網(wǎng)平臺(tái)基礎(chǔ)所設(shè)計(jì)的。它是以Linux核心為基礎(chǔ),包括多個(gè)以C程式撰寫的軟體庫,以及用來執(zhí)行應(yīng)用程式碼的Dalvik虛擬機(jī)器(VM)。它通常附有能使此平臺(tái)更為齊全的整套應(yīng)用程式。Android是由Google免費(fèi)提供,它的程式碼可依Apache開放塬始碼授權(quán)協(xié)議取得,業(yè)者可針對(duì)其特定應(yīng)用進(jìn)行增強(qiáng)設(shè)計(jì),無需再向開放來源提交程式碼。
Android應(yīng)用程式是完全以Java撰寫的,但必須轉(zhuǎn)換為Dalvik可執(zhí)行格式。Google會(huì)提供可與常用Eclipse整合開發(fā)環(huán)境一起使用的外掛程式與程式庫。Android的設(shè)計(jì)概念是,應(yīng)用程式能在不同的硬體架構(gòu)中自由移動(dòng),以減輕程式開發(fā)的負(fù)擔(dān)。
Google Chrome是採用WebKit佈局引擎和應(yīng)用程式架構(gòu)的網(wǎng)路瀏覽器。GoogleTV平臺(tái)中的絕大部分是以Chrome提供的,它形成了基本的網(wǎng)際網(wǎng)路/網(wǎng)路平臺(tái)。Chrome也會(huì)被GoogleTV應(yīng)用程式所使用─其中有許多是真正的Chrome-based JavaScript應(yīng)用程式,可透過遠(yuǎn)端網(wǎng)路伺服器或網(wǎng)站與客戶端相連。類似像Chrome這類的瀏覽器是下一代智慧型電視的重要關(guān)鍵,以提供完整的網(wǎng)路瀏覽體驗(yàn)。
Chrome的優(yōu)點(diǎn)在于其應(yīng)用程式效能與JavaScript處理速度。Chrome和Chrome-based JavaScript的效能非常重要,它會(huì)直接影響到處理器、GPU、以及記憶體的需求。
Adobe Flash Player可為網(wǎng)頁和服務(wù)增加動(dòng)畫、視訊、和互動(dòng)性。目前有超過75%的多媒體網(wǎng)頁內(nèi)容是採用Adobe Flash Player所設(shè)計(jì)。Adobe Flash Player可處理向量和點(diǎn)陣式繪圖,以提供文字、圖面、和靜態(tài)影像的動(dòng)畫。更重要的是,它支援音訊和視訊的雙向串流。因此,智慧型電視的硬體平臺(tái)須能符合Adobe Flash Player的效能需求,才能得到令人滿意的使用者體驗(yàn)。
為了能串流至Adobe Flash客戶端,此平臺(tái)需有足夠效能以支援高訊框率、全訊框的HD視訊。至少此平臺(tái)必須支援單一HD串流,并能同時(shí)處理其他的使用者互動(dòng)功能,例如透過滑鼠、鍵盤、或麥克風(fēng)產(chǎn)生使用者輸入,以及能從相連的相機(jī)串流視訊/靜態(tài)影像,而不會(huì)遺漏任何事件或畫面。更先進(jìn)的智慧型電視可以傳輸多個(gè)Internet-based Flash串流,并顯示HDMI/復(fù)合視訊來源。
Adobe Flash Player包含一個(gè)稱為ActionScript的物件導(dǎo)向語言。它的主要功能包括支援硬體加速,以提升Open Screen計(jì)畫所支援的各種裝置之繪圖效能。
H.264視訊在Flash Player 10.1中是透過一顆GPU或硬體視訊解碼器進(jìn)行解碼。有些硬體解碼器能同時(shí)加速多個(gè)H.264串流。加速的幅度取決于解碼器的規(guī)格。如果硬體解碼器不能處理額外的串流,Adobe Flash Player將會(huì)用軟體對(duì)此串流進(jìn)行解碼。H.264的編碼則有多種選項(xiàng),并且都能支援不同硬體解碼器的特定格式。
除了硬體H.264解碼,可支援OpenGL ES 2.0存取的裝置都能用Adobe Flash Player 10.1來產(chǎn)生所有繪圖元素(Pixel Bender著色器除外),而這些元素都是利用GPU硬體來增加繪圖效能的。當(dāng)內(nèi)容在這些裝置上執(zhí)行時(shí),會(huì)自動(dòng)設(shè)定為GPU模式,以得到最佳效能。
智慧型電視使用者介面
下一代智慧型電視平臺(tái)必須能處理先進(jìn)3D UI繪圖,包括將3D UI作成出現(xiàn)在視訊串流或其他應(yīng)用視窗上的半透明層。此介面能以不同的長(zhǎng)寬比執(zhí)行,因此使用者能為顯示裝置選擇適當(dāng)?shù)呐渲?。智慧型電視裝置必須能支援長(zhǎng)寬比為16x9的全1080p解析度裝置。
介面本身將包括表單按鍵,以及代表可用內(nèi)容或功能的圖示或縮略圖(thumbnail)。智慧型電視平臺(tái)能發(fā)揮Android平臺(tái)中的多工、多執(zhí)行緒功能。透過點(diǎn)選介面元素,使用者就能啟動(dòng)相關(guān)的Android程式,并同時(shí)執(zhí)行多個(gè)應(yīng)用程式。
在初期的Android平臺(tái)中,切換到另一個(gè)應(yīng)用程式通常會(huì)使最近執(zhí)行的應(yīng)用程式中斷,特別是,如果每個(gè)應(yīng)用程式都需要顯示視訊串流的話,更是如此。隨著平臺(tái)效能的提升,由于Android能讓多個(gè)應(yīng)用程式同時(shí)保持活躍,此一現(xiàn)象將會(huì)改善。
智慧型電視硬體需求
以傳統(tǒng)數(shù)位視訊為基礎(chǔ)的消費(fèi)電子產(chǎn)品與下一代智慧型電視間的差異,在于需要使用軟體和硬體來統(tǒng)一多媒體的檢視、相關(guān)應(yīng)用程式和網(wǎng)路瀏覽。成功的關(guān)鍵是能提供一個(gè)不會(huì)出錯(cuò)、不會(huì)中斷的使用者介面,以及具一致性的使用環(huán)境。下一代智慧型電視必須能有與PC/MAC相似的執(zhí)行效能,但又要有消費(fèi)性產(chǎn)品的可靠度與易用性。
要建置一個(gè)下一代智慧型電視平臺(tái),需從現(xiàn)今使用的典型智慧型/數(shù)位電視平臺(tái)開始。
現(xiàn)今的基礎(chǔ)架構(gòu)必須予以修改,才能因應(yīng)下一代的效能與連接性需求。
除了所要求的效能範(fàn)圍外,下一代智慧型電視與傳統(tǒng)DTV硬體需求之間還有其他的差異。硬體─不管是透過塬始單一/多核心處理器或利用輔助硬體─都必須能提供完美的使用者體驗(yàn)和可靠的連接性,其中包括:
* 相同或不同視訊內(nèi)容的即時(shí)顯示錄影
* 在螢?zāi)簧贤瑫r(shí)顯示多重視訊串流
* 反應(yīng)快速的網(wǎng)頁瀏覽
* 完美的Flash Player 10效能
* 快速應(yīng)用程式啟動(dòng)─優(yōu)異的Java效能
* 可儲(chǔ)存Context(情境),讓使用者能在應(yīng)用程式間來回移動(dòng)
* 為UI提供快速的3D繪圖執(zhí)行
* 快速開機(jī)
* 低功耗待機(jī)模式
* 支援?dāng)?shù)位家庭中所有的連接標(biāo)準(zhǔn),包括802.11有線/無線網(wǎng)路、HDMI、USB和既有的視訊標(biāo)準(zhǔn)
CPU 在前一代產(chǎn)品中,CPU通常執(zhí)行一個(gè)小型作業(yè)系統(tǒng),并主要用來管理2D UI、產(chǎn)生螢?zāi)划嬅?、并處理‘輕載’作業(yè)。
在下一代平臺(tái)中,CPU會(huì)執(zhí)行功能更豐富的Android OS、Java VM、多個(gè)應(yīng)用程式開發(fā)庫、應(yīng)用程式架構(gòu)、以及數(shù)個(gè)預(yù)設(shè)的應(yīng)用程式。此平臺(tái)必須支援一個(gè)類似Chrome的瀏覽器、多個(gè)特定為TV使用者體驗(yàn)設(shè)計(jì)的應(yīng)用程式。所有這些都會(huì)為主處理器帶來大量的工作負(fù)載,因此有可能需要用到繪圖處理、轉(zhuǎn)碼、和編解碼器等硬體加速器。
傳統(tǒng)DTV和下一代產(chǎn)品間的另一個(gè)差異在于,CPU工作負(fù)載具有顯著的動(dòng)態(tài)和變異特性。
傳統(tǒng)DTV是專為較固定效能需求所設(shè)計(jì),它的工作負(fù)載變化不大。軟體是由製造商決定,因此平臺(tái)的工作負(fù)載範(fàn)圍能妥善規(guī)劃,并選用適當(dāng)?shù)奶幚砥鳌⒂洃涹w、和額外元件。系統(tǒng)工作負(fù)載的最糟狀況是與DTV有限的功能有關(guān),通常會(huì)發(fā)生在處理2D UI,因?yàn)樗墓δ苡邢?,因此除了DTV的主要工作外,只能啟動(dòng)或看見一部分的UI。
下一代平臺(tái)則具備更寬廣的系統(tǒng)效能需求。CPU工作負(fù)載的最糟狀況會(huì)發(fā)生在當(dāng)使用者在觀賞網(wǎng)際網(wǎng)路串流視訊時(shí),但此平臺(tái)并沒有塬生的硬體解碼器,而需要用到CPU執(zhí)行軟體解碼。與此同時(shí),使用者可能還會(huì)看廣播電視和/或執(zhí)行Java應(yīng)用程式,或甚至進(jìn)行與遠(yuǎn)方使用者之間的雙向通訊。這顯示出新一代平臺(tái)的工作負(fù)載有許多的不可預(yù)測(cè)性。Android作業(yè)系統(tǒng)基本上是遵循POSIX,并支援多核心、多執(zhí)行緒應(yīng)用程式。Android同時(shí)也支援對(duì)稱多重處理(SMP),可讓智慧型電視平臺(tái)充分發(fā)揮處理器核心的多執(zhí)行緒、SMP效能。
這是半導(dǎo)體供應(yīng)商和OEM業(yè)者的主要設(shè)計(jì)考量。多變的工作負(fù)載和多種具視訊功能的網(wǎng)路應(yīng)用程式,會(huì)需要更高的整體系統(tǒng)效能需求。因此,選用一個(gè)能完全支援多執(zhí)行緒應(yīng)用程式和SMP配置的處理器架構(gòu),是非常重要的關(guān)鍵。
GoogleTV中有兩款鎖定低階功能的產(chǎn)品,它們能處理UI需求,但僅具處理同步多媒體串流、同步應(yīng)用程式和網(wǎng)路瀏覽的有限功能。這意味著,平臺(tái)/半導(dǎo)體設(shè)計(jì)人員必須選擇具擴(kuò)充性的處理器架構(gòu),并能與其他多種元件整合,以滿足連接性、繪圖、多媒體解碼/轉(zhuǎn)碼的需求。
從一個(gè)能提供完美使用者體驗(yàn)和有限同步功能的入門級(jí)平臺(tái)來看,半導(dǎo)體廠商應(yīng)考慮採用執(zhí)行速度為1 GHz的超純量單核心處理器,或800MHz的雙核心多執(zhí)行緒處理器。CPU應(yīng)包含一個(gè)執(zhí)行速度至少為處理器時(shí)脈速度一半的浮點(diǎn)運(yùn)算單元(FPU)。此外,我們也建議採用32KB L1指令和資料快取、最小32-entry TLB(建議用64)、和256KB L2快取。
另一方面,對(duì)于一個(gè)能提供完美使用者體驗(yàn)、平行視訊串流、應(yīng)用程式執(zhí)行和網(wǎng)路瀏覽的高階平臺(tái),我們則建議至少採用速度為1 GHz或以上的雙核心超純量處理器。此處理器應(yīng)包含一個(gè)執(zhí)行速度為處理器時(shí)脈速度一半的FPU、32KB L1指令和資料快取、以及64 entry TLB。同時(shí),每個(gè)CPU應(yīng)要有256KB L2快取 (也就是說,雙核心SoC需要512KB)。
繪圖 要支援下一代Android智慧型電視,開發(fā)人員必須建置符合OpenGL ES 2.0規(guī)範(fàn)的3D繪圖引擎。OpenGL ES 2.0繪圖引擎必須能提供豐富的3D使用者介面、網(wǎng)際網(wǎng)路瀏覽、Adobe Flash Player 10.x、Flash-based 3D游戲和Alpha混合。
顯示訊框緩沖器
1080p解析度表示有1,920水平畫素乘以1,080垂直線條,總共有2,073,600個(gè)畫素。若每個(gè)畫素採用4位元組色深,總計(jì)需要在CPU和繪圖引擎緩衝器間共享的記憶體容量為8,294,400位元組,或約8.3MB。
ATSC電視的最大訊框率為60Hz,這表示8.3MB的資料必須在一秒內(nèi)傳送60次到顯示器。對(duì)一個(gè)32位元寬的記憶體匯流排來說,最佳狀況是每個(gè)週期傳送4位元組,因此傳輸?shù)斤@示器的數(shù)據(jù)率為:
這是訊框緩衝器的傳輸需求。此外,也需要有用來執(zhí)行預(yù)渲染(pre-rendering)、3D材質(zhì)映射等的繪圖引擎記憶體存取。視訊解壓器也要有自己的記憶體空間。
SoC記憶體控制器的設(shè)計(jì)也是關(guān)鍵。採用最快的外部DRAM,可確保終端產(chǎn)品能提供高品質(zhì)的使用者體驗(yàn)。這聽起來可能有點(diǎn)超過,但是,除了產(chǎn)生現(xiàn)場(chǎng)/錄影的視訊串流,下一代智慧型電視會(huì)高度依賴瀏覽器功能,發(fā)揮3D繪圖控制器的最大優(yōu)勢(shì)以快速執(zhí)行頁面內(nèi)容。若要有流暢的使用者體驗(yàn),訊框緩衝器必須儘可能的大,同時(shí)記憶體控制器也必須儘可能支援最快的傳輸率。
目前,任何來自網(wǎng)際網(wǎng)路的視訊內(nèi)容來源都是採用Adobe Flash Player。存取透過瀏覽器來的Flash-based內(nèi)容,將會(huì)進(jìn)一步增加繪圖子系統(tǒng)訊框緩衝器和記憶體控制器的工作負(fù)載。
根據(jù)這些軟體需求,針對(duì)OpenGL ES 2.0繪圖引擎所建議的最小效能為每秒大于250 百萬畫素,以及每秒大于10M個(gè)叁角形。
編解碼器 顯示視訊內(nèi)容的新一代裝置都會(huì)採用專屬的硬體解碼器,來處理1080p HD內(nèi)容。在主應(yīng)用處理器上執(zhí)行軟體編解碼器,只適用于極小的螢?zāi)怀叽?。這類以軟體為基礎(chǔ)的解碼,可能無法充分發(fā)揮主應(yīng)用處理器的效能,并有可能影響到諸如處理網(wǎng)路連接性等其他需求。與機(jī)上盒和DTV平臺(tái)一樣,建議採用專屬硬體來建置所需的編解碼器。
下一代智慧型電視需要多種編解碼器,而不同的電視標(biāo)準(zhǔn),如ATSC、DVB等,都會(huì)有各自不同的需求。編解碼器需要能提供與PC相同的網(wǎng)際網(wǎng)路瀏覽體驗(yàn)。SoC製造商必須決定要用硬體或軟體來建置這些編解碼器。如果有些編解碼器是建置在軟體中,那就必須有足夠的運(yùn)算能力,以滿足不同標(biāo)準(zhǔn)組織制定的最低效能水準(zhǔn)。
記憶體(DRAM和快閃記憶體) 由于需要處理多重視訊串流和應(yīng)用程式同步執(zhí)行/網(wǎng)路瀏覽,我們建議,針對(duì)入門級(jí)系統(tǒng),至少要用1GB的DDR2/3記憶體;而高階系統(tǒng),設(shè)計(jì)人員應(yīng)該至少考慮用兩倍的記憶體容量,即2GB。
此外,系統(tǒng)也需要採用快閃記憶體,以供儲(chǔ)存非揮發(fā)性程式碼程存和現(xiàn)場(chǎng)更新之用。針對(duì)入門級(jí)系統(tǒng),我們建議至少要配置256MB,而高階系統(tǒng)需512MB。同時(shí)也要輔助儲(chǔ)存用的外部USB埠,讓使用者可自行載入內(nèi)容。
外部記憶體介面是限制效能的最重要因素。在一個(gè)CPU、繪圖處理器、壓縮/解壓縮引擎都共享相同記憶體的系統(tǒng)中,記憶體介面必須儘可能採取最快、最寬的吞吐量設(shè)計(jì)。
因?yàn)槔L圖效能至關(guān)重要,因此SoC和系統(tǒng)設(shè)計(jì)人員應(yīng)詳細(xì)檢查繪圖引擎供應(yīng)商提供的記憶體和系統(tǒng)匯流排需求規(guī)格。
本文小結(jié)
正如Android行動(dòng)電話一樣,我們期望看到Android智慧型電視從2011年起就會(huì)有爆炸性的成長(zhǎng)。
在設(shè)計(jì)這些平臺(tái)時(shí),選擇可針對(duì)Android進(jìn)行最佳化的CPU架構(gòu)非常重要,同時(shí)也能最佳化所有軟體堆疊所需的元件,以取得峰值效能。當(dāng)然,開發(fā)工具和相關(guān)軟體庫也是關(guān)鍵。
謹(jǐn)慎考慮本文中提出的需求建議,將能設(shè)計(jì)出可確保優(yōu)異智慧型電視體驗(yàn)的高效能SoC。
圖 1:智慧型電視的軟體架構(gòu)範(fàn)例。
圖2:現(xiàn)今智慧型電視的硬體需求。
圖3:傳統(tǒng)數(shù)位視訊的運(yùn)作環(huán)境。
圖4:常用的編解碼器和其應(yīng)用。
評(píng)論
查看更多