專利名稱:一種存儲(chǔ)器多模訪問(wèn)控制方法及其片上sram存儲(chǔ)器控制系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及圖像編解碼領(lǐng)域,尤其涉及圖像編解碼處理的存儲(chǔ)器控制方法及其 控制系統(tǒng)。
背景技術(shù):
H.264是由國(guó)際電信標(biāo)準(zhǔn)化部門(ITU-T)和制定MPEG的國(guó)際標(biāo)準(zhǔn)化組織 (ISO)/國(guó)際電工協(xié)會(huì)(IEC)共同制定的一種視頻編碼標(biāo)準(zhǔn),以實(shí)現(xiàn)視頻的高壓縮比、高 圖像質(zhì)量、良好的網(wǎng)絡(luò)適應(yīng)性。H.264同時(shí)又被稱為MPEG-4AVC (“活動(dòng)圖像專家組-4 的高級(jí)視頻編碼”)或稱為MPEG-4 PartlO。由于其相比以往標(biāo)準(zhǔn)的出色的性能,被人 們稱為新一代視頻編碼標(biāo)準(zhǔn),在國(guó)際上受到了廣泛地重視和歡迎。HJ64解碼器的硬件設(shè) 計(jì)已成為研究的熱點(diǎn),一個(gè)典型的H.264解碼器的流程圖如
圖1所示。整個(gè)解碼器大致 分為三個(gè)部分A.解碼殘差數(shù)據(jù),B.解碼幀間或幀內(nèi)預(yù)測(cè)的數(shù)據(jù),C.數(shù)據(jù)重建和去方塊 效應(yīng)濾波。關(guān)于H.264解碼器的組成,請(qǐng)參見(jiàn)參考文獻(xiàn)1 畢厚杰,《新一代視頻壓縮 編碼標(biāo)準(zhǔn)-HJ64/AVC》。
A部分包括幾乎所有圖像/視頻解碼其中都有的一些基本解碼步驟,比如熵解 碼、反量化和反變換。在熵解碼這步,解碼器會(huì)分析輸入的HJ64的比特流,然后得到 圖像數(shù)據(jù)(16X 16的宏塊),并把它們送到反量化模塊來(lái)恢復(fù)初始的能量。反變換模塊會(huì) 把前面得到的數(shù)據(jù)從頻域轉(zhuǎn)換到時(shí)域。經(jīng)過(guò)以上的步驟,一個(gè)宏塊的像素殘差數(shù)據(jù)就被 解碼出來(lái)了。
B部分的功能是得到一個(gè)宏塊的預(yù)測(cè)數(shù)據(jù)。有兩種預(yù)測(cè)模式幀間預(yù)測(cè)和幀內(nèi) 預(yù)測(cè)。根據(jù)A部分解得的預(yù)測(cè)模式參數(shù),解碼器選擇合適的預(yù)測(cè)器來(lái)生成一個(gè)宏塊的正 確的預(yù)測(cè)數(shù)據(jù)。
C部分的作用是數(shù)據(jù)重建和去塊效應(yīng)濾波。它根據(jù)A部分所得的殘差數(shù)據(jù)和B 部分所得的預(yù)測(cè)數(shù)據(jù)重建出一個(gè)宏塊的數(shù)據(jù)。然后,經(jīng)過(guò)去塊效應(yīng)濾波來(lái)減少方塊失真 以達(dá)到更好的圖像質(zhì)量。
去塊效應(yīng)濾波完成后,還采用了直接存儲(chǔ)器存儲(chǔ)裝置(DMA)把放在片內(nèi)靜態(tài)隨 機(jī)存儲(chǔ)器6RAM)中解碼好的數(shù)據(jù)搬運(yùn)到片外同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器6DRAM)中,提高 系統(tǒng)的數(shù)據(jù)傳輸效率。
在解碼過(guò)程中,反量化反變換模塊(IQIT)、去塊效應(yīng)濾波模塊(DF)和直接存儲(chǔ) 器存儲(chǔ)模塊(DMA)將共享一塊片上SRAM作為數(shù)據(jù)臨時(shí)緩沖區(qū)(buffer),存儲(chǔ)各個(gè)宏塊 的數(shù)據(jù),作為這些模塊的數(shù)據(jù)交換區(qū)。
如圖2所示,是一個(gè)具有寫位段選擇功能的片上SRAM存儲(chǔ)器,其地址、數(shù)據(jù) 訪問(wèn)機(jī)制如下
數(shù)據(jù)線寬度為64-bit,每個(gè)連續(xù)64-bit的數(shù)據(jù)占用一位地址;它的讀寫是時(shí)鐘同 步的,由時(shí)鐘信號(hào)(CIX)的上升沿觸發(fā)。片選信號(hào)為低電平(CEN = O)有效。當(dāng)片選信號(hào)有效且讀使能信號(hào)為高電平(CEN = 0,WEN=I)時(shí),進(jìn)入讀數(shù)據(jù)模式。在讀數(shù)據(jù) 模式時(shí),數(shù)據(jù)根據(jù)地址信號(hào)A[i:0]讀取相應(yīng)地址的數(shù)據(jù),輸出到輸出數(shù)據(jù)信號(hào)Q[63:0]。 當(dāng)片選信號(hào)有效且讀使能信號(hào)為低電平(CEN = 0,WEN = O)時(shí),進(jìn)入讀數(shù)據(jù)模式。根 據(jù)地址信號(hào)A[i:0],輸入的數(shù)據(jù)D[63:0]被寫入相應(yīng)的地址中。輸入數(shù)據(jù)信號(hào)D[63:0]上 的數(shù)據(jù)會(huì)根據(jù)寫位段選擇信號(hào)BWEN[63:0],使每個(gè)數(shù)據(jù)位各自可選是否寫入。當(dāng)寫位段 選擇腳BWEN|j]為低電平時(shí),相應(yīng)的數(shù)據(jù)引腳D|j]被選中,數(shù)據(jù)根據(jù)地址信號(hào)寫入相應(yīng) 的地址中。下表列出了不同的信號(hào)組合所對(duì)應(yīng)的操作。關(guān)于SRAM的詳細(xì)介紹,請(qǐng)參 見(jiàn)參考文獻(xiàn)2 ((SMIC 65nm SRAM用戶手冊(cè)》。
權(quán)利要求
1.一種存儲(chǔ)器多模訪問(wèn)控制方法,其特征在于將圖像數(shù)據(jù)中,1個(gè)16X16宏塊中 的每個(gè)4X4塊分為4行,分別為a、b、C、d,每行由4個(gè)字節(jié)的數(shù)據(jù)組成,訪問(wèn)控制方 法包括以下過(guò)程在反量化反變換模式下,每個(gè)時(shí)鐘周期生成1列4個(gè)像素組成的32-bit數(shù)據(jù),并把它 們寫入片上SRAM中;按順序先生成塊O的每列,再生成塊1的每列,依次直到塊15的 每列也生成完,再開(kāi)始下一宏塊的生成;在塊中列的生成順序?yàn)橄壬蒩行的第k個(gè)字 節(jié)、b行的第k個(gè)字節(jié)、c行的第k個(gè)字節(jié)、d行的第k個(gè)字節(jié)組成的32-bit數(shù)據(jù),再生 成a行的第k+Ι個(gè)字節(jié)、b行的第k+Ι個(gè)字節(jié)、c行的第k+Ι個(gè)字節(jié)、d行的第k+Ι個(gè)字 節(jié)組成的32-bit數(shù)據(jù);在解塊濾波模式下,每個(gè)時(shí)鐘周期讀取片上SRAM中的1行4個(gè)像素組成的32-bit數(shù) 據(jù);按順序先讀取塊O的每行,再讀取塊1的每行,依次直到塊15的每行也讀取完,再 開(kāi)始下一宏塊的讀取;在塊中行的讀取順序?yàn)橄茸x取a行,再讀取b行,再讀取c行, 最后讀取d行;在直接存儲(chǔ)器存儲(chǔ)模式下,每個(gè)時(shí)鐘周期讀取片上SRAM中2行8個(gè)像素組成的 64-bit數(shù)據(jù),并把它們搬運(yùn)到片外SDRAM中;做如下定義把16個(gè)塊分為8個(gè)塊對(duì), 把塊O和和塊1稱為塊對(duì)0,把塊2和塊3稱為塊對(duì)1,以此類推,把塊14和塊15稱為 塊對(duì)7;按順序先讀取塊對(duì)0中的數(shù)據(jù),再讀取塊對(duì)1中的數(shù)據(jù),依次直到塊對(duì)7中的數(shù) 據(jù)也讀取完,再開(kāi)始下一宏塊的讀??;在每個(gè)塊對(duì)中的數(shù)據(jù)讀取順序?yàn)閺纳系较?,?讀取2個(gè)a行,再讀取2個(gè)b行,再讀取2個(gè)c行,最后讀取2個(gè)d行;在缺省模式下,根據(jù)外部提供的片選使能信號(hào)、寫使能信號(hào)、寫位段選擇信號(hào)、地 址輸入信號(hào)和數(shù)據(jù)輸入信號(hào)對(duì)片上SRAM進(jìn)行讀寫操作。
2.如權(quán)利要求1所述的一種存儲(chǔ)器多模訪問(wèn)控制方法,其特征在于總線數(shù)據(jù)寬度 為64位,采用兩塊數(shù)據(jù)寬度為64位的片上SRAM支持?jǐn)?shù)據(jù)存取方式。
3.如權(quán)利要求2所述的一種存儲(chǔ)器多模訪問(wèn)控制方法,其特征在于所述1個(gè)16X16 的宏塊中的數(shù)據(jù)按如下的地址組織方式存儲(chǔ)在2塊片上SRAM中把1個(gè)16X16的宏塊的塊按先從左到右、在從上到下的順序從0到15排號(hào),每個(gè)塊 分成a行、b行、c行、d行;設(shè)m=宏塊的序號(hào),η=塊的序號(hào),ρ = η除以2的余數(shù),q = n-p+16Xm,k = n+p+16 Xm ;把第m個(gè)宏塊的第η塊的a行的數(shù)據(jù)放在第ρ個(gè)SRAM的地址塊q的低32_bit中, 把第m個(gè)宏塊的第η塊的b行的數(shù)據(jù)放在第ρ個(gè)SRAM的地址塊q的高32_bit中,把第 m個(gè)宏塊的第η塊的c行的數(shù)據(jù)放在第ρ+1個(gè)SRAM的地址塊k的低32_bit中,把第m 個(gè)宏塊的第η塊的c行的數(shù)據(jù)放在第ρ+1個(gè)SRAM的地址塊k的高32_bit中。
4.一種用以實(shí)現(xiàn)如權(quán)利要求1所述的存儲(chǔ)器多模訪問(wèn)控制方法的存儲(chǔ)器控制系統(tǒng),其 特征在于所述存儲(chǔ)器控制系統(tǒng)由2塊SRAM組成,2塊SRAM按照全局的排列順序, 全局地址塊按照兩塊SRAM地址塊交替遞增的順序排列;所述存儲(chǔ)器控制系統(tǒng)包括片選生成部,其輸入信號(hào)有地址模式信號(hào)、轉(zhuǎn)置模式信號(hào)、地址輸入信號(hào)的低2位 和片選使能信號(hào);輸出信號(hào)為SRAMO的片選信號(hào)和SRAMl的片選信號(hào);在缺省模式 下,依照照全局地址塊排列的方式,根據(jù)地址輸入信號(hào)的最低位選擇哪塊SRAM的片選使能信號(hào)有效;轉(zhuǎn)置模式有效時(shí),由于兩塊SRAM的地址塊都要被訪問(wèn),故兩塊SRAM的片選使能信號(hào)都有效;地址模式有效而轉(zhuǎn)置模式無(wú)效時(shí),根據(jù)地址輸入信號(hào)的低2位 來(lái)選擇哪塊SRAM的片選使能信號(hào)有效;寫位段選擇生成部,其輸入信號(hào)有地址模式信號(hào)、轉(zhuǎn)置模式信號(hào)、地址輸入信號(hào)的 低2位和寫使能信號(hào);輸出信號(hào)為SRAMO的寫使能信號(hào)、寫位段選擇信號(hào)和SRAMl的 寫使能信號(hào)、寫位段選擇信號(hào);按照前文所描述的地址、數(shù)據(jù)組織形式,根據(jù)輸入的地 址和模式選擇哪塊SRAM的哪個(gè)地址塊的哪幾個(gè)字節(jié)被選中以及是否被寫入;地址譯碼部,其輸入信號(hào)為地址模式信號(hào)、轉(zhuǎn)置模式信號(hào)和地址輸入信號(hào);輸出信 號(hào)為SRAMO的地址輸入信號(hào)和SRAMl的地址輸入信號(hào);按照前文所述的地址、數(shù)據(jù)組 織形式,根據(jù)輸入的地址和模式來(lái)生成每塊SRAM的相對(duì)地址塊;輸入數(shù)據(jù)分配部,其輸入信號(hào)為地址模式信號(hào)、轉(zhuǎn)置模式信號(hào)、地址輸入信號(hào)的低 位和輸入數(shù)據(jù);輸出信號(hào)為SRAMO的輸入數(shù)據(jù)信號(hào)和SRAMl的輸入數(shù)據(jù)信號(hào);按照 前文所述的數(shù)據(jù)組織方式,根據(jù)輸入的地址和模式選擇信號(hào)把輸入的數(shù)據(jù)進(jìn)行分配、重 組,分配到2塊SRAM中去;輸出數(shù)據(jù)組合部,其輸入信號(hào)為地址模式信號(hào)、轉(zhuǎn)置模式信號(hào)和地址輸入信號(hào)的低 位;輸出信號(hào)為總的輸出數(shù)據(jù)信號(hào);按照前文所述的地址組織形式,根據(jù)輸入的地址和 模式選擇信號(hào)把兩塊SRAM輸出的數(shù)據(jù)進(jìn)行重組、拼接,得到滿足要求的輸出數(shù)據(jù)。
5.如權(quán)利要求4所述的存儲(chǔ)器控制系統(tǒng),其特征在于將各種訪問(wèn)模式按地址模式 和轉(zhuǎn)置模式劃分在反量化反變換模式下,每次是一列一列訪問(wèn)的,在塊中不是按一行一行的順序訪 問(wèn),所以屬于轉(zhuǎn)置模式,即轉(zhuǎn)置模式狀態(tài)量設(shè)為1;由于每次訪問(wèn)1列的32-bit數(shù)據(jù),故 相對(duì)于缺省模式,地址模式時(shí)是特殊的,地址模式狀態(tài)量設(shè)為1 ;在去塊效應(yīng)濾波模式下,每次訪問(wèn)1行的32-bit數(shù)據(jù),故沒(méi)有轉(zhuǎn)置,轉(zhuǎn)置模式狀態(tài)量 設(shè)為0,但地址模式是特殊的,地址模式狀態(tài)量設(shè)為1;在直接存儲(chǔ)器存儲(chǔ)模式下,每次訪問(wèn)的不是同一個(gè)塊中的數(shù)據(jù),故屬于轉(zhuǎn)置模式, 轉(zhuǎn)置模式狀態(tài)量設(shè)為1;每次訪問(wèn)2行的64-bit數(shù)據(jù),故屬于普通的地址模式,地址模式 狀態(tài)量屬于0;在缺省模式下,轉(zhuǎn)置模式狀態(tài)量設(shè)為0,地址模式狀態(tài)量設(shè)為0。
6.如權(quán)利要求4或5所述的存儲(chǔ)器控制系統(tǒng),其特征在于向SRAM中寫數(shù)據(jù)只要在 時(shí)鐘的上升沿提供數(shù)據(jù)和控制信號(hào)就可以,而對(duì)SRAM的讀操作需要一個(gè)時(shí)鐘周期才能 把SRAM中的數(shù)據(jù)讀出來(lái);控制信號(hào)經(jīng)過(guò)觸發(fā)器保持一個(gè)時(shí)鐘周期,以供從兩塊SRAM 中讀出數(shù)據(jù)后進(jìn)行數(shù)據(jù)拼接時(shí)使用。
全文摘要
一種存儲(chǔ)器多模訪問(wèn)控制方法,將圖像數(shù)據(jù)中,1個(gè)16×16宏塊中的每個(gè)4×4塊分為4行,分別為a、b、c、d,每行由4個(gè)字節(jié)的數(shù)據(jù),訪問(wèn)控制方法包括以下過(guò)程在反量化反變換模式、解塊濾波模式下、直接存儲(chǔ)器存儲(chǔ)模式的存儲(chǔ)機(jī)制,在缺省模式下,根據(jù)外部提供的片選使能信號(hào)、寫使能信號(hào)、寫位段選擇信號(hào)、地址輸入信號(hào)和數(shù)據(jù)輸入信號(hào)對(duì)片上SRAM進(jìn)行讀寫操作。以及提供了實(shí)現(xiàn)該多模訪問(wèn)控制方法的存儲(chǔ)器控制系統(tǒng)。本發(fā)明提供一種能靈活切換訪問(wèn)模式、具有轉(zhuǎn)置存儲(chǔ)功能、提升圖像存儲(chǔ)讀寫效率的存儲(chǔ)器多模訪問(wèn)控制方法及其存儲(chǔ)器控制系統(tǒng)。
文檔編號(hào)G06F12/06GK102023944SQ20101059482
公開(kāi)日2011年4月20日 申請(qǐng)日期2010年12月18日 優(yōu)先權(quán)日2010年12月18日
發(fā)明者嚴(yán)曉浪, 修思文, 馬德, 黃凱 申請(qǐng)人:浙江大學(xué)