專利名稱:信息處理裝置及信息處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種信息處理裝置及信息處理方法,尤其涉及、但不限于用于處理/ 管理在包括互聯(lián)節(jié)點(diǎn)的雙向管線(pipeline)中在彼此相反的方向上移動的數(shù)據(jù)元素的技 術(shù)。
背景技術(shù):
存在比較在具有多個節(jié)點(diǎn)的兩個數(shù)據(jù)流的各節(jié)點(diǎn)中保持的各數(shù)據(jù)元素的應(yīng)用。一 個示例涉及當(dāng)確定具有多個數(shù)據(jù)的第一數(shù)據(jù)流的元素是否與第二數(shù)據(jù)流的元素中的至少 一個匹配時、循環(huán)比較第一數(shù)據(jù)流的元素的處理。使用這種應(yīng)用,在一個方向上移動數(shù)據(jù)元 素的第一數(shù)據(jù)流和在另一個方向上移動數(shù)據(jù)元素的第二數(shù)據(jù)流分別比較它們各自的數(shù)據(jù) 元素。然而,如后面將要描述的,在彼此相反的方向上移動數(shù)據(jù)元素的數(shù)據(jù)流中,存在各節(jié) 點(diǎn)中的數(shù)據(jù)元素的比較沒有正確進(jìn)行的情況。日本特許第3588487號公報公開了一種雙向管線技術(shù)(逆流(coimterflow)管線 技術(shù)),利用該技術(shù),在彼此相反的方向上移動數(shù)據(jù)元素的兩種管線數(shù)據(jù)流中,在管線的各 級(stage)比較各數(shù)據(jù)元素。該技術(shù)包括通過沿著規(guī)則的路徑提供相反方向上的不規(guī)則數(shù) 據(jù)流來對稱地處理兩個數(shù)據(jù)集,以形成簡單的規(guī)則結(jié)構(gòu)。結(jié)果,使得典型的RISC(精簡指令 集計算機(jī),reduced instruction set computer)處理器特有的復(fù)雜旁路電路變得冗余。使 用該技術(shù),管線中的各級僅與該級前面和后面的級進(jìn)行通信,而不經(jīng)由前述旁路電路直接 通信,并且數(shù)據(jù)元素在使用之前通過多個級。因此,該技術(shù)的特征在于使數(shù)據(jù)發(fā)送延遲最小 化。此外,典型的同步管線使用級間握手(handshake)協(xié)議進(jìn)行工作。使用這種握手 協(xié)議,在接收方向發(fā)送側(cè)表明具有保存新的數(shù)據(jù)元素的空間,并且具有可使用的數(shù)據(jù)元素 的情況下,發(fā)送側(cè)在向接收側(cè)表明要獲取該數(shù)據(jù)元素之后發(fā)送數(shù)據(jù)元素。因此,使用這種典 型的同步管線的握手協(xié)議,發(fā)送側(cè)確定何時傳送數(shù)據(jù),從而引起了 “氣泡(bubble)(相當(dāng)于 數(shù)據(jù)流中的缺口)”出現(xiàn)的可能性以及隨之產(chǎn)生的效率的降低。使用該技術(shù),鄰近級(在 相同的管線中)相互并對稱地(與另一管線)決定給定級的數(shù)據(jù)元素何時可以向下一級移 動,從而實(shí)現(xiàn)了(與其它管線的)點(diǎn)對稱通信。此外,該傳統(tǒng)技術(shù)具有如下配置根據(jù)要對數(shù)據(jù)元素執(zhí)行的預(yù)定操作、以及在發(fā)送 數(shù)據(jù)元素時數(shù)據(jù)元素通過的特定級,不定期地移動數(shù)據(jù)元素。該配置抑制了如下問題在彼 此相反的方向上移動數(shù)據(jù)元素的數(shù)據(jù)流中,各節(jié)點(diǎn)中的數(shù)據(jù)元素的比較沒有正確進(jìn)行。鑒于此,首先,將使用圖9詳細(xì)描述該應(yīng)用的數(shù)據(jù)元素比較沒有正確進(jìn)行的情況。 在圖9中,示出了在彼此相反的方向上移動數(shù)據(jù)元素的兩個管線電路的一部分。位于下側(cè) 的第一管線將數(shù)據(jù)元素從圖的左側(cè)(“上游側(cè)”)移向圖的右側(cè)(“下游側(cè)”)。另一方面, 位于上側(cè)的第二管線將數(shù)據(jù)元素從圖的右側(cè)(“上游側(cè)”)移向圖的左側(cè)(“下游側(cè)”)。圖 9中的(a)示出了第一管線正在工作(數(shù)據(jù)元素移動)、第二管線沒有工作(數(shù)據(jù)元素沒有 移動)的情況,作為前述沒有問題發(fā)生的情況。圖9中的(a-Ι)示出了時刻[T]的狀態(tài),圖9中的(a_2)示出了時刻[T]之后給定固定時間段的時刻[T+1]的狀態(tài),圖9中的(a_3) 示出了時刻[T+1]之后又一固定時間段的時刻[T+2]的狀態(tài)。結(jié)果,第一管線正在工作,并 且,保持在管線級中的數(shù)據(jù)元素W、A(O)、A(I)、A (2)、B以及C從圖的左側(cè)(“上游側(cè)”)向 圖的右側(cè)(“下游側(cè)”)移動。此處,為了便于描述,Α(0)、Α⑴以及A(2)僅由括號內(nèi)數(shù)字 來區(qū)分,實(shí)際上,它們是等效的數(shù)據(jù)。通過確定(比較)電路來將第一管線和第二管線中相 對應(yīng)的各級彼此連接。從第一管線的“下游側(cè)”開始,在圖9中的(a-Ι)中的時刻[T],各級的確定結(jié)果如 下。首先,在第一管線的下游側(cè)的初始級,確定(比較)電路返回確定結(jié)果“假”,因?yàn)橄啾?較的數(shù)據(jù)元素W和A不匹配。針對后面的各級,確定(比較)電路對于各數(shù)據(jù)元素A(O)和 Z、A(1)和Y、以及A(2)和X的比較,也返回確定結(jié)果“假”。接下來,經(jīng)過一段時間之后,第一管線的數(shù)據(jù)元素在圖9中的(a-2)中的時刻 [T+1]向“下游側(cè)”移動一級。按照從第一管線的“下游側(cè)”開始的順序,各級的確定結(jié)果如 下。首先,比較數(shù)據(jù)元素A(O)和A,確定(比較)電路返回確定結(jié)果“真”。在后面的各級 中,確定(比較)電路對于各數(shù)據(jù)元素A(I)和Ζ、A(2)和Y、以及B和X的比較,返回確定 結(jié)果“假”。再經(jīng)過一段時間之后,第一管線的數(shù)據(jù)元素在圖9中的(a-3)中的時刻[T+2]向 “下游側(cè)”又移動了一級。按照從第一管線的“下游側(cè)”開始的順序,各級的確定結(jié)果如下。 首先,比較數(shù)據(jù)元素A(I)和A,確定(比較)電路返回確定結(jié)果“真”。在后面的各級中,確 定(比較)電路對于各數(shù)據(jù)元素A(2)和Z、B和Y、以及C和X的比較,返回確定結(jié)果“假”。如上所述,第一管線的數(shù)據(jù)元素隨著時間的推移而移動通過各級,同時第二管線 的“上游側(cè)”的數(shù)據(jù)元素A與第一管線的數(shù)據(jù)元素A(O)和A(I) 二者被正確比較。因此,在 第一管線和第二管線中的任何一者正在工作、而另一管線沒有正在工作的情況下,數(shù)據(jù)元 素的比較正確進(jìn)行。接下來,在圖9中的(b)中,示出了第一管線和第二管線都在工作的情況。圖9中 的(b-Ι)至(b-3)示出了與圖9中的(a-Ι)至(a-3)相同時刻的狀態(tài)。由于第一管線以類 似于圖9中的(a)的方式進(jìn)行工作,因此省略對其的描述。另一方面,與圖9中的(a)不同, 第二管線還將保持在管線級中的數(shù)據(jù)元素X、Y、Z、A、B以及C從圖的右側(cè)(或“上游側(cè)”) 向圖的左側(cè)(或“下游側(cè)”)移動。下文中,將以類似于圖9中的(a)的方式來描述在第一管線和第二管線的各對應(yīng) 級中確定(比較)電路的確定結(jié)果。從第一管線的“下游側(cè)”開始,在圖9中的(b-Ι)中的 時刻[T]各級的確定結(jié)果如下。首先,在第一管線的下游側(cè)的初始確定(比較)電路返回 確定結(jié)果“假”,因?yàn)橄啾容^的數(shù)據(jù)元素W和A不匹配。在后面的各級中,確定(比較)電路 對于各數(shù)據(jù)元素A(O)和Z、A(I)和Y、以及A(2)和X的比較,也返回確定結(jié)果“假”。接下來,經(jīng)過一段時間之后,第一管線和第二管線的數(shù)據(jù)元素在圖9中的(b_2)中 的時刻[T+1]分別向“下游側(cè)”移動一級。按照從第一管線的“下游側(cè)”開始的順序,各級 的確定結(jié)果如下。首先,確定(比較)電路比較數(shù)據(jù)元素A(O)和B,并返回確定結(jié)果“假”。 在下一級中,確定(比較)電路比較數(shù)據(jù)元素A(I)和A,并返回確定結(jié)果“真”。在后面的 各級中,確定(比較)電路對于各數(shù)據(jù)元素A(2)和Z、以及B和Y的比較,也返回確定結(jié)果 “假”。
再經(jīng)過一段時間之后,第一管線的數(shù)據(jù)元素和第二管線的數(shù)據(jù)元素在圖9中的 (b-3)中的時刻[T+2]分別向“下游側(cè)”移動一級。按照從第一管線的“下游側(cè)”開始的順 序,各級的確定結(jié)果如下。首先,確定(比較)電路返回確定結(jié)果“假”,因?yàn)橄啾容^的數(shù)據(jù)元 素A(I)和C不匹配(然而,在圖9中的(b-2)中,A⑴被確定(比較)電路確定為“真”)。 在后面的各級中,確定(比較)電路對于各數(shù)據(jù)元素A(2)和B、B和A、以及C和Z的比較, 也返回確定結(jié)果“假”。如上所述,比較了第二管線的“上游側(cè)”的數(shù)據(jù)元素A和第一管線的數(shù)據(jù)元素 A(1),但是沒有將數(shù)據(jù)元素A(O)和A(2)與第二管線的數(shù)據(jù)元素A進(jìn)行比較。例如,當(dāng)?shù)谝?管線的各數(shù)據(jù)元素與第二管線的各數(shù)據(jù)元素中的至少一個匹配時,在確定第一管線的該匹 配數(shù)據(jù)元素匹配的情況下,在圖9中的(b-Ι)至(b-3)的處理中不能獲得正確的確定。這 是由于第一管線和第二管線同時在相反的方向上移動而使得兩管線的相對移動速度加倍。實(shí)際上,在圖9中的(a)的情況下,在時刻[T]與[T+2]之間,僅僅完成了第一管 線的數(shù)據(jù)元素W、A(0)以及A(I)的比較。相比之下,在圖9中的(b)的情況下,完成了第一 管線的數(shù)據(jù)元素W、A(O)、A(I)、A⑵以及B的比較。因此,雖然與圖9中的(a)的情況相 比、圖9中的(b)的情況縮短了確定時間,但是在數(shù)據(jù)元素的比較中發(fā)生了遺漏。如前所述,日本特許第3588487號公報公開的技術(shù)通過根據(jù)要對數(shù)據(jù)元素執(zhí)行的 預(yù)定操作、以及在移動數(shù)據(jù)元素時數(shù)據(jù)元素通過的特定級,來不定期地移動數(shù)據(jù)元素,進(jìn)而 解決了以上問題。具體地說,在第一管線和第二管線的各級中監(jiān)視級狀態(tài)。在發(fā)生以上問 題的情況下,在特定級中,使雙向管線的級都停止工作,并在完成比較之后允許這些特定級 的數(shù)據(jù)元素的移動。這就防止了雙向管線中的相關(guān)數(shù)據(jù)元素在比較完成之前通過。然而,使用日本特許第3588487號公報的技術(shù),由于在特定級中執(zhí)行停止、完成比 較以及移動數(shù)據(jù)元素的操作,因此即使關(guān)注一個級,數(shù)據(jù)元素也被不規(guī)則地重復(fù)移動和停 止。本來,在使用多個處理模塊構(gòu)成管線處理的系統(tǒng)中,各節(jié)點(diǎn)中的處理越規(guī)律,越能夠?qū)?現(xiàn)吞吐率(throughput efficiency)的提高。因此,使用日本特許第3588487號公報的技 術(shù),抑制了因采用管線配置而引起的吞吐量的提高。此外,當(dāng)在兩個管線中的各個中移動數(shù) 據(jù)時,在執(zhí)行控制、使得參照相同時鐘(時鐘信號)同步化各管線的情況下,數(shù)據(jù)最終彼此 錯過。
發(fā)明內(nèi)容
因此,本發(fā)明提供一種在雙向管線的各級中可靠并快速地比較在彼此相反的方向 上移動的數(shù)據(jù)元素的技術(shù)。根據(jù)本發(fā)明的一方面,提供了一種信息處理裝置,該信息處理裝置包括第一管線 單元,其具有多個第一節(jié)點(diǎn),并被配置為將第一方向上的各第一節(jié)點(diǎn)中保持的第一數(shù)據(jù)向 所述多個第一節(jié)點(diǎn)中的另一個移動;第二管線單元,其具有與所述第一管線單元的所述第 一節(jié)點(diǎn)相對應(yīng)的多個第二節(jié)點(diǎn),并被配置為將第二方向上的各第二節(jié)點(diǎn)中保持的第二數(shù)據(jù) 向所述多個第二節(jié)點(diǎn)中的另一個移動,其中,所述第二方向與所述第一方向相反;第一比較 單元,其被配置為將關(guān)注節(jié)點(diǎn)中保持的第一數(shù)據(jù)和與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的第二節(jié)點(diǎn)中保 持的第二數(shù)據(jù)相比較,其中,所述關(guān)注節(jié)點(diǎn)是所述第一管線單元的所述第一節(jié)點(diǎn)中的一個; 以及第二比較單元,其被配置為將所述關(guān)注節(jié)點(diǎn)中保持的所述第一數(shù)據(jù),與位于相對于所述第二方向的上游側(cè)或者下游側(cè)、作為與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的所述第二節(jié)點(diǎn)的下一個節(jié) 點(diǎn)的第二節(jié)點(diǎn)中保持的第二數(shù)據(jù)相比較。根據(jù)本發(fā)明的另一方面,提供了一種用于確定由處理裝置請求的數(shù)據(jù)的緩存命中 的信息處理裝置,該信息處理裝置包括第一管線單元,其具有多個第一節(jié)點(diǎn),并被配置為 將第一方向上的各第一節(jié)點(diǎn)中保持的請求數(shù)據(jù)的地址向所述第一節(jié)點(diǎn)中的另一個移動;第 二管線單元,其具有與所述第一管線單元的所述第一節(jié)點(diǎn)相對應(yīng)的多個第二節(jié)點(diǎn),并被配 置為將第二方向上的各第二節(jié)點(diǎn)中保持的緩存標(biāo)簽向所述多個第二節(jié)點(diǎn)中的另一個移動, 其中,所述第二方向與所述第一方向相反;第一比較單元,其被配置為將關(guān)注節(jié)點(diǎn)中保持的 第一數(shù)據(jù)和與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的第二節(jié)點(diǎn)中保持的第二數(shù)據(jù)相比較,其中,所述關(guān)注 節(jié)點(diǎn)是所述第一管線單元的所述第一節(jié)點(diǎn)中的一個;第二比較單元,其被配置為將所述關(guān) 注節(jié)點(diǎn)中保持的所述第一數(shù)據(jù),與位于相對于所述第二方向的上游側(cè)、作為與所述關(guān)注節(jié) 點(diǎn)相對應(yīng)的所述第二節(jié)點(diǎn)的下一個節(jié)點(diǎn)的第二節(jié)點(diǎn)中保持的第二數(shù)據(jù)相比較;以及確定單 元,其被配置為基于所述第一比較單元和所述第二比較單元的結(jié)果,確定對于所述請求數(shù) 據(jù)是否存在緩存命中。根據(jù)本發(fā)明的又一方面,提供了一種信息處理裝置,該信息處理裝置包括具有用 于處理依次流過多個第一節(jié)點(diǎn)的第一數(shù)據(jù)、以及按照與所述第一數(shù)據(jù)相反的順序流過多個 第二節(jié)點(diǎn)的第二數(shù)據(jù)的逆流管線配置的電路,該電路包括參照單元,其被配置為參照各第 一節(jié)點(diǎn)中保持的數(shù)據(jù)、與所述第一節(jié)點(diǎn)相對應(yīng)的第二節(jié)點(diǎn)中保持的數(shù)據(jù)、以及至少在位于 與所述第一節(jié)點(diǎn)相對應(yīng)的所述第二節(jié)點(diǎn)之前或之后的第二節(jié)點(diǎn)中保持的數(shù)據(jù)。根據(jù)本發(fā)明的又一方面,提供了一種信息處理裝置,該信息處理裝置包括第一管 線單元,其具有數(shù)據(jù)在第一方向上流動而通過的多個觸發(fā)器;第二管線單元,其具有數(shù)據(jù)在 第二方向上流動而通過的多個觸發(fā)器;以及參照單元,其被配置為對于所述第一管線單元 的所述觸發(fā)器中的至少一個,參照輸入到所述第一管線單元的所述觸發(fā)器的數(shù)據(jù)、以及輸 入到與所述第一管線單元的所述觸發(fā)器相對應(yīng)的所述第二管線單元的觸發(fā)器的數(shù)據(jù)或者 從所述第一管線單元的所述觸發(fā)器輸出的數(shù)據(jù)。根據(jù)本發(fā)明的又一方面,提供了一種信息處理方法,該信息處理方法包括第一移 動步驟,對于第一管線單元的多個第一節(jié)點(diǎn),將第一方向上的各第一節(jié)點(diǎn)中保持的第一數(shù) 據(jù)向所述多個第一節(jié)點(diǎn)中的另一個移動;第二移動步驟,對于與所述第一管線單元的所述 第一節(jié)點(diǎn)相對應(yīng)的第二管線單元的多個第二節(jié)點(diǎn),將第二方向上的各第二節(jié)點(diǎn)中保持的第 二數(shù)據(jù)向所述多個第二節(jié)點(diǎn)中的另一個移動,其中,所述第二方向與所述第一方向相反;第 一比較步驟,將關(guān)注節(jié)點(diǎn)中保持的第一數(shù)據(jù)和與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的第二節(jié)點(diǎn)中保持的 第二數(shù)據(jù)相比較,其中,所述關(guān)注節(jié)點(diǎn)是所述第一管線單元的所述第一節(jié)點(diǎn)中的一個;以及 第二比較步驟,將所述關(guān)注節(jié)點(diǎn)中保持的所述第一數(shù)據(jù),與位于相對于所述第二方向的上 游側(cè)或者下游側(cè)、作為與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的所述第二節(jié)點(diǎn)的下一個節(jié)點(diǎn)的第二節(jié)點(diǎn)中 保持的第二數(shù)據(jù)相比較。根據(jù)本發(fā)明的又一方面,提供了一種信息處理方法,該信息處理方法使用用于處 理依次流過多個第一節(jié)點(diǎn)的第一數(shù)據(jù)、以及按照與所述第一數(shù)據(jù)相反的順序流過多個第二 節(jié)點(diǎn)的第二數(shù)據(jù)的逆流管線配置,該信息處理方法包括如下步驟參照各第一節(jié)點(diǎn)中保持 的數(shù)據(jù)、與所述第一節(jié)點(diǎn)相對應(yīng)的第二節(jié)點(diǎn)中保持的數(shù)據(jù)、以及至少在位于與所述第一節(jié)點(diǎn)相對應(yīng)的所述第二節(jié)點(diǎn)之前或之后的第二節(jié)點(diǎn)中保持的數(shù)據(jù)。根據(jù)本發(fā)明的又一方面,提供了一種使用信息處理裝置的信息處理方法,該信息 處理裝置包括第一管線單元,其具有數(shù)據(jù)在第一方向上流動而通過的多個觸發(fā)器;以及 第二管線單元,其具有數(shù)據(jù)在第二方向上流動而通過的多個觸發(fā)器,所述信息處理方法包 括如下步驟對于所述第一管線單元的所述觸發(fā)器中的至少一個,參照輸入到所述第一管 線單元的所述觸發(fā)器的數(shù)據(jù)、以及輸入到與所述第一管線單元的所述觸發(fā)器相對應(yīng)的所述 第二管線單元的觸發(fā)器的數(shù)據(jù)或者從所述第一管線單元的所述觸發(fā)器輸出的數(shù)據(jù)。通過以下對示例性實(shí)施例的描述(參照附圖),本發(fā)明的其他特征將變得明顯。
圖1是示出數(shù)據(jù)處理裝置的基本配置的示例的框圖。圖2是示出數(shù)據(jù)處理裝置的電路的示例的框圖。圖3是示出數(shù)據(jù)處理裝置的基本配置的示例的框圖。圖4是示出數(shù)據(jù)處理裝置的電路的示例的框圖。圖5是示出應(yīng)用數(shù)據(jù)處理裝置的圖像處理裝置的示例的框圖。圖6是示出應(yīng)用數(shù)據(jù)處理裝置的緩存確定裝置的示例的框圖。圖7是示出應(yīng)用數(shù)據(jù)處理裝置的緩存設(shè)備中的存取仲裁單元的處理流程的示例 的流程圖。圖8是示出應(yīng)用數(shù)據(jù)處理裝置的緩存設(shè)備中的緩沖存儲器仲裁單元的處理流程 的示例的流程圖。圖9例示了傳統(tǒng)技術(shù)的示例操作。圖10是示出數(shù)據(jù)處理裝置的基本配置的示例的框圖。
具體實(shí)施例方式下文中,將參照附圖描述本發(fā)明的實(shí)施例?;九渲脠D1是示出根據(jù)本實(shí)施例的信息處理裝置(下文中,稱為“數(shù)據(jù)處理裝置”)的基 本配置的示例的框圖。第一管線100具有多個節(jié)點(diǎn)(第一節(jié)點(diǎn)),當(dāng)它們中的一個被設(shè)置 為關(guān)注節(jié)點(diǎn)時,數(shù)據(jù)元素(第一數(shù)據(jù))在第一方向上從關(guān)注節(jié)點(diǎn)向下游的下一個第一節(jié)點(diǎn) 移動。在圖1的配置中,第一節(jié)點(diǎn)和第二節(jié)點(diǎn)是一一對應(yīng)關(guān)系。此外,數(shù)據(jù)元素的有效信號 “^11(1[1-1]”112、數(shù)據(jù)信號“叔切[1-1]”114以及作為數(shù)據(jù)信號處理結(jié)果的處理結(jié)果信號 “tag_id[l-l]”116從外部輸入到第一管線100。這一系列輸入信號在由執(zhí)行各種數(shù)據(jù)處理 的數(shù)據(jù)處理電路120處理之后,臨時存儲在管線寄存器110中。當(dāng)驅(qū)動信號“enable” 102有效(斷言狀態(tài))時,該管線寄存器110臨時存儲經(jīng)過 數(shù)據(jù)處理的數(shù)據(jù)元素,并更新先前存儲的數(shù)據(jù)元素。然而,當(dāng)“enable”102無效(解除斷言 狀態(tài))時,該管線寄存器110繼續(xù)保持先前存儲的數(shù)據(jù)元素,而不存儲經(jīng)過數(shù)據(jù)處理的數(shù)據(jù) 元素,并且不更新數(shù)據(jù)元素。從輸入到臨時存儲在管線寄存器110中的區(qū)間被稱為“級”(第 一級)。接下來,從管線寄存器110輸出數(shù)據(jù)元素的有效信號“valid[l] ” 132、數(shù)據(jù)信號"data[l],,134以及處理結(jié)果信號‘‘tag_id[l],,136,并與第一級類似,由數(shù)據(jù)處理電路140 執(zhí)行各種數(shù)據(jù)處理。經(jīng)過數(shù)據(jù)處理的數(shù)據(jù)元素被臨時存儲在第二管線寄存器130中,該存 儲操作與第一級類似。一直到將來自管線寄存器110的數(shù)據(jù)元素臨時存儲到管線寄存器 130中的區(qū)間被稱為第二級。此外,從管線寄存器130輸出數(shù)據(jù)元素的有效信號“valid[l+l]” 152、數(shù)據(jù)信號 “data[l+l]”154以及處理結(jié)果信號“tag_id[l+l] ” 156。作為這些操作的結(jié)果,在第一管 線100中,數(shù)據(jù)元素(有效信號“valid”、數(shù)據(jù)信號“data”以及處理結(jié)果信號“tag_id”) 從圖的左側(cè)(“上游側(cè)”)向圖的右側(cè)(“下游側(cè)”)移動。另一方面,在本實(shí)施例中,除了具有第一管線之外,還具有第二管線。該第二管線 具有多個節(jié)點(diǎn)(第二節(jié)點(diǎn)),這些第二節(jié)點(diǎn)中保持的數(shù)據(jù)元素(第二數(shù)據(jù))在與第一管線相 反的方向(第二方向)上向第二節(jié)點(diǎn)移動。具體地說,該第二管線160將數(shù)據(jù)元素從圖的右 側(cè)(“上游側(cè)”)向圖的左側(cè)(“下游側(cè)”)移動。數(shù)據(jù)元素的有效信號“tag_Valid[i+2]”172 和數(shù)據(jù)信號“tag_data[i+2]”174從外部輸入到第二管線160。這些輸入信號被前述數(shù)據(jù) 處理電路140使用。隨后,這些輸入信號被臨時存儲在管線寄存器170中。請注意,向圖1 所示的各觸發(fā)器提供同樣的操作時鐘。當(dāng)驅(qū)動信號“shift”162有效(斷言狀態(tài))時,該管線寄存器170臨時存儲由有效 信號“tag_Valid[i+2],,172和數(shù)據(jù)信號“tag_data[i+2],,174構(gòu)成的一系列輸入信號,并 更新先前存儲的數(shù)據(jù)元素。另一方面,當(dāng)驅(qū)動信號“shift” 162無效(解除斷言狀態(tài))時, 管線寄存器170繼續(xù)保持先前存儲的數(shù)據(jù)元素,而不存儲該系列輸入信號,并且不更新數(shù) 據(jù)元素。從輸入到臨時存儲在管線寄存器170中的區(qū)間被稱為“級”(第一級)。接下來,從管線寄存器170輸出數(shù)據(jù)元素的有效信號“tag_Valid[i+l],,182和數(shù) 據(jù)信號“tag_data[i+l]”184,并與第一級類似,將這些信號輸入到數(shù)據(jù)處理電路120。進(jìn)行 數(shù)據(jù)處理之后,這些信號被臨時存儲在第二管線寄存器180中,該存儲操作與第一級類似。 一直到將來自管線寄存器170的數(shù)據(jù)元素臨時存儲到管線寄存器180中的區(qū)間被稱為第二 級。此外,從管線寄存器180輸出數(shù)據(jù)元素的有效信號“tag_Valid[i],,192和數(shù)據(jù)信 號“tag_data[i]”194。作為這些操作的結(jié)果,在第二管線160中,構(gòu)成數(shù)據(jù)元素的有效信 號“tag_Valid”和數(shù)據(jù)信號“tag_data”從圖的右側(cè)(“上游側(cè)”)向圖的左側(cè)(“下游側(cè)”)移動。數(shù)據(jù)處理電路接下來,將詳細(xì)描述數(shù)據(jù)處理電路120和140。在本實(shí)施例的數(shù)據(jù)處理中,比較雙 向數(shù)據(jù)元素“data”和“tag_data”,如果相等,則存儲此時的“tag_data”的存儲編號(前述 的“ [i] ”、“ [i+Ι] ”、“ [i+2] ”),作為“tag_id”。然后,作為第一管線的數(shù)據(jù)處理結(jié)果,"tag_ id”與‘‘data”同步地從圖的左側(cè)(“上游側(cè)”)向圖的右側(cè)(“下游側(cè)”)移動。由此,將在 數(shù)值上與第一管線100中的第1個數(shù)據(jù)元素“data[l],,134相等的第二管線160中的數(shù)據(jù) 元素的存儲編號設(shè)置在“tag_id[l]”136中。具體地說,當(dāng)有效信號“tag_Valid[i],,192有效時,數(shù)據(jù)處理電路120首先使用 用作參照單元的比較電路122(第一比較電路)比較數(shù)據(jù)信號“data[l-l]”114和“tag_ data[i] ” 194。如果比較結(jié)果為相等,則選擇器126選擇"tag_data[i] ” 194的存儲編號"Node = i”。將該選擇的值作為在數(shù)值上與第一管線100中的數(shù)據(jù)元素“data[l-l]”114 相等的第二管線160中的數(shù)據(jù)元素的存儲編號設(shè)置在“tag_id[l-l]”116中。如前所述,在第一管線100和第二管線160同時工作的情況下,比較可能失敗。為 了應(yīng)對該問題,當(dāng)有效信號“tag_Valid[i+l] ” 182有效時,數(shù)據(jù)處理電路120還使用比較 電路124 (第二比較電路)比較數(shù)據(jù)信號“data[l-l],,114 ^P "tag_data[i+l],,184。如果 比較結(jié)果為相等,則選擇器126優(yōu)先選擇作為“tag_data[i+l]”184的存儲編號“Node = i+1”。此外,當(dāng)以上兩個比較結(jié)果均為不相等時,選擇器選擇輸入的處理結(jié)果信號“tag_ id[l-l]”116。如果來自外部的驅(qū)動信號“shift” 162有效(斷言狀態(tài))、且第二管線160 正在工作,則數(shù)據(jù)元素向圖的左側(cè)(“下游側(cè)”)移動。因此,在這種情況下,“tag_data”的 存儲編號也正確地指示了一個靠左的存儲編號。鑒于此,基于選擇器126的選擇結(jié)果、通過 遞減器128將存儲編號減1來調(diào)整存儲編號。此處,將給出關(guān)于存儲編號的選擇方法的補(bǔ)充說明。當(dāng)選擇“Node = i”、“Node =i+1”以及“tag_id[l-l]”116中的一個作為存儲編號時,選擇準(zhǔn)則可以簡單一些,例 如“優(yōu)先選擇較高的存儲編號”。例如,當(dāng)數(shù)據(jù)信號“data[l-l]”114和數(shù)據(jù)信號“tag_ data[i+l] ” 184相等時,考慮來自外部的驅(qū)動信號“shift” 162有效的情況。在這種情況 下,選擇“Node = i+1”以避免前述比較失敗的情況的問題是很重要的,該操作與“優(yōu)先選擇 較高的存儲編號”的方法一致。另一方面,如果來自外部的驅(qū)動信號“shift” 162無效,則 由于沒有產(chǎn)生避免前述比較失敗的情況的問題的需求,因此不需要選擇“Node = i+1”。然 而,不管此處是否選擇“Node = i+1”,在作為第一管線的下游級的第二級,都會再次重新評 估數(shù)據(jù)信號“data[l] ” 134和“tag_data[i+l] ” 184的比較。因此,在來自外部的驅(qū)動信號 “shift”162無效的情況下,與第一級的“tag_data[i+l] ” 184的比較是不相關(guān)的。相反地, 在使用“優(yōu)先選擇較高的存儲編號”的方法選擇存儲編號中絕對不存在任何不利之處。由 此選擇的值被設(shè)置在指示在數(shù)值上與數(shù)據(jù)信號“data[l-l]” 114相等的第二管線160中的 數(shù)據(jù)元素的存儲編號的“tag_id[l-l]”116中。圖1僅作為示例,當(dāng)然,可以用驅(qū)動信號“shift”162替換選擇器126,并且可以在 來自外部的驅(qū)動信號“shift” 162無效的情況下執(zhí)行控制、使得不選擇“Node = i+1”。在 前述示例中,當(dāng)比較電路122和比較電路124都返回確定結(jié)果“假”時,選擇輸入的處理結(jié) 果信號“tag_id[l-l]”116。此處,如果來自外部的驅(qū)動信號“shift”162有效,則在任何情 況下對存儲編號減1的調(diào)整都是必要的,以便應(yīng)對存儲位置向“下游”的移動。因此,在選 擇“Node = i+1”之后再次執(zhí)行對存儲編號減1的調(diào)整,而不執(zhí)行使得不選擇“Node = i+1” 的控制。數(shù)據(jù)處理電路140執(zhí)行類似的處理。首先,當(dāng)有效信號“tag_Valid[i+l],,182有 效時,數(shù)據(jù)處理電路140使用比較電路142比較數(shù)據(jù)信號“data[l],,134和數(shù)據(jù)信號“tag_ data[i+l] ” 184。如果比較結(jié)果為相等,則選擇器146選擇“tag_data[i+l] ” 184的存儲編 號“Node = i+1”。根據(jù)第二管線160的操作,當(dāng)有效信號“tag_Valid[i+2]”172有效時,數(shù) 據(jù)處理電路140還使用比較電路144比較數(shù)據(jù)信號“data[l] ” 134和“tag_data[i+2] ” 174。 如果比較結(jié)果為相等,則選擇器146優(yōu)先選擇“tag_data[i+2]”174的存儲編號“Node =i+2”。此外,當(dāng)以上兩個比較結(jié)果均為不相等時,選擇器146選擇處理結(jié)果信號“tag_id[l],,136。如果來自外部的驅(qū)動信號“shift” 162有效、且第二管線160正在工作,則 “tag_data”的存儲編號向圖的右側(cè)(“下游側(cè)”)移動一個。由此,基于選擇器146的選擇 結(jié)果、通過遞減器148將存儲編號減1。由此調(diào)整匹配檢測結(jié)果,使得能夠通過簡單的處理 實(shí)現(xiàn)精確、快速的數(shù)據(jù)處理。如上所述,在本實(shí)施例中,可以在管線的各級可靠、快速地比較在彼此相反的方向 上移動的數(shù)據(jù)元素。本實(shí)施例的數(shù)據(jù)處理電路120和140各自具有比較電路,該比較電路對第一管線 100的每個數(shù)據(jù)元素執(zhí)行與第二管線160的作為比較目標(biāo)的數(shù)據(jù)元素的比較。此外,假設(shè)第 二管線160正在工作,數(shù)據(jù)處理電路120和140各自新配備有比較電路,該比較電路在第二 管線160的數(shù)據(jù)元素的“上游側(cè)”執(zhí)行與第二管線160的作為比較目標(biāo)的數(shù)據(jù)元素的比較。 由于由此可以避免在各特定級中產(chǎn)生的、使用日本特許第3588487號公報的配置發(fā)生的互 鎖(內(nèi)部停止)的問題,因此可以實(shí)現(xiàn)高的處理性能,而不經(jīng)常地停止數(shù)據(jù)處理。此外,在本實(shí)施例中,為了計算當(dāng)兩個數(shù)據(jù)元素相等時的存儲位置,假設(shè)第二管線 160正在工作,第二數(shù)據(jù)處理電路120和140各自配備有用于使處理結(jié)果減1的遞減器。預(yù) 先分配第二管線中的數(shù)據(jù)元素的存儲編號,使得所述存儲編號從第二管線的“下游側(cè)”向 “上游側(cè)”增加“0,1,2,…,i,i+l,i+2,…,N-l”(i、N是正數(shù),i <N)。稍后將描述這種 分配方法的優(yōu)點(diǎn)。此外,在倒序分配存儲編號的情況下,遞減器自然變成使處理結(jié)果加1的 遞增器。此外,在本實(shí)施例中,將在執(zhí)行在兩個方向上移動的數(shù)據(jù)元素的比較、并且當(dāng)比較 結(jié)果為相等時執(zhí)行存儲位置的計算的情況下的示例描述為數(shù)據(jù)處理,但是數(shù)據(jù)處理的內(nèi)容 不限于此。例如,可以將比較在兩個方向上移動的數(shù)據(jù)元素的結(jié)果、以及當(dāng)比較結(jié)果為相等 時對在兩個方向上移動的數(shù)據(jù)元素執(zhí)行基本的算術(shù)運(yùn)算的結(jié)果配置為數(shù)據(jù)處理結(jié)果。圖10 示出了執(zhí)行這種處理的電路的示例。稍后將討論圖10的配置的詳情。此外,可以將在兩個 方向上移動的數(shù)據(jù)元素的大小關(guān)系配置為數(shù)據(jù)處理結(jié)果。毋庸置疑,使用這種數(shù)據(jù)處理電 路的配置可以執(zhí)行諸如刪除、大小比較和交換的各種計算。此外,圖2示出了包括圖1中的基本結(jié)構(gòu)的、總共具有8個區(qū)間(8個級)的數(shù) 據(jù)處理裝置的配置的示例。在圖2的示例中,比較第一管線和第二管線的8個數(shù)據(jù)元素。 TagSlot
至TagSlot[7]各自對應(yīng)于圖1所示的第二管線的管線寄存器170或180。 DataSlot
至DataSlot[7]各自對應(yīng)于圖1所示的第一管線的管線寄存器110或130。 Judge
至Judge [7]各自對應(yīng)于圖1所示的數(shù)據(jù)處理電路120或140。由此,作為將基本 配置一起鏈接的結(jié)果、可以通過管線操作對大量數(shù)據(jù)元素并行地執(zhí)行分散比較。在圖2所 示的數(shù)據(jù)處理裝置的配置的示例中,通過八級管線實(shí)現(xiàn)與8個數(shù)據(jù)元素的比較。此處,即使 來自外部的驅(qū)動信號“shift” 162有效、并且第二管線將數(shù)據(jù)元素向“下游”移動,也可以在 不降低處理性能的情況下進(jìn)一步實(shí)現(xiàn)穩(wěn)定的比較處理。另一方面,在使用諸如上述技術(shù)的情況下,例如,可以考慮將諸如使用管線配置的 大量數(shù)據(jù)元素的高速數(shù)據(jù)處理的應(yīng)用作為示例應(yīng)用。執(zhí)行這種數(shù)據(jù)處理的領(lǐng)域包括圖像處 理領(lǐng)域和圖形處理領(lǐng)域。為了提高這些領(lǐng)域中的產(chǎn)品的圖像質(zhì)量并增強(qiáng)產(chǎn)品的功能而執(zhí) 行多種圖像處理,包括通過時分復(fù)用對多種內(nèi)容(圖像、視頻)進(jìn)行的同步并行圖像處理、 以及疊加并顯示多個半透明紋理數(shù)據(jù)。在這種圖像處理的情況下,從諸如DRAM的外部存儲
12器中適當(dāng)?shù)靥崛〔⑻幚硇枰膱D像和視頻,通常通過緩存設(shè)備執(zhí)行從外部存儲器的數(shù)據(jù)獲 取。然而,當(dāng)執(zhí)行時分復(fù)用的圖像處理、或多個半透明紋理數(shù)據(jù)的疊加時,在以分段的 方式從外部存儲器中獲取各圖像或視頻的情況下,執(zhí)行各種圖像或視頻的同步并行處理。 當(dāng)通過實(shí)現(xiàn)典型的緩存技術(shù)來以分段的方式從外部存儲器中獲取各種圖像或視頻時,經(jīng)常 發(fā)生緩存沖突,明顯地降低了緩存性能。另一方面,為了避免緩存沖突,可以增加緩存標(biāo)簽 的路數(shù),但是通過實(shí)現(xiàn)典型的緩存技術(shù),當(dāng)處理非常多的路數(shù)時,確定電路中的選擇器的邏 輯段的數(shù)量增加,從而使得難以實(shí)現(xiàn)時序收斂。由此不再能夠以高操作頻率執(zhí)行操作。同 時,路數(shù)的增加使得在發(fā)生緩存沖突時的替換控制變得復(fù)雜,從而使得難以實(shí)現(xiàn)緩存技術(shù)。例如,在日本特許第3588487號公報公開的技術(shù)中,隨著作為處理目標(biāo)的數(shù)據(jù)元 素的數(shù)量的增加,管線中的級數(shù)增加,從而增大了整個裝置的延遲。這意味著當(dāng)將在一個方 向上移動的管線中的一個數(shù)據(jù)元素與在另一個方向上移動的管線中的所有數(shù)據(jù)元素循環(huán) 比較時,確定時間增加。鑒于此,將本實(shí)施例的數(shù)據(jù)處理裝置作為緩存技術(shù)來實(shí)現(xiàn),使得能夠?qū)崿F(xiàn)用于 管理在高速圖像處理應(yīng)用中可使用的緩存數(shù)據(jù)的快速全關(guān)聯(lián)緩存(fully associative cache)設(shè)備。圖3是示出根據(jù)另一實(shí)施例的數(shù)據(jù)處理裝置的基本配置的示例的框圖。在圖3中, 第一管線300中的數(shù)據(jù)從圖的左側(cè)(“上游側(cè)”)移向圖的右側(cè)(“下游側(cè)”)。此外,第二 管線360中的數(shù)據(jù)從圖的右側(cè)(“上游側(cè)”)移向圖的左側(cè)(“下游側(cè)”),數(shù)據(jù)元素移動的 方向與第一管線300相反。請注意,圖3中的各種信號的名稱和含義與圖1相同,因此這里 省略對其的描述。請注意,在圖3中,圖1中的數(shù)據(jù)處理電路以及在其中包括的電路元素, 在比較電路321至329與選擇和遞減電路320 (包括選擇器346和遞減器348)之間分割。在本實(shí)施例中,將作為在兩個方向中的一個方向(第一管線)上移動的數(shù)據(jù)元素 的單個數(shù)據(jù)信號“data”同時與作為在另一個方向(第二管線)上移動數(shù)據(jù)元素的多個數(shù) 據(jù)信號“tag_data”相比較。也就是說,第一節(jié)點(diǎn)對應(yīng)于多個第二節(jié)點(diǎn)。如果即使有一個相 等的“tag_data”,則也將此時的“tag_data”的存儲編號存儲為“tag_id”。如果有多于一 個相等的“tag_data”,則可以優(yōu)先選擇最高的存儲編號。首先,將“data[l]”334輸入到9個比較電路321至329中的每一個。此時,需要 提供比要與“data[l]”334相比較的“tag_data”的數(shù)量(等于第二節(jié)點(diǎn)的數(shù)量)多一個的
比較電路。連接以下作為處理目標(biāo)的對
·有效信號‘tag_Valid[i] ”與數(shù)據(jù)信號 “tag_data[i],,
·有效信號‘tag_valid[i+l]”與!數(shù)據(jù)信號‘<tag_data[i+l],,
·有效信號‘tag_valid[i+2]”與!數(shù)據(jù)信號‘<tag_data[i+2],,
·有效信號‘tag_Valid[i+3]”與!數(shù)據(jù)信號‘<tag_data[i+3],,
·有效信號‘tag_valid[i+4]”與!數(shù)據(jù)信號‘<tag_data[i+4] ”
·有效信號‘tag_valid[i+5]”與!數(shù)據(jù)信號‘<tag_data[i+5],,
·有效信號‘tag_valid[i+6]”與!數(shù)據(jù)信號‘<tag_data[i+6],,
·有效信號‘tag_Valid[i+7]”與!數(shù)據(jù)信號‘<tag_data[i+7],,
·有效信號‘tag_valid[i+8]”與!數(shù)據(jù)信號‘<tag_data[i+8],,
比較電路321至329中的各個的操作與前述示例類似,并將其9個比較結(jié)果輸入 到選擇器346。選擇器346選擇作為其比較結(jié)果為相等的“tag_data”的存儲編號的“Node =i”至“Node = i+8”中的一個。此外,當(dāng)上述9個比較結(jié)果均為不相等時,選擇器346選 擇輸入的處理結(jié)果信號“tag_id[l-l]”316。與前述示例類似,使用“優(yōu)先選擇較高的存儲編號”的方法選擇存儲編號。如果來 自外部的驅(qū)動信號“shift” 362有效,則基于選擇器346的選擇結(jié)果、通過使用遞減器348 將存儲編號減1來調(diào)整存儲編號。在本實(shí)施例中,使用1個區(qū)間(1級)來實(shí)現(xiàn)圖2所示的8區(qū)間(8級)管線,并且 完成對單個的輸入數(shù)據(jù)的比較之前的延遲從8削減到1。此外,盡管在圖2中需要總共2X8 個比較電路,但是在本實(shí)施例中僅有9個比較電路,比較電路的數(shù)量從16削減到9。將裝置 作為一個整體來看,由于遞減器和管線寄存器的數(shù)量也被削減,因此通過在不降低處理性 能的情況下縮短延遲加強(qiáng)了響應(yīng)性,從而使得整個電路規(guī)模也被削減。此外,在本實(shí)施例中,可以執(zhí)行第一管線中的單個數(shù)據(jù)元素與第二管線中的多個 數(shù)據(jù)元素的高速比較,而不會有逆流管線中的遺漏。此外,通過組合圖1和圖3的基本電路,可以將管線寄存器導(dǎo)入接觸點(diǎn)338_1至 338_9,可以分別設(shè)置圖1中的選擇器和遞減器。在這種情況下,還可以實(shí)現(xiàn)進(jìn)一步提高操 作頻率的電路,同時分散選擇器346的邏輯段并削減整個電路的延遲。此外,在圖4中示出了包含圖3中的基本配置的、總共具有8個區(qū)間(8個級)的 數(shù)據(jù)處理裝置的配置的示例。使用圖4中的示例,比較第一管線和第二管線的64個數(shù)據(jù)元 素。圖4中的TagSlot
至TagSlot[63]各自對應(yīng)于圖3所示的第二管線中的管線寄存 器380、381等。DataSlOt
至[7]各自對應(yīng)于圖3所示的第一管線中的管線寄存器310、 330等,SelIDcr
至Sel&Dcr[7]各自對應(yīng)于圖3所示的選擇和遞減電路320等。將基本 配置鏈接到一起使得能夠通過管線操作對大量數(shù)據(jù)元素并行地執(zhí)行分散比較。使用圖4中 的示例配置,通過八級管線實(shí)現(xiàn)與64個數(shù)據(jù)元素的比較,此外,即使來自外部的驅(qū)動信號 “shift”有效、并且第二管線將數(shù)據(jù)元素向“下游”移動,也可以在不降低處理性能的情況下 實(shí)現(xiàn)穩(wěn)定的比較處理。以上電路當(dāng)然可以通過計算機(jī)虛擬實(shí)現(xiàn)。由此,在參照同一操作時鐘來移動數(shù)據(jù) 的雙向管線中,即使在硬件的意義上數(shù)據(jù)元素在彼此相反的方向上移動,也可以抑制比較遺漏。圖像處理裝置圖5是示出根據(jù)另一實(shí)施例的圖像處理裝置的整體配置的示例的框圖。本實(shí)施例 的圖像處理裝置應(yīng)用圖2或圖4所示的數(shù)據(jù)處理裝置,作為全關(guān)聯(lián)緩存確定裝置。存在涉及在對存儲在存儲器中的圖像進(jìn)行旋轉(zhuǎn)、縮放或扭曲之后、將該圖像繪制 在諸如顯示器的顯示設(shè)備上的圖像(視頻)處理。此外,使用紋理映射(texture mapping) 處理,在圖形領(lǐng)域中實(shí)現(xiàn)類似的處理。本實(shí)施例的圖像處理裝置的示例包括使用該紋理映 射處理來管理合適的緩存數(shù)據(jù)的緩存設(shè)備。用作緩存目標(biāo)數(shù)據(jù)的圖像數(shù)據(jù)568預(yù)先存儲在圖5所示的外部存儲器DRAM 565 中。最后,諸如光柵化結(jié)果502的圖像被繪制在顯示設(shè)備的幀緩沖器中。由光柵化結(jié)果502 上示出的虛線圍繞的正方形表示顯示設(shè)備的單個像素。圖像處理裝置從光柵化結(jié)果502的左上角的像素開始、在水平方向上按順序逐個像素地執(zhí)行圖像處理,并在處理到右上角的 像素之后,從下一行的左邊像素開始、在水平方向上按順序逐個像素地執(zhí)行圖像處理(光 柵掃描圖像處理)。將與存取目標(biāo)像素504 (請求作為處理目標(biāo)的數(shù)據(jù))相對應(yīng)的紋理坐標(biāo)505從光 柵化裝置(未示出)輸入到地址計算單元510。接下來,在地址計算單元510中,將紋理坐 標(biāo)505轉(zhuǎn)換為地址515。接下來,通過全關(guān)聯(lián)緩存確定單元520確定地址515是緩存命中(cache hit)還 是緩存未命中。通過應(yīng)用圖2或圖4所示的數(shù)據(jù)處理裝置作為全關(guān)聯(lián)緩存確定裝置,而產(chǎn) 生全關(guān)聯(lián)緩存確定單元520。使用全關(guān)聯(lián)緩存確定單元520,基于輸入地址515生成緩存確 定結(jié)果525。在本實(shí)施例的圖像處理裝置中,采用無阻塞(non-blocking)緩存機(jī)構(gòu)以隱藏作 為當(dāng)發(fā)生緩存未命中時引發(fā)的不利結(jié)果的再充填延遲。由此,即使緩存確定結(jié)果525被確 定為例如緩存未命中,稍后需要的信息“tag_id,miss_hit_flag"528也被保存到Tag_id FIFO 540。然后,在完成從DRAM565中讀出導(dǎo)致緩存未命中的緩存數(shù)據(jù)、并將數(shù)據(jù)存儲在緩 沖存儲器(FIFO) 590中的處理之前,執(zhí)行下一個像素的緩存確定處理。即使正在將導(dǎo)致緩 存未命中的緩存數(shù)據(jù)從DRAM 565再充填到緩沖存儲器590 (FIFO),執(zhí)行這種處理也使得能 夠執(zhí)行對后面的像素的緩存確定。因此,可以抑制當(dāng)發(fā)生緩存未命中時的性能降低。請注意,如稍后所述,通過存取仲裁單元530將導(dǎo)致緩存未命中的數(shù)據(jù)的地址依 次存儲在地址發(fā)送FIFO 550中。DRAM控制器560參照該地址發(fā)送FIFO 550,并在導(dǎo)致緩 存未命中的數(shù)據(jù)的地址被寫入其中的情況下,從DRAM 565中讀出該數(shù)據(jù),并將讀取的數(shù)據(jù) 寫入紋理數(shù)據(jù)接收FIFO 570。由此將從DRAM 565中讀出導(dǎo)致緩存未命中的數(shù)據(jù)、將讀取的 數(shù)據(jù)寫入紋理數(shù)據(jù)接收FIFO 570的一系列處理稱為再充填。如稍后所述,緩沖存儲器仲裁 單元580參照Tag_id FIFO 540,并指定miss_hit_flag有效的數(shù)據(jù),即導(dǎo)致緩存未命中的 數(shù)據(jù)。從紋理數(shù)據(jù)接收FIFO 570中讀出該數(shù)據(jù),并將其寫入緩沖存儲器590。對于導(dǎo)致緩 存命中的數(shù)據(jù),緩沖存儲器仲裁單元580直接從緩沖存儲器590中讀出數(shù)據(jù)并輸出讀取的 數(shù)據(jù);對于導(dǎo)致緩存未命中的數(shù)據(jù),緩沖存儲器仲裁單元580將再充填的數(shù)據(jù)輸出到外部 (585)。存取仲裁單元存取仲裁單元530判斷在所有3個連接的FIFO (即地址發(fā)送FIF0550、紋理數(shù)據(jù)接 收FIFO 570以及Tag_id FIFO 540)中是否存在空閑的存儲區(qū)域?;趶倪@些FIFO輸入 的信號"full ” 552、"full ” 542以及“ ful 1 ” 572執(zhí)行該判斷。存取仲裁單元530在緩存確定結(jié)果525的“valid”為有效的條件下確定發(fā)生緩存 命中,并執(zhí)行向Tag_id FIFO 540和地址發(fā)送FIFO 550的寫入。具體地說,響應(yīng)于來自全關(guān) 聯(lián)緩存確定單元520的緩存確定結(jié)果525的接收,tag_id以及指示緩存確定結(jié)果的miss_ hit_flag等被寫入TagjdFIFO 540。此外,在接收到指示緩存未命中的結(jié)果的情況下,導(dǎo) 致緩存未命中的數(shù)據(jù)的地址(miss_hit_address)被寫入地址發(fā)送FIFO 550。下文中,使用圖7中的處理流程圖700來描述存取仲裁單元530的處理。首先,存 取仲裁單元530確定輸入的緩存確定結(jié)果525的輸入有效信號“valid”是否為有效(斷言 狀態(tài))(S710)。如果有效(S710 是),則處理進(jìn)行到S720,如果無效(S710 否),則處理結(jié)束。在S720中,存取仲裁單元530確定與要存取的數(shù)據(jù)相關(guān)的緩存確定結(jié)果是否為緩 存未命中,即“miSS_hit_flag”525是否有效(斷言狀態(tài))。如果有效(S720:是),則處理 進(jìn)行到S750,如果無效(S720 否),則處理進(jìn)行到S730。在S750中,存取仲裁單元530確定在所有以上三個FIFO的存儲區(qū)域中是否存在 可用的空間。如果存在空間(S750 是),則處理進(jìn)行到S760,如果不存在空間(S750 否), 則處理進(jìn)行到S755。在S760中,存取仲裁單元530將來自緩存確定結(jié)果525的“tag_id,miss_hit_ flag”528寫入Tag_id FIFO 540。此外,存取仲裁單元530將來自緩存確定結(jié)果525的 “miss_hit_address” 525寫入地址發(fā)送FIFO 550。然后,該處理結(jié)束。另一方面,如果在以上三個FIFO中任何一個FIFO的存儲區(qū)域中都不存在可用的 空間,則在S755中,存取仲裁單元530通過將驅(qū)動信號“enable”設(shè)置為無效(解除斷言狀 態(tài))來暫停(停止)先前級,并等待直到存儲區(qū)域變得可用為止。當(dāng)在所有三個FIFO的存 儲區(qū)域中,空間變得可用(S750:是)時,處理進(jìn)行到S760。此外,如果緩存確定結(jié)果指示緩存命中(S720 否),則存取仲裁單元530在S730 中確定在Tag_id FIFO 540的存儲區(qū)域中是否存在可用空間。如果存在空間(S730:是), 則處理進(jìn)行到S740,如果不存在空間(S730 否),則處理進(jìn)行到S735。在S740中,存取仲裁單元530將來自緩存確定結(jié)果525的“tag_id,miss_hit_ flag”528寫入Tag_id FIFO 540。然后,處理結(jié)束。另一方面,如果在S730中,在Tag_id FIFO 540的存儲區(qū)域中不存在可用空間 (S730 否),則在步驟S735中,存取仲裁單元530通過將驅(qū)動信號“enable”設(shè)置為無效 (解除斷言狀態(tài))來暫停(停止)先前級,并等待直到空間在存儲區(qū)域中變得可用為止。如 果空間在存儲區(qū)域中變得可用(S730:是),則處理進(jìn)行到S740。緩沖存儲器仲裁單元緩沖存儲器仲裁單元580參照Tag_id FIFO 540中存儲的miSS_hit_flag、根據(jù)是 發(fā)生緩存命中還是未命中,執(zhí)行以下處理·從緩沖存儲器(FIFO) 590中讀出緩存的數(shù)據(jù),并輸出讀取的數(shù)據(jù)(585)·從紋理數(shù)據(jù)接收FIFO 570中讀出未緩存的數(shù)據(jù),并將讀取的數(shù)據(jù)寫入緩沖存儲 器590,而且將讀取的數(shù)據(jù)作為紋理數(shù)據(jù)輸出(585)下文中,使用圖8中的處理流程圖800來描述緩沖存儲器仲裁單元580的處理。首 先,緩沖存儲器仲裁單元580從Tag_id FIFO 540中提取要處理的緩存確定結(jié)果“tag_id, miss_hit_flag" (S810)。如果tag_id FIF0540為空,則由于沒有要處理的緩存確定結(jié)果, 因此緩沖存儲器仲裁單元580自然等待而不執(zhí)行任何處理。接下來,在S820中,緩沖存儲器仲裁單元580確定緩存確定結(jié)果“miss_hit_f lag” 是否有效(斷言狀態(tài))。如果有效(S820 是),則處理進(jìn)行到步驟S840,如果無效(S820 否),則處理進(jìn)行到步驟S830。由于在S820中“miSS_hit_flag”無效(解除斷言狀態(tài))時發(fā)生緩存命中,因此在 S830中,緩沖存儲器仲裁單元580由同時提取出的“tag_id”以及緩沖存儲器(FIFO) 590 的寫指針來計算地址。此外,緩沖存儲器仲裁單元580從緩沖存儲器590中讀出“reacLdata” 592,并將該數(shù)據(jù)設(shè)置為紋理數(shù)據(jù)。然后,該處理進(jìn)行到S890。在S890中,緩沖存儲器仲裁單元580添加有效信號“valid”,并輸出“teXture_ data,Valid”585。然后,處理結(jié)束。使用圖像處理裝置,基于該紋理數(shù)據(jù)執(zhí)行濾波處理(未 示出),并將濾波處理結(jié)果寫入顯示設(shè)備的幀緩沖器(未示出)。此外,在S820中緩存確定結(jié)果“miss_hit_flag”有效(斷言狀態(tài))時發(fā)生緩存未 命中。因此在S840中,緩沖存儲器仲裁單元580檢查來自DRAM 565的要更新的紋理數(shù)據(jù) 是否已經(jīng)被再充填到紋理數(shù)據(jù)接收FIF0570中。如果沒有再充填,則緩沖存儲器仲裁單元 580等待直到數(shù)據(jù)被再充填為止(S850)。在數(shù)據(jù)被再充填之后,緩沖存儲器仲裁單元580從紋理數(shù)據(jù)接收FIFO 570中提取 再充填的數(shù)據(jù)作為要更新的紋理數(shù)據(jù)(S860)。接下來,緩沖存儲器仲裁單元580將提取的 紋理數(shù)據(jù)作為“Write_data”582寫入由緩沖存儲器(FIFO) 590的寫指針指示的存儲區(qū)域 (S870)。然后,緩沖存儲器仲裁單元580增大緩沖存儲器590的寫指針(S880)。然后,緩沖 存儲器仲裁單元580添加有效信號“valid”,并輸出“texture_data,valid” 585 (S890)。全關(guān)聯(lián)緩存確定單元此外,使用圖6詳細(xì)描述圖5所示的圖像處理裝置的全關(guān)聯(lián)緩存確定單元520的 電路的示例。全關(guān)聯(lián)緩存確定單元520通過檢查比較結(jié)果與緩存標(biāo)簽的數(shù)量之間的大小關(guān) 系來確定是否發(fā)生緩存命中。全關(guān)聯(lián)緩存確定單元520被配置為具有圖2所示的數(shù)據(jù)處理 裝置200以及緩存確定裝置600。此外,可以使用圖4所示的數(shù)據(jù)處理裝置來替代數(shù)據(jù)處理 裝置200。數(shù)據(jù)處理裝置200如前所述具有8個“tag_data”,緩存標(biāo)簽信息存儲在這8個 “tag_data”中。數(shù)據(jù)處理裝置200由此形成8路組關(guān)聯(lián)緩存設(shè)備。此外,數(shù)據(jù)處理裝置200 具有移位結(jié)構(gòu)(shift structure),在該移位結(jié)構(gòu)中,按照從第二管線的“上游側(cè)”開始的順 序、在連續(xù)的設(shè)置路線中預(yù)定從0到7的存儲位置,并且當(dāng)驅(qū)動信號“shift”有效(斷言狀 態(tài))時,數(shù)據(jù)元素向“下游”移動。作為該移位結(jié)構(gòu)的結(jié)果,最早的緩存標(biāo)簽存儲在存儲位 置0的“tag_data”中,最新的緩存標(biāo)簽存儲在存儲位置7的“tag_data”中。每當(dāng)發(fā)生緩 存未命中時,緩存標(biāo)簽就按照從存儲位置7的“tag_data”到存儲位置0的“tag_data”的 順序移動(移位),并最終從第二管線被清出。由于不斷地順次丟棄最早的緩存標(biāo)簽和緩存 數(shù)據(jù),因此本實(shí)施例的緩存確定裝置是不需要執(zhí)行典型的緩存機(jī)構(gòu)的復(fù)雜的替換控制的非 常簡單的機(jī)構(gòu)。緩存命中確定接下來,將描述緩存命中/未命中確定過程。通過緩存確定裝置600執(zhí)行緩存命 中/未命中確定。通過檢查從數(shù)據(jù)處理裝置200輸出的處理結(jié)果信號“tag_id” ( 二進(jìn)制 補(bǔ)碼記數(shù)法)的1位符號位來確定是否發(fā)生緩存未命中。當(dāng)從數(shù)據(jù)處理裝置200輸出的有 效信號“valid”有效(斷言狀態(tài))、且符號位為1時,“tag_id”為負(fù),確定發(fā)生了緩存未命 中。當(dāng)符號位為0時,“tag_id”為正,確定發(fā)生了緩存命中。從數(shù)據(jù)處理裝置200輸出的數(shù)據(jù)信號“data”被與“tag_id”同步地輸入到緩存確 定裝置600。在如上所述確定發(fā)生了緩存未命中的情況下,該數(shù)據(jù)信號“ data,,是存在緩存 未命中時的地址“miSS_hit_addreSS”。然后,當(dāng)存在緩存未命中時,緩存確定裝置600將 驅(qū)動信號“shift”設(shè)置為有效(斷言狀態(tài)),并輸入存在緩存未命中時的地址“miss_hit_address”作為數(shù)據(jù)處理裝置200的數(shù)據(jù)信號“tag_data”。每當(dāng)發(fā)生緩存未命中時使驅(qū)動 信號“shift”有效,并減小處理結(jié)果“tag_id”。還存在如下情況即使在處理結(jié)果“tag_id”中最初保持正值,也在重復(fù)發(fā)生緩存 未命中時將第二管線移位,并從第二管線清出表示緩存標(biāo)簽的“tag_data”。假定最早的緩 存標(biāo)簽的存儲編號為0,則清出(swe印out) “tag_id”時的處理結(jié)果“tag_id”的值明顯為 負(fù)。這就是在前述緩存確定中僅僅需要檢查“tag_id”的符號的原因。也就是說,設(shè)計存儲 位置編號的分配使得最早的緩存標(biāo)簽的存儲編號為0,最新的緩存標(biāo)簽的存儲編號為N-1。 由此,緩存確定僅僅需要區(qū)分最后級的數(shù)據(jù)處理結(jié)果的符號。因此,根據(jù)本實(shí)施例的緩存確 定非常簡單。毋庸置疑,在從第二管線的“上游側(cè)”向“下游側(cè)”分配從0到N-I的存儲編號的 情況下,可以通過確定“tag_id”的值是否小于第二管線中元素的數(shù)量N來執(zhí)行緩存確定。此外,如前所述,由于不斷依次丟棄最早的緩存數(shù)據(jù)的機(jī)構(gòu),因此本實(shí)施例的示例 中的緩沖存儲器僅僅需要使用環(huán)狀FIFO。在這種情況下,便于全關(guān)聯(lián)緩存確定單元520和 緩沖存儲器(FIFO) 590的同步化。請注意,如果確定為緩存命中,則將把期望的紋理數(shù)據(jù)存 儲在由“tag_id”指示的位置處的緩沖存儲器中。該緩存設(shè)備使得能夠?qū)崿F(xiàn)具有非常多路數(shù)的全關(guān)聯(lián)緩存設(shè)備。由此,即使在通過 時分復(fù)用對多種內(nèi)容執(zhí)行圖像處理、或通過疊加多個半透明紋理數(shù)據(jù)執(zhí)行圖像處理的情況 下,也可以降低緩存沖突的概率。此外,使用緩存設(shè)備的典型實(shí)現(xiàn)方法,由于當(dāng)處理非常多 的路時確定電路的選擇器具有大量的邏輯段而難以實(shí)現(xiàn)時序收斂,并且不能以高操作頻率 執(zhí)行操作。相比之下,由于使用管線配置執(zhí)行確定,因此以上緩存設(shè)備的確定電路以非常高 的操作頻率執(zhí)行操作。使用以上全關(guān)聯(lián)緩存確定電路,由于順次自動刪除最早的數(shù)據(jù),因此 不需要在發(fā)生緩存沖突時的復(fù)雜的替換控制。因此,緩沖存儲器還可以僅使用FIFO執(zhí)行良 好的命中確定。其他實(shí)施例此外,圖10示出了在示出使用ALU (算術(shù)邏輯單元,Arithmetic LogicUnit)執(zhí)行 算術(shù)處理(而非比較運(yùn)算)的過程,作為由參照單元在參照數(shù)據(jù)之后執(zhí)行的算術(shù)處理時的 基本電路的示例。在圖10中,不同于圖1示出的示例,“data2”被添加到第一管線,“tag data2”被添加到第二管線。類似于前述說明,當(dāng)“data[l-l] ”和“tag_data[i] ”相等時選擇 "tag_data2[i] ”,并將使用“data2 [1-1] ”執(zhí)行算術(shù)處理的結(jié)果存儲在“tag_id[l] ”中。當(dāng) “data[1-1] ”和"tag_data[i+l] ”相等時選擇 “tag_data2 [i+1] ”,并將使用 “data2[l_l],, 執(zhí)行算術(shù)處理的結(jié)果存儲在“tag_id[l] ”中。此外,如果“tag_data[i]或“tag_data[i+l] ” 都不相等,則選擇輸入的“tag_id[l-l],,而不執(zhí)行算術(shù)處理,并將“tag_id[l-l],,存儲在 “tag_id[l]”中。由此,作為第一管線和第二管線的數(shù)據(jù)以及數(shù)據(jù)處理電路1100的配置的 結(jié)果,可以實(shí)現(xiàn)各種算術(shù)處理(基本算術(shù)運(yùn)算、大小比較等)。此外,可以根據(jù)各種算術(shù)處理結(jié)果、將第一管線和第二管線的有效信號“valid” 和“tag_Valid”從有效切換到無效。在這種情況下,可以消除特定的數(shù)據(jù)元素“data”和 "tag_data"0此外,可以根據(jù)各種算術(shù)處理結(jié)果、交換第一管線和第二管線的特定的數(shù)據(jù)元 素“data”和“tag_data”。毋庸置疑,由此可以根據(jù)以上配置的模式實(shí)現(xiàn)使用各種運(yùn)算的數(shù) 據(jù)處理。
18
此外,可以作為各個處理器中的軟件,來實(shí)現(xiàn)圖3和圖4所示的各區(qū)間(級)的 數(shù)據(jù)處理,并且可以在使各處理器與驅(qū)動信號“shift”同步的同時,交換“data”和“tag_ data”。在這種情況下,可以使用軟件通過并行分布處理來執(zhí)行數(shù)據(jù)處理。此外,在這種情 況下,各處理器處理的數(shù)據(jù)元素的數(shù)量不限于8 (與圖3中的示例中一樣),僅需要是在處理 器可訪問的存儲器中展開的大數(shù)。此時,可以通過移動存儲器中指針的原點(diǎn)來實(shí)現(xiàn)“tag_ data"的移動。毋庸置疑,由此通過使用以上配置的模式、可以將本發(fā)明應(yīng)用于軟件處理。根據(jù)本發(fā)明,對于在彼此相反的方向上移動數(shù)據(jù)元素的兩個管線,可以在對應(yīng)的 各級可靠、快速地比較數(shù)據(jù)元素。本發(fā)明的各方面還可以通過讀出并執(zhí)行記錄在存儲裝置上的用于執(zhí)行上述實(shí)施 例的功能的程序的系統(tǒng)或設(shè)備的計算機(jī)(或諸如CPU或MPU的裝置)、以及由系統(tǒng)或設(shè)備 的計算機(jī)例如讀出并執(zhí)行記錄在存儲裝置上的用于執(zhí)行上述實(shí)施例的功能的程序來執(zhí)行 各步驟的方法來實(shí)現(xiàn)。鑒于此,例如經(jīng)由網(wǎng)絡(luò)或者從用作存儲裝置的各種類型的記錄介質(zhì) (例如計算機(jī)可讀介質(zhì))向計算機(jī)提供程序。雖然參照示例性實(shí)施例對本發(fā)明進(jìn)行了說明,但是應(yīng)當(dāng)理解,本發(fā)明不限于所公 開的示例性實(shí)施例。應(yīng)當(dāng)對所附權(quán)利要求的范圍給予最寬的解釋,以使其涵蓋所有這種變 型、等同結(jié)構(gòu)及功能。
權(quán)利要求
一種信息處理裝置,該信息處理裝置包括第一管線單元,其具有多個第一節(jié)點(diǎn),并被配置為將第一方向上的各第一節(jié)點(diǎn)中保持的第一數(shù)據(jù)向所述多個第一節(jié)點(diǎn)中的另一個移動;第二管線單元,其具有與所述第一管線單元的所述第一節(jié)點(diǎn)相對應(yīng)的多個第二節(jié)點(diǎn),并被配置為將第二方向上的各第二節(jié)點(diǎn)中保持的第二數(shù)據(jù)向所述多個第二節(jié)點(diǎn)中的另一個移動,其中,所述第二方向與所述第一方向相反;第一比較單元,其被配置為將關(guān)注節(jié)點(diǎn)中保持的第一數(shù)據(jù)和與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的第二節(jié)點(diǎn)中保持的第二數(shù)據(jù)相比較,其中,所述關(guān)注節(jié)點(diǎn)是所述第一管線單元的所述第一節(jié)點(diǎn)中的一個;以及第二比較單元,其被配置為將所述關(guān)注節(jié)點(diǎn)中保持的所述第一數(shù)據(jù),與位于相對于所述第二方向的上游側(cè)或者下游側(cè)、作為與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的所述第二節(jié)點(diǎn)的下一個節(jié)點(diǎn)的第二節(jié)點(diǎn)中保持的第二數(shù)據(jù)相比較。
2.根據(jù)權(quán)利要求1所述的信息處理裝置,其中如果驅(qū)動信號有效,則所述第二管線單元將各第二節(jié)點(diǎn)中保持的第二數(shù)據(jù)向位于所述 第二方向的下游側(cè)、作為所述各第二節(jié)點(diǎn)的下一個節(jié)點(diǎn)的第二節(jié)點(diǎn)移動,并且在所述驅(qū)動信號有效的情況下,所述第二比較單元執(zhí)行比較處理;而在所述驅(qū)動信號 無效的情況下,所述第二比較單元不執(zhí)行所述比較處理。
3.根據(jù)權(quán)利要求1所述的信息處理裝置,其中所述第一比較單元和所述第二比較單元確定所述第一管線單元的數(shù)據(jù)與所述第二管 線單元的數(shù)據(jù)是否匹配。
4.根據(jù)權(quán)利要求1所述的信息處理裝置,其中 所述信息處理裝置對緩存數(shù)據(jù)進(jìn)行管理,所述第一管線單元移動作為所述第一數(shù)據(jù)的地址,所述第二管線單元移動作為所述第 二數(shù)據(jù)的所述緩存數(shù)據(jù)的緩存標(biāo)簽,并且所述第一比較單元和所述第二比較單元確定所述第一管線單元中的地址與所述第二 管線單元中的緩存標(biāo)簽是否匹配。
5.根據(jù)權(quán)利要求1所述的信息處理裝置,其中所述第一管線單元和所述第二管線單元是逆流管線。
6.根據(jù)權(quán)利要求1所述的信息處理裝置,其中所述第一管線單元和所述第二管線單元各自具有多個觸發(fā)器,并且對各觸發(fā)器提供同 一時鐘信號。
7.一種信息處理裝置,其用于確定由處理裝置請求的數(shù)據(jù)的緩存命中,該信息處理裝 置包括第一管線單元,其具有多個第一節(jié)點(diǎn),并被配置為將第一方向上的各第一節(jié)點(diǎn)中保持 的請求數(shù)據(jù)的地址向所述第一節(jié)點(diǎn)中的另一個移動;第二管線單元,其具有與所述第一管線單元的所述第一節(jié)點(diǎn)相對應(yīng)的多個第二節(jié)點(diǎn), 并被配置為將第二方向上的各第二節(jié)點(diǎn)中保持的緩存標(biāo)簽向所述多個第二節(jié)點(diǎn)中的另一 個移動,其中,所述第二方向與所述第一方向相反;第一比較單元,其被配置為將關(guān)注節(jié)點(diǎn)中保持的第一數(shù)據(jù)和與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的第二節(jié)點(diǎn)中保持的第二數(shù)據(jù)相比較,其中,所述關(guān)注節(jié)點(diǎn)是所述第一管線單元的所述第一 節(jié)點(diǎn)中的一個;第二比較單元,其被配置為將所述關(guān)注節(jié)點(diǎn)中保持的所述第一數(shù)據(jù),與位于相對于所 述第二方向的上游側(cè)、作為與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的所述第二節(jié)點(diǎn)的下一個節(jié)點(diǎn)的第二節(jié) 點(diǎn)中保持的第二數(shù)據(jù)相比較;以及確定單元,其被配置為基于所述第一比較單元和所述第二比較單元的結(jié)果,確定對于 所述請求數(shù)據(jù)是否存在緩存命中。
8.根據(jù)權(quán)利要求7所述的信息處理裝置,該信息處理裝置還包括接收單元,其被配置為在所述確定單元確定對于所述請求數(shù)據(jù)不存在緩存命中的情況 下,接收作為所述緩存標(biāo)簽的所述第一數(shù)據(jù)的地址的輸入。
9.一種信息處理裝置,該信息處理裝置包括具有用于處理依次流過多個第一節(jié)點(diǎn)的第一數(shù)據(jù)、以及按照與所述第一數(shù)據(jù)相反的順 序流過多個第二節(jié)點(diǎn)的第二數(shù)據(jù)的逆流管線配置的電路,該電路包括參照單元,其被配置為參照各第一節(jié)點(diǎn)中保持的數(shù)據(jù)、與所述第一節(jié)點(diǎn)相對應(yīng)的第二 節(jié)點(diǎn)中保持的數(shù)據(jù)、以及至少在位于與所述第一節(jié)點(diǎn)相對應(yīng)的所述第二節(jié)點(diǎn)之前或之后的 第二節(jié)點(diǎn)中保持的數(shù)據(jù)。
10.一種信息處理裝置,該信息處理裝置包括第一管線單元,其具有數(shù)據(jù)在第一方向上流動而通過的多個觸發(fā)器;第二管線單元,其具有數(shù)據(jù)在第二方向上流動而通過的多個觸發(fā)器;以及參照單元,其被配置為對于所述第一管線單元的所述觸發(fā)器中的至少一個,參照輸入 到所述第一管線單元的所述觸發(fā)器的數(shù)據(jù)、以及輸入到與所述第一管線單元的所述觸發(fā)器 相對應(yīng)的所述第二管線單元的觸發(fā)器的數(shù)據(jù)或者從所述第一管線單元的所述觸發(fā)器輸出 的數(shù)據(jù)。
11.一種信息處理方法,該信息處理方法包括第一移動步驟,對于第一管線單元的多個第一節(jié)點(diǎn),將第一方向上的各第一節(jié)點(diǎn)中保 持的第一數(shù)據(jù)向所述多個第一節(jié)點(diǎn)中的另一個移動;第二移動步驟,對于與所述第一管線單元的所述第一節(jié)點(diǎn)相對應(yīng)的第二管線單元的多 個第二節(jié)點(diǎn),將第二方向上的各第二節(jié)點(diǎn)中保持的第二數(shù)據(jù)向所述多個第二節(jié)點(diǎn)中的另一 個移動,其中,所述第二方向與所述第一方向相反;第一比較步驟,將關(guān)注節(jié)點(diǎn)中保持的第一數(shù)據(jù)和與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的第二節(jié)點(diǎn)中 保持的第二數(shù)據(jù)相比較,其中,所述關(guān)注節(jié)點(diǎn)是所述第一管線單元的所述第一節(jié)點(diǎn)中的一 個;以及第二比較步驟,將所述關(guān)注節(jié)點(diǎn)中保持的所述第一數(shù)據(jù),與位于相對于所述第二方向 的上游側(cè)或者下游側(cè)、作為與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的所述第二節(jié)點(diǎn)的下一個節(jié)點(diǎn)的第二節(jié) 點(diǎn)中保持的第二數(shù)據(jù)相比較。
12.一種信息處理方法,該信息處理方法使用用于處理依次流過多個第一節(jié)點(diǎn)的第一 數(shù)據(jù)、以及按照與所述第一數(shù)據(jù)相反的順序流過多個第二節(jié)點(diǎn)的第二數(shù)據(jù)的逆流管線配 置,該信息處理方法包括如下步驟參照各第一節(jié)點(diǎn)中保持的數(shù)據(jù)、與所述第一節(jié)點(diǎn)相對應(yīng)的第二節(jié)點(diǎn)中保持的數(shù)據(jù)、以及至少在位于與所述第一節(jié)點(diǎn)相對應(yīng)的所述第二節(jié)點(diǎn)之前或之后的第二節(jié)點(diǎn)中保持的數(shù) 據(jù)。
13. 一種使用信息處理裝置的信息處理方法,該信息處理裝置包括第一管線單元,其 具有數(shù)據(jù)在第一方向上流動而通過的多個觸發(fā)器;以及第二管線單元,其具有數(shù)據(jù)在第二 方向上流動而通過的多個觸發(fā)器,所述信息處理方法包括如下步驟對于所述第一管線單元的所述觸發(fā)器中的至少一個,參照輸入到所述第一管線單元的 所述觸發(fā)器的數(shù)據(jù)、以及輸入到與所述第一管線單元的所述觸發(fā)器相對應(yīng)的所述第二管線 單元的觸發(fā)器的數(shù)據(jù)或者從所述第一管線單元的所述觸發(fā)器輸出的數(shù)據(jù)。
全文摘要
本發(fā)明提供信息處理裝置及信息處理方法。該信息處理裝置包括第一管線,其具有第一節(jié)點(diǎn),并將各第一節(jié)點(diǎn)中保持的數(shù)據(jù)向位于第一方向上的第一節(jié)點(diǎn)移動;第二管線,其具有與所述第一節(jié)點(diǎn)相對應(yīng)的第二節(jié)點(diǎn),并將各第二節(jié)點(diǎn)中保持的第二數(shù)據(jù)向位于與所述第一方向相反的第二方向上的第二節(jié)點(diǎn)移動;第一比較單元,其被配置為將保持在關(guān)注節(jié)點(diǎn)中的數(shù)據(jù)與保持在與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的第二節(jié)點(diǎn)中的數(shù)據(jù)相比較,其中,所述關(guān)注節(jié)點(diǎn)是所述第一節(jié)點(diǎn)中的一個;以及第二比較單元,其被配置為將保持在所述關(guān)注節(jié)點(diǎn)中的數(shù)據(jù),與保持在位于與所述關(guān)注節(jié)點(diǎn)相對應(yīng)的所述第二節(jié)點(diǎn)的上游或下游側(cè)一個節(jié)點(diǎn)處的第二節(jié)點(diǎn)中的數(shù)據(jù)相比較。
文檔編號G06F9/38GK101894012SQ20101018289
公開日2010年11月24日 申請日期2010年5月21日 優(yōu)先權(quán)日2009年5月22日
發(fā)明者伊藤忠幸 申請人:佳能株式會社