欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

向量處理器的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)的制作方法

文檔序號(hào):6516324閱讀:296來(lái)源:國(guó)知局
向量處理器的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)的制作方法
【專(zhuān)利摘要】本公開(kāi)提供了一種用于執(zhí)行并行操作的處理器(諸如向量處理器)的存儲(chǔ)器互連體系結(jié)構(gòu)。示例性處理器可以包括計(jì)算陣列,其包括處理元件;存儲(chǔ)器,其包括存儲(chǔ)體;和存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu),其將計(jì)算陣列互連到存儲(chǔ)器。在實(shí)例中,所述存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)包括基于交換機(jī)的互連網(wǎng)絡(luò)和非基于交換機(jī)的互連網(wǎng)絡(luò)。所述處理器被配置來(lái)經(jīng)由基于交換機(jī)的互連網(wǎng)絡(luò)將第一數(shù)據(jù)操作數(shù)同步加載到處理元件中的每個(gè),且經(jīng)由非基于交換機(jī)的互連網(wǎng)絡(luò)將第二數(shù)據(jù)操作數(shù)同步加載到處理元件中的每個(gè)。
【專(zhuān)利說(shuō)明】向量處理器的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)
[0001]相關(guān)申請(qǐng)案
[0002]本申請(qǐng)是2012年10月23日提交的美國(guó)臨時(shí)專(zhuān)利申請(qǐng)第61/717,561號(hào)的非臨時(shí)申請(qǐng),本申請(qǐng)是以引用的方式全部并入本文中。
【技術(shù)領(lǐng)域】
[0003]本公開(kāi)一般涉及執(zhí)行并行處理的處理器(諸如向量處理器)且更特別地說(shuō)涉及一種用于執(zhí)行并行處理的處理器的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)。
【背景技術(shù)】
[0004]例如由數(shù)字信號(hào)處理器實(shí)施以?xún)?yōu)化數(shù)字信號(hào)處理應(yīng)用的并行處理趨向于集中在存儲(chǔ)器訪(fǎng)問(wèn)操作。例如,數(shù)字信號(hào)處理器可用作單指令多數(shù)據(jù)(SMD)或數(shù)據(jù)并行處理器。在SMD操作中,將一個(gè)指令發(fā)送到數(shù)字信號(hào)處理器的多個(gè)處理元件,其中每個(gè)處理器元件可對(duì)不同數(shù)據(jù)執(zhí)行相同操作。為了實(shí)現(xiàn)高數(shù)據(jù)吞吐量,具有SMD體系結(jié)構(gòu)的DSP (或支持并行處理的其它處理器)的存儲(chǔ)器組織支持多次同步數(shù)據(jù)訪(fǎng)問(wèn)。在實(shí)例中,處理器體系結(jié)構(gòu)可以包括由存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)互連到處理元件的多體存儲(chǔ)器,使得可在給定循環(huán)期間對(duì)處理元件加載一個(gè)以上數(shù)據(jù)操作數(shù)(可由處理元件訪(fǎng)問(wèn)一個(gè)以上數(shù)據(jù)操作數(shù))。
[0005]存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)通常包括用于每次各自并行數(shù)據(jù)傳送的互連網(wǎng)絡(luò)。例如,如果執(zhí)行操作需要從存儲(chǔ)器到處理器元件進(jìn)行兩次并行數(shù)據(jù)傳送,那么存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)實(shí)施互連網(wǎng)絡(luò)以將第一數(shù)據(jù)集從存儲(chǔ)器傳送到處理元件并實(shí)施另一互連網(wǎng)絡(luò)以將第二數(shù)據(jù)集從存儲(chǔ)器傳送到處理元件。雖然用于并行處理的現(xiàn)有存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)一般適用于其所希望的目的,但是并非其所有方面均完全令人滿(mǎn)意。
【專(zhuān)利附圖】

【附圖說(shuō)明】
[0006]在閱讀附圖后根據(jù)下列詳述充分理解本公開(kāi)。本公開(kāi)強(qiáng)調(diào),根據(jù)工業(yè)中的標(biāo)準(zhǔn)慣例,并未按比例繪制不同特征且僅僅為了說(shuō)明目的而使用不同特征。事實(shí)上,為了明確論述,可以強(qiáng)制增加或減小不同特征的尺寸。
[0007]圖1是根據(jù)本公開(kāi)的不同方面的示例性數(shù)字信號(hào)處理器的示意方框圖。
[0008]圖2是根據(jù)本公開(kāi)的不同方面的示例性數(shù)字信號(hào)處理器的示意方框圖。
[0009]圖3是示出了互連根據(jù)本公開(kāi)的不同方面的數(shù)字信號(hào)處理器的不同特征(諸如圖1和圖2的數(shù)字信號(hào)處理器的計(jì)算陣列和存儲(chǔ)器)的示例性交叉開(kāi)關(guān)(crossbar)的示意方框圖。
[0010]圖4是示出了互連根據(jù)本公開(kāi)的不同方面的數(shù)字信號(hào)處理器的不同特征(諸如圖2的數(shù)字信號(hào)處理器存儲(chǔ)器的和計(jì)算陣列)的示例性廣播總線(xiàn)的示意方框圖。
[0011]圖5是可由根據(jù)本公開(kāi)的不同方面的數(shù)字信號(hào)處理器(諸如圖2的數(shù)字信號(hào)處理器)實(shí)施的示例性方法的流程圖。
[0012]圖6是由根據(jù)本公開(kāi)的不同方面的數(shù)字信號(hào)處理器(諸如圖2的數(shù)字信號(hào)處理器)實(shí)施的示例性矩陣乘法器算法的示意圖。
【具體實(shí)施方式】
[0013]本公開(kāi)提供了在任何適當(dāng)計(jì)算環(huán)境中實(shí)施的不同處理器實(shí)施方案。一個(gè)示例性實(shí)施方案提供了一種用于可執(zhí)行并行操作的處理器(諸如向量處理器)的存儲(chǔ)器互連體系結(jié)構(gòu)。在某些實(shí)施方案中,處理器可以包括計(jì)算陣列,其包括處理元件;存儲(chǔ)器,其包括存儲(chǔ)體;和存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu),其將計(jì)算陣列互連到存儲(chǔ)器。處理元件中的至少某些可以包括計(jì)算單元和寄存器堆。在實(shí)例中,每個(gè)處理元件均包括計(jì)算單元和寄存器堆。存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)可以包括:基于交換機(jī)的互連網(wǎng)絡(luò)和非基于交換機(jī)的互連網(wǎng)絡(luò),且處理器被配置來(lái)經(jīng)由基于交換機(jī)的互連網(wǎng)絡(luò)將第一數(shù)據(jù)操作數(shù)同步加載到處理元件中的至少某些,且經(jīng)由非基于交換機(jī)的互連網(wǎng)絡(luò)將第二數(shù)據(jù)操作數(shù)同步加載到處理元件中的至少某些。
[0014]在示例性構(gòu)造中,基于交換機(jī)的互連網(wǎng)絡(luò)是交叉開(kāi)關(guān)且非基于交換機(jī)的互連網(wǎng)絡(luò)是總線(xiàn)。在不同實(shí)施方式中,第一數(shù)據(jù)操作數(shù)是用于每個(gè)處理元件的不同數(shù)據(jù)操作數(shù)且第二數(shù)據(jù)操作數(shù)是用于每個(gè)處理元件的相同數(shù)據(jù)操作數(shù)。在不同實(shí)施方式中,計(jì)算陣列具有N個(gè)處理元件;存儲(chǔ)器具有η個(gè)存儲(chǔ)體;且交叉開(kāi)關(guān)網(wǎng)絡(luò)(crossbar network)具有NXn個(gè)交換機(jī)。在不同實(shí)施方式中,n=NX由處理器執(zhí)行的同步數(shù)據(jù)操作數(shù)加載的數(shù)量。在示例性構(gòu)造中,處理器被配置來(lái)經(jīng)由基于交換機(jī)的互連網(wǎng)絡(luò)將第一數(shù)據(jù)操作數(shù)同步加載到處理元件中的每個(gè),且經(jīng)由非基于交換機(jī)的互連網(wǎng)絡(luò)將第二數(shù)據(jù)操作數(shù)同步加載到處理元件中的每個(gè)。
[0015]在某些實(shí)施方案中,處理器可以包括計(jì)算陣列,其具有N個(gè)處理元件;存儲(chǔ)器,其具有η個(gè)存儲(chǔ)體;交叉開(kāi)關(guān),其互連計(jì)算陣列與存儲(chǔ)器;和總線(xiàn),其互連計(jì)算陣列與存儲(chǔ)器。N個(gè)處理元件中的每個(gè)可以包括計(jì)算單元和寄存器堆。交叉開(kāi)關(guān)被配置來(lái)將數(shù)據(jù)從η個(gè)存儲(chǔ)體傳送到N個(gè)處理元件,且總線(xiàn)被配置來(lái)將數(shù)據(jù)從η個(gè)存儲(chǔ)體傳送到N個(gè)處理元件。交叉開(kāi)關(guān)和總線(xiàn)被配置來(lái)將數(shù)據(jù)從η個(gè)存儲(chǔ)體同步傳送到N個(gè)處理元件。在不同實(shí)施方式中,交叉開(kāi)關(guān)具有NXn個(gè)交換機(jī)且總線(xiàn)沒(méi)有交換機(jī)。在不同實(shí)施方式中,交叉開(kāi)關(guān)被配置來(lái)將不同數(shù)據(jù)操作數(shù)傳送到N個(gè)處理元件中的每個(gè),且總線(xiàn)被配置來(lái)將相同數(shù)據(jù)操作數(shù)從存儲(chǔ)器傳送到N個(gè)處理元件。在不同實(shí)施方式中,η=ΝΧ由處理器執(zhí)行的同步數(shù)據(jù)傳送的數(shù)量。
[0016]在某些實(shí)施方案中,一種用于操作本文中描述的處理器的方法包括:將指令集發(fā)布到處理元件;基于所述指令集,經(jīng)由基于交換機(jī)的互聯(lián)網(wǎng)絡(luò)將第一數(shù)據(jù)操作數(shù)同步傳送到處理元件,且經(jīng)由非基于交換機(jī)的互聯(lián)網(wǎng)絡(luò)將第二數(shù)據(jù)操作數(shù)同步傳送到處理元件;和通過(guò)處理元件使用第一數(shù)據(jù)操作數(shù)和第二數(shù)據(jù)操作數(shù)執(zhí)行操作。在不同實(shí)施方式中,傳送第一數(shù)據(jù)操作數(shù)可以包括執(zhí)行廣播加載,其中相同數(shù)據(jù)操作數(shù)是從存儲(chǔ)器傳送到每個(gè)處理元件;且傳送第二數(shù)據(jù)操作數(shù)可以包括執(zhí)行單指令多數(shù)據(jù)(SMD)加載,其中不同數(shù)據(jù)操作數(shù)是從存儲(chǔ)器傳送到每個(gè)處理元件。在不同實(shí)施方式中,操作是有限響應(yīng)濾波器操作和矩陣乘法操作之一。在不同實(shí)施方式中,操作可以是可與同步SIMD和廣播加載兼容的其它算法。
[0017]示例性實(shí)施方案詳述
[0018]下列公開(kāi)提供用于實(shí)施本公開(kāi)的不同特征的許多不同實(shí)施方案或?qū)嵗?。下文描述組件和配置的特定實(shí)例以簡(jiǎn)化本公開(kāi)。當(dāng)然,這些僅僅是實(shí)例且并非意欲限制。此外,本公開(kāi)可以在不同實(shí)例中重復(fù)參考數(shù)字和/或字母。這種重復(fù)是為了簡(jiǎn)化和明確的目的且本身并不指示所論述的不同實(shí)施方案和/或構(gòu)造之間的關(guān)系。
[0019]圖1是根據(jù)本發(fā)明的不同方面的示例性數(shù)字信號(hào)處理器100的示意方框圖。為了明確起見(jiàn),簡(jiǎn)化圖1以充分理解本公開(kāi)的發(fā)明概念??稍跀?shù)字信號(hào)處理器100中添加額外特征,且在數(shù)字信號(hào)處理器100的其它實(shí)施方案中可取代或消除下文描述的特征中的某些。
[0020]數(shù)字信號(hào)處理器100可以包括計(jì)算陣列110、控制單元120和存儲(chǔ)器130。在實(shí)例中,計(jì)算陣列110和控制單元120構(gòu)成可執(zhí)行數(shù)字信號(hào)處理器100的比較和數(shù)據(jù)處理功能的核心處理器。數(shù)字信號(hào)處理器100可包括其它組件,諸如用于執(zhí)行微控制器指令的微控制器、直接存儲(chǔ)器訪(fǎng)問(wèn)(DMA)單元和到芯片外裝置的不同接口。 [0021]計(jì)算陣列110可以包括處理元件PE1、PE2、PE3、……、PEN,其中N是計(jì)算陣列110的處理元件的總數(shù)。在實(shí)例中,計(jì)算陣列Iio可以包括四個(gè)處理元件(換句話(huà)說(shuō),PE1、PE2、PE3和PE4,其中N=4)。處理元件PE1、PE2、PE3、……、PEN對(duì)數(shù)字信號(hào)處理算法執(zhí)行數(shù)值處理。處理元件PE1、PE2、PE3、……、PEN進(jìn)行獨(dú)立、并行操作,或用作單指令多數(shù)據(jù)(SMD)引擎。在本實(shí)例中,每個(gè)處理元件PE1、PE2、PE3、……、PEN均是向量處理器?;蛘?,處理元件PE1、PE2、PE3、……、PEN是標(biāo)量處理器和向量處理器的組合。
[0022]每個(gè)處理元件PE1、PE2、PE3、......、PEN包括各自計(jì)算單元(CU) 112!、1122、
1123、……、1121<和各自寄存器堆111、1142、1143、……、114N。在已描繪的實(shí)施方案中,計(jì)
算單元112^112^112^......、1121<相同且寄存器堆111、1142、1143、......、114N相同,但是
本公開(kāi)設(shè)想其中計(jì)算單元和寄存器堆均不相同的實(shí)施方案。本公開(kāi)還設(shè)想其中處理元件PE1、PE2、PE3、……、PEN中的一個(gè)或多個(gè)不包括計(jì)算單元和/或寄存器堆的構(gòu)造。在本實(shí)
例中,計(jì)算單元112ρ1122、1123、......、112Ν包括算術(shù)邏輯單元(ALU)、乘法累加器(MAC)、移
位器、其它計(jì)算單元或其組合。ALU可執(zhí)行算術(shù)和邏輯操作,諸如加法、減法、求反、遞增、遞減、絕對(duì)值、與、或、異或、非、除法原語(yǔ)、其它算術(shù)操作、其它邏輯操作或其組合。MAC可執(zhí)行乘法操作以及乘法和累加操作,諸如單循環(huán)乘法、乘法/加法、乘法/減法、其它操作或其組合。移位器可執(zhí)行邏輯和算術(shù)移位、位操作、正規(guī)化、反正規(guī)化、指數(shù)求導(dǎo)操作、其它操作或其組合。可對(duì)固定點(diǎn)和浮點(diǎn)格式均執(zhí)行不同算術(shù)操作、邏輯操作和其它操作。寄存器堆傳送處理元件PE1、PE2、PE3、……、PEN與數(shù)據(jù)互連網(wǎng)絡(luò)(諸如下文詳細(xì)描述的互連網(wǎng)絡(luò)150和互連網(wǎng)絡(luò)160)之間的數(shù)據(jù)并存儲(chǔ)結(jié)果。在實(shí)例中,每個(gè)寄存器堆包括主要組的寄存器(例如,一組的16個(gè)寄存器)和次級(jí)組的寄存器(例如,另一組的16個(gè)寄存器)。在不同實(shí)施方案中,ALU、MAC和移位器還每個(gè)包括寄存器。
[0023]控制單元120利于數(shù)字信號(hào)處理器100的程序執(zhí)行??刂茊卧?20可以包括算術(shù)邏輯單元和數(shù)據(jù)地址生成(ALU-DAG)單元122、程序定序器124和程序存儲(chǔ)器126。控制單元120可包括其它組件,諸如指令高速緩存、計(jì)時(shí)器和指令寄存器。ALU-DAG單元122支持通用整數(shù)計(jì)算并對(duì)存儲(chǔ)器地址供應(yīng)地址。例如,當(dāng)在存儲(chǔ)器(諸如存儲(chǔ)器130)與寄存器(諸如寄存器堆lHplHyllt、……、114N)之間傳送數(shù)據(jù)時(shí),ALU-DAG122提供存儲(chǔ)器地址。ALU-DAG單元122可將地址供應(yīng)給數(shù)據(jù)存儲(chǔ)器(例如,存儲(chǔ)器130)和/或程序存儲(chǔ)器126。程序定序器124將指令地址提供到程序存儲(chǔ)器126以進(jìn)行指令取出。程序存儲(chǔ)器126將數(shù)字信號(hào)處理器100實(shí)施的程序存儲(chǔ)到處理數(shù)據(jù)(諸如存儲(chǔ)在存儲(chǔ)器130中的處理數(shù)據(jù))且還可存儲(chǔ)處理數(shù)據(jù)。程序包括具有一個(gè)或多個(gè)指令的指令集,且數(shù)字信號(hào)處理器100通過(guò)取出指令、解碼指令和執(zhí)行指令來(lái)實(shí)施程序。在實(shí)例中,程序可以包括用于實(shí)施不同數(shù)字信號(hào)處理算法的指令集。
[0024]存儲(chǔ)器130存儲(chǔ)由數(shù)字信號(hào)處理器100處理的信息/數(shù)據(jù)(數(shù)據(jù)存儲(chǔ)器)、由數(shù)字信號(hào)處理器100實(shí)施以處理信息/數(shù)據(jù)的程序(程序存儲(chǔ)器)或其組合。在已描繪的實(shí)施方案中,存儲(chǔ)器130具有多體交錯(cuò)存儲(chǔ)器結(jié)構(gòu),使得存儲(chǔ)器130包括存儲(chǔ)體M1、M2、M3、……、Mn,其中η是存儲(chǔ)器130的存儲(chǔ)體的總數(shù)。多體交錯(cuò)存儲(chǔ)器結(jié)構(gòu)支持低延遲、高帶寬并行等級(jí)I (LI)存儲(chǔ)器訪(fǎng)問(wèn)(注意LI存儲(chǔ)器通常全速操作數(shù)字信號(hào)處理器100使得幾乎不延遲或沒(méi)有延遲)。在實(shí)例中,存儲(chǔ)器130是隨機(jī)訪(fǎng)問(wèn)存儲(chǔ)器,諸如靜態(tài)隨機(jī)訪(fǎng)問(wèn)存儲(chǔ)器(SRAM)。在實(shí)例中,存儲(chǔ)體Ml、M2、M3、……、Mn中的一個(gè)或多個(gè)是獨(dú)立SRAM。
[0025]互連網(wǎng)絡(luò)140、互連網(wǎng)絡(luò)150和互連網(wǎng)絡(luò)160互連計(jì)算陣列110、控制單元120和存儲(chǔ)器130,從而在計(jì)算陣列110、控制單元120與存儲(chǔ)器130之間提供通信路徑。互連網(wǎng)絡(luò)140、互連網(wǎng)絡(luò)150和互連網(wǎng)絡(luò)160包括單總線(xiàn)、多總線(xiàn)、交叉開(kāi)關(guān)網(wǎng)絡(luò)、單級(jí)網(wǎng)絡(luò)、多級(jí)網(wǎng)絡(luò)、其它類(lèi)型的互連網(wǎng)絡(luò)或其組合。控制單元120經(jīng)由互連網(wǎng)絡(luò)140將指令和數(shù)據(jù)地址發(fā)布到計(jì)算陣列110?;ミB網(wǎng)絡(luò)140因此經(jīng)由互連網(wǎng)絡(luò)140將指令和數(shù)據(jù)的地址傳送到不同處理元件PE1、PE2、PE3、……、PEN?;ミB網(wǎng)絡(luò)150和160傳送來(lái)自存儲(chǔ)器(諸如存儲(chǔ)器130、程序存儲(chǔ)器126、其它存儲(chǔ)器或其組合)的數(shù)據(jù)和/或指令,使得可將數(shù)字信號(hào)處理器100中的任何寄存器的內(nèi)容傳送到任何其它寄存器或任何存儲(chǔ)器位置,且存儲(chǔ)器130可將數(shù)據(jù)操作數(shù)(值)提供到計(jì)算陣列HO。
[0026]編程要求通常必須使處理元件PEl、PE2、PE3、……、PEN中的任何一個(gè)均訪(fǎng)問(wèn)存儲(chǔ)體Ml、M2、M3、……、Mn中的任何一個(gè)。存儲(chǔ)體與處理元件之間的互連網(wǎng)絡(luò)支持這種靈活的訪(fǎng)問(wèn)。例如,在圖1的數(shù)字信號(hào)處理器100中,互連網(wǎng)絡(luò)150和160互連計(jì)算陣列110與存儲(chǔ)器130,使得處理元件PE1、PE2、PE3、……、PEN中的任何一個(gè)均可與存儲(chǔ)體Ml、M2、
M3、......、Mn中的任何一個(gè)進(jìn)行通信(或訪(fǎng)問(wèn)存儲(chǔ)體Ml、M2、M3、......、Mn中的任何一個(gè))。
存儲(chǔ)體的數(shù)量和互連網(wǎng)絡(luò)的數(shù)量隨著并行加載指令的數(shù)量增加而增加。例如,數(shù)字信號(hào)處理器可使用一種互連網(wǎng)絡(luò)(諸如互連網(wǎng)絡(luò)150)和數(shù)量等于處理元件的數(shù)量的多個(gè)存儲(chǔ)體(在本實(shí)例中,存在四個(gè)PE,n=N=4)發(fā)布并執(zhí)行下列加載指令:
[0027]Id RO= [A0+= I],
[0028]這引導(dǎo)數(shù)字信號(hào)處理器使用位于保存在地址寄存器AO中的存儲(chǔ)器地址處的數(shù)據(jù)操作數(shù)來(lái)加載寄存器R0。隨后,AO中的地址遞增I。為了促進(jìn)實(shí)例,為了發(fā)布并執(zhí)行下列加載指令(其中并行發(fā)布兩個(gè)加載指令),數(shù)字信號(hào)處理器需要兩種互連網(wǎng)絡(luò)(每次數(shù)據(jù)加載使用一種互連網(wǎng)絡(luò),諸如互連網(wǎng)絡(luò)150和互連網(wǎng)絡(luò)160)和數(shù)量等于處理元件的數(shù)量的兩倍的多個(gè)存儲(chǔ)體(在實(shí)例中,存在四個(gè)PE,n=2 X N=2 X 4=8個(gè)存儲(chǔ)體(Ml至M8)):
[0029]Id RO= [A0+= I] || Id R1=[A1+=1],
[0030]這引導(dǎo)數(shù)字信號(hào)處理器使用位于保存在地址寄存器AO中的存儲(chǔ)器地址處的數(shù)據(jù)操作數(shù)來(lái)加載數(shù)據(jù)寄存器RO并使用位于保存在地址寄存器Al中的存儲(chǔ)器地址處的數(shù)據(jù)操作數(shù)來(lái)加載數(shù)據(jù)寄存器R1。隨后,AO和Al中的地址均遞增I。為了更加促進(jìn)實(shí)例,為使數(shù)字信號(hào)處理器的每個(gè)PE1、PE2、PE3、……、PEN執(zhí)行一次32位MAC/循環(huán)(每個(gè)循環(huán)進(jìn)行的乘法和累加),需要兩次并行存儲(chǔ)器加載以實(shí)現(xiàn)大約100%的使用數(shù)字信號(hào)處理器的計(jì)算資源。例如,考慮乘法和累加操作的簡(jiǎn)單有限脈沖響應(yīng)(FIR)濾波器內(nèi)核,其中可如下以C/C++編程語(yǔ)言寫(xiě)入具有樣品向量X和向量taps的最上層循環(huán):
[0031]for(int i=0;i<numTaps;i++)
[0032]sum+=x[i+j]*taps[i];
[0033]對(duì)于這種FIR濾波器內(nèi)核,為了使乘法和累加操作維持一次MAC/循環(huán),F(xiàn)IR內(nèi)核循環(huán)需要兩次并行加載,為向量X加載值且為向量taps加載值。數(shù)字信號(hào)處理器因此需要兩種互連網(wǎng)絡(luò)(一種互連網(wǎng)絡(luò)為向量X加載值且一種互連網(wǎng)絡(luò)為向量taps加載值)和數(shù)量等于處理元件的數(shù)量的兩倍的多個(gè)存儲(chǔ)體(在實(shí)例中,存在四個(gè)PE,n=2XN=2X4=8個(gè)存儲(chǔ)體(Ml至M8))。
[0034]為了改善計(jì)算資源效率,諸如如上所述,互連網(wǎng)絡(luò)150和互連網(wǎng)絡(luò)160使數(shù)字信號(hào)處理器100支持并行發(fā)布和執(zhí)行多個(gè)加載指令。在已描繪的實(shí)施方案中,為了利于并行加載,數(shù)字信號(hào)處理器100要求互連網(wǎng)絡(luò)150和互連網(wǎng)絡(luò)160是基于交換機(jī)的互連網(wǎng)絡(luò),諸如交叉開(kāi)關(guān)網(wǎng)絡(luò)、單級(jí)網(wǎng)絡(luò)、多級(jí)網(wǎng)絡(luò)或其它基于交換機(jī)的網(wǎng)絡(luò)。在已描繪的實(shí)例中,互連網(wǎng)絡(luò)150和互連網(wǎng)絡(luò)160是全交叉開(kāi)關(guān),意指交叉開(kāi)關(guān)具有數(shù)量等于處理元件的數(shù)量乘以存儲(chǔ)體的數(shù)量的多個(gè)交換機(jī)(換句話(huà)說(shuō),交換機(jī)的數(shù)量=NXn)。如上文論述,假設(shè)計(jì)算陣列110具有四個(gè)處理元件(PEl至PE4,其中N=4)且存儲(chǔ)器130具有八個(gè)存儲(chǔ)體(Ml至M8,其中n=2*N=2*4=8),圖3是示出了實(shí)施為根據(jù)本公開(kāi)的不同方面的互連網(wǎng)絡(luò)150和160的示例性交叉開(kāi)關(guān)350的示意方框圖。交叉開(kāi)關(guān)350包括NXn個(gè)交換機(jī)365 (這里,其中N=4且n=8,交換機(jī)的數(shù)量是32)。為了明確起見(jiàn),簡(jiǎn)化圖3以充分理解本公開(kāi)的發(fā)明概念。可在交叉開(kāi)關(guān)350中添加額外特征,且在交叉開(kāi)關(guān)350的其它實(shí)施方案中可取代或消除特征中的某些。
[0035]在一次循環(huán)期間,使用存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)(互連網(wǎng)絡(luò)140、150和160),處理元件PE1、PE2、PE3、……、PEN中的至少某些(經(jīng)由互連網(wǎng)絡(luò)140)訪(fǎng)問(wèn)指令并(經(jīng)由互連網(wǎng)絡(luò)150和160)訪(fǎng)問(wèn)來(lái)自存儲(chǔ)器的兩個(gè)數(shù)據(jù)操作數(shù)。在單指令多數(shù)據(jù)(SMD)模式中,處理元件PE1、PE2、PE3、……、PEN執(zhí)行相`同指令,但卻操作不同數(shù)據(jù)。例如,在圖1的數(shù)字信號(hào)處理器100的操作中,在一次循環(huán)期間,基于交換機(jī)的互連網(wǎng)絡(luò)150和160 (諸如全交叉開(kāi)關(guān))利于兩次同步并行單指令多數(shù)據(jù)(SMD)加載,其中每個(gè)處理元件PEl、PE2、PE3、……、PEN被引導(dǎo)來(lái)從存儲(chǔ)器130加載不同數(shù)據(jù)操作數(shù)。
[0036]數(shù)字信號(hào)處理器100可因此使用其存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)執(zhí)行不同并行操作。例如,在一次循環(huán)期間,數(shù)字信號(hào)處理器100可經(jīng)由互連網(wǎng)絡(luò)140將一個(gè)指令調(diào)度到處理元件PE1、PE2、PE3、……、PEN ;經(jīng)由互連網(wǎng)絡(luò)150和互連網(wǎng)絡(luò)160從存儲(chǔ)器(存儲(chǔ)器130、程序存儲(chǔ)器126、其它存儲(chǔ)器或其組合)加載N個(gè)數(shù)據(jù)集,處理元件PE1、PE2、PE3、……、PEN中的任何一個(gè)均具有一個(gè)數(shù)據(jù)集(在實(shí)例中,每個(gè)數(shù)據(jù)集可以包括兩個(gè)數(shù)據(jù)操作數(shù));在處理元件PE1、PE2、PE3、……、PEN中同步執(zhí)行所述一個(gè)指令;且將來(lái)自所述同步執(zhí)行的數(shù)據(jù)結(jié)果存儲(chǔ)在存儲(chǔ)器(存儲(chǔ)器130、程序存儲(chǔ)器126、其它存儲(chǔ)器或其組合)中。圖1的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)對(duì)單跨式訪(fǎng)問(wèn)、非單跨式訪(fǎng)問(wèn)和/或變址陣列訪(fǎng)問(wèn)的SMD加載提供支持,從而允許在存儲(chǔ)器130中加載連續(xù)和/或非連續(xù)數(shù)據(jù)元件。
[0037]因?yàn)榛ミB網(wǎng)絡(luò)的大小隨著處理元件的數(shù)量增加而增長(zhǎng)(在其中處理元件的數(shù)量等于存儲(chǔ)體的數(shù)量的情況下,互連網(wǎng)絡(luò)增長(zhǎng)為處理元件的數(shù)量的平方),所以互連網(wǎng)絡(luò)面積和功率預(yù)算隨著處理元件的數(shù)量增加而變得極為重要。因此,在圖1的數(shù)字信號(hào)處理器100的已描繪實(shí)施方案中,包括基于交換機(jī)的互連網(wǎng)絡(luò)150和160 (具體地說(shuō),兩個(gè)全交叉開(kāi)關(guān))的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)非常昂貴。如上所述,對(duì)于N個(gè)處理元件和η個(gè)存儲(chǔ)體,每個(gè)全交叉開(kāi)關(guān)使用N X η個(gè)交換機(jī)(且其中Ν=η,ΝΛ2個(gè)交換機(jī))。因?yàn)槿徊骈_(kāi)關(guān)是以導(dǎo)線(xiàn)為主,所以具有更多交換機(jī)的全交叉開(kāi)關(guān)造成較長(zhǎng)導(dǎo)線(xiàn)和較大面積,這造成較高通信成本、較高功耗和較低時(shí)鐘速率(換句話(huà)說(shuō),效能降低)。因此,希望存在避免需要兩個(gè)基于交換機(jī)的互連網(wǎng)絡(luò)(諸如兩個(gè)全交叉開(kāi)關(guān))并維持?jǐn)?shù)字信號(hào)處理器的效能的方式。
[0038]本公開(kāi)認(rèn)識(shí)到,通常由數(shù)字信號(hào)處理器實(shí)施的數(shù)字信號(hào)處理算法(諸如有限脈沖響應(yīng)(FIR)算法、矩陣乘法算法等)引導(dǎo)處理元件PEl、ΡΕ2、ΡΕ3、……、PEN從相同存儲(chǔ)器位置加載數(shù)據(jù)操作數(shù)。換句話(huà)說(shuō),每個(gè)處理元件均從來(lái)自相同存儲(chǔ)體的相同地址接收相同數(shù)據(jù)值(例如,從存儲(chǔ)體Ml的相同地址接收數(shù)據(jù)值)。稱(chēng)作廣播加載的這些存儲(chǔ)器加載未使用將計(jì)算陣列110連接到存儲(chǔ)器130的互連網(wǎng)絡(luò)的全容量。例如,廣播加載操作僅僅使用全交叉開(kāi)關(guān)的1/Ν。
[0039]本公開(kāi)因此提出了通過(guò)用非基于交換機(jī)的互連網(wǎng)絡(luò)(諸如基于總線(xiàn)的互連網(wǎng)絡(luò))取代基于交換機(jī)的互連網(wǎng)絡(luò)之一來(lái)修改數(shù)字信號(hào)處理器100的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)。特別地說(shuō),如下文所述,用單廣播總線(xiàn)取代全交叉開(kāi)關(guān)之一。在不同實(shí)施方式中,用非基于交換機(jī)的互連網(wǎng)絡(luò)(諸如基于總線(xiàn)的互連網(wǎng)絡(luò))取代每個(gè)基于交換機(jī)的互連網(wǎng)絡(luò),在非基于交換機(jī)的互連網(wǎng)絡(luò)中,可經(jīng)由如下文所述的廣播加載實(shí)現(xiàn)與這種互連網(wǎng)絡(luò)相關(guān)的存儲(chǔ)器加載。
[0040]圖2是根據(jù)本公開(kāi)的不同方面的數(shù)字信號(hào)處理器200的示意方框圖。為了明確起見(jiàn),簡(jiǎn)化圖2以充分理解本公開(kāi)的發(fā)明概念。圖2的實(shí)施方案在許多方面均類(lèi)似于圖1的實(shí)施方案。因此,為了明確且簡(jiǎn)單起見(jiàn),由相同參考數(shù)字認(rèn)定圖1和圖2中的類(lèi)似特征??稍跀?shù)字信號(hào)處理器200中添加額外特征,且在數(shù)字信號(hào)處理器200的其它實(shí)施方案中可取代或消除下文描述的特征中的某些。
[0041]類(lèi)似于圖1的數(shù)字信號(hào)處理器10`0,基于交換機(jī)的互連網(wǎng)絡(luò)150互連處理元件
PE1、PE2、PE3、......、ΡΕΝ 與存儲(chǔ)體 M1、M2、M3、......、Μη,使得處理元件 ΡΕ1、ΡΕ2、ΡΕ3、......、
PEN中的任何一個(gè)均可與存儲(chǔ)體Ml、M2、M3、……、Mn中的任何一個(gè)進(jìn)行通信(或訪(fǎng)問(wèn)存儲(chǔ)體M1、M2、M3、……、Mn中的任何一個(gè))。與圖1的數(shù)字信號(hào)處理器100相比,圖2的數(shù)字信號(hào)處理器200用非基于交換機(jī)的互連網(wǎng)絡(luò)260 (諸如基于總線(xiàn)的互連網(wǎng)絡(luò))取代基于交換機(jī)的互連網(wǎng)絡(luò)160。非基于交換機(jī)的互連網(wǎng)絡(luò)260也互連處理元件PE1、PE2、PE3、……、PEN
與存儲(chǔ)體Ml、M2、M3、......、Mn,使得處理元件PEl、PE2、PE3、......、PEN中的任何一個(gè)均可
與存儲(chǔ)體Ml、M2、M3、......、Mn中的任何一個(gè)進(jìn)行通信(或訪(fǎng)問(wèn)存儲(chǔ)體Ml、M2、M3、......、Mn
中的任何一個(gè))。應(yīng)注意,基于交換機(jī)的互連網(wǎng)絡(luò)150和非基于交換機(jī)的互連網(wǎng)絡(luò)260可經(jīng)設(shè)計(jì)使得其均可訪(fǎng)問(wèn)存儲(chǔ)體M1、M2、M3、……、Mn中的任何一個(gè),使得在數(shù)字信號(hào)處理器200的操作期間并未限制可將向量映射到何處。
[0042]在實(shí)例中,非基于交換機(jī)的互連網(wǎng)絡(luò)260是單廣播總線(xiàn)。圖4是示出了可實(shí)施為根據(jù)本公開(kāi)的不同方面的非基于交換機(jī)的互連網(wǎng)絡(luò)260的示例性廣播總線(xiàn)460的示意方框圖。廣播總線(xiàn)460沒(méi)有交換機(jī)。在實(shí)例中,廣播總線(xiàn)460是一根32位、一根64位廣播總線(xiàn)或一根128位廣播總線(xiàn),其將數(shù)據(jù)從存儲(chǔ)器130的存儲(chǔ)體M1、M2、M3、……、Mn饋送到計(jì)算陣列130的處理元件PEl、PE2、PE3、……、PEN?;蛘?,廣播總線(xiàn)460取決于數(shù)字信號(hào)處理器200的數(shù)據(jù)大小傳送要求而具有另一大小。為了明確起見(jiàn),簡(jiǎn)化圖4以充分理解本公開(kāi)的發(fā)明概念??稍趶V播總線(xiàn)460中添加額外特征,且在廣播總線(xiàn)460的其它實(shí)施方案中可取代或消除特征中的某些。
[0043]非基于交換機(jī)的互連網(wǎng)絡(luò)260利于廣播加載,其中處理元件PE1、PE2、PE3、……、PEN中的至少某些從存儲(chǔ)器130接收相同數(shù)據(jù)操作數(shù)。在實(shí)例中,非基于交換機(jī)的互連網(wǎng)絡(luò)260利于廣播加載,其中每個(gè)處理元件PE1、PE2、PE3、……、PEN均從存儲(chǔ)器130接收相同數(shù)據(jù)操作數(shù)。因此,在圖2的數(shù)字信號(hào)處理器200的操作中,在一次循環(huán)期間,互連網(wǎng)絡(luò)150利于SIMD加載,其中處理元件PE1、PE2、PE3、……、PEN中的至少某些被引導(dǎo)來(lái)從存儲(chǔ)器130加載不同數(shù)據(jù)操作數(shù);且互連網(wǎng)絡(luò)260利于廣播存儲(chǔ)器加載,其中處理元件PE1、PE2、PE3、……、PEN中的至少某些被引導(dǎo)來(lái)從存儲(chǔ)器130加載相同數(shù)據(jù)操作數(shù)(換句話(huà)說(shuō),處理元件從相同存儲(chǔ)體中的相同地址加載相同數(shù)據(jù)值)。在實(shí)例中,在一次循環(huán)期間,互連網(wǎng)絡(luò)150利于SIMD加載,其中每個(gè)處理元件PEl、PE2、PE3、……、PEN被引導(dǎo)來(lái)從存儲(chǔ)器130加載不同數(shù)據(jù)操作數(shù);且互連網(wǎng)絡(luò)260利于廣播存儲(chǔ)器加載,其中每個(gè)處理元件PE1、PE2、PE3、……、PEN被引導(dǎo)來(lái)從存儲(chǔ)器130加載相同數(shù)據(jù)操作數(shù)(換句話(huà)說(shuō),每個(gè)處理元件從相同存儲(chǔ)體中的相同地址加載相同數(shù)據(jù)值)。
[0044]通過(guò) 實(shí)施圖2的存儲(chǔ)器互連體系結(jié)構(gòu)(尤其是全交叉開(kāi)關(guān)和廣播總線(xiàn)),大幅減小處理器的面積和功率要求并維持?jǐn)?shù)字信號(hào)處理應(yīng)用的關(guān)鍵算法的效能。例如,已修改的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)在計(jì)算資源使用方面維持近似100%效率,并滿(mǎn)足大部分?jǐn)?shù)字信號(hào)處理算法的帶寬要求。應(yīng)注意,使用數(shù)字信號(hào)處理器200的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)(其中基于交換機(jī)的互連網(wǎng)絡(luò)150利于SIMD加載且非基于交換機(jī)的互連網(wǎng)絡(luò)160利于廣播加載),必需兩次SMD加載的數(shù)字信號(hào)處理算法(諸如點(diǎn)積算法)將使用兩次循環(huán)以對(duì)點(diǎn)積操作加載數(shù)據(jù)操作數(shù)。特別地說(shuō),在第一次循環(huán)期間,將經(jīng)由互連網(wǎng)絡(luò)150將第一數(shù)據(jù)操作數(shù)從存儲(chǔ)器130傳送到處理元件PEl、PE2、PE3、……、PEN中的至少某些(在實(shí)例中,每個(gè)處理元件PE1、PE2、PE3、……、PEN),且然后在第二次循環(huán)期間,將經(jīng)由互連網(wǎng)絡(luò)150將第二數(shù)據(jù)操作數(shù)從存儲(chǔ)器130傳送到處理元件PEl、PE2、PE3、……、PEN中的至少某些(在實(shí)例中,每個(gè)處理元件PE1、PE2、PE3、……、PEN)。雖然這樣的算法由于必需兩次循環(huán)而可能減緩處理時(shí)間,但是由數(shù)字信號(hào)處理器200的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)造成的面積、功率和成本節(jié)省平衡了這些影響。不同實(shí)施方案可以具有不同優(yōu)點(diǎn),且任何實(shí)施方案均無(wú)需任何特別的優(yōu)點(diǎn)。
[0045]數(shù)字信號(hào)處理器200可單獨(dú)使用其硬件(系統(tǒng)體系結(jié)構(gòu))來(lái)檢測(cè)廣播操作,使得數(shù)字信號(hào)處理器的硬件檢測(cè)何時(shí)使用廣播總線(xiàn)260從存儲(chǔ)器130進(jìn)行廣播加載。在其中數(shù)字信號(hào)處理器200的硬件檢測(cè)到廣播操作的實(shí)施方式中,由數(shù)字信號(hào)處理器200的編譯器生成的內(nèi)循環(huán)代碼可呈現(xiàn)如下:
[0046]loop_start:V2+=V0*V1||Vl=[Al+=8]||VO=[A2+=A3];
[0047]if nlcOe, jump loop_start V6+=v7*v8 v7=[A4+ — 4]| v8=[A5+=A3];
[0048]這個(gè)序列不包括廣播指令。在某些實(shí)施方式中,可用廣播指令(其可以依賴(lài)于體系結(jié)構(gòu))編程數(shù)字信號(hào)處理器200,使得數(shù)字信號(hào)處理器200知道何時(shí)使用廣播總線(xiàn)260從存儲(chǔ)器130進(jìn)行廣播加載。例如,下文使用C/C++編程語(yǔ)言提供矩陣乘法器算法的示例性代碼,其中具有矩陣大小rl X cl的矩陣A (matA)乘以具有矩陣大小clXc2的矩陣B (matB)以確定具有矩陣大小rl X c2的積矩陣(matC)。
[0049]

void sp_mat_mul(const float *matA,

int 11,

int c I


float *matB,


int c2,
[0050]

float *matC) {
for (int i = 0; i < rl; ++i) {

for(int j = PE; j<c2; j+=NPE){

float mr = 0;

for (int k = 0; k < cl; ++k) {

float a = matA[.1 * cl + k];

float b = matB[j + k * c2]);

mr = += a * b;


}

matC[i z Cl + j]) = mr;

}

}
}[0051]在矩陣乘法器算法中,示例性代碼規(guī)定每個(gè)處理元件(PE)的j索引不同(for(intj=PE; j〈c2; j+=NPE))且每個(gè)處理元件的k索引相同(for (int k=0; k〈cl;++k))。在不同實(shí)施方式中,廣播指令可簡(jiǎn)化數(shù)字信號(hào)處理器200的體系結(jié)構(gòu)。
[0052]圖5是可由根據(jù)本公開(kāi)的不同方面的處理器執(zhí)行的方法500的流程圖。例如,方法500可由具有包括基于交換機(jī)互連網(wǎng)絡(luò)(例如,交叉開(kāi)關(guān))和非基于交換機(jī)互連網(wǎng)絡(luò)(例如,總線(xiàn))的存儲(chǔ)器互連體系結(jié)構(gòu)的數(shù)字信號(hào)處理器200來(lái)執(zhí)行。方法500開(kāi)始于方框510,其中處理器將指令集發(fā)布到處理器的處理元件。例如,如上所述,數(shù)字信號(hào)處理器200將指令集(諸如并行存儲(chǔ)器加載指令)發(fā)布到處理元件PE1、PE2、PE3、……、PEN。在方框520,經(jīng)由基于交換機(jī)的互連網(wǎng)絡(luò)將第一數(shù)據(jù)操作數(shù)傳送到處理元件中的至少某些且經(jīng)由非基于交換機(jī)的互連網(wǎng)絡(luò)將第二數(shù)據(jù)操作數(shù)傳送到處理元件中的至少某些。在實(shí)例中,經(jīng)由SMD加載傳送第一數(shù)據(jù)操作數(shù),其中每個(gè)處理元件接收(或訪(fǎng)問(wèn))不同數(shù)據(jù)操作數(shù),且經(jīng)由廣播加載傳送第二數(shù)據(jù)操作數(shù),其中每個(gè)處理元件接收(或訪(fǎng)問(wèn))相同數(shù)據(jù)操作數(shù)。例如,如上所述,經(jīng)由互連網(wǎng)絡(luò)150將第一數(shù)據(jù)操作數(shù)從存儲(chǔ)器130傳送到每個(gè)處理元件PE1、PE2、PE3、……、PEN,且經(jīng)由廣播總線(xiàn)260將第二數(shù)據(jù)操作數(shù)從存儲(chǔ)器130傳送到每個(gè)處理元件PE1、PE2、PE3、……、PEN。在方框530,處理元件可使用第一數(shù)據(jù)操作數(shù)和第二數(shù)據(jù)操作數(shù)執(zhí)行操作。例如,如上所述,處理元件PE1、PE2、PE3、……、PEN使用其各自第一數(shù)據(jù)操作數(shù)和第二數(shù)據(jù)操作數(shù)以執(zhí)行數(shù)字信號(hào)處理算法(諸如矩陣乘法器算法或fir響應(yīng)濾波器操作)??稍诜椒?00之前、期間和之后提供額外步驟,且方法500的其它實(shí)施方案可取代或消除已描述的步驟中的某些。
[0053]本文中已公開(kāi)的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)有利于可由數(shù)字信號(hào)處理器200實(shí)施的廣泛的算法,尤其是可獲利于同步SIMD加載和廣播加載的任何算法(諸如矩陣乘法器算法或fir響應(yīng)濾波器操作)。圖6是由根據(jù)本公開(kāi)的不同方面的數(shù)字信號(hào)處理器(諸如圖2的數(shù)字信號(hào)處理器)實(shí)施的示例性矩陣乘法器算法的示意圖。可使用上文描述中提供的示例性代碼實(shí)施矩陣乘法器算法,其中具有矩陣大小rl X Cl的矩陣A(matA)乘以具有矩陣大小clXc2的矩陣B (matB)以確定具有矩陣大小rlXc2的積矩陣(matC)。在圖6中,matA是由4X4輸入矩陣A (其中rl=l,cl=4)表示,matB是由4X4輸入矩陣B (其中c2=4)表示,且matC是由4X4輸出矩陣C表示。在本文中已公開(kāi)的運(yùn)行實(shí)例中,其中數(shù)字信號(hào)處理器200包括四個(gè)處理元件(N=4),圖6示意地示出了輸出矩陣C的第一行的計(jì)算。例如,在第一次傳遞中(諸如在內(nèi)循環(huán)的第一次迭代中),數(shù)字信號(hào)處理器200實(shí)施廣播加載以經(jīng)由互連網(wǎng)絡(luò)260將輸入矩陣A的元素aTO傳送到處理元件PE1、PE2、PE3和PE4,且還實(shí)施SMD加載以經(jīng)由互連網(wǎng)絡(luò)150將輸入矩陣B的元素和bQ3分別傳送到處理元件PE1、PE2、PE3和PE4。然后,處理元件PE1、PE2、PE3和PE4分別使矩陣A的相同元素aQ(l乘以輸入矩陣B的各自元素b, b01, b02和bw繼續(xù)進(jìn)行處理,在第二次傳遞中(諸如在內(nèi)循環(huán)的第二次迭代中),數(shù)字信號(hào)處理器200實(shí)施廣播加載以經(jīng)由互連網(wǎng)絡(luò)260將輸入矩陣A的元素aQ1傳送到處理元件PE1、PE2、PE3和PE4,且還實(shí)施SMD加載以經(jīng)由互連網(wǎng)絡(luò)150將輸入矩陣B的元素 b1(l、bn、b12和b13分別傳送到處理元件PE1、PE2、PE3和PE4。然后,處理元件PE1、PE2、PE3和PE4分別使矩陣A的相同元素aQ1乘以輸入矩陣B的各自元素b1(l、bn、b12和b13。類(lèi)似地,在第三次傳遞中(諸如在內(nèi)循環(huán)的第三次迭代中),數(shù)字信號(hào)處理器200實(shí)施廣播加載以經(jīng)由互連網(wǎng)絡(luò)260將輸入矩陣A的元素aQ2傳送到處理元件PE1、PE2、PE3和PE4,且還實(shí)施SMD加載以經(jīng)由互連網(wǎng)絡(luò)150將輸入矩陣B的元素b2(l、b21、b22和b23分別傳送到處理元件PE1、PE2、PE3和PE4 ;且處理元件PE1、PE2、PE3和PE4分別使矩陣A的相同元素知乘以輸入矩陣B的各自元素b2(l、b21、b22和b23。再次類(lèi)似地,在第四次傳遞中(諸如在內(nèi)循環(huán)的第四次迭代中),數(shù)字信號(hào)處理器200實(shí)施廣播加載以經(jīng)由互連網(wǎng)絡(luò)260將輸入矩陣A的元素aQ3傳送到處理元件PE1、PE2、PE3和PE4,且還實(shí)施SMD加載以經(jīng)由互連網(wǎng)絡(luò)150將輸入矩陣B的元素b3Q、b31、b32和b33分別傳送到處理元件PE1、PE2、PE3和PE4 ;且處理元件PE1、PE2、PE3和PE4分別使矩陣A的相同元素aQ3乘以輸入矩陣B的各自元素匕30、匕31、b32 和 b33。
[0054]每當(dāng)內(nèi)循環(huán)進(jìn)行傳遞(迭代)時(shí),在每個(gè)乘法操作后,處理元件PEl、PE2、PE3和PE4通過(guò)將其各自乘積與來(lái)自先前迭代的各自值相加(乘法相加值)執(zhí)行加法操作,其中相加的結(jié)果變量在進(jìn)行第一次傳遞(迭代)時(shí)初始化為零。例如,在進(jìn)行第一次傳遞時(shí),處理元件PEl將乘法操作的積與零相加;在進(jìn)行第二次傳遞時(shí),處理元件PEl將乘法操作的積與PEl的第一次傳遞進(jìn)行的乘法加法操作的值相加;在進(jìn)行第三次傳遞時(shí),處理元件PEl將乘法操作的積與PEl的第二次傳遞進(jìn)行的乘法加法操作的值相加;且在進(jìn)行第四次傳遞時(shí),處理元件PEl將乘法操作的積與PEl的第三次傳遞進(jìn)行的乘法加法操作的值相加;且以此類(lèi)推,以確定輸出矩陣C的元素Ctltlt5由其它處理元件PE2、PE3和PE4執(zhí)行類(lèi)似乘法加法操作以分別確定輸出矩陣C的元素Ctll、輸出矩陣C的元素Ctl2和輸出矩陣C的元素C(l3。繼續(xù)使用同步廣播和SMD加載對(duì)輸入矩陣A和輸入矩陣B的元素進(jìn)行這種處理,以確定輸出矩陣C的剩余元素。矩陣乘法器算法因此極大地獲利于數(shù)字信號(hào)處理器200的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)。
[0055]雖然本公開(kāi)參考數(shù)字信號(hào)處理器描述了存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu),但是本公開(kāi)設(shè)想本文中描述用于可執(zhí)行并行操作的任何處理器(包括微處理器、微控制器、通用計(jì)算機(jī)或可執(zhí)行并行操作的任何其它處理器)的存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)。本文中概括的規(guī)范、尺寸和關(guān)系(例如,處理元件和存儲(chǔ)體的數(shù)量、邏輯操作、加載值等)僅僅是為了實(shí)例和教學(xué)的目的而提供。這些中的每個(gè)可以在不違背本公開(kāi)的精神或隨附權(quán)利要求的范圍的情況下而大幅改變。所述規(guī)范僅僅適用于非限制實(shí)例,且因此其應(yīng)被解釋為僅僅適用于非限制實(shí)例。在前文描述中,已參考特定處理器配置描述了示例性實(shí)施方案。在不違背隨附權(quán)利要求的范圍的情況下可以對(duì)這些實(shí)施方案作出不同修改和改變。所述描述和附圖因此被視為說(shuō)明性意義而非限制性意義。
[0056]參考前述附圖描述的操作和步驟僅僅示出了可以分別由圖1和圖2的數(shù)字信號(hào)處理器100和數(shù)字信號(hào)處理器200執(zhí)行或在其內(nèi)執(zhí)行的可能案例中的某些。在適當(dāng)情況下可以刪除或取消這些操作中的某些,或在不違背已論述概念的范圍的情況下可以大幅修改或改變這些步驟。此外,可以大幅更改這些操作的時(shí)序且這些操作仍實(shí)現(xiàn)本公開(kāi)中教學(xué)的結(jié)果。前述操作流程是為了實(shí)例和論述的目的而提供。所述系統(tǒng)提供了實(shí)質(zhì)性的靈活性:在不違背已論述概念的教學(xué)的情況下可以提供任何適當(dāng)配置、時(shí)間順序、構(gòu)造和時(shí)序機(jī)制。
[0057]在一個(gè)示例性實(shí)施方案中,圖1和圖2的數(shù)字信號(hào)處理器100和數(shù)字信號(hào)處理器200分別耦接到相關(guān)電子裝置的母板。所述母板可能是可固定電子裝置的內(nèi)部電子系統(tǒng)的不同組件且還對(duì)其它外圍裝置提供連接器的通用電路板。更具體地說(shuō),所述母板可提供可讓系統(tǒng)的其它組件進(jìn)行通信的電連接。任何適當(dāng)?shù)奶幚砥?包括數(shù)字信號(hào)處理器、微處理器、支持芯片組等)、存儲(chǔ)器元件等可基于特定構(gòu)造需要、處理要求、計(jì)算機(jī)設(shè)計(jì)等而適當(dāng)?shù)剡B接到所述母板。諸如外部存儲(chǔ)裝置、用于視頻顯示的控制器和外圍裝置的其它組件可以經(jīng)由電纜作為插件附接到所述母板,或集成到其自身的母板中。在另一示例性實(shí)施方案中,圖1和圖2的數(shù)字信號(hào)處理器100/數(shù)字信號(hào)處理器200分別可以嵌入在獨(dú)立模塊(例如,具有被配置來(lái)執(zhí)行特定應(yīng)用程序或功能的相關(guān)組件的裝置)中或作為插件模塊集成到電子裝置的專(zhuān)用硬件中。
[0058]注意本公開(kāi)的特定實(shí)施方案可以隨意地包括芯片上系統(tǒng)(S0C)、中央處理單元(CPU)封裝。SOC表示將計(jì)算機(jī)或其它電子系統(tǒng)的組件集成到一個(gè)芯片中的集成電路(1C)。其可以包括數(shù)字、模擬、混合信號(hào)且通常包括射頻功能:其全部可以被提供在一個(gè)芯片基板上。其它實(shí)施方案可以包括多芯片模塊(MCM),其中多個(gè)芯片位于一個(gè)電子封裝內(nèi)且被配置來(lái)通過(guò)電子封裝相互緊密交互。在各個(gè)其它實(shí)施方案中,數(shù)字信號(hào)處理功能可以實(shí)施于專(zhuān)用集成電路(ASIC)、現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)和其它半導(dǎo)體芯片中的一個(gè)或多個(gè)硅心中。
[0059]在示例性實(shí)施方式中,本文中概括的處理活動(dòng)的至少某些部分可以實(shí)施于(例如)控制單元120中的軟件中。在某些實(shí)施方案中,這些特征中的一個(gè)或多個(gè)可以實(shí)施于提供在圖1至圖4的元件外部的硬件中或可以按任何適當(dāng)方式合并以實(shí)現(xiàn)所希望的功能。不同組件可以包括可合并以實(shí)現(xiàn)如本文中概括的操作的軟件(或往復(fù)式軟件)。在另外其它實(shí)施方案中,這些元件可以包括任何適當(dāng)?shù)乃惴?、硬件、軟件、組件、模塊、接口或利于其操作的物體。
[0060]此外,本文中分別在圖1和圖2描述的數(shù)字信號(hào)處理器100和數(shù)字信號(hào)處理器200(和/或其相關(guān)結(jié)構(gòu))還可以包括用于在網(wǎng)絡(luò)環(huán)境中接收、傳輸和/或以其它方式傳達(dá)數(shù)據(jù)或信息的適當(dāng)接口。此外,可以移除或以其它方式合并與已描述的處理器相關(guān)的組件中的某些。一般意義上,附圖中描繪的配置在其表示上可能更具邏輯性,而物理體系結(jié)構(gòu)則可以包括這些元件的不同排列、組合和/或混合。必須注意,可使用無(wú)數(shù)種可能的設(shè)計(jì)構(gòu)造以實(shí)現(xiàn)本文中概括的操作目標(biāo)。因此,關(guān)聯(lián)的基礎(chǔ)設(shè)施具有大量替代配置、設(shè)計(jì)選擇、裝置可能性、硬件構(gòu)造、軟件實(shí)施方式、設(shè)備選項(xiàng)等。
[0061]在示例性實(shí)施方案中的某些中,一個(gè)或多個(gè)存儲(chǔ)器元件(例如,存儲(chǔ)器130、程序存儲(chǔ)器126等)可存儲(chǔ)用于本文中描述的操作的數(shù)據(jù)。這包括能夠?qū)⒅噶?例如,軟件、邏輯、代碼等)存儲(chǔ)在非暫時(shí)性介質(zhì)中使得所述指令被執(zhí)行來(lái)實(shí)行本文中描述的活動(dòng)的存儲(chǔ)器元件。
[0062]任何適當(dāng)處理器組件可執(zhí)行與數(shù)據(jù)相關(guān)的任何類(lèi)型的指令以實(shí)現(xiàn)本文中詳述的操作。在一個(gè)實(shí)施方案中,圖1和圖2的數(shù)字信號(hào)處理器100和數(shù)字信號(hào)處理器200分別可將元件或物件(例如,數(shù)據(jù))從一種狀態(tài)或狀況變換成另一種狀態(tài)或狀況。在另一實(shí)例中,本文中概括的活動(dòng)可以使用固定邏輯或可編程邏輯(例如,由處理器執(zhí)行的軟件和/或計(jì)算機(jī)指令)實(shí)施,且本文中認(rèn)定的元件可能是某種類(lèi)型的可編程處理器、可編程數(shù)字邏輯(例如,現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)、可抹除可編程只讀存儲(chǔ)器(EPR0M)、電可抹除可編程只讀存儲(chǔ)器(EEPR0M))、包括數(shù)字邏輯、軟件、代碼、電子指令、閃存、光盤(pán)、⑶-R0M、DVD ROM、磁卡或光卡、適用于存儲(chǔ)電子指令的其它類(lèi)型的機(jī)器可讀介質(zhì)的ASIC,或其任何適當(dāng)組合。在操作中,圖1和圖2的數(shù)字信號(hào)處理器100和數(shù)字信號(hào)處理器200分別可以將信息保存在任何適當(dāng)類(lèi)型的非暫時(shí)性存儲(chǔ)介質(zhì)(例如,隨機(jī)訪(fǎng)問(wèn)存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)、可抹除可編程只讀存儲(chǔ)器(EPROM)、電可抹除可編程ROM (EEPROM)等)、軟件、硬件或任何其它適當(dāng)組件、裝置、元件中或在適當(dāng)情況下且基于特定需要保存在物體中。此外,正被追蹤、發(fā)送、接收或存儲(chǔ)在數(shù)字信號(hào)處理器100和數(shù)字信號(hào)處理器200中的信息可基于特定需要和實(shí)施方式而被提供在任何數(shù)據(jù)庫(kù)、寄存器、表格、高速緩存、隊(duì)列、控制清單或存儲(chǔ)結(jié)構(gòu)中,其全部以任何適當(dāng)時(shí)間表加以引用。本文中論述的任何存儲(chǔ)器項(xiàng)應(yīng)被解釋為包括在廣義的術(shù)語(yǔ)“存儲(chǔ)器”內(nèi)。類(lèi)似地,本文中描述的可能處理元件、模塊和機(jī)器中的任何一個(gè)應(yīng)被解釋為包括在廣義的術(shù)語(yǔ)“處理器”內(nèi)。
[0063]實(shí)施本文中描述的功能的所有或部分的計(jì)算機(jī)程序邏輯是以各種形式(包括(但絕不限于)源代碼形式、計(jì)算機(jī)可執(zhí)行形式和不同中間形式(例如,由匯編器、編譯器、鏈接程序或定位程序產(chǎn)生的形式))具體實(shí)施。在實(shí)例中,源代碼包括以不同編程語(yǔ)言(諸如目標(biāo)代碼、匯編語(yǔ)言或高級(jí)語(yǔ)言(諸如搭配不同操作系統(tǒng)或操作環(huán)境使用的公式翻譯程式語(yǔ)言、
C、C++、JAVA或HTML))實(shí)施的一系列計(jì)算機(jī)程序指令。源代碼可以定義和使用不同數(shù)據(jù)結(jié)構(gòu)和通信訊息。源代碼可以(例如,經(jīng)由解譯器)呈現(xiàn)計(jì)算機(jī)可執(zhí)行形式,或源代碼可以(例如,經(jīng)由轉(zhuǎn)譯器、匯編程序或編譯器)而轉(zhuǎn)換為計(jì)算機(jī)可執(zhí)行形式。
[0064]前文概括了多個(gè)實(shí)施方案的特征使得本領(lǐng)域一般技術(shù)人員可以更好地理解本公開(kāi)的方面。本領(lǐng)域一般技術(shù)人員應(yīng)明白,他們可以隨意地使用本公開(kāi)作為用于設(shè)計(jì)或修改用于實(shí)行相同目的和/或?qū)崿F(xiàn)本文中介紹的實(shí)施方案的相同優(yōu)點(diǎn)的其它程序和結(jié)構(gòu)的基礎(chǔ)。本領(lǐng)域一般技術(shù)人員還應(yīng)意識(shí)到這樣等效的構(gòu)造沒(méi)有違背本公開(kāi)的精神和范圍,且他們可以在不等效的構(gòu)造沒(méi)有違背本公開(kāi)的精神和范圍的情況下在本文中作出各種改變、替代和更改。
[0065]本領(lǐng)域一般技術(shù)人員可以確認(rèn)多種其它變化、替代、變動(dòng)、更改和修改,且設(shè)想本公開(kāi)包括屬于隨附權(quán)利要求的范圍內(nèi)的所有這些變化、替代、變動(dòng)、更改和修改。為了輔助美國(guó)專(zhuān)利商標(biāo)局(USPTO)且此外輔助關(guān)于本申請(qǐng)發(fā)布的任何專(zhuān)利的任何讀者解譯附屬于本申請(qǐng)的權(quán)利要求,希望 申請(qǐng)人:注意:(a)除非`特定權(quán)利要求中具體使用單詞“用于……的工具”或“用于……的步驟”,否則并非意欲隨附權(quán)利要求中的任一項(xiàng)調(diào)用35U.S.C.第112章第六(6)段,因?yàn)?5U.S.C.第112章第六(6)段的存在是關(guān)于提交日期jP(b)并非意欲通過(guò)說(shuō)明書(shū)中的任何聲明以隨附權(quán)利要求中未以其它方式反映出來(lái)的任何方式限制本公開(kāi)。
[0066]示例性實(shí)施方案的實(shí)施
[0067]一個(gè)特定示例性實(shí)施方式可以包括用于以下步驟的工具(例如,軟件、邏輯、代碼、硬件或其組合):將指令集發(fā)布到處理元件;經(jīng)由基于交換機(jī)的互聯(lián)網(wǎng)絡(luò)將第一數(shù)據(jù)操作數(shù)同步傳送到處理元件中的至少某些,且經(jīng)由非基于交換機(jī)的互聯(lián)網(wǎng)絡(luò)將第二數(shù)據(jù)操作數(shù)同步傳送到處理元件中的至少某些;和通過(guò)處理元件中的至少某些使用第一數(shù)據(jù)操作數(shù)和第二數(shù)據(jù)操作數(shù)執(zhí)行操作。不同實(shí)施方式還可以包括用于執(zhí)行廣播加載的工具,其中相同數(shù)據(jù)操作數(shù)是從存儲(chǔ)器傳送到所述至少某些處理元件中的每個(gè);且傳送第二數(shù)據(jù)操作數(shù)包括執(zhí)行單指令多數(shù)據(jù)(SMD)加載,其中不同數(shù)據(jù)操作數(shù)是從存儲(chǔ)器傳送到所述至少某些處理元件中的每個(gè)。不同實(shí)施方式可以包括執(zhí)行有限響應(yīng)濾波器操作和矩陣乘法操作之一。
【權(quán)利要求】
1.一種處理器,其包括: 計(jì)算陣列,其包括處理元件; 存儲(chǔ)器,其包括存儲(chǔ)體;和 存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu),其用于將所述處理元件中的至少某些互連到所述存儲(chǔ)體中的至少某些,其中所述存儲(chǔ)器互連網(wǎng)絡(luò)體系結(jié)構(gòu)包括: 基于交換機(jī)的互連網(wǎng)絡(luò),和 非基于交換機(jī)的互連網(wǎng)絡(luò), 其中所述處理器被配置來(lái)經(jīng)由所述基于交換機(jī)的互連網(wǎng)絡(luò)將第一數(shù)據(jù)操作數(shù)同步加載到所述處理元件中的至少某些,且經(jīng)由所述非基于交換機(jī)的互連網(wǎng)絡(luò)將第二數(shù)據(jù)操作數(shù)同步加載到所述處理元件中的至少某些。
2.根據(jù)權(quán)利要求1所述的處理器,其中所述基于交換機(jī)的互連網(wǎng)絡(luò)是交叉開(kāi)關(guān)網(wǎng)絡(luò)。
3.根據(jù)權(quán)利要求2所述的處理器,其中 所述計(jì)算陣列包括N個(gè)處理元件; 所述存儲(chǔ)器包括η個(gè)存儲(chǔ)體;且 所述交叉開(kāi)關(guān)網(wǎng)絡(luò)包括NXn個(gè)交 換機(jī)。
4.根據(jù)權(quán)利要求2所述的處理器,其中所述非基于交換機(jī)的互連網(wǎng)絡(luò)是廣播總線(xiàn)。
5.根據(jù)權(quán)利要求4所述的處理器,其中所述廣播總線(xiàn)是32位總線(xiàn)和64位總線(xiàn)中選定的總線(xiàn)。
6.根據(jù)權(quán)利要求4所述的處理器,其中所述廣播總線(xiàn)是單廣播總線(xiàn)。
7.根據(jù)權(quán)利要求1所述的處理器,其中所述第一數(shù)據(jù)操作數(shù)是用于每個(gè)處理元件的不同數(shù)據(jù)操作數(shù)且所述第二數(shù)據(jù)操作數(shù)是用于每個(gè)處理元件的相同數(shù)據(jù)操作數(shù)。
8.根據(jù)權(quán)利要求1所述的處理器,其中每個(gè)處理元件包括計(jì)算單元和寄存器堆。
9.根據(jù)權(quán)利要求2所述的處理器,其中η=ΝΧ由所述處理器執(zhí)行的同步數(shù)據(jù)操作數(shù)加載的數(shù)量。
10.根據(jù)權(quán)利要求1所述的處理器,其中所述處理器被配置來(lái)經(jīng)由所述基于交換機(jī)的互連網(wǎng)絡(luò)將所述第一數(shù)據(jù)操作數(shù)同步加載到每個(gè)處理元件,且經(jīng)由所述非基于交換機(jī)的互連網(wǎng)絡(luò)將第二數(shù)據(jù)操作數(shù)同步加載到每個(gè)處理元件。
11.一種處理器,其包括: 計(jì)算陣列,其包括N個(gè)處理元件; 存儲(chǔ)器,其包括η個(gè)存儲(chǔ)體; 交叉開(kāi)關(guān),其用于互連所述計(jì)算陣列與所述存儲(chǔ)器,所述交叉開(kāi)關(guān)被配置來(lái)將數(shù)據(jù)從所述η個(gè)存儲(chǔ)體傳送到所述N個(gè)處理元件; 總線(xiàn),其用于互連所述計(jì)算陣列與所述存儲(chǔ)器,所述總線(xiàn)被配置來(lái)將數(shù)據(jù)從所述η個(gè)存儲(chǔ)體傳送到所述N個(gè)處理元件;以及 其中所述交叉開(kāi)關(guān)和所述總線(xiàn)被配置來(lái)將所述數(shù)據(jù)從所述η個(gè)存儲(chǔ)體同步傳送到所述N個(gè)處理元件。
12.根據(jù)權(quán)利要求11所述的處理器,其中所述交叉開(kāi)關(guān)具有NXn個(gè)交換機(jī)。
13.根據(jù)權(quán)利要求12所述的處理器,其中所述總線(xiàn)沒(méi)有交換機(jī)。
14.根據(jù)權(quán)利要求11所述的處理器,其中所述交叉開(kāi)關(guān)被配置來(lái)將不同數(shù)據(jù)操作數(shù)傳送到所述N個(gè)處理元件中的每個(gè),且所述總線(xiàn)被配置來(lái)將相同數(shù)據(jù)操作數(shù)從所述存儲(chǔ)器傳送到所述N個(gè)處理元件。
15.根據(jù)權(quán)利要求11所述的處理器,其中所述N個(gè)處理元件中的至少某些包括計(jì)算單元和寄存器堆。
16.根據(jù)權(quán)利要求11所述的處理器,其中n=NX由所述處理器執(zhí)行的同步數(shù)據(jù)傳送的數(shù)量。
17.一種要由處理器執(zhí)行的方法,所述處理器包括:計(jì)算陣列,其包括處理元件;和存儲(chǔ)器,其包括存儲(chǔ)體,所述方法包括: 將指令集發(fā)布到所述處理元件; 經(jīng)由基于交換機(jī)的互聯(lián)網(wǎng)絡(luò)將第一數(shù)據(jù)操作數(shù)同步傳送到所述處理元件中的至少某些,且經(jīng)由非基于交換機(jī)的互聯(lián)網(wǎng)絡(luò)將第二數(shù)據(jù)操作數(shù)同步傳送到所述處理元件中的至少某些;和 通過(guò)所述處理元件中的至少某些使用所述第一數(shù)據(jù)操作數(shù)和所述第二數(shù)據(jù)操作數(shù)執(zhí)行操作。
18.根據(jù)權(quán)利要求17所 述的方法,其中: 傳送所述第一數(shù)據(jù)操作數(shù)包括執(zhí)行廣播加載,其中相同數(shù)據(jù)操作數(shù)是從所述存儲(chǔ)器傳送到每個(gè)處理元件;以及 傳送所述第二數(shù)據(jù)操作數(shù)包括執(zhí)行單指令多數(shù)據(jù)(SIMD)加載,其中不同數(shù)據(jù)操作數(shù)是從所述存儲(chǔ)器傳送到每個(gè)處理元件。
19.根據(jù)權(quán)利要求17所述的方法,其中: 所述基于交換機(jī)的互聯(lián)網(wǎng)絡(luò)是交叉開(kāi)關(guān);以及 所述非基于交換機(jī)的互聯(lián)網(wǎng)絡(luò)是總線(xiàn)。
20.根據(jù)權(quán)利要求17所述的方法,其中執(zhí)行所述操作包括執(zhí)行有限響應(yīng)濾波器操作和矩陣乘法操作之一。
【文檔編號(hào)】G06F15/80GK103778100SQ201310501553
【公開(kāi)日】2014年5月7日 申請(qǐng)日期:2013年10月23日 優(yōu)先權(quán)日:2012年10月23日
【發(fā)明者】K·桑海, B·勒納, M·G·佩爾金斯, J·L·瑞德福特 申請(qǐng)人:亞德諾半導(dǎo)體技術(shù)公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
柞水县| 延吉市| 淮滨县| 义乌市| 合山市| 当涂县| 太湖县| 昭通市| 安福县| 米脂县| 涿鹿县| 九江市| 葫芦岛市| 宁南县| 卢氏县| 闵行区| 浙江省| 家居| 乌苏市| 东方市| 湖口县| 科技| 永德县| 鹰潭市| 三亚市| 涞源县| 常宁市| 晋宁县| 高清| 原阳县| 合江县| 赫章县| 馆陶县| 页游| 马龙县| 四平市| 峡江县| 鹤壁市| 铜鼓县| 梅河口市| 邵阳市|