專利名稱:有線電視機(jī)頂盒及其處理器和通信方法
技術(shù)領(lǐng)域:
本發(fā)明涉及有線電視機(jī)頂盒,更具體地說(shuō),涉及機(jī)頂盒中前端電路的控制。
背景技術(shù):
在傳統(tǒng)的有線電視機(jī)頂盒設(shè)計(jì)中,前端電路和后端電路均由一個(gè)中央處理器控制。處理器對(duì)調(diào)諧器和解調(diào)器的控制通過(guò)經(jīng)由并聯(lián)或串連總線的直接寄存器訪問(wèn)完成。隨著技術(shù)的發(fā)展,前端電路變得十分復(fù)雜。一個(gè)中央處理器不能同時(shí)控制用于有線電視數(shù)據(jù)服務(wù)接口規(guī)范(DOCSIS)通信的前端電路和用于有線電視(CATV)功能的后端電路。
因此,現(xiàn)有機(jī)頂盒設(shè)計(jì)為具有連接至一個(gè)DOCSIS專用調(diào)諧器和一個(gè)DOCSIS專用解調(diào)器的DOCSIS專用處理器提供DOCSIS服務(wù)。這種現(xiàn)有機(jī)頂盒通過(guò)連接至獨(dú)立的CATV專用調(diào)諧器和獨(dú)立的CATV專用解調(diào)器的CATV專用處理器提供CATV服務(wù)。因此,在現(xiàn)有機(jī)頂盒中,提供DOCSIS和CATV服務(wù)的電路不共享調(diào)諧器和解調(diào)器,此外DOCSIS和CATV處理器也不共享對(duì)調(diào)諧器和解調(diào)器的控制,同樣不互相通信以共享它們各自的調(diào)諧器和解調(diào)器。
因此,需要一種能夠同時(shí)控制DOCSIS前端和后端電路并可克服上述其它缺點(diǎn)的控制電路配置和通信協(xié)議。
發(fā)明內(nèi)容
本發(fā)明的一個(gè)實(shí)施例中,提出一種與通信媒介交互的機(jī)頂盒。所述機(jī)頂盒的前端部分和后端部分連接。前端部分的輸入和輸出連接至所述通信媒介。前端部分還具有多個(gè)前端電路,設(shè)置為通過(guò)所述通信媒介接收和發(fā)送信號(hào)。此外,前端部分具有用于控制前端電路的第一處理器。后端部分具有多個(gè)后端電路,設(shè)置為處理對(duì)應(yīng)于前端部分發(fā)送和接收的信號(hào)的基帶信號(hào)。后端部分還具有第二處理器,設(shè)置為控制后端電路,并向第一處理器提供指令以控制前端電路。
本發(fā)明另一個(gè)實(shí)施例中,有線電視機(jī)頂盒的第一處理器具有將第一處理器連接至第二處理器以用于特定處理的接口。所述處理器還具有可進(jìn)行連接以控制調(diào)諧器和解調(diào)器的端口。所述調(diào)諧器的輸出連接至解調(diào)器,所述解調(diào)器的輸出連接至DOCSIS/DSG模塊的輸入以及條件訪問(wèn)模塊的輸入。所述處理器基于通過(guò)所述接口接收的指令,通過(guò)經(jīng)由所述端口發(fā)出命令來(lái)控制所述調(diào)諧器和解調(diào)器。
本發(fā)明的其它特征和優(yōu)點(diǎn)將在本文的后續(xù)部分結(jié)合附圖給出,這些特征和優(yōu)點(diǎn)通過(guò)后續(xù)描述可容易得知,或者可通過(guò)實(shí)施本發(fā)明得到。
根據(jù)本發(fā)明的一方面,提供一種有線電視機(jī)頂盒的處理器,包括將所述處理器連接至第二處理器的接口;可連接以控制有線電視數(shù)據(jù)服務(wù)接口規(guī)范(DOCSIS)模塊、調(diào)諧器和解調(diào)器的端口,其中所述調(diào)諧器連接至所述解調(diào)器和所述DOCSIS模塊;其中所述處理器基于通過(guò)所述接口接收的指令,發(fā)送命令至所述端口以控制所述調(diào)諧器和解調(diào)器兩者至少其一。
優(yōu)選地,所述處理器、所述調(diào)諧器和所述DOCSIS模塊設(shè)置在公共襯底上。
優(yōu)選地,所述DOCSIS模塊執(zhí)行DOCSIS機(jī)頂網(wǎng)關(guān)(DSG)功能。
優(yōu)選地,所述處理器通過(guò)所述接口連接至所述第二處理器。
優(yōu)選地,所述接口兼容USB和以太網(wǎng)兩者至少其一。
優(yōu)選地,所述接口兼容下述至少一個(gè)用戶數(shù)據(jù)報(bào)協(xié)議;傳輸控制協(xié)議;互聯(lián)網(wǎng)協(xié)議;以太網(wǎng)點(diǎn)對(duì)點(diǎn)協(xié)議。
優(yōu)選地,所述數(shù)據(jù)遵循包括定長(zhǎng)消息報(bào)頭和變長(zhǎng)消息主體的協(xié)議。
優(yōu)選地,所述協(xié)議定義下述消息中的至少一個(gè)請(qǐng)求;
響應(yīng)。
優(yōu)選地,所述協(xié)議定義下述消息中至少一個(gè)通知;確認(rèn)。
優(yōu)選地,所述處理器發(fā)送命令至所述端口以控制上行數(shù)據(jù)流發(fā)送器。
根據(jù)本發(fā)明的一個(gè)方面,提供一種通過(guò)可連接以控制提供DOCSIS服務(wù)的調(diào)諧器和解調(diào)器的處理器進(jìn)行通信的方法,用于具有第二處理器的有線電視機(jī)頂盒,所述方法包括從所述第二處理器接收請(qǐng)求消息以控制所述調(diào)諧器和解調(diào)器兩者至少其一;發(fā)送響應(yīng)信息。
優(yōu)選地,所述方法進(jìn)一步包括發(fā)送通知信息。
根據(jù)本發(fā)明的一個(gè)方面,提供一種與通信媒介交互的機(jī)頂盒,所述機(jī)頂盒包括具有連接至所述通信媒介的輸入和輸出的前端部分,所述前端部分包括設(shè)置為通過(guò)所述通信媒介接收和發(fā)送信號(hào)的多個(gè)前端電路;設(shè)置為控制所述多個(gè)前端電路的第一處理器;連接至所述前端部分的后端部分,所述后端部分包括多個(gè)后端電路,設(shè)置為處理對(duì)應(yīng)于所述前端部分發(fā)送和接收的信號(hào)的基帶信號(hào);第二處理器,設(shè)置為控制所述后端電路并發(fā)送指令給所述第一處理器以控制所述前端電路。
優(yōu)選地,所述機(jī)頂盒進(jìn)一步包括所述第一處理器和所述第二處理器之間的數(shù)據(jù)鏈路。
優(yōu)選地,所述多個(gè)前端電路包括用于對(duì)從所述前端部分輸入處接收的RF輸入信號(hào)中選擇的信道進(jìn)行下轉(zhuǎn)換的RF調(diào)諧器,其中所述第一處理器基于來(lái)自所述第二處理器的指令確定所選擇的信道。
優(yōu)選地,所述通信媒介是線纜,其中所述多個(gè)前端電路包括
用于有線電視接收的第一調(diào)諧器和第一解調(diào)器;用于互聯(lián)網(wǎng)接入的第二調(diào)諧器、第二解調(diào)器和上行數(shù)據(jù)流發(fā)送器;其中所述第一處理器基于來(lái)自所述第二處理器的指令控制所述第一和第二調(diào)諧器至少其一、所述第一和第二解調(diào)器至少其一以及所述上行數(shù)據(jù)流發(fā)送器。
下面將結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明,附圖中圖1是具有一個(gè)中央處理器的機(jī)頂盒的結(jié)構(gòu)框圖;圖2是本發(fā)明具有多個(gè)處理器和DOCSIS功能的機(jī)頂盒的結(jié)構(gòu)框圖;圖3是本發(fā)明具有多個(gè)處理器、DOCSIS功能和DOCSIS機(jī)頂網(wǎng)關(guān)(DSG)功能的機(jī)頂盒的結(jié)構(gòu)框圖;圖4是本發(fā)明中兩個(gè)處理器之間的交互過(guò)程的示意圖;圖5是本發(fā)明中后端處理器發(fā)送請(qǐng)求程序的流程圖;圖6是本發(fā)明中前端處理器接收請(qǐng)求程序的流程圖;圖7是本發(fā)明中后端處理器接收通知程序的流程圖;圖8是本發(fā)明中前端處理器發(fā)送通知程序的流程圖;圖9是本發(fā)明中前端處理器和后端處理器之間的交互順序的示意圖。
具體實(shí)施例方式
本申請(qǐng)描述了結(jié)合本發(fā)明特性的一個(gè)或多個(gè)實(shí)施例。所描述的實(shí)施例僅僅是本發(fā)明的例子。本發(fā)明的范圍不限于所描述的實(shí)施例。本發(fā)明的范圍在權(quán)利要求中定義。
說(shuō)明書中描述實(shí)施例時(shí)所提到的“一個(gè)實(shí)施例”、“一個(gè)例子”等,表示所描述的實(shí)施例可包括特定的特性、結(jié)構(gòu)或特征。然而,不是每個(gè)實(shí)施例均需要包括該特定的特性、結(jié)構(gòu)或特征。此外,這些描述不特指相同的實(shí)施例。如果結(jié)合實(shí)施例描述了某特定的特性、結(jié)構(gòu)或特征后,能夠理解的是,本領(lǐng)域的技術(shù)人員能夠?qū)⑺鎏匦?、結(jié)構(gòu)或特征實(shí)現(xiàn)在其它實(shí)施例中,無(wú)論是否給出相關(guān)的描述。
概述本說(shuō)明書中使用的“下行數(shù)據(jù)流”是指從頭端至有線電視機(jī)頂盒的信息傳輸?!吧闲袛?shù)據(jù)流”是指從機(jī)頂盒至頭端的信息傳輸。
有線電視數(shù)據(jù)服務(wù)接口規(guī)范(DOCSIS)是CableLabs公開的一組規(guī)范,定義了有線電視頭端和有線電視調(diào)制解調(diào)器設(shè)備的工業(yè)標(biāo)準(zhǔn)。在某種程度上,DOCSIS規(guī)范建立了有線電視調(diào)制解調(diào)器系統(tǒng)的各方面的要求和目的,包括操作支持系統(tǒng)、管理、數(shù)據(jù)接口以及有線電視系統(tǒng)數(shù)據(jù)的網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層和物理層傳輸。DOCSIS接口規(guī)范的當(dāng)前版本即3.0版本,以及DOCSIS機(jī)頂網(wǎng)關(guān)規(guī)范CM-SP-DSG-I09-061222,均由本說(shuō)明書所參考和引用。
圖1所示為現(xiàn)有的有線電視機(jī)頂盒100。此設(shè)計(jì)具有前端電路102和后端電路104。在前端102中,射頻(RF)調(diào)諧器106接收具有多個(gè)帶寬為6-8MHz的信道的RF輸入信號(hào)108。RF調(diào)諧器106從RF輸入信號(hào)108中選擇需要的一個(gè)信道(或多個(gè)信道),并將其下變頻轉(zhuǎn)換為中頻(IF)信號(hào)110。解調(diào)器112將來(lái)自RF調(diào)諧器106的IF信號(hào)轉(zhuǎn)換為數(shù)字比特流輸出114。數(shù)字比特流輸出114連接至后端電路104。
在后端電路中,條件訪問(wèn)(CA)模塊116解擾數(shù)字比特流輸出114。解多路器118選擇用戶需要的音頻和視頻節(jié)目流輸出120,并將其提供給解碼器122。解碼器122對(duì)所述音頻和視頻解碼以生成解碼器輸出124。條件訪問(wèn)模塊116還使用頻帶外(OOB)下行數(shù)據(jù)流信道和上行數(shù)據(jù)流(US)發(fā)送器126與頭端供給服務(wù)器進(jìn)行通信?,F(xiàn)有的有線電視機(jī)頂盒100的每個(gè)操作均由一個(gè)中央處理器(CPU)128進(jìn)行控制。
因而需要一種具有用于控制DOCSIS兼容電路的前端處理器和用于控制有線電視電路的后端處理器的機(jī)頂盒。圖2是本發(fā)明具有多個(gè)處理器并除有線電視服務(wù)外還支持DOCSIS功能的機(jī)頂盒200的結(jié)構(gòu)框圖。所述兩個(gè)處理器是前端處理器252和后端處理器254。有線電視機(jī)頂盒200具有前端電路202和后端電路204。在前端202中,射頻(RF)調(diào)諧器206接收具有多個(gè)帶寬為6-8MHz的RF輸入信號(hào)208。RF調(diào)諧器206從RF輸入信號(hào)208中選擇需要的一個(gè)信道(或多個(gè)信道),并將其下變頻轉(zhuǎn)換為中頻(IF)信號(hào)210。解調(diào)器212,例如正交幅度調(diào)制(QAM)解調(diào)器,將該IF信號(hào)轉(zhuǎn)換為數(shù)字比特流輸出214。數(shù)字比特流輸出214連接至后端電路204和DOCSIS模塊270的輸入,以供隨后處理。
多個(gè)調(diào)諧器和解調(diào)器,例如第一調(diào)諧器206和第二調(diào)諧器280、第一解調(diào)器212和第二解調(diào)器281,可支持有線電視服務(wù)和DOCSIS服務(wù)的同時(shí)操作。例如,第一調(diào)諧器206和第一解調(diào)器212支持DOCSIS服務(wù),同時(shí),第二調(diào)諧器280和第二解調(diào)器281支持有線電視服務(wù)。又例如,在具有3個(gè)調(diào)諧器的機(jī)頂盒中,一個(gè)調(diào)諧器可用于DOCSIS服務(wù),另外兩個(gè)調(diào)諧器可用于有線電視服務(wù)。或者,兩個(gè)調(diào)諧器可用于DOCSIS服務(wù),剩下的一個(gè)調(diào)諧器可用于有線電視服務(wù)。因此,如果在有線數(shù)據(jù)系統(tǒng)中啟用了DOCSIS下行數(shù)據(jù)流信道綁定,可將多個(gè)調(diào)諧器和多個(gè)解調(diào)器連接至DOCSIS模塊270,并由前端處理器252來(lái)控制。
在后端電路204中,條件訪問(wèn)(CA)模塊216解擾數(shù)字比特流輸出214,并將其提供給解多路器218。解多路器218選擇音頻和視頻節(jié)目流輸出220,并將其提供給解碼器222。解碼器222對(duì)該音頻和視頻解碼以生成解碼器輸出224。條件訪問(wèn)模塊216還使用OOB下行數(shù)據(jù)流信道和上行數(shù)據(jù)流發(fā)送器226與頭端供給服務(wù)器通信。
在有線電視機(jī)頂盒200中,后端處理器254與前端處理器252共享前端202中電路的控制。前端處理器252控制前端處理器252的電路。前端處理器252基于通過(guò)前端處理器接口258從后端處理器254接收的指令獨(dú)立地通過(guò)端口257發(fā)出命令,來(lái)控制前端202內(nèi)的電路。后端處理器254通過(guò)數(shù)據(jù)鏈路256傳輸指令至前端處理器252。
數(shù)據(jù)鏈路256提供信息傳輸?shù)穆窂?,例如,?shù)據(jù)、消息和多個(gè)處理器之間通過(guò)通信媒介的交互。數(shù)據(jù)鏈路256通過(guò)前端處理器接口258和后端處理器接口260將前端處理器252與后端處理器254連接。數(shù)據(jù)鏈路256可以是網(wǎng)絡(luò),例如,以太網(wǎng)或高速數(shù)據(jù)總線如USB。數(shù)據(jù)鏈路256可兼容用戶數(shù)據(jù)報(bào)協(xié)議(UDP)、傳輸控制協(xié)議(TCP)、互聯(lián)網(wǎng)協(xié)議(IP)以及以太網(wǎng)點(diǎn)對(duì)點(diǎn)協(xié)議(PPPoE)中的至少一種。或者,其它網(wǎng)絡(luò)協(xié)議也可以在數(shù)據(jù)鏈路256之上運(yùn)行。
前端處理器252與前端202中的至少一個(gè)其它電路設(shè)置在一個(gè)公共的襯底上。同樣,后端處理器254可與后端204中的至少一個(gè)其它電路設(shè)置在一個(gè)公共的襯底上。
圖3是本發(fā)明具有多個(gè)處理器、還提供DOCSIS數(shù)據(jù)服務(wù)的有線電視機(jī)頂盒300的結(jié)構(gòu)框圖。此外,它支持DSG功能,可使機(jī)頂盒與頭端供給服務(wù)器通過(guò)DOCSIS通信,因此消除了對(duì)OOB下行數(shù)據(jù)流調(diào)諧器和解調(diào)器的需求。此設(shè)計(jì)具有前端電路302和后端電路304。一種配置中,有線電視機(jī)頂盒300通過(guò)DOCSIS/DSSG模塊306支持?jǐn)?shù)據(jù)服務(wù)和機(jī)頂控制服務(wù)(set-top controlservice)。有線電視機(jī)頂盒300具有前端處理器252,用于控制DOCSIS/DSSG模塊306和至少一個(gè)調(diào)諧器例如調(diào)諧器206或第二調(diào)諧器280,以及至少一個(gè)解調(diào)器例如解調(diào)器212或第二解調(diào)器281,該前端處理器252連接至DOCSIS/DSG模塊306,支持DOCSIS和DSG服務(wù)。
類似圖2,圖3具有多個(gè)調(diào)諧器和解調(diào)器,例如,第一調(diào)諧器206和第二調(diào)諧器280,第一解調(diào)器212和第二解調(diào)器281,支持有線電視服務(wù)和DOCSIS服務(wù)的同時(shí)運(yùn)行。例如,第一調(diào)諧器206和第一解調(diào)器212支持DOCSIS服務(wù),同時(shí)第二調(diào)諧器280和第二解調(diào)器281支持有線電視服務(wù)。如果在有線數(shù)據(jù)系統(tǒng)中啟用了DOCSIS下行數(shù)據(jù)流信道綁定,可將多個(gè)調(diào)諧器和多個(gè)解調(diào)器連接至DOCSIS模塊270,并由前端處理器252來(lái)控制。此外,DOCSIS/DSG模塊306向機(jī)頂盒300提供服務(wù)以與頭端供給服務(wù)器通信。
在有線電視機(jī)頂盒300中,后端處理器254與前端處理器252共享前端電路例如調(diào)諧器206、208和解調(diào)器212、281的控制。前端處理器252基于通過(guò)前端處理器接口258從后端處理器254接收的指令獨(dú)立地通過(guò)端口257控制前端電路。后端處理器254通過(guò)數(shù)據(jù)鏈路256傳輸指令至前端處理器252。
一個(gè)例子中,調(diào)諧器206和解調(diào)器212服務(wù)于后端304。第二調(diào)諧器280和第二解調(diào)器281服務(wù)于DOCSIS/DSG模塊306。前端處理器252和后端處理器254之間的數(shù)據(jù)鏈路256是以太網(wǎng)。后端處理器254使用數(shù)據(jù)鏈路256與前端處理器252通信,以便控制調(diào)諧器206和解調(diào)器212。例如,后端處理器254可指示前端處理器252改變調(diào)諧器206的信道。條件訪問(wèn)模塊216使用DOCSIS/DSG模塊306與頭端供給服務(wù)器通信。經(jīng)由數(shù)據(jù)鏈路256的通信遵循本說(shuō)明書中描述的遠(yuǎn)程前端控制協(xié)議。
遠(yuǎn)程前端控制協(xié)議前端處理器252和后端處理器254之間存在通信的需求。所述通信對(duì)于后端處理器254控制前端202、302中與有線電視相關(guān)的電路例如調(diào)諧器206是必須的。這一通信需求要求使用滿足下述3個(gè)要求的協(xié)議該協(xié)議必須能使后端處理器254控制至少部分前端處理器功能,例如,對(duì)調(diào)諧器206進(jìn)行頻率調(diào)諧或指示解調(diào)器212獲取QAM信道。該協(xié)議必須簡(jiǎn)單,不需要冗長(zhǎng)的編碼,以便易于實(shí)施在嵌入式環(huán)境中。該協(xié)議還需要針對(duì)前端處理器252和后端處理器254之間的不同數(shù)據(jù)鏈路,是媒體獨(dú)立地。
實(shí)現(xiàn)前端處理器252和后端處理器254之間的通信,可以采用一些現(xiàn)有的協(xié)議,例如,遠(yuǎn)程過(guò)程調(diào)用(RPC)和簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議(SOAP)。然而,這些協(xié)議依賴于其它網(wǎng)絡(luò)協(xié)議,例如,互聯(lián)網(wǎng)協(xié)議(IP)和超文本傳輸協(xié)議(HTTP)。在IP服務(wù)不可用的情況下,例如,如果使用USB連接兩個(gè)處理器時(shí),這些協(xié)議就不可用。同樣地,這些協(xié)議不是專門設(shè)計(jì)用于嵌入式環(huán)境中的前端控制,采用這些協(xié)議會(huì)引入附加的系統(tǒng)開銷,例如,外部數(shù)據(jù)表示(XDR)和可擴(kuò)展標(biāo)記語(yǔ)言(XML)支持,這些將增加編碼區(qū)域(code footprint)和增加不必要的系統(tǒng)復(fù)雜程度。最終某些操作系統(tǒng)不能夠支持RPC和SOAP,因此,他們的適用性受到限制。
如圖4所示,遠(yuǎn)程前端控制協(xié)議定義了前端處理器252和后端處理器254之間點(diǎn)對(duì)點(diǎn)交互400的類型。第一點(diǎn)對(duì)點(diǎn)交互401包括請(qǐng)求消息402和響應(yīng)消息404。后端處理器254通過(guò)發(fā)送請(qǐng)求消息402至前端處理器252來(lái)開始第一點(diǎn)對(duì)點(diǎn)交互401。請(qǐng)求消息402請(qǐng)求前端處理器252執(zhí)行某操作。前端處理器252在接收到請(qǐng)求消息402后執(zhí)行該操作,并隨后發(fā)送響應(yīng)消息404至后端處理器254。
第二點(diǎn)對(duì)點(diǎn)交互405包括通知消息406和確認(rèn)消息408。前端處理器252通過(guò)發(fā)送通知消息406至后端處理器254來(lái)開始第二點(diǎn)對(duì)點(diǎn)交互405。通知消息406指出在前端電路202、302中有事件發(fā)生。后端處理器254通過(guò)發(fā)送確認(rèn)消息408至前端處理器252來(lái)確認(rèn)接收到該通知消息406。
遠(yuǎn)程控制協(xié)議也定義了本說(shuō)明書中將描述的消息格式。該消息格式包括定長(zhǎng)消息包頭和變長(zhǎng)消息主體。消息主體中攜帶的信息是操作或通知細(xì)節(jié)。同樣被定義的還有前端處理器252和后端處理器254之間的一組操作和通知。操作包括操作ID和相關(guān)的操作參數(shù)。通知包括設(shè)備ID和相關(guān)的事件數(shù)據(jù)。遠(yuǎn)程前端控制協(xié)議同樣還定義了消息傳輸、消息格式、可靠性和流控制。如果使用用戶數(shù)據(jù)報(bào)協(xié)議(UDP)或USB用于消息傳輸,遠(yuǎn)程前端控制協(xié)議還定義了特定映射的具體細(xì)節(jié)。
下面章節(jié)將解釋遠(yuǎn)程前端控制協(xié)議。第一節(jié)說(shuō)明前端處理器252和后端處理器254中的交互操作過(guò)程。第二節(jié)描述消息格式、支持的操作和相關(guān)的數(shù)據(jù)結(jié)構(gòu)。第三節(jié)描述可靠性、流控制和與遠(yuǎn)程前端控制協(xié)議同時(shí)使用的數(shù)據(jù)傳輸服務(wù)。第四節(jié)說(shuō)明交互順序的一個(gè)示例。
(a)交互處理過(guò)程圖5是本發(fā)明后端處理器254內(nèi)的請(qǐng)求程序500的流程圖。步驟502,從上層軟件接收到操作請(qǐng)求。步驟504,請(qǐng)求程序500建立并高速緩存請(qǐng)求消息402。請(qǐng)求消息402包含隨機(jī)產(chǎn)生的交互ID用于交互操作識(shí)別。步驟506,請(qǐng)求程序500通過(guò)數(shù)據(jù)鏈路256發(fā)送該請(qǐng)求消息402至前端處理器252。步驟508,后端處理器254在預(yù)定義的時(shí)間周期等待響應(yīng)。步驟510,后端處理器254在經(jīng)過(guò)該預(yù)定時(shí)間周期后超時(shí)。
步驟512,后端處理器254接收響應(yīng)消息404。步驟514,請(qǐng)求程序500解析響應(yīng)消息404,并檢查響應(yīng)消息404中的交互ID是否與未完成的(outstanding)請(qǐng)求消息402內(nèi)的交互ID是否匹配。步驟516,如果匹配,被高速緩存的消息在步驟524中被消除,并且該次交互成功完成,并且在步驟526中返回成功狀態(tài)至上層。步驟516,如果不匹配,請(qǐng)求程序500拋棄接收的響應(yīng)消息404,并進(jìn)入等待直到發(fā)生超時(shí),或者接收另一個(gè)響應(yīng)消息404。如果出現(xiàn)超時(shí),請(qǐng)求程序500將嘗試重新發(fā)送被高速緩存的請(qǐng)求消息402。重新嘗試的次數(shù)是固定的。步驟518,如果請(qǐng)求程序500的重新發(fā)送超過(guò)該嘗試次數(shù),則在步驟520中返回失敗狀態(tài)至上層。
圖6是本發(fā)明前端處理器252內(nèi)接收請(qǐng)求程序600的流程圖。步驟602,接收請(qǐng)求程序600準(zhǔn)備好處理請(qǐng)求。步驟604,前端處理器252循環(huán)等待來(lái)自后端處理器254的請(qǐng)求消息402。步驟606,前端處理器252從后端處理器254接收消息。步驟608,在接收到請(qǐng)求消息402后,前端處理器252解析所接收的請(qǐng)求消息402并從請(qǐng)求消息402中提取操作ID和操作參數(shù)。步驟610,前端處理器252執(zhí)行所請(qǐng)求的操作。步驟612,前端處理器252建立并通過(guò)數(shù)據(jù)鏈路256發(fā)送響應(yīng)消息404給后端處理器254。該響應(yīng)消息404包含與請(qǐng)求消息402相同的交互ID。
圖7是本發(fā)明后端處理器254內(nèi)的接收通知程序700的流程圖。步驟702,接收通知程序700準(zhǔn)備好處理通知。步驟704,后端處理器254循環(huán)等待來(lái)自前端處理器252的通知消息406。步驟706,后端處理器254從前端處理器252接收到消息。步驟708,在后端處理器254接收到通知消息406后,后端處理器254從通知消息406中提取設(shè)備ID和相關(guān)的事件數(shù)據(jù)。步驟710,后端處理器254發(fā)送該事件數(shù)據(jù)至對(duì)應(yīng)的處理線程或程序。步驟712,后端處理器254建立確認(rèn)消息408,并將其發(fā)送至前端處理器252,以確認(rèn)后端處理器254已經(jīng)成功接收到通知消息406。
圖8是本發(fā)明前端處理器252內(nèi)的發(fā)送通知程序800的流程圖。步驟802,一個(gè)事件,例如,信道“鎖丟失”,觸發(fā)對(duì)通知消息406的需求。步驟804,前端處理器252建立并高速緩存將被發(fā)送至后端處理器254的通知消息406。通知消息406包括用于指出事件源的設(shè)備ID以及任何與該事件相關(guān)的數(shù)據(jù)。步驟806,前端處理器252發(fā)送通知消息406至后端處理器254。步驟808,前端處理器252等待來(lái)自后端處理器254的確認(rèn)消息408。步驟810,如果在預(yù)定的時(shí)間周期內(nèi)沒(méi)有接收確認(rèn)消息408,前端處理器252將超時(shí)。出現(xiàn)超時(shí)的情況下,前端處理器252將按照固定次數(shù)重新發(fā)送被高速緩存的通知消息406。步驟812,如果前端處理器252重新發(fā)送超過(guò)了該固定次數(shù),發(fā)送通知程序800將失敗。步驟814,發(fā)送通知程序800返還失敗狀態(tài)至其調(diào)用者。
步驟816,前端處理器252從后端處理器254接收到確認(rèn)消息408。步驟818,前端處理器252從確認(rèn)消息408中提取交互ID。步驟820,前端處理器252將來(lái)自確認(rèn)消息408的交互ID與來(lái)自被高速緩存的通知消息406的交互ID進(jìn)行比較。如果匹配,步驟822中拋棄該被高速緩存的消息,此次交互成功完成,并在步驟824中返回成功狀態(tài)。步驟820,如果不匹配,前端處理器252重復(fù)步驟808并繼續(xù)等待確認(rèn)消息408。
(b)消息格式、功能和結(jié)構(gòu)如上所述,遠(yuǎn)程前端控制協(xié)議具有4種類型的消息請(qǐng)求、響應(yīng)、通知和確認(rèn)。每種消息具有定長(zhǎng)的包頭和變長(zhǎng)的主體。主體的長(zhǎng)度和內(nèi)容根據(jù)主體內(nèi)的信息而變化。
消息中每個(gè)數(shù)據(jù)字段是網(wǎng)絡(luò)字節(jié)順序形式的32比特?zé)o符號(hào)整數(shù)。表1展示了請(qǐng)求消息的示例性結(jié)構(gòu)。表2展示了響應(yīng)消息的示例性結(jié)構(gòu)。表3展示了通知消息的示例性結(jié)構(gòu)。表4展示了確認(rèn)消息的示例性結(jié)構(gòu)。
表1.請(qǐng)求
表2.響應(yīng)
表3.通知
表4.確認(rèn)
所有消息中的前4個(gè)字段是相同的?!伴L(zhǎng)度”字段是可選項(xiàng),用于傳輸服務(wù)未提供長(zhǎng)度信息的情況中,例如TCP?!鞍姹尽弊侄伟蠖颂幚砥?54和前端處理器252上運(yùn)行的軟件的當(dāng)前版本號(hào)。版本字段需要匹配以實(shí)現(xiàn)通信。“交互ID”字段唯一地標(biāo)識(shí)后端處理器254和前端處理器252之間的一次交互。針對(duì)每次交互,“交互ID”字段隨機(jī)產(chǎn)生?!邦愋汀弊侄螛?biāo)識(shí)消息類型請(qǐng)求、響應(yīng)、通知或確認(rèn)。類型字段的示例值如表5所示。
表5.消息類型值
在響應(yīng)消息中,“返回碼”字段通知后端處理器254所請(qǐng)求的操作是否成功。如果“返回碼”是0,就表示成功。否則,所請(qǐng)求的操作失敗,并且“返回碼”包含的位圖(bitmap)指出錯(cuò)誤情況。表6定義了“返回碼”的示例值和位圖。
表6.返回碼值
在通知消息中,“設(shè)備ID”字段通知后端處理器254哪個(gè)前端電路已產(chǎn)生了事件。表7定義了有效設(shè)備的示例。
表7.設(shè)備ID值
“事件數(shù)據(jù)”字段告訴后端處理器254特定設(shè)備上發(fā)生了哪個(gè)事件。對(duì)于下行數(shù)據(jù)流信道,“事件數(shù)據(jù)”是32比特的無(wú)符號(hào)整數(shù)?!笆录?shù)據(jù)”字段中的每個(gè)比特具有一個(gè)定義。表8定義了下行數(shù)據(jù)流信道的示例性事件。“事件數(shù)據(jù)”比特是可被“或”運(yùn)算的位圖。
表8.DS信道的事件
在請(qǐng)求消息中,“操作ID”(OID)字段標(biāo)識(shí)后端處理器254請(qǐng)求的操作。表9定義了“操作ID”的示例,表10至表39描述“操作ID”數(shù)據(jù)結(jié)構(gòu)的示例。
表9.請(qǐng)求操作
表10.InitSession操作的參數(shù)和結(jié)果
表11.GetVersion操作的參數(shù)和結(jié)果
表12.GetTotalChannels操作的參數(shù)和結(jié)果
表13.OpenChannel操作的參數(shù)和結(jié)果
表14.CloseChannel操作的參數(shù)和結(jié)果
表15.GetChStatus操作的參數(shù)和結(jié)果
表16.DsAcquire操作的參數(shù)和結(jié)果
表17.EnPowerSave操作的參數(shù)和結(jié)果
表18.GetSoftDecision操作的參數(shù)和結(jié)果
表19.GetLockStatus操作的參數(shù)和結(jié)果
表20.OpenTuner操作的參數(shù)和結(jié)果
表21.CloseTuner操作的參數(shù)和結(jié)果
表22.SetTunerFrequency操作的參數(shù)和結(jié)果
表23.OobOpenTuner操作的參數(shù)和結(jié)果
表24.OobCloseTuner操作的參數(shù)和結(jié)果
表25.OobSetTunerFrequency操作的參數(shù)和結(jié)果
表26.OobOpenChannel操作的參數(shù)和結(jié)果
表27.OobCloseChannel操作的參數(shù)和結(jié)果
表28.OobAcquire操作的參數(shù)和結(jié)果
表29.OobGetStatus操作的參數(shù)和結(jié)果
表30.OobGetLockStatus操作的參數(shù)和結(jié)果
表31.OobSetSpectrum操作的參數(shù)和結(jié)果
表32.UsOpenChannel操作的參數(shù)和結(jié)果
表33.UsCloseChannel操作的參數(shù)和結(jié)果
表34.UsSetOperationMode操作的參數(shù)和結(jié)果
表35.UsSetSymbolrate操作的參數(shù)和結(jié)果
表36.UsSetRfFreq操作的參數(shù)和結(jié)果
表37.UsSetPowerLevel操作的參數(shù)和結(jié)果
表38.UsGetStatus操作的參數(shù)和結(jié)果
表39.UsSetPreamblePattern操作的參數(shù)和結(jié)果
(c)可靠性、流程控制和消息傳輸服務(wù)遠(yuǎn)程前端控制協(xié)議具有內(nèi)置可靠性控制。如(a)消息處理中所描述的,如果在對(duì)應(yīng)的響應(yīng)消息成功接收前發(fā)生超時(shí),504、510、518、805、810和812,遠(yuǎn)程前端控制協(xié)議高速緩存所發(fā)送的消息并重新發(fā)送該消息。遠(yuǎn)程前端控制協(xié)議還使用停止和等待流程控制。如(a)消息處理中所描述的,在請(qǐng)求消息被發(fā)送之后,506、508、806、808,遠(yuǎn)程前端控制協(xié)議等待響應(yīng)消息。
遠(yuǎn)程前端控制協(xié)議可使用多個(gè)傳輸協(xié)議中至少一個(gè)作為消息傳輸服務(wù)。遠(yuǎn)程前端控制協(xié)議不需要可靠的傳輸服務(wù),因?yàn)槠鋬?nèi)置有可靠性控制。所述傳輸協(xié)議包括用戶數(shù)據(jù)報(bào)協(xié)議(UDP)、傳輸控制協(xié)議(TCP)、以太網(wǎng)點(diǎn)對(duì)點(diǎn)協(xié)議(PPPoE)和USB。使用傳輸服務(wù)時(shí),需要將遠(yuǎn)程前端控制消息映射入該傳輸協(xié)議的有效負(fù)載中。下面的章節(jié)列出了UDP和USB用作傳輸協(xié)議時(shí)的消息映射。
當(dāng)UDP用作傳輸協(xié)議時(shí),因其提供數(shù)據(jù)包長(zhǎng)度信息,可移除消息報(bào)頭中的“長(zhǎng)度”字段。表40-43展示了UDP用作傳輸協(xié)議時(shí)的幀結(jié)構(gòu)。
表40.基于UDP的請(qǐng)求
表41.基于UDP的響應(yīng)
表42.基于UDP的通知
表43.基于UDP的確認(rèn)
當(dāng)USB用于連接前端和后端處理器252、254時(shí),一個(gè)處理器將作為USB主機(jī),另一個(gè)將作為USB設(shè)備。并沒(méi)有要求哪個(gè)處理器需要作為USB主機(jī),但為了便于展示,在下面的討論中,我們假設(shè)后端處理器254為USB主機(jī),前端處理器252為USB設(shè)備。USB設(shè)備可使用通信類設(shè)備(CDC)的抽象控制模型進(jìn)行設(shè)置,如通信設(shè)備USB類定義1.1版本所定義。通信設(shè)備的USB類特定請(qǐng)求可用于攜帶遠(yuǎn)程前端控制協(xié)議。CDC類特定設(shè)備請(qǐng)求“SendEncapsulatedCommand”可用于傳輸請(qǐng)求和確認(rèn)。CDC類特定設(shè)備請(qǐng)求“GetEncapsulatedResponse”可用于傳輸響應(yīng)和通知。表44-47展示了使用USB時(shí)的映射。
表44.基于CDC SendEncapsulatedCommand的請(qǐng)求
表45.基于CDC GetEncapsulatedResponse的響應(yīng)
表46.基于CDC GetEncapsulatedResponse的通知
表45.基于CDC SendEncapsulatedCommand的確認(rèn)
圖9所示為本發(fā)明前端處理器252和后端處理器254之間交互操作順序900的示意圖。所示的交互順序900包括獲取QAM信道的交互。
首先,后端處理器254發(fā)送“InitSession”請(qǐng)求902至前端處理器252。后端處理器254也高速緩存所述請(qǐng)求消息902并啟動(dòng)超時(shí)計(jì)時(shí)器。若“InitSession”丟失,則計(jì)時(shí)器到時(shí)。在計(jì)時(shí)器到期后,后端處理器254重新傳送被高速緩存的“InitSession”請(qǐng)求904。這次消息正常傳送。
前端處理器252接收該請(qǐng)求并基于“InitSession”請(qǐng)求904初始化內(nèi)部對(duì)話數(shù)據(jù)結(jié)構(gòu)。然后前端處理器252使用具有“返回碼”為0的響應(yīng)消息906回應(yīng)后端處理器254,表示操作成功。
接收到響應(yīng)消息906后,后端處理器254驗(yàn)證響應(yīng)消息906及其高速緩存的請(qǐng)求消息902兩者中的交互ID。如果交互ID匹配,后端處理器254還檢查響應(yīng)消息906中的“返回碼”。
在“InitSession”請(qǐng)求904成功驗(yàn)證后,后端處理器254發(fā)送另一個(gè)“GetTotalChannels”請(qǐng)求908。為了響應(yīng)“GetTotalChannels”請(qǐng)求908,前端處理器252在響應(yīng)消息910的“Num”字段中返回2并返回表示成功的“返回碼”。
在通過(guò)檢查響應(yīng)消息910的“交互ID”和“返回碼”驗(yàn)證“GetTotalChannels”請(qǐng)求908成功后,后端處理器254發(fā)送請(qǐng)求“OpenChannel”912。為了打開前端202、302中的下行數(shù)據(jù)流信道1,后端處理器254還在“OpenChannel”請(qǐng)求消息912的“設(shè)備ID”字段中指定11(下行數(shù)據(jù)流頻帶內(nèi)解調(diào)器1,281)。接收到“OpenChannel”請(qǐng)求消息912后,前端處理器252為所請(qǐng)求的下行數(shù)據(jù)流信道預(yù)留資源,然后發(fā)出響應(yīng)消息914。
在通過(guò)檢查響應(yīng)消息914的“交互ID”和“返回碼”驗(yàn)證“OpenChannel”請(qǐng)求91成功后,后端處理器254發(fā)送“SetTunerFrequency”請(qǐng)求916至前端處理器252。在“SetTunerFrequency”請(qǐng)求的“設(shè)備ID”字段中,后端處理器指定21(頻帶內(nèi)調(diào)諧器1,280),在“rfFreq”字段,指定765000000Hz。在“模式字段”,指定“0”。前端處理器252接收到“SetTunerFrequency”消息916,并對(duì)其進(jìn)行解析,隨后調(diào)諧頻帶內(nèi)調(diào)諧器1 280至765000000Hz,并隨后發(fā)送表示成功狀態(tài)的響應(yīng)消息918至后端處理器254。
在通過(guò)檢查響應(yīng)消息918的“交互ID”和“返回碼”驗(yàn)證“SetTunerFrequency”請(qǐng)求916成功后,后端處理器254發(fā)送“DsAcquire”消息920至前端處理器252。消息中的“SymbolRate”字段包含符號(hào)率?!癿odType”字段包含調(diào)制類型。前端處理器252接收“DsAcquire”消息920,并解析包含符號(hào)率和調(diào)制類型的參數(shù),并通知相應(yīng)的線程使用解析出的參數(shù)執(zhí)行所請(qǐng)求的操作。前端處理器252隨后返回成功響應(yīng)922。
在通過(guò)檢查響應(yīng)消息922的“交互ID”和“返回碼”驗(yàn)證“DsAcquire”請(qǐng)求920成功后,后端處理器254開始等待來(lái)自前端處理器252的事件。
獲得所請(qǐng)求的下行數(shù)據(jù)流信道后,前端處理器252發(fā)送包含設(shè)備ID和表示FEC和QAM鎖定狀態(tài)的相關(guān)事件數(shù)據(jù)的通知消息924。后端處理器254接收通知消息924,并發(fā)送確認(rèn)消息926至前端處理器252。前端處理器252隨后接收確認(rèn)消息926。
結(jié)論本發(fā)明以上是通過(guò)一些實(shí)施例進(jìn)行描述的,本領(lǐng)域技術(shù)人員知悉,在不脫離本發(fā)明的精神和范圍的情況下,可以對(duì)這些特征和實(shí)施例進(jìn)行各種改變或等效替換。另外,在本發(fā)明的教導(dǎo)下,可以對(duì)這些特征和實(shí)施例進(jìn)行修改以適應(yīng)具體的情況及材料而不會(huì)脫離本發(fā)明的精神和范圍。因此,本發(fā)明不受此處所公開的具體實(shí)施例的限制,所有落入本申請(qǐng)的權(quán)利要求范圍內(nèi)的實(shí)施例都屬于本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種有線電視機(jī)頂盒的處理器,其特征在于,所述處理器包括將所述處理器連接至第二處理器的接口;可連接以控制有線電視數(shù)據(jù)服務(wù)接口規(guī)范(DOCSIS)模塊、調(diào)諧器和解調(diào)器的端口,其中所述調(diào)諧器連接至所述解調(diào)器和所述DOCSIS模塊;其中所述處理器基于通過(guò)所述接口接收的指令,發(fā)送命令至所述端口以控制所述調(diào)諧器和解調(diào)器兩者至少其一。
2.根據(jù)權(quán)利要求1所述的處理器,其特征在于,所述處理器、所述調(diào)諧器和所述DOCSIS模塊設(shè)置在公共襯底上。
3.根據(jù)權(quán)利要求1所述的處理器,其特征在于,所述DOCSIS模塊執(zhí)行DOCSIS機(jī)頂網(wǎng)關(guān)功能。
4.根據(jù)權(quán)利要求1所述的處理器,其特征在于,所述處理器通過(guò)所述接口連接至所述第二處理器。
5.根據(jù)權(quán)利要求1所述的處理器,其特征在于,所述接口兼容USB和以太網(wǎng)兩者至少其一。
6.一種通過(guò)可連接以控制提供DOCSIS服務(wù)的調(diào)諧器和解調(diào)器的處理器進(jìn)行通信的方法,用于具有第二處理器的有線電視機(jī)頂盒,其特征在于,所述方法包括從所述第二處理器接收請(qǐng)求消息以控制所述調(diào)諧器和解調(diào)器兩者至少其一;發(fā)送響應(yīng)信息。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述方法進(jìn)一步包括發(fā)送通知信息。
8.一種與通信媒介交互的機(jī)頂盒,其特征在于,所述機(jī)頂盒包括具有連接至所述通信媒介的輸入和輸出的前端部分,所述前端部分包括設(shè)置為通過(guò)所述通信媒介接收和發(fā)送信號(hào)的多個(gè)前端電路;設(shè)置為控制所述多個(gè)前端電路的第一處理器;連接至所述前端部分的后端部分,所述后端部分包括多個(gè)后端電路,設(shè)置為處理對(duì)應(yīng)于所述前端部分發(fā)送和接收的信號(hào)的基帶信號(hào);第二處理器,設(shè)置為控制所述后端電路并發(fā)送指令給所述第一處理器以控制所述前端電路。
9.根據(jù)權(quán)利要求8所述的機(jī)頂盒,其特征在于,所述機(jī)頂盒進(jìn)一步包括所述第一處理器和所述第二處理器之間的數(shù)據(jù)鏈路。
10.根據(jù)權(quán)利要求8所述的機(jī)頂盒,其特征在于,所述多個(gè)前端電路包括用于對(duì)從所述前端部分輸入處接收的RF輸入信號(hào)中選擇的信道進(jìn)行下轉(zhuǎn)換的RF調(diào)諧器,其中所述第一處理器基于來(lái)自所述第二處理器的指令確定所選擇的信道。
全文摘要
本發(fā)明涉及一種有線電視機(jī)頂盒的處理器,具有連接所述處理器至第二處理器的接口。所述處理器還具有可連接以控制調(diào)諧器、解調(diào)器和具有或不具有DSG支持的DOCSIS模塊的端口。所述調(diào)諧器的輸出連接至所述解調(diào)器的輸入,并且所述解調(diào)器的輸出連接至所述DOCSIS模塊的輸入。所述解調(diào)器的輸出還連接至由所述第二處理器控制的條件訪問(wèn)模塊。所述處理器基于從第二處理器通過(guò)所述接口接收的指令,通過(guò)端口發(fā)出命令以控制所述調(diào)諧器和解調(diào)器至少其一。
文檔編號(hào)H04N5/00GK101076076SQ200710085300
公開日2007年11月21日 申請(qǐng)日期2007年3月1日 優(yōu)先權(quán)日2006年3月1日
發(fā)明者馮偉民, 保羅·麥格林, 大衛(wèi)·勒溫, 大衛(wèi)·埃里克森, 王海松 申請(qǐng)人:美國(guó)博通公司