專利名稱:用于在軟件解調(diào)器中管理數(shù)據(jù)丟失的算法的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及多頻帶無(wú)線系統(tǒng),具體地但非排它地,涉及用于在寬帶和/或
窄帶環(huán)境中接收和處理多頻帶信號(hào)的方法。
背景技術(shù):
技術(shù)的發(fā)展使得能夠數(shù)字化從發(fā)送站到接收站的大量聲音、視頻、圖像和數(shù)據(jù)信 息。一種新興的應(yīng)用是數(shù)字電視的使用,包括能夠容許接收站移動(dòng)的手持定向廣播服務(wù)。例 如,在地面數(shù)字視頻廣播(DVB-T)已因游牧而廣泛使用于便攜式接收狀況的同時(shí),手持式 數(shù)字視頻廣播(DVB-H)和地面數(shù)字多媒體廣播(T-DMB)被用于移動(dòng)電視應(yīng)用中。
在無(wú)線電通信中在站之間傳輸數(shù)據(jù)的需求要求在站之間和每個(gè)站內(nèi)部傳輸可靠 的數(shù)據(jù)流?;诨镜膫鬏敊C(jī)制,某些數(shù)據(jù)傳輸可能需要緩沖和存儲(chǔ)數(shù)據(jù)塊。例如,在通用 串行總線(USB)實(shí)施中,可以利用等時(shí)(isochronous)數(shù)據(jù)傳輸,以便在由軟件解調(diào)器解調(diào) 之前,將數(shù)字電視數(shù)據(jù)發(fā)送到存儲(chǔ)位置。當(dāng)輸入的等時(shí)數(shù)據(jù)流存儲(chǔ)在固定緩沖器位置處時(shí), 如果不將數(shù)據(jù)從緩沖器定期地傳輸?shù)教幚砥?,則可能會(huì)導(dǎo)致緩沖區(qū)溢出和數(shù)據(jù)丟失,從而 出現(xiàn)數(shù)據(jù)同步問(wèn)題。
在附圖的圖式中,以示例性而非限制性方式示出本發(fā)明,其中 圖1是網(wǎng)絡(luò)環(huán)境的一個(gè)實(shí)施例的框圖。 圖2是用于為進(jìn)行軟件解調(diào)而對(duì)信道數(shù)據(jù)進(jìn)行緩沖的方法的實(shí)施例。 圖3是用于對(duì)窄帶信道數(shù)據(jù)進(jìn)行軟件解調(diào)的計(jì)算系統(tǒng)的實(shí)施例。 圖4是用于緩沖窄帶信道數(shù)據(jù)的存儲(chǔ)器的實(shí)施例。 圖5是為硬件和軟件解調(diào)而配置的移動(dòng)設(shè)備的實(shí)施例的框圖。 圖6是為進(jìn)行軟件解調(diào)而對(duì)信道數(shù)據(jù)進(jìn)行緩沖的方法的備選實(shí)施例。
具體實(shí)施例方式
在下面的詳細(xì)說(shuō)明中,提出了許多具體細(xì)節(jié)以提供對(duì)本發(fā)明的徹底理解。然而,本
領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,可以不用這些具體細(xì)節(jié)來(lái)實(shí)現(xiàn)本發(fā)明。在其它例子中,沒(méi)有詳細(xì)描 述公知的方法、過(guò)程、部件和電路以免混淆本發(fā)明。 本文描述了用于在計(jì)算系統(tǒng)中管理數(shù)據(jù)丟失的方法和系統(tǒng)的實(shí)施例。在下面的說(shuō) 明中,提出了許多具體細(xì)節(jié),諸如對(duì)用于在多頻帶無(wú)線系統(tǒng)中減少和消除數(shù)據(jù)傳輸同步錯(cuò) 誤的機(jī)制的描述,以提供對(duì)本發(fā)明的實(shí)施例的徹底理解。然而,本領(lǐng)域技術(shù)人員應(yīng)意識(shí)到, 可以不利用這些具體細(xì)節(jié)中的一個(gè)或多個(gè)細(xì)節(jié)而是用其它方法、部件、材料等來(lái)實(shí)現(xiàn)本發(fā) 明。在其它例子中,沒(méi)有示出或詳細(xì)描述公知的結(jié)構(gòu)、材料和操作以免混淆本發(fā)明的各個(gè)方 面。 技術(shù)上的進(jìn)步在于提供了用于多頻帶無(wú)線系統(tǒng)的數(shù)據(jù)同步機(jī)制,該系統(tǒng)在多個(gè)信
4道或頻帶上通信以提供無(wú)間斷的廣播流。作為示例,無(wú)線站可以包括主機(jī)處理器、閃存設(shè)
備、隨機(jī)存取存儲(chǔ)器和收發(fā)器,以配置成在窄帶或?qū)拵诺郎线B續(xù)地或同時(shí)地通信。 在一個(gè)實(shí)施例中,用于使數(shù)據(jù)分組維持同步的方法可以包括將數(shù)據(jù)分組劃分為具
有報(bào)頭的多個(gè)塊。將連續(xù)性計(jì)數(shù)器添加于多個(gè)塊的每個(gè)塊的報(bào)頭中,并將多個(gè)塊存儲(chǔ)在緩
沖存儲(chǔ)器中。監(jiān)視通信信道的可用性,并且當(dāng)通信信道不可用時(shí)擦除多個(gè)塊中的一個(gè)或多
個(gè)塊。監(jiān)視連續(xù)性計(jì)數(shù)器以判斷是否已擦除一個(gè)或多個(gè)塊,以及插入偽噪聲采樣以代替一
個(gè)或多個(gè)所擦除的塊。 現(xiàn)在轉(zhuǎn)向附圖,圖1示出了網(wǎng)絡(luò)環(huán)境100的各個(gè)部件,其可以用于實(shí)現(xiàn)本文所討論 的各個(gè)實(shí)施例。環(huán)境100可以包括使各種設(shè)備之間能夠通信的網(wǎng)絡(luò)102,各種設(shè)備例如是 服務(wù)器104,諸如工作站或臺(tái)式機(jī)等的桌上型計(jì)算機(jī)106,膝上型計(jì)算機(jī)、上網(wǎng)本或筆記本 電腦108,諸如網(wǎng)絡(luò)打印機(jī)、復(fù)印機(jī)、傳真機(jī)、掃描儀、一體型設(shè)備等的再現(xiàn)設(shè)備IIO,在各個(gè) 實(shí)施例中可以包括蜂窩基站的無(wú)線接入點(diǎn)112,個(gè)人數(shù)字助理、智能電話或移動(dòng)設(shè)備114。 網(wǎng)絡(luò)102可以是包括內(nèi)部網(wǎng)、因特網(wǎng)和/或這些網(wǎng)絡(luò)的組合的多種計(jì)算機(jī)網(wǎng)絡(luò)中的任何一 種。 設(shè)備104-114可以通過(guò)有線和/或無(wú)線連接與網(wǎng)絡(luò)102通信。因此,網(wǎng)絡(luò)102可 以是有線和/或無(wú)線網(wǎng)絡(luò)。例如,如圖l所示,無(wú)線接入點(diǎn)112可以與網(wǎng)絡(luò)102相耦合,以 使諸如設(shè)備114之類的其它具有無(wú)線能力的設(shè)備能夠與網(wǎng)絡(luò)102通信。在各個(gè)實(shí)施例中, 無(wú)線接入點(diǎn)112可以包括業(yè)務(wù)管理能力。此外,在設(shè)備104-114之間通信的數(shù)據(jù)可以被加 密或者用密碼加以保護(hù),以限制未經(jīng)授權(quán)的接入。 網(wǎng)絡(luò)102可以利用任何通信協(xié)議,諸如以太網(wǎng)、快速以太網(wǎng)、G比特以太網(wǎng)、廣域網(wǎng) (WAN)、光纖分布式數(shù)據(jù)接口 (FDDI)、令牌環(huán)、租用線、模擬調(diào)制解調(diào)器、數(shù)字用戶線(DSL) 及其諸如高比特率DSL(HDSL)、綜合服務(wù)數(shù)字網(wǎng)絡(luò)DSL(IDSL)等變化形式、異步傳輸模式 (ATM)、電纜調(diào)制解調(diào)器和/或火線(FireWire)。 可以根據(jù)以下至少一種來(lái)通過(guò)網(wǎng)絡(luò)102進(jìn)行無(wú)線通信無(wú)線局域網(wǎng)(WLAN)、無(wú) 線廣域網(wǎng)(WWAN)、碼分多址(CDMA)蜂窩無(wú)線電話通信系統(tǒng)、全球移動(dòng)通信系統(tǒng)(GSM)蜂 窩無(wú)線電話系統(tǒng)、北美數(shù)字蜂窩(NADC)蜂窩無(wú)線電話系統(tǒng)、時(shí)分多址(TDMA)系統(tǒng),擴(kuò)展 TDMA(E-TDMA)蜂窩無(wú)線電話系統(tǒng)、諸如寬帶CDMA(WCDMA)之類的第三代合作計(jì)劃(3G)系統(tǒng) 等。此外,可以由諸如網(wǎng)絡(luò)接口卡(NIC)等內(nèi)部網(wǎng)絡(luò)接口設(shè)備(例如與計(jì)算系統(tǒng)出現(xiàn)在同 一物理外殼中)或外部網(wǎng)絡(luò)接口設(shè)備(例如具有與它所耦合的計(jì)算系統(tǒng)不同的單獨(dú)的物理 外殼和/或電源)來(lái)建立網(wǎng)絡(luò)通信。 此外,在網(wǎng)絡(luò)環(huán)境100中,可以沿寬帶和窄帶信道來(lái)傳送數(shù)字電視信號(hào)。頻率范圍 為5-8兆赫茲(MHz)的寬帶信道數(shù)據(jù)的示例包括地面數(shù)字視頻廣播(DVB-T)和/或手持式 數(shù)字視頻廣播(DVB-H)應(yīng)用。頻率基本上處在或接近1. 5MHz的窄帶信道數(shù)據(jù)的示例包括地 面數(shù)字多媒體廣播(T-匿B)、數(shù)字音頻廣播(DAB)和單段綜合服務(wù)地面數(shù)字廣播(ISDB-T) 應(yīng)用。設(shè)備104-114中的一個(gè)或多個(gè)使用硬件和/或軟件模塊來(lái)解調(diào)窄帶和/或?qū)拵诺?數(shù)據(jù)。 圖2是信道數(shù)據(jù)的軟件解調(diào)的一個(gè)實(shí)施例的流程圖。在該實(shí)施例中,使用主機(jī)處 理器通過(guò)算法來(lái)解調(diào)信道數(shù)據(jù)。在單元200中,移動(dòng)設(shè)備114接收數(shù)據(jù)分組。在單元205 中,將數(shù)據(jù)分組劃分為選定大小的多個(gè)塊,例如塊的大小為128個(gè)采樣,盡管實(shí)施例并不限于此。在其它實(shí)施例中,塊的大小可以是64個(gè)采樣或256個(gè)采樣的大小。在單元210和215 中,將多個(gè)塊存儲(chǔ)在緩沖器中并將報(bào)頭添加于每個(gè)塊中。緩沖器可以是硬件數(shù)據(jù)收集模塊 (HDCM),該HDCM可以是諸如串行存取存儲(chǔ)器(SAM)形式的易失性存儲(chǔ)器空間形式或者是諸 如閃存之類的非易失性存儲(chǔ)器空間。 在每個(gè)報(bào)頭中提供連續(xù)性計(jì)數(shù)器,在一個(gè)示例中每個(gè)報(bào)頭為一字節(jié)寬,盡管實(shí)施 例并不限于此。在其它實(shí)施例中,根據(jù)在每個(gè)報(bào)頭中所提供的信息,報(bào)頭可以是幾個(gè)塊的寬 度。在該示例中的連續(xù)性計(jì)數(shù)器是在轉(zhuǎn)回零(0)值之前從1計(jì)數(shù)至255的模為256的計(jì)數(shù) 器。每傳送一個(gè)塊,連續(xù)性計(jì)數(shù)器增加一。 在單元220中,對(duì)于可用性而言,監(jiān)視諸如由通用串行總線(USB)提供的路徑之類 的通信信道的可用性。緩沖器持續(xù)收集和存儲(chǔ)輸入的數(shù)據(jù)分組,直到緩沖空間達(dá)到給定的 容量為止,該容量可以等于緩沖器的總存儲(chǔ)容量或總?cè)萘康囊恍┎糠?。根?jù)單元225,如果 通信信道在緩沖器達(dá)到容量時(shí)是繁忙的,則在單元230中擦除一個(gè)或多個(gè)塊,直到通信信 道在單元240中變?yōu)榭捎脼橹?。如果緩沖器達(dá)到容量但通信信道可用,則在單元240中傳 送多個(gè)塊。在一個(gè)實(shí)施例中,在單元245中,由主機(jī)處理器來(lái)監(jiān)視多個(gè)塊的報(bào)頭中的連續(xù)性 計(jì)數(shù)器,以判斷是否已擦除了一個(gè)或多個(gè)塊,如單元250所示。主機(jī)處理器通過(guò)連續(xù)性計(jì)數(shù)
器方程中所描述的關(guān)系來(lái)確定丟失的塊的數(shù)目
Blocks—lost = CC(n)-CC(n-l)-l mod 256
其中 CC(n)=第n個(gè)數(shù)據(jù)塊的連續(xù)性計(jì)數(shù),并且
mod =模 作為第一示例,如果CC(n) = l并且CC(n-l) = 254,則方程返回值2為的Blocks_ lost(丟失的塊)。 作為第二示例,如果CC(n) = 254并且CC(n-l) = 254,則Blocks_lost的最小數(shù) 目=255。 作為另一示例,如果丟失了 256個(gè)塊,則連續(xù)性計(jì)數(shù)方程將返回值為0的Blocks_ 1ost。此時(shí)可能失去同步。該問(wèn)題可以通過(guò)選擇長(zhǎng)度大于l字節(jié)或8比特的連續(xù)性計(jì)數(shù)器來(lái) 克服。在另一實(shí)施例中,除連續(xù)性計(jì)數(shù)器之外,將同步字節(jié)添加于報(bào)頭中,從而產(chǎn)生130字 節(jié)的采樣。在該實(shí)施例中,主機(jī)處理器接收字節(jié)序列,并且需要在自動(dòng)跟蹤到(lock onto) 相隔130個(gè)采樣的數(shù)個(gè)連續(xù)的同步字節(jié)之后開(kāi)始實(shí)現(xiàn)字節(jié)同步。同步字節(jié)的添加使得由主 機(jī)處理器執(zhí)行的軟件解調(diào)器在沒(méi)有失去同步的情形下工作。 如果確定塊已被擦除,則在單元255中插入偽噪聲采樣以代替所擦除的塊,以提 供經(jīng)同步的一組塊。在一個(gè)實(shí)施例中,偽噪聲采樣是與數(shù)據(jù)塊具有相同方差的正態(tài)分布零 均值偽噪聲采樣。在單元260中,由主機(jī)處理器使用軟件解調(diào)器來(lái)處理經(jīng)同步的一組數(shù)據(jù) 塊,以提供經(jīng)解調(diào)的傳輸流。經(jīng)解調(diào)的流的示例可以是DAB、T-DAB或ISDB-T傳輸流中的一 個(gè)或多個(gè)。 圖3示出根據(jù)各實(shí)施例的計(jì)算系統(tǒng)300的框圖。參照?qǐng)D1討論的設(shè)備104-114中的 一個(gè)或多個(gè)設(shè)備可以包括計(jì)算系統(tǒng)300的各部件中的一個(gè)或多個(gè)部件。計(jì)算系統(tǒng)300可以 包括與互連網(wǎng)絡(luò)或總線304相耦合的一個(gè)或多個(gè)主機(jī)處理器或中央處理單元(CPU) 302 (其 在此處可以總稱為"多個(gè)處理器302"或更一般地稱為"處理器302")。處理器302可以是
6任何類型的處理器,諸如通用處理器、網(wǎng)絡(luò)處理器(其可以處理在計(jì)算機(jī)網(wǎng)絡(luò)(102)上傳送 的數(shù)據(jù))等(包括精簡(jiǎn)指令集計(jì)算機(jī)(RISC)處理器或復(fù)雜指令集計(jì)算機(jī)(CISC))。而且, 處理器302可以具有單核或多核設(shè)計(jì)。具有多核設(shè)計(jì)的處理器302可以在同一集成電路 (IC)模片上集成不同類型的處理器核心。并且,具有多核設(shè)計(jì)的處理器302可以實(shí)現(xiàn)成對(duì) 稱或不對(duì)稱的多個(gè)處理器。 處理器302可以包括一個(gè)或多個(gè)高速緩存303,高速緩存303可以在各實(shí)施例中是 專用的和/或共享的。 一般地,高速緩存存儲(chǔ)與別處存儲(chǔ)的或早先計(jì)算的原始數(shù)據(jù)對(duì)應(yīng)的 數(shù)據(jù)。為了減少存儲(chǔ)器存取的等待時(shí)間,一旦數(shù)據(jù)存儲(chǔ)在高速緩存中,就可以通過(guò)存取已高 速緩存的備份而不是重取或重算原始數(shù)據(jù)來(lái)進(jìn)行以后的使用。高速緩存303可以是任何類 型的高速緩存,諸如l級(jí)(Ll)高速緩存、2級(jí)(L2)高速緩存、3級(jí)(L3)高速緩存、中級(jí)高速 緩存、終級(jí)高速緩存(LLC)等,以存儲(chǔ)由計(jì)算系統(tǒng)300的一個(gè)或多個(gè)部件所使用的電子數(shù)據(jù) (例如,包括指令)。 另外,芯片組306可以與互連網(wǎng)絡(luò)304相耦合。芯片組306可以包括存儲(chǔ)器控制集 線器(MCH)308。 MCH 308可以包括與存儲(chǔ)器312耦合的存儲(chǔ)器控制器310。存儲(chǔ)器312可 以存儲(chǔ)數(shù)據(jù),該數(shù)據(jù)例如包括由處理器302或者與計(jì)算系統(tǒng)300的各部件通信的任何其它 設(shè)備所執(zhí)行的指令序列。在各實(shí)施例中,存儲(chǔ)器312可以包括諸如隨機(jī)存取存儲(chǔ)器(RAM)、 動(dòng)態(tài)RAM (DRAM)、同步DRAM (SDRAM)、靜態(tài)RAM (SRAM)之類的一個(gè)或多個(gè)易失性存儲(chǔ)器或者 存儲(chǔ)設(shè)備等。還可以利用諸如硬盤(pán)之類的非易失性存儲(chǔ)器。諸如多處理器和/或多系統(tǒng)存 儲(chǔ)器等附加設(shè)備可以與互連網(wǎng)絡(luò)304相耦合。 MCH 308還可以包括例如經(jīng)由圖形加速器與顯示器316相耦合的圖形接口314。在 各實(shí)施例中,圖形接口 314可以經(jīng)由被加速的圖形端口 (AGP)與顯示設(shè)備316相耦合。在 各實(shí)施例中,可以通過(guò)例如將存儲(chǔ)在諸如視頻存儲(chǔ)器或系統(tǒng)存儲(chǔ)器之類的存儲(chǔ)設(shè)備中的圖 像的數(shù)字表示轉(zhuǎn)化成由顯示器翻譯和顯示的顯示信號(hào)的信號(hào)轉(zhuǎn)換器,將包括例如平板顯示 器或陰極射線管的顯示設(shè)備316耦合至圖形接口 314。由顯示設(shè)備316產(chǎn)生的顯示信號(hào)在 被顯示設(shè)備316翻譯并隨后顯示在顯示設(shè)備316上之前先通過(guò)各控制設(shè)備。
如圖3所示,集線器接口 318可以將MCH 308耦合至輸入/輸出控制集線器 (ICH)320。 ICH 320可以提供用于將輸入/輸出(I/O)設(shè)備耦合至計(jì)算系統(tǒng)300的接口 。 ICH 320可以通過(guò)諸如外圍部件互連(PCI)橋接器、通用串行總線(USB)控制器等等之類的 外圍橋接器或主機(jī)控制器324來(lái)耦合至總線322??刂破?24可以在處理器302與外圍設(shè) 備之間提供數(shù)據(jù)路徑。可以利用其它類型的拓?fù)浣Y(jié)構(gòu)。此外,例如通過(guò)多個(gè)橋接器或控制 器可以將多條總線耦合至ICH 320。例如,總線322可以遵照1998年9月11日的通用串行 總線規(guī)范修訂版1. 1和/或2000年4月27日的通用串行總線規(guī)范修訂版2. 0 (包括對(duì)這 兩個(gè)修訂版的隨后修正)?;蛘?,總線322可以包括其它類型和配置的總線系統(tǒng)。而且,在 各實(shí)施例中,與ICH 320相耦合的其它外圍設(shè)備可以包括集成驅(qū)動(dòng)電子設(shè)備(IDE)或小型 計(jì)算機(jī)系統(tǒng)接口 (SCSI)硬件驅(qū)動(dòng)器、USB端口、鍵盤(pán)、鼠標(biāo)、并行端口、串行端口、軟盤(pán)驅(qū)動(dòng) 器、數(shù)字輸出支持器(例如,數(shù)字視頻接口 (DVI))等。 總線322可以耦合至音頻設(shè)備326、一個(gè)或多個(gè)磁盤(pán)驅(qū)動(dòng)器328以及通信設(shè)備 330,該通信設(shè)備330在各實(shí)施例中可以是網(wǎng)絡(luò)接口卡(NIC)或調(diào)諧器卡。其它設(shè)備可以耦 合至總線322。此外,在各實(shí)施例中,諸如通信設(shè)備330等等之類的各部件可以耦合至MCH308。另外,處理器302和MCH308可以合并形成單個(gè)芯片。 另外,計(jì)算系統(tǒng)330可以包括易失性和/或非易失性存儲(chǔ)器或內(nèi)存。例如,非易失 性存儲(chǔ)器可以包括以下中的一個(gè)或多個(gè)只讀存儲(chǔ)器(R0M)、可編程存儲(chǔ)器(PROM)、可擦除 PROM(EPROM)、電子EPROM(EEPROM)、磁盤(pán)驅(qū)動(dòng)器(例如,328)、軟盤(pán)、壓縮盤(pán)ROM (CD-ROM)、數(shù) 字通用盤(pán)(DVD)、閃存、磁光盤(pán)或者能夠存儲(chǔ)包括指令在內(nèi)的電子數(shù)據(jù)的其它類型的非易失 性機(jī)器可讀介質(zhì)。 在各實(shí)施例中,存儲(chǔ)器312可以包括以下中的一個(gè)或多個(gè)操作系統(tǒng)(0/S)332、應(yīng) 用334、設(shè)備驅(qū)動(dòng)器336、緩沖器338、功能驅(qū)動(dòng)器340和/或協(xié)議驅(qū)動(dòng)器342。作為存儲(chǔ)器管 理操作的一部分,在存儲(chǔ)器312中存儲(chǔ)的程序和/或數(shù)據(jù)可以被調(diào)換至磁盤(pán)驅(qū)動(dòng)器328中。 處理器302執(zhí)行各種命令以及與耦合至網(wǎng)絡(luò)102的一個(gè)或多個(gè)計(jì)算設(shè)備(諸如圖1的設(shè)備 104-114) —起來(lái)處理一個(gè)或多個(gè)分組346。在各實(shí)施例中,分組可以是由從至少一個(gè)發(fā)送 機(jī)發(fā)向至少一個(gè)接收機(jī)(例如,通過(guò)諸如網(wǎng)絡(luò)102之類的網(wǎng)絡(luò))的一個(gè)或多個(gè)電子信號(hào)所 編碼的一個(gè)或多個(gè)符號(hào)和/或數(shù)值序列。例如,每個(gè)分組346可以具有報(bào)頭346A,其中報(bào) 頭346A包括在路由和/或處理分組346時(shí)可以利用的信息,分組346包括連續(xù)性計(jì)數(shù)器、 同步字節(jié)、源地址、目標(biāo)地址、分組類型等。每個(gè)分組還可以具有包括原始數(shù)據(jù)或內(nèi)容在內(nèi) 的有效載荷346B,該分組例如在諸如網(wǎng)絡(luò)102之類的計(jì)算機(jī)網(wǎng)絡(luò)上在圖1的設(shè)備104-114 的各計(jì)算設(shè)備之間傳輸。 在各實(shí)施例中,應(yīng)用334可以利用0/S 332,用于例如通過(guò)設(shè)備驅(qū)動(dòng)器336和/或 功能驅(qū)動(dòng)器340與計(jì)算系統(tǒng)300的各部件通信。例如,設(shè)備驅(qū)動(dòng)器336和功能驅(qū)動(dòng)器340可 以用于不同的類別,例如,設(shè)備驅(qū)動(dòng)器336可以管理普通設(shè)備類屬性,而功能驅(qū)動(dòng)器340可 以管理設(shè)備特定屬性(諸如USB特定命令)。在各實(shí)施例中,設(shè)備驅(qū)動(dòng)器336可以分配一個(gè) 或多個(gè)緩沖器(338A至338M),以存儲(chǔ)諸如分組有效載荷346B之類的分組數(shù)據(jù)。 一個(gè)或多 個(gè)描述符(未示出)可以分別發(fā)向緩沖器338。在各實(shí)施例中,緩沖器338中的一個(gè)或多個(gè) 可以實(shí)現(xiàn)為圓環(huán)緩沖器。此外,在各實(shí)施例中,緩沖器338中的一個(gè)或多個(gè)可以對(duì)應(yīng)于連續(xù) 存儲(chǔ)頁(yè)。此外,協(xié)議驅(qū)動(dòng)器342可以實(shí)現(xiàn)協(xié)議驅(qū)動(dòng)器,以根據(jù)一個(gè)或多個(gè)協(xié)議來(lái)處理通過(guò)網(wǎng) 絡(luò)102傳送的分組。根據(jù)各實(shí)施例,如本文所述,"功能驅(qū)動(dòng)器340"可以指的是也可以不是 指其它類型的驅(qū)動(dòng)器,例如,包括設(shè)備驅(qū)動(dòng)器336、功能驅(qū)動(dòng)器340和/或協(xié)議驅(qū)動(dòng)器342。
如圖3所示,通信設(shè)備330可以包括用于實(shí)現(xiàn)物理通信層的網(wǎng)絡(luò)協(xié)議層350,以在 網(wǎng)絡(luò)102上向遠(yuǎn)程設(shè)備發(fā)送和從遠(yuǎn)程設(shè)備接收網(wǎng)絡(luò)分組。網(wǎng)絡(luò)102可以包括任何類型的計(jì) 算機(jī)網(wǎng)絡(luò),諸如參照?qǐng)Dl討論的那些網(wǎng)絡(luò)。通信設(shè)備330還可以包括直接存儲(chǔ)器存取(DMA) 引擎352,后者可以將分組數(shù)據(jù)寫(xiě)入緩存器338中,以在網(wǎng)絡(luò)102上發(fā)送和/或接收數(shù)據(jù)。 另外,通信設(shè)備330可以包括控制器354,例如,該控制器354可以包括諸如可編程處理器的 邏輯電路,以用于執(zhí)行通信設(shè)備相關(guān)操作。在各實(shí)施例中,控制器354可以是MAC(媒體訪 問(wèn)控制)部件。通信設(shè)備330還可以包括存儲(chǔ)器356,諸如任何類型的易失性/非易失性存 儲(chǔ)器(例如,包括一個(gè)或多個(gè)高速緩存和/或參照存儲(chǔ)器312討論的其它存儲(chǔ)器類型)。
在各實(shí)施例中,通信設(shè)備330可以包括固件存儲(chǔ)設(shè)備360,以存儲(chǔ)在管理由通信設(shè) 備330的部件所執(zhí)行的各種功能時(shí)可以利用的固件(或軟件)。存儲(chǔ)設(shè)備360可以是諸如 非易失性存儲(chǔ)設(shè)備之類的任何類型的存儲(chǔ)設(shè)備。例如,存儲(chǔ)設(shè)備360可以包括以下中的一 個(gè)或多個(gè)ROM、PROM、EPROM、EEPROM、磁盤(pán)驅(qū)動(dòng)器、軟盤(pán)、CD-ROM、DVD、閃存、磁光盤(pán)或者能夠
8存儲(chǔ)包括指令在內(nèi)的電子數(shù)據(jù)的其它類型的非易失性機(jī)器可讀介質(zhì)。 在各實(shí)施例中,通信設(shè)備330可以包括或包含被配置成接收和處理多媒體信息的 USB調(diào)諧器卡。調(diào)諧器卡可以包括為圖1中描述的設(shè)備104-114中的任何一個(gè)接收數(shù)字電 視信號(hào)的部件。在各實(shí)施例中,調(diào)諧器卡還可以起視頻捕獲卡的作用,使得該卡能夠?qū)⒍嗝?體信息記錄在硬盤(pán)上。在各實(shí)施例中,調(diào)諧器卡可以包括USB高速卡、USB小型卡、USB半小 型卡或者任何其它合適的USB封裝卡(form factor card)。在各實(shí)施例中,調(diào)諧器卡可以 包含接收機(jī)、調(diào)諧器、硬件解調(diào)器和模_數(shù)轉(zhuǎn)換器。 在各實(shí)施例中,多媒體信息包括在網(wǎng)絡(luò)102上從媒體源(未示出)向通信設(shè)備330 發(fā)送的數(shù)字電視信號(hào)。針對(duì)給定調(diào)制速率、編碼速率和保護(hù)間隔,多媒體信息可以包括恒定 比特速率信號(hào)。多媒體信息可以包括移動(dòng)照片的普通編碼和相關(guān)音頻信息。在各實(shí)施例中, 多媒體信息包括DAB、 T-DMB、 ISDB-T、 DVB-T/H或MPEG2傳輸流。多媒體信息可以包含從媒 體源接收的多個(gè)數(shù)字電視頻道或每個(gè)物理信道中的邏輯流。例如,多媒體信息可以包括各 種數(shù)字電視頻道,諸如在單一物理信道中的BBC1、BBC2、BBC3和BBC4。
在各實(shí)施例中,使用調(diào)諧器卡中的模-數(shù)轉(zhuǎn)換器,將所接收的多媒體信息從模擬 信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)。在一個(gè)實(shí)施例中,還可以使用硬件解調(diào)器在調(diào)諧器卡中進(jìn)行寬帶信 號(hào)的解調(diào)。解調(diào)可以發(fā)生在調(diào)諧器卡內(nèi),和/或部分解調(diào)可以發(fā)生在調(diào)諧器卡外部,例如由 CPU 302進(jìn)行。在各實(shí)施例中,經(jīng)濾波的多媒體信號(hào)在總線322上從通信設(shè)備330發(fā)向芯片 組306。作為在通信設(shè)備330中執(zhí)行的處理的結(jié)果,即使從媒體源接收的信息包括恒定比特 速率數(shù)據(jù),在總線322上向芯片組306發(fā)送的多媒體信息也可包括可變比特速率數(shù)據(jù)。
在各實(shí)施例中,總線322可以包括USB總線。等時(shí)模式是針對(duì)USB設(shè)備的四種數(shù) 據(jù)流類型中的一種(其它模式為控制、中斷和批量模式)。等時(shí)模式通常用于諸如視頻和音 頻源之類的流動(dòng)多媒體數(shù)據(jù)類型。在等時(shí)模式中,設(shè)備能夠在總線上保留帶寬,使得對(duì)于多 媒體應(yīng)用實(shí)現(xiàn)期望的等時(shí)模式。在各實(shí)施例中,本文所述的數(shù)據(jù)傳輸使用等時(shí)模式。
圖4示出存儲(chǔ)器400的一個(gè)實(shí)施例。存儲(chǔ)器400可以表示例如圖3中所示的存儲(chǔ) 器312或存儲(chǔ)器356。如圖4所示,存儲(chǔ)器400包括多個(gè)元件,諸如設(shè)備驅(qū)動(dòng)器436、USB緩 沖器438A、媒體緩沖器438B和媒體控制引擎440。然而,實(shí)施例并不限于圖4中所示的元 件。 設(shè)備驅(qū)動(dòng)器436例如可以包括用于處理存儲(chǔ)器400與計(jì)算系統(tǒng)300的任何元件之 間的交互的部件。設(shè)備驅(qū)動(dòng)器436可以負(fù)責(zé)分配和管理緩沖器438A和438B。在各實(shí)施例 中,設(shè)備驅(qū)動(dòng)器436將USB緩沖器438A盡可能分配成USB處理堆棧所允許的大小。設(shè)備驅(qū) 動(dòng)器436還可以將媒體緩沖器438B分配成當(dāng)檢索多媒體信息時(shí)為減少或消除等待時(shí)間而 選擇的媒體緩沖器438B的大小。 USB緩沖器438A可以包括永久或臨時(shí)分配的存儲(chǔ)器,以存儲(chǔ)多媒體信息。如圖4 中所示,在USB緩沖器438A中存儲(chǔ)的多媒體信息可以包括連續(xù)或非連續(xù)數(shù)據(jù)。如果在等時(shí) 模式下操作的系統(tǒng)試圖檢索在USB緩沖器438A中存儲(chǔ)的多媒體信息,則在沒(méi)有失去同步的 情況下以順序的方式傳輸連續(xù)數(shù)據(jù),并且如本發(fā)明的實(shí)施例所提供的那樣將非連續(xù)數(shù)據(jù)轉(zhuǎn) 換成連續(xù)數(shù)據(jù)。 在各實(shí)施例中,設(shè)備驅(qū)動(dòng)器436控制從USB緩沖器438A到媒體緩沖器438B進(jìn)行 的多媒體信息的備份。在非連續(xù)數(shù)據(jù)的情形下,可以用如圖2的單元255中所提供的偽噪聲采樣來(lái)代替多媒體信息的丟失的塊,以解決當(dāng)由處理器302中的軟件解調(diào)器處理時(shí)潛在 的同步錯(cuò)誤。偽噪聲采樣可以是在存儲(chǔ)器中存儲(chǔ)的噪聲采樣,和/或偽噪聲采樣可以使用 可選的偽數(shù)發(fā)生器(未示出)產(chǎn)生。 媒體控制引擎440可以包括用于控制針對(duì)媒體信息的請(qǐng)求的部件。媒體控制引擎
440的示例是華盛頓州雷德蒙市的Microso鵬公司的MicrosoftSDirectSho-應(yīng)用程序
設(shè)計(jì)接口 (API)。 DirectShow是用于Microsoft Windows⑧平臺(tái)的流媒體結(jié)構(gòu),其允許應(yīng) 用單元執(zhí)行高質(zhì)量視頻和音頻的重放或捕獲。在各實(shí)施例中,媒體控制引擎440可以從媒 體緩沖器438B中檢索所請(qǐng)求的多媒體數(shù)據(jù),以實(shí)現(xiàn)對(duì)例如特定電視頻道或節(jié)目等特定多 媒體信息的請(qǐng)求,并且將請(qǐng)求的信息提供給處理器302,用于進(jìn)一步的處理和重放。
圖5是為硬件和軟件解調(diào)而配置的移動(dòng)設(shè)備的實(shí)施例的框圖。提供調(diào)諧器502以 處理一個(gè)或多個(gè)數(shù)字電視信號(hào),諸如寬帶和窄帶信號(hào)??梢允褂糜芯€或無(wú)線空中通信將數(shù) 字電視信號(hào)傳輸?shù)秸{(diào)諧器502。將來(lái)自調(diào)諧器502的輸出發(fā)往模-數(shù)轉(zhuǎn)換器504,以將輸入 模擬電壓轉(zhuǎn)換成數(shù)字輸出,該數(shù)字輸出可以發(fā)送到自動(dòng)增益控制模塊506和/或信道濾波 器/自動(dòng)增益控制模塊508。信道濾波器508選擇性地設(shè)計(jì)成解析寬帶信道數(shù)據(jù)和窄帶信 道數(shù)據(jù)中的輸入的數(shù)據(jù)流。在該實(shí)施例中,將寬帶信道數(shù)據(jù)諸如DVB-T和/或DVB-H信道 數(shù)據(jù)發(fā)往硬件解調(diào)器510。在另一實(shí)施例(未示出)中,通過(guò)軟件解調(diào),代替或結(jié)合由硬件 解調(diào)器510提供的硬件解調(diào),進(jìn)行寬帶解調(diào)。然后將經(jīng)解調(diào)的寬帶數(shù)據(jù)發(fā)往USB接口 516。
將窄帶信道數(shù)據(jù)發(fā)往抽取器(decimation) 512,以減少被提供用于軟件解調(diào)的采 樣的數(shù)目。抽取器以可預(yù)測(cè)且順序的方式除去發(fā)向硬件數(shù)據(jù)收集模塊514的這些采樣。在 另一實(shí)施例(未示出)中,除去解調(diào)器512或?qū)⑵浜?jiǎn)化為軟件,并且處理器性能允許更高吞 吐量的采樣數(shù)據(jù)。硬件數(shù)據(jù)收集模塊(HDCM)514是存儲(chǔ)器模塊或緩沖器,并且如前在圖2 中所述進(jìn)行工作。來(lái)自HDCM 514的經(jīng)緩沖的數(shù)據(jù)被傳輸?shù)経SB接口 516,當(dāng)通信信道對(duì)于 主機(jī)處理器518可用時(shí),使用軟件解調(diào)器解調(diào)窄帶數(shù)據(jù)。 圖6是為軟件解調(diào)而對(duì)信道數(shù)據(jù)進(jìn)行緩沖的方法的備選實(shí)施例。在單元600中, 利用處理器建立獨(dú)特(unique)報(bào)頭模式,以指示非連續(xù)的采樣流。獨(dú)特報(bào)頭模式例如是報(bào) 頭中預(yù)定義的6字節(jié)字,其可以用于對(duì)處理器標(biāo)記或警告狀態(tài)。通過(guò)對(duì)諸如圖3的處理器 302之類的處理器進(jìn)行標(biāo)記,處理器注意到非連續(xù)數(shù)據(jù)流或數(shù)據(jù)中的中斷。在其它實(shí)施例 中,獨(dú)特報(bào)頭模式可以少于6字節(jié)或多于6字節(jié)。任選地,可以使用移位寄存器,以防止報(bào) 頭匹配獨(dú)特報(bào)頭模式。如果使用移位寄存器,則將普通報(bào)頭數(shù)據(jù)通過(guò)移位寄存器。如果由 移位寄存器處理的普通報(bào)頭數(shù)據(jù)變得等于獨(dú)特報(bào)頭模式,則移位寄存器觸發(fā)比特,以阻止 普通報(bào)頭數(shù)據(jù)變成等于預(yù)定義的獨(dú)特報(bào)頭模式。 在單元605中,在諸如圖5的HDCM 514之類的緩沖器中接收到多個(gè)采樣。在單元 610中,在緩沖器中收集多個(gè)采樣,直至緩沖器達(dá)到容量。當(dāng)緩沖器達(dá)到容量時(shí),如果諸如圖 5的USB接口 516之類的通信信道繁忙,則在單元615中擦除一個(gè)或多個(gè)采樣。否則,在單 元640中,將采樣送往軟件解調(diào)器,以處理連續(xù)采樣流。在單元620中確定所擦除的采樣的 數(shù)目,并且在單元625中將獨(dú)特報(bào)頭模式傳輸?shù)教幚砥?02,以指示非連續(xù)的數(shù)據(jù)流。在單 元630中將固定長(zhǎng)度的字發(fā)送到處理器302,以指示所擦除的采樣的數(shù)目。在一個(gè)實(shí)施例 中,固定長(zhǎng)度的字的長(zhǎng)度為兩個(gè)字節(jié)。在其它實(shí)施例中,固定長(zhǎng)度的字的長(zhǎng)度為一個(gè)字節(jié)或 大于兩個(gè)字節(jié)。在單元635中,通過(guò)由處理器生成偽噪聲采樣,或者通過(guò)用來(lái)自存儲(chǔ)器位置的偽噪聲采樣代替所擦除的采樣,來(lái)插入偽噪聲采樣以代替所擦除的采樣,從而提供連續(xù) 的采樣流。在單元640中由處理器302處理連續(xù)的采樣流。 本發(fā)明的實(shí)施例可以用作或用于支持在某些形式的處理核上(諸如計(jì)算機(jī)的處 理器)執(zhí)行的或另外在機(jī)器可讀介質(zhì)之上或者之內(nèi)實(shí)施或者實(shí)現(xiàn)的軟件程序。機(jī)器可讀介 質(zhì)包括以機(jī)器(例如,計(jì)算機(jī))可讀形式存儲(chǔ)信息的任何機(jī)制。例如,機(jī)器可讀介質(zhì)可以包
括諸如只讀存儲(chǔ)器(R0M)、隨機(jī)存取存儲(chǔ)器(RAM)、磁盤(pán)存儲(chǔ)介質(zhì)、光存儲(chǔ)介質(zhì)和閃存設(shè)備等。 本說(shuō)明書(shū)通篇所提及的"一個(gè)實(shí)施例"或"實(shí)施例"意指結(jié)合該實(shí)施例描述的具體 特征、結(jié)構(gòu)或特性包括在本發(fā)明的至少一個(gè)實(shí)施例中。因此,在本說(shuō)明書(shū)通篇不同位置出現(xiàn) 的短語(yǔ)"在一個(gè)實(shí)施例中"或"在實(shí)施例中"不必都指同一實(shí)施例。此外,可以在一個(gè)或多 個(gè)實(shí)施例中以任何合適的形式來(lái)組合具體的特征、結(jié)構(gòu)或特性。 根據(jù)上述的詳細(xì)說(shuō)明,可以對(duì)本發(fā)明做出修改。在以下權(quán)利要求中所使用的術(shù)語(yǔ) 不應(yīng)解釋為將本發(fā)明限制于說(shuō)明書(shū)和附圖中所公開(kāi)的具體實(shí)施例。而是,本發(fā)明的范圍完
全由以下權(quán)利要求確定,其可以根據(jù)權(quán)利要求的解釋所建立的原則加以解釋。
權(quán)利要求
一種用于使通過(guò)通信信道的數(shù)據(jù)分組維持同步的方法,包括將所述數(shù)據(jù)分組劃分為多個(gè)塊;將所述多個(gè)塊存儲(chǔ)在緩沖器中;將具有連續(xù)性計(jì)數(shù)器的報(bào)頭添加至所述多個(gè)塊的每個(gè)塊中;監(jiān)視所述通信信道的可用性;當(dāng)所述緩沖器達(dá)到容量時(shí)擦除所述多個(gè)塊中的一個(gè)或多個(gè)塊;監(jiān)視所述連續(xù)性計(jì)數(shù)器以檢測(cè)一個(gè)或多個(gè)所擦除的塊;以及插入偽噪聲塊以代替所述一個(gè)或多個(gè)所擦除的塊。
2. 如權(quán)利要求1所述的方法,其中,所述數(shù)據(jù)分組包括窄帶數(shù)據(jù)。
3. 如權(quán)利要求l所述的方法,還包括對(duì)所述數(shù)據(jù)分組進(jìn)行抽取。
4. 如權(quán)利要求1所述的方法,其中,所述偽噪聲塊是由處理器產(chǎn)生的。
5. 如權(quán)利要求l所述的方法,還包括將同步字節(jié)添加至所述報(bào)頭中。
6. 如權(quán)利要求1所述的方法,其中,所述數(shù)據(jù)分組包括寬帶數(shù)據(jù)和窄帶數(shù)據(jù)。
7. 如權(quán)利要求1所述的方法,其中,所述多個(gè)塊中的每個(gè)塊的塊大小等于128個(gè)采樣。
8. —種用于處理窄帶采樣的方法,包括利用處理器建立獨(dú)特報(bào)頭模式以指示不連續(xù)的采樣;在緩沖器中接收多個(gè)采樣;當(dāng)所述存儲(chǔ)器緩沖器已達(dá)到容量時(shí),從所述多個(gè)采樣中擦除一個(gè)或多個(gè)采樣;確定所擦除的采樣的數(shù)目;將所述獨(dú)特報(bào)頭模式傳輸?shù)剿鎏幚砥?;將固定長(zhǎng)度的字發(fā)送到所述處理器以提供所擦除的采樣的數(shù)目;以及插入偽噪聲采樣以代替所擦除的采樣。
9. 如權(quán)利要求8所述的方法,還包括使用移位寄存器來(lái)處理針對(duì)每個(gè)采樣的報(bào)頭模式。
10. 如權(quán)利要求9所述的方法,還包括使用所述移位寄存器以防止所述報(bào)頭模式匹配所述獨(dú)特報(bào)頭模式。
11. 如權(quán)利要求10所述的方法,其中,所述獨(dú)特報(bào)頭模式的長(zhǎng)度為6字節(jié)。
12. 如權(quán)利要求8所述的方法,其中,所述緩沖器是閃存。
13. 如權(quán)利要求8所述的方法,其中,所述固定長(zhǎng)度的字的長(zhǎng)度為兩個(gè)字節(jié)。
14. 一種用于多頻帶無(wú)線通信的系統(tǒng),包括主機(jī)處理器;非易失性存儲(chǔ)器設(shè)備;隨機(jī)存取存儲(chǔ)器;以及收發(fā)器,用于接收采樣;所述系統(tǒng)被配置成通過(guò)如下步驟來(lái)維持采樣的同步將所述采樣劃分為多個(gè)塊;將所述多個(gè)塊存儲(chǔ)在緩沖器中;將具有連續(xù)性計(jì)數(shù)器的報(bào)頭添加至所述多個(gè)塊的每個(gè)塊中;監(jiān)視通信信道的可用性;當(dāng)所述緩沖器達(dá)到容量時(shí)擦除所述多個(gè)塊中的一個(gè)或多個(gè)塊;監(jiān)視所述連續(xù)性計(jì)數(shù)器以檢測(cè)一個(gè)或多個(gè)所擦除的塊;以及插入偽噪聲塊以代替所述一個(gè)或多個(gè)所擦除的塊。
15. 如權(quán)利要求14所述的方法,其中,所述數(shù)據(jù)分組包括窄帶數(shù)據(jù)。
16. 如權(quán)利要求14所述的方法,還包括對(duì)所述數(shù)據(jù)分組進(jìn)行抽取。
17. 如權(quán)利要求14所述的方法,其中,所述偽噪聲塊是由處理器產(chǎn)生的。
18. 如權(quán)利要求14所述的方法,還包 括將同步字節(jié)添加至所述報(bào)頭中。
19. 如權(quán)利要求14所述的方法,其中,所述數(shù)據(jù)分組包括寬帶數(shù)據(jù)和窄帶數(shù)據(jù)。
20. 如權(quán)利要求14所述的方法,其中,所述多個(gè)塊中的每個(gè)塊的塊大小等于128個(gè)采
全文摘要
本文描述了用于在寬帶和窄帶環(huán)境中接收和處理多頻帶信號(hào)的方法的實(shí)施例。本發(fā)明還可以描述其它實(shí)施例并要求其它實(shí)施例的權(quán)利。本發(fā)明描述了用于在軟件解調(diào)器中管理數(shù)據(jù)丟失的算法,且本發(fā)明一般地涉及多頻帶無(wú)線系統(tǒng),具體地但非排它地,涉及用于在寬帶和/或窄帶環(huán)境中接收和處理多頻帶信號(hào)的方法。
文檔編號(hào)H04W56/00GK101795456SQ20091026041
公開(kāi)日2010年8月4日 申請(qǐng)日期2009年12月15日 優(yōu)先權(quán)日2008年12月16日
發(fā)明者B·阿蘭貝波拉, P·舒克拉, S·加米奇, T·科爾, T·赫瓦維塔納 申請(qǐng)人:英特爾公司