国产一区国产二区国产三区-国产一区精品-国产一区免费观看-国产一区免费在线观看-亚洲天堂免费-亚洲天堂免费观看

您好,歡迎光臨電子應用網![登錄] [免費注冊] 返回首頁 | | 網站地圖 | 反饋 | 收藏
在應用中實踐
在實踐中成長
  • 應用
  • 專題
  • 產品
  • 新聞
  • 展會
  • 活動
  • 招聘
當前位置:中國電子應用網 > 技術應用 > 正文

TI C64x+ DSP CACHE 一致性分析與維護

2011年05月20日10:40:21 本網站 我要評論(2)字號:T | T | T
關鍵字:應用 數字 

作者:德州儀器 DSP 技術應用工程師 宋洋

摘要


在各種數字信號處理系統中,CACHE被廣泛用于彌補Core與存儲器之間的速度差異。在CACHE的使用過程中,存在不同類型存儲器之間數據是否一致的問題。本文著重分析TI高性能C64x+ DSP系列中各級CACHE之間數據一致性問題以及如何進行一致性維護。

1.概述


CACHE作為Core和低速存儲器之間的橋梁,基于代碼和數據的時間和空間相關性,以塊為單位由硬件控制器自動加載Core所需要的代碼和數據。如果所有程序和數據的存取都由Core完成,基于CACHE的運行機制,Core始終能夠得到存儲器中較新的數據。但是當有其它可以更改存儲器內容的部件存在時,例如不需要Core干預的直接數據存取(DMA)引擎,就可能出現由于CACHE的存在而導致Core或者DMA不能夠得到較新數據的現象,也就是CACHE一致性的問題。

2.C64x+ 存儲器組織結構


TI對高性能C64x核進行了改進,使其性能大大提升,稱之為C64x+DSP核。基于C64x+核開發的DSP芯片,所有部件都以交換網絡(SCR)為核心連接起來。SCR上的部件分為兩類:Master和Slave。Master包括Core、EDMA以及串行高速IO(sRIO),EMAC等外設。Master可以直接通過SCR發起到Slave的數據傳輸。Slave包括每一個Core的內存,DDR2外存以及其它不能直接發起數據傳輸的外設,Slave之間的數據傳輸,需要通過DMA協助完成。各款基于C64x+DSP的數據手冊上詳細描述了SCR的配置和Master、Slave的情況。

C64x+系統的存儲器框圖如圖 1所示。存儲器被分成了三級:第一級是L1,包含數據存儲器(L1D)和代碼存儲器(L1P);第二級是代碼和數據共用存儲器(L2);第三級是外部存儲器,主要是DDR2存儲器。L1P、L1D和L2的CACHE功能分別由相應的L1P控制器、L1D控制器和L2控制器完成。表 1總結了C64x+平臺上可用的CACHE情況。

圖 1 C64x+存儲器框圖

表 1 C64x+ CACHE特性

 類型大小Line 大小L1P代碼;直接映射;較大32K 字節32 字節L1D數據;2路; 讀分配較大32K 字節64 字節L2代碼、數據;4路;讀寫分配較大256K 字節128 字節

C64x+平臺上L1P用來存儲或者緩存代碼;L1D用來存儲或者緩存數據。L1P和L1D大小都是32K字節,可以分別配置0K、4KB、8KB、16KB或者32KB作為CACHE,其余作為代碼或者數據RAM。作為CACHE的部分,用來緩存L2和DDR2的數據或代碼。作為RAM的部分,可以存儲關鍵的代碼或者數據使得Core能夠以很高的速度

C64x+平臺上L2 存儲器可用于存儲代碼和數據。L2上較大可以分配256K字節CACHE來緩存DDR2中的數據或代碼。L2中其余部分作為RAM存儲代碼和數據。

圖 2描述了Core訪問存儲器內容的操作流程。在這個訪問流程中,Core對于存儲器的訪問總是先從離Core較近的一級存儲器開始,如果命中,Core可以直接得到代碼/數據,否則代碼/數據會被加載到前幾級的CACHE中,從而Core可以得到要處理的代碼/數據。在這個動態訪問過程中,各級CACHE中的內容和下一級存儲器中的內容可能存在不一致,這種瞬態的不一致不會造成問題。但是,如果Core或者其它Master不能得到另外一方對存儲器內容更新后的內容,就會出現CACHE一致性問題。

圖 2 Core訪問存儲器流程

3.CACHE一致性問題分析


在任何時刻,Core或者其它Master訪問存儲器中數據時,由于CACHE的存在造成不能夠得到較近更新過的數據,就會出現CACHE一致性問題。

在一個特定的時間范圍內,各級CACHE和它的下一級存儲器中的內容不一致是正常的。因為CACHE的作用是在一段時間內將低速存儲器中的內容自動搬運到高速的CACHE中重復使用。當CACHE中的空間被后續的數據占用的時候,才將CACHE中的內容進行失效或者回寫的操作。在失效或者回寫之前,CACHE中的內容可能與物理存儲器中的內容是不一致的。這種臨時性的不一致是正常的,上述CACHE一致性問題的描述不包含此類正常情況。

CACHE的引入是為了提高Core存取數據的效率,所以出現CACHE一致性問題一定與Core對存儲器的訪問有關。Core對存儲器的訪問分為兩類:
1.Core讀代碼或者數據;
2.Core寫代碼或者數據。

據此,CACHE的一致性問題分為兩個大類:Core讀一致性問題和Core寫一致性問題。在下面兩個小節中,分別描述了這兩種情況的模型:

3.1 Core讀一致性模型


圖 3給出了Core讀一致性的模型。在這個模型中,CACHE一致性問題的存在取決于圖中虛線箭頭指示的第二步操作能否在Core從CACHE中重新讀數據之前完成。如果不能,則會造成Core讀取的數據不是其它Master更新后的數據,而是原來CACHE中的內容,從而導致一致性的問題。

圖 3 Core讀一致性模型

L1P CACHE對L2內存或者DDR2外存中的代碼進行緩存。當Core第一次對L2或者DDR2中的代碼進行讀操作的時候,由于代碼不在L1P CACHE中,CAHCE硬件會將L2或者DDR2中的代碼讀到L1P CACHE中。Core可以得到較新的代碼,不存在一致性的問題。此后,如果其它Master更新L2或者DDR2中的代碼,然后Core再次讀取此部分代碼時,會發現相應的代碼已經存在L1P CACHE中,此時Core會直接從L1P CACHE中讀取代碼。由于Core不能得到較新的代碼,就出現了Core讀一致性的問題。

L1D Core讀一致性問題的原理和L1P相同,只是L1D緩存的是L2或者DDR2中的數據。

L2 CACHE對DDR2中的代碼/數據進行緩存,當Core第一次對DDR2中的代碼/數據進行讀操作,這時代碼/數據不在L2 CACHE中,需要進行L2 CACHE的加載,Core可以得到較新的代碼/數據。之后,其它Master對DDR2中的代碼/數據進行更改,Core重讀此部分代碼/數據的時候,Core讀到的是L2 CACHE中的內容而不是DDR2中較新的代碼/數據,因此也存在Core讀一致性的問題。

3.2 Core寫一致性模型


圖 4給出了Core寫一致性的模型。在這個模型中,CACHE一致性問題的存在取決于圖中虛線箭頭指示的第二步操作能否在其它Master從存儲器中讀數據之前完成。如果不能,會造成其它Master從存儲器中讀到的數據是原來的數據而不是Core更新過的數據,從而導致一致性的問題。

圖 4 Core寫一致性模型

當Core對L2或者DDR2中的代碼/數據進行寫操作的時候,如果代碼/數據已經在L1 CACHE中,新的代碼/數據會被更新到L1 CACHE中。當其它Master從L2或者DDR2中讀代碼/數據的時候,會直接從L2或者DDR2中讀取相應的內容,如果L1 CACHE中新的代碼/數據未被更新到L2或者DDR2中,則其它Master讀取的不是更新后的內容,就會出現Core寫一致性的問題。

同樣,Core更新過的代碼/數據有可能只是緩存在L2 CACHE中,其它Master從DDR2中讀取的內容不是更新后的內容,同樣會出現Core寫一致性的問題。

3.3 C64x+一致性分析


在C64x+上的CACHE一致性問題,需要根據放置代碼/數據的相應位置進行分析。由于在C64x+平臺上,L1P、L1D和L2內存既可以作為CACHE又可以作為存儲器使用,因此,在分析一致性問題的時候,需要考慮以下幾種情況

Case1.代碼在L1P存儲器中;
Case2.代碼在L2存儲器中;
Case3.代碼在DDR2存儲器中;
Case4.數據在L1D存儲器中;
Case5.數據在L2存儲器中;
Case6.數據在DDR2存儲器中。

對于Case1,由于代碼直接在L1P存儲器中,不需要進行CACHE,所以不會存在一致性的問題。

對于Case2和Case3,涉及到L1P CACHE,存在代碼的更新能否被Core讀到的問題。代碼的更新分成兩種情況:一是Core在運行過程中對代碼進行修改;二是其它Master對代碼的修改。這兩種情況下,都會存在CACHE讀一致性問題,需要由軟件來維護。

對于Case4,數據直接在L1D存儲器中, Core始終能夠讀到其它Master更新到L1D內存中的內容,Core寫過的數據也能夠被其它Master直接從L1D內存中讀到。所以不會存在一致性的問題。

對于Case5,數據在L2存儲器,按照上面的分析,會存在CACHE讀和寫一致性的問題。在C64x+平臺上這種情況下的一致性問題會由硬件自動維護。

對于Case6,也會存在CACHE讀和寫一致性的問題,這種情況需要軟件進行CACHE一致性的維護。

4.C64x+ CACHE一致性維護操作


出現CACHE一致性問題時,為了保證Core或者其它Master在進行數據操作的時候能夠得到較新的數據,需要進行CACHE的一致性維護操作。CACHE一致性問題維護在設計中,有兩種處理方式:硬件自動維護和應用程序進行維護。

下面具體分析以上幾種情況在C64x+平臺上如何進行CACHE一致性問題處理:

4.1 硬件維護的CACHE一致性


在C64x+平臺上,硬件會對Case5的情況自動進行數據一致性維護。分析需要分為讀寫兩類操作進行,圖 5和圖 6分別描述了Core對L2上的數據進行讀和寫的情況。

圖 5 Core讀L2數據的情況

圖 6 Core寫L2數據的情況

其它Master要對L2中的內容進行更新操作時,L2控制器會根據被更新數據的地址判斷相應的地址是否在L1D CACHE中,如果在L1D CACHE中,硬件會自動將更新的數據拷貝一份到L1D CACHE中。當Core重新

網友評論:已有2條評論 點擊查看
登錄 (請登錄發言,并遵守相關規定)
如果您對新聞頻道有任何意見或建議,請到交流平臺反饋。【反饋意見】
關于我們 | 聯系我們 | 本站動態 | 廣告服務 | 歡迎投稿 | 友情鏈接 | 法律聲明
Copyright (c) 2008-2025 www.flexio.com.cn.All rights reserved.
電子應用網 京ICP備12009123號-2 京公網安備110105003345號
二级片在线观看| 国产亚洲免费观看| 欧美国产日韩在线| 97视频免费在线观看| 国产不卡福利| 成人高清视频免费观看| 成人在免费观看视频国产| 精品视频在线观看视频免费视频| 国产一区二区精品久| 日本在线www| 日本特黄一级| 久草免费在线色站| 黄视频网站在线看| 国产一区二区精品久久91| 四虎久久影院| 欧美α片无限看在线观看免费| 久草免费资源| 国产国语对白一级毛片| 国产一区二区精品久久91| 青青青草视频在线观看| 成人高清视频在线观看| 成人免费福利片在线观看| 日日夜夜婷婷| 九九久久99| 欧美激情一区二区三区在线| 欧美1区| 毛片成人永久免费视频| 国产网站在线| 韩国三级视频在线观看| 欧美另类videosbestsex视频| 黄色福利| 成人a级高清视频在线观看| 亚洲爆爽| 毛片电影网| 精品视频在线看| 国产成人精品影视| 日日爽天天| 日本伦理片网站| 日本伦理片网站| 日韩中文字幕在线播放| 欧美激情一区二区三区视频 | 久久99中文字幕| 午夜欧美成人久久久久久| 日本在线不卡视频| 免费的黄色小视频| 一级毛片视频免费| 深夜做爰性大片中文| 久久成人性色生活片| 黄视频网站在线免费观看| 中文字幕一区二区三区精彩视频| 久久99中文字幕久久| 亚洲 欧美 成人日韩| 国产91精品露脸国语对白| 国产精品123| 午夜在线影院| 久久久久久久男人的天堂| 免费国产在线视频| 欧美另类videosbestsex高清 | 日韩免费在线| 精品国产一区二区三区久久久蜜臀 | 成人免费网站视频ww| 国产高清视频免费观看| 麻豆午夜视频| 午夜在线亚洲| 欧美大片毛片aaa免费看| 久久精品大片| 亚洲 激情| 欧美激情在线精品video| 国产伦精品一区二区三区无广告 | 国产伦理精品| 久草免费在线观看| 欧美国产日韩一区二区三区| 九九免费高清在线观看视频 | 午夜激情视频在线观看| 九九九国产| 精品久久久久久影院免费| 色综合久久手机在线| 色综合久久天天综合观看| 日本在线不卡免费视频一区| 国产成人精品综合久久久| 国产不卡精品一区二区三区| 国产伦精品一区二区三区无广告 | 91麻豆爱豆果冻天美星空| 美女免费毛片| 青草国产在线观看| 日韩av成人| 青青青草影院| 国产不卡在线观看视频| 日韩在线观看视频黄| 美女免费毛片| 韩国三级香港三级日本三级la | 美女免费毛片| 国产极品精频在线观看| 欧美激情一区二区三区在线播放| 国产欧美精品| 在线观看成人网| 成人高清视频在线观看| 亚洲第一色在线| 国产不卡在线观看视频| 999久久久免费精品国产牛牛| a级毛片免费全部播放| 国产伦久视频免费观看 视频| 国产91素人搭讪系列天堂| a级黄色毛片免费播放视频| 青青青草影院| 免费国产在线观看| 韩国三级一区| 国产成人啪精品| 欧美爱爱网| 麻豆系列 在线视频| 国产成人精品影视| 日韩免费在线视频| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产一区精品| 国产亚洲免费观看| 99色视频在线观看| 国产一区二区福利久久| 亚洲第一色在线| 国产成人精品综合| 一级毛片视频免费| 韩国三级一区| 欧美爱色| 天天做人人爱夜夜爽2020毛片| 青草国产在线观看| 精品视频在线看 | 99色视频在线观看| 高清一级片| 九九精品影院| 一级毛片视频免费| 国产亚洲免费观看| 青青久久精品| 国产麻豆精品| 日韩在线观看视频网站| 成人a大片高清在线观看| 天天色成人网| 精品久久久久久影院免费| 精品国产香蕉在线播出| 亚洲精品中文字幕久久久久久| 99久久网站| 国产欧美精品午夜在线播放| 二级片在线观看| 可以免费看毛片的网站| 国产麻豆精品免费密入口| 国产网站免费观看| 欧美1区2区3区| 精品国产香蕉在线播出| 国产伦久视频免费观看视频| 精品在线观看国产| 欧美一级视| 国产伦精品一区二区三区无广告| 亚洲精品永久一区| 国产一区二区精品| 日本免费区| 午夜在线亚洲| 精品在线观看一区| 国产一区二区精品久久91| 天堂网中文在线| 免费一级片在线| 国产不卡高清在线观看视频 | 国产91丝袜在线播放0| 亚洲精品久久久中文字| 99久久精品国产高清一区二区| 精品国产一区二区三区精东影业| a级毛片免费全部播放| 亚洲第一页色| 亚欧乱色一区二区三区| 一级毛片看真人在线视频| 国产不卡高清在线观看视频 | 高清一级片| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 亚洲第一页色| 欧美激情一区二区三区视频 | 超级乱淫伦动漫| 日韩中文字幕一区二区不卡| 成人高清视频免费观看| 国产麻豆精品免费密入口| 99色视频在线观看| 国产麻豆精品免费密入口| 日本免费乱人伦在线观看| 中文字幕一区二区三区精彩视频| 日本特黄一级| | 国产原创视频在线| 日韩av成人| 中文字幕97| 欧美日本国产| 欧美国产日韩久久久| 黄色免费三级| 国产精品自拍一区| 精品久久久久久免费影院| 精品国产一区二区三区免费 | 国产不卡在线观看视频| 日日爽天天| 韩国三级香港三级日本三级| 日韩欧美一二三区| 黄色免费三级| 国产一区精品| 国产国语在线播放视频| 99久久精品国产麻豆| 91麻豆精品国产片在线观看 |