一種實現復用的離散余弦變換dct8裝置及方法
【技術領域】
[0001]本發明涉及視頻編碼技術領域,尤其涉及一種實現復用的離散余弦變換dct8裝置及方法。
【背景技術】
[0002]H.264是目前最新的國際視頻壓縮標準。H.264擁有極高的編碼效率,主要是因為采用的更精確的幀內預測(intra predict1n)和幀間預測(inter predict1n)。但是這些編碼效率的提高都會伴隨著編碼復雜度的提高,為實現實時算法提出了新的挑戰。
[0003]隨著可穿戴智能設備的興起,在極小空間內集成的硬件設備要求越來越低功耗,而且能夠高效處理各項事務,特別是針對視頻采集等廣泛性的社會需求,這也造成了視頻編碼系統的挑戰。離散余弦變換dct變換作為H.264視頻編碼中一個計算量極大的運算過程,需要消耗很多寄存器資源,這也造成了視頻編碼器在設計上面積以及功耗的難題。
[0004]現有技術的離散余弦變換dct8裝置的中間轉置部分使用隨機存取存儲器ram,并且需要拆分獨立8條ram單元,對整個面積并不會節省太多;整個8x8DCT變換塊的處理時間需要13個時鐘周期完成;ram的操作和使用較為復雜,后期需要單獨進行ram的維護;
[0005]另外,ram不一定支持同一個地址同時讀寫,因此處理多個dct8x8塊時,在每次二維變換器讀ram數據時刻,后一個dct8x8塊的一維變換器需要等讀完之后才可以寫入。
【發明內容】
[0006]本發明要解決的技術問題之一,在于提供一種實現復用的離散余弦變換DCT8裝置,實現視頻4kx2k@30FPS,1080p@120FPS的高性能編碼需求,并節省dct變換過程中的資源消耗和功耗消耗。
[0007]本發明問題之一是這樣實現的:一種實現復用的離散余弦變換DCT8裝置,
[0008]包括:一維變換器、兩個8路復用器、二維寄存器組、二維變換器、以及reg寄存器;所述二維寄存器組由8個二維寄存器組成,每個二維寄存器存儲1個像素數據;
[0009]所述一維變換器經一個8路復用器與所述二維寄存器組連接,所述二維寄存器組通過另一個8路復用器與所述二維變換器連接,二維變換器與所述reg寄存器連接;
[0010]所述一維變換器將編碼圖像中8X8離散余弦變換變換塊進行一維變換處理后得到的8個像素數據經過一 8路復用器復用后直接寫入二維寄存器組中指定的位置;
[0011]所述二維變換器通過另一 8路復用器從二維寄存器組中同一個位置讀取8個像素數據進行二維的變換操作;
[0012]所述reg寄存器存儲二維變換操作后的結果數據。
[0013]進一步的,所述編碼圖像中8X8離散余弦變換變換塊通過一維變換器和二維變換器的處理時間只要11個時鐘周期,且滿足時序處理要求。
[0014]進一步的,所述二維寄存器組使用兩個4Bits計數器來分別控制讀和寫數據的操作。
[0015]進一步的,當一維變換器操作寫二維寄存器組是橫向寫的情況下,二維變換器操作也是橫向讀取一維變換器寫過的二維寄存器行像素進行二維處理,從而進行能流水處理;
[0016]當一維變換器縱向寫二維寄存器組的情況下,二維變換器也是縱向讀取;同樣進行流水處理;
[0017]則橫向和縱向都是公用一套二維寄存器組,同時利用寄存器能橫向和縱向都能操作的特性。
[0018]本發明要解決的技術問題之二,在于提供一種實現復用的離散余弦變換DCT8方法,實現4kx2k@30FPS,1080p@120FPS的高性能編碼需求,并節省dct變換過程中的資源消耗和功耗消耗。
[0019]本發明問題之二是這樣實現的:一種實現復用的離散余弦變換DCT8方法,所述方法需提供一維變換器、兩個8路復用器、二維寄存器組、二維變換器、以及reg寄存器;所述二維寄存器組由8個二維寄存器組成,每個二維寄存器存儲1個像素數據;
[0020]所述方法具體為:
[0021]所述一維變換器將編碼圖像中8X8離散余弦變換變換塊進行一維變換處理后得到的8個像素數據經過一 8路復用器復用后直接寫入二維寄存器組中指定的位置;
[0022]所述二維變換器通過另一 8路復用器從二維寄存器組中同一個位置讀取8個像素數據進行二維的變換操作;所述一維變換器和二維變換器進行行列讀寫操作時無需停頓操作,能完全流水處理;
[0023]所述reg寄存器存儲二維變換操作后的結果數據。
[0024]進一步的,所述編碼圖像中8X8離散余弦變換變換塊通過一維變換器和二維變換器的處理時間只要11個時鐘周期,且滿足時序處理要求。
[0025]進一步的,所述二維寄存器組使用兩個4Bits計數器來分別控制讀和寫數據的操作。
[0026]進一步的,當一維變換器操作寫二維寄存器組是橫向寫的情況下,二維變換器操作也是橫向讀取一維變換器寫過的二維寄存器行像素進行二維處理,從而進行能流水處理;
[0027]當一維變換器縱向寫二維寄存器組的情況下,二維變換器也是縱向讀取;同樣進行流水處理;
[0028]則橫向和縱向都是公用一套二維寄存器組,同時利用寄存器能橫向和縱向都能操作的特性。
[0029]本發明具有如下優點:本發明的二維寄存器組可以很好支持同時行列讀寫操作;由于支持同時讀寫,對面積并不會帶來更多消耗;實現dct8變換過程中的資源復用,減小芯片設計面積及功耗。同時本發明省去了現有技術中隨機存取存儲器ram的獨立維護,和增加ram測試邏輯。
【附圖說明】
[0030]圖1為本發明裝置的結構示意圖。
[0031 ]圖2為本發明方法的流程示意圖。
[0032]圖3為本發明一維變換器往二維寄存器組按照行寫后二維變換器按照行讀的結構示意圖。
[0033]圖4為本發明一維變換器往二維寄存器組按照列寫后二維變換器按照列讀的結構示意圖。
【具體實施方式】
[0034]請參閱圖1所示,本發明的一種實現復用的離散余弦變換DCT8裝置,包括:一維變換器11、兩個8路復用器12、二維寄存器組13、二維變換器14、以及reg寄存器15;所述二維寄存器組13由8個二維寄存器組成,每個二維寄存器存儲1個像素數據;
[0035]所述一維變換器11經一個8路復用器12與所述二維寄存器組13連接,所述二維寄存器組13通過另一個8路復用器12與所述二維變換器14連接,二維變換器14與所述reg寄存器15連接;
[0036]所述一維變換器11將編碼圖像中8X8離散余弦變換變換塊進行一維變換處理后得到的8個像素數據經過一8路復用器12復用后直接寫入二維寄存器組13中指定的位置;該8路復用器12可使多路數據信息共享一路信道。
[0037]所述二維變換器14通過另一 8路復用器12從二維寄存器組13中同一個位置讀取8個像素數據進行二維的變換操作;
[0038]所述reg寄存器15存儲二維變換操作后的結果數據。
[0039]在本發明中,所述編碼圖像中8X8離散余弦變換變換塊通過一維變換器和二維變換器的處理時間只要11個時鐘周期,且滿足時序處理要求。所述二維寄存器組使用兩個4Bits