專利名稱:由帶交叉格式到帶分離格式的格式轉(zhuǎn)換設(shè)備的制作方法
由帶交叉格式到帶分離格式的格式轉(zhuǎn)換設(shè)備 技術(shù)領(lǐng)域與本發(fā)明相 一致的方法和設(shè)備涉及一種圖像處理設(shè)備和方法,更具體地 講,涉及一種能夠?qū)Ы徊娓袷降膱D像數(shù)據(jù)轉(zhuǎn)換為帶分離格式的圖像數(shù)據(jù)的 格式轉(zhuǎn)換設(shè)備和方法。
背景技術(shù):
圖1是示出根據(jù)現(xiàn)有技術(shù)的以帶交叉格式(band interleave format)存儲 的圖像數(shù)據(jù)的示圖。由數(shù)碼相機、數(shù)碼攝像機等創(chuàng)建的數(shù)字圖像數(shù)據(jù)一般地 以圖1中示出的帶交叉格式被存儲在圖像緩沖器中或存儲器中。此外,在個 人計算機(PC)中存儲的許多圖像數(shù)據(jù)以帶交叉格式4皮存儲。 一個像素的色 彩可以被表示為紅(R)、綠(G)和藍(B)的結(jié)合。圖1中一個像素的色彩 被總共24位表示,其中,R、 G和B中的每個由8位來表示。帶交叉格式與 在其中色帶(colorband)被混和的格式相對應(yīng)。在圖1的帶交叉格式中,不 分別地收集表示R、 G和B的數(shù)據(jù),而以RGBRGB等將色帶混和。相反地, 將在其中數(shù)據(jù)按照色帶被分離的格式稱為"帶分離格式"(band separateformat )。例如,可以收集同一色帶的N個數(shù)據(jù)的每個。此外,R被分別地收 集,G被分別地收集,并且B被分別地收集。在這種情況下,數(shù)據(jù)被以諸如 RR..RGG...GBB...B等的形式存儲。在這種情況下,當同一色帶的四個教:據(jù) 中的每個被收集時,其被表示為RRRRGGGGBBBBRRRRGGGGBBBB等等。RGB數(shù)據(jù)和具有不同形式(如YCbCr形式)的圖像數(shù)據(jù)可類似地包括帶交叉 格式和帶分離格式。當處理圖像數(shù)據(jù)時,在不同像素當中有相當多的同 一 色帶數(shù)據(jù)的計算, 或者在不同圖像幀中的相應(yīng)的像素當中有相當多的同 一色帶數(shù)據(jù)的計算。因 而,當處理圖像數(shù)據(jù)時,帶分離格式較帶交叉格式具有更高的計算效率。因此,需要一種能夠?qū)Ы徊娓袷降膱D像數(shù)據(jù)轉(zhuǎn)換為帶分離格式的圖像 數(shù)據(jù)的格式轉(zhuǎn)換設(shè)備和方法。發(fā)明內(nèi)容不要求本發(fā)明克服上述的不足,而且本發(fā)明的示例性實施例可能不克服上述 的任何問題。本發(fā)明的一方面提供一種能夠有效地將帶交叉格式的圖像數(shù)據(jù)轉(zhuǎn)換為帶 分離格式的圖像數(shù)據(jù)的格式轉(zhuǎn)換設(shè)備和方法。本發(fā)明的另 一 方面提供一種這樣的格式轉(zhuǎn)換設(shè)備和方法,從而提高圖像處理效率其能夠?qū)Ы徊娓袷降膱D像數(shù)據(jù)轉(zhuǎn)換為帶分離格式的圖像數(shù)據(jù), 隨后將ALU劃分為N分塊,并且通過單指令多數(shù)據(jù)(SIMD)方法處理帶分 離格式的圖像數(shù)據(jù)。根據(jù)本發(fā)明的另一方面,提供一種格式轉(zhuǎn)換設(shè)備,所述設(shè)備包括存儲 器,存儲帶交叉格式的圖像數(shù)據(jù);轉(zhuǎn)換模塊,通過以跨距提升存儲器的讀取 地址來讀取存儲器,并且將帶交叉格式的圖像數(shù)據(jù)轉(zhuǎn)換為帶分離格式的圖<象 數(shù)據(jù)。通過以跨距提升存儲器的讀取地址來讀取的數(shù)據(jù)與同一類型的圖像數(shù) 據(jù)分量相對應(yīng)。根據(jù)本發(fā)明的另一方面,提供一種格式轉(zhuǎn)換設(shè)備,所述設(shè)備包括存儲 器,存儲帶交叉格式的圖像數(shù)據(jù);存儲器控制器,在每個時鐘周期,從基地 址對每個跨距提升存儲器的讀取地址,并且將讀取地址應(yīng)用到存儲器;包括 N個寄存器的寄存器集合,所述N個寄存器的每個存儲通過應(yīng)用所述讀取地 址而連續(xù)地讀取的所述N個數(shù)據(jù)的每個數(shù)據(jù)。存儲在寄存器集合的數(shù)據(jù)與帶 分離格式相對應(yīng)。在本發(fā)明的一方面中,存儲器控制器包括接收基地址和存儲所述輸入的 基地址的鎖存器。此外,在每個時鐘周期,存儲器控制器將存儲在鎖存器中 的基地址和跨距相加的值輸出到存儲器的地址線,并且在鎖存器中存儲相加的值。在本發(fā)明的另一方面中,所述設(shè)備還包括控制器,通過將存儲在所述 N個寄存器中的數(shù)據(jù)同時地輸入到N分塊的ALU中來執(zhí)行計算。根據(jù)本發(fā)明的另一方面,提供一種格式轉(zhuǎn)換設(shè)備,所述設(shè)備包括存儲 器,存儲帶交叉格式的圖像數(shù)據(jù);轉(zhuǎn)換模塊,重復從存儲器讀取多個圖像數(shù) 據(jù)分量并且將所述多個圖像數(shù)據(jù)分量存儲在預(yù)定的寄存器中的操作,以及將 所述多個圖像數(shù)據(jù)分量轉(zhuǎn)換為多個帶分離格式的圖像數(shù)據(jù)。在本發(fā)明的另一方面中,所述轉(zhuǎn)換模塊包括地址生成單元(AGU), 生成用于從存儲器讀取所述多個圖像數(shù)據(jù)分量的讀取地址,并且將所述讀取 地址應(yīng)用到存儲器;寄存器集合,包括存儲通過所述讀取地址的應(yīng)用讀取的 所述多個圖像數(shù)據(jù)分量的多個寄存器;SIMD封隔器,激活在寄存器集合中 預(yù)定位置的多個寄存器,并且將所述多個圖像數(shù)據(jù)分量存儲在所述多個寄存 器中,所述預(yù)定位置取決于圖像數(shù)據(jù)分量的類型。
通過下面結(jié)合附圖對本發(fā)明的特定示例性實施例的詳細描述,本發(fā)明的 上述和其他方面將會變得更加清楚而且更容易被理解,其中圖l是示出根據(jù)現(xiàn)有技術(shù)的帶交叉格式的示圖; 的示圖;圖3是示出根據(jù)本發(fā)明的示例性實施例的格式轉(zhuǎn)換設(shè)備的示圖; 圖4是示出根據(jù)本發(fā)明的示例性實施例的AGU的示圖; 圖5是示出根據(jù)本發(fā)明的另一示例性實施例的格式轉(zhuǎn)換設(shè)備的示圖; 圖6A至圖6D是示出圖5的格式轉(zhuǎn)換設(shè)備的操作的示圖;和 圖7是示出根據(jù)本發(fā)明的示例性實施例將64位ALU劃分為四個16位 ALU和使用所述64位ALU的配置的示圖。
具體實施方式
現(xiàn)在將詳細地說明本發(fā)明的示例性實施例,其示例在附圖中示出,其中, 在所有附圖中,相同的附圖標號指代相同的元件。以下描述這些實施例,從 而參照附圖來說明本發(fā)明。的示圖。圖2的圖像數(shù)據(jù)210被以帶交叉格式存儲。具體地說,理解為在圖像數(shù) 據(jù)210中,不收集紅(R)、綠(G)和藍(B)的每個色帶,而是將其混和。 此外,圖像數(shù)據(jù)220被以帶分離格式存儲。在圖像數(shù)據(jù)220中,對于R、 G 和B的每個色帶,數(shù)據(jù)被分開。具體地說,K個R^t據(jù)、K個G數(shù)據(jù)和K 個B數(shù)據(jù)被收集。為了將帶交叉格式的圖像數(shù)據(jù)210轉(zhuǎn)換為帶分離格式的圖像數(shù)據(jù)220,只有同 一 色帶的數(shù)據(jù)從帶交叉格式的圖像數(shù)據(jù)210被提取,并 且所述同一色帶的數(shù)據(jù)以如圖2所示,其每k個數(shù)據(jù)被連接的方式被存儲。參照圖3,詳細地描述根據(jù)本發(fā)明的示例性實施例的格式轉(zhuǎn)換設(shè)備。如圖3所示,根據(jù)本示例性實施例的格式轉(zhuǎn)換設(shè)備包括存儲帶交叉檔, 式的圖像數(shù)據(jù)的存儲器310和將帶交叉格式的圖像數(shù)據(jù)轉(zhuǎn)換為帶分離格式的 圖像數(shù)據(jù)的轉(zhuǎn)換模塊。存儲器310存儲帶交叉格式的圖像數(shù)據(jù)。例如,當本發(fā)明的示例性實施 例被應(yīng)用于數(shù)碼相機時,數(shù)碼相機在存儲器310中以帶交叉格式存儲成〗象的 圖像數(shù)據(jù)。上文詳細地描述了帶交叉格式。轉(zhuǎn)換模塊通過對每個跨距(stride)提升存儲器310的讀取地址來讀取存 儲器310,并且將帶交叉格式的圖像數(shù)據(jù)轉(zhuǎn)換為帶分離格式的圖像數(shù)據(jù)。轉(zhuǎn) 換模塊包括存儲器控制器320和寄存器集合(register file ) 330。存儲器控制器320包括AGU,在每個時鐘周期,AGU對每個跨距從基 地址(base address)提升存儲器310的讀取地址,并且將所述讀取地址應(yīng)用 到存儲器310。具體地講,存儲器控制器320生成基地址,通過對每個跨距N - 1次地提升基地址連續(xù)地生成N個地址,并且將所述基地址和N個地址應(yīng) 用到存儲器310。例如,假設(shè)圖2的圖像數(shù)據(jù)210被存儲在存儲器310中,并且每個圖像 數(shù)據(jù)分量(component)具有16位的大小。因而,圖2的RO、 GO、 BO、 Rl、 Gl、 Bl等各具有16位的大小。此外,假設(shè)存儲有RO的地址與"0"相應(yīng)。 由此,與基地址相對應(yīng)的"0"通過基線(base line) 321被輸入到存儲器控 制器320中。此外,跟隨R0的同一類型的圖像數(shù)據(jù)分量與R1相應(yīng),并且由 于R1的地址與"48"相應(yīng),所以"48"被輸入到跨距線(stride line) 323。在這種情況下,存儲器控制器320從所述基地址生成N個地址。第一個 地址是基地址,后面的N - 1個地址通過對每個跨距連續(xù)地提升基地址生成。 所述生成的N個地址;波應(yīng)用到存儲器310。 N與分組(group)為多少個同一 類型的圖像數(shù)據(jù)分量相對應(yīng)。例如,當本示例性實施例通過收集同一類型的四個圖像數(shù)據(jù)分量的每個 來生成帶分離格式的圖像數(shù)據(jù),即N = 4時,基321輸入和跨距323輸入被 執(zhí)行,并且隨后,在第一時鐘周期(clock cycle),來自基321輸入的基地址 輸入經(jīng)由存儲器310的地址輸入線327被應(yīng)用到存儲器310。因而,與作為基地址的"0"相對應(yīng)的R0的16位數(shù)據(jù)被讀取,并且一皮輸出到存儲器310 的數(shù)據(jù)線311。數(shù)據(jù)線311被發(fā)散為數(shù)據(jù)線313、 315、 317和319,其分別與 寄存器集合330的寄存器331、 333、 335和337連接。在這種情況下,存4渚 器控制器320通過允許寫入(write enable, WE )線325選4奪并且僅激活(enable ) 寄存器集合330的寄存器331。因此,經(jīng)由數(shù)據(jù)線313、 315、 317和319的 RO的16位數(shù)據(jù)僅被記錄在寄存器331中。然后,雖然在基線321和跨距線323沒有另外的輸入,但是存儲器控制 器320在隨后的時鐘周期,通過地址輸入線327自動地將地址值"48"應(yīng)用 到存儲器310,并且通過WE線325僅激活寄存器333,所述地址值"48"通 過將基地址"0"提升至與跨距相應(yīng)的"48"獲得。因此,通過地址"48"讀 取的Rl的16位數(shù)據(jù)被輸出到存儲器310的數(shù)據(jù)線311。數(shù)據(jù)線311被發(fā)散 為數(shù)據(jù)線313、 315、 317和319,并且分別與寄存器集合330的寄存器331、 333、 335和337連接。在這種情況下,由于僅僅寄存器集合330的寄存器333 通過WE線325被激活,所以Rl的16位數(shù)據(jù)被記錄在寄存器333中。然后,存儲器控制器320在隨后的時鐘周期,通過地址輸入線327將地 址值"96"應(yīng)用到存儲器310,并且通過WE線325僅激活寄存器335,所述 地址值"96"通過將地址值"48"提升至與跨距相應(yīng)的"96"獲得。因此, 通過地址"96"讀取的R2的16位數(shù)據(jù)被記錄在寄存器335中。類似地,存儲器控制器320在隨后的時鐘周期,通過地址輸入線327將 地址值"144"應(yīng)用到存儲器310,并且通過WE線325僅激活寄存器337, 所述地址值"144"通過將地址值"96"提升至與跨距相應(yīng)的"144"獲得。 因此,通過地址"144"讀取的R3的16位數(shù)據(jù)被記錄在寄存器337中。因此,以圖2的帶交叉^"式存儲的數(shù)據(jù)RO、 Rl、 R2和R3以如圖2的 帶分離格式220的圖像數(shù)據(jù)所示的帶分離格式被存儲在寄存器331、 333、 335 和337中。如上所述,通過對每個跨距提升存儲器310的讀取地址而讀取的 數(shù)據(jù)與同一類型的圖像數(shù)據(jù)分量相對應(yīng)。具體地講,當圖像數(shù)據(jù)分量"R"從 存儲器310被讀取時,通過提升跨距而從存儲器310讀取的數(shù)據(jù)與同一類型 的圖像數(shù)據(jù)分量(具體為"R")相對應(yīng)。當圖像數(shù)據(jù)分量"G"從存儲器310 被讀取時,通過提升跨距而從存儲器310讀取的數(shù)據(jù)與同一類型的圖像數(shù)據(jù) 分量(具體為"G")相對應(yīng)。隨后,當在基線321的輸入與"16"相對應(yīng),并且在跨距線323的輸入與"48"相對應(yīng)時,G0、 Gl、 G2和G3被分組到一起,并且當基321輸入與 "32"相對應(yīng),并且^爭距323輸入與"48"相對應(yīng)時,B0、 Bl、 B2和B3 一皮分組到一起。寄存器集合330包括多個寄存器。當寄存器集合330包括N個寄存器時, 寄存器集合330的所述N個寄存器中的每個存儲從存儲器310讀取的每個數(shù) 據(jù)。在寄存器集合330中存儲的數(shù)據(jù)與帶分離格式的圖像數(shù)據(jù)相對應(yīng)。在本示例性實施例中,雖然一次地執(zhí)行到基線321和跨距線323的輸入, 但是存儲器控制器320自動地生成N個地址并且將所述N個地址應(yīng)用到存儲 器310。然而,本發(fā)明不限于此。根據(jù)本發(fā)明的另 一示例性實施例,只有將被分組的圖像數(shù)據(jù)分量的間隔 可以被跨距線323輸入。具體地講,在上述的示例中,與基地址相對應(yīng)的"0" 在基線321被輸入,并且"3"在跨距線323被輸入。在本示例性實施例中, 存儲器控制器320可根據(jù)預(yù)定規(guī)則、基于在跨距線323的輸入來生成隨后的 地址。例如,在本示例性實施例中,存儲器控制器320通過將跨距323輸入 與對應(yīng)于一個圖像數(shù)據(jù)分量的大小的"16"相乘來計算生成地址所需的實際 跨距。因此,當在跨距線323處"3"被輸入時,通過將跨距線323的輸入"3" 和預(yù)定值"16"相乘來生成實際跨距。當在跨距線323處"3"被輸入時,存 儲器控制器320在第一時鐘周期將地址"0"輸出到地址線327,并且在隨后 的時鐘周期,將地址"48"輸出到地址線327。地址"48"與基線321的輸 入和計算的實際跨距相加的值相對應(yīng)。控制器(未示出)通過將存儲在所述N個寄存器331、 333、 335和337 的數(shù)據(jù)同時輸入到N分塊(N-partitioned )的ALU 340來執(zhí)行計算。例如, ALU 340與執(zhí)行64位計算的ALU相對應(yīng),并且當執(zhí)行16位計算時,應(yīng)當消 耗一個時鐘周期。當通過將四個16位數(shù)據(jù)同時輸入到ALU 340來執(zhí)行計算 時,提供四倍的總處理量(throughput )。在圖3中,64位的ALU 340被用作 四分塊的ALU,并且通過接收作為輸入的四個16位寄存器值來執(zhí)行計算。 稍后參照圖7詳細地對此加以描述。圖4是示出根據(jù)本發(fā)明的示例性實施例的包括在存儲器控制器中的AGU 的示圖。AGU 400包括復用器(MUX) 410、鎖存器420和430、和ALU 440。在跨距線423的跨距輸入被存儲在鎖存器430中。當在跨距線423輸入 的值不直接地被用于跨距,并且針對跨距輸入423而計算的值被用于跨距時,計算實際地將被用于跨距線423中的跨距的模塊被置于跨距線423和鎖存器 430之間?;€421和ALU的反饋輸出線441被輸入到MUX 410。 MUX 410在生 成N個地址的第一個地址時選擇基線421,在生成所述N個地址的其他地址 時選擇ALU的反饋輸出線441。被MUX410選擇的線被輸出到鎖存器420。例如,假設(shè)圖2的圖像數(shù)據(jù)210被存儲在存儲器310中,并且每個圖像 數(shù)據(jù)分量具有16位大小。因而,圖2的R0、 GO、 BO、 Rl、 Gl、 Bl等各具 有16位大小。此外,假設(shè)存有RO的地址與"0"相對應(yīng)。因此,與基地址相 對應(yīng)的"0"通過基線421被輸入到AGU400中。此外,跟隨RO的同一類型 的圖像數(shù)據(jù)分量與Rl相對應(yīng),并且由于R1的地址與"48"相對應(yīng),所以在 跨距線423處"48"被輸入。當本示例性實施例通過收集同一類型的四個圖像數(shù)據(jù)分量的每個(即N =4 )來生成帶分離格式的圖像數(shù)據(jù)時,基421輸入和跨距423輸入被執(zhí)行, 并且隨后,在第一時鐘周期,MUX410選擇基線421并且將基線421輸出給 鎖存器420,并且被基線421輸入的值被存儲在鎖存器420中。如上所述, 在基線421輸入的基地址經(jīng)由MUX 410被輸入到鎖存器420中,并且所述輸 入的基地址被存儲在鎖存器420中。此外,在跨距線423的輸入被存儲在鎖 存器430中。此外,存儲在鎖存器420中的值被直接輸出到存儲器310的地 址447。在下一個時鐘周期,存儲在鎖存器420中的基值"0"和存儲在鎖存器 430中的跨距"48"通過ALU 440的輸入443和445被輸入。ALU 440將輸 入值相加,生成下一個地址"48",并且將所述下一個地址"48"輸出到存儲 器310的地址447和反々貴輸出線441。輸出線441 #1 MUX 410選擇,并且"48" 被存儲在鎖存器420中。在下一個時鐘周期,存儲在鎖存器420中的基值"48"和存儲在鎖存器 430中的跨距"48" 通過ALU 440的輸入443和445被輸入。ALU 440將輸 入值相加,生成下一個地址"96",并且將所述下一個地址"96"輸出到存儲 器310的地址447和反饋輸出線441 。反饋輸出線441被MUX 410選擇,并 且"96"被存儲在鎖存器420中。在下一個時鐘周期,存儲在鎖存器420中的基值"96"和存儲在鎖存器 430中的跨距"48" 通過ALU 440的輸入443和445 ^皮輸入。ALU 440將輸入值相加,生成下一個地址"144",并且將所述下一個地址"144"輸出到存 儲器310的地址447和反饋輸出線441。反饋輸出線441被MUX 410選擇, 并且"144"被存儲在鎖存器420中。當N與四相對應(yīng)(即N-4),并且四個 地址被完全地生成和輸出時,在AGU 400中,新的值在基線421和跨距線423 被輸入,并且AGU 400再次重復生成四個地址的過程。圖5是示出根據(jù)本發(fā)明另一示例性實施例的格式轉(zhuǎn)換設(shè)備的示圖。圖5 的格式轉(zhuǎn)換設(shè)備總體包括存儲器510和轉(zhuǎn)換模塊(未示出)。存儲器510存儲帶交叉格式的圖像數(shù)據(jù)。轉(zhuǎn)換模塊重復從存儲器510讀 取多個圖像數(shù)據(jù)分量、將所述多個圖像數(shù)據(jù)分量存儲在預(yù)定寄存器中的操作, 并且將所述多個圖像數(shù)據(jù)分量轉(zhuǎn)換為多個帶分離格式的圖像數(shù)據(jù)。轉(zhuǎn)換模塊 包括存儲器控制器520和寄存器集合530。存儲器控制器520包括AGU 550和SIMD封隔器(packer) 560。量的讀取地址,并且將讀取地址線527的讀取地址應(yīng)用到存儲器510。在本 示例性實施例中,通過一次地應(yīng)用讀取地址線527來讀取所述多個圖像數(shù)據(jù) 分量,以便減少對存儲器510的訪問時間。例如,當參照圖1, 一個圖像數(shù) 據(jù)分量與16位相對應(yīng)時,地址"0" 一皮應(yīng)用,并且與總共64位相對應(yīng)的RO、 GO、 BO和Rl被讀取。在這種情況下,在跨距線523的輸入與64相對應(yīng)。 因此,與總共64位相對應(yīng)的Gl 、 B1 、 R2和G2隨后又^皮讀取。當假設(shè)一次 地讀取八個圖像數(shù)據(jù)分量時,在跨距線523的輸入應(yīng)當被控制為128。AGU 550包括接收在基線521的基地址,并且存儲在基線521的輸入地 址的鎖存器。此外,AGU 550將基線521的地址(其被存儲在鎖存器中)與 跨距線523的輸入相加的值輸出到存儲器510的讀取地址線527,并且將相 加的值存儲在鎖存器中。在上文參照圖4對AGU 550的結(jié)構(gòu)和操作給予了詳 細描述。寄存器集合530包括多個寄存器,所述多個寄存器存儲通過應(yīng)用所述讀 取地址527從存儲器510讀取的多個圖像數(shù)據(jù)分量的數(shù)據(jù)。SIMD封隔器560激活在在寄存器集合530內(nèi)預(yù)定位置的多個寄存器, 并且將所述多個圖像數(shù)據(jù)分量存儲在多個寄存器531至539和541至543中, 所述預(yù)定位置取決于圖像數(shù)據(jù)分量的類型??刂破?未示出)通過將存儲在寄存器集合530的多個寄存器中的數(shù)據(jù)同時地輸入到N分塊的ALU 540中來執(zhí)行計算。例如,ALU 540與執(zhí)行64 位計算的ALU相對應(yīng),并且當執(zhí)行16位計算時,應(yīng)當消耗一個時鐘周期。 當通過將4個16位數(shù)據(jù)同時地輸入到ALU 540中來執(zhí)行計算時,提供四倍 的總處理量。在圖5中,64位ALU 540被用作四分塊的ALU,并且通過接 收四個16位寄存器值作為輸入來執(zhí)行計算。參照圖7詳細地對此加以描述如 下。圖6A至6D是示出圖5的格式轉(zhuǎn)換設(shè)備的操作的示圖。圖5的存儲器510存儲帶交叉格式的圖像數(shù)據(jù)。本示例性實施例描述存 儲器510存儲圖1的數(shù)據(jù)的情形。存有圖像數(shù)據(jù)的起始地址被從存儲器510輸入到基線521,從而讀取多 個圖像數(shù)據(jù)分量。在本示例性實施例中,假設(shè)圖1的存儲的圖像數(shù)據(jù)的起始 地址與"0"相對應(yīng)。因此,"0"被輸入到基521中。此外,當意圖通過一次 地將地址應(yīng)用到地址線527來讀取四個圖像數(shù)據(jù)分量,并且一個圖像數(shù)據(jù)分 量與16位相對應(yīng)時,"64"被輸入到跨距線523。因此,AGU 550生成地址 "0",并且將地址"0"應(yīng)用到存儲器510的讀取地址線527。因此,從存儲 器510讀取的64位的多個圖像數(shù)據(jù)分量R0、 GO、 B0和R1被輸出到存儲器 510的數(shù)據(jù)輸出線511。存儲器510的數(shù)據(jù)輸出線511被分成每個為16位的線513、 515、 517 和519,并且與不同寄存器組的連線在存儲器510的數(shù)據(jù)輸出線511被執(zhí)行。 在圖5中,線513與寄存器531、 535和539連接,線515與寄存器532、 536 和541連接。線517與寄存器533、 537和542連接,線519與寄存器534、 538和543連接。此外,SIMD封隔器560激活在包括在寄存器集合530中的多個寄存器 當中的預(yù)定位置的多個寄存器,所述的預(yù)定位置取決于圖像數(shù)據(jù)分量的類型。 SIMD封隔器560通過與寄存器集合530的多個寄存器連接的WE線525、 526、 527和528激活在所述預(yù)定位置的多個寄存器。參照圖6A, SIMD封隔器560激活寄存器531、 534、 537和541。因此, 通過線513、 515、 517和519發(fā)送的數(shù)據(jù)分別被存儲在寄存器531、 534、 537 和541中。當所述讀取的數(shù)據(jù)與RO、 GO、 BO和Rl相對應(yīng)時,圖像數(shù)據(jù)分 量R1通過線513被存儲在寄存器531中。類似地,圖像數(shù)據(jù)分量BO通過線 515被存儲在寄存器541中,圖像數(shù)據(jù)分量GO通過線517被存儲在寄存器537中,圖像數(shù)據(jù)分量RO通過線519被存儲在寄存器534中。由于"64"被輸入到跨距線523中,因此AGU 550隨后生成地址"64", 并且將地址"64"應(yīng)用到存儲器510。參照圖1,數(shù)據(jù)G1、 Bl、 R2和G2被 讀取。SIMD封隔器560激活寄存器538、 542、 532和535。因而,如圖6B 所示,數(shù)據(jù)Gl、 Bl、 R2和G2分別被存儲在寄存器538、 542、 532和535 中。其次,AGU 550生成地址"128",并且將地址"128"應(yīng)用到存儲器510。 參照圖1,數(shù)據(jù)B2、 R3、 G3和B3被讀取。SIMD封隔器560激活寄存器543、 533、 536和539。因此,如圖6C所示,數(shù)據(jù)B2、 R3、 G3和B3分別被存儲 在寄存器543、 533、 536和539中。通過重復如圖6A至6C所示的寄存器選擇,SIMD封隔器560可將以帶 交叉格式存儲的圖像數(shù)據(jù)轉(zhuǎn)換為帶分離格式。如圖6C所示,同一類型的圖像 數(shù)據(jù)分量被收集,然而需要順序控制。使用排列(permutation)可以容易地 執(zhí)行所述順序控制。當執(zhí)行排列操作時,同一類型的圖像數(shù)據(jù)可以順序地被 排列,如圖6D中所示。由于一般的SIMD控制器支持排列操作,所以當使 用圖6A至6C對同一類型的每個圖像數(shù)據(jù)進行分類時,可以容易地獲得帶分 離格式的數(shù)據(jù)。圖7是示出根據(jù)本發(fā)明的示例性實施例的將64位ALU劃分為四個16 位ALU和使用所述64位ALU的配置的示圖。由于近來ALU的性能已經(jīng)顯著地提高, 一般使用64位的ALU。然而, 如上所述,當一個圖像數(shù)據(jù)分量具有16位值時,64位ALU在一個時鐘周期 執(zhí)行兩個16位圖像數(shù)據(jù)分量的計算,其余的32位被浪費。因此,由于當執(zhí) 行轉(zhuǎn)換為帶分離格式的圖像數(shù)據(jù)的計算時,N分塊的ALU同時執(zhí)行多個計算, 所以本發(fā)明的示例性實施例提高總處理量。在圖3和圖5中,轉(zhuǎn)換為帶分離格式的圖像數(shù)據(jù)被分別存儲在寄存器集 合330和530中。圖7的寄存器710和720被包括在寄存器集合330和530 中。16位ALU 730、 740、 750和760物理地是一個64位ALU,然而對16 位執(zhí)行計算。具體地講,16位ALU730接收REG0和REG4作為輸入,執(zhí)行 計算,并且將所述計算的結(jié)果輸出到REG8。 16位ALU 740接收REG1和 REG5作為輸入,執(zhí)行計算,并且將所述計算的結(jié)果輸出到REG9。 16位ALU 750接收REG2和REG6作為輸入,執(zhí)行計算,并且將所述計算的結(jié)果輸出到REGIO。 16位ALU 760接收REG3和REG7作為輸入,執(zhí)行計算,并且 將所述計算的結(jié)果輸出到REGll。在一個時鐘周期同時地執(zhí)行16位ALU 730、 740、 750和760的操作。輸出數(shù)據(jù)770以帶分離格式被存儲。本發(fā)明的示例性實施例包括包含由計算機執(zhí)行的用于實現(xiàn)各種操作的程 序指令的計算機可讀介質(zhì)。所述介質(zhì)也可包括數(shù)據(jù)文件、數(shù)據(jù)結(jié)構(gòu)等,或者 數(shù)據(jù)文件、數(shù)據(jù)結(jié)構(gòu)等與所述程序指令的結(jié)合。所述介質(zhì)和程序指令可以是 為了本發(fā)明的目的而具體設(shè)計和構(gòu)建的介質(zhì)和程序指令,或者它們可以是對 于在計算機軟件領(lǐng)域中的技術(shù)人員來說公知的并且可利用的。計算機可讀介 質(zhì)的例子包括石茲介質(zhì)(如硬盤、軟盤和》茲帶)、光學介質(zhì)(如CD ROM盤和 DVD )、磁光介質(zhì)(如光盤)和具體配置為存儲和執(zhí)行程序指令的硬件裝置(如 只讀存儲器(ROM)、隨機存取存儲器(RAM )、閃速存儲器等)。程序指令 的實例包括機器碼(如由編譯器產(chǎn)生)和包含可以由計算機使用解釋器執(zhí)行 的高級代碼的文件。例如,在本發(fā)明的示例性實施例中描述的全部和部分存儲器控制器320 和520可以在計算機程序中實現(xiàn)。在這種情況下,包含計算機程序的介質(zhì)被 包括在本發(fā)明的示例性實施例中。如上所述,根據(jù)本發(fā)明的示例性實施例,提供一種能夠有效地將帶交叉 格式的圖像數(shù)據(jù)轉(zhuǎn)換為帶分離格式的圖像數(shù)據(jù)的格式轉(zhuǎn)換設(shè)備和方法。此外,根據(jù)本發(fā)明的示例性實施例,提供一種這樣的格式轉(zhuǎn)換設(shè)備和方 法,從而提高圖像處理效率其能夠?qū)Ы徊娓袷降膱D像數(shù)據(jù)轉(zhuǎn)換為帶分離 格式的圖像數(shù)據(jù),隨后將ALU劃分為N分塊,并且通過SIMD方法處理帶 分離格式的圖像數(shù)據(jù)。雖然已經(jīng)示出和描述了本發(fā)明的幾個示例性實施例,但是本發(fā)明不限于 所述描述的示例性實施例。相反,本領(lǐng)域的技術(shù)人員應(yīng)該理解,在不脫離由 權(quán)利要求及其等同物限定的本發(fā)明的原則和精神的情況下,可以對這些示例 性實施例進行各種改變。
權(quán)利要求
1. 一種格式轉(zhuǎn)換設(shè)備,所述設(shè)備包括存儲器,存儲帶交叉格式的圖像數(shù)據(jù);和轉(zhuǎn)換模塊,通過以跨距提升存儲器的讀取地址來讀取存儲器,并且將帶交叉格式的圖像數(shù)據(jù)轉(zhuǎn)換為帶分離格式的圖像數(shù)據(jù)。
2、 如權(quán)利要求l所述的設(shè)備,其中,通過以跨距提升存儲器的讀取地址 來讀取的所述帶交叉格式的圖像數(shù)據(jù)與同 一類型的圖像數(shù)據(jù)分量相對應(yīng)。
3、 如權(quán)利要求l所述的設(shè)備,其中,轉(zhuǎn)換模塊包括 存儲器控制器,生成基地址,并且通過N-1次地以跨距提升所述基地址來連續(xù)地生成N個地址。
4、 如權(quán)利要求3所述的設(shè)備,其中,存儲器控制器包括 鎖存器,接收和存儲基地址。
5、 如權(quán)利要求4所述的設(shè)備,其中,在每個時鐘周期,存儲器控制器將 存儲在鎖存器中的基地址和跨距相加的值輸出到存儲器的地址線,并且在鎖 存器中存儲相加的值。
6、 如權(quán)利要求l所述的設(shè)備,其中,轉(zhuǎn)換模塊還包括 包括N個寄存器的寄存器集合,存儲N次地從存儲器讀取的寄存器數(shù)據(jù),其中,存儲的寄存器數(shù)據(jù)與帶分離格式的圖像數(shù)據(jù)相對應(yīng)。
7、 如權(quán)利要求6所述的設(shè)備,還包括控制器,通過將所述存儲的寄存器數(shù)據(jù)同時地輸入到N分塊的算術(shù)邏輯 單元來執(zhí)行計算。
8、 一種格式轉(zhuǎn)換設(shè)備,所述設(shè)備包括 存儲器,存儲帶交叉格式的圖像數(shù)據(jù);和存儲器控制器,在每個時鐘周期,從基地址以跨距提升存儲器的讀取地 址,并且將讀取地址應(yīng)用到存儲器。
9、 如權(quán)利要求8所述的設(shè)備,其中,通過應(yīng)用所述讀取地址而連續(xù)地讀 取的N個圖像數(shù)據(jù)與同 一類型的圖像數(shù)據(jù)分量相對應(yīng)。
10、 如權(quán)利要求9所述的設(shè)備,還包括包括N個寄存器的寄存器集合,存儲通過應(yīng)用所述讀取地址而連續(xù)地讀 取的所述N個圖像數(shù)據(jù)的寄存器數(shù)據(jù)。
11、 如權(quán)利要求10所述的設(shè)備,其中,存儲的寄存器數(shù)據(jù)與帶分離才各式 相對應(yīng)。
12、 如權(quán)利要求10所述的設(shè)備,還包括控制器,通過將存儲的寄存器數(shù)據(jù)同時地輸入到N分塊的算術(shù)邏輯單元 中來執(zhí)行計算。
13、 一種格式轉(zhuǎn)換設(shè)備,所述設(shè)備包括 存儲器,存儲帶交叉格式的圖像數(shù)據(jù);和轉(zhuǎn)換模塊,重復從存儲器讀取多個圖像數(shù)據(jù)分量并且將所述多個圖 <象凄史 據(jù)分量存儲在預(yù)定的寄存器中的操作,以及將所述多個圖像數(shù)據(jù)分量轉(zhuǎn)換為 多個帶分離格式的圖像數(shù)據(jù)。
14、 如權(quán)利要求13所述的設(shè)備,其中,轉(zhuǎn)換模塊包括 地址生成單元(AGU),生成用于從存儲器讀取所述多個圖像數(shù)據(jù)分量的讀取地址,并且將所述讀取地址應(yīng)用到存儲器;和包括多個寄存器的寄存器集合,存儲通過所述讀取地址的應(yīng)用讀取的所 述多個圖像數(shù)據(jù)分量。
15、 如權(quán)利要求13所述的設(shè)備,其中,AGU還包括鎖存器,接收基地址,并且存儲基地址,其中,存儲在鎖存器中的基地 址與跨距相加的值被輸出到存儲器的地址線,并且相加的值被存儲在鎖存器中。
16、 如權(quán)利要求14所述的設(shè)備,其中,轉(zhuǎn)換模塊還包括 單指令多數(shù)據(jù)(SIMD)封隔器,激活在寄存器集合中預(yù)定位置的多個寄存器,并且將所述多個圖像數(shù)據(jù)分量存儲在所述多個寄存器中,所述預(yù)定位 置取決于圖像數(shù)據(jù)分量的類型。
17、 如權(quán)利要求16所述的設(shè)備,還包括控制器,通過將存儲在多個寄存器中的所述多個圖像數(shù)據(jù)分量同時地輸 入到N分塊的算術(shù)邏輯單元來執(zhí)行計算。
全文摘要
提供一種將帶交叉格式的圖像數(shù)據(jù)轉(zhuǎn)換為帶分離格式的圖像數(shù)據(jù)的格式轉(zhuǎn)換設(shè)備。所述設(shè)備包括存儲器,存儲帶交叉格式的圖像數(shù)據(jù);轉(zhuǎn)換模塊,通過對每個跨距提升存儲器的讀取地址來讀取存儲器,并且將帶交叉格式的圖像數(shù)據(jù)轉(zhuǎn)換為帶分離格式的圖像數(shù)據(jù)。
文檔編號H04N9/64GK101217673SQ200710139008
公開日2008年7月9日 申請日期2007年7月20日 優(yōu)先權(quán)日2007年1月2日
發(fā)明者劉東勛, 孔駿鎮(zhèn), 徐東寬, 柳秀晶, 趙淵坤, 金政煜, 金碩鎮(zhèn), 金鐘冕, 閔庚俊 申請人:三星電子株式會社