一種基于存儲(chǔ)器訪問模型的多媒體SOC性能評(píng)估方法備課講稿_第1頁
一種基于存儲(chǔ)器訪問模型的多媒體SOC性能評(píng)估方法備課講稿_第2頁
一種基于存儲(chǔ)器訪問模型的多媒體SOC性能評(píng)估方法備課講稿_第3頁
一種基于存儲(chǔ)器訪問模型的多媒體SOC性能評(píng)估方法備課講稿_第4頁
一種基于存儲(chǔ)器訪問模型的多媒體SOC性能評(píng)估方法備課講稿_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Good is good, but better carries it.精益求精,善益求善。一種基于存儲(chǔ)器訪問模型的多媒體SOC性能評(píng)估方法-一種基于存儲(chǔ)器訪問模型的多媒體SOC性能評(píng)估方法摘要越來越復(fù)雜的應(yīng)用程序案例給SOC架構(gòu)帶來了很多巨大的帶寬負(fù)載問題,為了設(shè)計(jì)出一個(gè)高性能的SOC系統(tǒng),這個(gè)系統(tǒng)支持大量和高速的數(shù)據(jù)處理能力,一個(gè)高效的,系統(tǒng)的和快速的SOC架構(gòu)性能評(píng)估方法成為了芯片設(shè)計(jì)成功的基本要求。本文介紹了一種基于存儲(chǔ)器訪問模型的性能評(píng)估方法,它可以給出精確和可靠的評(píng)估結(jié)果來幫助設(shè)計(jì)者進(jìn)行系統(tǒng)級(jí)和模塊級(jí)的設(shè)計(jì),它可以用來建立SOC架構(gòu),在芯片架構(gòu)確定的最初設(shè)計(jì)階段就找到系統(tǒng)的性能瓶頸

2、,并給出不同架構(gòu)定義的比較結(jié)果,同時(shí)節(jié)省設(shè)計(jì)所付出的代價(jià)和設(shè)計(jì)迭代周期。關(guān)鍵詞SOC;性能評(píng)估;帶寬負(fù)載;存儲(chǔ)器訪問1介紹A背景芯片設(shè)計(jì)已經(jīng)進(jìn)入了SOC階段。盡管SOC可以提高系統(tǒng)集成度,減少功耗和物理尺寸,它需要高帶寬負(fù)載和高性能的處理能力,特別是和多媒體相關(guān)的應(yīng)用程序。圖1給出了一個(gè)基于ARM核的典型的SOC架構(gòu),它包括視頻編解碼器,圖像預(yù)處理器,圖像后處理器和高性能的顯示控制器等。需要訪問大量數(shù)據(jù)的硬件模塊和內(nèi)存控制器直接相連來提高數(shù)據(jù)訪問效率。怎樣評(píng)估已經(jīng)定義好的SOC架構(gòu)是否滿足系統(tǒng)的需求,怎樣估計(jì)這種SOC架構(gòu)的性能處理能力,怎樣重新設(shè)計(jì)硬件加速器,如果它不能滿足應(yīng)用程序的需求?這

3、些是在開始進(jìn)行SOC設(shè)計(jì)之前需要解決的至關(guān)重要的問題。圖1基于ARM核的SOC架構(gòu)B相關(guān)工作專注于SOC架構(gòu)性能評(píng)估的研究有很多19,當(dāng)前的技術(shù)總的來說可以分為兩大類。具體的SOC性能評(píng)估工具大多數(shù)SOC性能評(píng)估工具需要具體的編程語言來開發(fā)虛擬系統(tǒng)18,這些環(huán)境構(gòu)建了一種基于受限制的規(guī)范語言的自定義設(shè)計(jì),通過靜態(tài)的分析或系統(tǒng)仿真來進(jìn)行性能評(píng)估。它們很不適合設(shè)計(jì)空間的探索,因?yàn)殚_發(fā)出能夠快速推向市場(chǎng)的性能評(píng)估虛擬系統(tǒng)和復(fù)雜的SOC系統(tǒng)太耗費(fèi)時(shí)間了。特定抽象層次上的單元性能模型這種方法只能得到單個(gè)硬件性能評(píng)估結(jié)果9,當(dāng)把它們放入整個(gè)SOC系統(tǒng)中時(shí),SOC架構(gòu)設(shè)計(jì)師依然對(duì)系統(tǒng)的性能是不清楚的。和上述

4、方法不一樣,本文介紹了一種基于存儲(chǔ)器訪問建模的方法來給出一個(gè)有效的,系統(tǒng)的,快速的,可靠的SOC性能評(píng)估結(jié)果。第二章給出了存儲(chǔ)器訪問建模的方法,通過分析存儲(chǔ)控制器和AHB主設(shè)備的固有特性來給出SOC的性能評(píng)估方程。第三章通過一個(gè)讀多媒體應(yīng)用程序的例子對(duì)評(píng)估結(jié)果進(jìn)行了分析。第四章給出了結(jié)論。2存儲(chǔ)器訪問建模A存儲(chǔ)器訪問建模DRAM存儲(chǔ)器在SOC應(yīng)用程序中被廣泛使用,它的每一個(gè)存儲(chǔ)體是由許多頁組成的,指令被定義用于控制DRAM的動(dòng)作。訪問同一存儲(chǔ)體的不同頁,稱為頁缺失,需要用PRECHARGE指令來關(guān)閉打開的頁,過了tRP時(shí)鐘周期后,新的存儲(chǔ)器頁被ACTIVE指令激活,READ指令在tRCD周期后

5、發(fā)出,等待tCAS周期后,第一個(gè)數(shù)據(jù)就可以讀了。訪問了相同的頁稱為頁命中,不需要發(fā)出PRECHARGE和ACTIVE指令。DRAM的訪問時(shí)序可以分為四類,寫后讀,讀后讀,寫后寫和讀后寫,用RW,RR,WW和WR作為它們對(duì)應(yīng)的訪問時(shí)序號(hào),PM和PH是頁缺失/命中的百分比。具體的訪問時(shí)序類型乘上頁缺失/命中的比率就是訪問時(shí)序頁缺失/命中的百分比,R/W_PM/PH=R/WPM/PH。例如,RW_PM和RW_PH代表了寫后讀時(shí)序的頁缺失/命中的百分比。當(dāng)DRAM控制總線不再被上一條指令占用的時(shí)候,控制器就可以向控制總線發(fā)出下一條指令,盡管數(shù)據(jù)總線上依然有上一個(gè)數(shù)據(jù),這叫指令預(yù)取。指令預(yù)取優(yōu)化在下面情

6、況中是不可能實(shí)現(xiàn)的。在SOC中只有一個(gè)主設(shè)備,或者所有的主設(shè)備都不能發(fā)出請(qǐng)求,直到上一個(gè)主設(shè)備用完總線為止。在所有的AHB總線主設(shè)備中只設(shè)計(jì)了AHB總線的SINGLE或INCR訪問類型,對(duì)于INCR類型,存儲(chǔ)控制器不能預(yù)估當(dāng)前的訪問何時(shí)能結(jié)束,因此在當(dāng)前最后一個(gè)數(shù)據(jù)準(zhǔn)備好之前不能發(fā)出下一條指令,表1給出了SINGLE訪問類型的延時(shí)時(shí)間。DRAM的時(shí)間限制被違反時(shí)。上一條指令的執(zhí)行會(huì)被影響時(shí)。除了以上情況,指令預(yù)取優(yōu)化可以被用來隱藏盡可能多的猝發(fā)數(shù)據(jù)訪問延遲。定義R/W_PM/PH_delay來代表對(duì)應(yīng)訪問類型的訪問延遲。RR類型延時(shí)計(jì)算模型在圖2的RR-PM例子中,第二條PRECHARGE指令

7、在第一條指令的數(shù)據(jù)還在讀取時(shí)就已經(jīng)發(fā)出,指令周期的一部分被隱藏,數(shù)據(jù)訪問延時(shí)時(shí)間可由下式計(jì)算:RR_PM_delay=(tRP+tRCD+tCAS+tRASburst-len+tCAS+tRCD)?(tRP+tRAS-burst-len):0如圖2所示,tRP+tRCD+tCAS+tRAS代表第一個(gè)active指令到第二次訪問的第一個(gè)數(shù)據(jù)讀出的時(shí)間,burst-len+tCAS+tRCD為第一個(gè)active指令到第一次訪問的最后一個(gè)數(shù)據(jù)讀完的時(shí)間,若前者大于后者,則存在訪問延時(shí),延時(shí)時(shí)間即為(tRP+tRCD+tCAS+tRAS)-(burst-len+tCAS+tRCD)=tRP+tRAS-

8、burst-len,反之,第二次訪問的延時(shí)時(shí)間被隱藏,第二次訪問的數(shù)據(jù)在第一次訪問結(jié)束后就立刻開始進(jìn)行讀數(shù)據(jù),延時(shí)時(shí)間為零。這里,tRP,tRAS,tCAS是DRAM初始化期間生成的常量,burst_len指AHB主設(shè)備數(shù)據(jù)請(qǐng)求猝發(fā)長(zhǎng)度,并且決定了數(shù)據(jù)訪問的延時(shí)時(shí)間。burst_len越大,在一個(gè)指令期間傳送的數(shù)據(jù)就越多,數(shù)據(jù)訪問效率就越高。考慮最緊張的SOC帶寬負(fù)載情況,多主設(shè)備總是同時(shí)發(fā)送數(shù)據(jù)請(qǐng)求,這比一個(gè)特定時(shí)間內(nèi)只有一個(gè)主設(shè)備發(fā)送的情況要緊張。那就是說,第二條指令在前一條指令之后就立刻發(fā)送給了DRAM,并且在連續(xù)的指令之間沒有間斷。第二次訪問的第一個(gè)數(shù)據(jù)在第一次訪問的最后一個(gè)數(shù)據(jù)之后就

9、立刻生效,第二次訪問的延時(shí)時(shí)間完全被第一次訪問的數(shù)據(jù)讀取階段隱藏,所以RR_PH_delay=0,如圖2所示。RW類型延時(shí)計(jì)算模型在圖3(a)中,頁缺失寫猝發(fā)信號(hào)在猝發(fā)讀之后,WRITE指令控制階段與READ指令數(shù)據(jù)階段部分重疊,它的訪問延時(shí)被部分隱藏了。RW_PM延時(shí)可由(2)式計(jì)算得出,也是由burstlen參數(shù)決定的。RW_PM_delay=(tRP+tRCD+tRASburst-len+tCAS+tRCD)?(tRP+tRAS-tCAS-burst_len):0(2)如圖3(a)所示,tRP+tRCD+tRAS為第一個(gè)active指令到第一個(gè)write指令的時(shí)間間隔,burst-len

10、+tCAS+tRCD為第一個(gè)active指令到最后一個(gè)讀數(shù)據(jù)讀出的時(shí)間,當(dāng)前者大于后者時(shí),存在訪問延時(shí),延時(shí)時(shí)間為(tRP+tRCD+tRAS)-(burst-len+tCAS+tRCD)=tRP+tRAS-tCAS-burst_len,否則,延時(shí)時(shí)間為零。同樣考慮最緊張的帶寬負(fù)載情況,第二次頁命中WRITE指令和數(shù)據(jù)在最后一個(gè)讀數(shù)據(jù)之后立刻發(fā)送,如圖3(b)所示,所以RW_PH_delay=0.圖2RR_PM和RR_PH的DRAM訪問時(shí)序(a)RW_PM的DRAM訪問時(shí)序(b)RW_PH的DRAM訪問時(shí)序圖3RW_PM和RW_PH的DRAM訪問時(shí)序3)WR類型延時(shí)計(jì)算模型在圖4(a)的WR_

11、PM例子中,如果READ指令和WRITE指令在同一存儲(chǔ)體,則第二個(gè)PRECHARGE指令應(yīng)當(dāng)在最后一個(gè)寫數(shù)據(jù)之后tWR時(shí)鐘周期發(fā)出,如果第二個(gè)指令訪問了不同的存儲(chǔ)體,就沒有這種需求了。考慮最緊張的情況,WR_PM_delay由3式給出。在圖4(b)(c)的WR_PH例子中,第二次READ指令和最后一個(gè)有效的寫入DDR的數(shù)據(jù)之間應(yīng)當(dāng)有tWTR時(shí)鐘周期,SDR沒有這種限制。WR_PH_delay由4式計(jì)算得出。WR_PM_delay=tWR+tRP+tRCD+tCAS-1(3)WR_PH_delay=tWTR+tCAS(DDR)=(burst_lentCAS)?0:(tCAS-burst-len)

12、(SDR)(4)如圖4(b)所示,如果第一次寫訪問的burst_len很長(zhǎng),超過下一次讀訪問的tCAS(tCAS為發(fā)出READ指令到開始讀第一個(gè)數(shù)據(jù)的時(shí)間),則下一次讀訪問的tCAS會(huì)被隱藏,延時(shí)時(shí)間為零。如果第一次寫訪問的burst_len較短,少于下一次讀訪問的tCAS,則不足以隱藏下一次讀訪問的tCAS,延時(shí)時(shí)間為tCASburstlen。4)WW類型延時(shí)計(jì)算模型在圖5兩次寫指令在同一存儲(chǔ)體的WW_PM例子中,第二個(gè)PRECHARGE指令在最后一個(gè)寫數(shù)據(jù)tWR時(shí)鐘周期后發(fā)出,延時(shí)時(shí)間由5式計(jì)算得出。在WW_PH例子中,第二個(gè)WRITE指令在寫數(shù)據(jù)之后立刻被發(fā)出,所以WW_PH_delay

13、=0。WW_PM_delay=tWR+tRP+tRCD-1(5)B基于存儲(chǔ)器訪問時(shí)序的AHB主設(shè)備建模由于burst_len決定了訪問延時(shí)時(shí)間的計(jì)算,更長(zhǎng)的數(shù)據(jù)訪問能夠?qū)崿F(xiàn)更加有效的指令預(yù)取和隱藏延時(shí)的特征,所以AHB主設(shè)備應(yīng)當(dāng)用INCR4和INCR8傳輸類型設(shè)計(jì),而不應(yīng)用SINGLE,INCR或更短的傳輸長(zhǎng)度。表1給出了SINGLE,INCR4和INCR8在不同訪問時(shí)序中的延時(shí)時(shí)間計(jì)算式。符號(hào)代表了條件選擇,如果里的運(yùn)算結(jié)果比零大,則結(jié)果就是其運(yùn)算結(jié)果,否則,結(jié)果為零。由于第一個(gè)猝發(fā)數(shù)據(jù)計(jì)時(shí)點(diǎn)為零,所以burst_len=data_burst_length-1。表一:不同的猝發(fā)數(shù)據(jù)訪問類型和

14、訪問時(shí)序時(shí)鐘周期延時(shí)時(shí)間在猝發(fā)傳輸中,一個(gè)數(shù)據(jù)所消耗的平均時(shí)鐘周期可由(6)式計(jì)算得出。理想情況下,當(dāng)所有的訪問都頁命中時(shí),在SDR中一個(gè)時(shí)鐘周期就可傳輸一個(gè)數(shù)據(jù)(在DDR中可傳輸兩個(gè))。但在實(shí)際的應(yīng)用程序中很難做到這樣,特別是有幾個(gè)AHB主設(shè)備同時(shí)發(fā)出數(shù)據(jù)請(qǐng)求的時(shí)候。當(dāng)頁缺失出現(xiàn)時(shí),就要插入訪問延時(shí)時(shí)間,平均的數(shù)據(jù)周期就會(huì)比一個(gè)時(shí)鐘周期長(zhǎng),平均的數(shù)據(jù)周期越長(zhǎng),SOC系統(tǒng)的性能就會(huì)越差。表2顯示了在SDR和DDR中不同訪問時(shí)序類型下的平均數(shù)據(jù)周期。ave_delay=(delay_cycle+burst_len)/transed_data_num(6)表2SDR和DDR的平均數(shù)據(jù)傳輸時(shí)鐘周期(

15、a)WR_PM的DRAM訪問時(shí)序(b)WR_PH的SDR訪問時(shí)序(c)WR_PH的DDR訪問時(shí)序圖4WR_PM和WR_PH的DRAM訪問時(shí)序圖5WW_PM和WW_PH的DRAM訪問時(shí)序平均數(shù)據(jù)周期代表了一個(gè)數(shù)據(jù)傳輸會(huì)消耗多少時(shí)鐘周期。將所有傳輸數(shù)據(jù)的個(gè)數(shù)和平均數(shù)據(jù)周期相乘就可得到一個(gè)AHB主設(shè)備所消耗的時(shí)間,如(7)所示,這里,r1,r2,p分別代表第一條指令的讀/寫類型,第二條指令的讀/寫類型和第二條指令的頁缺失/命中類型。所有的AHB主設(shè)備所消耗的時(shí)間之和可以準(zhǔn)確地反映SOC系統(tǒng)的性能。Consumed_time=data_num(r1,r2,p)ave_delay(r1,r2,p)(7)

16、C基于存儲(chǔ)器訪問的視頻編解碼器建模因?yàn)橐曨l編碼/解碼的算法非常復(fù)雜,在一個(gè)傳輸中所有的猝發(fā)數(shù)據(jù)并不一定都是有用的。在一次猝發(fā)傳輸中的幾個(gè)數(shù)據(jù)可能對(duì)應(yīng)用程序是多余的,在這種情況下,傳輸延遲是一樣的,但實(shí)際的傳輸數(shù)據(jù)比猝發(fā)長(zhǎng)度要短。雖然有多余的數(shù)據(jù),從SOC系統(tǒng)的角度看,所花費(fèi)的代價(jià)是值的,因?yàn)檠訒r(shí)的隱藏可以帶來更多的利益。當(dāng)評(píng)估SOC性能時(shí),應(yīng)當(dāng)考慮多余的時(shí)鐘周期所帶來的浪費(fèi),如(8)所示。在一次猝發(fā)傳輸中實(shí)際傳輸?shù)臄?shù)據(jù)可由統(tǒng)計(jì)視頻編解碼算法得到。Clock_cycles=(trans_num(r1,r2,p,i)valid_cnt(r1,r2,p,i)trans_delay(r1,r2,p,i

17、)(8)這里,除了r1,r2,p,valid_cnt是一次猝發(fā)傳輸中傳送的有效數(shù)據(jù)的個(gè)數(shù),i代表個(gè)數(shù),trans_num是猝發(fā)傳輸中傳送的總的數(shù)據(jù)個(gè)數(shù),valid_cnt即為數(shù)據(jù)吞吐量,trans_delay為valid_cnt類型傳輸?shù)难訒r(shí)時(shí)鐘周期。如果傳輸?shù)挠行?shù)據(jù)的個(gè)數(shù)小于或等于4,trans_delay就是INCR4類型的延遲,如果傳輸?shù)挠行?shù)據(jù)的個(gè)數(shù)在4和8之間,trans_delay就是INCR8類型的延遲。3試驗(yàn)和結(jié)果在以上建模和計(jì)算公式的基礎(chǔ)上,圖1SOC系統(tǒng)的32位和64位數(shù)據(jù)總線設(shè)計(jì)的性能得到了評(píng)估。考慮圖6中典型的多媒體應(yīng)用程序的例子,通過編解碼捕獲圖像處理并顯示。圖6視

18、頻編解碼處理數(shù)據(jù)流CSI(CMOS圖像傳感器接口)以每秒30幀的速度捕獲CIFRGB565圖像,直接將捕獲到的圖像傳送到PrP。在CSI和PrP之間沒有多余的帶寬。PrP有兩種數(shù)據(jù)處理途徑,一種將CIFRGB565變換為VGAYUV420圖像,將其存儲(chǔ)到外部存儲(chǔ)器中。另一種將CIFRGB565存儲(chǔ)到外部存儲(chǔ)器中,用DC取景器來顯示。PrP處理以MB(Macro-block)為基礎(chǔ),它的猝發(fā)長(zhǎng)度是用INCR4設(shè)計(jì)的。H264編碼器從PrP中讀取圖像,將編碼的比特流存到存儲(chǔ)器中,比特流被讀出用于解碼。解碼得到的圖像被存到存儲(chǔ)器中用于后處理,它被設(shè)計(jì)成為不確定的各種猝發(fā)傳輸長(zhǎng)度。PP讀取VGAYUV

19、420,并將其轉(zhuǎn)換為VGARGB565圖像,它的處理單元為圖像線,猝發(fā)長(zhǎng)度由INCR8設(shè)計(jì)。DC獲取VGA圖像,以每秒60幀的速度顯示。它的猝發(fā)長(zhǎng)度越長(zhǎng)越好,由INCR8設(shè)計(jì)。表3顯示了基于分辨率,幀速率和猝發(fā)類型的不同主設(shè)備的帶寬負(fù)載計(jì)算式。視頻編解碼數(shù)據(jù)流的總的存儲(chǔ)器帶寬需求是大約220MB。SOC架構(gòu)應(yīng)當(dāng)在一秒內(nèi)完成220MB數(shù)據(jù)的傳送來滿足視頻編解碼應(yīng)用程序的最小需求。表2和(7)可用于計(jì)算PrP/PP/DC的性能,因?yàn)樗鼈冇芯唧w的猝發(fā)傳輸長(zhǎng)度。H264不僅有各種猝發(fā)數(shù)據(jù)長(zhǎng)度,而且能將超出MB界限的多余數(shù)據(jù)讀成ME(運(yùn)動(dòng)估計(jì)),它將2121的塊讀成1616ME,1313的塊讀成88ME

20、,99的塊讀成44ME,對(duì)應(yīng)的有效數(shù)據(jù)讀取比率為(2121)/(1616)=1.72,(1313)/(88)=2.64,(99)/(44)=5.06。假設(shè)1616,88,44MB在典型的H264編解碼ME中分別占0.5,0.25,0.25的百分比,所以ME的讀數(shù)據(jù)比率為0.51.72+0.252.64+0.255.06=2.78。在表4的H264編解碼帶寬計(jì)算中采用這種比率。H264編解碼耗費(fèi)的時(shí)鐘周期由(8)式計(jì)算得出。表三不同主設(shè)備的分辨率,幀速率,猝發(fā)類型和帶寬負(fù)載信息表四H264編解碼器的讀/寫要求表五典型的H264VGA編解碼實(shí)例中的有效數(shù)據(jù)傳輸個(gè)數(shù)假設(shè)存儲(chǔ)控制器的時(shí)鐘頻率為133MHZ,優(yōu)化的DRAM時(shí)間設(shè)置為tWR=tWTR=2,tRP=tRCD=tCAS=3,tRAS=6。表二給出了SDR/DDR的INCR4和INCR8的平均數(shù)據(jù)傳輸時(shí)鐘周期。DDR的平均數(shù)據(jù)時(shí)鐘周期一般都比一小,因?yàn)镈DR在一個(gè)時(shí)鐘周期內(nèi)要傳送兩個(gè)數(shù)據(jù)。SDR的平均數(shù)據(jù)傳送周期要比一大。PP,PrP,DC和H264VGA編解碼器的在不同讀/寫訪問時(shí)序和頁缺失/命中的訪問時(shí)鐘周期數(shù)。這里采用基本的H264編解碼函數(shù)和行業(yè)通用測(cè)試圖像。表六總結(jié)了所有主設(shè)備的SDR/DDR和不同傳輸類型的訪問時(shí)鐘周期數(shù)。表六主設(shè)備的訪問時(shí)鐘周期數(shù)通過將所有

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論