NoC總線架構拓撲介紹

路科驗證 2021-09-01 12:03
弄清了訪存的路徑,可能就會想到一個問題:處理器發出去的讀寫請求到底是個什么東西?要想搞清楚它,就需要引入總線。下文我拿ARM的AXI/ACE總線協議以及由它衍生的總線結構來展開討論。這兩個協議廣泛用于主流的手機芯片上,是第四代AMBA(Advanced Microcontroller Bus Architecture)標準。

簡單的總線就是一些地址線和數據線,再加一個仲裁器,就可以把處理器發過來的讀寫請求送到內存或者外設,再返回數據。在這個過程中,我們需要一個主設備,一個從設備,所有的傳輸都是主設備發起,從設備回應。讓我們把處理器和它包含的緩存看作一個主設備,把內存控制器看作從設備。處理器發起訪問請求,如果是讀,那么總線把這個請求(包括地址)送到內存控制器,然后等待回應。過了一段時間,內存控制器把內存顆粒里面讀出的數據交給總線,總線又把數據交給處理器。如果數據無誤(ECC或者奇偶校驗不出錯),那么這個讀操作就完成了。如果是寫,處理器把寫請求(包括地址)和數據交給總線,總線傳遞給內存控制器,內存控制器寫完后,給出一個確認。這個確認經由總線又回到了處理器,寫操作完成。

以上過程有幾個重點。第一,處理器中的單個讀指令,被分為了請求(地址),完成(數據)階段。寫指令也被分為了請求(地址,數據),完成(寫入確認)階段。第二,作為從設備,內存控制器永遠都無法主動發起讀寫操作。如果一定要和處理器通訊,比如發生了讀寫錯誤,那就得使用中斷,然后讓處理器來發起讀寫內存控制器狀態的請求。第三,未完成的讀寫指令就變成了OT,總線可以支持多個OT。然而,總線支持多OT并不表示處理器能發送這么多請求出來,尤其是讀。所以瓶頸可能還是在處理器。

我遇到過幾次這樣的情況,在跑某個驅動的時候,突然系統掛死。但是別的設備中斷還能響應,或者報個異常后系統又繼續跑了。如果我們把上文的內存控制器替換成設備控制器,那就不難理解這個現象了。假設處理器對設備發起讀請求,而設備沒有回應,那處理器就會停在那等待。我看到的處理器,包括PowerPC, ARM,都沒有針對這類情況的超時機制。如果沒有中斷,那處理器無法自己切換到別的線程(Linux等操作系統的獨占模式),就會一直等待下去,系統看上去就掛住了。有些設備控制器可以自動探測這類超時,并通過中斷調用相應的異常或者中斷處理。在中斷處理程序中,可以報個錯,修改返回地址,跳過剛才的指令往下走,系統就恢復了。也有些處理器在觸發某類異常后能自動跳到下一行指令,避免掛死。但是如果沒有異常或者中斷發生,那就永遠掛在那。

繼續回到總線。在AXI/ACE總線協議中,讀和寫是分開的通道,因為他們之間并沒有必然聯系。更細一些,總線上規定了五個組,分別是讀操作地址(主到從),讀操作數據(從到主),寫操作地址(主到從),寫操作數據(主到從),寫操作確認(從到主)。讀和寫兩大類操作之間,并沒有規定先后次序。而在每一類操作之內的組之間,是有先后次序的,比如地址是最先發出的,數據隨后,可以有很多拍,形成突發操作。而確認是在寫操作中,從設備收到數據之后給出的。對內存控制器,必須在數據最終寫入到顆粒之后再給確認,而不是收到數據放到內部緩存中的時候。


對于同一個通道,如果收到連續的指令,他們之間的次序是怎么樣的呢?AXI/ACE協議規定,次序可以打亂。拿讀來舉例,前后兩條讀指令的數據返回是可以亂序的。這里包含了一個問題,總線怎么區分住前后兩讀條指令?很簡單,在地址和數據組里加幾根信號,作為標志符,來區分0-N號讀請求和完成。每一對請求和完成使用相同的標志符。有了這個標志符,就不必等前一個請求完成后才開始第二個請求,而是讓他們交替進行,這樣就可以實現總線的OT,極大提高效率。當然,也需要提供相應的緩沖來存儲這些請求的狀態。并且最大的OT數取決于緩沖數和標志符中小的那個。原因很簡單,萬一緩沖或者標志符用完了,但是所有的讀操作全都是請求,沒有一個能完成怎么辦?那只好讓新的請求等著了。于是就有了AXI/ACE總線的一條規則,同一個讀或者寫通道中,相同標志符的請求必須按順序完成。

有時候,處理器也會拿這個標志符作為它內部的讀寫請求標志符,比如Cortex-A7就是這么干的。這樣并不好,因為這就等于給自己加了限制,最大發出的OT不得大于總線的每通道標志符數。當一個處理器組里有四個核的時候,很可能就不夠用了,人為限制了OT數。

最后,讀寫通道之間是沒有規定次序的,哪怕標志相同。

看到這里可能會產生一個問題,讀寫指令里面有一個默認原則,就是相同地址,或者地址有重疊的時候,訪存必須是順序的。還有,如果訪問的內存類型是設備,那么必須保證訪存次序和指令一致。這個怎么在總線上體現出來呢?總線會檢查地址來保證次序,一般是內存訪問前后亂序地址不能64字節內,設備訪問前后亂序地址不能在4KB內。

在AXI/ACE中,讀和寫通道的比例是一比一。實際上,在日常程序中,讀的概率比寫要大。當然,寫緩存實際上伴隨著緩存行填充linefill(讀),而讀緩存會造成緩存行移除eviction(寫),再加上合并和次序調整,所以并不一定就是讀寫指令的比例。我看到Freescale PowerPC的總線CCB,讀寫通道的比率是二比一。我不知道為什么ARM并沒有做類似的設計來提高效率,也許一比一也是基于手機典型應用統計所得出的最好比例。

至此,我們已經能夠在腦海中想象一對讀寫通道中讀寫操作的傳輸情況了。那多個主從設備組合起來是怎么樣的情況?是不是簡單的疊加?這涉及到了總線設計最核心的問題,拓撲結構。

在ARM當前所有的總線產品里,根據拓撲的不同可以分為三類產品:NIC/CCI系列是交叉矩陣的(Crossbar),CCN系列是基于環狀總線的(Ring),NoC系列是網狀總線(Mesh)。他們各有特點,適合不同場景。交叉矩陣連接的主從設備數量受到限制,但是效率最高,讀寫請求可以在1到2個周期內就直達從設備。如下圖所示,這就是一個5x4的交叉矩陣:


根據我看到的數據,在28納米制程上,5x4的配置下,這個總線的頻率可以跑到300Mhz。如果進一步增加主從對數量,那么由于扇出增加,電容和走線增加,就必須通過插入更多的寄存器來增加頻率。但這樣一來,從主到從的延遲就會相應增加。哪怕就是保持5x3的配置,要想進一步提高到500Mhz,要么使用更好的工藝,16納米我看到的是800Mhz;要么插入2-3級寄存器,這樣,讀寫延時就會達到4-5個總線時鐘周期,請求加完成來回總共需要10個。如果總線和處理器的倍頻比率為1:2,那么僅僅是在總線上花費的時間,就需要至少20個處理器時鐘周期。倍率為4,時間更長,40個時鐘周期。要知道處理器訪問二級緩存的延遲通常也不過10多個處理器周期。當然,可以通過增加OT數量減少平均延遲,可是由于處理器的OT數是有限制的,對于順序處理器,可能也就是1-2個。所以,要達到更高的頻率,支持更多的主從設備,就需要引入環狀總線CCN系列,如下圖:


CCN總線上的每一個節點,除了可以和相鄰的兩個節點通訊之外,還可以附加兩個節點組件,比如處理器組,三級緩存,內存控制器等。在節點內部,還是交叉的,而在節點之間,是環狀的。這樣使得總線頻率在某種程度上擺脫了連接設備數量的限制(當然,還是受布線等因素的影響),在16納米下,可以達到1.2GHz以上。當然,代價就是節點間通訊更大的平均延遲。為了減少平均延遲,可以把經常互相訪問的節點放在靠近的位置。

在有些系統里,要求連接更多的設備,并且,頻率要求更高。此時環狀總線也不夠用了。這時就需要NoC出馬了,如下圖:


這個圖中,剛才提到的交叉矩陣,可以作為整個網絡的某部分。而連接整個系統的,是位于NoC內的節點。每個節點都是一個小型路由,它們之間傳輸的,是異步的包。這樣,就不必維持路由和路由之間很大數量的連線,從而提高頻率,也能支持更多的設備。當然,壞處就是更長的延遲。根據我看到的數據,在16納米上,頻率可以跑到1.5Ghz。并且它所連接每個子模塊之間,頻率和拓撲結構可以是不同的。可以把需要緊密聯系的設備,比如CPU簇,GPU放在一個子網下減少通訊延遲。

不知你有沒有發現,以上每一種總線,都可以在網絡設備上找到原型。從設備直連,到環狀局域網,到交換和路由。他們的拓撲結構是相通的。

在實際的ARM生態系統中,以上三種拓撲結構的使用情況是怎么樣的呢?一般手機芯片上使用交叉矩陣,網絡處理器和服務器上使用環狀網絡,而網狀拓撲也被大量應用于手機芯片。最后一個的原因倒不是手機上需要連接的設備數太多,而是因為AXI/ACE協議都不支持一次傳輸拆分成多個,送給不同的內存控制器。這類傳輸有個名詞,叫做interleaving,交叉訪問。交叉訪問有很多定義,從總線角度看,一種是一個主設備和一個從設備之間的多個讀寫請求之間的完成次序可以打亂,這個我們已經解釋過。第二種是對于一個主設備的一次讀寫請求,把它分別送到多個從設備,并等待完成。為什么需要這種傳輸呢?因為在手機里面,GPU,顯示控制器,視頻控制器對內存帶寬要求是很高的。一個1080p的屏幕,每秒要刷新60次,2百萬個像素,每個像素32比特顏色,再加上8層圖層,就需要4GB/s的數據。而一個1.6GHz傳輸率的DDR3控制器,64位數據,也只能提供10GB/s的的理論帶寬。理論帶寬和實際帶寬由于各種因素的影響,會有很大差別,能做到70%的利用率就不錯了。那處理器怎么辦,其他各類控制器怎么辦?只有增加內存控制器的數量,也就是多放幾個從設備。但是,不能簡單的增加數量。原因是,如果僅僅把不同的物理地址請求發送到不同的內存控制器上, 很可能在某段時間內,所有的物理地址全都是對應于其中某一個,還是不能滿足帶寬要求。解決方法就是,對于任何地址,都拆成多個請求,送到不同的內存控制器。并且這件事最好不是處理器來干(ARM的核都不支持拆分的讀寫),因為只有總線清楚有多少個內存控制器。最好處理器只管發請求,總線把所有請求拆分,并將數據收集完后,統一返回到處理器。

不幸的是,AXI/ACE總線天然就不支持一對多的交叉訪問。原因很簡單,會產生死鎖。想象一下,有兩個主設備,兩個從設備,通過交叉矩陣連接。M1發送兩個讀請求,標志符都是1,先后送到到S1和S2,并等待完成。然后M2也做同樣的事情,標志符都是2,先后送到S2和S1。此時,假設S2發現它如果把返回的數據次序交換一下,會更有效率,于是它就這么做了。但是M1卻不能接收S2的返回數據,因為根據同標志符必須順序完成的原則,它必須先等S1的返回數據。而S1此時也沒法送數據給M2,因為M2也在等待S2返回的數據,死鎖就出現了。解決方法是,任何一個主設備,不能同時發送請求到多個從設備。于是,就沒法實現多內存控制器的交叉訪問了。

而基于包傳輸的網狀總線就沒有這個問題,所有包都是異步的,不存在依賴關系。于是,出現了一家專門做NoC總線的公司Arteris,它們抓住這個機會,把支持多內存控制器同時訪問的總線賣到了大部分做手機和平板芯片的公司。而ARM到目前為止,雖然也有了解決方案Arachne,但是還沒什么實際應用。

現在的中低端手機很多都是8核,而根據ARM的設計,每個處理器組中最多有四個核。這就需要放兩個處理器組在系統中,而他們之間的通訊,包括大小核的實現,就需要用到總線一致性。每個處理器組內部也需要一致性,原理和外部相同,我就不單獨解釋了。使用軟件實可以現一致性,但是那樣需要手動的把緩存內容刷到下一級緩存或者內存,對于一個64字節緩存行的64KB緩存來說,需要1000次刷新,每次就算是100納秒,且OT=4的話,也需要25微秒。對處理器來說這是一個非常長的時間。ARM使用了一個協處理器來做這個事情,這是一個解決方案。為了用硬件解決,ARM引入了幾個支持硬件一致性的總線,下圖是第一代方案CCI400:


CCI400是怎么做到硬件一致性的呢?簡單來說,就是處理器組C1,發一個包含地址信息的特殊讀寫的命令到總線,然后總線把這個命令轉給另一個處理器組C2。C2收到請求后,根據地址逐步查找二級和一級緩存,如果發現自己也有,那么就返回數據或者做相應的緩存一致性操作,這個過程稱作snooping(監聽)。具體的操作我不展開,ARM使用MOESI一致性協議,里面都有定義。在這個過程中,被請求的C2中的處理器核心并不參與這個過程,所有的工作由緩存和總線接口單元BIU等部件來做。為了符合從設備不主動發起請求的定義,需要兩組主從設備,每個處理器組占一個主和一個從。這樣就可以使得兩組處理器互相保持一致性。而有些設備如DMA控制器,它本身不包含緩存,也不需要被別人監聽,所以它只包含從設備,如上圖桔黃色的部分。在ARM的定義中,具有雙向功能的接口被稱作ACE,只能監聽別人的稱作ACE-Lite。它們除了具有AXI的讀寫通道外,還多了個監聽通道,如下圖:


多出來的監聽通道,同樣也有地址(從到主),回應(主到從)和數據(主到從)。每組信號內都包含和AXI一樣的標志符,用來支持多OT。如果在主設備找到數據(稱為命中),那么數據通道會被使用,如果沒有,那告知從設備未命中就可以了,不需要傳數據。由此,對于上文的DMA控制器,它永遠不可能傳數據給別人,所以不需要數據組,這也就是ACE和ACE-Lite的主要區別。

我們還可以看到,在讀通道上有個額外的線RACK,它的用途是,當從設備發送讀操作中的數據給主,它并不知道何時主能收到這個數據,因為我們說過插入寄存器會導致總線延遲變長。萬一這個時候,對同樣的地址A,它需要發送新的監聽請求給主,就會產生一個問題:主是不是已經收到前面發出的地址A的數據了呢?如果沒收到,那它可能會告知監聽未命中。但實際上地址A的數據已經發給主了,它該返回命中。加了這個RACK后,從設備在收到主給的確認RACK之前,不會發送新的監聽請求給主,從而避免了上述問題。寫通道上的WACK同樣如此。

我們之前計算過NIC400上的延遲,有了CCI400的硬件同步,是不是訪問更快了呢?首先,硬件一致性的設計目的不是為了更快,而是軟件更簡單。而實際上,它也未必就快。因為給定一個地址,我們并不知道它是不是在另一組處理器的緩存內,所以無論如何都需要額外的監聽動作。當未命中的時候,這個監聽動作就是多余的,因為我們還是得從內存去抓數據。這個多余的動作就意味著額外的延遲,10加10一共20個總線周期,增長了100%。當然,如果命中,雖然總線總共上也同樣需要10周期,可是從緩存拿數據比從內存拿快些,所以此時是有好處的。綜合起來看,當命中大于一定比例,總體還是受益的。

可從實際的應用程序情況來看,除了特殊設計的程序,通常命中不會大于10%。所以我們必須想一些辦法來提高性能。一個辦法就是,無論結果是命中還是未命中,都讓總線先去內存抓數據。等到數據抓回來,我們也已經知道監聽的結果,再決定把哪邊的數據送回去。這個辦法的缺點,功耗增大,因為無論如何都要去讀內存。第二,在內存訪問本身就很頻繁的時候,這么做會降低總體性能。

另外一個方法就是,如果預先知道數據不在別的處理器組緩存,那就可以讓發出讀寫請求的主設備,特別注明不需要監聽,總線就不會去做這個動作。這個方法的缺點就是需要軟件干預,雖然代價并不大,分配操作系統頁面的時候設下寄存器就可以,可是對程序員的要求就高了,必須充分理解目標系統。

CCI總線的設計者們還使用了一個新的方法來提高性能。他們在總線里加入一個監聽過濾器(Snoop Filter)。這其實也是一塊緩存(TAG RAM),把它所有處理器組內部一級二級緩存的狀態信息都放在里面。數據緩存(DATA RAM)是不需要的,因為它只負責查看命中與否。這樣做的好處就是,監聽請求不必發到各組處理器,在總線內部就可以完成,省了將近10個總線周期,功耗也優于訪問內存。它的代價是增加了一點緩存(一二級緩存的10%左右)。并且,如果監聽過濾器里的某行緩存被替換(比如寫監聽命中,需要無效化(Invalidate)緩存行,MOESI協議定義),同樣的操作必須在對應處理器組的一二級緩存也做一遍,以保持一致性。這個過程被稱作反向無效化,它添加了額外的負擔,因為在更新一二級緩存的時候,監聽過濾器本身也需要追蹤更新的狀態,否則就無法保證一致性。幸好,在實際測試中發現,這樣的操作并不頻繁,一般不超過5%的可能性。當然,有些測試代碼會頻繁的觸發這個操作,此時監聽過濾器的缺點就顯出來了。

以上的想法在CCI500中實現,示意圖如下:


在經過實際性能測試后,CCI設計人員發現總線瓶頸移到了訪問這個監聽過濾器的窗口,這個瓶頸其實掩蓋了上文的反向無效化問題,它總是先于反向無效化被發現。把這個窗口加大后,又在做測試時發現,如果每個主從接口都拼命灌數據(主從設備都是OT無限大,并且一主多從有前后交叉),在主從設備接口處經常出現等待的情況,也就是說,明明數據已經準備好了,設備卻來不及接收。于是,又增加了一些緩沖來存放這些數據。其代價是稍大的面積和功耗。請注意,這個緩沖和存放OT的狀態緩沖并不重復。

根據實測數據,在做完所有改進后,新的總線帶寬性能同頻增加50%以上。而頻率可以從500Mhz提高到800Mhz。當然這個結果只是一個模糊的統計,如果我們考慮處理器和內存控制器OT數量有限,被監聽數據的百分比有不同,命中率有變化,監聽過濾器大小有變化,那肯定會得到不同的結果。

作為一個手機芯片領域的總線,需要支持傳輸的多優先級也就是QoS。因為顯示控制器等設備對實時性要求高,而處理器組的請求也很重要。支持QoS本身沒什么困難,只需要把各類請求放在一個緩沖,根據優先級傳送即可。但是在實際測試中,發現如果各個設備的請求太多太頻繁,緩沖很快就被填滿,從而阻塞了新的高優先級請求。為了解決這個問題,又把緩沖按優先級分組,每一組只接受同等或更高優先級的請求,這樣就避免了阻塞。這些方法和網絡防擁塞設計如出一轍。

此外,為了支持多時鐘和電源域,使得每一組處理器都可以動態調節電壓和時鐘頻率,CCI系列總線還可以搭配異步橋ADB(Asynchronous Domain Bridge)。它對于性能有一定的影響,在倍頻是2的時候,信號穿過它需要一個額外的總線時鐘周期。如果是3,那更大些。在對于訪問延遲有嚴格要求的系統里面,這個時間不可忽略。如果不需要額外的電源域,我們可以不用它,省一點延遲。NIC/CCI/CCN/NoC總線天然就支持異步傳輸。

和一致性相關的是訪存次序和鎖,有些程序員把它們搞混了。假設我們有兩個核C0和C1。當C0和C1分別訪問同一地址A0,無論何時,都要保證看到的數據一致,這是一致性。然后在C0里面,它需要保證先后訪問地址A0和A1,這稱作訪問次序,此時不需要鎖,只需要壁壘指令。如果C0和C1上同時運行兩個線程,當C0和C1分別訪問同一地址A0,并且需要保證C0和C1按照先后次序訪問A0,這就需要鎖。所以,單單壁壘指令只能保證單核單線程的次序,多核多線程的次序需要鎖。而一致性保證了在做鎖操作時,同一變量在緩存或者內存的不同拷貝,都是一致的。

ARM的壁壘指令分為強壁壘DSB和弱壁壘DMB。我們知道讀寫指令會被分成請求和完成兩部分,強壁壘要求上一條讀寫指令完成后才能開始下一個請求,弱壁壘則只要求上一條讀寫指令發出請求后就可以繼續下一條讀寫指令的請求,且只能保證,它之后的讀寫指令完成時,它之前的讀寫指令肯定已經完成了。顯然,后一種情況性能更高,OT>1。但測試表明,多個處理器組的情況下,壁壘指令如果傳輸到總線,只能另整體系統性能降低,因此在新的ARM總線中是不支持壁壘的,必須在芯片設計階段,通過配置選項告訴處理器自己處理壁壘指令,不要送到總線。但這并不影響程序中的壁壘指令,處理器會在總線之前把它過濾掉。

具體到CCI總線上,壁壘機制是怎么實現的呢?首先,壁壘和讀寫一樣,也是使用讀寫通道的,只不過它地址總是0,且沒有數據。標志符也是有的,此外還有額外的2根線BAR0/1,表明本次傳輸是不是壁壘,是哪種壁壘。他是怎么傳輸的呢?先看弱壁壘,如下圖:


Master0寫了一個數據data,然后又發了弱壁壘請求。CCI和主設備接口的地方,一旦收到壁壘請求,立刻做兩件事,第一,給Master0發送壁壘響應;第二,把壁壘請求發到和從設備Slave0/1的接口。Slave1接口很快給了壁壘響應,因為它那里沒有任何未完成傳輸。而Slave0接口不能給壁壘響應,因為data還沒發到從設備,在這條路徑上的壁壘請求必須等待,并且不能和data的寫請求交換次序。這并不能阻撓Master0發出第二個數據,因為它已經收到它的所有下級(Master0接口)的壁壘回應,所以它又寫出了flag。如下圖:


此時,flag在Master0接口中等待它的所有下一級接口的壁壘響應。而data達到了Slave0后,壁壘響應走到了Master0接口,flag繼續往下走。此時,我們不必擔心data沒有到slave0,因為那之前,來自Slave0接口的壁壘響應不會被送到Master0接口。這樣,就做到了弱壁壘的次序保證,并且在壁壘指令完成前,flag的請求就可以被送出來。

對于強壁壘指令來說,僅僅有一個區別,就是Master0接口在收到所有下一級接口的壁壘響應前,它不會發送自身的壁壘響應給Master0。這就造成flag發不出來,直到壁壘指令完成。如下圖:


這樣,就保證了強壁壘完成后,下一條讀寫指令才能發出請求。此時,強壁壘前的讀寫指令肯定是完成了的。

另外需要特別注意的是,ARM的弱壁壘只是針對顯式數據訪問的次序。什么叫顯式數據訪問?讀寫指令,緩存,TLB操作都算。相對的,什么是隱式數據訪問?在處理器那一節,我們提到,處理器會有推測執行,預先執行讀寫指令;緩存也有硬件預取機制,根據之前數據訪問的規律,自動抓取可能用到的緩存行。這些都不包含在當前指令中,弱壁壘對他們無能為力。因此,切記,弱壁壘只能保證你給出的指令次序,并不能保證在它們之間沒有別的模塊去訪問內存,哪怕這個模塊來自于同一個核。

簡單來說,如果只需要保證讀寫次序,用弱壁壘;如果需要某個讀寫指令完成才能做別的事情,用強壁壘。以上都是針對普通內存類型。當我們把類型設成設備時,自動保證強壁壘。

我們提到,壁壘只是針對單核。在多核多線程時,哪怕使用了壁壘指令,也沒法保證讀寫的原子性。解決辦法有兩個,一個是軟件鎖,一個是原子操作。原子操作我看到過的有兩種,一種是總線收到請求時,直接封掉整個總線,同時只有一個核能訪問。這樣效率很低。還有個方法是把鎖的請求發送到對端設備,比如內存控制器,讓他禁止別的核的訪問,而總線依然可以運行,這樣效率就高不少,我看到過的數據,減少10倍時間。但是AXI/ACE協議不支持原子操作。所以需要用到軟件鎖。

軟件鎖中有個自旋鎖,能用一個ARM硬件機制exclusive access來實現。當使用特殊指令對一個地址寫入值,相應緩存行上會做一個特殊標記,表示還沒有別的核去寫這行緩存。然后下條指令讀這個行,如果標記沒變,說明寫和讀之間沒有人打擾,那么就拿到鎖了。如果變了,那么回到寫的過程重新獲取鎖。由于緩存一致性,這個鎖變量可以被多個核與線程使用。當然,過程中還是需要壁壘指令來保證次序。

對于普通內存,還會產生一個問題,就是讀寫操作可能會經過緩存,你不知道數據是否最終寫到了內存中。通常我們使用clean操作來刷緩存。但是刷緩存本身是個模糊的概念,緩存存在多級,有些在處理器內,有些在總線之后,到底刷到哪里算是終結呢?還有,為了保證一致性,刷的時候是不是需要通知別的處理器和緩存?為了把這些問題規范化,ARM引入了Point of Unification/Coherency,Inner/Outer Cacheable和System/Inner/Outer/Non Shareable的概念。


PoU是指,對于某一個核Master,附屬于它的指令,數據緩存和TLB,如果在某一點上,它們能看到一致的內容,那么這個點就是PoU。如上圖右側,MasterB包含了指令,數據緩存和TLB,還有二級緩存。指令,數據緩存和TLB的數據交換都建立在二級緩存,此時二級緩存就成了PoU。而對于上圖左側的MasterA,由于沒有二級緩存,指令,數據緩存和TLB的數據交換都建立在內存上,所以內存成了PoU。

PoC是指,對于系統中所有Master(注意是所有的,而不是某個核),如果存在某個點,它們的指令,數據緩存和TLB能看到同一個源,那么這個點就是PoC。如上圖右側,二級緩存此時不能作為PoC,因為MasterB在它的范圍之外,直接訪問內存。所以此時內存是PoC。在左圖,由于只有一個Master,所以內存是PoC。

再進一步,如果我們把右圖的內存換成三級緩存,把內存接在三級緩存后面,那PoC就變成了三級緩存。

有了這兩個定義,我們就可以指定緩存操作和讀寫指令到底發到哪個范圍。比如在下圖的系統上,有兩組A15,每組四個核,組內含二級緩存。系統的PoC在內存,而A15的PoU分別在它們自己組內的二級緩存上。在某個A15上執行Clean清指令緩存,范圍指定PoU。顯然,所有四個A15的一級指令緩存都會被清掉。那么其他的各個Master是不是受影響?那就要用到Inner/Outer/Non Shareable。


Shareable的很容易理解,就是某個地址的可能被別人使用。我們在定義某個頁屬性的時候會給出。Non-Shareable就是只有自己使用。當然,定義成Non-Shareable不表示別人不可以用。某個地址A如果在核1上映射成Shareable,核2映射成Non-Shareable,并且兩個核通過CCI400相連。那么核1在訪問A的時候,總線會去監聽核2,而核2訪問A的時候,總線直接訪問內存,不監聽核1。顯然這種做法是錯誤的。

對于Inner和Outer Shareable,有個簡單的的理解,就是數據共享屬于Outer Shareable;指令和TLB等只讀的共享,屬于Inner Shareable,也屬于Outer Shareable。在上圖的系統中,A15和A7共享指令,它們之間是Inner Shareable。當然,他們數據也是共享的,所以也是Outer Shareable。而DMA, Mali和處理器之間,就只有數據是共享的,所以不是Inner Shareable,而是Outer Shareable。

我們在集成A15/A7等ARM處理器到SoC系統的時候,是需要設置Inner和Outer Shareable屬性的。設了Inner,就表示指令操作和指令緩存,TLB等只讀的訪問會被送到總線。設了Outer,就表示數據操作,數據緩存的訪問會被送到總線。且如果設了Outer,必須設置Inner。反之不必。正常情況是這兩個都設上。

說了這么多概念,你可能會想這有什么用處?回到上文的Clean指令,PoU使得四個A7的指令緩存中對應的行都被清掉。由于是指令緩存操作,Inner Shareable屬性使得這個操作被擴散到總線。而CCI400總線會把這個操作廣播到所有可能接受的口上。ACE口首當其沖,所以四個A15也會清它們對應的指令緩存行。對于Mali和DMA控制器,他們是ACE-Lite,本不必清。但是請注意它們還連了DVM接口,專門負責收發緩存維護指令,所以它們的對應指令緩存行也會被清。不過事實上,它們沒有對應的指令緩存,所以只是接受請求,并沒有任何動作。

你可能又會想,我們要這么復雜的定義有什么用?用處是,精確定義緩存維護和讀寫指令的范圍。如果我們改變一下,總線不支持Inner/Outer Shareable的廣播,那么就只有A7處理器組會清緩存行。顯然這么做在邏輯上不對,因為A7/A15可能運行同一行代碼。并且,我們之前提到過,如果把讀寫屬性設成Non-Shareable,那么總線就不會去監聽其他主,減少訪問延遲,這樣可以非常靈活的提高性能。

再回到前面的問題,刷某行緩存的時候,怎么知道數據是否最終寫到了內存中?對不起,非常抱歉,還是沒法知道。你只能做到把范圍設成PoC。如果PoC是三級緩存,那么最終刷到三級緩存,如果是內存,那就刷到內存。不過這在邏輯上沒有錯,按照定義,所有Master如果都在三級緩存統一數據的話,那就不必刷到內存了。

簡而言之,PoU/PoC定義了指令和命令的所能抵達的緩存或內存,在到達了指定地點后,Inner/Outer Shareable定義了它們被廣播的范圍。

再來看看Inner/Outer Cacheable,這個就簡單了,僅僅是一個緩存的前后界定。一級緩存一定是Inner Cacheable的,而最外層的緩存,比如三級,可能是Outer Cacheable,也可能是Inner Cacheable。他們的用處在于,在定義內存頁屬性的時候,可以在不同層的緩存上有不同的處理策略。

在ARM的處理器和總線手冊中,還會出現幾個PoS(Point of Serialization)。它的意思是,在總線中,所有主設備來的各類請求,都必須由控制器檢查地址和類型,如果存在競爭,那就會進行串行化。這個概念和其他幾個沒什么關系。

縱觀整個總線的變化,還有一個核心問題并沒有被提及,那就是動態規劃re-scheduling與合并Merging。處理器和內存控制器中都有同樣的模塊,專門負責把所有的傳輸進行分類,合并,調整次序,甚至預測未來可能接收到的讀寫請求地址,以實現最大效率的傳輸。這個問題在分析性能時會重新提到。但是在總線這層,軟件能起的影響很小。清楚了總線延遲和OT最大的好處是可以和性能計數器的統計結果精確匹配,看看是不是達到預期了。

本文轉自:https://www.zhihu.com/people/zhong-zou-ci-jian-lu

本文內容僅代表作者觀點,不代表平臺觀點。
如有任何異議,歡迎聯系我們。

路科驗證 專注于數字芯片驗證的系統思想和前沿工程領域。路桑是Intel資深驗證專家,主持驗證架構規劃和方法學研究,擔任過億門級通信芯片的驗證經理角色。在工程領域之外,他在西安電子科技大學和西安交通大學客座講授芯片驗證課程。著有書籍《芯片驗證漫游指南》。
評論
  • 做藍牙音箱的工程師大概都碰過這個局面。產品要連手機放歌,要本地播開機提示音和按鍵音,還要接 App 做配網和狀態上報。三件事拆開,早先的常規做法是音頻藍牙一顆料、數傳藍牙一顆料、本地播放再掛一顆小 MCU 加一片 Flash。板子越畫越大,BOM 越算越貴,待機電流和固件工作量也跟著漲。WT2605C 出來以后,這套需求可以集成到一顆芯片,就是 WT2605C-32N,該芯片采用QFN32 封裝,4×4 毫米,把音頻藍牙、BLE 數傳和 MP3 本地播放三樣全包了。對藍牙音箱來說,最實在的好處就
    唯創知音語音芯片 2026-08-06 15:14 302瀏覽
  • 摘要防爆自控系統同時布設本安信號、工業總線、動力供電三類線路,僅依靠標識標牌管控插接極易出現人為錯插問題,高壓動力回路竄入本安弱電回路會突破安全柵限能標準,產生點火風險。依托 A、D、K 標準化機械防呆編碼體系,搭配護套顏色區分管理,適配 3 針 3 孔免焊接冷壓增安型防爆航插、5PIN 總線防爆航空插頭、8 芯焊接防爆法蘭插座的選型使用,從物理結構層面杜絕防爆接近開關連接器、防爆傳感器航插接頭混用插接問題,補齊防爆系統被動安全防護體系。關鍵詞圓形防爆連接器,防呆編碼防爆航插,防爆航空插頭,防爆
    kyfbest科迎法電氣 2026-07-31 18:29 418瀏覽
  • 導語在現代高速數字電路設計中,信號的完整性已不僅是理想波形推演,而是一場與物理非理想特性正面博弈的工程實踐。濾波器芯片作為凈化傳輸鏈路的關鍵屏障,其核心挑戰在于:能否有效識別并濾除那些隱匿在電平跳變過程中的亞納秒級瞬態脈沖干擾,這類干擾持續極短,卻足以在高速鏈路中引發誤觸發。然而,傳統函數發生器受限于采樣率與邊沿速率,根本無法忠實復現如此狹窄且陡峭的異常波形。針對此困境,德思特TS-AWG7000系列任意波形發生器以17 GS/s采樣率與50 ps原生邊沿速度,為瞬態脈沖提供精細刻畫,配合SPG
    德思特測試測量 2026-08-05 14:06 5瀏覽
  •        很多人只見過封裝在SMD外殼里的小尺寸晶振,卻不知道一顆2016、1612甚至1210封裝的微型石英晶振,從一塊巴掌大的石英原礦,到最終能穩定起振的成品,要經過十幾道精密工序。它內部的石英晶片厚度最薄不到20微米,比普通A4紙的1/5還薄,整個生產過程里哪怕0.1微米的誤差,都會直接廢掉整批產品,這也是小尺寸晶振過去長期依賴進口,國內廠商花了十幾年才啃下量產硬骨頭的核心原因。1. 原石定向切割:0.01度的角度誤差都不能有小尺寸晶振的第一步,
    TKD泰晶科技 2026-08-07 08:43 408瀏覽
  • 在物聯網從“萬物互聯”邁向“萬物智聯”的進程中,LTE Cat.1憑借其在速率、成本與網絡覆蓋之間的完美平衡,正成為中低速物聯網市場的絕對主力。隨著2G/3G網絡的逐步退網以及新國標對終端設備智能化、定位功能的強制要求,Cat.1模組迎來了爆發式的增長窗口。在這一關鍵節點,基于華為海思Hi2131芯片設計的LTE Cat.1模組,憑借其在能效、射頻、架構及物理規格上的底層創新,成功打破了“高性能必高功耗”的傳統魔咒,為行業提供了極具競爭力的連接最優解。核心技術優勢:重塑Cat.1能效與連接標桿海
    用戶1778981989717 2026-08-05 21:04 177瀏覽
  • ?摘要:低價大流量卡正全面退市,政策收緊已成定局。面對傳統號卡的不確定性,隨身WiFi憑借穩定連接、多設備共享、獨立設備和靈活套餐等優勢,成為務實可靠的備選方案。1、流量卡黃金時代要結束了通信行業正迎來一場前所未有的“地震式”調整——曾讓無數用戶追捧的低價大流量卡,正在全速退出各大平臺。這早已不是一次普通的競合,而是一場趨勢性的行業洗牌。回望過去,19元200G的神卡,那時真是“睡著都能笑醒”,便宜到不敢相信,爽到忍不住炫耀。那些日子,好像隨便刷、隨便看,流量自由觸手可及。可如今,回頭再看,那種
    愛上電路設計 2026-08-03 10:21 128906瀏覽
  •                                                                        
    廣州鐵金剛 2026-08-06 17:44 145033瀏覽
  • 摘要在防爆電氣設計中,只參照芯數選型而忽略額定載流量,長期滿負荷運行會出現插頭發熱、接觸面氧化、IP67 密封受熱老化等問題。結合常用 3 針 3 孔、4 芯、5PIN、8PIN 圓形防爆連接器,制作分級電流參數對照表,區分冷壓免焊接、焊接兩種接線結構的安全載流數值,設置合理電流冗余系數,搭配使用環境修正參數,規范防爆接近開關連接器、防爆法蘭插座的選型計算方式。關鍵詞圓形防爆連接器,載流參數表,防爆法蘭插座,防爆端子接頭,IP67 防爆防水接插件1 產品概述圓形防爆連接器觸點載流能力由插針直徑、
    kyfbest科迎法電氣 2026-08-03 09:18 128659瀏覽
  • 產品使用18V供電,配套4串鋰離子電池,需要設計一個充電器。因為輸入18V,電池最高 16.8V,壓差僅 1.2V。因為壓差太小。使用開關型的充電控制芯片不穩定。嘗試自行設計一個。整體采用分立三極管 + TL431架構,分4個功能單元:使能控制回路、限流環路、TL431 精密恒壓反饋環路、PNP 功率管主功率輸出回路;實現完整鋰電池充電邏輯。使能控制回路按鍵按下:5V 電壓經 R12 (2kΩ) 送入 NPN 管 Q3 基極,Q3 飽和導通,對地拉低 R1、R2 組成的分壓控制節點電位;該節點直
    southcreek 2026-08-07 13:45 354瀏覽
  • 智能寵物用品這幾年快速普及,自動清理幾乎成了智能貓砂盆的標配。貓咪用完離場,設備自動翻轉清理,養寵家庭省去了每天彎腰清理的麻煩。但自動清理的第一步,是先準確判斷貓到底在不在盆里。這個看似簡單的問題,在小空間里并不容易做好。近場檢測的痛點:距離太遠反而誤事貓砂盆內部空間有限。如果傳感器的檢測距離設得偏大,盆外路過的貓、人甚至物品都會被誤判為貓在盆內,結果該清理時不清理、不該清理時亂清理,體驗直接崩壞。這類產品的核心訴求其實就一句話:近距離、小范圍、精準識別,不能有半點誤判。常規感應方案常因檢測距離
    唯創知音語音芯片 2026-07-31 16:51 313瀏覽
  •     長期專注WiFi領域,也算是行業老兵了!同行閑聊中,時不時能提起我和我們!從疫情起,國產替代風生水起,起起落落,大浪淘沙,生存下來的都是強者!    WiFi模塊應用廣泛,對于高端市場和特定市場,要求WIFI模塊需要過CE/FCC之類的認證,也就是說沒有認證的模塊,不具備導入產品設計.接下來就和大家聊聊認證模塊選型參考!    WIFi模塊硬件方面主要考慮以下九點特性:    1
    納拓科技 2026-07-31 17:56 279瀏覽
  • 在EMC測試過程中,傳導發射(Conducted Emission,CE)超標是工程師最常遇到的問題之一。更令人頭疼的是,同樣的超標曲線背后,可能對應著完全不同的干擾機理:有的是差模噪聲沿電源回路傳播,有的是共模電流通過寄生路徑耦合,還有些問題甚至并非來自電源本身,而是負載、電纜布局或接地結構引起的連鎖反應。 · 150kHz~1MHz 超標:多為差模噪聲為主,干擾沿火線-零線回路傳輸。 · 1MHz~30MHz 超標:通常共模噪聲占主導,干擾通過火線/零線對地回路傳播。 如果條件允許,用電流探
    譽磁電磁兼容EMC 2026-07-31 18:45 518瀏覽
  • 在前六期中,我們已經分別討論了 CRA 的適用范圍、整體影響、漏洞通報義務、風險評估與技術文檔證據鏈、第三方組件與 SBOM 供應鏈治理,以及產品上市后的支持期、安全更新、用戶說明和終止支持管理。到這里,企業已經能夠回答幾個核心問題:產品是否落入 CRA 適用范圍,產品由哪些組件構成,企業如何證明自己在設計、開發和上市前采取了必要的安全措施,以及產品上市后如何持續維護和安全下線。但對于真正準備落地 CRA 合規的企業來說,還有一個更現實的問題:CRA 的法規條文相對原則化,企業應當如何把“網絡安
    虹科云科技 2026-08-03 16:51 193961瀏覽
  • 文:杜杰編輯:侯煜當地時間7月28日,美國特朗普政府落地最新科技封鎖政策,美國聯邦通信委員會(FCC)正式更新《受管制清單》,新增兩大類設備——境外生產的先進機器人設備、境外生產的聯網電力逆變器。FCC在官方情況說明書中明確,該類境外制造產品,“會對美國國家安全或美國民眾的人身安全構成無法承受的風險”。本次新規設置明確豁免機制:經美國國防部(DoW)、電力逆變器品類經美國國土安全部(DHS)審核并授予“有條件批準”,認定對應設備品類不存在重大安全風險,即可獲得準入豁免。同時政策嚴格執行新老劃斷原
    華爾街科技眼 2026-08-03 21:28 345瀏覽
我要評論
0
點擊右上角,分享到朋友圈 我知道啦
請使用瀏覽器分享功能 我知道啦
主站蜘蛛池模板: 辣妈庄园| 雪中悍刀行2第二部在线播放| 《和部长出差的日子》免费看| 电影雷霆战警| 夏天协奏曲| 电影我的游泳女教练| 一泊二日| 我是静宝呀vlog| 游击英雄| 阳光姐妹淘高清| 《特殊游泳集体》免费观看下拉式| 五号特工组1全集| 终极一班30| 心肝宝贝任贤齐| 《法国空乘5》电影| 女超人满天星无删减麦乐迪版种子| 无名卫士电视剧| 妻子和讨厌的部长出差| 小姨子在线免费观看| 魔术师与巨人| 《保险的女销售》| 一脸嫌弃的表情给你看胖次| 电影老板的女儿满天星| 拯救大兵瑞恩| 意大利《女军医》免费| 安娜情欲史2| 滚拉拉的枪| 巨蜥斗巨蟒| 生逢灿烂的日子 电视剧| 女超人满天星无删减麦乐迪版| 米兰大坏蛋1分47秒| 《落魄贵族琉璃川》免费观看| 玉女聊斋电影全集| 我想爱着你| 龙王传说3第四季| 美女四肢被绑在床扒衣| 天使的契约2罗丽·星克莱尔 | 音乐僵尸国语| 神圣使命电视剧全集24| 为争一口气短剧在线观看| 品味人生无憾坎贝奇电影在线观看 | 乘风踏浪 电视剧| 李采潭特殊的治疗2| 怪兽训练营在线观看| 时间静止器 在线观看| 女儿的朋友7在观完整有限中字| 电视剧理想之城在线观看| 《丈夫不在家维修工人上门维修》| 真心英雄原唱| 七剑电影| G点在线观看| 惊天魔盗团2资源| 安宅拉拉电影在线观看| 需要一半留下一半打一字谜| 人类血栓中首次发现微塑料| 跨国阴谋| 女儿的老公中字ID| 老板办公室狂躁秘书在线观看| 大胸女友在线| 潘多拉之镜1983满天星版全集观看| 《要听爸爸的话》第4集| 聊斋艳谈百度影音| 梦幻西游五庄观副本| 侦探成旭3| 朝鲜战争 王树增| 合租屋交换做爰| 安吉拉主演的《透视》| 苏琪电影全集| 麻花传剧无痕mv免费观看天美| 韩国电影年轻的继母| 酒店激战3免费版| 前途海量电影免费观看完整版| 一路向前1-40集免费观看| 杨三姐告状评剧全剧| 阅兵式2015高清完整版| 天后手册短剧免费观看| 美丽贺岁| 三家购物| 美国海战电影| 成人版巜女超人H版| 《满江红》在线观看| 《激战5》李丽珍| 仙逆113| 东京塔之越南俘虏营| 你是我兄弟2| 凌云壮志女版(法国)高清免费| 悠长假期日剧| 湾岸midnight| 吞噬星空第二季1集| 蜡笔小新全集播放| 日剧一吻定情2013| 农村歌舞团露骨表演| 两个女人 qvod| 《高压监狱2》HD无删减| 罗莉的时间| 碧血剑 江华| 三年成全在线观看免费全集高清完整| 电影野性的呼唤巴克犬完整版| 彼女豆浆| 小小电影免费观看高清版| 太极张三丰李连杰| 月代头布丁| 新金瓶梅3d高清完整版| 新水浒传27| 悬赏粤语| 电影《官人我要》在线观看| 傻女闯艺界| 仁医11| 四周恋人第二季| 冲浪企鹅百度影音| 少年派免费观看| 宜州市| 灵魂摆渡 电视剧| 新金瓶梅电视剧免费观看全集完整版1986 | 价值16万手镯被扔进垃圾桶| 一起愁愁30全集免费播放| 狙击手拉苏尔电影免费观看完整版 | 回复术士的重来人生2在线观看免费| 米泉市| 忍者神龟87版| 隐形的帽子| 撒旦有几个女儿| 电影《姐妹牙医》正片| 女士的品格电视剧免费| 史诗电影| 莫妮卡《爱我几何》免费版是真演吗 | 《极乐宝鉴2》叶子楣在线观看| 怪你过分美丽| 伊拉克被迫暂停人民币结算| 布兰迪洛夫电影《军事不当行为》英 | 法国女版《壮志凌云》在线观看| 郝蕾《颐和》片段高清| 《法国空乘5》满天星| 宇宙天魔完整版国语在线观看高清| 狂飙电视剧40集在线观看免费狂飙| 庆余年第二季免费观看在线播放| 高清朱音落语未删减| 勿忘仇敌| 真相电视剧在线观看完整版免费| 四虎院影亚洲永久| 狂飙40集在线观看免费| 乌拉特中旗| 妖精的尾巴51| 金银1-5hd普通版| 威卡兰特的日记| 偿还债务妻子5免费观看电视剧| 母与子的说说| 法国空乘5免费在线观看| 第九禁区| 妻子的陷阱大结局| 盛李豪全红婵合体打羽毛球| 超级教师第三季完整版| 咏春电影| 《新来的私人瑜伽教练》完整版| 生死狙击百度影音| 跟部长出差的日子| 比悲伤更悲伤的故事| 羽生稀在线观看| 黑执事08| 三叉戟2大结局| 督错了洞| 高清《母爱食堂》电影| 我怀了你的孩子电视剧免费观看| 郭有才爆火后菏泽南站网红扎堆直播| 黑帮大佬和我的的356日| 致美丽的你第3集| 女销售靠睡觉卖房子电视剧叫什么| 腓尼基计划未删减| 卖房子的韩国电影 | 怎敌她千娇百媚在线播放| 铁梨花全集下载| 12138影院| 九五至尊粤语| 青苹果在线观看| 甲方乙方| 东京爱情故事国语版| 酒店1-75集| 光荣mv| 《overflower》动漫第一季免费观看全集| 青楼十2房在线观看| 女超人麦乐迪未删减版| 枭起青壤免费观看| 漂亮小瘦子| 初恋这件小事完整版| 古墓丽影法国版女版在线观看| 电影窗外| 按摩三少妇| 异形:夺命舰 电影| 母与子国语免费观看大全电视剧武则 | 法证先锋5粤语版免费观看 | 酒店实生3满天星法版免费观看| 独臂刀王| 地下室骑马| 摔跤在线| 暴躁老姐免费观看40集电视剧 | 南京将军山碎尸案| 昭平县| 西门庆潘金莲电影版| 私人女性监狱| 父影之下未删减| 日本空姐2019年上映时间| 哪吒闹海免费| 木下檀檀子完整版免费看| 乳品分类| 和喜玉兰免费观看全集播放| 护宝风云电视剧全集在线观看免费| 新有菜电影免费观看| 东北往事之黑道风云20年23集| 美容院:待遇服务,保姆| 新少年包拯电视剧免费观看| 《女律师替丈夫还钱》电影免费观看| 儿童歌曲快乐的节日| 《卖保险的女销售》2| 摸金爵之卧龙诡阵电影| 妈妈爱上儿子同学韩剧| 喀秋莎行动电影完整版免费观看| 大江大河第3部53| 纯白交响曲动漫免费观看| 《牙医姊妹》未删减版| 看电影免费观看完整版| 换脸明星电影完整版在线观看 | 《越南暴行2》| 西安地铁保安女子完整版| 黄金仓库在线观看| 海魂电视剧| 插曲30集全集免费播放在线观看 | 法国女仆在线播放| 央视前主持李小萌回应被家暴| 四个贵妇精油按摩在线观看| 我的漂亮女房东完整版BD| 侄女的开发日期| 宫锁沉香 电影| 下属的妻子电影| 命中婚劫未删减| 黑鬼寄宿无删减版在线观看网站| 千里难寻 电视剧| 日本伦理片女律师的多落| 迟志强专辑| 《美丽屋景1| 活在当下 电影| 电影《女超人麦迪娜》免费观看高清 | 虎贲万岁| 爱情几何完整版| 喜爱夜蒲免费在线观看| 私人航空法国成人电影| 奥斯汀里弗斯| 侵犯高傲女教师在线观看| 可爱的妹妹| Overflower在线观看第一季| 驾驶员找工作| 妻子被黑人在丈夫面前被欺负电影| 李连杰电影全集高清| 萨迪1980满天星免费播放| 一生一世白鹿在线观看免费完整版 | 屯昌县| 任达华电影全集国语高清| 月光宝盒免费观看全集| 拿开你的手| 百年党史| 路一直都在mv| 爱人电影免费观看韩国| 灵魂冲浪| 八匹狼在线电影| 消失的十一层 电视剧| 海上繁花全集46集哪里可以看| 一起愁愁在线观看完整版| 星际之门亚特兰蒂斯第五季 | 乡村爱情进行曲免费观看| 暴劫倾情电影| 死亡体验馆| 《人体美食》完整版在线观看| 左右剧情| 精灵幻想| 甄嬛传奇艺网| 七种贱粤语高清免费观看| 插曲的痛60集全剧情介绍 | 后营露营第二季无增减| 禁室培欲电影| 凯帕克主演的电影在线观看 | 婴儿长痱子怎么办| 密屋陌路| 婚情深深几许短剧免费观看| 杨思梅金瓶敏第1一5集在线观看| 雪中悍刀行泄露版在线观看| 1982年邵氏版《武松》| 军事不当行为电影完整版免费观看 | 年轻的母亲1在完整有限中字| 孽欲狐鬼| 相叒游戏| 致命弯道4高清全集| 伊波拉病毒无删减免费观看完整国语版| 年轻气盛| 美丽的小樱桃2美剧免费观看全集高清版| 花宵道中在线免费观看| 有菜在线观看| 国王在冬眠免费观看| 坎贝奇电影《无憾》在线观看中文| 维修工的艳遇韩国| 家庭矛盾麦乐迪| 向往的生活第2季| 恋爱先生电视剧全集免费版观看| 偷情宝鉴| 斗罗大陆免费完整版动漫| 可疑的美发店| 海边女人| 洒店1一80集免费观看| 大奉打更人电视剧完整版免费| 《急诊护士在线观看| 新济公活佛下部| 女仆小姐的贪吃日常全集观看| 《瓜达卢佩的玫瑰》免费观看 | 上锁的房间在线观看免费高清| 浙江一村庄突然涌现超多寻宝者| 台湾贝贝| 越野e族二手车| 好姑娘2免费高清完整版在线观看中文 | 珠光宝气| 战狼6免费观看全部免费播放| 高清《千与千寻》普通话版| 商务旅行戴绿色帽子电影| 《妻子的背叛》全集观看| 木下檀檩子电影在线观看| 隐形战队国语电视剧免费观看| 古墓丽影山寨版满天星免费观看| 婚前试爱国语版| 三年成全免费观看在线| 暗潮危机电影完整版在线观看| 惊天大劫案电视剧全集在线观看| 成人版影片| 情债电影在线观看| 半夜被C醒是一种什么体验| 爱不爱都是错| 3v1三人一次性体检视频| 黄金瞳在线观看免费全集高清| 美国十次| 恶魔恋人第2季| 无憾人生无删减版| 雨夜惊魂| 笑傲江湖2025| 满清十大酷形| 乱点鸳鸯谱| 苍老师10部必看经典电影| 银瓶梅电视剧全集免费观看| 捷克街头搭讪系列完整版免费观看| 瓜达卢佩的玫瑰无删版 | 电影韩国密爱| 爱情残酷物语| 《他过分野》短剧全集完整免费| 女子护卫队1973电影在线观看完整免费高清原声满天星 | 需要爸爸播种免费看| 印度电影爱经2013版| mds-807| 枫与铃结局第二季免费| 孙红雷20集全免费观看| 苏文茂相声| 《新无主之花》电影| 苍月战士苍月免费观看| 不怕开水烫| xl司令在线观看全集免费动漫| 回到野人身边| 千面女郎| 快乐星球第一部全集| 怒晴湘西电视剧| 部长出差的日子完整版| 高清《爱上朋友的母亲》电影| 姐妹牙医在线观看高清免费版| 炼气十万年短剧免费观看 | 电视剧北平往事| 慈禧的秘密生活下载| 《瑜伽的狂热》完整版在线观看| 阿虎视频免费观看| 朴亚珍《隐身帽子》原版| 宅宅萝卜| 弹丸论破op| 爱的定义泰剧| 短剧《萌孙出击》免费播放| 电影《牙医姐妹》1986年在线| 贺军翔主演电视剧| 杨思敏1一5集国语版电视剧| 扇娘全集| 电影《谜情》在线观看| 刺激大片| 赛尔号木木| 花蝴蝶7免费版大全多少集1到8集更新时间| 斗罗大陆全集免费观看完整版动漫 | 精瓶梅电影在线观看| 兔子先生第一季6期免费观看| 少年高潮H跪趴扩张H| 玉莆田满清十大| 一见你就笑全集| 淬火年代电视剧免费在线观看| 麦乐迪女超人在线播放完整版 | 凤舞天娇| 大唐来的苏无名| 掌门的烦恼| 爱上女主播韩剧国语| 《销售的秘密2》在线观看| 青春警事| 三年成全播放国语高清| 点金胜手西瓜| 黑白配1080完整版免费观看| 香草美人32集电视剧免费观看| 杰克逊月球漫步| 风情的妻子| 赘婿免费观看| 侯玉洁2017年讲道视频| 《需要爸爸种子》| 微笑妈妈电视剧免费完整版| 游客夜爬泰山隔空开强光互射对骂| 男男女女一起愁愁愁| 高清《高压监狱2》完整版在线| 从宫本到你在线观看| 神墓电影免费观看完整版高清| 海边女人| eeusS| 缘之空动画| 男女一起愁愁愁在线观看全集高清开| 风流少年唐伯虎2| 韩剧秘密| 大侦探11| 再见美丽小姐国语版| 男人和女人在一起愁愁愁电视剧免费观 | 天山暮雪电视剧全集| 评书田连元| 3d肉蒲团国语下载| 琅琊榜之风起长林电视剧| 钢铁飞龙全集| 腾飞担保公司| 寄生兽生命的准则| 盲井王宝强| 孤男寡女免费看电视剧战狼3| 红豆女之恋| 多情将军樊哈儿| 超级变变变| 老公我要电影免费观看| 罗曼蒂克未测减除版CK哪里有| 良辰美景好时光西瓜影视| 美丽海棠红5| 火影忍者mp4| 敢死队全集| 水手服饲养日记| 我爱长发飘飘| 伦理影片岳母厨房在线观看 | 三年大片大全国语版| 夫妻那点事免费看正片在线观看| 电影精舞门| 满天星女版美国队长| 我的土地我的家| 电影《特殊客房》在线看| 昨日的果实| 中国游客在日本遭抢劫被砍伤| 沐浴之王演员| 保姆全集| 涩涩屋在线| 最好的我电影观看免费| 爱在娱乐圈的日子下载| 为了新中国前进电视剧| 武训传免费| 女房东的味道| 东北警察的故事| 新水浒传26集| 回复术士的真人版第9集预告片| 笑傲江湖之风云再起| 女儿国3在线观看国语版| 直播惊魂夜电影在线播放免费观看| 宿敌电视剧免费观看| 日本电影出差3| 鬼子进村终结版| 漂亮的妈妈中字开头5个字| 美国队长4免费观看完整版| 李佳琦杨幂| 法国电影《瓜达卢佩玫瑰》在线观看| 无处藏身全集电视剧免费观看| 激战从林h版在线播放| 密室大逃脱第四季免费观看完整版 | 最美丽的第七天| 《人世间》电视剧| 老版笑傲江湖| 售楼小姐的秘密4| 摸摸美女全身| 铁血丹心什么意思| 夫妻相隔5小时先后坠楼身亡 | 《爱我几何》法国完整版| 虫族之心战役| 美国派4百度影音| 满天星在线电影免费高清观看| 高清《狼人游戏》歌曲原唱| 成化十四年电视剧免费观看完整版| 《真理与背叛》| 拳皇八神庵| 人猿泰山意大利hr| 金马奖55届完整版高清| 高清《借钱》韩剧| 事物的秘密水池一段是多少| 奇热剧集| 柞水县| 坚强的人张若昀| 两不疑动漫全集在线观看| 电影《1993》米莉亚姆| 电视剧我的左手右手| 爱情开关| 台剧黛比浪漫女家教3免费观看全集| 斗罗大陆观看| 战狼8欧式少女全部| 挚爱游戏| 情深深雨濛濛| 善良的母亲中字开头9个字出差 | 第一次竟然给了朋友的| ady映画防弊屏新地址| 安丘市| 我会好好的电影免费观看 | 贞观长歌高清| 女战狼6在线高清免费观看| 李卫当官第一部免费播放| 巡回检察组电视剧全集在线观看| 理想之城连续剧40集免费播放| 樱花校园2021最新版下载| 叶城县| 雯雅婷动画| 等一个晴天说再见| 魔镜号巴士街头中文字幕在线| 小猪佩奇100集免费完整版| 世界奇妙物语2012春| yy6680| 迪迦奥特曼7| 鸭王2在线观看免费观看| 美国小辣椒1985| 我在北京挺好的全集| 美姐妹牙医| 《暗战1》电影在线观看| 百度蹊径| 高压监狱2019法版完整版| 火口的两个人 在哪看| 黑帮大佬第一季在线观看未删减| 丰满的岳 和女胥三浦惠理子| 西厢记电影| 人民海军74周岁| 雪中悍刀行第二部免费| 五一趣事作文| 命运交响曲电视剧| 警察故事续集电影| 监狱风云在线观看| 日剧《和部长一起去出差旅》中文| 贤妻下载mp4| 末日之热浪来袭短剧| 女超人满天星无删减麦乐迪版在线| 天美星空mv在线观看| 青梅竹马是消防员无删1| 美式忌讳1--5| 电影热辣滚烫今日正式上映| 爱的色放3| 可可西里6| 女超人 法国| 觉醒年代免费观看| 潜伏完整版电视剧免费观看| 宫墙雪全集完整版免费观看| 张帝问答演唱会| 包青天在线观看| 大奉打更人免费观看全集微博| 缘之空03| 张杰回应丁太升| 辣妹子电视剧免费播放| 绮梦之旅全集观看| 龙胆虎威2| 年轻漂亮的后母完整版| 爸爸在这儿| 离婚前规| 火山口上的2人| 羞羞的铁拳迅雷下载| 咱们结婚吧多少集| 沙漠女性治疗营2| 河南四平调小包公| 鉴宝弃少:捡漏暴富全集免费| 战狼6高清国语免费观看影视大全下载什么借钱平台好的 | 龙樱第一季电视剧免费观看高清| 不义姐| 沉睡谷第二季| 石纪元 第四季 Part 3| 两公的浮之手2023剧情| 壹号皇庭3| 慕海情深 电视剧泰剧在线观看| 金银悔5普通话版免费播放| 菲梦少女第二季免费| 王君安越剧名段欣赏| 爸爸要播种子美国电视剧在线观看| 影音资源网| 电视剧大侠霍元甲全集免费播放| 鬼灭之刃锻刀村篇第五集| 铿锵锵锵免费观看电视剧大全2023| 非亲兄弟电影| 悠悠寸草心第1部| 极限战士3| 大巴上的女孩| 卖房子的女销售2| 沈逸三妹泳装照片高清| 公与3个媳HD播放| 忍不住的继拇HD中字| 深圳倡导下周居家办公| 嗜血狂魔2012| 三十而嫁全集在线观看| 男生和女生一起愁愁愁在线观看| 泰勒花花公子女郎| 你的名字完整版免费观看| 电影私人航空| 赖猫的狮子倒影 电视剧| 青青河边草HD免费观看电视剧| 牙医姐妹1986完整版手机在线观看| 电影快车| 008电影网| 无憾坎贝奇英文在线完整观看 | 新梁祝传奇 电视剧| 彭丹《蛇王波后》| 我家三爷宠短剧免费观看| 蜘蛛侠:平行宇宙 电影| 三个少妇按摩电影| 地狱公使| 天神地兽金刚全集| 飞行的绣感| 电影我的错误免费观看完整版| 贺州市| 全红婵又又又误入巨人国了| 掌心电视剧免费观看完整版| 矿山人家| 大秦赋全集在线观看免费| 美国爸爸要播种2季免费观看| 济公传 郭德纲2013| 高清战旗如画未删减| 星界的战旗2| 入室强奸电影完整版| 一二三级域名怎样看| 穹顶之下 优酷| 羽月希正在播放| 嘻哈四重奏 第五季| 爱情睡醒了33| 九一传剧mv免费观看影视大全| 短剧《极乐人生》全集| 情侣交换日记| 男女一起愁愁愁免费观看全集电视剧| 李黎跳芭蕾舞视频| 白百何益达广告完整版| 两个好媳妇电影完整版| 性治疗医生| 巴西人与禽发生性行为的后果| 笑傲江湖第一季| 父亲鼓励满天星国语| 第一炉香电影完整版观看| qvod金瓶梅| 讨厌部长 出差HD中字_午夜电影全集_完整版免费在线观看-天天影院 | 角都是哪个村的| 宝宝出虚汗| 2对1两人一次性体检| 富婆三姐妹免费播放电视剧| 灭火宝贝2009美版俄罗斯学院| 维修工艳遇在线观看949 | 致命罗密欧国语高清| 韩国电影 好姑娘干 在线观看| 广东碧桂园学校| 徐良的女朋友| 欲情之屋2014甜美情事尹大麦为什么播| 非礼勿视2电影完整版在线观看| 野蛮师姐百度影音| 男人和女人一起愁愁愁电视剧观看| 密桃成熟时3dd| 爱逢时短剧免费播放| 《女军医》满天星观看| 稷山电视台| 楼上的女邻居电视剧剧情介绍| 电影你的颜色| 卖百科全书的女人法国版本| 高清《聊斋之宝盒》国语版| 高清《俄版女儿国》高清版| 《性的暴行》在线观看| 特种兵之火凤凰27| 乞丐大结局全集观看| 火影最新op| 角斗士3满天星哪里看| 电车痴汉小说| 高清《父母爱情》全集观看| G点| 张学友 青春心| 甜蜜惩罚完整版| 收脱者入室强奸在线观看| 高清羞耻(克罗地亚版) 第三季| 河南电视台法制频道今天7:50| 七月十四之不见不散| 彷徨之刃免费观看完整版| 播九公社| 死亡体验馆| 叶罗丽第十一季在线观看| 《瓜达卢佩的玫瑰》| 悬崖上的金鱼姬普通话版免费观看| 大话西游1| 反恐24| 古墓丽影满天星在线观看免费完整版| 泰剧爱有天意| 《我可是你姐姐》动漫| 电影《私人航空》美国在线观看| 爱情雨全集| 电视剧免费观看高清全集| 电视剧虎山行| 足球宝贝满天星完整版免费| 高清《她和她的她》电视剧| 善恶无赦| 食物链2大尺寸片段| 双鱼陨石在线观看| 哪吒1魔童降临| 小蜜嫁给了体制内小幸找到了富商| HD《激战丛林》完整版| 丈夫不在的| 再喊一声爹娘| 杀死比尔| 天美传奇在线观看免费播放| 拔掉57颗牙是什么体验| 史前巨鳄2| 肢体的绣感1982凯瑟薇版| 扫黑风暴 720P 下载| 大道新火电视剧全集免费观看| 叛逆者电视剧免费观看完整版| 安吉拉·怀特全集在线播放| 仙逆第122集在线观看| 加索尔三兄弟| 美式忌讳5—7| 学渣学霸:高考状元全集免费| 动物园办虎兔交接兔子差点被加餐| 行尸走肉第一季百度影音| 爱上同学的妈妈| 一路向西快播种子| 我爱吃泡面| 西部通缉令1986版| 托梦一注6个号| 急冻奇侠完整版无删减| 先结婚后恋爱 电视剧| xl司令动漫第一季全集无马赛克 | 女性3对1:两个人一次性| 王龙妻子称要把慰问金都给公婆| 釜山行西瓜影音| 搜神记在线观看| 《特殊客房》| 斗罗大陆89| 兰花花电视剧完整版免费观看| 英国空姐3免费高清电视剧在线播放| 夫君是敌国战神:和亲公主全集免费| 扫黑风暴28集免费看| 第三类法庭粤语| 八戒八戒电影在线观看免费10| 海洋奇缘2普通话国语版| 沙鲁克汗歌舞| 金湖县| 伯爵满天星在线观看| 粉色大白菜(法国)完整板 | 亦舞之城免费观看全集完整版| 暖暖在线观看免费观看高清中文| 一起愁愁愁30集全免费视频播放| 缘之空9| 火影忍者剧场版 忍者之路| 坏蛋联盟1| 女子私人监狱免费观看全集剧情介绍 | 亲爱的电视剧免费播放| 老表发钱寒电影| 浮之手HD版免费观看了 | 苍月战士苍月免费观看| 《少妇》6| 归路电视剧免费完整版观看高清| 名侦探柯南业火的向日葵| 美丽的草原姑娘完整版 | 日本妈妈和儿子A级片| 卓依婷专辑| CHIUTSE中老年女HD| 跟部长出差的温泉之旅在线观看| 初恋那件小事电视剧高清观看 | 法国电影墨菲定律| 赛仑《渔夫的妻子》 | 摩登原始人1994满天星版 | 电影《功夫》国语免费观看| 黄晓明发文祝贺表妹陈梦 | 到了三十岁还是处似乎会变成魔法师| 苍茫的天涯是我的爱电影 | 我的中国心原唱| 创世纪在线观看| 电影花样年华| 坎贝奇三部曲《品味人生》| 遍地狼烟电视剧全集| 国产果冻豆传媒麻婆精东| 庆余年第二季免费观看在线播放| 《爱我几何》精彩片段| 风水传人:看相改运我最行短剧全集| 婚姻料理| 爱的蹦极结局| 双女任务在线观看免费版完整版| 蛟龙行动hd国语版免费播放| 电视剧游击兵工厂| 美人鱼免费观看完整版| 欧美寂寞影院| 虎胆雄心片尾曲| 迷人的保姆免费观看| 我是谁国语| 《妈妈爱上儿子同学》电影完整版| 箭在弦上电视剧全集优酷 | 贝拉1980满天星版| 超凡蜘蛛侠| 黑客帝国免费| 免费韩剧| 《落魄贵族琉璃川》在线观看中文| 星际之门 第一季| 北岛玲丝袜办公室高跟鞋| 渡江侦察记电影| 壮志凌云啄木鸟满天星法版| 艳访吸血鬼| 董洁电视剧天若有情| 《束缚游戏》免费完整版在线观看| 健身房的特殊待遇| 电视剧我的抗战| 三生有幸遇见你免费观看| 好事成双电视剧免费| 韩国男按摩师吸乳房在线观看| 分手大师高清完整版| 我和我的祖国电影在线观看免费 | 西部通缉令在线观看| 二婶电视剧在线观看| 香港奇案| 年善良的子11| 韩剧《不止暧昧》播放| 第十放映室解说词| 天火传说ol| 十二谭电视剧免费观看追剧吧| 《特殊的治疗》李采潭在线 | 爱我就别想太多全集在线| 战狼6欧式少女版资源百度云| 82版杨敏思版本1-5集免费观看 | 女超人麦乐迪满天星版本电影在线观看| 辐射第一季免费观看| 易中天品三国16| 老娘身价过亿:打脸拜金女全集免费 | 刘宝瑞相声全集| 《特殊的治疗1》| 月上重火免费观看全集完整版高清| 陈晓被曝婚姻破裂后首次现身| 七龙珠z剧场版| 美容院的待遇服务6| 斗破苍穹169| 甄嬛传40集| 猎杀行动电视剧全集| 捡漏小能手:古玩街我称王短剧全集| 慢性呕吐实验室免费观看完整版电影| 美谷朱里| 剥茧电视剧免费全集在线观看| 刘国梁马琳轻松观战| 白峰美羽女教师无删减版| 东北往事电视剧全集| 正月十六的讲究| 劳拉失魂记|