專利名稱:為用于視頻解碼的三維梳狀濾波使用系統(tǒng)內(nèi)存的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及三維梳狀濾波的方法和設(shè)備,特別涉及三維梳狀濾波中數(shù)據(jù)的讀取和 存儲。
背景技術(shù):
復(fù)合視頻信號是亮度信號和色度信號的總和。這些信號可以分別稱為亮度信號和 色度信號。亮度和色度信號的頻率范圍可以設(shè)計為重疊。亮度信號可以從直流到4. 2MHz 以及色度信號可以定中心于3. 58MHz,具有1. 8MHz的帶寬。在視頻處理中,亮度和色度信號 分量可以加在一起以產(chǎn)生復(fù)合視頻信號。亮度和色度視頻元素可以結(jié)合并且作為單個復(fù)合 視頻流播出。一旦接收到所播出的復(fù)合信號,就必須分離亮度和色度信號以便處理和顯示 視頻信號。通常的彩色電視解碼器接收復(fù)合電視信號作為輸入。梳狀濾波器可用來分離色度 和亮度視頻信號分量。例如,電視機(jī)可適于接收復(fù)合視頻輸入并且使用集成的梳狀濾波器 分離色度和亮度視頻分量。然而,在電視機(jī)顯示所接收到的視頻信號之前,必須分離色度和
亮度分量。在傳統(tǒng)的視頻處理中,由多種方式來分離亮度和色度視頻分量。這些可包括水平 梳狀、垂直梳狀和臨時梳狀濾波。這些梳狀濾波方法的每個都具有某些缺點。例如,在水平 梳狀濾波中,處于3. 58MHz的階式濾波器可用來將色度與亮度分離。然而,這會導(dǎo)致該等級 頻率附近的亮度信息損失。在垂直梳狀濾波中,給定的視頻線可以增加和/或從該給定線上下的視頻線減 去,產(chǎn)生亮度和色度信號。因為色度信號從一條線到下一條線之間變化180度以及兩條鄰 近的線可包含幾乎完全相同的信息,所以這個方法會起作用。盡管比水平梳狀濾波好,但 是,當(dāng)例如鄰近的線彼此不同時,就會產(chǎn)生偽像。在臨時梳狀濾波中,對比兩幀視頻。在臨時梳狀濾波中,假設(shè)兩個相鄰幀之間的視 頻信息不改變。并且,任意給定線上的色度相與相鄰幀上的對應(yīng)線有180度的相位差???慮到這兩個假設(shè),那么相鄰幀之間的差可產(chǎn)生亮度和色度信號,沒有水平梳狀濾波系統(tǒng)和 垂直梳狀濾波系統(tǒng)中的偽像。然而,對于相鄰幀之間信息改變的情況,執(zhí)行臨時梳狀濾波是 有困難的。目前,3D梳狀濾波器是最好的梳狀濾波器,其可以在時間和空間上分離亮度和色
度信號。PCTV相對來說是PC產(chǎn)業(yè)中一種新的應(yīng)用。概言之,PCTV使得能夠在PC系統(tǒng)中看 電視。對于PCTV應(yīng)用,電視卡是必需的,其包括視頻解碼器。在PCTV應(yīng)用中有兩個互相矛 盾的需求。PCTV要求較低的消耗同時保持模擬電視輸入或復(fù)合視頻輸入的高質(zhì)量的視頻。 與通常的電視視頻解碼器類似,3D梳狀濾波器用于PCTV視頻解碼器以提供良好的視頻質(zhì) 量。然而,3D梳狀濾波器要求大量的存儲空間,而人們已經(jīng)進(jìn)行了許多努力來解決這個問
3
已知的實現(xiàn)3D梳狀濾波所需要存儲空間的相關(guān)解決方案是1)外部SDRAM ;2)分 裝于多片封裝中的SDRAM片;3)在同一硅片上的嵌入SDRAM。但是,所有這些解決方案會導(dǎo) 致系統(tǒng)成本過于昂貴或者對于PCTV解決方案的廣泛應(yīng)用沒有競爭力。仍然需要一種方法 和設(shè)備,能夠?qū)崿F(xiàn)大量的存儲空間而不增加成本。
發(fā)明內(nèi)容
本發(fā)明一個目的是提供一種技術(shù),能夠為3D梳狀濾波提供大量存儲而具有減少 的、甚至沒有額外的成本。本發(fā)明的一個實施例的進(jìn)一步目的是提供一種為3D梳狀濾波使 用系統(tǒng)內(nèi)存的技術(shù)。本發(fā)明一個實施例的進(jìn)一步目的是提供一種自適應(yīng)控制3D梳狀濾波 器運(yùn)行的技術(shù)。按照本發(fā)明一方面,提供一種在視頻解碼的三維梳狀濾波中使用系統(tǒng)內(nèi)存的設(shè) 備,包括讀寫控制裝置,控制數(shù)據(jù)在邏輯地址上的讀/寫;地址映射裝置,將邏輯地址與系 統(tǒng)內(nèi)存的物理地址對應(yīng),并在物理地址上實際讀/寫數(shù)據(jù)。該讀寫控制裝置包括至少一個狀態(tài)機(jī)。所述至少一個狀態(tài)機(jī)在空閑狀態(tài)、請求狀 態(tài)、等待狀態(tài)和處理狀態(tài)之間切換。進(jìn)一步,該讀寫控制裝置包括讀狀態(tài)機(jī)和寫狀態(tài)機(jī)。該 讀寫控制裝置還包括記錄讀/寫請求數(shù)量的計數(shù)器。該讀寫控制裝置還包括數(shù)據(jù)轉(zhuǎn)換裝 置,其將數(shù)據(jù)從輸入格式轉(zhuǎn)換為存儲格式以及從存儲格式轉(zhuǎn)換為輸出格式。該地址映射裝置包括地址映射表,其中記錄多個邏輯地址以及對應(yīng)的物理地址。 進(jìn)一步,該地址映射裝置還包括請求通道模塊和數(shù)據(jù)通道模塊。按照本發(fā)明另一方面,提供一種在視頻解碼的三維梳狀濾波中使用系統(tǒng)內(nèi)存的方 法,包括在邏輯地址上進(jìn)行數(shù)據(jù)讀/寫;以及將該邏輯地址與系統(tǒng)內(nèi)存的物理地址對應(yīng), 并在該物理地址上實際讀/寫數(shù)據(jù)。優(yōu)選地,該方法包括使用至少一個狀態(tài)機(jī)控制所述在邏輯地址上的讀/寫。所述 至少一個狀態(tài)機(jī)在空閑狀態(tài)、請求狀態(tài)、等待狀態(tài)和處理狀態(tài)之間切換。該方法包括使用讀 狀態(tài)機(jī)和寫狀態(tài)機(jī)控制所述在邏輯地址上的讀/寫。所述讀狀態(tài)機(jī)在空閑狀態(tài)、請求狀態(tài)、 等待狀態(tài)之間切換,所述寫狀態(tài)機(jī)在空閑狀態(tài)、請求狀態(tài)和處理狀態(tài)之間切換。該方法還包 括使用計數(shù)器,其記錄讀或?qū)懻埱髷?shù)量,并根據(jù)所述計數(shù)器的值的變化切換任一所述狀態(tài) 機(jī)的狀態(tài)。該方法還包括使用地址映射表,其中記錄多個邏輯地址以及對應(yīng)的所述物理地 址。該方法還包括根據(jù)所述地址映射表將所述邏輯地址轉(zhuǎn)換為所述物理地址。該方法還包 括根據(jù)轉(zhuǎn)換得到的所述物理地址與外部設(shè)備進(jìn)行數(shù)據(jù)交換。該方法還包括將所述至少兩幀 圖像的數(shù)據(jù)間隔存儲。按照本發(fā)明又一方面,提供一種PCTV應(yīng)用中使用的電視卡,包括具有三維梳狀濾 波器的視頻解碼器、片內(nèi)存儲器、片內(nèi)存儲器控制器和接口,其中該視頻解碼器還包括;讀 /寫控制裝置,控制數(shù)據(jù)在邏輯地址上的讀/寫;以及地址映射裝置,將該邏輯地址與系統(tǒng) 內(nèi)存的物理地址對應(yīng),并在該物理地址上實際讀/寫數(shù)據(jù)。優(yōu)選地,所述讀寫控制裝置包括讀狀態(tài)機(jī)和寫狀態(tài)機(jī)。所述讀狀態(tài)機(jī)在空閑狀態(tài)、 請求狀態(tài)和等待狀態(tài)之間切換,所述寫狀態(tài)機(jī)在空閑狀態(tài)、請求狀態(tài)和處理狀態(tài)之間切換。 所述讀寫控制裝置還包括計數(shù)器,其記錄讀或?qū)懻埱髷?shù)量,并根據(jù)所述計數(shù)器的值的變化切換所述讀或?qū)憼顟B(tài)機(jī)的狀態(tài)。所述讀寫控制裝置還包括數(shù)據(jù)轉(zhuǎn)換裝置,其將該設(shè)備接收 到的數(shù)據(jù)轉(zhuǎn)換為所需的存儲格式,以及將讀取的數(shù)據(jù)轉(zhuǎn)換為所需的輸出格式。所述地址映 射裝置包括地址映射表,其中記錄多個邏輯地址以及對應(yīng)的所述物理地址。所述地址映射 裝置還包括請求通道模塊,其根據(jù)所述地址映射表將所述邏輯地址轉(zhuǎn)換為所述物理地址。 所述地址映射裝置進(jìn)一步包括數(shù)據(jù)通道模塊,按照轉(zhuǎn)換得到的所述物理地址與外部設(shè)備進(jìn) 行數(shù)據(jù)交換。所述讀寫控制裝置將所述至少兩幀圖像的數(shù)據(jù)間隔存儲。所述邏輯地址是所 述片內(nèi)存儲器中的地址。所述地址映射裝置與所述接口和所述片內(nèi)存儲器控制器連接,并 通過所述接口訪問所述系統(tǒng)內(nèi)存。所述接口為PCIe總線接口。按照本發(fā)明又一方面,提供一種控制上述電視卡運(yùn)行的運(yùn)行控制設(shè)備,包括第一 檢測裝置,用以檢測該視頻解碼器的運(yùn)行狀態(tài);第二檢測裝置,用以檢測該片內(nèi)存儲器的狀 態(tài);控制裝置,根據(jù)所述第一和第二檢測裝置的結(jié)果啟動或關(guān)閉該三維梳狀濾波器。優(yōu)選地,所述第一檢測裝置檢測輸入該視頻解碼器的視頻信號是否滿足啟動該三 維梳狀濾波器的條件。所述第二檢測裝置檢測該片內(nèi)存儲器中的數(shù)據(jù)是否正確保存和讀 取。所述控制裝置在關(guān)閉該三維梳狀濾波器時,關(guān)閉該讀/寫控制裝置。按照本發(fā)明又一方面,提供一種控制上述電視卡運(yùn)行的方法,包括檢測該視頻解 碼器的運(yùn)行狀態(tài)、檢測該片內(nèi)存儲器的狀態(tài)以及根據(jù)該檢測的結(jié)果啟動或關(guān)閉該三維梳狀 濾波器。優(yōu)選地,檢測該視頻解碼器的運(yùn)行狀態(tài)步驟檢測輸入該視頻解碼器的視頻信號是 否滿足啟動該三維濾波器的條件。檢測該片內(nèi)存儲器的狀態(tài)步驟檢測輸該片內(nèi)存儲器中的 數(shù)據(jù)是否正確保存和讀取。在關(guān)閉該三維梳狀濾波器時,關(guān)閉該讀/寫控制裝置。按照本發(fā)明又一方面,提供一種適于PCTV應(yīng)用的系統(tǒng),包括具有三維梳狀濾波器 的視頻解碼器、片內(nèi)存儲器、片內(nèi)存儲器控制器和接口,該系統(tǒng)還包括運(yùn)行控制設(shè)備,其中 該視頻解碼器包括讀寫控制裝置,用以控制數(shù)據(jù)在邏輯地址上的讀/寫;地址映射裝置, 將該邏輯地址與系統(tǒng)內(nèi)存的物理地址對應(yīng),并該物理地址上實際讀/寫數(shù)據(jù)。該運(yùn)行控制 設(shè)備包括第一檢測裝置,用以檢測該視頻解碼器的運(yùn)行狀態(tài);第二檢測裝置,用以檢測該 片內(nèi)存儲器的狀態(tài);以及控制裝置,根據(jù)該第一和第二檢測裝置的結(jié)果啟動或關(guān)閉該三維 梳狀濾波器。優(yōu)選地,所述第一檢測裝置檢測輸入該視頻解碼器的視頻信號是否滿足啟動該三 維梳狀濾波器的條件。所述第二檢測裝置檢測該片內(nèi)存儲器中的數(shù)據(jù)是否正確保存和讀 取。所述控制裝置在關(guān)閉該三維梳狀濾波器時,關(guān)閉該讀/寫控制裝置。所述地址映射裝 置連接在所述接口和所述片內(nèi)存儲器控制器之間,并通過所述接口訪問所述系統(tǒng)內(nèi)存。所 述讀寫控制裝置包括讀狀態(tài)機(jī)和寫狀態(tài)機(jī)。所述讀狀態(tài)機(jī)在空閑狀態(tài)、請求狀態(tài)和等待狀 態(tài)之間切換,所述寫狀態(tài)機(jī)在空閑狀態(tài)、請求狀態(tài)和處理狀態(tài)之間切換。所述讀寫控制裝置 還包括計數(shù)器,其記錄讀或?qū)懻埱髷?shù)量,并根據(jù)所述計數(shù)器的值的變化切換所述讀或?qū)憼?態(tài)機(jī)的狀態(tài)。所述讀寫控制裝置還包括數(shù)據(jù)轉(zhuǎn)換裝置,其將該設(shè)備接收到的數(shù)據(jù)轉(zhuǎn)換為所 需的存儲格式,以及將讀取的數(shù)據(jù)轉(zhuǎn)換為所需的輸出格式。所述地址映射裝置包括地址映 射表,其中記錄多個邏輯地址以及對應(yīng)的所述物理地址。所述地址映射裝置還包括請求通 道模塊,其根據(jù)所述地址映射表將所述邏輯地址轉(zhuǎn)換為所述物理地址。所述地址映射裝置 進(jìn)一步包括數(shù)據(jù)通道模塊,按照轉(zhuǎn)換得到的所述物理地址與外部設(shè)備進(jìn)行數(shù)據(jù)交換。所述讀寫控制裝置將所述至少兩幀圖像的數(shù)據(jù)間隔存儲。所述邏輯地址是所述片內(nèi)存儲器中的 地址。所述接口為PCIe總線接口。按照本發(fā)明又一方面,提供一種具有計算機(jī)可讀介質(zhì)的制造品,在該計算機(jī)可讀 介質(zhì)上存儲可用于執(zhí)行在視頻解碼器的三維梳狀濾波中使用系統(tǒng)內(nèi)存的計算機(jī)可讀代碼, 包括用以控制在邏輯地址上進(jìn)行數(shù)據(jù)讀/寫的計算機(jī)可讀代碼;以及用以將該邏輯地址 與系統(tǒng)內(nèi)存的物理地址對應(yīng)并在該物理地址上實際讀/寫數(shù)據(jù)的計算機(jī)可讀代碼。優(yōu)選地,所述用以控制在邏輯地址上進(jìn)行數(shù)據(jù)讀/寫的計算機(jī)可讀代碼包括用以 控制至少一個狀態(tài)機(jī)的狀態(tài)切換的計算機(jī)可讀代碼。所述用以控制至少一個狀態(tài)機(jī)的狀 態(tài)切換的計算機(jī)可讀代碼包括用以控制讀狀態(tài)機(jī)的狀態(tài)切換以讀取數(shù)據(jù)的計算機(jī)可讀代 碼;以及用以控制寫狀態(tài)機(jī)的狀態(tài)切換以寫入數(shù)據(jù)的計算機(jī)可讀代碼。該用以控制在邏輯地址上進(jìn)行數(shù)據(jù)讀/寫的計算機(jī)可讀代碼包括用以控制讀狀 態(tài)機(jī)的狀態(tài)切換以讀取數(shù)據(jù)的計算機(jī)可讀代碼和用以控制寫狀態(tài)機(jī)的狀態(tài)切換以寫入數(shù) 據(jù)的計算機(jī)可讀代碼。所述控制讀狀態(tài)機(jī)的計算機(jī)可讀代碼控制所述讀狀態(tài)機(jī)在空閑狀 態(tài)、請求狀態(tài)、等待狀態(tài)之間切換,所述控制寫狀態(tài)機(jī)的計算機(jī)可讀代碼所述寫狀態(tài)機(jī)在空 閑狀態(tài)、請求狀態(tài)和處理狀態(tài)之間切換。優(yōu)選地,所述用以控制至少一個狀態(tài)機(jī)的狀態(tài)切換的計算機(jī)可讀代碼還包括用以 記錄讀或?qū)懻埱髷?shù)量的計數(shù)變量,并根據(jù)所述計數(shù)變量切換所述狀態(tài)機(jī)的狀態(tài)。所述用以 控制至少一個狀態(tài)機(jī)的狀態(tài)切換的計算機(jī)可讀代碼還包括用以執(zhí)行數(shù)據(jù)轉(zhuǎn)換的計算機(jī)可 讀代碼,其將數(shù)據(jù)在輸入格式與存儲格式之間以及在存儲格式與輸出格式之間轉(zhuǎn)換。所述 將邏輯地址與系統(tǒng)內(nèi)存的物理地址對應(yīng)的計算機(jī)可讀代碼進(jìn)一步包括用以根據(jù)地址映射 表將該邏輯地址轉(zhuǎn)換為物理地址的計算機(jī)可讀代碼。所述地址映射表記錄多個邏輯地址以 及對應(yīng)的所述物理地址。所述將邏輯地址與系統(tǒng)內(nèi)存的物理地址對應(yīng)的計算機(jī)可讀代碼進(jìn) 一步包括按照轉(zhuǎn)換得到的物理地址與外部設(shè)備進(jìn)行數(shù)據(jù)交換的計算機(jī)可讀代碼。所述用以 控制至少一個狀態(tài)機(jī)的狀態(tài)切換的計算機(jī)可讀代碼還包括將所述至少兩幀圖像的數(shù)據(jù)間 隔存儲的計算機(jī)可讀代碼。按照本發(fā)明又一方面,提供一種具有計算機(jī)可讀介質(zhì)的制造品,在該計算機(jī)可讀 介質(zhì)上存儲有用以控制前述電視卡運(yùn)行的計算機(jī)可讀代碼,包括用以檢測該視頻解碼器的 運(yùn)行狀態(tài)的計算機(jī)可讀代碼、用以檢測該片內(nèi)存儲器的狀態(tài)的計算機(jī)可讀代碼以及用以根 據(jù)上述檢測的結(jié)果啟動或關(guān)閉該三維梳狀濾波器的計算機(jī)可讀代碼。優(yōu)選地,所述用以檢測該視頻解碼器的運(yùn)行狀態(tài)的計算機(jī)可讀代碼包括用以檢測 輸入該視頻解碼器的視頻信號是否滿足啟動該三維濾波器的條件的計算機(jī)可讀代碼。所述 用以檢測該片內(nèi)存儲器的狀態(tài)的計算機(jī)可讀代碼包括用以檢測該片內(nèi)存儲器中的數(shù)據(jù)是 否正確保存和讀取的計算機(jī)可讀代碼。所述用以啟動或關(guān)閉該三維梳狀濾波器的計算機(jī)可 讀代碼在關(guān)閉該三維梳狀濾波器時,關(guān)閉該讀/寫控制裝置。利用本發(fā)明,系統(tǒng)內(nèi)存可用于3D梳狀濾波。例如,在PCTV應(yīng)用中,由于系統(tǒng)內(nèi)存 比片內(nèi)存儲器大得多,所以3D梳狀濾波的效果比現(xiàn)有技術(shù)好得多。并且,相比于現(xiàn)有技術(shù), 額外的硬件成本大大降低,甚至不需要額外的成本。進(jìn)一步,3D梳狀濾波器可以自適應(yīng)地打 開/關(guān)閉,取決于3D梳狀濾波器和片內(nèi)存儲器的狀態(tài)。
本發(fā)明的這些和其他特征將在下面的具體描述中結(jié)合附圖更詳細(xì)地說明。在附圖 中,本發(fā)明作為示例而不是作為限制來說明,其中,圖1示出按照本發(fā)明一個實施方式,在三維梳狀濾波中使用系統(tǒng)內(nèi)存的設(shè)備。圖2示出按照本發(fā)明一個實施方式,寫狀態(tài)機(jī)的運(yùn)轉(zhuǎn)示意圖。圖3示出按照本發(fā)明一個實施方式,讀狀態(tài)機(jī)的運(yùn)轉(zhuǎn)示意圖。圖4示出該讀寫控制裝置在邏輯地址上的讀/寫。圖5示出按照本發(fā)明一個實施方式,使用系統(tǒng)內(nèi)存的方法的高級流程圖。圖6示出按照本發(fā)明一個實施方式,一種具有前述設(shè)備的電視卡。圖7示出按照本發(fā)明一個實施方式的運(yùn)行控制設(shè)備。圖8示出按照本發(fā)明一個實施方式的運(yùn)行控制方法。
具體實施例方式現(xiàn)在將根據(jù)其如在附圖中說明的幾個實施方式來具體描述本發(fā)明。在下面的描述 中,闡述許多具體細(xì)節(jié)以提供對本發(fā)明的徹底理解。然而,對于本領(lǐng)域技術(shù)人員,顯然,本發(fā) 明可不利用這些具體細(xì)節(jié)的一些或者全部而實施。在有的情況下,公知的工藝步驟和/或 結(jié)構(gòu)沒有說明,以避免不必要的混淆本發(fā)明。圖1是一示意性框圖,示出按照本發(fā)明一個實施方式的在三維梳狀濾波中使用系 統(tǒng)內(nèi)存的設(shè)備100,其應(yīng)用于PCTV應(yīng)用中的電視卡上的視頻解碼器中。優(yōu)選地,所述系統(tǒng)內(nèi) 存指的是PC系統(tǒng)內(nèi)存,然而,其不是為了將本發(fā)明限制為PC系統(tǒng)內(nèi)存。該設(shè)備100包括讀寫控制裝置110和地址映射裝置120。該讀寫控制裝置110控 制數(shù)據(jù)在邏輯地址上的讀和/或?qū)?。該地址映射裝置120將邏輯地址與系統(tǒng)內(nèi)存的物理地 址對應(yīng),并且在物理地址上實際讀和/或?qū)憯?shù)據(jù)。如本領(lǐng)域所公知的,上述數(shù)據(jù)包括圖像數(shù) 據(jù)和/或運(yùn)動標(biāo)識,在本發(fā)明中,所述數(shù)據(jù)與至少兩幀圖像有關(guān),也就是包括,但不限于,兩 幀、三幀或更多。在一個實施例中,該讀寫控制裝置110使用一個狀態(tài)機(jī)(未示)控制的數(shù)據(jù)讀和 寫。該狀態(tài)機(jī)在空閑、請求、等待和處理狀態(tài)之間切換。在讀過程中,該狀態(tài)機(jī)在空閑、請求、 等待狀態(tài)之間切換,而在寫過程中,該狀態(tài)機(jī)在空閑、請求和處理狀態(tài)之間切換。如圖1所示,在一個實施例中,該讀寫控制裝置110使用讀狀態(tài)機(jī)114和寫狀態(tài) 機(jī)116分別控制數(shù)據(jù)的讀和寫,其中該寫狀態(tài)機(jī)116在空閑、請求、處理狀態(tài)之間切換,如圖 2所示,而該讀狀態(tài)機(jī)114在空閑、請求、等待狀態(tài)之間切換,如圖3所示。該讀寫控制裝置 100還包括計數(shù)器112,其記錄讀和/或?qū)懻埱蟮臄?shù)量,并根據(jù)讀/寫請求的變化改變上述 狀態(tài)機(jī)的狀態(tài)。然而,本領(lǐng)域技術(shù)人員可以認(rèn)識到,可以分別為該讀狀態(tài)機(jī)114和寫狀態(tài)機(jī) 116設(shè)置各自的計數(shù)器(未示),用以分別記錄其中的請求數(shù)量。參考圖2,示意性示出寫狀態(tài)機(jī)116狀態(tài)切換的過程。下面僅就圖像數(shù)據(jù)的寫過程 描述,運(yùn)動標(biāo)識的寫過程與之非常類似,不再重復(fù)描述。在接收到一個寫請求時,所述計數(shù) 器112的值增加1。在一個實施例中,所述寫請求指的是將數(shù)據(jù)寫入存儲器的請求。在一 個實施例中,可使用數(shù)據(jù)有效標(biāo)志位來標(biāo)示寫請求,當(dāng)該標(biāo)志位為真時,表示收到一個寫請 求,反之亦然。
參照圖1,該讀寫控制裝置還包括數(shù)據(jù)轉(zhuǎn)換裝置118,在寫過程中,其將接收到的 數(shù)據(jù)轉(zhuǎn)換為所需的存儲格式,而在讀過程中,其將所讀取的數(shù)據(jù)轉(zhuǎn)換為所需的輸出格式。在 一個實施例中,接收到的數(shù)據(jù)的位寬為12比特,將其轉(zhuǎn)換為64比特位寬的存儲格式??墒?用任何合適的方式進(jìn)行該轉(zhuǎn)換,包括,但不限于,以1或0填充空余比特位或?qū)⒍鄠€數(shù)據(jù)組 合為一個存儲數(shù)據(jù)包等。并且,輸出格式的位寬為12比特,在讀過程中,將讀取的64比特 位寬的存儲格式轉(zhuǎn)換為該輸出格式,可采用與上述轉(zhuǎn)換過程反向的手段進(jìn)行,這種手段對 于本領(lǐng)域技術(shù)人員來說是顯而易見的。當(dāng)計數(shù)器的值增加到大于預(yù)先設(shè)定的第一閥值時,該寫狀態(tài)機(jī)116從空閑狀態(tài)切 換到請求狀態(tài),如箭頭A所述。此時,寫請求被發(fā)送到該地址映射裝置120。參照圖1,該地 址映射裝置120包括地址映射表124,該地址映射表124記錄邏輯地址和對應(yīng)的物理地址。 該地址映射裝置120包括請求通道模塊122,其根據(jù)該地址映射表124將所述邏輯地址轉(zhuǎn)換 為物理地址。該地址映射裝置120還包括數(shù)據(jù)通道模塊126,其根據(jù)轉(zhuǎn)換得到的物理地址與 外部設(shè)備進(jìn)行數(shù)據(jù)交換。該外部設(shè)備將在之后的說明中描述。在一個實施例中,本領(lǐng)域技術(shù)人員可以認(rèn)識到,該地址映射表124中與邏輯地址 對應(yīng)的物理地址是由驅(qū)動程序(未示)向操作系統(tǒng)申請的。“驅(qū)動程序”和“操作系統(tǒng)”是 本領(lǐng)域的一般術(shù)語,其含義對于本領(lǐng)域技術(shù)人員是顯而易見的。并且,向操作系統(tǒng)申請物理 地址也是公知技術(shù)。在一個實施例中,在寫請求被確認(rèn)接受時,計數(shù)器112的值減1。當(dāng)計數(shù)器112的 值等于1時,寫狀態(tài)機(jī)116切換到處理狀態(tài),如箭頭B。這時等待數(shù)據(jù)存儲結(jié)束。當(dāng)存儲完 畢,即寫過程結(jié)束,該寫狀態(tài)機(jī)116切換到空閑狀態(tài),如箭頭C。參照圖3,根據(jù)讀取兩幀圖像的情況,示意性示出讀狀態(tài)機(jī)114的狀態(tài)切換過程。 類似地,下面僅就圖像數(shù)據(jù)的讀過程進(jìn)行描述。在初始狀態(tài)時,本地存儲器為空。所述本地 存儲器不同于系統(tǒng)內(nèi)存,還可稱為片內(nèi)存儲器,在后面將說明該本地存儲器。本領(lǐng)域技術(shù)人 員可以理解,為了保證視頻解碼器具有充足的數(shù)據(jù),根據(jù)本地存儲器的大小和系統(tǒng)等待時 間,將計數(shù)器112的值設(shè)為特定的初始值。由于計數(shù)器112記錄的是讀請求的數(shù)量,也就是 設(shè)定讀請求數(shù)量的初始值。所述讀請求指的是從存儲器讀取數(shù)據(jù)的請求。顯然,該存儲器 指的是系統(tǒng)內(nèi)存。如果計數(shù)器112的值大于預(yù)先設(shè)定的第二閥值時,該讀狀態(tài)機(jī)114的狀態(tài)切換由 空閑狀態(tài)切換為請求狀態(tài),如箭頭A'所示。此時,讀請求被發(fā)送至該地址映射裝置120,請 求讀取第一幀的圖像數(shù)據(jù),該讀狀態(tài)機(jī)切換為等待狀態(tài),如箭頭B'所示,并且讀請求數(shù)減 1。與之前描述類似,該地址映射裝置120通過請求通道模塊122根據(jù)該地址映射表 124找到與邏輯地址對應(yīng)的物理地址,并且通過數(shù)據(jù)通道模塊126與外部設(shè)備進(jìn)行數(shù)據(jù)交 換,從而讀取所需數(shù)據(jù)。當(dāng)該讀請求減到4時,該讀狀態(tài)機(jī)切換到請求狀態(tài),如箭頭B"所示。然后在發(fā)出 讀請求,請求第二幀的圖像數(shù)據(jù),并再次切換到等待狀態(tài)。當(dāng)讀請求減到0時,即不再需要 讀取數(shù)據(jù),該狀態(tài)機(jī)切換為空閑狀態(tài),如箭頭C'所示。類似地,所讀取的數(shù)據(jù)通過該數(shù)據(jù)轉(zhuǎn)換裝置118轉(zhuǎn)換為輸出格式。在隔行掃描的情況下,每一幀圖像有兩場數(shù)據(jù)??紤]這樣的情況,即所述數(shù)據(jù)包括
8兩個部分當(dāng)前坐標(biāo)點的運(yùn)動標(biāo)識和當(dāng)前幀之前兩幀的圖像數(shù)據(jù)。它們作為三維梳狀濾波 器的參考數(shù)據(jù)。這樣,就需要存儲和讀取兩幀的圖像數(shù)據(jù)。當(dāng)然,使用的幀數(shù)越多,畫面的 質(zhì)量就更好,但至少需要兩幀圖像來完成三維梳狀濾波。參照圖4,示出按照本發(fā)明一個實施例,該讀寫控制裝置在邏輯地址上存取數(shù)據(jù)的 方式。在PCTV的應(yīng)用中,讀取數(shù)據(jù)比存儲(寫)數(shù)據(jù)頻繁得多,因此為了提高讀取速度,將 這兩幀圖像的數(shù)據(jù)間隔存儲。例如,為了提高存取效率,在一個實施例中,每次存儲數(shù)據(jù)的 大小為128字節(jié),這取決于硬件構(gòu)造。那么將第一幀的第一場的128字節(jié)數(shù)據(jù)存儲,在接著 的邏輯地址上存儲第二幀的第一場的128字節(jié)數(shù)據(jù)。按照這種方式,當(dāng)?shù)谝粓鰯?shù)據(jù)存儲完 畢,存儲第一幀的第二場的128字節(jié)數(shù)據(jù),在接著的邏輯地址上存儲第二幀的第二場的128 字節(jié)數(shù)據(jù)。這樣,在使用時,兩幀數(shù)據(jù)被同時讀取,用來進(jìn)行三維梳狀濾波計算。每次每幀 讀取128字節(jié)數(shù)據(jù)。參照圖5,在上面的描述中,本發(fā)明還是提供一種在三維梳狀濾波中使用系統(tǒng)內(nèi)存 的方法300。在步驟310,使用讀、寫狀態(tài)機(jī)114、116以及計數(shù)器112控制數(shù)據(jù)在邏輯地址 上的讀和寫。在步驟320,通過地址映射表124將所述邏輯地址與物理地址對應(yīng),并且按照 該物理地址在系統(tǒng)內(nèi)存中實際讀和寫數(shù)據(jù)。參照圖6,示出一種電視卡400,其包括視頻解碼器410,其具有三維梳狀濾波器 412,還包括片內(nèi)存儲器420、片內(nèi)存儲器控制器430和接口 440。該電視卡400還包括上述 的設(shè)備100,其中該讀寫控制裝置110與該三維梳狀濾波器412連接,進(jìn)行數(shù)據(jù)交換,該地 址映射裝置120與該接口 440和該片內(nèi)存儲器控制器430連接。片內(nèi)存儲器控制器430控 制片內(nèi)存儲器420中的數(shù)據(jù)存取,也就是之前描述的本地存儲器。在一個實施例中,該接口 為PCIe接口。圖6還示出PC系統(tǒng)的一部分,即前述的外部設(shè)備,包括芯片組、中央處理器 和內(nèi)存。在一個實施例中,帶有3D梳狀濾波器、片內(nèi)存儲器和片內(nèi)存儲器控制器的視頻解 碼器嵌入在PCTV ASIC (PCTV專用集成電路)內(nèi)部,該P(yáng)CTV ASIC轉(zhuǎn)而位于PC電視卡板上。 然而,有許多實現(xiàn)所達(dá)PC電視卡的方法,并且應(yīng)當(dāng)理解上面所描述的具體實施例不是為了 以任何方式限制本發(fā)明。如前所述,該地址映射裝置120獲得系統(tǒng)內(nèi)存的物理地址,然后通過PCIe總線和 /或芯片組從系統(tǒng)內(nèi)存讀取數(shù)據(jù)或向系統(tǒng)內(nèi)存寫入數(shù)據(jù)。這一過程可采用任何合適的手段 實現(xiàn)。在一個實施例中,所述邏輯地址就是該片內(nèi)存儲器中的地址。或者,在另一個實施方式中,該邏輯地址只是符號地址,還不是所述任何存儲器中 的地址,需要存儲或已經(jīng)讀取的數(shù)據(jù)存放在不同于該片內(nèi)存儲器的緩存中。本領(lǐng)域技術(shù)人 員可以理解這個實施例,并且可以使用公知技術(shù)手段實現(xiàn)這個目的。參照圖7,示出一種控制上述電視卡運(yùn)行的運(yùn)行控制設(shè)備200,包括第一檢測裝置 210、第二檢測裝置220和控制裝置230。該第一檢測裝置210用來檢測該視頻解碼器410 的運(yùn)行狀態(tài),即檢測輸入該視頻解碼器的視頻信號是否滿足啟動該三維梳狀濾波器412的 條件從而由控制裝置230根據(jù)檢測結(jié)果決定是否打開該三維梳狀濾波器412,該檢測結(jié)果 在一個實施例中為輸出信號的形式。比如切換頻道或當(dāng)前頻道沒有電視節(jié)目時,就無需啟 動三維梳狀濾波器412,因而節(jié)省PCIe總線上的數(shù)據(jù)傳輸,并且降低系統(tǒng)功耗。該第二檢測裝置220用來檢測該片內(nèi)存儲器420中的數(shù)據(jù)是否正確保存和讀取。 當(dāng)該片內(nèi)存儲器420狀態(tài)出現(xiàn)異常時,該控制裝置230關(guān)閉該三維梳狀濾波器412,同時關(guān)
9閉該讀寫控制裝置110。該片內(nèi)存儲器420的狀態(tài)異常指的是數(shù)據(jù)的存取不正確,這通常 是由于PCIe帶寬問題導(dǎo)致的。關(guān)閉該三維梳狀濾波器412后,釋放所占據(jù)的PCIe帶寬。 經(jīng)過一段時間后,嘗試恢復(fù)開啟該三維梳狀濾波器412。這樣就可有效應(yīng)對PCIe總線發(fā)生 不可預(yù)知的問題,既保證用戶可以得到最高質(zhì)量的視頻輸出,又可以避免因為PCIe帶寬問 題,錯誤開啟三維梳狀濾波,而造成視頻質(zhì)量下降。圖8所示為與該運(yùn)行控制設(shè)備對應(yīng)的運(yùn) 行控制方法。本發(fā)明還提供一種系統(tǒng),其將上述電視卡和運(yùn)行控制設(shè)備結(jié)合在一起,其構(gòu)造已 在前面詳細(xì)描述,所以為了簡潔,此處僅簡略說明。本發(fā)明還包括一種具有計算機(jī)可讀介質(zhì)的制造品,在計算機(jī)可讀介質(zhì)上存儲有可 用于執(zhí)行在視頻解碼器的三維梳狀濾波中使用系統(tǒng)內(nèi)存的計算機(jī)可讀代碼,包括用以控 制在邏輯地址上進(jìn)行數(shù)據(jù)讀/寫的計算機(jī)可讀代碼;以及用以將該邏輯地址與系統(tǒng)內(nèi)存的 物理地址對應(yīng)并在該物理地址上實際讀/寫數(shù)據(jù)的計算機(jī)可讀代碼。在一個實施例中,該用以控制在邏輯地址上進(jìn)行數(shù)據(jù)讀/寫的計算機(jī)可讀代碼包 括用以控制至少一個狀態(tài)機(jī)的狀態(tài)切換的計算機(jī)可讀代碼在另一個實施方式中,該用以控制在邏輯地址上進(jìn)行數(shù)據(jù)讀/寫的計算機(jī)可讀代 碼包括用以控制讀狀態(tài)機(jī)的狀態(tài)切換以讀取數(shù)據(jù)的計算機(jī)可讀代碼和用以控制寫狀態(tài)機(jī) 的狀態(tài)切換以寫入數(shù)據(jù)的計算機(jī)可讀代碼。該控制讀狀態(tài)機(jī)的計算機(jī)可讀代碼控制所述讀狀態(tài)機(jī)在空門狀態(tài)、請求狀態(tài)、等 待狀態(tài)之間切換,該控制寫狀態(tài)機(jī)的計算機(jī)可讀代碼控制所述寫狀態(tài)機(jī)在空閑狀態(tài)、請求 狀態(tài)和處理狀態(tài)之間切換。該用以控制至少一個狀態(tài)機(jī)的狀態(tài)切換的計算機(jī)可讀代碼還包括用以記錄讀或 寫請求數(shù)量的計數(shù)變量,并根據(jù)所述計數(shù)變量切換所述狀態(tài)機(jī)的狀態(tài)。該用以控制至少一個狀態(tài)機(jī)的狀態(tài)切換的計算機(jī)可讀代碼還包括用以執(zhí)行數(shù)據(jù) 轉(zhuǎn)換的計算機(jī)可讀代碼,其將數(shù)據(jù)在輸入格式與存儲格式之間以及在存儲格式與輸出格式 之間轉(zhuǎn)換。該將邏輯地址與系統(tǒng)內(nèi)存的物理地址對應(yīng)的計算機(jī)可讀代碼進(jìn)一步包括用以根 據(jù)地址映射表將該邏輯地址轉(zhuǎn)換為物理地址的計算機(jī)可讀代碼。該地址映射表與之前描述 的相同。該將邏輯地址與系統(tǒng)內(nèi)存的物理地址對應(yīng)的計算機(jī)可讀代碼進(jìn)一步包括照轉(zhuǎn)換 得到的物理地址與外部設(shè)備進(jìn)行數(shù)據(jù)交換的計算機(jī)可讀代碼。該用以控制至少一個狀態(tài)機(jī)的狀態(tài)切換的計算機(jī)可讀代碼還包括將所述至少兩 幀圖像的數(shù)據(jù)間隔存儲的計算機(jī)可讀代碼。本發(fā)明的進(jìn)一步實施例中,提供一種具有計算機(jī)可讀介質(zhì)的制造品,在該計算機(jī) 可讀介質(zhì)上存儲有用以控制前述電視卡運(yùn)行的計算機(jī)可讀代碼,包括用以檢測該視頻解碼 器的運(yùn)行狀態(tài)的計算機(jī)可讀代碼、用以檢測該片內(nèi)存儲器的狀態(tài)的計算機(jī)可讀代碼以及用 以根據(jù)上述檢測的結(jié)果啟動或關(guān)閉該三維梳狀濾波器的計算機(jī)可讀代碼。該用以檢測該視頻解碼器的運(yùn)行狀態(tài)的計算機(jī)可讀代碼包括用以檢測輸入該視 頻解碼器的視頻信號是否滿足啟動該三維梳狀濾波器的條件的計算機(jī)可讀代碼。例如,在 切換頻道或當(dāng)前頻道無節(jié)目時,該視頻解碼器的運(yùn)行狀態(tài)就不滿足啟動該三維梳狀濾波器的條件。該用以檢測該片內(nèi)存儲器的狀態(tài)的計算機(jī)可讀代碼包括用以檢測該片內(nèi)存儲器 中的數(shù)據(jù)是否正確保存和讀取的計算機(jī)可讀代碼。該用以啟動或關(guān)閉該三維梳狀濾波器的計算機(jī)可讀代碼在關(guān)閉該三維梳狀濾波 器時,關(guān)閉該讀/寫控制裝置。盡管本發(fā)明參照多個實施方式描述,但是存在落入本發(fā)明范圍內(nèi)的改變、置換和 各種替代等同物。還應(yīng)當(dāng)理解,有許多實現(xiàn)本發(fā)明方法和設(shè)備的可選方式。所以,其意圖是 下面所附的權(quán)利要求解釋為包括所有這樣的落入本發(fā)明主旨和范圍內(nèi)的改變、置換和各種 替代等同物。
權(quán)利要求
一種在視頻解碼的三維梳狀濾波中使用系統(tǒng)內(nèi)存的設(shè)備,包括讀寫控制裝置,控制與至少兩幀圖像有關(guān)的數(shù)據(jù)在邏輯地址上的讀/寫;以及地址映射裝置,將所述邏輯地址與所述系統(tǒng)內(nèi)存的物理地址對應(yīng),并在所述物理地址上實際讀/寫數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的設(shè)備,其中,所述讀寫控制裝置包括讀狀態(tài)機(jī)和寫狀態(tài)機(jī)。
3.根據(jù)權(quán)利要求2所述的設(shè)備,其中,所述讀狀態(tài)機(jī)在空閑狀態(tài)、請求狀態(tài)、等待狀態(tài) 之間切換,所述寫狀態(tài)機(jī)在空閑狀態(tài)、請求狀態(tài)和處理狀態(tài)之間切換。
4.根據(jù)權(quán)利要求1所述的設(shè)備,其中,所述讀寫控制裝置還包括計數(shù)器,其記錄讀或?qū)?請求數(shù)量,并根據(jù)所述計數(shù)器的值的變化切換狀態(tài)機(jī)的狀態(tài)。
5.根據(jù)權(quán)利要求1所述的設(shè)備,其中,所述讀寫控制裝置還包括數(shù)據(jù)轉(zhuǎn)換裝置,其將該 設(shè)備接收到的數(shù)據(jù)轉(zhuǎn)換為所需的存儲格式,以及將讀取的數(shù)據(jù)轉(zhuǎn)換為所需的輸出格式。
6.根據(jù)權(quán)利要求1所述的設(shè)備,其中,所述地址映射裝置包括地址映射表,其中記錄多 個邏輯地址以及對應(yīng)的所述物理地址。
7.根據(jù)權(quán)利要求6所述的設(shè)備,其中,所述地址映射裝置還包括請求通道模塊,其根據(jù) 所述地址映射表將所述邏輯地址轉(zhuǎn)換為所述物理地址。
8.根據(jù)權(quán)利要求7所述的設(shè)備,其中,所述地址映射裝置進(jìn)一步包括數(shù)據(jù)通道模塊,其 按照轉(zhuǎn)換得到的所述物理地址與外部設(shè)備進(jìn)行數(shù)據(jù)交換。
9.根據(jù)權(quán)利要求1所述的設(shè)備,其中,所述讀寫控制裝置將所述至少兩幀圖像的數(shù)據(jù) 間隔存儲。
全文摘要
提供在PCTV應(yīng)用中的三維梳狀濾波中使用系統(tǒng)內(nèi)存的方法和設(shè)備,首先控制數(shù)據(jù)在邏輯地址上的讀/寫,并且將邏輯地址與系統(tǒng)內(nèi)存的物理地址對應(yīng),然后在物理地址上實際讀/寫數(shù)據(jù)。使用讀狀態(tài)機(jī)和寫狀態(tài)機(jī)分別控制數(shù)據(jù)在邏輯地址上的讀/寫,其中寫狀態(tài)機(jī)在空閑狀態(tài)、請求狀態(tài)和處理狀態(tài)之間切換,讀狀態(tài)機(jī)在空閑狀態(tài)、請求狀態(tài)和等待狀態(tài)之間切換。使用地址映射表記錄邏輯地址和對應(yīng)的物理地址,通過該地址映射表獲取物理地址后,在該物理地址上實際讀/寫數(shù)據(jù)。還提供用于根據(jù)視頻解碼器和片內(nèi)存儲器狀態(tài)自適應(yīng)控制3D梳狀濾波器打開/關(guān)閉。本發(fā)明優(yōu)點是可對兩幀的3D梳狀濾波使用系統(tǒng)內(nèi)存。
文檔編號H04N9/78GK101945293SQ20091005450
公開日2011年1月12日 申請日期2009年7月8日 優(yōu)先權(quán)日2009年7月8日
發(fā)明者余敏, 張磊, 沈曉蕓, 蔡鐘 申請人:超威半導(dǎo)體(上海)有限公司