小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

3.3.5 DMA寫時(shí)發(fā)生Cache命中的優(yōu)化

 zhu智 2016-03-10

 在許多高性能處理器中,還提出了一些新的概念,以加速外設(shè)到存儲器的DMA寫過程。如FreescaleI/O StashingIntelIOAT技術(shù)。

3?8所示,當(dāng)設(shè)備進(jìn)行存儲器寫時(shí),如果可以對Cache直接進(jìn)行寫操作時(shí),即便這個(gè)存儲器寫命中了一個(gè)狀態(tài)為MCache行,可以不將該Cache行的數(shù)據(jù)回寫到存儲器中,而是直接將數(shù)據(jù)寫入Cache,之后該Cache行的狀態(tài)依然為M。采用這種方法可以有效提高設(shè)備對存儲器進(jìn)行寫操作的效率。采用直接向Cache行寫的方法,PCI設(shè)備對存儲器寫命中一個(gè)狀態(tài)為MCache行時(shí),將執(zhí)行以下操作。

(1)      HOST主橋?qū)Υ鎯ζ鞯膶懻埱蟀l(fā)送到FSB總線上。

(2)      CPU通過對FSB監(jiān)聽,發(fā)現(xiàn)該寫請求在某個(gè)Cache行中命中,而且該Cache行的狀態(tài)為M。

(3)      HOST主橋?qū)?shù)據(jù)直接寫入到Cache行中,并保持Cache行的狀態(tài)為M。注意此時(shí)設(shè)備不需要將數(shù)據(jù)寫入存儲器中。

從原理上看,這種方法并沒有奇特之處,僅需Cache能夠提供一個(gè)接口,使外部設(shè)備能夠直接寫入即可。但是從具體實(shí)現(xiàn)上看,設(shè)備直接將數(shù)據(jù)寫入Cache中,還是有相當(dāng)大的難度。特別是考慮在一個(gè)處理器中,可能存在多級Cache,當(dāng)CPU進(jìn)行總線監(jiān)聽時(shí),可能是在L1、L2或者L3 Cache中命中,此時(shí)的情況較為復(fù)雜,多級Cache間的協(xié)議狀態(tài)機(jī)遠(yuǎn)比FSB總線協(xié)議復(fù)雜的多。

在一個(gè)處理器系統(tǒng)中,如果FSB總線事務(wù)在“與FSB直接相連的Cache”中命中時(shí),這種情況相對容易處理;但是在與BSB(Back-Side Bus)直接相連的Cache命中時(shí),這種情況較難處理。下文分別對這兩種情況進(jìn)行討論,在一個(gè)處理器中,采用FSBBSB連接Cache的拓?fù)淙?/span>3?9所示。

3.3.5 <wbr>DMA寫時(shí)發(fā)生Cache命中的優(yōu)化

當(dāng)采用FSB總線連接L2 Cache時(shí),L2 Cache直接連接到FSB總線上,設(shè)備通過FSB總線向L2 Cache進(jìn)行寫操作并不難實(shí)現(xiàn),MPC8548處理器就是采用了這種結(jié)構(gòu)將L2 Cache直接連接到FSB總線上。

但是由于FSB總線的頻率遠(yuǎn)低于BSB總線頻率,因此采用這種結(jié)構(gòu)將影響L2 Cache的訪問速度,為此高端處理器多采用BSB總線連接L2 Cachex86處理器在Pentium Pro之后的高性能處理器都使用BSB總線連接L2 Cache,FreescaleG4系列處理器和最新的P4080處理器也使用BSB總線連接L2 Cache。

當(dāng)L2 Cache沒有直接連接到FSB上時(shí),來自外部設(shè)備的數(shù)據(jù)并不容易到達(dá)BSB總線。除了需要考慮Cache連接在BSB總線的情況外,在外部設(shè)備進(jìn)行DMA操作時(shí),還需要考慮多處理器系統(tǒng)的Cache共享一致性協(xié)議。設(shè)計(jì)一個(gè)專用通道,將數(shù)據(jù)從外部設(shè)備直接寫入到處理器的Cache中并不容易實(shí)現(xiàn)。IntelIOATFreescaleI/O Stashing可能使用了這種專用通道技術(shù),直接對L1L2 Cache進(jìn)行寫操作,并在極大增加了設(shè)計(jì)復(fù)雜度的前提下,提高了處理器系統(tǒng)的整體效率。

以上對Cache進(jìn)行直接寫操作,僅是IntelIOATFreescaleI/O Stashing技術(shù)的一個(gè)子集。目前IntelFreescale沒有公開這些技術(shù)的具體實(shí)現(xiàn)細(xì)節(jié)。在一個(gè)處理器系統(tǒng)中,可能存在多級Cache,這些Cache的層次組成結(jié)構(gòu)和狀態(tài)機(jī)模型異常復(fù)雜,本章對這些內(nèi)容不做進(jìn)一步說明。在許多高性能處理器中,還提出了一些新的概念,以加速外設(shè)到存儲器的DMA寫過程。如FreescaleI/O StashingIntelIOAT技術(shù)。

3?8所示,當(dāng)設(shè)備進(jìn)行存儲器寫時(shí),如果可以對Cache直接進(jìn)行寫操作時(shí),即便這個(gè)存儲器寫命中了一個(gè)狀態(tài)為MCache行,可以不將該Cache行的數(shù)據(jù)回寫到存儲器中,而是直接將數(shù)據(jù)寫入Cache,之后該Cache行的狀態(tài)依然為M。采用這種方法可以有效提高設(shè)備對存儲器進(jìn)行寫操作的效率。采用直接向Cache行寫的方法,PCI設(shè)備對存儲器寫命中一個(gè)狀態(tài)為MCache行時(shí),將執(zhí)行以下操作。

(1)      HOST主橋?qū)Υ鎯ζ鞯膶懻埱蟀l(fā)送到FSB總線上。

(2)      CPU通過對FSB監(jiān)聽,發(fā)現(xiàn)該寫請求在某個(gè)Cache行中命中,而且該Cache行的狀態(tài)為M。

(3)      HOST主橋?qū)?shù)據(jù)直接寫入到Cache行中,并保持Cache行的狀態(tài)為M。注意此時(shí)設(shè)備不需要將數(shù)據(jù)寫入存儲器中。

從原理上看,這種方法并沒有奇特之處,僅需Cache能夠提供一個(gè)接口,使外部設(shè)備能夠直接寫入即可。但是從具體實(shí)現(xiàn)上看,設(shè)備直接將數(shù)據(jù)寫入Cache中,還是有相當(dāng)大的難度。特別是考慮在一個(gè)處理器中,可能存在多級Cache,當(dāng)CPU進(jìn)行總線監(jiān)聽時(shí),可能是在L1L2或者L3 Cache中命中,此時(shí)的情況較為復(fù)雜,多級Cache間的協(xié)議狀態(tài)機(jī)遠(yuǎn)比FSB總線協(xié)議復(fù)雜的多。

在一個(gè)處理器系統(tǒng)中,如果FSB總線事務(wù)在“與FSB直接相連的Cache”中命中時(shí),這種情況相對容易處理;但是在與BSB(Back-Side Bus)直接相連的Cache命中時(shí),這種情況較難處理。下文分別對這兩種情況進(jìn)行討論,在一個(gè)處理器中,采用FSBBSB連接Cache的拓?fù)淙?/span>3?9所示。

3.3.5 <wbr>DMA寫時(shí)發(fā)生Cache命中的優(yōu)化

當(dāng)采用FSB總線連接L2 Cache時(shí),L2 Cache直接連接到FSB總線上,設(shè)備通過FSB總線向L2 Cache進(jìn)行寫操作并不難實(shí)現(xiàn),MPC8548處理器就是采用了這種結(jié)構(gòu)將L2 Cache直接連接到FSB總線上。

但是由于FSB總線的頻率遠(yuǎn)低于BSB總線頻率,因此采用這種結(jié)構(gòu)將影響L2 Cache的訪問速度,為此高端處理器多采用BSB總線連接L2 Cachex86處理器在Pentium Pro之后的高性能處理器都使用BSB總線連接L2 Cache,FreescaleG4系列處理器和最新的P4080處理器也使用BSB總線連接L2 Cache

當(dāng)L2 Cache沒有直接連接到FSB上時(shí),來自外部設(shè)備的數(shù)據(jù)并不容易到達(dá)BSB總線。除了需要考慮Cache連接在BSB總線的情況外,在外部設(shè)備進(jìn)行DMA操作時(shí),還需要考慮多處理器系統(tǒng)的Cache共享一致性協(xié)議。設(shè)計(jì)一個(gè)專用通道,將數(shù)據(jù)從外部設(shè)備直接寫入到處理器的Cache中并不容易實(shí)現(xiàn)。IntelIOATFreescaleI/O Stashing可能使用了這種專用通道技術(shù),直接對L1L2 Cache進(jìn)行寫操作,并在極大增加了設(shè)計(jì)復(fù)雜度的前提下,提高了處理器系統(tǒng)的整體效率。

以上對Cache進(jìn)行直接寫操作,僅是IntelIOATFreescaleI/O Stashing技術(shù)的一個(gè)子集。目前IntelFreescale沒有公開這些技術(shù)的具體實(shí)現(xiàn)細(xì)節(jié)。在一個(gè)處理器系統(tǒng)中,可能存在多級Cache,這些Cache的層次組成結(jié)構(gòu)和狀態(tài)機(jī)模型異常復(fù)雜,本章對這些內(nèi)容不做進(jìn)一步說明。

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多