亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種動態(tài)可重構(gòu)處理器的制作方法

文檔序號:6440641閱讀:342來源:國知局
專利名稱:一種動態(tài)可重構(gòu)處理器的制作方法
一種動態(tài)可重構(gòu)處理器技術(shù)領(lǐng)域
本申請涉及嵌入式系統(tǒng)技術(shù)領(lǐng)域,特別是涉及一種動態(tài)可重構(gòu)處理器。
技術(shù)背景
動態(tài)可重構(gòu)處理器是一種新生的處理器構(gòu)架,其較之傳統(tǒng)的單核處理器、專用芯片、現(xiàn)場可編程邏輯陣列有著顯著的優(yōu)勢,是未來電路結(jié)構(gòu)發(fā)展的一個方向。
首先,動態(tài)可重構(gòu)處理器內(nèi)往往含有多個算術(shù)邏輯單元,且數(shù)量巨大,稱之為眾核陣列。陣列內(nèi)部配以靈活度高的路由單元,實現(xiàn)算術(shù)邏輯單元之間多樣化的互聯(lián)。因此,經(jīng)路由單元連接后的眾核陣列可實現(xiàn)對數(shù)據(jù)流的高速處理,較傳統(tǒng)的單核以及少核處理器在性能上有著巨大的優(yōu)勢。同時,較固化的專用電路在靈活性上也有著巨大的優(yōu)勢。
其次,較傳統(tǒng)的靜態(tài)可重構(gòu)電路——現(xiàn)場可編程邏輯陣列而言,動態(tài)可重構(gòu)處理器有動態(tài)的特點,即在電路運行過程中可動態(tài)的切換電路的功能,而非以往靜態(tài)可重構(gòu)電路一成不變的不改變電路功能,只是在電路運行之前燒寫電路功能,對電路進行初始化。這樣做的好處在于通過時分復(fù)用的方式減少了電路的規(guī)模,原因在于之前的電路結(jié)構(gòu)的全映射現(xiàn)在變?yōu)榉謮K映射,而塊與塊之間恰好采取了動態(tài)切換的方式。
圖1中為傳統(tǒng)的動態(tài)可重構(gòu)處理器結(jié)構(gòu)示意圖,其中,可重構(gòu)陣列內(nèi)的可重構(gòu)單元用于完成數(shù)據(jù)的算術(shù)邏輯運算,路由單元主要負責(zé)完成可重構(gòu)單元間的數(shù)據(jù)連接。
在傳統(tǒng)的動態(tài)可重構(gòu)處理器內(nèi)對于數(shù)據(jù)的運算全部由可重構(gòu)單元執(zhí)行,但是可重構(gòu)陣列中不同的可重構(gòu)單元計算通路的延時不一致,部分由與、或、非組成的簡單組合邏輯、移位等簡單的運算等,計算通路的延時很短,無需占用一個節(jié)拍,因此,通過可重構(gòu)單元執(zhí)行這些簡單運算就會造成可重構(gòu)單元的浪費,降低可重構(gòu)陣列的工作效率;其次,對于消耗節(jié)拍數(shù)較長的矩陣轉(zhuǎn)置和數(shù)據(jù)拼接等數(shù)據(jù)處理操作,需要映射在可重構(gòu)單元上進行運算,這種運算占用大量的可重構(gòu)單元,但是對陣列的使用效率相對較低,同樣會造成可重構(gòu)單元的浪費。發(fā)明內(nèi)容
本申請所要解決的技術(shù)問題是提供一種動態(tài)可重構(gòu)處理器,采用可配置的計算路由單元用于單元之間的互聯(lián),提高可重構(gòu)處理器的工作效率。
為了解決上述問題,本申請公開了一種動態(tài)可重構(gòu)處理器,包括
輸入緩存器,用于緩存外部數(shù)據(jù),將數(shù)據(jù)輸出至第一計算路由單元;
第一計算路由單元,用于接收輸入緩存器的數(shù)據(jù),并對數(shù)據(jù)進行運算處理,將運算結(jié)果數(shù)據(jù)輸出至可重構(gòu)陣列;
可重構(gòu)陣列,用于對輸入數(shù)據(jù)進行運算操作,將運算結(jié)果數(shù)據(jù)輸出至第三計算路由單元,所述可重構(gòu)陣列包括
多個可重構(gòu)單元,用于完成對輸入數(shù)據(jù)的運算操作;
多個第二計算路由單元,用于完成可重構(gòu)單元間的數(shù)據(jù)連接,并對數(shù)據(jù)進行運算處理;
第三計算路由單元,用于接收可重構(gòu)陣列的輸出數(shù)據(jù),對數(shù)據(jù)進行運算處理;
輸出緩存器,用于接收第三計算路由單元輸出的結(jié)果數(shù)據(jù),并將數(shù)據(jù)輸出至外部裝置。
優(yōu)選的,所述可重構(gòu)單元按m行X η列的形式排列,每個第二計算路由單元對應(yīng)一行可重構(gòu)單元,其中,m和η為自然數(shù)。
優(yōu)選的,所述可重構(gòu)單元的輸入數(shù)據(jù)來自第一計算路由單元,或者來自上一行可重構(gòu)單元的運算結(jié)果,或者來自上一行的第二計算路由單元。
優(yōu)選的,所述第一計算路由單元對數(shù)據(jù)進行的運算處理包括數(shù)據(jù)拼接和/或矩陣轉(zhuǎn)置;
所述第三計算路由單元對數(shù)據(jù)進行的運算處理包括數(shù)據(jù)拼接和/或矩陣轉(zhuǎn)置。
優(yōu)選的,所述第二計算路由單元對數(shù)據(jù)進行的運算處理包括邏輯運算和/或位運算。
優(yōu)選的,所述處理器還包括
常數(shù)寄存器,用于存儲可重構(gòu)陣列進行運算所需的常數(shù),將所述常數(shù)輸出至第一計算路由單元。
優(yōu)選的,所述可重構(gòu)單元包括
運算單元,用于對數(shù)據(jù)進行算術(shù)或者邏輯運算;
暫存單元,用于將數(shù)據(jù)寄存一拍,待需要時輸出。
優(yōu)選的,所述運算單元包括
輸入選擇器,用于選擇當(dāng)前運算所需要的操作數(shù);
算術(shù)邏輯單元,用于執(zhí)行所述操作數(shù)的算術(shù)或者邏輯運算;
輸出寄存器,用于寄存當(dāng)前運算的計算結(jié)果。
與現(xiàn)有技術(shù)相比,本申請包括以下優(yōu)點
首先,本申請將傳統(tǒng)的動態(tài)可重構(gòu)處理器中可重構(gòu)陣列內(nèi)的路由單元設(shè)計成計算路由單元,采用可配置的計算路由單元用于可重構(gòu)單元之間的互聯(lián)。計算路由單元的配置信息中不僅包含路由單元上下兩行可重構(gòu)單元中,上一行每個可重構(gòu)單元的輸出與下一行每個可重構(gòu)單元的輸入的互聯(lián)關(guān)系,還包含配置計算路由單元中簡單運算形式的信息,實現(xiàn)了將計算和互聯(lián)相結(jié)合。在可重構(gòu)陣列內(nèi)部,數(shù)據(jù)通過計算路由單元傳輸?shù)倪^程中,計算路由單元可以對數(shù)據(jù)進行簡單的運算處理,比如由與、或、非組成的簡單組合邏輯以及移位等簡單的位運算。這些簡單運算處理時間比較短,無需占用一個節(jié)拍,利用計算路由單元進行運算處理避免了可重構(gòu)單元的浪費,提高了可重構(gòu)陣列的運算效率。
其次,在可重構(gòu)陣列外部增加計算路由單元,數(shù)據(jù)經(jīng)由可重構(gòu)陣列外的計算路由單元傳輸至可重構(gòu)陣列中或者輸出至輸出緩存器中時,可以通過配置計算路由單元實現(xiàn)對外部數(shù)據(jù)的處理,例如消耗節(jié)拍數(shù)較長的數(shù)據(jù)拼接、矩陣轉(zhuǎn)置等操作,這樣避免了這些操作占用大量可重構(gòu)單元而降低運算效率。


圖1是傳統(tǒng)的動態(tài)可重構(gòu)處理器的結(jié)構(gòu)示意圖2是本申請?zhí)岢龅囊环N動態(tài)可重構(gòu)處理器的結(jié)構(gòu)示意圖3是本申請動態(tài)可重構(gòu)處理器中可重構(gòu)單元的結(jié)構(gòu)示意圖。
具體實施方式
為使本申請的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本申請作進一步詳細的說明。
參照圖2,示出了本申請一種動態(tài)可重構(gòu)處理器的結(jié)構(gòu)示意圖,包括
輸入緩存器,用于緩存外部數(shù)據(jù),將數(shù)據(jù)輸出至第一計算路由單元;
常數(shù)寄存器,用于存儲可重構(gòu)陣列進行運算所需的常數(shù),將所述常數(shù)輸出至第一計算路由單元;
第一計算路由單元,用于接收輸入緩存器的數(shù)據(jù),并對數(shù)據(jù)進行運算處理,將運算結(jié)果數(shù)據(jù)輸出至可重構(gòu)陣列;
對于一些消耗節(jié)拍數(shù)較長的矩陣轉(zhuǎn)置和數(shù)據(jù)拼接等數(shù)據(jù)處理操作,如果映射在可重構(gòu)單元中進行處理,則需要占用大量的可重構(gòu)單元,但是這些數(shù)據(jù)處理操作實質(zhì)上是大量的簡單運算組成,數(shù)據(jù)處理時間比較短,因此對可重構(gòu)單元的利用效率相對較低。
本申請在輸入緩存器、常數(shù)寄存器和可重構(gòu)陣列之間增加了第一計算路由單元。 采用此互聯(lián)結(jié)構(gòu)后,輸入可重構(gòu)陣列的外部數(shù)據(jù)需要經(jīng)過第一計算路由單元進入可重構(gòu)陣列,可以通過配置該計算路由單元實現(xiàn)對外部數(shù)據(jù)的運算處理,這些運算處理包括數(shù)據(jù)拼接或者矩陣轉(zhuǎn)置操作,也可以同時包括數(shù)據(jù)拼接和矩陣轉(zhuǎn)置兩種操作。這樣在數(shù)據(jù)傳輸?shù)倪^程中完成這些數(shù)據(jù)處理操作,避免了占用大量可重構(gòu)單元而造成的資源浪費。
可重構(gòu)陣列,用于對輸入數(shù)據(jù)進行運算操作,將運算結(jié)果數(shù)據(jù)輸出至第三計算路由單元,所述可重構(gòu)陣列包括
多個可重構(gòu)單元,用于完成對輸入數(shù)據(jù)的運算操作;可重構(gòu)單元的輸入數(shù)據(jù)可以來自第一計算路由單元,或者來自上一行可重構(gòu)單元的運算結(jié)果,或者來自上一行的第二計算路由單元。
參照圖3,示出了本申請動態(tài)可重構(gòu)處理器中可重構(gòu)單元的結(jié)構(gòu)示意圖,每個可重構(gòu)單元包括一個運算單元和一個暫存單元。運算單元可以在一個節(jié)拍內(nèi)完成算術(shù)或者邏輯運算,暫存單元只是單純的將輸入數(shù)據(jù)寄存一個節(jié)拍,待需要時將數(shù)據(jù)輸出。
(1)運算單元
每個運算單元包括2個輸入選擇器、1個算術(shù)邏輯單元和1個輸出寄存器。
每個輸入選擇器為運算單元選擇當(dāng)前運算所需要的一個操作數(shù)。操作數(shù)可以來自第一計算路由單元,也可以來自上一行運算單元的輸出寄存器或者上一行的暫存單元。
算術(shù)邏輯單元,用于執(zhí)行所述操作數(shù)的算術(shù)或者邏輯運算;
輸出寄存器用于寄存當(dāng)前運算的計算結(jié)果,計算結(jié)果可以作為下一行可重構(gòu)單元的輸入,也可以輸出到輸出緩存器進行緩存。
(2)暫存單元
暫存單元用于將輸入數(shù)據(jù)寄存一拍,然后輸出。它的輸入可以來自第一計算路由單元,也可以來自上一行運算單元的輸出寄存器或者上一行的暫存單元。它的輸出可以作為下一行可重構(gòu)單元的輸入,也可以輸出到輸出緩存器進行緩存。
可重構(gòu)陣列中還包括多個第二計算路由單元,用于完成可重構(gòu)單元間的數(shù)據(jù)連接,并對數(shù)據(jù)進行運算處理;
所述可重構(gòu)單元按m行Xn列的形式排列,每個第二計算路由單元對應(yīng)一行可重構(gòu)單元,其中,!!!和η為自然數(shù)。
對于一些簡單運算,其計算通路的延時很短,無需占用一個節(jié)拍。對于這些運算, 可以通過配置第二計算路由單元,在數(shù)據(jù)傳輸?shù)倪^程中完成對數(shù)據(jù)的運算處理,這些運算處理包括由與、或、非組成的邏輯運算或者移位等簡單的位運算,也可以同時包括邏輯運算和位運算兩種操作。
第二計算路由單元可以將來自第一計算路由單元的數(shù)據(jù)、或者來自上一行暫存單元的數(shù)據(jù)、或者來自上一行運算單元的輸出寄存器的數(shù)據(jù)按照配置信息進行運算處理,并分配給指定的可重構(gòu)單元,可重構(gòu)單元將接收到的數(shù)據(jù)傳遞到輸入選擇器或者暫存單元。
在可重構(gòu)陣列內(nèi),每一行的任意一個可重構(gòu)單元都可以通過上一行的第二計算路由單元接收上一行任意一個可重構(gòu)單元的輸出結(jié)果(包括運算結(jié)果和暫存數(shù)據(jù));第一行的任意一個可重構(gòu)單元都可以接收最后一行任意一個可重構(gòu)單元的輸出結(jié)果(包括運算結(jié)果和暫存數(shù)據(jù))。
本申請還在可重構(gòu)陣列和輸出緩存器之間增加了第三計算路由單元,用于接收可重構(gòu)陣列的輸出數(shù)據(jù),對數(shù)據(jù)進行運算處理。
第三計算路由單元和第一計算路由單元的功能相似,對于一些消耗節(jié)拍數(shù)較長的操作,不需要在可重構(gòu)單元中進行處理,將其放到第三計算路由單元進行運算處理,然后將運算結(jié)果輸出至輸出緩存器即可。這些運算處理包括數(shù)據(jù)拼接或者矩陣轉(zhuǎn)置操作,也可以同時包括數(shù)據(jù)拼接和矩陣轉(zhuǎn)置兩種操作。
輸出緩存器,用于接收第三計算路由單元輸出的結(jié)果數(shù)據(jù),并將數(shù)據(jù)輸出至外部直ο
當(dāng)然,在動態(tài)可重構(gòu)處理器中還包括許多其他單元,如外部數(shù)據(jù)讀入裝置、外部數(shù)據(jù)寫出裝置等,本申請在這里不再詳細介紹。
動態(tài)可重構(gòu)處理器中,可重構(gòu)陣列如何運轉(zhuǎn)是由配置信息決定的,可重構(gòu)陣列的配置信息包括兩部分內(nèi)容多個可重構(gòu)單元的配置信息和多個第二計算路由單元的配置信肩、ο
可重構(gòu)單元的配置信息包括輸入選擇器A的配置信息、輸入選擇器B的配置信息、算術(shù)邏輯單元的配置信息、輸出寄存器的配置信息和暫存單元的配置信息。
(a)輸入選擇器A的配置信息包括
i)是否接收操作數(shù)A ;
ii)操作數(shù)A的來源;
iii)操作數(shù)A的地址。
(b)輸入選擇器B的配置信息包括
i)是否接收操作數(shù)B ;
ii)操作數(shù)B的來源;
iii)操作數(shù)B的地址。
(c)算術(shù)邏輯單元的配置信息包括
算術(shù)邏輯單元所要執(zhí)行的操作類型,可以是算術(shù)運算,也可以是邏輯運算。
(d)輸出寄存器的配置信息包括
i)是否有計算結(jié)果輸出到輸出緩存器;
ii)計算結(jié)果輸出到輸出緩存器的具體地址。
(e)暫存單元的配置信息包括
輸入方面
i)是否接收數(shù)據(jù)輸入;
ii)輸入數(shù)據(jù)的來源;
iii)輸入數(shù)據(jù)的地址。
輸出方面
i)是否有數(shù)據(jù)輸出到輸出緩存器;
ii)數(shù)據(jù)輸出到輸出緩存器的具體地址;
iii)路由單元的配置信息。
第二計算路由單元的配置信息包括
路由單元上下兩行可重構(gòu)單元中,上一行每個可重構(gòu)單元的輸出與下一行每個可重構(gòu)單元的輸入的互聯(lián)關(guān)系;
每個第二計算路由單元中所需進行的運算的形式,包括由與、或、非組成的簡單組合邏輯運算以及移位等簡單的位運算。
同樣,對于第一計算路由單元和第三計算路由單元來說,也是通過配置信息進行運轉(zhuǎn)的。其配置信息包括第一計算路由單元和第三計算路由單元中所需進行的運算形式, 包括數(shù)據(jù)拼接、矩陣轉(zhuǎn)置等操作。
下面,通過一個具體的處理實例對本申請進行詳細介紹。
可重構(gòu)處理器需要對輸入緩存器中的一塊4行X 4列的2d數(shù)據(jù)讀出,并將其第1、 2行數(shù)據(jù)拼接成一行,第3、4行數(shù)據(jù)拼接成一行,并對這兩行數(shù)據(jù)進行求和,將結(jié)果存儲在輸出緩存器中。
若使用傳統(tǒng)的可重構(gòu)處理器,需要分4步進行操作
Si,輸入緩存器將數(shù)據(jù)輸出至可重構(gòu)陣列;
S2,配置可重構(gòu)陣列,將讀入的2d數(shù)據(jù)在動態(tài)可重構(gòu)陣列中處理拼接;
S3,再次配置可重構(gòu)陣列,對處理后的2d數(shù)據(jù)進行求和;
S4,從動態(tài)可重構(gòu)陣列中將拼接處理后的數(shù)據(jù)傳輸?shù)捷敵鼍彺嫫鬟M行保存。
若使用本發(fā)明的動態(tài)可重構(gòu)處理器的互聯(lián)結(jié)構(gòu),待處理2d數(shù)據(jù)通過第一計算路由單元傳入動態(tài)可重構(gòu)陣列,由于計算路由單元可以在數(shù)據(jù)傳輸?shù)倪^程中完成數(shù)據(jù)拼接處理,通過配置計算路由單元,即可一步實現(xiàn)單2d數(shù)據(jù)拼接操作。因此,對數(shù)據(jù)的處理過程為
Si,配置第一計算路由單元,輸入緩存器將數(shù)據(jù)輸出至第一計算路由單元,由第一計算路由單元在數(shù)據(jù)傳輸?shù)倪^程中完成數(shù)據(jù)拼接處理;
S2,配置可重構(gòu)陣列,將讀入拼接處理后的數(shù)據(jù)在動態(tài)可重構(gòu)陣列中進行求和;
S3,從動態(tài)可重構(gòu)陣列中將拼接處理后的數(shù)據(jù)經(jīng)第三計算路由單元傳輸?shù)捷敵鼍彺嫫鬟M行保存。
可見,利用計算路由單元可以在數(shù)據(jù)進入可重構(gòu)陣列之前完成對數(shù)據(jù)的拼接處理,而不用再占用可重構(gòu)單元,提高了運算效率。
同樣,對于第二計算路由單元和第三計算路由單元來說,也具有相似的效果,本申請在這里不再詳細論述。
以上對本申請所提供的一種動態(tài)可重構(gòu)處理器進行了詳細介紹,本文中應(yīng)用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本申請的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請的思想,在具體實施方式
及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本申請的限制。
權(quán)利要求
1.一種動態(tài)可重構(gòu)處理器,其特征在于,包括輸入緩存器,用于緩存外部數(shù)據(jù),將數(shù)據(jù)輸出至第一計算路由單元; 第一計算路由單元,用于接收輸入緩存器的數(shù)據(jù),并對數(shù)據(jù)進行運算處理,將運算結(jié)果數(shù)據(jù)輸出至可重構(gòu)陣列;可重構(gòu)陣列,用于對輸入數(shù)據(jù)進行運算操作,將運算結(jié)果數(shù)據(jù)輸出至第三計算路由單元,所述可重構(gòu)陣列包括多個可重構(gòu)單元,用于完成對輸入數(shù)據(jù)的運算操作;多個第二計算路由單元,用于完成可重構(gòu)單元間的數(shù)據(jù)連接,并對數(shù)據(jù)進行運算處理;第三計算路由單元,用于接收可重構(gòu)陣列的輸出數(shù)據(jù),對數(shù)據(jù)進行運算處理; 輸出緩存器,用于接收第三計算路由單元輸出的結(jié)果數(shù)據(jù),并將數(shù)據(jù)輸出至外部裝置。
2.根據(jù)權(quán)利要求1所述的處理器,其特征在于,所述可重構(gòu)單元按m行Xn列的形式排列,每個第二計算路由單元對應(yīng)一行可重構(gòu)單元,其中,m和η為自然數(shù)。
3.根據(jù)權(quán)利要求2所述的處理器,其特征在于,所述可重構(gòu)單元的輸入數(shù)據(jù)來自第一計算路由單元,或者來自上一行可重構(gòu)單元的運算結(jié)果,或者來自上一行的第二計算路由單元。
4.根據(jù)權(quán)利要求1所述的處理器,其特征在于,所述第一計算路由單元對數(shù)據(jù)進行的運算處理包括數(shù)據(jù)拼接和/或矩陣轉(zhuǎn)置; 所述第三計算路由單元對數(shù)據(jù)進行的運算處理包括數(shù)據(jù)拼接和/或矩陣轉(zhuǎn)置。
5.根據(jù)權(quán)利要求1所述的處理器,其特征在于,所述第二計算路由單元對數(shù)據(jù)進行的運算處理包括邏輯運算和/或位運算。
6.根據(jù)權(quán)利要求1所述的處理器,其特征在于,還包括常數(shù)寄存器,用于存儲可重構(gòu)陣列進行運算所需的常數(shù),將所述常數(shù)輸出至第一計算路由單元。
7.根據(jù)權(quán)利要求1所述的處理器,其特征在于,所述可重構(gòu)單元包括 運算單元,用于對數(shù)據(jù)進行算術(shù)或者邏輯運算;暫存單元,用于將數(shù)據(jù)寄存一拍,待需要時輸出。
8.根據(jù)權(quán)利要求7所述的處理器,其特征在于,所述運算單元包括 輸入選擇器,用于選擇當(dāng)前運算所需要的操作數(shù);算術(shù)邏輯單元,用于執(zhí)行所述操作數(shù)的算術(shù)或者邏輯運算; 輸出寄存器,用于寄存當(dāng)前運算的計算結(jié)果。
全文摘要
本發(fā)明提供了一種動態(tài)可重構(gòu)處理器,包括輸入緩存器,用于緩存外部數(shù)據(jù),將數(shù)據(jù)輸出至第一計算路由單元;第一計算路由單元,用于接收輸入緩存器的數(shù)據(jù),并對數(shù)據(jù)進行運算處理,將運算結(jié)果數(shù)據(jù)輸出至可重構(gòu)陣列;可重構(gòu)陣列,用于對輸入數(shù)據(jù)進行運算操作,將運算結(jié)果數(shù)據(jù)輸出至第三計算路由單元,所述可重構(gòu)陣列包括多個可重構(gòu)單元,用于完成對輸入數(shù)據(jù)的運算操作;多個第二計算路由單元,用于完成可重構(gòu)單元間的數(shù)據(jù)連接,并對數(shù)據(jù)進行運算處理;所述處理器還包括第三計算路由單元,用于接收可重構(gòu)陣列的輸出數(shù)據(jù),對數(shù)據(jù)進行運算處理;輸出緩存器,用于接收第三計算路由單元輸出的結(jié)果數(shù)據(jù),并將數(shù)據(jù)輸出至外部裝置。
文檔編號G06F15/78GK102541809SQ20111040746
公開日2012年7月4日 申請日期2011年12月8日 優(yōu)先權(quán)日2011年12月8日
發(fā)明者劉雷波, 尹首一, 時龍興, 曹鵬, 朱敏, 楊軍, 王延升, 鄒于佳, 魏少軍 申請人:清華大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1