專利名稱:通過改進(jìn)存儲(chǔ)方式及讀出方式克服了圖象存儲(chǔ)器特有的硬件規(guī)格引起的各種延遲因素的 ...的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及動(dòng)態(tài)圖象、靜止圖象譯碼中使用的圖象譯碼設(shè)備及圖象存儲(chǔ)器。
背景技術(shù):
對(duì)壓縮了的動(dòng)態(tài)圖象數(shù)據(jù)進(jìn)行譯碼的動(dòng)態(tài)圖象譯碼設(shè)備被應(yīng)用于各種各樣的多媒體機(jī)器中,這種需要的發(fā)展是無限的。這里所說的壓縮動(dòng)態(tài)圖象數(shù)據(jù)是指通過與編碼成數(shù)字?jǐn)?shù)據(jù)的同時(shí)對(duì)前后幀之間的差分進(jìn)行編碼,達(dá)到了縮短數(shù)據(jù)尺寸的數(shù)據(jù)而言。
被這樣壓縮了的壓縮動(dòng)態(tài)圖象數(shù)據(jù)在譯碼處理時(shí),通過將成為差分計(jì)算的基準(zhǔn)的圖象(以下稱“參照?qǐng)D象”)和對(duì)所算出的差分編了碼的圖象(以下稱“差分圖象”)相加,生成應(yīng)顯示的圖象。
在MPEG(Motion Picture Image Coding ExpertsGroup)的情況下,使用稱為I幀面(Intra-Picture)的圖象用作參照?qǐng)D象。這里所謂I幀面是指壓縮了的圖象數(shù)據(jù),但包括一幀部分的亮度分量及色差分量。另外使用上述P幀面(Predictive-Picture)或B幀面(Bidirectionally predictive Picture)作為差分圖象。這里所說的P幀面是由與位于過去方向的幀的差分構(gòu)成的差分圖象,所說的B幀面是由與位于過去方向及未來方向的幀的差分構(gòu)成的差分圖象。
以什么樣的單位構(gòu)成B幀面及P幀面呢,以橫16象素×縱16象素的單位、即所謂象素塊單位構(gòu)成幀之間的差分。該橫16×縱16象素包括由圖1A所示的橫16×縱16的亮度分量構(gòu)成的亮度塊、由圖1B所示的橫8×縱8的藍(lán)色差分量構(gòu)成的藍(lán)色差塊(Cb塊)、以及橫8×縱8的紅色差分量構(gòu)成的紅色差塊(Cr塊)。如果將由橫16象素×縱16象素構(gòu)成的亮度塊和由橫8象素×縱8象素構(gòu)成的藍(lán)色差塊及紅色差塊的組合稱為宏塊,則構(gòu)成圖象譯碼的一個(gè)單位。
對(duì)應(yīng)于宏塊進(jìn)行什么樣的編碼呢,對(duì)宏塊的編碼如下進(jìn)行對(duì)亮度塊及色差塊進(jìn)行離散余弦變換處理(Discerete Cosine TransformDCT),分離成位于低頻帶的空間頻率分量和位于高頻帶的空間頻率分量,將高頻帶舍去,對(duì)位于低頻帶的空間頻率分量進(jìn)行量化處理。
編了碼的宏塊經(jīng)過反量化及反離散余弦變換處理后,通過以動(dòng)矢量為依據(jù)的動(dòng)態(tài)補(bǔ)償,作為圖象進(jìn)行顯示。所謂動(dòng)矢量是指與前后幀的圖象進(jìn)行比較、指示相關(guān)性最大處的信息而言。就是說動(dòng)矢量以塊為單位表現(xiàn)圖象內(nèi)的人物象或建筑物象在幀前后怎樣移動(dòng)。
所謂動(dòng)態(tài)補(bǔ)償是指將應(yīng)在差分前后顯示的參照?qǐng)D象和該差分混合后獲得一個(gè)完成了的顯示用圖象而言。
以上的MPEG依據(jù)的動(dòng)態(tài)圖象的編碼·譯碼技術(shù)中在本說明書中特別引用的內(nèi)容如以上所述。關(guān)于更詳細(xì)的技術(shù)內(nèi)容,請(qǐng)參照株式會(huì)社ァスキ-“點(diǎn)圖解式最新MPEG教科書”等已知文獻(xiàn)。
在對(duì)用差分壓縮了的動(dòng)態(tài)圖象數(shù)據(jù)譯碼時(shí),安裝DRAM(DynamicRandom Access Memory)、SDRAM(Synchronous DynamicRandom Access Memory)是必要的。這是因?yàn)樵谶M(jìn)行壓縮動(dòng)態(tài)圖象數(shù)據(jù)的譯碼時(shí),有必要存儲(chǔ)應(yīng)混合在上述差分中的一幀部分的圖象,而廉價(jià)的大容量的SDRAM最適合于圖象的存儲(chǔ)。
動(dòng)態(tài)圖象譯碼設(shè)備將圖象存儲(chǔ)在SDRAM中,同時(shí)取得顯示下一個(gè)圖象的差分及動(dòng)矢量。如果取得動(dòng)矢量,則根據(jù)動(dòng)矢量,從已經(jīng)存儲(chǔ)著圖象的SDRAM中截出與差分尺寸相同的部分圖象即位于與該差分同一位置的圖象(被截出的該尺寸的圖象被稱為參照?qǐng)D象),通過將截出的參照?qǐng)D象和差分混合后寫回原來的SDRAM,在SDRAM內(nèi)獲得一個(gè)完成了的圖象。反復(fù)進(jìn)行以上的工作,能再生在時(shí)間上連續(xù)的動(dòng)畫。圖2A是表示現(xiàn)有的圖象譯碼設(shè)備的內(nèi)部結(jié)構(gòu)中與SDRAM有關(guān)的部分的圖。
SDRAM226有256行×256列的字區(qū)。其中1行×256列的區(qū)稱為頁。
存儲(chǔ)用圖象的橫720象素×縱480象素的亮度分量被等分成亮度塊的大小,分割后的亮度分量被存入一頁中。圖2B示出了圖2C所示的圖象怎樣被存入SDRAM226中。圖2C所示的由(0,0)~(15,15)構(gòu)成的橫16象素×縱16象素的亮度分量h11及由(16,0)~(31,15)構(gòu)成的橫16象素×縱16象素的亮度分量h12被存入圖2B所示的第0頁,圖2C所示的由(32,0)~(47,15)構(gòu)成的橫16象素×縱16象素的亮度分量h13及由(48,0)~(63,15)構(gòu)成的橫16象素×縱16象素的亮度分量h14被存入圖2B所示的第1頁。由(64,0)~(79,15)構(gòu)成的橫16象素×縱16象素的亮度分量及由(80,0)~(90,15)構(gòu)成的橫16象素×縱16象素的亮度分量被存入圖2B所示的第2頁(這里在本說明書中,各象素的坐標(biāo)是以圖象的左上頂點(diǎn)為原點(diǎn),以圖象向右的方向?yàn)閄坐標(biāo)的正向,以圖象向下的方向?yàn)閅坐標(biāo)的正向。)。
存儲(chǔ)用圖象的橫360象素×縱240象素的藍(lán)色分量被等分成Cb塊的大小,分割后的藍(lán)色分量被存入另一頁中。參照?qǐng)D2B說明圖2D所示的一畫面部分的色差分量怎樣被存入SDRAM226中。圖2D所示的由(0,0)~(7,7)構(gòu)成的橫8×縱8的藍(lán)色差分量h21、由(8,0)~(15,7)構(gòu)成的橫8×縱8的藍(lán)色差分量h22、由(16,0)~(23,7)構(gòu)成的橫8×縱8的藍(lán)色差分量h23、由(24,0)~(31,7)構(gòu)成的橫8×縱8的藍(lán)色差分量h24被存入圖2B所示的第150頁(另外,根據(jù)不在于“150”這個(gè)數(shù)值。只想作為一例進(jìn)行解釋。)。
存儲(chǔ)用圖象的橫360象素×縱240象素的紅色差分量被等分成Cr塊的大小,分割后的紅色差分量被存入一頁中。參照?qǐng)D2B說明圖2D所示的圖象怎樣被存入SDRAM226中。圖2C所示的由(0,0)~(7,7)構(gòu)成的橫8×縱8的紅色差分量h21、由(8,0)~(15,7)構(gòu)成的橫8×縱8的紅色差分量h22、由(16,0)~(23,7)構(gòu)成的橫8×縱8的紅色差分量h23、由(24,0)~(31,7)構(gòu)成的橫8×縱8的紅色差分量h24被存入圖2B所示的第200頁(另外,根據(jù)不在于“200”這個(gè)數(shù)值。只想作為一例進(jìn)行解釋。)。
讀寫部227將SDRAM226中存儲(chǔ)的圖象中被截出的參照?qǐng)D象以脈沖串方式讀出到緩沖器228中。所謂脈沖串方式的讀出(脈沖串讀出)是指通過設(shè)定應(yīng)開始讀出的地方的行地址及列地址、以及讀出長度(脈沖串長度),讀出SDRAM中存儲(chǔ)的象素而言。
圖3是說明由讀寫部227進(jìn)行的脈沖串讀出用的時(shí)間圖。
如果在時(shí)刻t1發(fā)出激活指令(圖中的ACTIVE指令),同時(shí)將行地址送給SDRAM的地址引線。發(fā)送后,在經(jīng)過tRCD時(shí)間后的時(shí)刻t2,發(fā)送讀出指令,同時(shí)將列地址發(fā)送給地址引線。
發(fā)送激活指令后,從SDRAM226的數(shù)據(jù)引線輸出作為讀出長度設(shè)定的數(shù)量的亮度分量。這時(shí)讀出長度假定設(shè)為4字,從數(shù)據(jù)引線輸出4象素的亮度分量。在SDRAM中之所以在每一頁分區(qū)存儲(chǔ)亮度分量及色差分量,是因?yàn)榭紤]到該讀出是以脈沖串讀出方式進(jìn)行的。
為了對(duì)從SDRAM讀出的參照?qǐng)D象和差分進(jìn)行混合,或者對(duì)從SDRAM讀出的參照?qǐng)D象進(jìn)行半貝爾(ハ_フペル)內(nèi)插,緩沖器228暫時(shí)存儲(chǔ)亮度塊、色差塊。其規(guī)模被規(guī)定為最低限度能存儲(chǔ)亮度塊的容量、即能存儲(chǔ)橫16象素×縱16象素的亮度分量的容量。
所謂半貝爾內(nèi)插,是在動(dòng)矢量用半象素單位指示與前后幀的相關(guān)性大的位置的情況下,對(duì)截出的參照?qǐng)D象進(jìn)行必要的亮度分量、色差分量的再計(jì)算處理。
所謂縱向的半貝爾內(nèi)插是指用各行分量及其下一行分量的平均值生成亮度塊內(nèi)的各行分量而言,所謂橫向的半貝爾內(nèi)插是指用該各列分量及其下一列分量的平均值生成亮度塊內(nèi)的各列分量而言。所謂縱向及橫向的半貝爾內(nèi)插是指用該各列分量及其下一列分量、以及其下一行分量及其斜下方分量的平均值生成亮度塊內(nèi)的各列分量而言。
在圖2C所示的亮度塊內(nèi)進(jìn)行縱向的半貝爾內(nèi)插時(shí),用亮度(0,0)~亮度(15,0)和下一行的亮度(0,1)~亮度(15,1)的平均值生成位于亮度塊內(nèi)部的亮度(0,0)~亮度(15,0)。位于坐標(biāo)(0,0)的亮度分量被改寫成(亮度(0,0)+亮度(0,1))/2,坐標(biāo)(1,0)的亮度分量被改寫成(亮度(1,0)+亮度(1,1))/2,坐標(biāo)(2,0)的亮度分量被改寫成(亮度(2,0)+亮度(2,1))/2,坐標(biāo)(3,0)的亮度分量被改寫成(亮度(3,0)+亮度(3,1))/2。
在圖2B所示的亮度塊內(nèi)進(jìn)行橫向的半貝爾內(nèi)插時(shí),用亮度(0,0)~亮度(15,0)和下一列的亮度(1,0)~亮度(1,15)的平均值生成位于亮度塊內(nèi)部的亮度(0,0)~亮度(0,15)。坐標(biāo)(0,0)的亮度分量被改寫成(亮度(0,0)+亮度(1,0))/2,坐標(biāo)(0,1)的亮度分量被改寫成(亮度(0,1)+亮度(1,1))/2,坐標(biāo)(0,2)的亮度分量被改寫成(亮度(0,2)+亮度(1,2))/2,坐標(biāo)(0,3)的亮度分量被改寫成(亮度(0,3)+亮度(1,3))/2。
在需要進(jìn)行縱向的半貝爾內(nèi)插時(shí),有必要對(duì)全部行反復(fù)進(jìn)行取各行分量及其下一行分量的平均值的工作,在需要進(jìn)行橫向的半貝爾內(nèi)插時(shí),有必要對(duì)全部列反復(fù)進(jìn)行取各列分量及其下一列分量的平均值的工作。
可是上述宏塊的存儲(chǔ)方式未涉及到在以下的(1-1)(1-2)(2-1)(2-2)中說明的任何問題。
(1-1)按SDRAM的存儲(chǔ)方式進(jìn)行脈沖串讀出的次數(shù)及讀出時(shí)間增大的問題亮度分量-藍(lán)色差分量-紅色差分量的3分量被存入各頁中,因需要計(jì)算這些頁,所以存在三倍于參照?qǐng)D象讀出的比例進(jìn)行脈沖串讀出的問題。
例如顯示NTSC方式的圖象信號(hào)時(shí),由于每1秒顯示30幀的圖象(PAL方式時(shí)為25次),所以參照?qǐng)D象的讀出也要反復(fù)進(jìn)行近30次,但在該30次的參照?qǐng)D象讀出中,要分別讀出亮度塊、Cb塊、Cr塊,所以每1秒要反復(fù)進(jìn)行90次×宏塊數(shù)的脈沖串讀出。
對(duì)SDRAM的脈沖串讀出,在從發(fā)送行地址開始至發(fā)送列地址為止的期間存在相當(dāng)于tRCD的延遲時(shí)間。由于脈沖串讀出的次數(shù)倍增,所以由該延遲時(shí)間tRCD產(chǎn)生的影響也倍增,意味著譯碼處理被延遲。
另外,由于參照?qǐng)D象的位置原因,存在讀出次數(shù)進(jìn)一步增大的可能性。例如,在動(dòng)矢量在作為亮度分量的相關(guān)性大的位置從圖象左上方指示16象素的整數(shù)倍處的范圍的情況下,參照?qǐng)D象恰好被收容在一個(gè)亮度塊內(nèi),所以通過一次脈沖串讀出,就可以讀出位于如上指示的位置的橫16象素×縱16象素的亮度分量,但在動(dòng)矢量指示16象素的非整數(shù)倍處的范圍的情況下,需要個(gè)別地讀出存儲(chǔ)在多頁中的象素。對(duì)藍(lán)色差分量-紅色差分量來說也一樣,在動(dòng)矢量指示8象素的非整數(shù)倍處的范圍的情況下,需要個(gè)別地讀出存儲(chǔ)在多頁中的Cb塊-紅色差分量。
如果動(dòng)矢量指示16象素、8象素的非整數(shù)倍的范圍時(shí),脈沖串讀出的次數(shù)倍增。為了抵消由于這些原因而發(fā)生的譯碼處理的延遲,以往將工作時(shí)鐘脈沖設(shè)定得高些,強(qiáng)制圖象譯碼設(shè)備高速工作。因此,存在消耗的電力顯著地增大的問題。
(1-2)將參照?qǐng)D象分割成多個(gè)存儲(chǔ)器陣列存儲(chǔ)時(shí),延遲增大的問題SDRAM中的行列狀的存儲(chǔ)區(qū)稱為存儲(chǔ)器陣列。SDRAM中備有多個(gè)存儲(chǔ)器陣列,存在謀求大容量的問題。如果存儲(chǔ)器陣列有多個(gè),則將這些存儲(chǔ)器陣列變換成各自的存儲(chǔ)地址,就能將圖象分散在多個(gè)存儲(chǔ)器陣列中存儲(chǔ)。
如果這樣將圖象分割成多個(gè)存儲(chǔ)器陣列存儲(chǔ),則截出參照?qǐng)D象時(shí),需要從多個(gè)存儲(chǔ)器陣列讀出參照?qǐng)D象的亮度分量及色差分量。從該多個(gè)存儲(chǔ)器陣列讀出亮度分量及色差分量時(shí),會(huì)發(fā)生接收不到對(duì)存儲(chǔ)器陣列發(fā)送的讀出指令的現(xiàn)象。
之所以發(fā)生該現(xiàn)象,是因?yàn)槎鄠€(gè)存儲(chǔ)器陣列中存在未被激活的存儲(chǔ)器陣列。即,從多個(gè)存儲(chǔ)器陣列讀出亮度分量及色差分量時(shí),必須將存儲(chǔ)參照?qǐng)D象的亮度分量及色差分量的全部存儲(chǔ)器陣列激活才行。
可是激活存儲(chǔ)器陣列時(shí),需要3個(gè)時(shí)鐘脈沖的激活時(shí)間,但參照?qǐng)D象的讀出延遲該3個(gè)時(shí)鐘脈沖的時(shí)間是不可避免的。將圖象分割后存入多個(gè)存儲(chǔ)器陣列中時(shí),由于存儲(chǔ)器陣列未激活,所以存在不能接收讀出指令,或同時(shí)發(fā)生將存儲(chǔ)器陣列激活所需的延遲的問題。
(2-1)動(dòng)矢量指示半象素處時(shí)發(fā)生緩沖規(guī)模不足之所以將橫16象素×縱16象素的亮度分量及橫8象素×縱8象素的色差分量集中存入緩沖器228,是為了順利地進(jìn)行半貝爾內(nèi)插用的平均值的反復(fù)計(jì)算。就是說如果只該次讀出應(yīng)計(jì)算平均值的亮度分量及色差分量,則為了進(jìn)行該讀出而中斷半貝爾內(nèi)插。為了避免該中斷,將緩沖器228的容量規(guī)定為最低能存儲(chǔ)橫16象素×縱16象素的亮度分量及色差分量的容量。
可是,例如即使緩沖器228的規(guī)模為橫16象素×縱16象素,但在對(duì)位于亮度塊的最后一行的亮度(0,15)~亮度(0,15)進(jìn)行縱向半貝爾內(nèi)插時(shí),需要用亮度(0,15)~亮度(15,15)和下一行的亮度(0,16)~亮度(15,16)的平均值來生成,必須將亮度(0,16)~亮度(15,16)讀到緩沖器228中。如果這樣通過另外途徑讀出一行部分,就會(huì)發(fā)生延遲。同樣對(duì)位于亮度塊的最后一列的亮度(15,0)~亮度(15,15)進(jìn)行縱向半貝爾內(nèi)插時(shí),需要用亮度(15,0)~亮度(15,15)和下一行的亮度(16,0)~亮度(16,15)的平均值來生成,會(huì)發(fā)生將亮度(16,0)~亮度(16,15)讀到緩沖器228所需的延遲。
即使使緩沖器228的規(guī)模大,但結(jié)果仍然存在讀出最后的行及列的亮度分量所需的延遲,使緩沖器228的規(guī)模大而在制造成本上的花費(fèi)會(huì)將延遲條件的改善一掃而光,這就是現(xiàn)實(shí)情況。就是說在增大緩沖器228的規(guī)模來謀求半貝爾內(nèi)插的順利化的現(xiàn)有的規(guī)模的設(shè)定中,為了達(dá)到半貝爾內(nèi)插的順利化,在制造成本上增加了很大的負(fù)擔(dān)。
(2-2))動(dòng)矢量指示奇數(shù)象素處時(shí)發(fā)生緩沖規(guī)模不足SDRAM的字長為2字節(jié)、每一象素的亮度分量、藍(lán)色差分量、紅色差分量分別為1字節(jié)時(shí),能將兩個(gè)象素部分的亮度分量、藍(lán)色差分量、紅色差分量存儲(chǔ)在SDRAM的1個(gè)字中。其另一方面,如果動(dòng)矢量將奇數(shù)象素處的位置作為與前后幀的相關(guān)性大的位置進(jìn)行指示時(shí),為了將字作為讀寫的最小單位,需要讀出比一個(gè)象素多一些的內(nèi)容。例如,當(dāng)指示將從3象素處至19象素處的17象素作為參照?qǐng)D象時(shí),必須讀出包括它的范圍、即讀出從2象素處至19象素處的18象素。
在以18象素單位讀出的情況下,緩沖器228的規(guī)模僅兩列大小的亮度分量是不足的。如果存儲(chǔ)兩列部分的亮度分量多一些,則不得不擴(kuò)大緩沖器的規(guī)模。由于需要存儲(chǔ)橫向的一列部分的不足部分,所以必須將緩沖器的規(guī)模擴(kuò)大到橫18象素×縱16象素。
發(fā)明的公開本發(fā)明的第一個(gè)目的在于提供一種通過降低從SDRAM讀出亮度分量及色差分量的讀出次數(shù)及讀出時(shí)間,能進(jìn)行低工作時(shí)鐘脈沖的工作補(bǔ)償?shù)膱D象譯碼設(shè)備及圖象存儲(chǔ)器。
本發(fā)明的第二個(gè)目的在于提供一種即使需要從位于各個(gè)存儲(chǔ)器陣列的頁讀出參照?qǐng)D象時(shí),也能將與存儲(chǔ)單元的切換相伴隨的延遲的影響限制在最小限度的圖象譯碼設(shè)備。
本發(fā)明的第三個(gè)目的在于提供一種即使在使用其容量不滿足亮度塊的大小的緩沖器的情況下,也能順利地對(duì)參照?qǐng)D象進(jìn)行半貝爾內(nèi)插的圖象譯碼設(shè)備。
本發(fā)明的第四個(gè)目的在于提供一種即使在使用其容量不滿足亮度塊的大小的緩沖器的情況下,也能將存在于奇數(shù)象素處的位置的參照?qǐng)D象讀到緩沖器中的圖象譯碼設(shè)備。
為了達(dá)到第一個(gè)目的,圖象譯碼設(shè)備是一種備有將一畫面的圖象分割成橫m象素×縱n象素(m,n為1以上的整數(shù))的多個(gè)象素塊進(jìn)行存儲(chǔ)的圖象存儲(chǔ)器的圖象譯碼設(shè)備,圖象存儲(chǔ)器具有行列狀的存儲(chǔ)區(qū),用于將構(gòu)成各象素塊的s×t個(gè)第一色差分量(s,t為1以上的整數(shù))和構(gòu)成同一象素塊的s×t個(gè)第二色差分量存儲(chǔ)在從由某行地址和第一列地址特定的開始區(qū)到由該行地址和第二列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,將構(gòu)成同一象素塊的m×n個(gè)亮度分量存儲(chǔ)在從由另外的某行地址和第三列地址特定的另外的開始區(qū)到由該行地址和第四列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,
圖象譯碼設(shè)備的特征在于備有將從外部輸入的流譯碼成差分圖象和動(dòng)矢量的差分圖象譯碼裝置;從某個(gè)連續(xù)區(qū)讀出構(gòu)成差分圖象和應(yīng)混合的參照?qǐng)D象的全部第一色差分量、全部第二色差分量,從另外的連續(xù)區(qū)讀出全部亮度分量的存儲(chǔ)器存取裝置;以及將從兩個(gè)連續(xù)區(qū)讀出的第一色差分量、第二色差分量及亮度分量混合成差分圖象的混合裝置。
如果采用上述構(gòu)成的圖象譯碼設(shè)備,由于象素塊中包括的藍(lán)色差分量和紅色差分量被存儲(chǔ)在從由同一行地址特定的開始區(qū)至結(jié)束區(qū)中,所以如果指定從該開始區(qū)讀出的長度,進(jìn)行稱為脈沖串式地讀出存儲(chǔ)的內(nèi)容的脈沖串讀出,就能一次讀出象素塊中包括的藍(lán)色差分量和紅色差分量。由于這樣一次讀出藍(lán)色差分量和紅色差分量,則在讀出參照?qǐng)D象時(shí),對(duì)一個(gè)象素塊來說,與亮度分量的讀出合計(jì)通過兩次脈沖串讀出,就能讀出參照?qǐng)D象。
因此,能將脈沖串讀出的次數(shù)減少到與宏塊數(shù)的二倍成比例的數(shù),特別是在每1秒讀出30幀的參照?qǐng)D象反復(fù)近30次的情況下,具有總讀出時(shí)間異常地減少的效果。
因此,不需要將工作時(shí)鐘脈沖設(shè)定得高來強(qiáng)制圖象譯碼設(shè)備高速工作,具有能抑制電力消耗的效果。
達(dá)到第二個(gè)目的用的本發(fā)明的圖象譯碼設(shè)備是一種備有由行地址、列地址和存儲(chǔ)單元地址進(jìn)行地址特定的多個(gè)存儲(chǔ)器陣列,將一畫面的圖象分割成橫m象素×縱n象素(m,n為1以上的整數(shù))的多個(gè)象素塊并存儲(chǔ)在各個(gè)存儲(chǔ)器陣列中的圖象譯碼設(shè)備,存儲(chǔ)器陣列具有行列狀的存儲(chǔ)區(qū),用于將構(gòu)成一個(gè)象素塊的s×t個(gè)第一色差分量(s,t為1以上的整數(shù))和構(gòu)成同一象素塊的s×t個(gè)第二色差分量存儲(chǔ)在從由某行地址和第一列地址特定的開始區(qū)到由該行地址和第二列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,將構(gòu)成同一象素塊的m×n個(gè)亮度分量存儲(chǔ)在從由另外的某行地址和第三列地址特定的開始區(qū)到由該行地址和第四列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,圖象譯碼設(shè)備的特征在于備有將從外部輸入的流譯碼成差分圖象和動(dòng)矢量的差分圖象譯碼裝置;如果差分圖象和應(yīng)混合的參照?qǐng)D象與多個(gè)象素塊重疊,便算出與這些象素塊的重疊部分的頂點(diǎn)坐標(biāo)的重疊部判斷裝置;將重疊部分的橫向?qū)挾群涂v向?qū)挾然ハ啾容^,確定重疊部分的讀出順序的順序確定裝置;根據(jù)讀出順序,從存儲(chǔ)器陣列的連續(xù)區(qū)并從重疊部分讀出亮度分量和色差分量的存儲(chǔ)器存取裝置;以及將從多個(gè)連續(xù)區(qū)讀出的第一色差分量、第二色差分量及亮度分量混合成差分圖象的混合裝置。
如果采用本圖象譯碼設(shè)備,則在需要從多個(gè)存儲(chǔ)器陣列個(gè)別地讀出參照?qǐng)D象的情況下,通過根據(jù)重疊部分的橫向?qū)挾却_定讀出順序,能在從某個(gè)存儲(chǔ)器陣列讀出亮度分量的期間,并行地進(jìn)行對(duì)其它存儲(chǔ)器陣列的激活。由于能有效地進(jìn)行存儲(chǔ)器陣列的激活,且不存在為了激活而使譯碼處理延遲的弊病,所以能積極地將把圖象分割成多個(gè)并存入多個(gè)存儲(chǔ)器陣列的存儲(chǔ)方式取入圖象譯碼設(shè)備的設(shè)計(jì)中。
為了達(dá)到第三個(gè)目的,本發(fā)明的圖象譯碼設(shè)備是一種備有將一畫面的圖象分割成橫m象素×縱n象素(m,n為1以上的整數(shù))的多個(gè)象素塊進(jìn)行存儲(chǔ)的圖象存儲(chǔ)器的圖象譯碼設(shè)備,圖象存儲(chǔ)器具有行列狀的存儲(chǔ)區(qū),用于將構(gòu)成一個(gè)象素塊的s×t個(gè)第一色差分量(s,t為1以上的整數(shù))和構(gòu)成同一象素塊的s×t個(gè)第二色差分量存儲(chǔ)在從由某行地址和第一列地址特定的開始區(qū)到由該行地址和第二列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,將構(gòu)成同一象素塊的m×n個(gè)亮度分量存儲(chǔ)在從由另外的某行地址和第三列地址特定的另外的開始區(qū)到由該行地址和第四列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,圖象譯碼設(shè)備的特征在于備有將從外部輸入的流譯碼成差分圖象和動(dòng)矢量的差分圖象譯碼裝置;從圖象存儲(chǔ)器讀出構(gòu)成與差分圖象和應(yīng)混合的參照?qǐng)D象相當(dāng)?shù)南笏貕K的一半的亮度分量,并從圖象存儲(chǔ)器讀出與該一半亮度分量相鄰的一行及/或一列亮度分量的第一讀出裝置;保存所讀出的亮度分量的象素塊緩沖器;對(duì)所保存的一半亮度分量進(jìn)行判斷裝置需要判斷的方向的半貝爾內(nèi)插的半貝爾內(nèi)插裝置;以及讀出構(gòu)成與差分圖象和應(yīng)混合的參照?qǐng)D象相當(dāng)?shù)南笏貕K的其余一半的全部亮度分量的第二讀出裝置,象素塊緩沖器有如果輸出象素塊部分的亮度分量及色差分量時(shí),在前一半讀出的亮度分量中將與一半亮度分量相鄰的一行及/或一列亮度分量留下,將在后一半讀出的亮度分量書寫在于前一半讀出的亮度分量占據(jù)的區(qū)中的書寫部,半貝爾內(nèi)插裝置利用剩余的一行及/或一列亮度分量,對(duì)在后一半讀出的亮度分量進(jìn)行判斷裝置需要判斷的方向的半貝爾內(nèi)插。
如果采用本構(gòu)成的圖象譯碼設(shè)備,則由于進(jìn)行半貝爾內(nèi)插,則即使在需要比一行部分、一列部分多一些的亮度分量及色差分量的情況下,將它們分成兩次讀出,每次讀出時(shí)確定比一行部分、一列部分多一些的讀出范圍,所以即使是其容量不滿足亮度塊的大小的緩沖器,也能充分地存儲(chǔ)半貝爾內(nèi)插所需要的亮度分量。
達(dá)到第四個(gè)目的用的本發(fā)明的圖象譯碼設(shè)備的特征在于將在象素塊中位于相鄰的坐標(biāo)處的兩個(gè)亮度分量存儲(chǔ)在由行地址和一個(gè)列地址特定的開始區(qū)中,圖象譯碼設(shè)備備有判斷參照?qǐng)D象的左上方頂點(diǎn)的X坐標(biāo)是否是奇數(shù)坐標(biāo)的坐標(biāo)值判斷裝置;以及在斷定了參照?qǐng)D象的左上方頂點(diǎn)的X坐標(biāo)是奇數(shù)坐標(biāo)的情況下,將頁邊賦予第一及第二讀出范圍的賦予部,第一確定裝置及第二確定裝置分別對(duì)被賦予了頁邊的第一讀出范圍、第二讀出范圍確定讀出處地址及讀出長度,圖象存儲(chǔ)器內(nèi)的輸出部將參照?qǐng)D象的亮度分量及色差分量輸出給每個(gè)第一讀出范圍、第二讀出范圍,象素塊緩沖器的特征在于保存構(gòu)成圖象存儲(chǔ)器的輸出部輸出的參照?qǐng)D象的色差分量及亮度分量。如果采用本圖象譯碼設(shè)備,則為了讀出位于奇數(shù)坐標(biāo)處的亮度分量及色差分量,即使在讀出范圍比一行部分、一列部分多一些的情況下,將它們分成兩次讀出,每次讀出時(shí)確定比一行部分、一列部分多一些的讀出范圍,所以即使是象素塊大小的緩沖器,也能充分地存儲(chǔ)半貝爾內(nèi)插所需要的亮度分量及色差分量。
附圖的簡單說明圖1A是表示橫16象素×縱16象素的亮度塊的圖。
圖1B是表示橫8×縱8的藍(lán)色差塊及紅色差塊的圖。
圖2A是表示現(xiàn)有的圖象譯碼設(shè)備中有關(guān)SDRAM部分的圖。
圖2B是表示亮度分量及藍(lán)色差分量怎樣被存儲(chǔ)在各頁中的圖。
圖2C是表示存儲(chǔ)在各頁中的亮度分量位于圖象的何處的圖。
圖2D是表示存儲(chǔ)在各頁中的藍(lán)色差分量及紅色差分量位于圖象的何處的圖。
圖3是表示現(xiàn)有的圖象譯碼設(shè)備的讀出處理的時(shí)間圖。
圖4A是表示圖象譯碼設(shè)備的全體結(jié)構(gòu)的圖。
圖4B是表示象素讀寫部8的內(nèi)部結(jié)構(gòu)的圖。
圖4C是表示半貝爾內(nèi)插部15、寫入地址生成部110、讀出地址生成部22的內(nèi)部結(jié)構(gòu)的圖。
圖5是表示SDRAM的內(nèi)部結(jié)構(gòu)的圖。
圖6A是表示圖象譯碼設(shè)備全體的時(shí)間圖的圖。
圖6B是差分圖象以半幀為單位時(shí)的圖象譯碼設(shè)備全體的時(shí)間圖。
圖7A是表示亮度分量怎樣被存儲(chǔ)在各頁中的圖。
圖7B是表示藍(lán)色差分量及紅色差分量怎樣被存儲(chǔ)在各頁中的圖。
圖8A是表示存儲(chǔ)在各頁中的亮度分量位于圖象的何處的圖。
圖8B是表示存儲(chǔ)在各頁中的藍(lán)色差分量位于圖象的何處的圖。
圖9是表示亮度分量怎樣被存儲(chǔ)在各頁中的圖。
圖10是表示藍(lán)色差分量及紅色差分量怎樣被存儲(chǔ)在各頁中的圖。
圖11A是亮度地址編碼器61的內(nèi)部結(jié)構(gòu)圖。
圖11B是色差地址編碼器62的內(nèi)部結(jié)構(gòu)圖。
圖12A是表示補(bǔ)償控制部10進(jìn)行的讀出范圍確定處理的提示的流程圖。
圖12B是表示補(bǔ)償控制部10進(jìn)行的讀出范圍確定處理的提示的流程圖。
圖13A~圖13D是表示由補(bǔ)償控制部10怎樣擴(kuò)大Y01塊及Y23塊的圖。
圖14A~圖14D是表示由補(bǔ)償控制部10怎樣擴(kuò)大Y02塊及Y13塊的圖。
圖15A是表示參照?qǐng)D象與左上頁P(yáng)00~右下頁P(yáng)11中存儲(chǔ)的橫16象素×縱32象素交叉的情況之一例的圖。
圖15B是表示參照?qǐng)D象與左上頁P(yáng)00~右下頁P(yáng)11中存儲(chǔ)的橫16象素×縱32象素交叉的情況,以及怎樣讀出這些亮度分量及色差分量的圖。
圖16是表示由補(bǔ)償控制部10進(jìn)行的讀出順序確定程序的流程圖。
圖17是表示由補(bǔ)償控制部10進(jìn)行的頁讀出處理程序的流程圖。
圖18是表示參照?qǐng)D象與左上頁P(yáng)00~右下頁P(yáng)11中存儲(chǔ)的橫16象素×縱32象素交叉的情況之一例的圖。
圖19是由補(bǔ)償控制部10進(jìn)行的頁讀出的時(shí)間圖。
圖20A~20I是表示參照?qǐng)D象怎樣與各頁中存儲(chǔ)的橫16象素×縱32象素交叉的說明圖。
圖21A是表示緩沖器A12的內(nèi)部區(qū)域的圖。
圖21B是表示從左上頁P(yáng)00~右下頁P(yáng)11中讀出的重疊部分怎樣存儲(chǔ)在緩沖器A12的內(nèi)部區(qū)域的圖。
圖22是表示重疊部分的亮度分量怎樣存儲(chǔ)在緩沖器A12的內(nèi)部區(qū)域的線性地址長度為4BYTE的區(qū)域中的圖。
圖23A是表示由從左上頁P(yáng)00~右下頁P(yáng)11中讀出的重疊部分構(gòu)成的Y01塊怎樣存儲(chǔ)在緩沖器A12的內(nèi)部區(qū)域的圖。
圖23B是表示由從左上頁P(yáng)00~右下頁P(yáng)11中讀出的重疊部分構(gòu)成的Y02塊怎樣存儲(chǔ)在緩沖器A12的內(nèi)部區(qū)域的圖。
圖24A是寫入地址生成部13的內(nèi)部結(jié)構(gòu)圖。
圖24B是讀寫地址生成部22的內(nèi)部結(jié)構(gòu)圖。
圖25A是表示Y01塊的亮度分量被讀出后的緩沖器A12的存儲(chǔ)內(nèi)容的圖。
圖25B是表示Y23塊的亮度分量被讀出后的緩沖器A12的存儲(chǔ)內(nèi)容的圖。
圖26A是表示Y02塊的亮度分量被讀出后的緩沖器A12的存儲(chǔ)內(nèi)容的圖。
圖26B是表示Y13塊的亮度分量被讀出后的緩沖器A12的存儲(chǔ)內(nèi)容的圖。
圖27是表示由寫入地址生成部80讀出Y01塊及Y23塊的亮度分量中的哪個(gè)亮度分量,以及怎樣進(jìn)行半貝爾內(nèi)插的圖。
圖28A是表示對(duì)Y01塊及Y23塊的亮度分量進(jìn)行半貝爾內(nèi)插的形態(tài)的圖。
圖28B是表示對(duì)Y02塊及Y13塊的亮度分量進(jìn)行半貝爾內(nèi)插的形態(tài)的圖。
圖29A是表示第二實(shí)施形態(tài)中亮度分量怎樣存儲(chǔ)在各頁中的圖。
圖29B是表示第二實(shí)施形態(tài)中藍(lán)色差分量及紅色差分量怎樣存儲(chǔ)在各頁中的圖。
圖30A是表示第二實(shí)施形態(tài)的亮度地址編碼器61的內(nèi)部結(jié)構(gòu)的圖。
圖30B是表示第二實(shí)施形態(tài)的色差地址編碼器62的內(nèi)部結(jié)構(gòu)的圖。
實(shí)施發(fā)明用的最佳形態(tài)以下在說明圖象譯碼設(shè)備的實(shí)施形態(tài)之前,先說明本圖象譯碼設(shè)備提供的三個(gè)基本技術(shù)(a)(b)(c)。而且為了理解這些基本技術(shù),介紹一下最好參照本實(shí)施形態(tài)的哪個(gè)部分。
(a)亮度分量及色差分量的存儲(chǔ)方式的改進(jìn)為了縮短從SDRAM讀出的時(shí)間,將藍(lán)色差塊及紅色差塊存儲(chǔ)在一頁中,通過指定行地址、列地址、讀出長度的脈沖串讀出,而將全部藍(lán)色差分量及全部紅色差分量一次讀出。亮度分量及色差分量怎樣被存儲(chǔ)在多個(gè)存儲(chǔ)器陣列中呢,請(qǐng)參照(第1.1.1章 存儲(chǔ)器陣列51及存儲(chǔ)器陣列52的存儲(chǔ)方式)。
(b)分散存儲(chǔ)在多個(gè)存儲(chǔ)器陣列中的圖象的讀出在不得不從多個(gè)存儲(chǔ)器陣列中讀出參照?qǐng)D象的亮度分量及色差分量的情況下,必須個(gè)別地激活存儲(chǔ)器陣列。為了避免由于該激活而發(fā)生延遲,本圖象譯碼設(shè)備對(duì)各存儲(chǔ)器陣列確定讀出順序,以此為根據(jù),個(gè)別地從多個(gè)存儲(chǔ)器陣列讀出亮度分量及色差分量。這里所說的讀出順序是怎樣形成的順序呢,請(qǐng)參照第1.4.8章至第1.4.11章。
(c)通過改進(jìn)從SDRAM讀到緩沖器的讀出方式而導(dǎo)致的半貝爾內(nèi)插的高效化需要對(duì)亮度分量進(jìn)行橫向半貝爾內(nèi)插時(shí),不是將橫16象素×縱16象素讀到緩沖器中,而是將接近于其一半大小的橫17象素×縱8象素的亮度分量讀到緩沖器中。通過將橫17象素×縱8象素的亮度分量讀到緩沖器中,用與其下一行的亮度分量的平均值改寫各亮度分量。在對(duì)第十六行的亮度分量進(jìn)行半貝爾內(nèi)插期間,仍將第十七行的亮度分量留在緩沖器中,將接著的橫16象素×縱8象素讀到緩沖器中。如果這樣處理的話,就能用與留在緩沖器中的第十七行的亮度分量的平均值重新改寫讀到新的緩沖器中的橫16象素×縱8象素的亮度分量。在如上進(jìn)行的半貝爾內(nèi)插中,通過非常方便地利用留在緩沖器中的第十七行的亮度分量,能順利地進(jìn)行半貝爾內(nèi)插。
將讀出范圍確定為多大呢,請(qǐng)參照第1.3章。關(guān)于根據(jù)是否需要半貝爾內(nèi)插,怎樣擴(kuò)大讀出范圍的問題,請(qǐng)參照第1.3.2章。另外,關(guān)于怎樣利用剩下的一行的亮度分量進(jìn)行半貝爾內(nèi)插的問題,請(qǐng)參照第1.17章、第1.18章。
以下,參照
圖象譯碼設(shè)備的實(shí)施形態(tài)。
(第一實(shí)施形態(tài))(第一章)圖象譯碼裝置的總體像圖4A是表示本發(fā)明的第一實(shí)施形態(tài)的圖象譯碼設(shè)備的全體結(jié)構(gòu)的框圖。圖6A是表示將FIFO存儲(chǔ)器4、處理器5、代碼編碼器6、象素讀寫部8沿縱向配置,沿橫向按照時(shí)間序列的順序表示這些處理的時(shí)間圖。在說到圖象譯碼設(shè)備的全體結(jié)構(gòu)的情況下,引用以下的圖4A及圖6A。
圖象譯碼設(shè)備由流輸入部1、緩沖存儲(chǔ)器2、存儲(chǔ)器模塊3、FIFO存儲(chǔ)器4、處理器5、代碼編碼器6、象素運(yùn)算部7、象素讀寫部8、視頻輸出部9、緩沖器200和緩沖器201構(gòu)成。
流輸入部1將從外部串行輸入的MPEG數(shù)據(jù)流變換成并行數(shù)據(jù)(以下稱MPEG數(shù)據(jù)),通過處理器5的控制,將變換后的MPEG數(shù)據(jù)輸送給緩沖存儲(chǔ)器2。
緩沖存儲(chǔ)器2是暫時(shí)保存從流輸入部1輸送的MPEG數(shù)據(jù)的緩沖用存儲(chǔ)器。
存儲(chǔ)器模塊3由用多個(gè)SDRAM(Synchronous DynamicRandom Access Memory)芯片構(gòu)成的存儲(chǔ)過去顯示的圖象的SDRAM31、存儲(chǔ)將來應(yīng)顯示的圖象的SDRAM32、以及存儲(chǔ)通過補(bǔ)償獲得的圖象的SDRAM33構(gòu)成。SDRAM31~SDRAM33的內(nèi)部結(jié)構(gòu)都相同。
FIFO存儲(chǔ)器4在處理器5的控制下,以先進(jìn)先出方式存儲(chǔ)從流輸入部1輸送的壓縮動(dòng)態(tài)圖象數(shù)據(jù)。
處理器5控制FIFO存儲(chǔ)器4的壓縮動(dòng)態(tài)圖象數(shù)據(jù)的讀出,同時(shí)進(jìn)行對(duì)壓縮動(dòng)態(tài)圖象數(shù)據(jù)的一部分的譯碼處理。具有代表性的壓縮動(dòng)態(tài)圖象數(shù)據(jù)的一部分的譯碼處理中,有MPEG流中的標(biāo)題信息的分析、動(dòng)矢量的計(jì)算和壓縮圖象譯碼處理的控制。
代碼編碼器6對(duì)從FIFO存儲(chǔ)器4讀出的壓縮動(dòng)態(tài)圖象數(shù)據(jù)進(jìn)行可變長度譯碼(Variable Length Code Decoding以下簡稱VLD),獲得6個(gè)空間頻率分量數(shù)據(jù)、標(biāo)題信息、動(dòng)矢量。每個(gè)頻率分量數(shù)據(jù)相當(dāng)于8象素×8象素。如圖6A中的時(shí)刻t20所示,代碼編碼器6將譯碼后的數(shù)據(jù)中有關(guān)標(biāo)題信息及動(dòng)矢量的信息輸送給處理器5,在時(shí)刻t21、時(shí)刻t22、時(shí)刻t23、時(shí)刻t24、時(shí)刻t25、時(shí)刻t26分六次,通過緩沖器200將空間頻率分量輸送給象素運(yùn)算部7。這樣獲得的空間頻率分量是縱8象素×橫8象素。
緩沖器200保存由代碼編碼器6輸送的縱8象素×橫8象素大小的空間頻率分量。
象素運(yùn)算部7對(duì)通過緩沖器200從代碼編碼器6輸送的塊單位的頻率分量進(jìn)行反量化處理(以下簡稱IQ)及反離散余弦變換(以下簡稱IDCT)。如果對(duì)頻率分量進(jìn)行以上的處理,則塊單位的頻率分量被變換成dif_Y0塊、dif_Y1塊、dif_Y2塊、dif_Y3塊、dif_Cb塊、dif_Cr塊,通過緩沖器201輸送給象素讀寫部8。這里所說的Y0塊~Y3塊是指用橫8象素×縱8象素將橫16象素×縱16象素四等分后獲得的各塊。如圖13A所示,如果將由橫16象素×縱16象素構(gòu)成的亮度塊四等分,便獲得Y0塊、Y1塊、Y2塊、Y3塊。另外,“dif_”是差分的意思。
在圖6A所示的時(shí)間圖中的時(shí)刻t31,象素運(yùn)算部7對(duì)在時(shí)刻t21輸出給緩沖器200的頻率分量實(shí)施IQ及IDCT。這樣一來,該頻率分量被變換成Y0塊,并輸送給緩沖器201。
緩沖器201保存由象素運(yùn)算部7輸送的縱8象素×橫8象素。
象素讀寫部8以塊為單位對(duì)象素運(yùn)算部7的處理結(jié)果進(jìn)行動(dòng)態(tài)補(bǔ)償。即,根據(jù)動(dòng)矢量,對(duì)P圖象、B圖象從存儲(chǔ)器模塊3內(nèi)的譯過碼的參照幀截出矩形區(qū),通過使緩沖存儲(chǔ)器2中存儲(chǔ)的Y0塊、Y1塊、Y2塊、Y3塊、Cb塊、Cr塊合成,譯成原來的塊圖象。由象素讀寫部8進(jìn)行的處理結(jié)果被存入存儲(chǔ)器模塊3內(nèi)的任一個(gè)SDRAM中。另外在差分圖象為1幀面的情況下,因?yàn)椴恍枰c參照?qǐng)D象相加,所以將譯碼后的圖象存入存儲(chǔ)器模塊3中。視頻輸出部9根據(jù)被寫入SDRAM3中的圖象,輸出視頻信號(hào)。
(第1.1章存儲(chǔ)器模塊3中的SDRAM的結(jié)構(gòu))以SDRAM31為代表例,說明存儲(chǔ)器模塊3中的SDRAM。圖5中示出了SDRAM31的內(nèi)部結(jié)構(gòu)。
SDRAM31具有有512行×256列的區(qū)(將1行×256列的區(qū)稱為頁區(qū))、被變換成存儲(chǔ)單元地址=0(也稱為存儲(chǔ)單元0)的存儲(chǔ)器陣列51;被變換成存儲(chǔ)單元地址=1(也稱為存儲(chǔ)單元1)的存儲(chǔ)器陣列52;將輸出給地址引線A0~A9的地址作為行地址進(jìn)行譯碼后輸出給存儲(chǔ)器陣列51及存儲(chǔ)器陣列52的行地址譯碼器53及行地址譯碼器54;將輸出給地址引線A0~A9的地址作為列地址進(jìn)行譯碼后輸出給存儲(chǔ)器陣列51及存儲(chǔ)器陣列52的列地址譯碼器55及列地址譯碼器56;由于特定了行地址及列地址,故保存從存儲(chǔ)器陣列51及存儲(chǔ)器陣列52讀出的一頁長的數(shù)據(jù),并輸出給數(shù)據(jù)引線的頁數(shù)據(jù)緩沖器57及頁數(shù)據(jù)緩沖器58;以及存儲(chǔ)應(yīng)進(jìn)行脈沖串讀出的字長,指示頁數(shù)據(jù)緩沖器57及頁數(shù)據(jù)緩沖器58輸出該字長數(shù)據(jù)的字長寄存器59。另外在本實(shí)施形態(tài)中,SDRAM31的字長為1字節(jié),一象素部分的亮度分量、藍(lán)色差分量、紅色差分量的數(shù)據(jù)尺寸也是1字節(jié)。
(第1.1.1章 存儲(chǔ)器陣列51及存儲(chǔ)器陣列52的存儲(chǔ)方式)存儲(chǔ)器陣列51及存儲(chǔ)器陣列52的存儲(chǔ)內(nèi)容中行地址0000_0000以后的內(nèi)容示于圖7A,行地址1000_0000以后的內(nèi)容示于圖7B。
在圖7A中,左上頂點(diǎn)為(0,0)、右下頂點(diǎn)為(15,31)的矩形區(qū)(0,0)~(15,31)的亮度分量(在圖8A的一例中相當(dāng)于帶影線的范圍h1部分)被存儲(chǔ)在存儲(chǔ)單元0-行地址0000_0000的頁區(qū)中,左上頂點(diǎn)為(16,0)、右下頂點(diǎn)為(31,31)的矩形區(qū)(16,0)~(31,31)的亮度分量(在圖8A的一例中相當(dāng)于帶影線的范圍h2部分)被存儲(chǔ)在存儲(chǔ)單元1-行地址00000的頁區(qū)中。
在圖7B中,左上頂點(diǎn)為(0,0)、右下頂點(diǎn)為(7,31)的矩形區(qū)(0,0)~(7,31)的藍(lán)色差分量和左上頂點(diǎn)為(0,0)、右下頂點(diǎn)為(7,31)的矩形區(qū)(0,0)~(7,31)的紅色差分量(在圖8B的一例中相當(dāng)于帶影線的范圍h31部分)被存儲(chǔ)在存儲(chǔ)單元0-行地址1000_0000的頁區(qū)中,左上頂點(diǎn)為(8,0)、右下頂點(diǎn)為(15,31)的矩形區(qū)(8,0)~(15,31)的亮度分量(在圖8B的一例中相當(dāng)于帶影線的范圍h32部分)被存儲(chǔ)在存儲(chǔ)單元1-行地址1000_0000的頁區(qū)中。
(第1.1.2章 存儲(chǔ)器陣列51及存儲(chǔ)器陣列52內(nèi)的各頁的內(nèi)容)圖9及圖10中示出了存儲(chǔ)器陣列51及存儲(chǔ)器陣列52的各頁的內(nèi)容。
在圖9中,在存儲(chǔ)單元0-行地址0000的頁區(qū)內(nèi),圖象上的從坐標(biāo)(0,0)到坐標(biāo)(15,0)的亮度分量Y(0,0)~(15,0)被存儲(chǔ)在列地址=000000_0000~000000_1111中。
圖象上的從坐標(biāo)(0,1)到坐標(biāo)(15,1)的亮度分量Y(0,1)~(15,1)被存儲(chǔ)在列地址=000001_0000~000001_1111中。
另一方面,在圖10中,在存儲(chǔ)單元0-行地址1000_0000的頁區(qū)內(nèi)的列地址=00000_0000~00000_1111的偶數(shù)地址中,存儲(chǔ)著圖象上的位于坐標(biāo)(0,0)~(7,0)的藍(lán)色差分量,在列地址=00000_0000~00000_1111的奇數(shù)地址中,存儲(chǔ)著圖象上的位于坐標(biāo)(0,0)~(7,0)的紅色差分量。
詳細(xì)地說,坐標(biāo)為(0,0)的藍(lán)色差分量被存儲(chǔ)在偶數(shù)地址的列地址00000_0000中,坐標(biāo)為(0,0)的紅色差分量被存儲(chǔ)在奇數(shù)地址的列地址00000_0001中。坐標(biāo)為(1,0)的藍(lán)色差分量被存儲(chǔ)在其相鄰的偶數(shù)地址的列地址00000_0010中,坐標(biāo)為(1,0)的紅色差分量被存儲(chǔ)在奇數(shù)地址的列地址00000_0011中。
即,構(gòu)成Cb塊及Cr塊的各行的藍(lán)色差分量及紅色差分量被相鄰地存儲(chǔ)在一頁內(nèi)的偶數(shù)列地址、奇數(shù)列地址中。
由于這樣存儲(chǔ)藍(lán)色差分量和紅色差分量,所以如果從該開始區(qū)起始指定讀出長度,進(jìn)行脈沖串式地讀出存儲(chǔ)的內(nèi)容的所謂的脈沖串讀出,則能一次讀出象素塊中包括的藍(lán)色差分量和紅色差分量。通過這樣一次讀出藍(lán)色差分量和紅色差分量,在讀出參照?qǐng)D象時(shí),對(duì)一個(gè)象素塊來說,與亮度分量的讀出合起來共計(jì)通過兩次脈沖串讀出,就能讀出參照?qǐng)D象。
因此,能將脈沖串讀出的次數(shù)減少到與宏塊數(shù)的二倍成比例的數(shù),特別是在每1秒讀出30幀的參照?qǐng)D象反復(fù)近30次的情況下,能異常地減少總讀出時(shí)間。因此,不需要將工作時(shí)鐘脈沖設(shè)定得高來強(qiáng)制圖象譯碼設(shè)備高速工作,能導(dǎo)致抑制電力消耗的效果。
(第1.2章 象素讀寫部8的內(nèi)部結(jié)構(gòu))圖4B是表示象素讀寫部8的內(nèi)部結(jié)構(gòu)的框圖。
在該圖中,象素讀寫部8由以下部分構(gòu)成補(bǔ)償控制部10;存儲(chǔ)器存取部11;緩沖器A12;寫入地址生成部13;讀出地址生成部14;半貝爾內(nèi)插部15;緩沖器B16;寫入地址生成部17;讀出地址生成部18;半貝爾內(nèi)插部19;緩沖器C20;讀寫地址生成部22;緩沖器D25;讀出地址生成部26;混合部29;以及選擇部34。以下,參照?qǐng)D4B,說明象素讀寫部8的內(nèi)部結(jié)構(gòu)。
(第1.3章 補(bǔ)償控制部10的作用概要)補(bǔ)償控制部10根據(jù)處理器5輸出的動(dòng)矢量,確定從SDRAM31~SDRAM33中存儲(chǔ)的圖象的哪個(gè)坐標(biāo)截出哪個(gè)范圍作為參照?qǐng)D象。設(shè)用于截出的基準(zhǔn)坐標(biāo)為(X,Y),截出的范圍為橫m象素×縱n象素。如果補(bǔ)償控制部10指示應(yīng)截出的參照?qǐng)D象的左上頂點(diǎn)的坐標(biāo)(X,Y)、截出的范圍為橫m象素×縱n象素、以及差分圖象是P圖象還是B圖象的種類,那么補(bǔ)償控制部10便通過存儲(chǔ)器存取部11進(jìn)行的存儲(chǔ)器存取,從SDRAM31~SDRAM33中的任一個(gè)讀出參照?qǐng)D象。用什么樣的單位讀出參照?qǐng)D象的亮度分量、色差分量呢,在本實(shí)施形態(tài)中,分3次讀出參照?qǐng)D象。
這里,參照?qǐng)D象的亮度分量的左上頂點(diǎn)的X坐標(biāo)用10位表示,Y坐標(biāo)用9位表示。這是因?yàn)閄坐標(biāo)需要保存0~719中的某數(shù)值,Y坐標(biāo)需要保存0~479中的某數(shù)值。
參照?qǐng)D象的藍(lán)色差分量及紅色差分量的X坐標(biāo)用9位表示,Y坐標(biāo)用8位表示。這是因?yàn)閄坐標(biāo)需要保存0~359中的某數(shù)值,Y坐標(biāo)需要保存0~239中的某數(shù)值。
由補(bǔ)償控制部10進(jìn)行的第一次讀出是亮度塊的上半部分的讀出。即存儲(chǔ)器存取部11確定將構(gòu)成亮度塊的Y0塊、Y1塊、Y2塊、Y3塊中的Y0塊和Y1塊的組(以下稱Y01塊)作為讀出范圍的橫m象素×縱n象素。
第二次讀出是亮度塊的下半部分的讀出。即存儲(chǔ)器存取部11確定將構(gòu)成亮度塊的Y0塊、Y1塊、Y2塊、Y3塊中的Y2塊和Y3塊的組(以下稱Y23塊)作為讀出范圍的橫m象素×縱n象素。
第三次讀出是Cb塊及Cr塊的讀出。即存儲(chǔ)器存取部11確定將Cb塊及Cr塊的組(以下稱CbCr塊)作為讀出范圍的橫m象素×縱n象素。
之所以將亮度塊的讀出分為Y01塊、Y23塊這樣兩次,是因?yàn)閷?行部分的亮度分量、1列部分的亮度分量額外地讀到規(guī)模為橫16象素×縱16象素的緩沖器中。即,在緩沖器的規(guī)模為橫16象素×縱16象素的情況下,如果一次讀出橫16象素×縱16象素的亮度分量,那么緩沖器就會(huì)失去額外存儲(chǔ)亮度分量的余裕,但如果將橫16象素×縱16象素的亮度分量分兩次讀出,則在規(guī)模為橫16象素×縱16象素的緩沖器中就會(huì)產(chǎn)生額外存儲(chǔ)亮度分量的余裕。
說明在亮度分量按半幀單位進(jìn)行編碼,并由象素運(yùn)算部7對(duì)每個(gè)Y02塊及Y13塊的奇數(shù)行、偶數(shù)行進(jìn)行了IDCT的情況下,動(dòng)態(tài)補(bǔ)償部10怎樣讀出亮度分量。
由補(bǔ)償控制部10進(jìn)行的第一次讀出是亮度塊的左半部分的讀出。即存儲(chǔ)器存取部11確定將構(gòu)成亮度塊的Y0塊、Y1塊、Y2塊、Y3塊中的Y0塊和Y2塊的組(以下稱Y02塊)作為讀出范圍的橫m象素×縱n象素。
第二次讀出是亮度塊的右半部分的讀出。即存儲(chǔ)器存取部11確定將構(gòu)成亮度塊的Y0塊、Y1塊、Y2塊、Y3塊中的Y1塊和Y3塊的組(以下稱Y13塊)作為讀出范圍的橫m象素×縱n象素。
之所以按Y02塊、Y13塊的圖形讀出參照?qǐng)D象,是因?yàn)橛上笏剡\(yùn)算部7進(jìn)行的IDCT的結(jié)果能用Y02塊、Y13塊的圖形獲得。
第三次讀出是Cb塊及Cr塊的讀出。即存儲(chǔ)器存取部11確定將Cb塊及Cr塊的組(以下稱CbCr塊)作為讀出范圍的橫m象素×縱n象素。
(第1.3.1章 全體圖象譯碼設(shè)備中的補(bǔ)償控制部10的位置分配)在圖6A所示的時(shí)間圖中,在時(shí)刻t12,處理器5進(jìn)行標(biāo)題分析時(shí)分析動(dòng)矢量,如果輸出的差分圖象是P圖象,應(yīng)將它與過去方向的參照?qǐng)D象相加,從存儲(chǔ)器模塊3中的SDRAM31讀出過去方向的ref_Y01_b(r)塊(“ref”是參照?qǐng)D象的reference(參照)的意思。b(r)的“b”是“backward(向后)”的意思,“r”是“read(讀)”的意思。)、ref_Y23_b(r)塊、ref_CbCr_b(r)塊。
如果輸出的差分圖象是B圖象,則除了將它與過去方向的參照?qǐng)D象混合外,還應(yīng)與將來的兩個(gè)方向的參照?qǐng)D象相加,從存儲(chǔ)器模塊3中的SDRAM32讀出將來方向的Y01_f(r)塊(f(r)的“f”是“forward(向前)”的意思。)、Y23_f(r)塊、CbCr_f(r)塊。
(第1.3.2章 由補(bǔ)償控制部10進(jìn)行的讀出范圍的確定)由補(bǔ)償控制部10進(jìn)行的讀出范圍的確定是由實(shí)現(xiàn)圖12A及圖12B中的流程的順序的序列發(fā)生器或機(jī)械程序來實(shí)現(xiàn)的。
參照這些流程圖,更詳細(xì)地說明存儲(chǔ)器存取部11的處理內(nèi)容。在步驟S0中,存儲(chǔ)器存取部11將Width_Flag及Height_Flag設(shè)定為『0』。設(shè)定后,在步驟S1中,補(bǔ)償控制部10參照動(dòng)矢量,判斷是否需要進(jìn)行縱向的半貝爾內(nèi)插。如果需要的話,在步驟S2中,將Height_Flag設(shè)定為『1』。接著在步驟S3中,判斷是否需要進(jìn)行橫向的半貝爾內(nèi)插。如果需要的話,在步驟S4中,將Width_Flag設(shè)定為『1』。
設(shè)定后,在步驟S5中,判斷參照?qǐng)D象是否是亮度塊,如果是的話,在步驟S6中判斷差分圖象是按幀編碼的還是按半幀單位編碼的。
如果是按幀單位編碼的,則在步驟S7中,將橫m象素×縱n象素中的象素?cái)?shù)確定為象素?cái)?shù)(m,n)=(2*8+1*Width_Flag,8+1*Height_Flag)。
這時(shí)如果Height_Flag、Width_Flag都為『0』,則確定為象素?cái)?shù)(m,n)=(2*8+1*0,8+1*0)=(16,8)。該(16,8)的大小恰好為圖13A所示的將(0,0)(15,0)(0,7)(15,7)作為四個(gè)頂點(diǎn)的Y01塊的大小。
如果Height_Flag為『0』,Width_Flag為『1』,則確定為象素?cái)?shù)(m,n)=(2*8+1*1,8+1*0)=(2*8+1,8+0)=(17,8)。該(17,8)的大小恰好為圖13B所示的將(0,0)(16,0)(0,7)(16,7)作為四個(gè)頂點(diǎn)的Y01塊的大小。圖13B中的Y01塊與圖13A中的Y01塊相比較,只多出帶影線的1列。即,需要半貝爾內(nèi)插,在Width_Flag被設(shè)定為『1』的情況下,可知讀出范圍被確定為多1列。
之所以確定這樣多1列,是因?yàn)樵谶M(jìn)行橫向的半貝爾內(nèi)插的情況下,需要用該列及其下一列的平均值生成各列的亮度分量。
如果Height_Flag為『1』,Width_Flag為『0』,則確定為象素?cái)?shù)(m,n)=(2*8+1*0,8+1*0)=(2*8+0,8+1)=(16,9)。該(16,9)的大小恰好為圖13C所示的將(0,0)(15,0)(0,8)(15,8)作為四個(gè)頂點(diǎn)的Y01塊的大小。圖13C中的Y01塊與圖13A中的Y01塊相比較,只多出帶影線的1行。即,需要半貝爾內(nèi)插,在Height_Flag被設(shè)定為『1』的情況下,可知讀出范圍被確定為多1行。
如果Height_Flag為『1』,Width_Flag為『1』,則確定為象素?cái)?shù)(m,n)=(2*8+1*1,8+1*1)=(2*8+1,8+1)=(17,9)。該(17,9)的大小恰好為圖13D所示的將(0,0)(16,0)(0,8)(16,8)作為四個(gè)頂點(diǎn)的Y01塊的大小。圖13D中的Y01塊與圖13A中的Y01塊相比較,多出帶影線的1行及1列。即,需要半貝爾內(nèi)插,在Height_Flag及Width_Flag被設(shè)定為『1』的情況下,可知讀出范圍被確定為多1行及1列。
如果這樣確定參照?qǐng)D象左上頂點(diǎn)所在處的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n),則在步驟S8中,使欲讀出由參照?qǐng)D象左上頂點(diǎn)所在處的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n)構(gòu)成的參照?qǐng)D象的存儲(chǔ)器存取部11進(jìn)行讀出處理。在步驟S9中,將(縱向幅度n+1)加在參照?qǐng)D象位置的Y坐標(biāo)上。如果這樣相加,則參照?qǐng)D象左上頂點(diǎn)所在處的坐標(biāo)(X,Y)為圖13A中的Y23塊的左上坐標(biāo)。接著將應(yīng)在第二次讀出的讀出范圍的縱橫象素?cái)?shù)(m,n)確定為(2*8+1*Width_Flag,8)。
這時(shí)如果Height_Flag,Width_Flag都為『0』,則確定為象素?cái)?shù)(m,n)=(2*8+1*0,8)=(16,8)。該(16,8)的大小恰好為圖13A所示的將(0,8)(15,8)(0,15)(15,15)作為四個(gè)頂點(diǎn)的Y23塊的大小。
如果Height_Flag為『0』,Width_Flag為『1』,則確定為象素?cái)?shù)(m,n)=(2*8+1*1,8)=(2*8+1,8)=(17,8)。該(17,8)的大小恰好為圖13B所示的將(0,8)(16,8)(0,15)(16,15)作為四個(gè)頂點(diǎn)的Y23塊的大小。圖13B中的Y23塊與圖13A中的Y23塊相比較,只多出帶影線的1列。即,需要半貝爾內(nèi)插,在Width_Flag被設(shè)定為『0』的情況下,可知讀出范圍被確定為多1列。
如果Height_Flag為『1』,Width_Flag為『0』,則確定為象素?cái)?shù)(m,n)=(2*8+1*0,8)=(2*8+0,8)=(16,8)。該(16,8)的大小恰好為圖13C所示的將(0,9)(15,9)(0,16)(15,16)作為四個(gè)頂點(diǎn)的Y23塊的大小。
如果Height_Flag為『1』,Width_Flag為『1』,則確定為象素?cái)?shù)(m,n)=(2*8+1*1,8)=(2*8+1,8)=(17,8)。該(17,8)的大小恰好為圖13D所示的將(0,9)(16,9)(0,16)(16,16)作為四個(gè)頂點(diǎn)的Y23塊的大小。
如果這樣確定參照?qǐng)D象左上頂點(diǎn)所在處的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n),則在步驟S8中,使欲讀出由參照?qǐng)D象左上頂點(diǎn)所在處的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n)構(gòu)成的參照?qǐng)D象的存儲(chǔ)器存取部11進(jìn)行讀出處理。
其次,用圖12B說明差分圖象按半幀編碼的情況。
首先在步驟S12中,將橫m象素×縱n象素中的象素?cái)?shù)(m,n)確定為(8+1*Width_Flag,8*2+1*Height_Flag)。
這時(shí)如果Height_Flag,Width_Flag都為『0』,則確定為象素?cái)?shù)(m,n)=(8+1*0,8*2+1*0)=(8,16)。該(8,16)的大小恰好為圖14A所示的將(0,0)(7,0)(0,15)(7,15)作為四個(gè)頂點(diǎn)的Y02塊的大小。
如果Height_Flag為『0』,Width_Flag為『1』,則確定為象素?cái)?shù)(m,n)=(8+1*1,8*2+1*0)=(9,16)。該(9,16)的大小恰好為圖14B所示的將(0,0)(8,0)(0,15)(8,15)作為四個(gè)頂點(diǎn)的Y02塊的大小。圖14B中的Y02塊與圖14A中的Y02塊相比較,只多出帶影線的1列。即,需要半貝爾內(nèi)插,在Width_Flag被設(shè)定為『1』的情況下,可知讀出范圍被確定為多1列。
之所以確定這樣多1列,是因?yàn)樵谶M(jìn)行橫向的半貝爾內(nèi)插的情況下,需要用該列及其下一列的平均值生成各列的亮度分量。
如果Height_Flag為『1』,Width_Flag為『0』,則確定為象素?cái)?shù)(m,n)=(8+1*0,8*2+1*1)=(8,17)。該(8,17)的大小恰好為圖14C所示的將(0,0)(7,0)(0,16)(7,16)作為四個(gè)頂點(diǎn)的Y02塊的大小。圖14C中的Y02塊與圖14A中的Y02塊相比較,只多出帶影線的1行。即,需要縱向的半貝爾內(nèi)插,在Height_Flag被設(shè)定為『1』的情況下,可知讀出范圍被確定為多1行。
如果Height_Flag為『1』,Width_Flag為『1』,則確定為象素?cái)?shù)(m,n)=(8+1*1,8*2+1*1)=(9,17)。該(9,17)的大小恰好為圖14D所示的將(0,0)(8,0)(0,16)(8,16)作為四個(gè)頂點(diǎn)的Y02塊的大小。圖14D中的Y02塊與圖14A中的Y02塊相比較,只多出帶影線的1行及1列。即,需要對(duì)縱向及橫向進(jìn)行半貝爾內(nèi)插,在Width_Flag被設(shè)定為『1』的情況下,可知讀出范圍被確定為多1行及1列。
如果這樣確定參照?qǐng)D象左上頂點(diǎn)所在處的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n),則在步驟S13中,使欲讀出由參照?qǐng)D象左上頂點(diǎn)所在處的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n)構(gòu)成的參照?qǐng)D象的存儲(chǔ)器存取部11進(jìn)行讀出處理。
在步驟S14中,通過將橫向幅度m和『1』加在圖象左上頂點(diǎn)位置的X坐標(biāo)上,更新圖象位置的X坐標(biāo)。更新后,在步驟S15中,確定橫m象素×縱n象素中的象素?cái)?shù)(m,n)=(8+1*Width_Flag,8*2+1*Heigth_Flag)。
這時(shí)如果Height_Flag,Width_Flag都為『0』,則確定為象素?cái)?shù)(m,n)=(8,8*2+1*0)=(8,16)。該(8,16)的大小恰好為圖14A所示的將(8,0)(15,0)(8,15)(15,15)作為四個(gè)頂點(diǎn)的Y13塊的大小。
如果Height_Flag為『0』,Width_Flag為『1』,則確定為象素?cái)?shù)(m,n)=(8,8*2)=(9,16)。該(9,16)的大小恰好為圖14B所示的將(9,0)(16,0)(9,16)(16,16)作為四個(gè)頂點(diǎn)的Y13塊的大小。
如果Height_Flag為『1』,Width_Flag為『0』,則確定為象素?cái)?shù)(m,n)=(8,8*2+1*1)=(8,17)。該(8,17)的大小恰好為圖14C所示的將(8,0)(15,0)(8,16)(15,16)作為四個(gè)頂點(diǎn)的Y13塊的大小。
如果Height_Flag為『1』,Width_Flag為『1』,則確定為象素?cái)?shù)(m,n)=(8,8*2+1*1)=(8,17)。該(8,17)的大小恰好為圖14D所示的將(9,0)(16,0)(9,16)(16,16)作為四個(gè)頂點(diǎn)的Y13塊的大小。圖14D中的Y13塊與圖14A中的Y13塊相比較,只多出1行。即,需要半貝爾內(nèi)插,在Width_Flag被設(shè)定為『1』的情況下,可知讀出范圍被確定為多1行。
如果這樣確定參照?qǐng)D象左上頂點(diǎn)所在處的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n),則在步驟S16中,使欲讀出由參照?qǐng)D象左上頂點(diǎn)所在處的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n)構(gòu)成的參照?qǐng)D象的存儲(chǔ)器存取部11進(jìn)行讀出處理。
在色差分量的情況下,在步驟S17中,確定橫m象素×縱n象素中的象素?cái)?shù)(m,n)=(2*8+1*Width_Flag,8+1*Height_Flag)。
這時(shí)如果Height_Flag,Width_Flag都為『0』,則確定CbCr塊的象素?cái)?shù)(m,n)=(2*8+1*0,8+1*0)=(16,8)。
如果Height_Flag為『0』,Width_Flag為『1』,則確定CbCr塊的象素?cái)?shù)(m,n)=(2*8+1*1,8+1*0)=(2*8+1,8+0)=(17,8)。
如果Height_Flag為『1』,Width_Flag為『0』,則確定CbCr塊的象素?cái)?shù)(m,n)=(2*8+1*0,8+1*1)=(2*8+0,8+1)=(16,9)。
如果Height_Flag為『1』,Width_Flag為『1』,則確定CbCr塊的象素?cái)?shù)(m,n)=(2*8+1*1,8+1*1)=(2*8+1,8+1)=(17,9)。
如果這樣確定參照?qǐng)D象左上頂點(diǎn)所在處的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n),則在步驟S18中,使欲讀出由參照?qǐng)D象左上頂點(diǎn)所在處的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n)構(gòu)成的參照?qǐng)D象的存儲(chǔ)器存取部11進(jìn)行讀出處理。
(第1.4章 象素讀寫部8的其它結(jié)構(gòu)要素的概述)這里簡略地提及一下象素讀寫部8的其它結(jié)構(gòu)要素中的主要部分(存儲(chǔ)器存取部11、緩沖器A12、緩沖器B16、緩沖器C20、緩沖器D25)。
如果補(bǔ)償控制部10確定了左上頂點(diǎn)坐標(biāo)、縱向幅度、橫向幅度,則存儲(chǔ)器存取部11便將位于由所確定了的左上頂點(diǎn)坐標(biāo)決定的縱向幅度及橫向幅度的范圍讀到緩沖器A12中。
這時(shí)如果補(bǔ)償控制部10確定了Y01塊的左上頂點(diǎn)坐標(biāo)、縱向幅度、橫向幅度,則存儲(chǔ)器存取部11便將位于該坐標(biāo)的Y01塊讀到緩沖器A12中。對(duì)所讀出的Y01塊進(jìn)行半貝爾內(nèi)插后,如果補(bǔ)償控制部10確定了Y23塊的左上頂點(diǎn)坐標(biāo)、縱向幅度、橫向幅度,便將位于該坐標(biāo)的Y23塊讀到緩沖器A12中。對(duì)所讀出的Y23塊進(jìn)行半貝爾內(nèi)插后,如果補(bǔ)償控制部10確定了CbCr塊的左上頂點(diǎn)坐標(biāo)、縱向幅度、橫向幅度,便將位于該坐標(biāo)的CbCr塊讀到緩沖器A12中。補(bǔ)償控制部10在按照Y02塊、Y13塊、CbCr塊的順序讀出參照?qǐng)D象時(shí)也一樣。
存儲(chǔ)器存取控制部11有為了進(jìn)行存儲(chǔ)器存取,而進(jìn)行變換成存儲(chǔ)著亮度分量的地址的行地址、列地址、存儲(chǔ)單元地址的亮度地址編碼器61;以及如果輸出了補(bǔ)償控制部10輸出的應(yīng)讀出的象素的坐標(biāo)(X,Y),便將該坐標(biāo)變換成存儲(chǔ)著藍(lán)色差分量及紅色差分量的地址的行地址、列地址、存儲(chǔ)單元地址的色差地址編碼器62,根據(jù)補(bǔ)償控制部10算出的讀出范圍,對(duì)SDRAM31、SDRAM32、SDRAM33進(jìn)行存取。
如果差分是B圖象,且由存儲(chǔ)器存取部11讀出構(gòu)成將來方向的Y01塊、Y23塊、CbCr塊的亮度分量及色差分量后,緩沖器A12便將它們保存起來。如果差分是P圖象,且由存儲(chǔ)器存取部11讀出構(gòu)成將來方向的Y01塊、Y23塊、CbCr塊的亮度分量及色差分量后,同樣進(jìn)行保存。被保存的亮度分量及色差分量成為半貝爾內(nèi)插部15進(jìn)行半貝爾內(nèi)插的對(duì)象。
如果差分是B圖象,且由存儲(chǔ)器存取部11讀出給過去方向的每個(gè)Y01塊、Y23塊、CbCr塊、Y02塊、Y13塊時(shí),緩沖器B16便將它們保存起來。被保存的亮度分量及色差分量成為半貝爾內(nèi)插部15進(jìn)行半貝爾內(nèi)插的對(duì)象。混合部29對(duì)由半貝爾內(nèi)插部15進(jìn)行的半貝爾內(nèi)插結(jié)果和橫16象素×縱16象素的差分進(jìn)行混合后,緩沖器B16保存該混合的結(jié)果,并輸出給欲寫入SDRAM3內(nèi)的SDRAM中的存儲(chǔ)器存取部11。
通過半貝爾內(nèi)插部15進(jìn)行半貝爾內(nèi)插,輸出橫16象素×縱8象素、橫8象素×縱16象素的半貝爾內(nèi)插結(jié)果后,緩沖器C20將它保存起來。然后,如果應(yīng)與它混合的差分被輸出給緩沖器D25,便將用來與該差分混合而一直保存著的半貝爾內(nèi)插結(jié)果輸出給象素混合部29。
緩沖器D25存儲(chǔ)通過緩沖器201從象素運(yùn)算部7輸送來的差分Y0塊、Y1塊、Y2塊、Y3塊、Cb塊、Cr塊,半貝爾內(nèi)插部15對(duì)緩沖器A12及緩沖器B16中存儲(chǔ)的Y01塊、Y23塊、CbCr塊進(jìn)行半貝爾內(nèi)插后,將一直存儲(chǔ)著的構(gòu)成差分圖象的橫8象素×縱8象素的亮度分量及色差分量輸出給象素混合部29。
(第1.4.1章 存儲(chǔ)器存取部11內(nèi)的亮度地址編碼器61的結(jié)構(gòu))參照?qǐng)D11A及圖11B,說明亮度地址編碼器61及色差地址編碼器62的結(jié)構(gòu)。
亮度地址編碼器61通過在圖11A中排列9位長的Y坐標(biāo)中的低位的5位和10位長的X坐標(biāo)中的低位的4位,生成列地址。
之所以這樣生成列地址,是因?yàn)閄坐標(biāo)的低位的4位表示在亮度塊內(nèi)從左開始存在于第幾列,Y坐標(biāo)的低位的5位表示在亮度塊內(nèi)從上開始存在于第幾行。
另外亮度地址編碼器61有使保存Y坐標(biāo)的9位中高位的4位的值變?yōu)?5倍的乘法器63;對(duì)乘法器63的乘得結(jié)果、存儲(chǔ)該畫面上的左上部分的象素的頁的行地址、以及X坐標(biāo)的高位的6位進(jìn)行加法運(yùn)算的加法器64,將12位長的相加結(jié)果的高位的11位作為行地址輸出。另一方面,將最低位的1位作為切換存儲(chǔ)單元0和存儲(chǔ)單元1用的存儲(chǔ)單元地址輸出。乘法器63之所以將Y坐標(biāo)的高位的4位的值變?yōu)?5倍,是因?yàn)樵趶哪硞€(gè)亮度塊到位于其正下方的亮度塊之間存在45個(gè)亮度塊。
(第1.4.2章 存儲(chǔ)器存取部11內(nèi)的色差地址編碼器62的結(jié)構(gòu))色差地址編碼器62根據(jù)在圖11B中是藍(lán)色差分量還是紅色差分量的種類,確定最低的位,用X坐標(biāo)的低位的3位,生成列地址的第一位至第三位。
備有加法器65,用于對(duì)構(gòu)成Y坐標(biāo)的8位中低位的5位和頁的入口列地址進(jìn)行加法運(yùn)算,根據(jù)加法器65的運(yùn)算結(jié)果,生成列地址高位的5位。
之所以這樣生成列地址,是因?yàn)閄坐標(biāo)的低位的3位表示在色差塊內(nèi)從左開始存在于第幾位,Y坐標(biāo)的低位的5位表示在色差塊內(nèi)從上開始存在于第幾行。有使保存Y坐標(biāo)的8位中高位的3位的值變?yōu)?5倍的乘法器66;對(duì)乘法器66的乘得結(jié)果、存儲(chǔ)該畫面上的左上部分的色差塊的頁的行地址、X坐標(biāo)的高位的6位、以及加法器65進(jìn)行加法運(yùn)算時(shí)發(fā)生的進(jìn)位進(jìn)行加法運(yùn)算的加法器67,將加法器67的相加結(jié)果的最低的1位作為切換存儲(chǔ)單元0和存儲(chǔ)單元1用的存儲(chǔ)單元地址輸出,同時(shí)將該相加結(jié)果的最低的1位除去后的11位作為行地址輸出。
(第1.4.3章 由存儲(chǔ)器存取部11進(jìn)行多頁存取的可能性)如果補(bǔ)償控制部10確定了Y01塊左上頂點(diǎn)所在位置的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n),便對(duì)欲讀出由左上頂點(diǎn)所在位置的坐標(biāo)(X,Y)及象素?cái)?shù)(m,n)構(gòu)成的Y01塊的SDRAM31進(jìn)行存取。
這里必須注意的是,Y01塊的左上頂點(diǎn)、左下頂點(diǎn)、右上頂點(diǎn)、右下頂點(diǎn)是圖象上的哪個(gè)坐標(biāo)位置。即,如果在圖8中Y01塊的四個(gè)頂點(diǎn)正好被收容在由帶影線的橫16象素×縱32象素構(gòu)成的區(qū)域的哪個(gè)區(qū)中,就只對(duì)存儲(chǔ)著該區(qū)的頁進(jìn)行存取即可,但當(dāng)Y01塊的四個(gè)頂點(diǎn)中的兩個(gè)以上的頂點(diǎn)重疊在兩個(gè)以上的區(qū)時(shí),就必須從所重疊的多個(gè)區(qū)個(gè)別地讀出重疊部分。圖15A表示Y01塊的左上頂點(diǎn)、左下頂點(diǎn)、右上頂點(diǎn)、右下頂點(diǎn)與存儲(chǔ)在不同頁中的4個(gè)橫16象素×縱32象素重疊之一例。在圖15A的中心,正交的兩條線是橫16象素×縱32象素的象素組的邊界。由于橫16象素×縱32象素被存儲(chǔ)在各頁,所以該邊界稱頁的邊界(頁邊界)。
對(duì)于該兩條頁邊界來說,存儲(chǔ)著左上方的橫16象素×縱32象素的頁稱為左上頁P(yáng)00,存儲(chǔ)著左下方的橫16象素×縱32象素的頁稱為左下頁P(yáng)10,存儲(chǔ)著右上方的橫16象素×縱32象素的頁稱為右上頁P(yáng)01,存儲(chǔ)著右下方的橫16象素×縱32象素的頁稱為右下頁P(yáng)11。可知帶影線的Y01塊與兩條頁邊界相交,有與左上頁P(yáng)00、右上頁P(yáng)01、左下頁P(yáng)10、右下頁P(yáng)11重疊部分。
在Y01塊這樣與兩個(gè)以上的頁相交的情況下,存儲(chǔ)器存取部11為了個(gè)別地讀出Y01塊,算出對(duì)哪個(gè)存儲(chǔ)單元的哪個(gè)行地址的頁進(jìn)行存取即可,且通過脈沖串讀出,算出從該頁內(nèi)的哪個(gè)列地址讀出哪個(gè)亮度分量即可。
(第1.4.4章 由存儲(chǔ)器存取部11進(jìn)行的SDRAM存取的詳細(xì)情況)存儲(chǔ)器存取部11內(nèi)部裝有實(shí)現(xiàn)圖16~圖18中的流程用的序列發(fā)生器或機(jī)械程序。參照?qǐng)D16~圖18中的流程,說明存儲(chǔ)器存取部11進(jìn)行的處理。參照?qǐng)D象的讀出分Y01塊、Y23塊、CbCr塊三次,或分Y02塊、Y13塊、CbCr塊三次進(jìn)行,所以本應(yīng)對(duì)該每個(gè)三次存儲(chǔ)器存取進(jìn)行說明,但這樣做就會(huì)使說明量倍增,因此以下的詳細(xì)說明將集中在怎樣讀出Y01塊這一點(diǎn)進(jìn)行。
在步驟S51中,如果補(bǔ)償控制部10算出由動(dòng)矢量指示的Y01塊的左上頂點(diǎn)(X,Y),則存儲(chǔ)器存取部11便算出存儲(chǔ)在左上頁P(yáng)00中的橫16象素×縱32象素內(nèi)的Y01塊左上頂點(diǎn)的相對(duì)坐標(biāo)(A,B)。
如下計(jì)算相對(duì)坐標(biāo)(A,B)。
A=X mod 16 …(1)B=Y(jié) mod 32 …(2)※所謂mod是剩余的意思。
如果算出相對(duì)坐標(biāo),在步驟S52中,便在亮度地址編碼器61中算出從P00、P01、P10、P11讀出重疊部分用的行地址、列地址、存儲(chǔ)單元地址。這里假設(shè)從左上頁P(yáng)00讀出重疊部分用的開始坐標(biāo)為(X,Y),在亮度地址編碼器61中將它變換成行地址及列地址。
(第1.4.5.1章 對(duì)左上頁P(yáng)00的讀出處地址、讀出長度、位移的設(shè)定)圖15B是表示怎樣從左上頁P(yáng)00、右上頁P(yáng)01、左下頁P(yáng)10、右下頁P(yáng)11讀出Y01塊的示意圖。本圖中的4個(gè)黑點(diǎn)『Read Start』表示各頁的讀出開始坐標(biāo),箭頭(1)(2)(3)(4)(5)表示怎樣讀出亮度分量及色差分量的經(jīng)過。
亮度地址編碼器61將在左上頁P(yáng)00內(nèi)的Y01塊的左上頂點(diǎn)所在位置的X坐標(biāo)的低位的4位編碼成列地址的低位的4位碼,將Y坐標(biāo)的低位的5位編碼成列地址的高位的5位碼,生成列地址。將X坐標(biāo)的高位的6位和乘法器63的乘得結(jié)果相加,生成存儲(chǔ)單元地址和行地址。
其次,雖然從左上頁P(yáng)00讀出的長度為s00,但在圖15A中為了從左上頁P(yáng)00讀出Y01塊的重疊部分,通過脈沖串讀出,就可以對(duì)從Y01塊左上頂點(diǎn)的相對(duì)坐標(biāo)(A,B)到(15,B)的15-A象素進(jìn)行讀出。
為了從左上頁P(yáng)00讀出Y01塊的重疊部分,根據(jù)其讀出長度15-A象素,只讀出15-A地址,讀出后需要將讀出處移到下一行。
即,如箭頭(1)所示,如果讀出從Y01塊左上頂點(diǎn)的相對(duì)坐標(biāo)(A,B)到相對(duì)坐標(biāo)(15,B)的15-A象素,那么就有必要接著如箭頭(2)所示,讀出從相對(duì)坐標(biāo)(A,B+1)到相對(duì)坐標(biāo)(15,B+1)的15-A象素,再接著如箭頭(3)所示,讀出從相對(duì)坐標(biāo)(A,B+2)到相對(duì)坐標(biāo)(15,B+2)的15-A象素。
如果參照?qǐng)D11A就能知道,由于Y坐標(biāo)的低位的5位被編成列地址的高位的5位碼,所以在讀出處的地址坐標(biāo)的Y坐標(biāo)增加1個(gè)的情況下,列地址便各增加15位。
將該讀出處作為移到下一行用的位移,對(duì)左上頁P(yáng)00設(shè)定讀出位移為『+15』。
(第1.4.5.2章 對(duì)右上頁P(yáng)01的讀出處地址、讀出長度、位移的設(shè)定)這里將從右上頁P(yáng)01讀出重疊部分用的開始坐標(biāo)設(shè)為圖15B所示的(X+15-A,Y),在亮度地址編碼器61中將它變換為行地址及列地址。
將坐標(biāo)“X+15-A”的低位的4位編成列地址的低位的4位碼,將坐標(biāo)“Y”的低位的5位編成列地址的高位的5位碼,生成列地址。將X坐標(biāo)的高位的6位和乘法器63的乘得結(jié)果相加,生成存儲(chǔ)單元地址和行地址。
其次,雖然從右上頁P(yáng)01讀出的長度為s01,但在圖15B中為了從右上頁P(yáng)01讀出Y01塊的重疊部分,通過脈沖串讀出,就可以對(duì)從Y01塊左上頂點(diǎn)的相對(duì)坐標(biāo)(0,B)到(A+m-15,B)的A+m-15象素進(jìn)行讀出。
為了從右上頁P(yáng)01讀出Y01塊的重疊部分,根據(jù)其讀出長度(A+m-15)象素,只讀出(A+m-15)地址,讀出后需要將讀出處移到下一行。
即,如箭頭(1)所示,如果讀出從Y01塊左上頂點(diǎn)的相對(duì)坐標(biāo)(0,B)到相對(duì)坐標(biāo)(A+m-15,B)的A+m-15象素,那么就有必要接著如箭頭(2)所示,讀出從相對(duì)坐標(biāo)(0,B+1)到相對(duì)坐標(biāo)(A+m-15,B+1)的A+m-15象素,再接著如箭頭(3)所示,讀出從相對(duì)坐標(biāo)(0,B+2)到(A+m-15,B+2)的A+m-15象素。
如果參照?qǐng)D11A就能知道,由于Y坐標(biāo)的低位的5位被編成列地址的高位的5位碼,所以在讀出處的地址坐標(biāo)的Y坐標(biāo)增加1個(gè)的情況下,列地址便各增加15位。
將該讀出處作為移到下一行用的位移,對(duì)右上頁P(yáng)01設(shè)定讀出位移為『+15』。
(第1.4.5.3章 對(duì)左下頁P(yáng)10的讀出處地址、讀出長度、位移的設(shè)定)這里將從左下頁P(yáng)10讀出重疊部分用的開始坐標(biāo)設(shè)為(X,Y+n),在亮度地址編碼器61中將它變換為行地址及列地址。
將坐標(biāo)“X”的低位的4位編成列地址的低位的4位碼,將坐標(biāo)“Y+n”的低位的5位編成列地址的高位的5位碼,生成列地址。將坐標(biāo)X的高位的6位和乘法器63的乘得結(jié)果相加,生成存儲(chǔ)單元地址和行地址。
其次,雖然從左下頁P(yáng)10讀出的長度為s10,但在圖15B中為了從左下頁P(yáng)10讀出Y01塊的重疊部分,通過脈沖串讀出,就可以對(duì)從Y01塊左上頂點(diǎn)的相對(duì)坐標(biāo)(A,B+n-31)到(15,B+n-31)的15-A象素進(jìn)行讀出。
為了從左下頁P(yáng)10讀出Y01塊的重疊部分,根據(jù)其讀出長度15-A象素,只讀出15-A地址,讀出后需要將讀出處移到上一行。
即,如箭頭(1)所示,如果讀出從Y01塊左上頂點(diǎn)的相對(duì)坐標(biāo)(A,B+n-31)到相對(duì)坐標(biāo)(15,B+n-31)的15-A象素,那么就有必要接著如箭頭(2)所示,讀出從相對(duì)坐標(biāo)(A,B+n-30)到相對(duì)坐標(biāo)(15,B+n-30)的15-A象素,再接著如箭頭(3)所示,讀出從相對(duì)坐標(biāo)(A,B+n-29)到(15,B+n-29)的15-A象素。
如果參照?qǐng)D11A就能知道,由于Y坐標(biāo)的低位的5位被編成列地址的高位的5位碼,所以在讀出處的地址坐標(biāo)的Y坐標(biāo)減少1個(gè)的情況下,列地址便各減少15位。
將該讀出處作為移到下一行用的位移,對(duì)左下頁P(yáng)10設(shè)定讀出位移為『-15』。
(第1.4.5.4章 對(duì)右下頁P(yáng)11的讀出處地址、讀出長度、位移的設(shè)定)這里將從右下頁P(yáng)11讀出重疊部分用的開始坐標(biāo)設(shè)為(X+15-A,Y+n),在亮度地址編碼器61中將它變換為行地址及列地址。
將坐標(biāo)“X+15-A”的低位的4位編成列地址的低位的4位碼,將坐標(biāo)“Y+n”的低位的5位編成列地址的高位的5位碼,生成列地址。將坐標(biāo)X的高位的6位和乘法器63的乘得結(jié)果相加,生成存儲(chǔ)單元地址和行地址。
其次,雖然從右下頁P(yáng)11讀出的長度為s11,但在圖15中為了從右下頁P(yáng)11讀出Y01塊的重疊部分,通過脈沖串讀出,就可以對(duì)從Y01塊左上頂點(diǎn)的相對(duì)坐標(biāo)(0,B+n-31)到(A+m-15,B+n-31)的A+m-15象素進(jìn)行讀出。
為了從右下頁P(yáng)11讀出Y01塊的重疊部分,根據(jù)其讀出長度(A+m-15)象素,只讀出(A+m-15)地址,讀出后需要將讀出處移到上一行。
即,如箭頭(1)所示,如果讀出從Y01塊左上頂點(diǎn)的相對(duì)坐標(biāo)(0,B+n-31)到相對(duì)坐標(biāo)(A+m-15,B+n-31)的A+m-15象素,那么需要接著如箭頭(2)所示,讀出從相對(duì)坐標(biāo)(0,B+n-30)到相對(duì)坐標(biāo)(A+m-15,B+n-30)的A+m-15象素,再接著如箭頭(3)所示,讀出從相對(duì)坐標(biāo)(0,B+n-29)到(A+m-15,B+n-29)的A+m-15象素。
如果參照?qǐng)D11A就能知道,由于Y坐標(biāo)的低位的5位被編成列地址的高位的5位碼,所以在讀出處的地址坐標(biāo)的Y坐標(biāo)減少1個(gè)的情況下,列地址便各減少15位。
將該讀出處作為移到下一行用的位移,對(duì)右下頁P(yáng)11設(shè)定讀出位移為『-15』。
(第1.4.6章 從左上頁P(yáng)00讀出的處理)如果算出相對(duì)坐標(biāo),則在步驟S53中,判斷『相對(duì)坐標(biāo)A+讀出范圍的橫向幅度m<16』是否成立。該『相對(duì)坐標(biāo)A+讀出范圍的橫向幅度m』表示Y01塊的右上頂點(diǎn)的相對(duì)坐標(biāo)X,所謂『相對(duì)坐標(biāo)A+讀出范圍的橫向幅度m<16』成立,是表示Y01塊的右上頂點(diǎn)的X坐標(biāo)在右上頁P(yáng)01上找不到。
如果步驟S53為Yes,則在步驟S54中判斷『相對(duì)坐標(biāo)B+讀出范圍的縱向幅度n<32』是否成立。該『相對(duì)坐標(biāo)B+讀出范圍的縱向幅度n』表示Y01塊的左下頂點(diǎn)的Y坐標(biāo),所謂『相對(duì)坐標(biāo)B+讀出范圍的橫向幅度n<16』成立,是表示Y01塊的右上頂點(diǎn)的Y坐標(biāo)在左下頁P(yáng)10上找不到。
由于在右上頁P(yáng)01及左下頁P(yáng)10上找不到,所以如圖20A所示,可知構(gòu)成Y01塊的上半部分的讀出范圍被收容在左上頁P(yáng)00內(nèi)。
如果知道被收容在左上頁P(yáng)00內(nèi),則在步驟S61中對(duì)左上頁P(yáng)00的存儲(chǔ)單元發(fā)送預(yù)充電命令及激活命令。發(fā)送后,在步驟S62中,開始進(jìn)行左上頁P(yáng)00的讀出。
圖17是表示由補(bǔ)償控制部10進(jìn)行的頁讀出處理順序的流程圖。
在步驟S21中,在SDRAM31中將亮度地址編碼器61算出的讀出處的頁的行地址輸出給地址引線。輸出后,在步驟S24中,將列地址輸出給地址引線后,在步驟S25中,將CAS輸出給亮度地址編碼器61算出的存儲(chǔ)單元地址,在步驟S26中,在字長寄存器59中設(shè)定讀出長度,發(fā)送讀出命令。
在步驟S27中,判斷讀出命令的輸出是否是第t次,如果不是第t次,便在步驟S28中將對(duì)頁確定的位移加到列地址中,將列地址移到重疊部分內(nèi)的下一行。
如果將列地址移到了下一行,便移到步驟S24。
在步驟S24中,將列地址輸出給地址引線后,在步驟S25中,將CAS輸出給亮度地址編碼器61算出的存儲(chǔ)單元的存儲(chǔ)器陣列,在步驟S26中,在字長寄存器59中設(shè)定讀出長度,發(fā)送讀出命令。
以上讀出命令的發(fā)送重復(fù)若干次后,從左上頁P(yáng)00讀出每個(gè)s×1象素部分的亮度分量。如果該讀出反復(fù)了t次,變成讀出s×t象素大小的重疊部分。
如果以上的讀出重復(fù)了t次,則在步驟S27中變?yōu)閅es,移到步驟S29。在步驟S29中判斷是否需要激活內(nèi)存儲(chǔ)單元。
如果必要的話,在步驟S30中,將預(yù)充電命令發(fā)送給內(nèi)存儲(chǔ)單元,在步驟S31中,將激活命令發(fā)送給內(nèi)存儲(chǔ)單元后,返回到圖16所示的流程。
(第1.4.7章 Y01塊重疊在左上頁P(yáng)00和左下頁P(yáng)10上時(shí)的讀出處理)在圖16所示的流程中,在步驟S53為Yes、步驟S54為No時(shí),表示在左下頁P(yáng)10上找到Y(jié)01塊的左下、右下頂點(diǎn)。在找到的情況下,在步驟S55中判斷『相對(duì)坐標(biāo)B<(64-n)/2 』是否成立。將相對(duì)坐標(biāo)B<(64-n)/2時(shí)的Y01塊示于圖20B,將相對(duì)坐標(biāo)B>(64-n)/2時(shí)的Y01塊示于圖20C。
將圖20B和圖20C進(jìn)行比較,可知相對(duì)坐標(biāo)B>(64-n)/2時(shí),與左下頁P(yáng)10的重疊部分比與左上頁P(yáng)00的重疊部分長。
可知相對(duì)坐標(biāo)B<(64-n)/2時(shí),與左上頁P(yáng)00的重疊部分比與左下頁P(yáng)10的重疊部分長。
如果斷定重疊部分的縱向幅度為長的一方,這時(shí),將該縱向幅度長的一方的讀出順序確定為第一號(hào),將短的一方的讀出順序確定為第二號(hào)。
通過判斷相對(duì)坐標(biāo)B和『(64-n)/2』的大小,如果斷定相對(duì)坐標(biāo)B大,則在步驟S88中將激活命令發(fā)送給存儲(chǔ)單元0、存儲(chǔ)單元1雙方。接著在步驟S89中將左上頁P(yáng)00讀給第一號(hào),在步驟S90中將左下頁P(yáng)10讀給第二號(hào)。
通過判斷相對(duì)坐標(biāo)B和『(64-n)/2』的大小,如果斷定相對(duì)坐標(biāo)B小,則在步驟S91中將預(yù)充電命令及激活命令發(fā)送給存儲(chǔ)單元0、存儲(chǔ)單元1雙方。此后,在步驟S92中將左下頁P(yáng)10讀給第一號(hào),在步驟S93中將左上頁P(yáng)00讀給第二號(hào)。
(第1.4.8章 Y01塊重疊在左上頁P(yáng)00和右上頁P(yáng)01上時(shí)的讀出處理)在步驟S53為No時(shí),表示在右上頁P(yáng)01上找到Y(jié)01塊的右上頂點(diǎn)。在找到的情況下,在步驟S56中判斷『相對(duì)坐標(biāo)B+讀出范圍的縱向幅度n<32』是否成立。該『相對(duì)坐標(biāo)B+縱向幅度n』表示Y01塊的左下頂點(diǎn)的Y坐標(biāo),所謂『相對(duì)坐標(biāo)B+讀出范圍的縱向幅度n<32』成立,是表示在左下頁P(yáng)10未找到Y(jié)01塊的左下頂點(diǎn)的Y坐標(biāo)。
如果在步驟S56中為Yes,便移到步驟S57。這里步驟S53為No,步驟S56變?yōu)閅es,表示Y01塊重疊在左上頁P(yáng)00和右上頁P(yáng)01上,但不重疊在左下頁P(yáng)10和右下頁P(yáng)11上。
如果知道重疊在左上頁P(yáng)00和右上頁P(yáng)01上,則移到步驟S57,判斷左上頁P(yáng)00及右上頁P(yáng)01中重疊多大。
在步驟S57中,判斷相對(duì)坐標(biāo)A和『(32-m)/2』的大小。
將相對(duì)坐標(biāo)A>(32-m)/2時(shí)的Y01塊示于圖20D,將相對(duì)坐標(biāo)A<(32-m)/2時(shí)的Y01塊示于圖20E。
將圖20D和圖20E進(jìn)行比較,可知相對(duì)坐標(biāo)A>(32-m)/2時(shí),與右上頁P(yáng)01的重疊部分比與左上頁P(yáng)00的重疊部分長。
可知相對(duì)坐標(biāo)A<(32-m)/2時(shí),與左上頁P(yáng)00的重疊部分比與右上頁P(yáng)01的重疊部分長。
如果斷定重疊部分的橫向幅度為長的一方,則將該橫向幅度長的一方的讀出順序確定為第一號(hào),將短的一方的讀出順序確定為第二號(hào)。
通過判斷相對(duì)坐標(biāo)A和『(32-m)/2』的大小,如果斷定相對(duì)坐標(biāo)A大,則將右上頁P(yáng)01讀給第一號(hào),將左上頁P(yáng)00讀給第二號(hào)。
通過判斷相對(duì)坐標(biāo)A和『(32-m)/2』的大小,如果斷定相對(duì)坐標(biāo)A小,則將左上頁P(yáng)00讀給第一號(hào),將右上頁P(yáng)01讀給第二號(hào)。
(第1.4.9章 根據(jù)橫向幅度的長度確定讀出順序的理由)之所以以橫向幅度長的一方的讀出順序?yàn)橄?,是因?yàn)榕c讀出并行地進(jìn)行其它存儲(chǔ)單元的預(yù)充電及激活。即,在完成其它存儲(chǔ)單元的預(yù)充電及激活之前,通過讀出處理,亮度分量被全部讀出,并不意味著并行地進(jìn)行預(yù)充電及激活。
從將該讀出處理和預(yù)充電及激活并行地進(jìn)行的觀點(diǎn)來看,最好將列地址及讀出命令發(fā)送給具有橫向幅度長的重疊部分的頁,SDRAM在收到該命令后依次輸出亮度分量,在此期間使對(duì)其它存儲(chǔ)單元的預(yù)充電及激活結(jié)束。如果這樣來考慮,就能理解將橫向幅度長的一方的讀出順序定為第一號(hào),而將短的一方的讀出順序定為第二號(hào)是合理的。
(第1.4.10章 Y01塊與P01、P10、P11重疊時(shí)的讀出處理)在步驟S56中,如果斷定『相對(duì)坐標(biāo)B+讀出范圍的縱向幅度n<32』成立,則轉(zhuǎn)移到步驟S58。在步驟S53中變?yōu)镹o,意味著Y01塊有與右上頁P(yáng)01重疊的部分,這一點(diǎn)已說明過,但步驟S56變?yōu)镹o,意味著有與左下頁P(yáng)10和右下頁P(yáng)11重疊的部分。
如果步驟S56變?yōu)镹o,則在步驟S58中進(jìn)行相對(duì)坐標(biāo)A和『(32-m)/2』的大小的判斷。在相對(duì)坐標(biāo)A>(32-m)/2的情況下,意味著與右上頁P(yáng)01的重疊部分比與左上頁P(yáng)00的重疊部分長,這一點(diǎn)已說明過,但在步驟S58為Yes的情況下,在步驟S59中判斷相對(duì)坐標(biāo)B和『(64-n)/2』的大小。在步驟S58的判斷為No的情況下,在步驟S60中判斷相對(duì)坐標(biāo)B和『(64-n)/2』的大小。
相對(duì)坐標(biāo)A<(32-m)/2、相對(duì)坐標(biāo)B<(64-n)/2的情況下的Y01塊示于圖20F,相對(duì)坐標(biāo)A<(32-m)/2、相對(duì)坐標(biāo)B>(64-n)/2的情況下的Y01塊示于圖20G。
對(duì)圖20F和圖20G進(jìn)行比較,可知相對(duì)坐標(biāo)B>(64-n)/2時(shí),與左下頁P(yáng)10重疊部分的縱向幅度比與左上頁P(yáng)00重疊部分的縱向幅度長。
可知相對(duì)坐標(biāo)B<(64-n)/2時(shí),與左上頁P(yáng)00重疊部分的縱向幅度比與左下頁P(yáng)10重疊部分的縱向幅度長。
如果斷定了縱向幅度及橫向幅度的長短,則將與重疊的橫向幅度最短、重疊的縱向幅度最長的一方的象素塊的重疊部分的讀出順序確定為第一順序,將與重疊的橫向幅度最長、重疊的縱向幅度也最長的一方的象素塊的重疊部分的讀出順序確定為第二順序,將與重疊的橫向幅度最長、重疊的縱向幅度最短的一方的象素塊的重疊部分的讀出順序確定為第三順序,而將與重疊的橫向幅度最短、重疊的縱向幅度也最短的一方的象素塊的重疊部分的讀出順序確定為第四順序。
(第1.4.11章 確定左上頁P(yáng)00~右下頁P(yáng)11的讀出順序的理由)參照?qǐng)D19,說明確定左上頁P(yáng)00~右下頁P(yáng)11的讀出順序的理由。各重疊部分的縱向幅度、橫向幅度的長度為圖18所示的長度。參照?qǐng)D19中的時(shí)間圖,說明Y01塊如該圖18所示那樣與各頁相交時(shí),存儲(chǔ)器存取部11用怎樣的時(shí)間發(fā)送讀出命令、激活命令、預(yù)充電命令。
在圖19中,RAS/CAS行表示行地址和列地址的輸入,例如RO表示存儲(chǔ)單元0的行地址的輸入,C1表示存儲(chǔ)單元1的列地址的輸入。
Command行表示給SDRAM的工作指示,例如A1表示存儲(chǔ)單元1的激活(Activate),R0表示存儲(chǔ)單元0的讀出(Read)、P1表示存儲(chǔ)單元1的預(yù)充電(Precharge)、BS(Burst Stop)表示連續(xù)輸送的停止。
Data行表示讀出的存儲(chǔ)內(nèi)容。另外,在該圖中畫斜線的輸入?yún)^(qū)表示存儲(chǔ)在存儲(chǔ)單元0的區(qū)域,其它部分表示存儲(chǔ)在存儲(chǔ)單元1的區(qū)域。
在圖18中,在時(shí)刻C1及C2將激活命令發(fā)送給縱向幅度長、橫向幅度短的重疊部分a。
SDRAM的特性是,在發(fā)送激活命令之后,如果未經(jīng)過3個(gè)時(shí)鐘脈沖的時(shí)間,就不能對(duì)被激活的塊發(fā)送讀出命令,也不能對(duì)其它存儲(chǔ)單元發(fā)送激活命令,但在先將存儲(chǔ)單元1激活后,如果先讀出存儲(chǔ)單元1中的數(shù)據(jù),再激活存儲(chǔ)單元0,那么在存儲(chǔ)單元0激活后的3個(gè)時(shí)鐘脈沖期間,也能進(jìn)行存儲(chǔ)單元1的數(shù)據(jù)讀出。
這里,縱向幅度長、橫向幅度短的重疊部分a由于沿縱向連續(xù),而列地址不連續(xù),所以需要將列地址再送給每個(gè)讀出字(圖19中的時(shí)刻C3、C4、C5時(shí)的C1、R1)。這時(shí),由于不能并行地進(jìn)行存儲(chǔ)單元0的激活和存儲(chǔ)單元1的讀出,所以在發(fā)送存儲(chǔ)單元1的讀出命令之前,先給出用于讀出縱向幅度長、橫向幅度短的重疊部分a的存儲(chǔ)單元1的激活命令(圖中的時(shí)刻C1時(shí)的R1、A1),給出用于讀出縱向幅度長、橫向幅度長的重疊部分b的存儲(chǔ)單元0的激活命令(圖中的時(shí)刻C2時(shí)的R0、A0)。接著,給出用于讀出縱向幅度長、橫向幅度短的重疊部分a的讀出命令(圖中的時(shí)刻C3、C4、C5、C6時(shí)的C1、R1),通過這樣處理,能有效地利用給出存儲(chǔ)單元0的激活命令后的3個(gè)時(shí)鐘脈沖期間。
其次,給出用于讀出縱向幅度長、橫向幅度長的重疊部分b的讀出命令(圖中的時(shí)刻C7、C8、C9、C10時(shí)的C0、R0)??v向幅度長、橫向幅度長的重疊部分b由于沿橫向連續(xù),所以列地址也連續(xù),在橫向連續(xù)讀出期間不需要再發(fā)送列地址。因此,與縱向幅度長、橫向幅度長的重疊部分b的讀出并行地發(fā)送存儲(chǔ)單元1的預(yù)充電命令(時(shí)刻C11時(shí)的R1、P1)和用于讀出縱向幅度短、橫向幅度長的重疊部分c的存儲(chǔ)單元1的激活命令(時(shí)刻C12時(shí)的R1、A1)。
同樣,由于縱向幅度短、橫向幅度長的重疊部分c也沿橫向連續(xù),所以與縱向幅度短、橫向幅度長的重疊部分c的讀出(時(shí)刻C13時(shí)的C1、R1)并行地發(fā)送存儲(chǔ)單元0的預(yù)充電命令(時(shí)刻C14時(shí)的R0、P0)和用于讀出縱向幅度短、橫向幅度短的重疊部分d的存儲(chǔ)單元0的激活命令(時(shí)刻C15時(shí)的R0、A0)。
最后,讀出縱向幅度短、橫向幅度短的重疊部分d(時(shí)刻C16時(shí)的C0、R0),停止連續(xù)讀出(時(shí)刻C17時(shí)的BS),對(duì)兩個(gè)存儲(chǔ)單元進(jìn)行預(yù)充電(圖中未示出命令)。在本實(shí)施形態(tài)中,最后對(duì)縱向幅度短、橫向幅度短的重疊部分d這種存儲(chǔ)的象素?cái)?shù)少的頁進(jìn)行存取。這是因?yàn)樵谧x出縱向幅度短、橫向幅度短的重疊部分d的時(shí)刻,在將必要的象素全部讀出后,還不知道作為下一個(gè)應(yīng)讀出的圖象應(yīng)讀出哪個(gè)象素,所以在發(fā)送BS命令之前不能進(jìn)行發(fā)送命令的處理。
如上所述,如果最初和最后讀出列地址連續(xù)的象素個(gè)數(shù)少的存儲(chǔ)區(qū)(在該圖的例中,縱向幅度長、橫向幅度短的重疊部分a和縱向幅度短、橫向幅度短的重疊部分d),就能與列地址連續(xù)的象素個(gè)數(shù)多的存儲(chǔ)區(qū)(在該圖的例中,縱向幅度長、橫向幅度長的重疊部分b和縱向幅度短、橫向幅度長的重疊部分c)的讀出并行地進(jìn)行其它存儲(chǔ)單元的預(yù)充電和激活,能有效地對(duì)變換成兩個(gè)存儲(chǔ)單元地址的存儲(chǔ)器陣列進(jìn)行存取。另外,最初讀出了列地址連續(xù)的象素個(gè)數(shù)少的存儲(chǔ)區(qū)中輸送量多的區(qū)(在該圖的例中,縱向幅度長、橫向幅度短的重疊部分a),如上所述,能不浪費(fèi)從其它存儲(chǔ)單元的激活命令的發(fā)送到該被激活的存儲(chǔ)單元的數(shù)據(jù)讀出命令的發(fā)送之間的3個(gè)時(shí)鐘脈沖長短的等待時(shí)間。即,在該例中,由于在從存儲(chǔ)單元0的激活命令的發(fā)送到從存儲(chǔ)單元0的數(shù)據(jù)讀出命令的發(fā)送之間進(jìn)行存儲(chǔ)單元1的數(shù)據(jù)讀出,所以能有效地利用3個(gè)時(shí)鐘脈沖長短的時(shí)間。
另外,這里所說的列地址連續(xù)的象素個(gè)數(shù)少的兩個(gè)存儲(chǔ)區(qū)意味著四個(gè)存儲(chǔ)區(qū)中最小的區(qū)和第二小的區(qū),但如果用各邊平行的兩條直線(PB)分割矩形區(qū),則最小的區(qū)和第二小的區(qū)是相鄰的。另一方面,在本實(shí)施形態(tài)中,由于相鄰的存儲(chǔ)區(qū)被存儲(chǔ)在不同的存儲(chǔ)單元中,所以最小的區(qū)和第二小的區(qū)被存儲(chǔ)在不同的存儲(chǔ)單元中。
根據(jù)以上的說明可知,如果將最小的縱向幅度短、橫向幅度短的重疊部分d的讀出順序作為最后順序,將第二小的縱向幅度長、橫向幅度短的重疊部分a的讀出順序作為最初順序,就能有效地利用SDRAM,能參照必須用最少的時(shí)鐘脈沖數(shù)讀出的存儲(chǔ)區(qū)。
<補(bǔ)充說明>
在圖19的讀出中,考察一下將縱向幅度短-橫向幅度長的左下頁P(yáng)10和縱向幅度長-橫向幅度短的右上頁P(yáng)01的讀出順序反轉(zhuǎn)的情況。在此情況下,在縱向幅度短-橫向幅度長的左下頁P(yáng)10的讀出中,雖然必須發(fā)送預(yù)充電命令及激活命令,但如果發(fā)送預(yù)充電命令,那就會(huì)使來自縱向幅度短-橫向幅度長的左下頁P(yáng)10的脈沖串讀出中斷。由于正在對(duì)右上頁P(yáng)01發(fā)送激活命令,所以不能發(fā)送其它激活命令。因此可知開始讀出縱向幅度長-橫向幅度短的右上頁P(yáng)01,然后讀出縱向幅度短-橫向幅度長的左下頁P(yáng)10的順序同樣是最合適的。
(第1.4.12章 從左上頁P(yáng)00~右下頁P(yáng)11的讀出模式之(1))圖20F中示出了在步驟S58為Yes、步驟S59為Yes的情況下,Y01塊怎樣與左上頁P(yáng)00、右上頁P(yáng)01、左下頁P(yáng)10、右下頁P(yáng)11重疊??芍诓襟ES58為Yes的情況下,Y01塊的左上頂點(diǎn)(X,Y)位于左上頁P(yáng)00中包括的橫16象素×縱32象素內(nèi)稍微靠左的位置,在左上頁P(yáng)00和左下頁P(yáng)10中有橫向幅度長的重疊部分。
可知在步驟S59為Yes的情況下,Y01塊的左上頂點(diǎn)(X,Y)位于左上頁P(yáng)00中包括的橫16象素×縱32象素內(nèi)稍微靠上的位置,在左上頁P(yáng)00和右上頁P(yáng)01中有縱向幅度長的重疊部分。
在圖20F中,在左上頁P(yáng)00中有縱向幅度長、橫向幅度長的重疊部分,在右上頁P(yáng)01中有縱向幅度長、橫向幅度短的重疊部分。在左下頁P(yáng)10中有縱向幅度短、橫向幅度長的重疊部分,在右下頁P(yáng)11中有縱向幅度短、橫向幅度短的重疊部分。由于如各頁所示那樣表示重疊部分,所以將重疊部分的讀出順序確定為『右上頁P(yáng)01』『左上頁P(yáng)00』『左下頁P(yáng)10』『右下頁P(yáng)11』。
(第1.4.13章 對(duì)SDRAM發(fā)送命令的時(shí)刻)這里,圖20F中的各重疊部分的縱向幅度、橫向幅度的長度是圖18中所示的長度。
在圖16所示的步驟S68中,在時(shí)刻c1對(duì)SDRAM的RAS引線發(fā)送RAS信號(hào),同時(shí)對(duì)讀出處SDRAM的存儲(chǔ)單元1發(fā)送激活命令A(yù)1。由于發(fā)送激活命令A(yù)1,所以在期間d1進(jìn)行對(duì)存儲(chǔ)單元1的激活(另外這里所說的期間d1是存儲(chǔ)器陣列實(shí)際上的激活期間和CAS的延遲(包括圖中的CAS執(zhí)行時(shí)間))。在3個(gè)時(shí)鐘脈沖后的時(shí)刻c2,對(duì)SDRAM的RAS引線發(fā)送RAS信號(hào),同時(shí)對(duì)讀出處SDRAM的存儲(chǔ)單元0發(fā)送激活命令A(yù)0。由于發(fā)送激活命令A(yù)0,所以在期間d2進(jìn)行對(duì)存儲(chǔ)單元0的激活。
在步驟S69~步驟S72中,按照『右上頁P(yáng)01』『左上頁P(yáng)00』『左下頁P(yáng)10』『右下頁P(yáng)11』順序進(jìn)行脈沖串讀出。
(第1.4.14章 對(duì)右上頁P(yáng)01發(fā)送命令)在已經(jīng)讀出的頁P(yáng)01中,算出讀出范圍m×n所占的重疊部分s01×t01(=1×7)。在圖17中的步驟S21中,將從重疊部分的左上頂點(diǎn)(X+15-A,Y)變換成的行地址、存儲(chǔ)單元地址輸出給地址引線。輸出后,在步驟S24中,在圖18中的時(shí)刻c3,將從象素塊內(nèi)的相對(duì)坐標(biāo)(X+15-A,Y)變換成的列地址輸出給地址引線后,在步驟S25中,將CAS輸出給亮度地址編碼器61算出的存儲(chǔ)單元地址,在步驟S26中,在字長寄存器59中設(shè)定讀出長度(A+m-15)(=1),發(fā)送READ命令R1。
判斷READ命令的輸出是否是第t次,如果不是第t次,則在步驟S28中使列地址只增加對(duì)頁所確定的位移(+15),將列地址移到重疊部分內(nèi)的下一行。
在將列地址移到重疊部分內(nèi)的下一行后,轉(zhuǎn)移到步驟S24。
轉(zhuǎn)移到步驟S24后,在圖18中的時(shí)刻c4,將加上了位移+15的列地址輸出給地址引線后,在步驟S25中,將CAS輸出給亮度地址編碼器61算出的存儲(chǔ)單元地址,在字長寄存器59中設(shè)定讀出長度『1』,發(fā)送READ命令。
如果再次轉(zhuǎn)移到步驟S24,則在圖18中的時(shí)刻c5,將加上了位移+15的列地址輸出給地址引線后,在步驟S25中,將CAS輸出給亮度地址編碼器61算出的存儲(chǔ)單元地址,在字長寄存器59中設(shè)定讀出長度『1』,發(fā)送READ命令。
在該7次讀出的進(jìn)行期間,存儲(chǔ)單元0由按照時(shí)刻c2發(fā)送的激活命令激活,呈可以存取的狀態(tài)。
在以上的讀出反復(fù)進(jìn)行7次的期間,從數(shù)據(jù)引線依次讀出七行部分的象素。如果以上的讀出反復(fù)了7次,便轉(zhuǎn)移到步驟S29。在步驟S29中,判斷是否需要將另一存儲(chǔ)單元激活。
這時(shí)由于已經(jīng)發(fā)送了激活命令,所以步驟S29變?yōu)镹o。
(第1.4.15章 對(duì)左上頁P(yáng)00發(fā)送命令)存儲(chǔ)器存取部11將在讀出處頁P(yáng)00中從讀出范圍n×m所占的重疊部分的左上頂點(diǎn)(X,Y)變換成的行地址、存儲(chǔ)單元地址輸出給地址引線。輸出后,在步驟S24中,在圖18中的時(shí)刻c7,將從象素塊內(nèi)的相對(duì)坐標(biāo)(X,Y)變換成的列地址輸出給地址引線后,在步驟S24中,將CAS輸出給亮度地址編碼器61算出的存儲(chǔ)單元地址,在字長寄存器59中設(shè)定讀出長度(15),發(fā)送READ命令。
判斷READ命令的輸出是否是第t次,如果不是第t次,則相對(duì)頁使列地址只增加所確定的位移(+15),將列地址移到重疊部分內(nèi)的下一行。
在將列地址移到重疊部分內(nèi)的下一行后,轉(zhuǎn)移到步驟S24。
轉(zhuǎn)移到步驟S24后,在圖18中的時(shí)刻c8,將加上了位移+15的列地址輸出給地址引線后,在步驟S25中,將CAS輸出給亮度地址編碼器61算出的存儲(chǔ)單元地址,在字長寄存器59中設(shè)定讀出長度15,發(fā)送READ命令。
如果再次轉(zhuǎn)移到步驟S24,則在圖18中的時(shí)刻c9,將加上了位移+15的列地址輸出給地址引線后,在步驟S25中,將CAS輸出給亮度地址編碼器61算出的存儲(chǔ)單元地址,在字長寄存器59中設(shè)定讀出長度15,發(fā)送READ命令。
再次轉(zhuǎn)移到步驟S24后,在圖18中的時(shí)刻c10,將加上了位移+15的列地址輸出給地址引線后,在步驟S25中,將CAS輸出給亮度地址編碼器61算出的存儲(chǔ)單元地址,在字長寄存器59中設(shè)定讀出長度15,發(fā)送READ命令。
如果以上的讀出反復(fù)了4次,步驟S27變?yōu)閅es,轉(zhuǎn)移到步驟S29。在步驟S29中,判斷是否需要將另一存儲(chǔ)單元激活。
其次由于作為應(yīng)讀出的頁還剩下左下頁P(yáng)10,所以在步驟S30中,在3個(gè)時(shí)鐘脈沖后的時(shí)刻c11,將RAS信號(hào)發(fā)送給RAS引線,同時(shí)發(fā)送預(yù)充電命令,在時(shí)刻c12將RAS信號(hào)發(fā)送給RAS引線,同時(shí)發(fā)送激活命令。如果這樣發(fā)送,則在按照在時(shí)刻c10發(fā)送的讀出命令進(jìn)行的反復(fù)輸出亮度分量的時(shí)刻c14之前的期間d3,對(duì)存儲(chǔ)單元1進(jìn)行激活。
(第1.4.16章 對(duì)左下頁P(yáng)10發(fā)送命令)將在讀出處頁P(yáng)10中從重疊部分s10×t10的左上頂點(diǎn)(X,Y+n-31)變換成的行地址、存儲(chǔ)單元地址輸出給地址引線。輸出后,在步驟S24中,在圖18中的時(shí)刻c13,將從象素塊內(nèi)的相對(duì)坐標(biāo)(A,B+n-31)變換成的列地址輸出給地址引線后,在步驟S25中,將CAS輸出給亮度地址編碼器61算出的存儲(chǔ)單元地址,在圖18中的時(shí)刻c14,在字長寄存器59中設(shè)定讀出長度15,發(fā)送READ命令。
因?yàn)閠=1,所以步驟S27變?yōu)閅es,轉(zhuǎn)移到步驟S29。在步驟S29中,判斷是否需要將另一存儲(chǔ)單元激活。
其次由于作為應(yīng)讀出的頁還剩下右下頁P(yáng)11,所以在步驟S30中,在3個(gè)時(shí)鐘脈沖后的時(shí)刻c14,將RAS信號(hào)發(fā)送給RAS引線,同時(shí)發(fā)送預(yù)充電命令,在圖18中的時(shí)刻c15發(fā)送激活命令。如果這樣發(fā)送,則在按照在時(shí)刻c13發(fā)送的讀出命令進(jìn)行的反復(fù)輸出亮度分量的時(shí)刻c17之前的期間d4,對(duì)存儲(chǔ)單元0進(jìn)行激活。
(第1.4.17章 對(duì)右下頁P(yáng)11發(fā)送命令)其次由于作為應(yīng)讀出的頁還剩下右下頁P(yáng)11,所以存儲(chǔ)器存取部11將由重疊部分s11×t11構(gòu)成的重疊部分的左上頂點(diǎn)(X+15-A,Y+n-31)變換成的行地址、存儲(chǔ)單元地址輸出給地址引線。輸出后,在步驟S24中,將從象素塊內(nèi)的相對(duì)坐標(biāo)(A+15-A,B+n-31)變換成的列地址輸出給地址引線后,在步驟S25中,在圖18中的時(shí)刻c16將CAS輸出給亮度地址編碼器61算出的存儲(chǔ)單元地址,在字長寄存器59中設(shè)定讀出長度1,發(fā)送READ命令R0。
t=1,以上的讀出重復(fù)一次后,步驟S27變?yōu)閅es,轉(zhuǎn)移到步驟S29。在步驟S29中,判斷是否需要將另一存儲(chǔ)單元激活。
其次由于沒有剩下的應(yīng)讀出的頁,所以在步驟S30中,在時(shí)刻c17發(fā)送脈沖串停止命令。這樣發(fā)送后,讀出處理結(jié)束。
(第1.4.18章 從左上頁P(yáng)00~右下頁P(yáng)11的讀出模式之(2))在圖20G中示出了在步驟S58為Yes、步驟S59為No的情況下,Y01塊怎樣與左上頁P(yáng)00、右上頁P(yáng)01、左下頁P(yáng)10、右下頁P(yáng)11重疊??芍诓襟ES58為Yes的情況下,在左上頁P(yáng)00和左下頁P(yáng)10中有橫向幅度長的重疊部分。另外,可知在左下頁P(yáng)10和右下頁P(yáng)11中有縱向幅度長的重疊部分。在圖20G中,在左上頁P(yáng)00中有縱向幅度短、橫向幅度長的重疊部分,在右上頁P(yáng)01中有縱向幅度短、橫向幅度短的重疊部分。在左下頁P(yáng)10中有縱向幅度長、橫向幅度長的重疊部分,在右下頁P(yáng)11中有縱向幅度長、橫向幅度短的重疊部分。由于如各頁所示那樣表示重疊部分,所以在步驟S73中將預(yù)充電命令發(fā)送給SDRAM31內(nèi)的存儲(chǔ)單元0及存儲(chǔ)單元1之后,在步驟S74中讀出『右下頁P(yáng)11』,在步驟S75中讀出『左下頁P(yáng)10』,在步驟S76中讀出『左上頁P(yáng)00』,在步驟S77中讀出『右上頁P(yáng)01』。
(第1.4.19章 從左上頁P(yáng)00~右下頁P(yáng)11的讀出模式之(3))在圖20H中示出了在步驟S58為No、步驟S60為Yes的情況下,Y01塊怎樣與左上頁P(yáng)00、右上頁P(yáng)01、左下頁P(yáng)10、右下頁P(yáng)11重疊??芍诓襟ES58為No的情況下,Y01塊的左上頂點(diǎn)(X,Y)在左上頁P(yáng)00中包括的橫16象素×縱32象素內(nèi)位于稍微靠右的位置,在右上頁P(yáng)01和右下頁P(yáng)11中有橫向幅度長的重疊部分。另外可知在左上頁P(yáng)00和右上頁P(yáng)01中有縱向幅度長的重疊部分。在圖20G中,在左上頁P(yáng)00中有縱向幅度長、橫向幅度短的重疊部分,在右上頁P(yáng)01中有縱向幅度長、橫向幅度長的重疊部分。在右下頁P(yáng)11中有縱向幅度短、橫向幅度長的重疊部分,在左下頁P(yáng)10中有縱向幅度短、橫向幅度短的重疊部分。由于如各頁所示那樣表示重疊部分,所以在步驟S78中將激活命令發(fā)送給SDRAM31內(nèi)的存儲(chǔ)單元0及存儲(chǔ)單元1之后,在步驟S79中讀出『左上頁P(yáng)00』,在步驟S80中讀出『右上頁P(yáng)01』,在步驟S76中讀出『右下頁P(yáng)11』,在步驟S77中讀出『左下頁P(yáng)10』。
(第1.4.20章 從左上頁P(yáng)00~右下頁P(yáng)11的讀出模式之(4))在圖201中示出了在步驟S58為No、步驟S60為No的情況下,Y01塊怎樣與左上頁P(yáng)00、右上頁P(yáng)01、左下頁P(yáng)10、右下頁P(yáng)11重疊??芍诓襟ES58為No的情況下,Y01塊的左上頂點(diǎn)(X,Y)在左上頁P(yáng)00中包括的橫16象素×縱32象素內(nèi)位于稍微靠右的位置,在右上頁P(yáng)01和右下頁P(yáng)11中有橫向幅度長的重疊部分。另外可知在左下頁P(yáng)10和右下頁P(yáng)11中有縱向幅度長的重疊部分。在圖20I中,在左下頁P(yáng)10中有縱向幅度長、橫向幅度短的重疊部分,在右下頁P(yáng)11中有縱向幅度長、橫向幅度長的重疊部分。在右上頁P(yáng)01中有縱向幅度短、橫向幅度長的重疊部分,在左上頁P(yáng)00中有縱向幅度短、橫向幅度短的重疊部分。由于如各頁所示那樣表示重疊部分,所以在步驟S83中將激活命令發(fā)送給SDRAM31內(nèi)的存儲(chǔ)單元0及存儲(chǔ)單元1之后,在步驟S84中讀出『左下頁P(yáng)10』,在步驟S85中讀出『右下頁P(yáng)11』,在步驟S86中讀出『右上頁P(yáng)01』,在步驟S87中讀出『左上頁P(yáng)00』。
經(jīng)過如上處理讀出Y01塊后,對(duì)于Y23塊、CbCr塊也一樣,通過算出左上頂點(diǎn)的坐標(biāo),并算出與各頁的重疊部分的縱向幅度、橫向幅度,依次讀出Y23塊及CbCr塊。分三次讀出Y02塊、Y13塊、CbCr塊時(shí)也一樣。
(第1.5章 緩沖器A12的概要)緩沖器A12從存儲(chǔ)器存取部11讀出構(gòu)成將來方向的Y01塊、Y23塊、CbCr塊的亮度分量及色差分量后,根據(jù)寫入地址生成部13指示的寫入處的坐標(biāo),將其寫入內(nèi)部的存儲(chǔ)區(qū)。另外,將被寫入內(nèi)部的亮度分量及色差分量中由讀出地址生成部14指示的讀出處坐標(biāo)處的亮度分量及色差分量輸出給半貝爾內(nèi)插部15。
(第1.5.1章 全部圖象譯碼設(shè)備中的緩沖器A12的位置分配)在圖6A所示的時(shí)間圖中示出了在時(shí)刻t41,緩沖器A12的處理工作情況。
在圖6A所示時(shí)間圖的時(shí)刻t41,如果從存儲(chǔ)器存取部11讀出Y01_f(r)塊,就保存讀出的Y01_f(r)塊。另外如果在時(shí)刻t43讀出Y23_f(r),就保存讀出的Y23_f(r)塊,如果在時(shí)刻t46讀出Cb塊和Cb塊的對(duì)偶CbCr_f(r),就保存該CbCr_f(r)。如果從存儲(chǔ)器存取部11對(duì)每兩個(gè)塊讀出過去方向的參照?qǐng)D象,就將它們保存起來。在圖6A所示的時(shí)間圖中的時(shí)刻t51從存儲(chǔ)器存取部11讀出的Y01_b(r)、在時(shí)刻t52讀出的Y23_b(r)、在時(shí)刻t54讀出的CbCr_b(r)全部被保存在緩沖器A12中。
(第1.5.2章 緩沖器A12的內(nèi)部區(qū)域)圖21A示出了緩沖器A12所具有的內(nèi)部區(qū)域。緩沖器A12的內(nèi)部區(qū)域的列數(shù)、行數(shù)的長度是可變的,包括多個(gè)4字節(jié)長的區(qū)。在圖21A中,表示緩沖器A12的行數(shù)的變數(shù)『z』、表示列數(shù)的變數(shù)『v』都是變數(shù),通過將其設(shè)定為適當(dāng)?shù)闹?,就可改變緩沖器A12的行數(shù)、列數(shù)。之所以這樣改變緩沖器A12的行數(shù)、列數(shù),是因?yàn)樵谘a(bǔ)償控制部10確定的亮度分量的行數(shù)、列數(shù)中有橫16象素×縱8象素、橫17象素×縱8象素、橫16象素×縱9象素、橫17象素×縱9象素、橫8象素×縱16象素、橫9象素×縱16象素、橫8象素×縱17象素、橫9象素×縱17象素這樣8種,并希望不管按哪一種形式讀出亮度分量及色差分量,都能按原來的形狀直接存儲(chǔ)參照?qǐng)D象。
(第1.5.3章 緩沖器A12中的存儲(chǔ)方式①)圖21B示出了在SDRAM31中,從左上頁P(yáng)00、右上頁P(yáng)01、左下頁P(yáng)10、右下頁P(yáng)11讀出的亮度分量怎樣被存儲(chǔ)在緩沖器A12中。
根據(jù)相對(duì)坐標(biāo)(A,B),從左上頁P(yáng)00讀出由縱向幅度s00×橫向幅度t00構(gòu)成的亮度分量,根據(jù)相對(duì)坐標(biāo)(0,B),從右上頁P(yáng)01讀出由縱向幅度s01×橫向幅度t01構(gòu)成的亮度分量。緩沖器A12的y=0的區(qū)存儲(chǔ)著從P00的相對(duì)坐標(biāo)(A,B)到P00的相對(duì)坐標(biāo)(A+s00,B)的亮度分量,以及從P01的相對(duì)坐標(biāo)(0,B)到P01的相對(duì)坐標(biāo)(s01,B)的亮度分量。
另外,緩沖器A12的y=1的區(qū)存儲(chǔ)著從P00的相對(duì)坐標(biāo)(A,B+1)到P00的相對(duì)坐標(biāo)(A+s00,B+1)的亮度分量,以及從P01的相對(duì)坐標(biāo)(0,B+1)到P01的相對(duì)坐標(biāo)(s01,B+1)的亮度分量。
根據(jù)相對(duì)坐標(biāo)(A,0),從左下頁P(yáng)10讀出由縱向幅度s10×橫向幅度t10構(gòu)成的亮度分量,根據(jù)相對(duì)坐標(biāo)(0,0),從右下頁P(yáng)11讀出由縱向幅度s11×橫向幅度t11構(gòu)成的亮度分量。y=t00+1的區(qū)存儲(chǔ)著從P10的相對(duì)坐標(biāo)(A,0)到P10的相對(duì)坐標(biāo)(A+s00,0)的亮度分量,以及從P11的相對(duì)坐標(biāo)(0,0)到P11的相對(duì)坐標(biāo)(0+s11,B)的亮度分量。
(第1.5.4章 緩沖器A12中的存儲(chǔ)方式②)圖22示出了從各頁讀出的亮度分量怎樣被存儲(chǔ)在緩沖器A12內(nèi)部的4字節(jié)長的各區(qū)中。
緩沖器A12內(nèi)部的4字節(jié)的區(qū)域帶有圖中所示的線性地址??芍趌inear_address=0000的4字節(jié)長的區(qū)中存儲(chǔ)著頁P(yáng)00的左上頂點(diǎn)(A,B)的亮度分量、其右側(cè)相鄰的(A+1,B)的亮度分量、其右側(cè)相鄰的(A+2,B)的亮度分量、其右側(cè)相鄰的(A+3,B)的亮度分量這樣四個(gè)象素部分的亮度分量。在linear_address=0001的4字節(jié)長的區(qū)中存儲(chǔ)著頁P(yáng)00的(A+4,B)的亮度分量、其右側(cè)相鄰的(A+5,B)的亮度分量、其右側(cè)相鄰的(A+6,B)的亮度分量、其右側(cè)相鄰的(A+7,B)的亮度分量這樣四個(gè)象素。
圖23A示出了在Y01塊為橫17象素×縱8象素、從左上頁P(yáng)00讀出橫8象素×縱3象素、從右上頁P(yáng)01讀出橫9象素×縱3象素、從左下頁P(yáng)10讀出橫8象素×縱6象素、從右下頁P(yáng)11讀出橫9象素×縱6象素的情況下,怎樣存儲(chǔ)被讀出的象素。
由于橫向幅度共計(jì)為17象素,亮度分量及色差分量為1字節(jié),所以緩沖器A12的內(nèi)部區(qū)域?qū)⒂_保20字節(jié)的區(qū)的橫向設(shè)定為x=0~x=4,將縱向設(shè)定為y=0~y=8。
圖23B示出了在Y02塊為橫9象素×縱16象素、從左上頁P(yáng)00讀出橫8象素×縱3象素、從右上頁P(yáng)01讀出橫1象素×縱3象素、從左下頁P(yáng)10讀出橫8象素×縱13象素、從右下頁P(yáng)11讀出橫1象素×縱13象素的情況下,怎樣存儲(chǔ)被讀出的象素。
由于橫向幅度共計(jì)為9象素,亮度分量及色差分量為1字節(jié),所以緩沖器A12的內(nèi)部區(qū)域?qū)⒂_保12字節(jié)的區(qū)的橫向設(shè)定為x=0~x=2,將縱向設(shè)定為y=0~y=16。
(第1.6章 寫入地址生成部13的概要)如果補(bǔ)償控制部10開始從SDRAM讀出亮度分量及色差分量,寫入地址生成部13便生成線性地址,將所讀出的亮度分量及色差分量寫入緩沖器A12內(nèi)的由其線性地址指示的區(qū)中。
(第1.6.1章 寫入地址生成部13的內(nèi)部結(jié)構(gòu))圖24A示出了寫入地址生成部13的內(nèi)部結(jié)構(gòu)。寫入地址生成部13由X計(jì)數(shù)器81、選擇器82、Y計(jì)數(shù)器83、選擇器84、選擇器85、乘法器86、選擇器87、加法器88及加法器89構(gòu)成。
如果從SDRAMX有效地讀出亮度分量及色差分量,X計(jì)數(shù)器81便增加計(jì)數(shù)值。該計(jì)數(shù)值如果達(dá)到選擇器82有選擇地輸出的上限值,便將已達(dá)到的意思通知Y計(jì)數(shù)器83。
選擇器82根據(jù)SDRAM內(nèi)的讀出處是在左上頁P(yáng)00、右上頁P(yáng)01、左下頁P(yáng)10、右下頁P(yáng)11中的哪一頁,有選擇地輸出左上頁P(yáng)00的橫向幅度s00、右上頁P(yáng)01的橫向幅度s01(=s00)、左下頁P(yáng)10的橫向幅度s10、右下頁P(yáng)11的橫向幅度s11(=s10)中的哪一個(gè)。具體地說,讀出處是左上頁P(yáng)00時(shí),將左上頁P(yáng)00的橫向幅度s00輸出給X計(jì)數(shù)器81,讀出處是右上頁P(yáng)01時(shí),將右上頁P(yáng)01的橫向幅度s01輸出給X計(jì)數(shù)器81,讀出處是左下頁P(yáng)10時(shí),將左下頁P(yáng)10的橫向幅度s10(=s01)輸出給X計(jì)數(shù)器81,讀出處是右下頁P(yáng)11時(shí),將右下頁P(yáng)11的橫向幅度s11(=s10)輸出給X計(jì)數(shù)器81。
如果通知了X計(jì)數(shù)器81已計(jì)數(shù)到上限值的意思時(shí),Y計(jì)數(shù)器83便增加計(jì)數(shù)值。該計(jì)數(shù)值如果達(dá)到選擇器84有選擇地輸出的上限值,便將計(jì)數(shù)值復(fù)位。
選擇器84根據(jù)SDRAM內(nèi)的讀出處是在左上頁P(yáng)00、右上頁P(yáng)01、左下頁P(yáng)10、右下頁P(yáng)11中的哪一頁,有選擇地輸出左上頁P(yáng)00的縱向幅度t00、右上頁P(yáng)01的縱向幅度t01、左下頁P(yáng)10的縱向幅度t10、右下頁P(yáng)11的縱向幅度t11中的哪一個(gè)。具體地說,讀出處是左上頁P(yáng)00時(shí),將左上頁P(yáng)00的縱向幅度t00輸出給Y計(jì)數(shù)器83,讀出處是右上頁P(yáng)01時(shí),將右上頁P(yáng)01的縱向幅度t01(=t00)輸出給Y計(jì)數(shù)器83。讀出處是左下頁P(yáng)10時(shí),將左下頁P(yáng)10的縱向幅度t10輸出給Y計(jì)數(shù)器83,讀出處是右下頁P(yáng)11時(shí),將右下頁P(yáng)11的縱向幅度t11(=t10)輸出給Y計(jì)數(shù)器83。
如果Y計(jì)數(shù)器83將Y坐標(biāo)的計(jì)數(shù)值加1,選擇器85便從『+2』『+3』『+4』『+5』中選擇某一個(gè)應(yīng)與該計(jì)數(shù)值相乘的行數(shù),輸出給乘法器86。當(dāng)橫向幅度被確定為Y02塊的模式、且不需要橫向的半貝爾內(nèi)插時(shí),以橫8象素×縱16象素單位讀出亮度分量。為了存儲(chǔ)8象素部分的亮度分量,將『2』輸出給乘法器86。如果這樣將『+2』輸出給乘法器86,則Y計(jì)數(shù)器83每次使Y坐標(biāo)增加時(shí),便將其計(jì)數(shù)值增大二倍。
當(dāng)橫向幅度被確定為Y02塊的模式、且需要橫向的半貝爾內(nèi)插時(shí),以橫9象素×縱16象素單位讀出亮度分量。為了存儲(chǔ)9象素部分的亮度分量,將『3』輸出給乘法器86。如果這樣將『+3』輸出給乘法器86,則Y計(jì)數(shù)器83每次使Y坐標(biāo)增加時(shí),便將其計(jì)數(shù)值增大三倍。
當(dāng)橫向幅度被確定為Y01塊的模式、且不需要橫向的半貝爾內(nèi)插時(shí),以橫16象素×縱8象素單位讀出亮度分量。為了存儲(chǔ)16象素部分的亮度分量,將『4』輸出給乘法器86。如果這樣將『+4』輸出給乘法器86,則Y計(jì)數(shù)器83每次使Y坐標(biāo)增加時(shí),便將其計(jì)數(shù)值增大四倍。
當(dāng)橫向幅度被確定為Y01塊的模式、且需要橫向的半貝爾內(nèi)插時(shí),以橫18象素×縱8象素單位讀出亮度分量。為了存儲(chǔ)18象素部分的亮度分量,將『5』輸出給乘法器86。如果這樣將『+5』輸出給乘法器86,則Y計(jì)數(shù)器83每次使Y坐標(biāo)增加時(shí),便將其計(jì)數(shù)值增大五倍。
如果Y計(jì)數(shù)器83增大計(jì)數(shù)值,乘法器86便將該增加后的計(jì)數(shù)值和選擇器85輸出的緩沖器A12的一行數(shù)相乘后,輸出給加法器88。
這里之所以Y坐標(biāo)每次增加時(shí),乘法器86便將Y計(jì)數(shù)器83的計(jì)數(shù)值和行數(shù)相乘,是因?yàn)閅坐標(biāo)增加時(shí),必須將某亮度分量、以及Y坐標(biāo)與下一個(gè)亮度分量之間的某一行部分的亮度分量存儲(chǔ)到緩沖器A12中。
選擇器87有選擇地輸出下述地址中的某一個(gè)存儲(chǔ)從左上頁P(yáng)00讀出的重疊部分時(shí)的開始地址、存儲(chǔ)從右上頁P(yáng)01讀出的重疊部分時(shí)的開始地址、存儲(chǔ)從左下頁P(yáng)10讀出的重疊部分時(shí)的開始地址、存儲(chǔ)從右下頁P(yáng)11讀出的重疊部分時(shí)的開始地址。
這里由于存儲(chǔ)從左上頁P(yáng)00讀出的重疊部分時(shí)的開始地址可以存儲(chǔ)在緩沖器A12中的地址0000中,所以選擇器87將線性地址0000輸出給加法器88。
這里假設(shè)左上頁P(yáng)00的橫向幅度為s00,從左上頁P(yáng)00讀出的亮度分量被存儲(chǔ)在從線性地址0000到線性地址0000+s00/4-1的區(qū)中,則從右上頁P(yáng)01讀出的亮度分量可以根據(jù)線性地址0000+s00/4存儲(chǔ)。因此,選擇器87將從右上頁P(yáng)01讀出的亮度分量的存儲(chǔ)開始地址作為線性地址0000+s00/4并輸出。
這里假設(shè)左上頁P(yáng)00的橫向幅度為s00,從左上頁P(yáng)00讀出的亮度分量被存儲(chǔ)在從線性地址0000到線性地址0000+t00×z-1的區(qū)中,則從左下頁P(yáng)10讀出的亮度分量可以根據(jù)線性地址0000+t00×z存儲(chǔ)。因此,選擇器87將從左下頁P(yáng)10讀出的亮度分量的存儲(chǔ)開始地址作為線性地址0000+t00×z并輸出。
從右下頁P(yáng)11讀出的亮度分量可以根據(jù)線性地址0000+t00×z+s00/4存儲(chǔ)。因此,選擇器87將從右下頁P(yáng)11讀出的亮度分量的存儲(chǔ)開始地址作為線性地址0000+t00×z+s00/4并輸出。
加法器88將選擇器87有選擇地輸出的開始地址和由乘法器86乘以全列數(shù)z后的Y計(jì)數(shù)器83的計(jì)數(shù)值相加。
加法器89將亮度地址編碼器61生成的9字節(jié)長的列地址中從低位的2位到低位的9位的值和加法器88加得的結(jié)果相加,生成緩沖器A12中的亮度分量的寫入處地址。由于從低位的2位到低位的9位的值是4字節(jié)的倍數(shù),所以如果將它與加法器88加得的結(jié)果相加,就能確定緩沖器A12中的寫入處地址。
(第1.7.1章 存儲(chǔ)Y01塊時(shí)的緩沖器A12的內(nèi)部圖象)已說明過亮度塊被分成Y01塊和Y23塊這樣兩次從存儲(chǔ)器模塊3讀出,而現(xiàn)在參照?qǐng)D25A及圖25B說明怎樣存儲(chǔ)這些分兩次讀出的Y01塊、Y23塊的亮度分量。
圖25A示出了Y01塊按橫17象素×縱9象素讀出時(shí)怎樣存儲(chǔ)亮度分量,圖25B示出了Y23塊按橫17象素×縱8象素讀出時(shí)怎樣存儲(chǔ)亮度分量。
在圖25A中,可知緩沖器A12的內(nèi)部區(qū)域被由Y01塊中包括的橫17象素×縱9象素填滿,但如果讀出Y23塊,則在圖25A中,Y01塊的亮度分量所占的區(qū)域中的橫17象素×縱8象素的部分按照Y23塊中包括的橫17象素×縱8象素的亮度分量書寫。可是,Y01塊是橫17象素×縱9象素,包括比Y23塊多出一橫行部分的亮度分量,所以第九行的Y01(0,8)Y01(1,8)Y01(2,8)Y01(3,8)…Y01(14,8)Y01(15,8)Y01(16,8)不從Y23塊書寫,而留在緩沖器A12內(nèi)。之所以這樣將第九行的一行部分的亮度分量留在緩沖器A12內(nèi),是因?yàn)槔门c該第九行的象素的平均值生成Y23塊的象素中行地址的象素的亮度分量Y23(0,0)Y23(1,0)Y23(2,0)Y23(3,0)…Y23(14,0)Y23(15,0)Y23(16,0)。
(第1.7.2章 存儲(chǔ)Y02塊時(shí)的緩沖器A12的內(nèi)部圖象)已說明過亮度塊被分成Y02塊和Y13塊這樣兩次從存儲(chǔ)器模塊3讀出,而現(xiàn)在參照?qǐng)D26A及圖26B說明怎樣存儲(chǔ)這些分兩次讀出的Y02塊、Y13塊的亮度分量。
圖26A示出了Y02塊按橫9象素×縱17象素讀出時(shí)怎樣存儲(chǔ)亮度分量,圖26B示出了Y13塊按橫8象素×縱17象素讀出時(shí)怎樣存儲(chǔ)亮度分量。
在圖26A中,可知緩沖器A12的內(nèi)部區(qū)域被Y02塊中包括的橫9象素×縱17象素填滿,但如果讀出Y13塊,則在圖26A中,緩沖器A12內(nèi)的區(qū)域中橫8象素×縱17象素的部分按照Y13塊中包括的橫8象素×縱17象素的亮度分量書寫。可是,Y02塊是橫9象素×縱17象素,包括比Y13塊多出一縱列部分的亮度分量,所以第九列的Y02(8,0)Y02(8,1)Y02(8,2)Y02(8,3)…Y02(8,14)Y02(8,15)Y02(8,16)不書寫,而留在緩沖器A12內(nèi)。之所以這樣將第九列的一列部分的亮度分量留在緩沖器A12內(nèi),是因?yàn)槔门c該第九列的象素的平均值生成第二次讀出的Y13塊的象素中第0列的象素的亮度分量Y13(0,0)Y13(0,1)Y13(0,2)Y13(0,3)…Y13(0,14)Y13(0,15)Y13(0,16)。
(第1.8章 讀出地址生成部14的概要)讀出地址生成部14算出成為半貝爾內(nèi)插部15進(jìn)行的半貝爾內(nèi)插對(duì)象的亮度分量在緩沖器A12中的(X,Y)坐標(biāo),并指示給欲輸出該(X,Y)的亮度分量及色差分量的緩沖器A12。
(第1.8.1章 讀出地址生成部14的內(nèi)部結(jié)構(gòu))讀出地址生成部14的內(nèi)部結(jié)構(gòu)示于圖4C。讀出地址生成部14由X計(jì)數(shù)器91、Y計(jì)數(shù)器92、MOD運(yùn)算器93及MOD運(yùn)算器94構(gòu)成。
X計(jì)數(shù)器91計(jì)數(shù)從0到全部列數(shù)z的值,將該計(jì)數(shù)值作為緩沖器A12內(nèi)的X坐標(biāo)輸出給緩沖器A12。該計(jì)數(shù)值的上限設(shè)定為全部列數(shù)z,所以由X計(jì)數(shù)器91作為計(jì)數(shù)值輸出的數(shù)值范圍為0~全部列數(shù)z-1。
如果X計(jì)數(shù)器91計(jì)數(shù)了上限值即全部列數(shù)z,則Y計(jì)數(shù)器92將該計(jì)數(shù)值加1后,將計(jì)數(shù)值作為緩沖器A12內(nèi)的Y坐標(biāo)輸出給緩沖器A12。該計(jì)數(shù)值的上限設(shè)定為全部行數(shù)v,所以由Y計(jì)數(shù)器92作為計(jì)數(shù)值輸出的數(shù)值范圍為0~全部行數(shù)v-1。
在需要橫向半貝爾內(nèi)插的情況下,MOD運(yùn)算器93將X計(jì)數(shù)器91作為X坐標(biāo)輸出的計(jì)數(shù)值加1,并將用全部列數(shù)z除上述加1后的所得值的余數(shù)輸出給緩沖器A12。
在需要縱向半貝爾內(nèi)插的情況下,MOD運(yùn)算器94將Y計(jì)數(shù)器92作為X坐標(biāo)輸出的計(jì)數(shù)值加1,并將用全部行數(shù)v除上述加1后的所得值的余數(shù)輸出給緩沖器A12。
這樣一來,輸出由讀出地址生成部90及X計(jì)數(shù)器91的計(jì)數(shù)值構(gòu)成的坐標(biāo)(X,Y),在只需要橫向半貝爾內(nèi)插的情況下,由MOD運(yùn)算器93的輸出及X計(jì)數(shù)器91的計(jì)數(shù)值構(gòu)成的(mod[(X+1)/z],Y)被輸出給緩沖器A12。在只需要縱向半貝爾內(nèi)插的情況下,由MOD運(yùn)算器94的輸出及X計(jì)數(shù)器91的計(jì)數(shù)值構(gòu)成的(X,mod[(Y+1)/v])被輸出給緩沖器A12。
在需要縱向及橫向半貝爾內(nèi)插的情況下,由MOD運(yùn)算器93的輸出及MOD運(yùn)算器94的計(jì)數(shù)值構(gòu)成的(mod[(X+1)/z],mod[(Y+1)/v])被輸出給緩沖器A12。
(第1.9章 半貝爾內(nèi)插部15的概要)如果緩沖器A12輸出由X計(jì)數(shù)器91、Y計(jì)數(shù)器92、MOD運(yùn)算器93、MOD運(yùn)算器94指示的計(jì)數(shù)值構(gòu)成的(X,Y)、(mod[(X+1)/z],Y)、(x,mod[(Y+1)/V])、(mod[(X+1)/z]、mod[(Y+1)/v])的亮度分量及色差分量,則半貝爾內(nèi)插部15便對(duì)所輸出的亮度分量和色差分量進(jìn)行縱向半貝爾內(nèi)插、橫向半貝爾內(nèi)插、縱向及橫向半貝爾內(nèi)插,將其結(jié)果輸出給欲與緩沖器D25輸出的差分圖象的亮度分量及色差分量進(jìn)行混合的象素混合部29。
亮度分量及色差分量按照以下8種中的某一種形式被讀出橫16象素×縱8象素、橫17象素×縱8象素、橫16象素×縱9象素、橫17象素×縱9象素、橫8象素×縱16象素、橫9象素×縱16象素、橫8象素×縱17象素、橫9象素×縱17象素。
這里橫17象素×縱8象素、橫16象素×縱9象素、橫17象素×縱9象素的亮度分量從讀出地址生成部14被讀出后,半貝爾內(nèi)插部15進(jìn)行橫16象素×縱8象素的半貝爾內(nèi)插,將由半貝爾內(nèi)插部15進(jìn)行的橫16象素×縱8象素的半貝爾內(nèi)插結(jié)果寫入緩沖器C20。
另外,橫9象素×縱16象素、橫8象素×縱17象素、橫9象素×縱17象素的亮度分量從讀出地址生成部14被讀出后,半貝爾內(nèi)插部15進(jìn)行橫8象素×縱16象素的半貝爾內(nèi)插,將由半貝爾內(nèi)插部15進(jìn)行的橫8象素×縱16象素的半貝爾內(nèi)插結(jié)果寫入緩沖器C20。
(第1.9.1章 全體圖象譯碼設(shè)備中的半貝爾內(nèi)插部15的位置分配)
在圖6A所示的時(shí)間圖中的時(shí)刻t41,如果過去方向的參照?qǐng)D象的Y01塊被讀到緩沖器A12中,則半貝爾內(nèi)插部15便在時(shí)刻t71對(duì)被讀出的Y01塊進(jìn)行半貝爾內(nèi)插。在時(shí)刻t42,如果過去方向的參照?qǐng)D象的Y01塊被讀到緩沖器B16中,則半貝爾內(nèi)插部15便在時(shí)刻t72對(duì)被讀出的Y01塊進(jìn)行半貝爾內(nèi)插。在時(shí)刻t43,如果未來方向的參照?qǐng)D象的Y23塊被讀到緩沖器A12中,則半貝爾內(nèi)插部15便在時(shí)刻t73對(duì)被讀出的Y23塊進(jìn)行半貝爾內(nèi)插。
(第1.9.1章 半貝爾內(nèi)插部15的內(nèi)部結(jié)構(gòu))參照?qǐng)D4C說明半貝爾內(nèi)插部15的內(nèi)部結(jié)構(gòu)。半貝爾內(nèi)插部15由選擇器104、加法器95、除法器96、選擇器97、加法器98、除法器99、選擇器100、選擇器101、加法器102、除法器103構(gòu)成。
在需要橫向的半貝爾內(nèi)插的情況下,如果緩沖器A12輸出的(mod[(X+1)/z],Y)中存儲(chǔ)的亮度分量,則選擇器104將它輸出給加法器95。在不需要橫向的半貝爾內(nèi)插的情況下,如果緩沖器A12只輸出(X,Y)中存儲(chǔ)的亮度分量,便將它輸出給加法器95。
在需要橫向的半貝爾內(nèi)插的情況下,加法器95將緩沖器A12輸出的(mod[(X+1)/z],Y)中的亮度分量和緩沖器A12輸出的(X,Y)中的亮度分量相加。在不需要半貝爾內(nèi)插的情況下,由于從選擇器104輸出(X,Y)中的亮度分量,所以將(X,Y)的亮度分量之間相加后,將(X,Y)的亮度分量的倍數(shù)輸出給除法器96。
除法器96將加法器95輸出的相加結(jié)果除以2。在需要橫向的半貝爾內(nèi)插的情況下,除法器96通過將加法器95的計(jì)算結(jié)果除以2,算出(X,Y)和(mod[(X+1)/z],Y)的亮度分量的平均值。在不需要橫向的半貝爾內(nèi)插的情況下,通過將加法器95輸出的(X,Y)的亮度分量的倍數(shù)除以2,直接輸出(X,Y)的亮度分量。
在只需要縱向的半貝爾內(nèi)插的情況下,如果緩沖器A12輸出(X,mod[(Y+1)/v])中存儲(chǔ)的亮度分量,則選擇器97將它輸出給加法器98。在需要縱向及橫向的半貝爾內(nèi)插的情況下,如果緩沖器A12輸出(mod[(X+1)/z],mod[(Y+1)/v])中存儲(chǔ)的亮度分量,便將它輸出給加法器98。
在需要縱向及橫向的半貝爾內(nèi)插的情況下,加法器98將緩沖器A12輸出的(X,mod[(Y+1)/v])中的亮度分量和選擇器97輸出的(mod[(X+1)/z],mod[(Y+1)/v])中的亮度分量相加。在只需要縱向的半貝爾內(nèi)插的情況下,將緩沖器A12輸出的(X,mod[(Y+1)/v])中的亮度分量和緩沖器A12輸出的(X,mod[(Y+1)/v])中的亮度分量相加。
除法器99將加法器98輸出的相加結(jié)果除以2。在需要縱向及橫向的半貝爾內(nèi)插的情況下,除法器99通過將加法器98的計(jì)算結(jié)果除以2,算出(X,mod[(Y+1)/v])和(mod[(X+1)/z],mod[(Y+1)/v])的亮度分量的平均值。在只需要橫向的半貝爾內(nèi)插的情況下,通過將加法器95輸出的(X,mod[(Y+1)/v])的亮度分量的倍數(shù)除以2,直接輸出(X,mod[(Y+1)/v])的亮度分量。
在縱向的半貝爾內(nèi)插及橫向的半貝爾內(nèi)插都不需要的情況下,選擇器100及選擇器101將由除法器96除得的結(jié)果輸出給欲進(jìn)行輸出的加法器102。
在只需要橫向的半貝爾內(nèi)插的情況下,選擇器100及選擇器101將由加法器95及除法器96獲得的橫向的半貝爾內(nèi)插結(jié)果輸出給加法器102。
在只需要縱向的半貝爾內(nèi)插的情況下,選擇器100及選擇器101將加法器95及除法器96直接輸出的(X,Y)和加法器98及除法器99直接輸出的(X,mod[(Y+1)/v])在加法器102中進(jìn)行混合。
在需要縱向及橫向的半貝爾內(nèi)插的情況下,將加法器95及除法器96輸出的(X,Y)和(mod[(X+1)/z],Y)的平均值、以及加法器98及除法器99輸出的(X,mod[(Y+1)/v])及(mod[(X+1)/z],mod[(Y+1)/v])的平均值在加法器102中進(jìn)行混合。
加法器102混合選擇器100及選擇器101輸出的值。
除法器103將加法器98輸出的相加結(jié)果除以2。在縱向的半貝爾內(nèi)插、橫向的半貝爾內(nèi)插都不需要的情況下,再次直接輸出除法器96直接輸出的值。
在只需要縱向的半貝爾內(nèi)插的情況下,將加法器95及除法器96直接輸出的(X,Y)和加法器98及除法器99直接輸出的(X,mod[(Y+1)/v])相加的結(jié)果除以2,獲得縱向的半貝爾內(nèi)插結(jié)果。
在只需要橫向的半貝爾內(nèi)插的情況下,直接輸出由加法器95的加得結(jié)果和除法器96的除得結(jié)果獲得的橫向的半貝爾內(nèi)插運(yùn)算結(jié)果。
在需要縱向及橫向的半貝爾內(nèi)插的情況下,將加法器95及除法器96輸出的(X,Y)和(mod[(X+1)/z],Y)的平均值、以及加法器98及除法器99輸出的(X,mod[(Y+1)/v])及(mod[(X+1)/z],mod[(Y+1)/v])的平均值相加后除以2,獲得縱向及橫向的半貝爾內(nèi)插結(jié)果。
(第1.10章 緩沖器B16的概要)緩沖器B16與緩沖器A12的結(jié)構(gòu)相同,在將來方向的參照?qǐng)D象被讀給緩沖器A12時(shí),如果從存儲(chǔ)器存取部11將過去方向的參照?qǐng)D象讀給每個(gè)Y01塊、Y23塊、CbCr塊、Y02塊、Y13塊,緩沖器B16便將它們保存起來。而且,如果獲得了對(duì)所保存的塊的半貝爾內(nèi)插結(jié)果及混合結(jié)果,便保存該結(jié)果,并輸出給存儲(chǔ)器存取部11。
(第1.10.1章 全部圖象譯碼設(shè)備中的緩沖器B16的位置分配)在圖6A所示的時(shí)間圖中的時(shí)刻t42從存儲(chǔ)器存取部11讀出的Y01_b(r)塊,在時(shí)刻t45讀出的Y23_b(r),在時(shí)刻t48讀出的CbCr_b(r),全部被保存在緩沖器B16中。
在時(shí)刻t82如果象素混合部29算出混合結(jié)果,便保存該結(jié)果,并輸出給SDRAM3。如果在時(shí)刻t84、時(shí)刻t86象素混合部29算出混合結(jié)果,便保存該結(jié)果,并輸出給SDRAM3。
(第1.11章 緩沖器B16的周圍結(jié)構(gòu))寫入地址生成部17與寫入地址生成部13的結(jié)構(gòu)相同,如果從SDRAM32讀出Y01塊、Y23塊、CbCr塊,便生成應(yīng)存儲(chǔ)這些亮度分量及色差分量的寫入處坐標(biāo),輸出給緩沖器B16。
讀出地址生成部18與讀出地址生成部14的結(jié)構(gòu)相同,將應(yīng)與差分混合的象素的X坐標(biāo)及Y坐標(biāo)的讀出處坐標(biāo)輸出給緩沖器B16。
半貝爾內(nèi)插部19與半貝爾內(nèi)插部15的結(jié)構(gòu)相同,用于對(duì)緩沖器B16中存儲(chǔ)的Y01塊、Y23塊、CbCr塊進(jìn)行縱向的半貝爾內(nèi)插、橫向的半貝爾內(nèi)插、縱向及橫向的半貝爾內(nèi)插。
(第1.12章 緩沖器C20的概要)通過半貝爾內(nèi)插部15進(jìn)行半貝爾內(nèi)插,如果輸出橫16象素×縱8象素、橫8象素×縱16象素的亮度分量及色差分量,緩沖器C20便根據(jù)讀寫地址生成部22生成的X坐標(biāo)、Y坐標(biāo),將它們寫入內(nèi)部區(qū)域。而且,如果應(yīng)與其混合的差分被輸出給緩沖器D25,便根據(jù)讀寫地址生成部22指示的X坐標(biāo)及Y坐標(biāo),將欲與該差分混合、尚被保存著的半貝爾內(nèi)插結(jié)果輸出給象素混合部29。
(第1.13章 讀寫地址生成部22的內(nèi)部結(jié)構(gòu))圖24B示出了讀寫地址生成部22的內(nèi)部結(jié)構(gòu)。讀寫地址生成部22由X計(jì)數(shù)器71、選擇器72、加法器73、乘法器74、選擇器75、加法器76、選擇器77、Y計(jì)數(shù)器78、選擇器79及加法器80構(gòu)成。
X計(jì)數(shù)器71計(jì)數(shù)0~7的數(shù)值。每次從SDRAM有效地讀出亮度分量及色差分量時(shí)進(jìn)行該計(jì)數(shù)值的計(jì)數(shù)。如果計(jì)數(shù)值達(dá)到了上限值7,便將已達(dá)到的意思通知Y計(jì)數(shù)器78。
選擇器72將讀出處的開始坐標(biāo)輸出給加法器73。在這里對(duì)Y01塊、Y23塊、Y02塊、Y13塊、CbCr塊進(jìn)行半貝爾內(nèi)插,而且如果下一次應(yīng)進(jìn)行混合的差分是Y0塊、Y1塊、Y2塊、Y3塊、Cb塊、Cr塊的話,將“0”輸出給加法器73作為讀出處及寫入處的開始坐標(biāo)X。如果對(duì)Y01塊、Y23塊進(jìn)行半貝爾內(nèi)插,且下一次應(yīng)進(jìn)行混合的差分是Y1塊、Y3塊的話,將“7”輸出給加法器73作為讀出處及寫入處的開始坐標(biāo)X。在后一種情況下,之所以輸出“7”作為讀出處及寫入處的開始坐標(biāo)X,是因?yàn)樽鳛閰⒄請(qǐng)D象讀出的Y1塊、Y3塊、Y01塊、Y23塊在被讀出的狀態(tài)下位于從X坐標(biāo)7到X坐標(biāo)15的范圍內(nèi)。
加法器73將選擇器72有選擇地輸出的讀出處及寫入處的X坐標(biāo)與X計(jì)數(shù)器71的計(jì)數(shù)值相加。
乘法器74將乘法器74的計(jì)數(shù)值乘以2。
如果下一個(gè)應(yīng)混合的差分是Cb塊,選擇器75便將“0”輸出給加法器76,作為讀出處及寫入處的開始坐標(biāo)X。如果下一個(gè)應(yīng)混合的差分是Cr塊,便將“1”輸出給加法器76,作為讀出處及寫入處的開始坐標(biāo)X。乘法器74之所以將計(jì)數(shù)值乘以2,選擇器75交替地輸出“0”、“1”,是因?yàn)樗{(lán)色差分量及紅色差分量在CbCr塊中被交替地存儲(chǔ)在偶數(shù)地址、奇數(shù)地址處。
加法器76將乘法器74進(jìn)行的X計(jì)數(shù)器71的計(jì)數(shù)值和整數(shù)值“2”的乘算的結(jié)果與選擇器75輸出的開始坐標(biāo)X相加。
如果下一個(gè)應(yīng)混合的差分是Cb塊及Cr塊,選擇器77便輸出加法器76的輸出值作為X坐標(biāo),如果下一個(gè)應(yīng)混合的差分是Y0塊、Y1塊、Y2塊、Y3塊,便輸出加法器73的輸出值作為X坐標(biāo)。
X計(jì)數(shù)器71每當(dāng)計(jì)數(shù)到上限時(shí),Y計(jì)數(shù)器78計(jì)數(shù)0~7的數(shù)值。每次從SDRAM有效地讀出亮度分量及色差分量時(shí)進(jìn)行該計(jì)數(shù)值的計(jì)數(shù)。
選擇器79將讀出處及寫入處的開始坐標(biāo)輸出給加法器73。在這里對(duì)Y01塊、Y23塊、Y02塊、Y13塊、以及Cb、Cr塊進(jìn)行半貝爾內(nèi)插,如果下一次應(yīng)進(jìn)行混合的差分是Y0塊、Y1塊、Y2塊、Y3塊、Cb塊、Cr塊的話,將“0”輸出給加法器73作為讀出處及寫入處的開始坐標(biāo)Y。如果對(duì)Y02塊、Y13塊進(jìn)行半貝爾內(nèi)插,且下一次應(yīng)進(jìn)行混合的差分是Y2塊、Y3塊的話,將“7”輸出給加法器73作為讀出處及寫入處的開始坐標(biāo)Y。在后一種情況下,之所以輸出“7”作為讀出處及寫入處的開始坐標(biāo),是因?yàn)樽鳛閰⒄請(qǐng)D象讀出的Y2塊、Y3塊、在作為Y02塊、Y13塊被讀出的狀態(tài)下位于從Y坐標(biāo)7到Y(jié)坐標(biāo)15的范圍內(nèi)。
加法器80將選擇器79有選擇地輸出的讀出處及寫入處的X坐標(biāo)與Y計(jì)數(shù)器78的計(jì)數(shù)值相加,作為Y坐標(biāo)輸出。
(第1.14章 緩沖器D25的概要)緩沖器D25存儲(chǔ)通過緩沖器201從象素運(yùn)算部7輸送的差分Y0塊、Y1塊、Y2塊、Y3塊、Cb塊、Cr塊,如果半貝爾內(nèi)插部15對(duì)緩沖器A12及緩沖器B16中存儲(chǔ)的Y01塊、Y23塊、CbCr塊進(jìn)行半貝爾內(nèi)插,便根據(jù)讀出地址生成部26指示的X坐標(biāo)及Y坐標(biāo),將尚存儲(chǔ)著的構(gòu)成差分圖象的橫8象素×縱8象素的亮度分量及色差分量輸出給象素混合部29。
(第1.15章 讀出地址生成部26的內(nèi)部結(jié)構(gòu))讀出地址生成部26由X計(jì)數(shù)器27及Y計(jì)數(shù)器28構(gòu)成,如果從緩沖器A12輸出亮度分量,并開始對(duì)它們進(jìn)行半貝爾內(nèi)插,便將欲讀出緩沖器D25中存儲(chǔ)的差分的讀出處坐標(biāo)輸出給緩沖器C20。
如果從SDRAM31讀出參照?qǐng)D象中的亮度塊及色差塊,X計(jì)數(shù)器27便在0~7的范圍內(nèi)增加X坐標(biāo)。
如果從SDRAM31讀出參照?qǐng)D象中的亮度塊及色差塊,Y計(jì)數(shù)器28便在0~7的范圍內(nèi)增加Y坐標(biāo)。
(第1.16章 混合部29的概要)混合部29對(duì)緩沖器D25中新存儲(chǔ)的差分、以及由半貝爾內(nèi)插部15和半貝爾內(nèi)插部19進(jìn)行半貝爾內(nèi)插后存儲(chǔ)在緩沖器C20中的半貝爾內(nèi)插結(jié)果進(jìn)行混合,并輸出給SDRAM30。
如果差分是P圖象、且由半貝爾內(nèi)插部15對(duì)過去方向的參照?qǐng)D象進(jìn)行半貝爾內(nèi)插后存儲(chǔ)在緩沖器C20中,象素混合部29便對(duì)存儲(chǔ)在緩沖器D25中的差分和由半貝爾內(nèi)插部15進(jìn)行過半貝爾內(nèi)插的Y01塊、Y23塊、CbCr塊、Y02塊、Y13塊進(jìn)行混合,并輸出給緩沖器B16。
如果差分是B圖象、且由半貝爾內(nèi)插部15對(duì)將來方向的參照?qǐng)D象進(jìn)行半貝爾內(nèi)插后存儲(chǔ)在緩沖器C20中,象素混合部29便對(duì)存儲(chǔ)在緩沖器D25中的差分和由半貝爾內(nèi)插部15進(jìn)行過半貝爾內(nèi)插的參照?qǐng)D象進(jìn)行混合,并輸出給緩沖器C。如果讀出過去方向的參照?qǐng)D象進(jìn)行半貝爾內(nèi)插后存儲(chǔ)在緩沖器C20中,便對(duì)緩沖器C保存的前一次的混合結(jié)果和過去方向的參照?qǐng)D象進(jìn)行混合,將其結(jié)果輸出給選擇器30。
(第1.16.1章 全體圖象譯碼設(shè)備中的混合部29的位置分配)在圖6A所示的時(shí)間圖中的時(shí)刻t71,如果半貝爾內(nèi)插部15進(jìn)行半貝爾內(nèi)插,象素混合部29便在時(shí)刻t81對(duì)半貝爾內(nèi)插部15的半貝爾內(nèi)插結(jié)果和在時(shí)刻t61保存的Y0塊進(jìn)行混合。
如果在時(shí)刻t72,半貝爾內(nèi)插部15進(jìn)行過半貝爾內(nèi)插,象素混合部29便在時(shí)刻t82對(duì)半貝爾內(nèi)插部15的半貝爾內(nèi)插結(jié)果和在時(shí)刻t62保存的Y0塊進(jìn)行混合。將其結(jié)果輸出給緩沖器B16。
如果象素混合部29進(jìn)行緩沖器C20中存儲(chǔ)的半貝爾內(nèi)插結(jié)果和緩沖器D25中存儲(chǔ)的差分的混合,選擇器30便將欲把該結(jié)果存儲(chǔ)在緩沖器C中的象素混合部29的輸出處切換成緩沖器C,如果象素混合部29進(jìn)行緩沖器C中存儲(chǔ)的混合結(jié)果和緩沖器D25中存儲(chǔ)的差分的混合,選擇器30便將欲把該結(jié)果存儲(chǔ)在緩沖器B16中的象素混合部29的輸出處切換成緩沖器B16。
(第1.17章 半貝爾內(nèi)插時(shí)的半貝爾內(nèi)插部15、混合部29的工作情況)參照?qǐng)D27說明讀入由橫17象素×縱9象素構(gòu)成的Y01塊時(shí)半貝爾內(nèi)插部15的處理情況。
在階段w0、X計(jì)數(shù)器91輸出X=0、Y計(jì)數(shù)器92輸出Y=0的情況下,由MOD運(yùn)算器93輸出X=1(=mod[(1+0)/17]),由MOD運(yùn)算器94輸出Y=1(=mod[(1+0)/9])。其結(jié)果,從緩沖器A12輸出Y01(0,0)Y01(1,0)Y01(0,1)Y01(1,1)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,X計(jì)數(shù)器27及Y計(jì)數(shù)器28將X坐標(biāo)=0、Y坐標(biāo)=0作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的讀出處地址輸出給緩沖器D25,由象素混合部29進(jìn)行差分Y01(0,0)的亮度分量和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將X坐標(biāo)=0、Y坐標(biāo)=0作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為Y01(0,0)的亮度分量存入緩沖器C。
在階段w1、X計(jì)數(shù)器91輸出X=1、Y計(jì)數(shù)器92輸出Y=0的情況下,由MOD運(yùn)算器93輸出X=2(=mod[(1+1)/17]),由MOD運(yùn)算器94輸出Y=1(=mod[(1+0)/9])。其結(jié)果,從緩沖器A12輸出Y01(1,0)Y01(2,0)Y01(1,1)Y01(2,1)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y01(1,0)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
在階段w2、X計(jì)數(shù)器91輸出X=2、Y計(jì)數(shù)器92輸出Y=0的情況下,由MOD運(yùn)算器93輸出X=3(=mod[(1+2)/17]),由MOD運(yùn)算器94輸出Y=1(=mod[(1+0)/9])。其結(jié)果,從緩沖器A12輸出Y01(2,0)Y01(3,0)Y01(2,1)Y01(3,1)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y01(2,0)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
在階段w3、X計(jì)數(shù)器91輸出X=3、Y計(jì)數(shù)器92輸出Y=0的情況下,由MOD運(yùn)算器93輸出X=4(=mod[(1+3)/17]),由MOD運(yùn)算器94輸出Y=1(=mod[(1+0)/9])。其結(jié)果,從緩沖器A12輸出Y01(3,0)Y01(4,0)Y01(3,1)Y01(4,1)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y01(3,0)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
在階段w4、X計(jì)數(shù)器91輸出X=4、Y計(jì)數(shù)器92輸出Y=0的情況下,由MOD運(yùn)算器93輸出X=5(=mod[(1+4)/17]),由MOD運(yùn)算器94輸出Y=1(=mod[(1+0)/9])。其結(jié)果,從緩沖器A12輸出Y01(4,0)Y01(5,0)Y01(4,1)Y01(5,1)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y01(4,0)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
反復(fù)進(jìn)行以上的處理,X計(jì)數(shù)器91作為計(jì)數(shù)值輸出X=5、6、7、8、9、10、11、12、13。
在階段w14、X計(jì)數(shù)器91輸出X=14、Y計(jì)數(shù)器92輸出Y=0的情況下,由MOD運(yùn)算器93輸出X=15(=mod[(1+14)/17]),由MOD運(yùn)算器94輸出Y=1(=mod[(1+0)/9])。其結(jié)果,從緩沖器A12輸出Y01(14,0)Y01(15,0)Y01(14,1)Y01(15,1)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y01(14,0)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
在階段w15、X計(jì)數(shù)器91輸出X=15、Y計(jì)數(shù)器92輸出Y=0的情況下,由MOD運(yùn)算器93輸出X=16(=mod[(1+15)/17]),由MOD運(yùn)算器94輸出Y=1(=mod[(1+0)/9])。其結(jié)果,從緩沖器A12輸出Y01(15,0)Y01(16,0)Y01(15,1)Y01(16,1)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y01(15,0)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
反復(fù)進(jìn)行以上的處理,Y計(jì)數(shù)器92作為計(jì)數(shù)值輸出Y=1、2、3、4、5、6、7。
在階段w16、X計(jì)數(shù)器91輸出X=14、Y計(jì)數(shù)器92輸出Y=7的情況下,由MOD運(yùn)算器93輸出X=15(=mod[(1+14)/17]),由MOD運(yùn)算器94輸出Y=8(=mod[(1+7)/9])。其結(jié)果,從緩沖器A12輸出Y01(14,7)Y01(15,7)Y01(14,8)Y01(15,8)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y01(14,7)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
在階段w17、X計(jì)數(shù)器91輸出X=15、Y計(jì)數(shù)器92輸出Y=7的情況下,由MOD運(yùn)算器93輸出X=16(=mod[(1+15)/17]),由MOD運(yùn)算器94輸出Y=0(=mod[(1+7)/9])。其結(jié)果,從緩沖器A12輸出Y01(15,7)Y01(16,7)Y01(15,8)Y01(16,8)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y01(15,7)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
如果完成了對(duì)橫17象素×縱8象素的半貝爾內(nèi)插,橫17象素×縱8象素的Y23塊便被存入緩沖器A12。另外,由于Y01塊以橫17象素×縱8象素的大小被讀出,所以不書寫第十七行的亮度分量,使其呈存留狀態(tài)。
在階段w18、X計(jì)數(shù)器91輸出X=12、Y計(jì)數(shù)器92輸出Y=8的情況下,由MOD運(yùn)算器93輸出X=13(=mod[(1+12)/17]),由MOD運(yùn)算器94輸出Y=0(=mod[(1+8)/9])。其結(jié)果,從緩沖器A12輸出Y01(12,8)Y01(13,8)Y01(12,0)Y01(13,0)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y23(12,0)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)(12,0)的亮度分量被存入緩沖器C。
在階段w19、X計(jì)數(shù)器91輸出X=13、Y計(jì)數(shù)器92輸出Y=8的情況下,由MOD運(yùn)算器93輸出X=14(=mod[(1+13)/17]),由MOD運(yùn)算器94輸出Y=0(=mod[(1+8)/9])。其結(jié)果,從緩沖器A12輸出Y01(13,8)Y01(14,8)Y01(13,0)Y01(14,0)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y23(13,0)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)(13,0)的亮度分量被存入緩沖器C。
在階段w20、X計(jì)數(shù)器91輸出X=14、Y計(jì)數(shù)器92輸出Y=8的情況下,由MOD運(yùn)算器93輸出X=15(=mod[(1+14)/17]),由MOD運(yùn)算器94輸出Y=0(=mod[(1+8)/9])。其結(jié)果,從緩沖器A12輸出Y01(14,8)Y01(15,8)Y01(14,0)Y01(15,0)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y23(14,0)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)(14,0)的亮度分量被存入緩沖器C。
在階段w21、X計(jì)數(shù)器91輸出X=15、Y計(jì)數(shù)器92輸出Y=8的情況下,由MOD運(yùn)算器93輸出X=16(=mod[(1+15)/17]),由MOD運(yùn)算器94輸出Y=0(=mod[(1+8)/9])。其結(jié)果,從緩沖器A12輸出Y01(15,8)Y01(16,8)Y01(15,0)Y01(16,0)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y23(15,0)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)(15,0)的亮度分量被存入緩沖器C。
在階段w22、X計(jì)數(shù)器91輸出X=12、Y計(jì)數(shù)器92輸出Y=0的情況下,由MOD運(yùn)算器93輸出X=13(=mod[(1+12)/17]),由MOD運(yùn)算器94輸出Y=1(=mod[(1+0)/8])。其結(jié)果,從緩沖器A12輸出Y23(12,0)Y23(13,0)Y23(12,1)Y23(13,1)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y23(12,1)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
在階段w23、X計(jì)數(shù)器91輸出X=13、Y計(jì)數(shù)器92輸出Y=0的情況下,由MOD運(yùn)算器93輸出X=14(=mod[(1+13)/17]),由MOD運(yùn)算器94輸出Y=1(=mod[(1+0)/8])。其結(jié)果,從緩沖器A12輸出Y23(13,0)Y23(14,0)Y23(13,1)Y23(14,1)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y23(13,1)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
在階段w24、X計(jì)數(shù)器91輸出X=14、Y計(jì)數(shù)器92輸出Y=0的情況下,由MOD運(yùn)算器93輸出X=15(=mod[(1+14)/17]),由MOD運(yùn)算器94輸出Y=1(=mod[(1+0)/8])。其結(jié)果,從緩沖器A12輸出Y23(14,0)Y23(15,0)Y23(14,1)Y23(15,1)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y23(14,1)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
在階段w25、X計(jì)數(shù)器91輸出X=12、Y計(jì)數(shù)器92輸出Y=6的情況下,由MOD運(yùn)算器93輸出X=13(=mod[(1+12)/17]),由MOD運(yùn)算器94輸出Y=7(=mod[(1+6)/8])。其結(jié)果,從緩沖器A12輸出Y23(12,6)Y23(13,6)Y23(12,7)Y23(13,7)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y23(12,7)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
在階段w26、X計(jì)數(shù)器91輸出X=13、Y計(jì)數(shù)器92輸出Y=6的情況下,由MOD運(yùn)算器93輸出X=14(=mod[(1+13)/17]),由MOD運(yùn)算器94輸出Y=7(=mod[(1+6)/8])。其結(jié)果,從緩沖器A12輸出Y23(13,6)Y23(14,6)Y23(13,7)Y23(14,7)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y23(13,7)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
在階段w27、X計(jì)數(shù)器91輸出X=14、Y計(jì)數(shù)器92輸出Y=6的情況下,由MOD運(yùn)算器93輸出X=15(=mod[(1+14)/17]),由MOD運(yùn)算器94輸出Y=7(=mod[(1+6)/8])。其結(jié)果,從緩沖器A12輸出Y23(14,6)Y23(15,6)Y23(14,7)Y23(15,7)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y23(14,7)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
在階段w28、X計(jì)數(shù)器91輸出X=15、Y計(jì)數(shù)器92輸出Y=6的情況下,由MOD運(yùn)算器93輸出X=16(=mod[(1+15)/17]),由MOD運(yùn)算器94輸出Y=7(=mod[(1+6)/8])。其結(jié)果,從緩沖器A12輸出Y23(15,6)Y23(16,6)Y23(15,7)Y23(16,7)的亮度分量,由半貝爾內(nèi)插部15計(jì)算這些值的平均值。另一方面,根據(jù)X計(jì)數(shù)器27及Y計(jì)數(shù)器28的計(jì)數(shù)值,讀出差分圖象內(nèi)的Y23(15,7)的亮度分量,由象素混合部29進(jìn)行差分Y0和半貝爾內(nèi)插部15的運(yùn)算結(jié)果的加法運(yùn)算。X計(jì)數(shù)器27及Y計(jì)數(shù)器28將相同的X坐標(biāo)、Y坐標(biāo)作為半貝爾內(nèi)插部15的運(yùn)算結(jié)果的寫入處地址輸出給緩沖器D25,象素混合部29的加得結(jié)果作為相同的坐標(biāo)的亮度分量被存入緩沖器C。
如上通過半貝爾內(nèi)插部15進(jìn)行的半貝爾內(nèi)插,使用本身的亮度分量、位于其橫向右側(cè)的亮度分量、位于下側(cè)的亮度分量和位于右斜下側(cè)的亮度分量的平均值,生成Y01塊中包括的亮度分量。用本身的亮度分量、位于其橫向右側(cè)的亮度分量、位于正上側(cè)的亮度分量和位于右斜上側(cè)的亮度分量的平均值,生成Y23塊中包括的亮度分量。
(第1.18章 縱向及橫向的半貝爾內(nèi)插時(shí)的生成方式的匯總)圖28A示出了在縱向及橫向的半貝爾內(nèi)插時(shí),用哪個(gè)象素的平均值生成Y01塊中包括的亮度分量。
帶影線的Y01塊內(nèi)的(0,0)亮度分量是用包圍在與(0,0)為同一框內(nèi)的位于其橫向右側(cè)的亮度分量Y(1,0)、位于下側(cè)的亮度分量Y(0,1)和位于右斜下側(cè)的亮度分量Y(1,1)的平均值生成的。Y01塊中包括的亮度分量Y(2,1)是用本身的亮度分量Y(2,1)、位于其橫向右側(cè)的亮度分量Y(3,1)、位于下側(cè)的亮度分量Y(2,2)和位于右斜下側(cè)的亮度分量Y(3,2)的平均值生成的。
Y23塊內(nèi)的(0,0)亮度分量是用本身的亮度分量、位于其橫向右側(cè)的(1,0)亮度分量、位于正上側(cè)的Y01亮度分量Y(0,8)和位于右斜上側(cè)的Y01亮度分量Y(1,8)的平均值生成的。
Y23塊內(nèi)的(2,1)亮度分量是用本身的亮度分量、位于其橫向右側(cè)的(3,0)亮度分量、位于正上側(cè)的亮度分量Y(2,0)和位于右斜上側(cè)的亮度分量Y(3,0)的平均值生成的。
另一方面,通過由半貝爾內(nèi)插部15進(jìn)行的半貝爾內(nèi)插,Y02塊中包括亮度分量是用本身的亮度分量、位于其橫向右側(cè)的亮度分量、位于下側(cè)的亮度分量和位于右斜下側(cè)的亮度分量的平均值生成的。Y13塊中包括亮度分量是用本身的亮度分量、位于其橫向左側(cè)的亮度分量、位于正下側(cè)的亮度分量和位于左斜下側(cè)的亮度分量的平均值生成的。
圖28B示出了在縱向及橫向的半貝爾內(nèi)插時(shí),用哪個(gè)象素的平均值生成Y02塊中包括的亮度分量。
帶影線的Y02塊內(nèi)的(0,0)亮度分量是用包圍在與(0,0)為同一框內(nèi)的位于其橫向右側(cè)的亮度分量Y(1,0)、位于下側(cè)的亮度分量Y(0,1)和位于右斜下側(cè)的亮度分量Y(1,1)的平均值生成的。Y02塊中包括的亮度分量Y(2,2)是用本身的亮度分量Y(2,2)、位于其橫向右側(cè)的亮度分量Y(3,2)、位于下側(cè)的亮度分量Y(2,3)和位于右斜下側(cè)的亮度分量Y(3,3)的平均值生成的。
Y13塊內(nèi)的(0,0)亮度分量是用本身的亮度分量、位于其橫向左側(cè)的Y02(8,0)亮度分量、位于正下側(cè)的Y02亮度分量Y13(0,1)和位于左斜下側(cè)的Y02亮度分量Y(8,1)的平均值生成的。
Y13塊內(nèi)的(1,2)亮度分量是用本身的亮度分量、位于其橫向左側(cè)的(0,2)亮度分量、位于正下側(cè)的亮度分量Y(1,3)和位于左斜下側(cè)的亮度分量Y(1,3)的平均值生成的。
(第1.19章 設(shè)置選擇器34的意義)選擇器34在能從象素運(yùn)算部7輸出差分以半幀為單位編碼的Y2塊的情況下,形成使緩沖器D25跳躍用的迂回路徑。
這樣形成差分Y0塊的迂回路徑的理由在于在讀出以半幀為單位的差分的情況下的緩沖器A12、緩沖器B16、緩沖器C20、緩沖器D25的處理內(nèi)容與到此為止說明過的處理內(nèi)容有若干不同。圖6B是表示在讀出以半幀為單位的差分的情況下的緩沖器A12、緩沖器B16、緩沖器C20、緩沖器D25的處理內(nèi)容的時(shí)間圖。參照本圖說明緩沖器A12、緩沖器B16、緩沖器C20、緩沖器D25的處理內(nèi)容。
在圖6B中,緩沖器D25在差分以半幀為單位編碼的Y0塊能從象素運(yùn)算部7輸出的情況下,在時(shí)刻g1將其保存起來。而且,如果在時(shí)刻g2讀出參照?qǐng)D象的Y02塊,在時(shí)刻g3進(jìn)行對(duì)Y02塊的半貝爾內(nèi)插,便輸出給欲使該半貝爾內(nèi)插結(jié)果和Y0塊進(jìn)行混合的混合部29。
在時(shí)刻g5,在以半幀為單位編碼的差分Y1塊能從象素運(yùn)算部7輸出的情況下,將其保存起來。在時(shí)刻g6對(duì)作為參照?qǐng)D象讀出的Y13塊進(jìn)行半貝爾內(nèi)插之前,該差分的Y1塊由緩沖器D25保存。對(duì)參照?qǐng)D象Y13塊的半貝爾內(nèi)插完成后,緩沖器D25將如此保存的差分的Y1塊輸出給混合部29,在時(shí)刻g7在混合部29中進(jìn)行Y13塊的半貝爾內(nèi)插結(jié)果和Y1塊的混合。
在時(shí)刻g8,在差分以半幀為單位編碼的Y3塊能從象素運(yùn)算部7輸出的情況下,將其保存起來。然后在時(shí)刻g9進(jìn)行Y13塊和Y1塊的混合后,輸出給欲對(duì)該混合結(jié)果和Y3塊進(jìn)行混合的混合部29。
在時(shí)刻g10,對(duì)Y02塊的半貝爾內(nèi)插結(jié)果和Y0塊的混合結(jié)果被用混合部29輸出后,緩沖器C20將其保存起來。
在時(shí)刻g11,如果以半幀為單位編碼的差分的Y2塊繞過緩沖器D25而被輸出后,將如此保存的對(duì)Y02塊的半貝爾內(nèi)插結(jié)果和Y0塊的混合結(jié)果輸出給混合部29,在時(shí)刻g12對(duì)Y02塊和差分的Y2塊進(jìn)行混合。這時(shí)由于輸出給混合部29的Y02塊已經(jīng)完成了與Y0塊的混合,所以如果進(jìn)行與差分的Y2塊的混合,就能獲得Y02塊結(jié)果的混合結(jié)果。這樣獲得的Y02塊的混合結(jié)果被輸出給緩沖器B16,被用緩沖器B16寫入SDRAM3。
緩沖器C20在時(shí)刻g7由混合部29對(duì)Y13塊的半貝爾內(nèi)插結(jié)果和Y1塊進(jìn)行混合后保存該混合結(jié)果。在時(shí)刻g8,緩沖器D25將差分以半幀為單位編碼的Y3塊保存起來后,在時(shí)刻g13,將混合結(jié)果的Y13塊輸出混合部29以便使Y13塊的混合結(jié)果和Y3塊進(jìn)行混合。這時(shí)由于輸出給混合部29的Y13塊已經(jīng)完成了與Y1塊的混合,所以如果進(jìn)行與差分的Y3塊的混合,就能獲得Y13塊結(jié)果的混合結(jié)果。這樣獲得的Y13塊的混合結(jié)果被輸出給緩沖器B16,被用緩沖器B16寫入SDRAM3。
如上所述,如果采用本實(shí)施形態(tài),則由于象素塊中包括的藍(lán)色差分量、紅色差分量被存儲(chǔ)在從由同一行地址特定的開始區(qū)至結(jié)束區(qū)中,所以如果從該開始區(qū)起指定讀出長度,進(jìn)行脈沖串式地讀出存儲(chǔ)內(nèi)容的所謂脈沖串讀出,就能將藍(lán)色差分量、紅色差分量一起讀出。由于這樣將藍(lán)色差分量、紅色差分量一起讀出,所以在讀出參照?qǐng)D象時(shí),通過與亮度分量的讀出合計(jì)兩次的脈沖串讀出,就能讀出參照?qǐng)D象。因此,能將脈沖串讀出的次數(shù)減少到與參照?qǐng)D象讀出的二倍成比例的數(shù),例如即使每1秒反復(fù)讀出參照?qǐng)D象近30次,也具有能異常地減少從發(fā)送行地址開始到發(fā)送列地址為止的期間內(nèi)的延遲時(shí)間tRCD的影響的效果。
另外,在需要將參照?qǐng)D象個(gè)別地從變換過的頁讀到不同的存儲(chǔ)單元中的情況下,由于使重疊部分的橫向幅度長的一方的讀出順序在前,所以在從一頁讀出其橫向幅度部分的亮度分量的期間,能并行地進(jìn)行另一存儲(chǔ)單元的激活,能避免與激活存儲(chǔ)單元之前的延遲相伴隨的譯碼處理的延遲的影響。
另外,為了進(jìn)行半貝爾內(nèi)插,即使需要多于一行部分、一列部分的亮度分量及色差分量的情況下,將它們分作兩次讀出,由于在各個(gè)讀出時(shí)將讀出范圍確定為比一行多些、比一列多些,所以如果是象素塊大小的緩沖器,就能充分地存儲(chǔ)半貝爾內(nèi)插所需要的亮度分量及色差分量。
(第二實(shí)施形態(tài))第二實(shí)施形態(tài)是在SDRAM的字長為2字節(jié),亮度分量、藍(lán)色差分量、紅色差分量為1字節(jié)的情況下,將兩個(gè)象素部分的亮度分量、藍(lán)色差分量、紅色差分量存儲(chǔ)在SDRAM的1字中的實(shí)施形態(tài)。
第二實(shí)施形態(tài)中的亮度分量的存儲(chǔ)方式示于圖29A,色差分量的存儲(chǔ)方式示于圖29B。在圖29A中,最使人感興趣的是兩個(gè)亮度分量被存儲(chǔ)在一頁內(nèi)的由一列地址構(gòu)成的字長區(qū)中。亮度分量Y(0,0)和Y(1,0)被存儲(chǔ)在列地址000000_0000中,亮度分量Y(2,0)和亮度分量Y(3,0)被存儲(chǔ)在列地址000000_0001中。
在圖29B中,最使人感興趣的是坐標(biāo)相同的藍(lán)色差分量和紅色差分量的對(duì)偶被存儲(chǔ)在一頁內(nèi)的由一列地址構(gòu)成的字長區(qū)中。Cb(0,0)和Cr(0,0)被存儲(chǔ)在列地址000000_0000中,Cb(1,0)和Cr(1,0)被存儲(chǔ)在列地址000000_0001中。
鑒于兩個(gè)亮度分量、由藍(lán)色差分量和紅色差分量構(gòu)成的對(duì)偶這樣存儲(chǔ)在1字長的區(qū)中,故在第二實(shí)施形態(tài)中對(duì)亮度地址編碼器61、色差地址編碼器62進(jìn)行了圖30A及圖30B所示的改變。圖30A中的亮度地址編碼器61的改變處在于使用從X坐標(biāo)的第二位到第四位的3位生成列地址。
圖30B中的色差地址編碼器62的改變處在于禁止用第0位來識(shí)別藍(lán)色差分量及紅色差分量,用第0~第3位表示藍(lán)色差分量及紅色差分量的X坐標(biāo)。
另外補(bǔ)償控制部10的改變處在于根據(jù)左上頂點(diǎn)的坐標(biāo)是偶數(shù)還是奇數(shù),如下擴(kuò)大或縮小使用讀出范圍。
(1)處理單位為幀單位(1-1)參照?qǐng)D象的左上頂點(diǎn)的坐標(biāo)是偶數(shù)坐標(biāo)的情況無橫向的半倍爾內(nèi)插橫16象素×縱8象素有橫向的半倍爾內(nèi)插橫18象素×縱8象素(1-2)參照?qǐng)D象的左上頂點(diǎn)的坐標(biāo)是奇數(shù)坐標(biāo)的情況無橫向的半倍爾內(nèi)插橫18象素×縱8象素有橫向的半倍爾內(nèi)插橫20象素×縱8象素(2)處理單位為半幀單位(2-1)參照?qǐng)D象的左上頂點(diǎn)的坐標(biāo)是偶數(shù)坐標(biāo)的情況無橫向的半倍爾內(nèi)插橫8象素×縱16象素有橫向的半倍爾內(nèi)插橫10象素×縱16象素(2-2)參照?qǐng)D象的左上頂點(diǎn)的坐標(biāo)是奇數(shù)坐標(biāo)的情況無橫向的半倍爾內(nèi)插橫10象素×縱8象素有橫向的半倍爾內(nèi)插橫12象素×縱8象素在(1-1)中有橫向的半倍爾內(nèi)插的情況下,之所以將橫18象素×縱8象素確定為讀出范圍,是因?yàn)樵跈M向半倍爾內(nèi)插時(shí),亮度分量需要多于一列。是只想讀出該多列中的一列的內(nèi)容,但在第二實(shí)施形態(tài)中,由于2個(gè)亮度分量被存儲(chǔ)在一字長的區(qū)中,所以不能只讀出一列。因此,與一字長區(qū)合并,以多于二列讀出亮度分量。與『無橫向的半倍爾內(nèi)插』時(shí)相比較,讀出范圍之所以多于2象素(18象素-16象素),是為了以多于兩列讀出亮度分量,以便進(jìn)行橫向的半倍爾內(nèi)插。
在(2-2)中參照?qǐng)D象的左上頂點(diǎn)的坐標(biāo)是奇數(shù)坐標(biāo)的情況下,之所以將橫18象素×縱8象素確定為讀出范圍,其理由如下。即,左上頂點(diǎn)的坐標(biāo)是奇數(shù)坐標(biāo)時(shí),假定欲根據(jù)該奇數(shù)坐標(biāo)讀出16個(gè)象素,那么在兩個(gè)象素部分的亮度分量存儲(chǔ)在一字長的區(qū)中的關(guān)系上,必須將讀出開始坐標(biāo)確定為表示左上頂點(diǎn)的奇數(shù)坐標(biāo)的前一個(gè)偶數(shù)坐標(biāo),將讀出結(jié)束坐標(biāo)確定為表示右上頂點(diǎn)的奇數(shù)坐標(biāo)的后一個(gè)偶數(shù)坐標(biāo)。這樣通過將讀出開始坐標(biāo)確定為前一個(gè)偶數(shù)坐標(biāo),讀出范圍自然加“1”,通過將讀出結(jié)束坐標(biāo)確定為后一個(gè)偶數(shù)坐標(biāo),讀出范圍自然加“1”。
讀出開始坐標(biāo)、讀出結(jié)束坐標(biāo)通過分別加“1”,讀出范圍變?yōu)闄M18象素×縱8象素。
在(2-2)中參照?qǐng)D象的左上頂點(diǎn)的坐標(biāo)是奇數(shù)坐標(biāo)、需要橫向的半倍爾內(nèi)插的情況下,之所以將橫20象素×縱8象素確定為讀出范圍,是因?yàn)樾枰x出橫19象素×縱8象素。橫19象素×縱8象素的讀出范圍是以將讀出開始坐標(biāo)、讀出結(jié)束坐標(biāo)分別加“1”的理由和為了橫向的半倍爾內(nèi)插而進(jìn)行多于一列的讀出而加“1”的理由為依據(jù)的讀出范圍。是想直接讀出該橫19象素×縱8象素,但在第二實(shí)施形態(tài)中,由于2個(gè)亮度分量被存儲(chǔ)在SDRAM的一字長的區(qū)中,所以將橫20象素×縱8象素確定為讀出范圍。
如上所述,如果采用本實(shí)施形態(tài),則在SDRAM的字長為2字節(jié),亮度分量、藍(lán)色差分量、紅色差分量為1字節(jié)的情況下,能將兩個(gè)象素部分的亮度分量、藍(lán)色差分量、紅色差分量存儲(chǔ)在SDRAM的一字中。
工業(yè)上利用的可能性本發(fā)明能適用于數(shù)字錄象磁盤重放機(jī)和數(shù)字衛(wèi)星廣播接收終端等用于被壓縮的動(dòng)圖象數(shù)據(jù)再生的再生裝置。
權(quán)利要求
1.一種備有將一畫面的圖象分割成橫m象素×縱n象素(m,n為1以上的整數(shù))的多個(gè)象素塊進(jìn)行存儲(chǔ)的圖象存儲(chǔ)器的圖象譯碼設(shè)備,上述圖象存儲(chǔ)器具有行列狀的存儲(chǔ)區(qū),用于將構(gòu)成各象素塊的s×t個(gè)第一色差分量(s,t為1以上的整數(shù))和構(gòu)成同一象素塊的s×t個(gè)第二色差分量存儲(chǔ)在從由某行地址和第一列地址特定的開始區(qū)到由該行地址和第二列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,將構(gòu)成同一象素塊的m×n個(gè)亮度分量存儲(chǔ)在從由另外的某行地址和第三列地址特定的另外的開始區(qū)到由該行地址和第四列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,上述圖象譯碼設(shè)備的特征在于備有將從外部輸入的流譯碼成差分圖象和動(dòng)矢量的差分圖象譯碼裝置;從某個(gè)連續(xù)區(qū)讀出構(gòu)成差分圖象和應(yīng)混合的參照?qǐng)D象的全部第一色差分量、全部第二色差分量,從另外的連續(xù)區(qū)讀出全部亮度分量的存儲(chǔ)器存取裝置;以及將從兩個(gè)連續(xù)區(qū)讀出的第一色差分量、第二色差分量及亮度分量混合成差分圖象的混合裝置。
2.根據(jù)權(quán)利要求1所述的圖象譯碼設(shè)備,其特征在于構(gòu)成上述象素塊的s×t個(gè)第一色差分量存儲(chǔ)在由行地址特定的連續(xù)區(qū)內(nèi)的第偶數(shù)個(gè)存儲(chǔ)位置,構(gòu)成同一象素塊的s×t個(gè)第二色差分量存儲(chǔ)在同一連續(xù)區(qū)內(nèi)的第奇數(shù)個(gè)存儲(chǔ)位置。
3.根據(jù)權(quán)利要求2所述的圖象譯碼設(shè)備,其特征在于呈行列狀的存儲(chǔ)區(qū)內(nèi)的多個(gè)連續(xù)區(qū)分別被變換成兩個(gè)存儲(chǔ)單元地址中的某一個(gè),畫面中位于第偶數(shù)個(gè)象素塊的第一色差分量、第二色差分量及亮度分量存儲(chǔ)在被變換成一個(gè)存儲(chǔ)單元地址的連續(xù)區(qū)中,畫面中位于第奇數(shù)個(gè)象素塊的第一色差分量、第二色差分量及亮度分量存儲(chǔ)在被變換成另一個(gè)存儲(chǔ)單元地址的連續(xù)區(qū)中。
4.根據(jù)權(quán)利要求3所述的圖象譯碼設(shè)備,其特征在于圖象譯碼設(shè)備備有根據(jù)動(dòng)矢量算出應(yīng)與該差分圖象混合的參照?qǐng)D象的坐標(biāo)的坐標(biāo)計(jì)算裝置,上述存儲(chǔ)器存取裝置備有如果算出了參照?qǐng)D象的坐標(biāo),便根據(jù)畫面內(nèi)的參照?qǐng)D象的坐標(biāo),確定將圖象存儲(chǔ)器內(nèi)的哪一個(gè)連續(xù)區(qū)作為讀出處的讀出處地址的第一確定裝置;以及根據(jù)參照?qǐng)D象的縱橫向幅度,確定從連續(xù)區(qū)讀出的讀出長度的第二確定裝置,上述圖象存儲(chǔ)器備有如果第一、第二確定裝置確定了讀出處地址及讀出長度,便根據(jù)所確定的讀出處地址,只將圖象存儲(chǔ)器內(nèi)的某個(gè)連續(xù)區(qū)中存儲(chǔ)的亮度分量及色差分量中的某一個(gè)讀出所確定的讀出長度并輸出的輸出部。
5.根據(jù)權(quán)利要求4所述的圖象譯碼設(shè)備,其特征在于上述第一確定裝置備有根據(jù)將表示參照?qǐng)D象的頂點(diǎn)位置的X坐標(biāo)除以象素塊的橫向的亮度分量數(shù)m所得之余數(shù)和將表示參照?qǐng)D象的頂點(diǎn)位置的Y坐標(biāo)除以象素塊的縱向的亮度分量數(shù)n所得之余數(shù),生成列地址的第一生成部;以及根據(jù)將表示參照?qǐng)D象的頂點(diǎn)位置的Y坐標(biāo)除以象素塊的橫向的亮度分量數(shù)m所得之商和將表示參照?qǐng)D象的頂點(diǎn)位置的Y坐標(biāo)除以象素塊的縱向的亮度分量數(shù)n所得之商,生成行地址及存儲(chǔ)單元地址的第二生成部;根據(jù)第一及第二生成部生成的行地址、列地址及存儲(chǔ)單元地址,確定亮度分量的讀出處地址。
6.根據(jù)權(quán)利要求5所述的圖象譯碼設(shè)備,其特征在于上述第一確定裝置備有根據(jù)將表示參照?qǐng)D象的頂點(diǎn)位置的X坐標(biāo)除以象素塊的橫向的色差分量數(shù)s所得之余數(shù)和將表示參照?qǐng)D象的頂點(diǎn)位置的Y坐標(biāo)除以象素塊的縱向的色差分量數(shù)t所得之余數(shù),生成列地址的第三生成部;以及根據(jù)將表示參照?qǐng)D象的頂點(diǎn)位置的Y坐標(biāo)除以象素塊的橫向的色差分量數(shù)s所得之商和將表示參照?qǐng)D象的頂點(diǎn)位置的Y坐標(biāo)除以象素塊的縱向的色差分量數(shù)t所得之商,生成行地址及存儲(chǔ)單元地址的第四生成部;根據(jù)第一及第二生成部生成的行地址、列地址及存儲(chǔ)單元地址,確定色差分量的讀出處地址。
7.根據(jù)權(quán)利要求6所述的圖象譯碼設(shè)備,其特征在于上述坐標(biāo)計(jì)算裝置備有算出具有相當(dāng)于參照?qǐng)D象的象素塊的一半大小的第一讀出范圍的第一計(jì)算部;以及算出具有相當(dāng)于參照?qǐng)D象的象素塊的其余一半大小的第二讀出范圍的第二計(jì)算部;第一確定裝置及第二確定裝置根據(jù)算出的一半大小的第一讀出范圍及第二讀出范圍,確定讀出處地址及讀出長度。
8.根據(jù)權(quán)利要求7所述的圖象譯碼設(shè)備,其特征在于上述圖象編碼設(shè)備備有判斷上述差分圖象是以幀單元編碼還是以半幀單元編碼的處理單元判斷裝置,上述第一計(jì)算部如果是以幀單元編碼的,便算出具有相當(dāng)于該差分圖象的象素塊的上半部分大小的第一讀出范圍,如果是以半幀單元編碼的,便算出具有相當(dāng)于該差分圖象的象素塊的左半部分大小的第一讀出范圍,上述第二計(jì)算部如果是以幀單元編碼的,便算出具有相當(dāng)于該差分圖象的象素塊的下半部分大小的第二讀出范圍,如果是以半幀單元編碼的,便算出具有相當(dāng)于該差分圖象的象素塊的右半部分大小的第二讀出范圍,
9.根據(jù)權(quán)利要求8所述的圖象譯碼設(shè)備,其特征在于上述坐標(biāo)計(jì)算裝置備有判斷是否需要橫向的半貝爾內(nèi)插及縱向的半貝爾內(nèi)插的內(nèi)插要否判斷裝置;當(dāng)斷定只需要縱向的半貝爾內(nèi)插時(shí),便沿縱向擴(kuò)大第一讀出范圍的第一擴(kuò)大部;當(dāng)斷定只需要橫向的半貝爾內(nèi)插時(shí),便沿橫向擴(kuò)大第一及第二讀出范圍的第二擴(kuò)大部;當(dāng)斷定需要縱向及橫的半貝爾內(nèi)插兩者時(shí),便沿縱向擴(kuò)大第一讀出范圍,沿橫向擴(kuò)大第一讀出范圍及第二讀出范圍的第三擴(kuò)大部;第一確定裝置及第二確定裝置對(duì)第一讀出范圍、第二讀出范圍的每一個(gè)決定讀出處地址及讀出長度,上述圖象存儲(chǔ)器內(nèi)的輸出部將參照?qǐng)D象的亮度分量及色差分量輸出給每個(gè)第一讀出范圍、第二讀出范圍,上述圖象譯碼設(shè)備備有保存構(gòu)成圖象存儲(chǔ)器的輸出部輸出的參照?qǐng)D象的色差分量及亮度分量的象素塊緩沖器;以及對(duì)所保存的參照?qǐng)D象進(jìn)行判斷裝置斷定為必要的方向的半貝爾內(nèi)插的半貝爾內(nèi)插裝置;上述混合裝置對(duì)進(jìn)行過半貝爾內(nèi)插的參照?qǐng)D象及差分圖象進(jìn)行混合。
10.根據(jù)權(quán)利要求9所述的圖象譯碼設(shè)備,其特征在于如果圖象存儲(chǔ)器的輸出部輸出了第一讀出范圍內(nèi)包括的色差分量及亮度分量,象素塊緩沖器便將其保存起來,上述半貝爾內(nèi)插裝置備有一個(gè)象素一個(gè)象素地讀出象素塊緩沖器保存的亮度分量及色差分量的第一讀出部;如果需要縱向半貝爾內(nèi)插,便讀出在象素塊緩沖器保存的象素塊中位于被讀出的象素之下的象素的亮度分量及色差分量的第二讀出部;如果需要橫向半貝爾內(nèi)插,便讀出在象素塊緩沖器保存的象素塊中位于被讀出的象素右側(cè)相鄰的象素的亮度分量及色差分量的第三讀出部;如果需要縱向及橫向半貝爾內(nèi)插,便讀出在象素塊緩沖器保存的象素塊中位于被讀出的象素的右斜下側(cè)的象素的亮度分量及色差分量的第四讀出部;以及利用該亮度分量及色差分量和第二、第三、第四讀出部讀出的亮度分量及色差分量的平均值,生成第一讀出部讀出的象素的亮度分量及色差分量的生成部。
11.根據(jù)權(quán)利要求10所述的圖象譯碼設(shè)備,其特征在于如果生成部生成讀給象素塊緩沖器的全部亮度分量,上述輸出部便根據(jù)第二計(jì)算部算出的其余一半的第二讀出范圍,輸出亮度分量,上述象素塊緩沖器備有如果輸出象素塊部分的亮度分量及色差分量,只將第一讀出范圍包括的亮度分量中最后一行留下,而將第二讀出范圍的亮度分量書寫在第一讀出范圍的亮度分量所占據(jù)的區(qū)中的書寫部,上述半貝爾內(nèi)插裝置利用留下來的最后一行,對(duì)后一半讀出的亮度分量進(jìn)行判斷裝置斷定為必要的方向的半貝爾內(nèi)插。
12.根據(jù)權(quán)利要求10所述的圖象譯碼設(shè)備,其特征在于如果生成部生成讀給象素塊緩沖器的全部亮度分量,上述輸出部便根據(jù)第二計(jì)算部算出的其余一半的第二讀出范圍,輸出亮度分量,上述象素塊緩沖器備有如果輸出象素塊部分的亮度分量及色差分量,則只將第一讀出范圍包括的亮度分量中最后一列留下,而將第二讀出范圍的亮度分量書寫在第一讀出范圍的亮度分量所占據(jù)的區(qū)中的書寫部,上述半貝爾內(nèi)插裝置利用留下來的最后一列,對(duì)后一半讀出的亮度分量進(jìn)行判斷裝置斷定為必要的方向的半貝爾內(nèi)插。
13.根據(jù)權(quán)利要求4所述的圖象譯碼設(shè)備,其特征在于上述圖象譯碼設(shè)備備有如果參照?qǐng)D象與重疊的多個(gè)象素塊重疊,便根據(jù)參照?qǐng)D象的頂點(diǎn)坐標(biāo),判斷全部這些象素塊的重疊象素塊判斷裝置;在參照?qǐng)D象與多個(gè)象素塊重疊的情況下,算出這些多個(gè)象素塊的重疊部分的頂點(diǎn)坐標(biāo)的頂點(diǎn)坐標(biāo)計(jì)算裝置;根據(jù)頂點(diǎn)坐標(biāo)計(jì)算裝置算出的重疊部分的頂點(diǎn)坐標(biāo),確定給第一確定裝置的讀出處地址的第一生成控制裝置;以及根據(jù)頂點(diǎn)坐標(biāo)計(jì)算裝置算出的重疊部分的重疊長度,確定給第二確定裝置的讀出長度的第二生成控制裝置。
14.根據(jù)權(quán)利要求13所述的圖象譯碼設(shè)備,其特征在于上述圖象譯碼設(shè)備備有判斷算出的參照?qǐng)D象的讀出范圍是否與多個(gè)象素塊重疊的重疊范圍判斷裝置;以及在多個(gè)象素塊相重疊的情況下,根據(jù)存儲(chǔ)相重疊的象素塊的亮度分量及色差分量的連續(xù)區(qū)屬于哪個(gè)存儲(chǔ)單元地址,確定多個(gè)連續(xù)區(qū)的讀出順序的順序確定裝置。
15.根據(jù)權(quán)利要求14所述的圖象譯碼設(shè)備,其特征在于在讀出范圍沿橫向與并排的兩個(gè)象素塊重疊的情況下,上述順序確定裝置將與重疊的橫向幅度長的一方的象素塊的重疊部分的讀出順序確定為先,將與重疊的橫向幅度短的一方的象素塊的重疊部分的讀出順序確定為后。
16.根據(jù)權(quán)利要求15所述的圖象譯碼設(shè)備,其特征在于在讀出范圍與四個(gè)象素塊重疊的情況下,上述順序確定裝置將與重疊的橫向幅度最短、重疊的縱向幅度最長的一方的象素塊的重疊部分的讀出順序確定為開始的順序,將與重疊的橫向幅度最短、重疊的縱向幅度也最短的一方的象素塊的重疊部分的讀出順序確定為最后的順序。
17.根據(jù)權(quán)利要求16所述的圖象譯碼設(shè)備,其特征在于上述圖象譯碼設(shè)備備有如果算出了參照?qǐng)D象,便從與參照?qǐng)D象重疊的多個(gè)連續(xù)區(qū),發(fā)送多個(gè)讀出與讀出范圍的重疊部分用的讀出命令的讀出命令發(fā)送裝置;在發(fā)送了讀出一個(gè)重疊部分的亮度分量用的最后的讀出命令之后,發(fā)送使存儲(chǔ)著剩余的重疊部分的連續(xù)區(qū)預(yù)充電用的預(yù)充電命令的預(yù)充電命令發(fā)送裝置;以及在發(fā)送了讀出一個(gè)重疊部分的亮度分量用的最后的讀出命令之后,發(fā)送使存儲(chǔ)著剩余的重疊部分的連續(xù)區(qū)激活用的激活命令的激活命令發(fā)送裝置。
18.根據(jù)權(quán)利要求17所述的圖象譯碼設(shè)備,其特征在于在與重疊的橫向幅度最短、重疊的縱向幅度最長的一方的象素塊的重疊部分的讀出順序被確定為開始順序的情況下,在對(duì)圖象存儲(chǔ)器發(fā)送讀出命令之前,上述激活命令發(fā)送裝置對(duì)多個(gè)存儲(chǔ)單元地址發(fā)送激活命令。
19.根據(jù)權(quán)利要求9所述的圖象譯碼設(shè)備,其特征在于在象素塊中位于相鄰坐標(biāo)的兩個(gè)亮度分量被存儲(chǔ)在由行地址和一個(gè)列地址特定的最初區(qū),圖象譯碼設(shè)備備有判斷參照?qǐng)D象的左上頂點(diǎn)的X坐標(biāo)是否是奇數(shù)坐標(biāo)的坐標(biāo)值判斷裝置;以及在斷定了參照?qǐng)D象的左上頂點(diǎn)的X坐標(biāo)是奇數(shù)坐標(biāo)的情況下,將頁邊賦予第一及第二讀出范圍的賦予部,第一確定裝置及第二確定裝置確定被賦予了頁邊的第一讀出范圍、第二讀出范圍的每一個(gè)的讀出處地址及讀出長度,上述圖象存儲(chǔ)器內(nèi)的輸出部將參照?qǐng)D象的亮度分量及色差分量輸出給各第一讀出范圍、第二讀出范圍,上述象素塊緩沖器保存構(gòu)成圖象存儲(chǔ)器的輸出部輸出的參照?qǐng)D象的色差分量及亮度分量。
20.根據(jù)權(quán)利要求19所述的圖象譯碼設(shè)備,其特征在于在第一及第二讀出范圍在被沿縱向及橫向擴(kuò)大了的情況下,上述第一、第二、第三放大部將頁邊賦予第一及第二讀出范圍,以使其呈二的倍數(shù)。
21.一種備有將一畫面的圖象分割成橫m象素×縱n象素(m,n為1以上的整數(shù))的多個(gè)象素塊進(jìn)行存儲(chǔ)的圖象存儲(chǔ)器的圖象譯碼設(shè)備,上述圖象存儲(chǔ)器具有行列狀的存儲(chǔ)區(qū),用于將構(gòu)成一個(gè)象素塊的s×t個(gè)第一色差分量(s,t為1以上的整數(shù))和構(gòu)成同一象素塊的s×t個(gè)第二色差分量存儲(chǔ)在從由某行地址和第一列地址特定的開始區(qū)到由該行地址和第二列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,將構(gòu)成同一象素塊的m×n個(gè)亮度分量存儲(chǔ)在從由另外的某行地址和第三列地址特定的另外的開始區(qū)到由該行地址和第四列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,上述圖象譯碼設(shè)備的特征在于備有將從外部輸入的流譯碼成差分圖象和動(dòng)矢量的差分圖象譯碼裝置;從圖象存儲(chǔ)器讀出構(gòu)成相當(dāng)于應(yīng)與差分圖象混合的參照?qǐng)D象的象素塊的一半的亮度分量,并從圖象存儲(chǔ)器讀出與該一半的亮度分量相鄰的一行及/或一列的亮度分量的第一讀出裝置;保存讀出的亮度分量的象素塊緩沖器;對(duì)所保存的一半的亮度分量進(jìn)行判斷裝置斷定為必要的方向的半貝爾內(nèi)插的半貝爾內(nèi)插裝置;以及讀出構(gòu)成相當(dāng)于應(yīng)與差分圖象混合的參照?qǐng)D象的象素塊的其余的一半的全部亮度分量的第二讀出裝置,象素塊緩沖器備有如果輸出象素塊部分的亮度分量及色差分量,則將前半部分中讀出的亮度分量中與一半的亮度分量相鄰的一行及/或一列的亮度分量留下,而將后一半中讀出的亮度分量書寫在前一半中讀出的亮度分量所占據(jù)的區(qū)中的書寫部,上述半貝爾內(nèi)插裝置利用留下的一行及/或一列的亮度分量,對(duì)后一半讀出的亮度分量進(jìn)行判斷裝置斷定為必要的方向的半貝爾內(nèi)插。
22.一種有多個(gè)由行地址和列地址和存儲(chǔ)單元地址來特定其地址的存儲(chǔ)器陣列,在各存儲(chǔ)器陣列中將一畫面的圖象分割成橫m象素×縱n象素(m,n為1以上的整數(shù))的多個(gè)象素塊進(jìn)行存儲(chǔ)的圖象譯碼設(shè)備,上述存儲(chǔ)器陣列具有行列狀的存儲(chǔ)區(qū),用于將構(gòu)成一個(gè)象素塊的s×t個(gè)第一色差分量(s,t為1以上的整數(shù))和構(gòu)成同一象素塊的s×t個(gè)第二色差分量存儲(chǔ)在從由某行地址和第一列地址特定的開始區(qū)到由該行地址和第二列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,將構(gòu)成同一象素塊的m×n個(gè)亮度分量存儲(chǔ)在從由另外的某行地址和第三列地址特定的另外的開始區(qū)到由該行地址和第四列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,上述圖象譯碼設(shè)備的特征在于備有將從外部輸入的流譯碼成差分圖象和動(dòng)矢量的差分圖象譯碼裝置;如果應(yīng)與差分圖象混合的參照?qǐng)D象與多個(gè)象素塊重疊,便算出與這些象素塊的重疊部分的頂點(diǎn)坐標(biāo)的重疊部判斷裝置;將重疊部的橫向幅度及縱向幅度互相比較,確定重疊部的讀出順序的順序確定裝置;根據(jù)讀出順序,從存儲(chǔ)器陣列的連續(xù)區(qū)從重疊部分讀出亮度分量及色差分量的存儲(chǔ)器存取裝置;以及將從多個(gè)連續(xù)區(qū)讀出的第一色差分量、第二色差分量及亮度分量混合在差分圖象中的混合裝置。
23.根據(jù)權(quán)利要求22所述的圖象譯碼設(shè)備,其特征在于在讀出范圍沿橫向與并排的兩個(gè)象素塊重疊的情況下,上述順序確定裝置將與重疊的橫向幅度長的一方的象素塊的重疊部分的讀出順序確定為先,將與重疊的橫向幅度短的一方的象素塊的重疊部分的讀出順序確定為后。
24.根據(jù)權(quán)利要求23所述的圖象譯碼設(shè)備,其特征在于在讀出范圍與四個(gè)象素塊重疊的情況下,上述順序確定裝置將與重疊的橫向幅度最短、重疊的縱向幅度最長的一方的象素塊的重疊部分的讀出順序確定為開始順序,將與重疊的橫向幅度最短、重疊的縱向幅度也最短的一方的象素塊的重疊部分的讀出順序確定為最后順序。
25.根據(jù)權(quán)利要求24所述的圖象譯碼設(shè)備,其特征在于上述圖象譯碼設(shè)備備有如果算出了參照?qǐng)D象,便從與參照?qǐng)D象重疊的多個(gè)連續(xù)區(qū),發(fā)送多個(gè)讀出與讀出范圍的重疊部分用的讀出命令的讀出命令發(fā)送裝置;在發(fā)送了讀出一個(gè)重疊部分的內(nèi)容用的最后的讀出命令之后,發(fā)送使存儲(chǔ)著剩余的重疊部分的連續(xù)區(qū)預(yù)充電用的預(yù)充電命令的預(yù)充電命令發(fā)送裝置;以及在發(fā)送了讀出一個(gè)重疊部分的內(nèi)容用的最后的讀出命令之后,將激活命令發(fā)送給存儲(chǔ)著剩余的重疊部分的連續(xù)區(qū)的激活命令發(fā)送裝置。
26.根據(jù)權(quán)利要求25所述的圖象譯碼設(shè)備,其特征在于在與重疊的橫向幅度最短、重疊的縱向幅度最長的一方的象素塊的重疊部分的讀出順序被確定為開始順序的情況下,在對(duì)圖象存儲(chǔ)器發(fā)送讀出命令之前,上述激活命令發(fā)送裝置對(duì)多個(gè)存儲(chǔ)單元地址發(fā)送激活命令。
27.一種將一畫面的圖象分割成橫m象素×縱n象素(m,n為1以上的整數(shù))的多個(gè)象素塊進(jìn)行存儲(chǔ)的圖象存儲(chǔ)器,其特征在于具有行列狀的存儲(chǔ)區(qū),用于將構(gòu)成一個(gè)象素塊的s×t個(gè)第一色差分量(s,t為1以上的整數(shù))和構(gòu)成同一象素塊的s×t個(gè)第二色差分量存儲(chǔ)在從由某行地址和第一列地址特定的開始區(qū)到由該行地址和第二列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中,將構(gòu)成同一象素塊的m×n個(gè)亮度分量存儲(chǔ)在從由另外的某行地址和第三列地址特定的另外的開始區(qū)到由該行地址和第四列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中。
全文摘要
一種備有將一畫面的圖象分割成橫m象素×縱n象素的多個(gè)象素塊進(jìn)行存儲(chǔ)的圖象存儲(chǔ)器的圖象譯碼設(shè)備,圖象存儲(chǔ)器具有行列狀的存儲(chǔ)區(qū),用于將構(gòu)成一個(gè)象素塊的s×t個(gè)第一色差分量和構(gòu)成同一象素塊的s×t個(gè)第二色差分量存儲(chǔ)在從由某行地址和第一列地址特定的開始區(qū)到由該行地址和第二列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中(圖10),將構(gòu)成同一象素塊的m×n個(gè)亮度分量存儲(chǔ)在從由另外的某行地址和第三列地址特定的另外的開始區(qū)到由該行地址和第四列地址特定的結(jié)束區(qū)的連續(xù)區(qū)中。
文檔編號(hào)H04N9/64GK1199533SQ9719114
公開日1998年11月18日 申請(qǐng)日期1997年8月28日 優(yōu)先權(quán)日1996年8月29日
發(fā)明者吉岡康介, 平井誠, 清原督三, 木村浩三 申請(qǐng)人:松下電器產(chǎn)業(yè)株式會(huì)社