亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        PC平臺(tái)上PCI9052數(shù)據(jù)傳送性能分析與優(yōu)化

        2008-12-31 00:00:00屈建萍
        商場(chǎng)現(xiàn)代化 2008年11期

        [摘 要] 本文分析了PC平臺(tái)上PCI接口芯片PCI 9052的數(shù)據(jù)傳送性能及讀寫速度慢的原因。給出了相應(yīng)的提高PCI9052讀寫速度的優(yōu)化方法。綜合采用本文提出的優(yōu)化方法實(shí)現(xiàn)的實(shí)驗(yàn)結(jié)果,使讀寫速度提高了一倍。

        [關(guān)鍵詞] PCI9052 讀寫速度 分析 優(yōu)化

        PLX PCI9052是最常用的PCI接口芯片。其低廉的價(jià)格和良好的數(shù)據(jù)傳送性能,得到了普遍的應(yīng)用。它可實(shí)現(xiàn)高性能的猝發(fā)式數(shù)據(jù)傳輸。但在PC平臺(tái)實(shí)際應(yīng)用上,讀寫速度卻遠(yuǎn)遠(yuǎn)低于這一速度,沒(méi)有充分發(fā)揮它所提供的數(shù)據(jù)傳送能力。本文將就其讀寫速度問(wèn)題進(jìn)行分析,并給出提高讀寫速度的方法。

        一、讀寫速度分析

        PCI9052是一種能提供混合高性能PCI總線目標(biāo)(從)模式的接口芯片,支持低成本從屬適配器。該芯片可與多種局部總線相連,芯片內(nèi)部包括一個(gè)64Byte的寫FIFO和一個(gè)32Byte 的讀FIFO,通過(guò)讀寫FIFOs,可實(shí)現(xiàn)高性能的猝發(fā)式數(shù)據(jù)傳輸,可提供133MB/s的猝發(fā)傳送速率。但在PC平臺(tái)上,PC到PCI9052的實(shí)際速度一般卻為4~5MB/S的讀。

        造成讀寫速度慢的原因有兩種:

        1.系統(tǒng)效率

        PC平臺(tái)是在操作系統(tǒng)的管理下,需要通過(guò)各層次的調(diào)用才能訪問(wèn)到具體硬件。這樣對(duì)PCI設(shè)備的訪問(wèn)效率自然就降低了很多。另一方面,操作系統(tǒng)中和其他應(yīng)用程序及進(jìn)程,也需要占用大量的CPU時(shí)間,這樣對(duì)PCI設(shè)備的訪問(wèn)效率上就會(huì)降低很多。另外,PCI是共享總線,如果有多個(gè)PCI設(shè)備存在,則每個(gè)PCI設(shè)備的訪問(wèn)效率還要受分時(shí)訪問(wèn)的影響。

        2.猝發(fā)模式

        造成讀寫速度慢的根本原因,就是讀寫模式。雖然PCI9052可實(shí)現(xiàn)高性能的猝發(fā)式數(shù)據(jù)傳輸,但對(duì)于PC平臺(tái)來(lái)說(shuō),實(shí)際并沒(méi)有實(shí)現(xiàn)高性能的較長(zhǎng)的連續(xù)猝發(fā)式數(shù)據(jù)傳輸。

        在x86(Intel)結(jié)構(gòu)中,CPU發(fā)起的到PCI從設(shè)備 的讀是通過(guò)北橋芯片進(jìn)行的,不是猝發(fā)模式。PCI設(shè)備是映射到非緩沖存儲(chǔ)器的,從PCI從設(shè)備的讀是非緩沖存儲(chǔ)器的讀。導(dǎo)致的直接結(jié)果是,到PCI從設(shè)備的讀是速度較慢的塊模式的讀,即在更早的讀完成前,其他的讀不是高性能的猝發(fā)式數(shù)據(jù)傳輸。因此,導(dǎo)致了這種情況:雖然設(shè)置和進(jìn)行的是猝發(fā)模式讀,但最大的數(shù)據(jù)“猝發(fā)”被限制成x86 CPU能夠完成的沒(méi)有高速緩沖的最大的存儲(chǔ)器“單”讀。即64位,4字節(jié),2個(gè)PCI時(shí)鐘,全字節(jié)使能。通常,這是一個(gè)64位讀,使用指令MOVQ r64,mem來(lái)完成。因此,使用x86 CPU讀PCI從設(shè)備可以獲得的最大的讀是64位,或是“雙”數(shù)據(jù)段,而不是9052所提供的高性能的連續(xù)猝發(fā)式數(shù)據(jù)傳輸。

        對(duì)于從PC平臺(tái)到PCI從設(shè)備寫來(lái)說(shuō),是短猝發(fā)寫,芯片組結(jié)構(gòu)到目標(biāo)設(shè)備的主存儲(chǔ)器的猝發(fā)每次不能大于4個(gè)長(zhǎng)字,也就不允許較大的猝發(fā)。猝發(fā)寫要比猝發(fā)讀的速度要快。猝發(fā)寫的長(zhǎng)度是讀的4倍,減少了寫操作的次數(shù),節(jié)約了三個(gè)相應(yīng)的讀開始和結(jié)束周期,因此寫速度要比讀大約快4倍左右。

        據(jù)上面分析可知,PCI9052讀寫速度慢,主要是PC平臺(tái)的原因造成的較小的短猝發(fā)。因此,要提高基于PC平臺(tái)下PCI9052的讀寫速度,一方面要對(duì)PCI9052的進(jìn)行優(yōu)化設(shè)置;另一方面,主要是從PC平臺(tái)著手進(jìn)行優(yōu)化,包括對(duì)系統(tǒng)的優(yōu)化,以提高效率,和讀寫操作的優(yōu)化,以實(shí)現(xiàn)較好的讀寫時(shí)序。

        二、讀寫操作優(yōu)化

        1.系統(tǒng)優(yōu)化

        在進(jìn)行PCI從設(shè)備操作時(shí),盡可能減少其它進(jìn)程的活動(dòng),盡量使系統(tǒng)時(shí)間用于PCI從設(shè)備的操作,減少訪問(wèn)空閑,提高系統(tǒng)對(duì)PCI從設(shè)備的訪問(wèn)時(shí)效。同時(shí),盡量減少多個(gè)PCI從設(shè)備同時(shí)使用,避免多個(gè)PCI從設(shè)備分享PCI資源。在這一方面,LIUNX操作系統(tǒng)的效率要高于WINDOWS操作系統(tǒng)。

        PC平臺(tái)的硬件方面,資源和性能配置盡量提高,特別是要有較大內(nèi)存空間,避免經(jīng)常性的讀寫速度較慢的硬盤。

        2.讀寫優(yōu)化

        (1)讀模式優(yōu)化

        設(shè)置PCI 9052為Read Ahead Mode(預(yù)讀取模式),CNTRL置1。PCI 9052支持直接從預(yù)讀模式,數(shù)據(jù)讀取是從PCI 9052內(nèi)部FIFO讀。地址必需是前面連續(xù)的地址的并發(fā),且是32位數(shù)據(jù)(下一個(gè)地址是當(dāng)前地址+4)。預(yù)讀取模式要求在用于預(yù)讀模式的存儲(chǔ)器映射空間的LASxBRD寄存器設(shè)置預(yù)取允許,PCI 9052就每一個(gè)I/O映射訪問(wèn)刷新它的讀FIFO。同時(shí),設(shè)置為零等待狀態(tài),這樣可以使PCI9052的讀加倍,實(shí)現(xiàn)8~10Mbytes/s的讀速度。

        (2)其他讀優(yōu)化

        分析可知,PCI從設(shè)備的存儲(chǔ)器映射為非緩沖存儲(chǔ)器。可設(shè)置PCI從設(shè)備的存儲(chǔ)器映射為可緩沖,則當(dāng)PCI從設(shè)備被CPU執(zhí)行單元讀時(shí),這時(shí)緩沖單元在是完全的緩沖通道。對(duì)于連續(xù)地址是可以這樣做的。在 x86 高速緩沖通道大?。烤€64字節(jié))或是16個(gè)PCI數(shù)據(jù)傳送時(shí)鐘下,結(jié)果是“猝發(fā)”的。但在從同一地址傳送之前,必須刷新CPU高速緩沖,標(biāo)志存儲(chǔ)器為直接寫,可以得到64字節(jié)的讀,但當(dāng)重復(fù)從同一地址讀時(shí),必須刷新全部的CPU高速緩沖,會(huì)導(dǎo)致以較大的猝發(fā)實(shí)現(xiàn)的失敗,甚至系統(tǒng)崩潰。這樣通常對(duì)系統(tǒng)是有害的。而系統(tǒng)分配給PCI地址后,就是固定的,也就必須完成上述的刷新全部的CPU高速緩沖的操作。

        另外,允許執(zhí)行WBINVD高速緩沖刷新指令時(shí)獲得的操作系統(tǒng)接口,是一個(gè)解決途徑。WBINVD是個(gè)初始化指令,先擦除內(nèi)部Cache,并分配一個(gè)專用總線周期將外部Cache的內(nèi)容寫回主存,在此后的一個(gè)總線周期內(nèi)將外部Cache刷新。

        (3)寫優(yōu)化

        A:使用具有許多寫緩沖的芯片組,可以將到線性連續(xù)地址的連續(xù)寫組合成單個(gè)猝發(fā)。B:循環(huán)中使用MOVQ mem,m64指令,不用REP movsd指令。x86結(jié)構(gòu)CPU的4長(zhǎng)字的寫的性能接近50MB/s。C:把設(shè)備存儲(chǔ)器映射為USWC(無(wú)緩沖隨機(jī)聯(lián)合寫操作)。USWC把每一個(gè)小的寫入操作聯(lián)合成一個(gè)64位寫命令,再發(fā)到線性緩沖區(qū),這樣能夠減少寫操作次數(shù),提高寫速度。

        三、實(shí)驗(yàn)結(jié)果

        利用本文提出的方法,對(duì)一款PCI卡進(jìn)行了優(yōu)化測(cè)試試驗(yàn),該卡采用DSP6204數(shù)字處理器,內(nèi)部處理速度與數(shù)據(jù)傳送帶寬遠(yuǎn)大于PCI總線的速度,在這一方面不存在影響PCI總線與PCI9052之間的數(shù)據(jù)傳送速度的因素。我們采用預(yù)讀取模式,在LINUX下可實(shí)現(xiàn)12MB/s的讀速度和28MB/s的寫速度。在WINDOWS 2000下,采用預(yù)讀取模式和USWC,可實(shí)現(xiàn)11MB/s的讀速度和30MB/s的寫速度。從實(shí)驗(yàn)結(jié)果得知,LIUNX下的讀速度要比WINDOWS2000下的讀速度要快一些,這是由于系統(tǒng)效率問(wèn)題的區(qū)別,而WINDOWS2000下的寫速度要比LINUX下要快一些,這是由于采用了設(shè)備存儲(chǔ)器映射為USWC。

        四、結(jié)束語(yǔ)

        本文從PC平臺(tái)對(duì)PCI設(shè)備的訪問(wèn)機(jī)制出發(fā),從根本上分析了在PC平臺(tái)下,PCI接口芯片PCI 9052讀寫速度慢的原因,并給出了相應(yīng)的優(yōu)化方法及實(shí)驗(yàn)結(jié)果。由于PC平臺(tái)對(duì)PCI從設(shè)備訪問(wèn)機(jī)制的原因,這些優(yōu)化不會(huì)從根本上得到大幅度提高,也不可能達(dá)到PC平臺(tái)及PCI9052所提供的133MB/S的數(shù)據(jù)傳送速率。如果有更高的數(shù)據(jù)交換速度的要求,只能使用象PCI9054這樣可以進(jìn)行DMA傳送的價(jià)位較高的接口芯片。

        參考文獻(xiàn):

        [1]PLX Technology Inc.PCI 9052 Data Book[M].2.0 2001

        [2]Intel Corporation.IA-32 Intel Architecture Software Devel-oper’s Manual Volume 2:Instruction Set Reference[M/OL].1999[2006-05-08].http://www.intel.com/Order Number 245471-012

        [3]孫德文:微型計(jì)算機(jī)技術(shù)[M].北京:高等教育出版社,2004

        亚洲欧美日本| 日本熟妇另类一区二区三区| 最新国产毛2卡3卡4卡| 午夜三级a三级三点| 久久亚洲高清观看| 亚洲国产黄色在线观看| 日本国产亚洲一区二区| 久久久久久人妻一区精品| 国产精品videossex国产高清| 玩弄少妇高潮ⅹxxxyw| 亚洲精品成AV无在线观看| 国产精品一区一区三区| 一区二区三区国产免费视频| 一品二品三品中文字幕| 伊人网综合| 玖玖资源网站最新网站| 麻豆精品国产专区在线观看| 99在线精品免费视频九九视| 99久久人妻无码精品系列蜜桃| 亚洲中文字幕日本日韩| 97人妻精品一区二区三区男同| 亚洲精品suv精品一区二区| 人妻无码一区二区在线影院| 国产av自拍在线观看| 亚洲av无码乱码精品国产| 成年无码av片完整版| www.久久av.com| 韩国一区二区三区黄色录像| 日本阿v片在线播放免费| 久热香蕉视频| 天堂av在线一区二区| 丝袜美腿国产一区精品| 激情影院内射美女| 亚洲AV秘 无码二区在线| 国产一区二区三区精品成人爱| 无码毛片内射白浆视频| 制服丝袜人妻中文字幕在线| 2022精品久久久久久中文字幕| 亚洲高清国产成人精品久久| 国产精品99久久久久久猫咪| 亚洲欧美中文在线观看4|