高性能DSP的二級高速緩存設計與實現
發(fā)布時間:2020-06-20 03:03
【摘要】:數字信號處理器(Digital Signal Processor,DSP)專門用于數字信號處理,已在通信、軍事、家電等各個領域得到了廣泛的應用。隨著集成電路的發(fā)展,微處理器的運算速度迅速提高,而相對于微處理器而言,存儲器存取速度的改善較慢,二者之間的速度差異越來越大,導致了瓶頸問題的產生,嚴重影響系統(tǒng)整體性能。在微處理器和和主存之間加入一個容量小但速度快的高速緩存(cache)能有效解決此問題。本文的主要研究工作是設計并實現一款DSP芯片的二級高速緩存。 深入分析了G1000的體系結構和片內兩級存儲結構,研究了現代cache的設計技術和相關理論,完成了L1P、L1D和L2的設計與實現。其中,L1P設計為只能被CPU讀訪問的一級程序cache;L1D設計為二組相聯(lián)映射結構,采用LRU替換策略,具有兩組讀寫通路,在寫通路上設計了Write Buffer單元,當寫miss時,直接寫入Write Buffer,而不用立即寫入L2中,有效提高了cache操作速度;L2設計為cache與RAM的組合體,結構比較復雜,利用snoop請求來維護L1D、L1P與主存存數據一致性。對設計進行了充分的邏輯驗證,結果表明設計可以實現課題要求的各種功能,各個模塊均可正常工作,完成了課題的研究任務。
【學位授予單位】:西安電子科技大學
【學位級別】:碩士
【學位授予年份】:2011
【分類號】:TP333
【圖文】:
第二章 G1000 的存儲結構從 DSP 應用角度來說,一個足夠大且足夠快的片內存儲器是最理想的,但是最近幾年處理器的速度不斷提高,CPU 速度比存儲器速度要快很多,雖然高速的存儲器能夠實現,但隨著容量的提高,其成本要比低速存儲器昂貴很多。考慮圖 2.1 左側所示的存儲器結構,CPU 和內部存儲器都是 300MHz,所以訪問存儲器不會產生 stalls(延遲流水線的執(zhí)行),當 CPU 的時鐘增到 600MHz 時,內部存儲器只能兩個CPU周期被訪問一次,因此CPU一次訪問會被延遲一個周期對于那些需要每個周期訪問的循環(huán)而言,延遲非常巨大。由于目前存儲器的技術其速度跟不上處理器的速度,而那些快速的存儲器價格非常昂貴。解決方案只有改變存儲器體系結構,如圖 2.1 右側所示,一個快速的小容量存儲器緊挨著 CPU,CPU 訪問它沒有 stalls,下一級的存儲器遠離 CPU,其容量較第一級的大,但速度相對較慢。地址從大容量存儲器映射到小容量存儲器。而這小小容量存儲器被稱為 cache,由 cache 控制器自動管理。使用這種結構的存儲器,訪問速度接近于快速的小容量存儲器的訪問速度。
2.2 G1000 DSP 體系結構總體框圖G1000 由三部分組成:CPU(DSP core)、片內存儲系統(tǒng)、片內 EDMA。而 CP如圖 2.2 所示,包括取指、指令分配、指令譯碼單元,8 個功能單元,一些控制寄存器與中斷寄存器。片內存儲系統(tǒng)由二級 cache 組成,包括一級程序存儲單元(L1P)、一級數據存儲單元(L1D)與第二級存儲單元(L2)。2.2 二級 cache 結構分析2.2.1 設置 cache 的理論依據設置 cache 的理論[5]依據是訪問的局部性原理。局部性原理是指處理器存取指令或數據的操作在時間、空間和次序上往往都集中在一定的范圍內進行。換句話說,大多數程序在任何時間窗口上,常常在他們地址空間的某一部分活動。產生局部性原理的原因是:1.除了調用和轉移指令(它們只占很小的一部分)以外,程序的執(zhí)行是按順序的從而在大多數情況下,下一條指令可以在當前指令之后立即取進處理器。
本文編號:2721763
【學位授予單位】:西安電子科技大學
【學位級別】:碩士
【學位授予年份】:2011
【分類號】:TP333
【圖文】:
第二章 G1000 的存儲結構從 DSP 應用角度來說,一個足夠大且足夠快的片內存儲器是最理想的,但是最近幾年處理器的速度不斷提高,CPU 速度比存儲器速度要快很多,雖然高速的存儲器能夠實現,但隨著容量的提高,其成本要比低速存儲器昂貴很多。考慮圖 2.1 左側所示的存儲器結構,CPU 和內部存儲器都是 300MHz,所以訪問存儲器不會產生 stalls(延遲流水線的執(zhí)行),當 CPU 的時鐘增到 600MHz 時,內部存儲器只能兩個CPU周期被訪問一次,因此CPU一次訪問會被延遲一個周期對于那些需要每個周期訪問的循環(huán)而言,延遲非常巨大。由于目前存儲器的技術其速度跟不上處理器的速度,而那些快速的存儲器價格非常昂貴。解決方案只有改變存儲器體系結構,如圖 2.1 右側所示,一個快速的小容量存儲器緊挨著 CPU,CPU 訪問它沒有 stalls,下一級的存儲器遠離 CPU,其容量較第一級的大,但速度相對較慢。地址從大容量存儲器映射到小容量存儲器。而這小小容量存儲器被稱為 cache,由 cache 控制器自動管理。使用這種結構的存儲器,訪問速度接近于快速的小容量存儲器的訪問速度。
2.2 G1000 DSP 體系結構總體框圖G1000 由三部分組成:CPU(DSP core)、片內存儲系統(tǒng)、片內 EDMA。而 CP如圖 2.2 所示,包括取指、指令分配、指令譯碼單元,8 個功能單元,一些控制寄存器與中斷寄存器。片內存儲系統(tǒng)由二級 cache 組成,包括一級程序存儲單元(L1P)、一級數據存儲單元(L1D)與第二級存儲單元(L2)。2.2 二級 cache 結構分析2.2.1 設置 cache 的理論依據設置 cache 的理論[5]依據是訪問的局部性原理。局部性原理是指處理器存取指令或數據的操作在時間、空間和次序上往往都集中在一定的范圍內進行。換句話說,大多數程序在任何時間窗口上,常常在他們地址空間的某一部分活動。產生局部性原理的原因是:1.除了調用和轉移指令(它們只占很小的一部分)以外,程序的執(zhí)行是按順序的從而在大多數情況下,下一條指令可以在當前指令之后立即取進處理器。
【參考文獻】
相關期刊論文 前7條
1 孫慧,李文宏,章倩苓;一種低功耗的高性能四路組相聯(lián)CMOS高速緩沖存儲器(英文)[J];半導體學報;2004年04期
2 趙學梅,葉以正,李曉明,時銳;一種低功耗高性能的滑動Cache方案[J];計算機研究與發(fā)展;2004年11期
3 周學海;余潔;李曦;王志剛;;基于指令行為的Cache可靠性評估研究[J];計算機研究與發(fā)展;2007年04期
4 楊文華,羅曉沛;專用集成電路的設計驗證方法及一種實際的通用微處理器設計的多級驗證體系[J];計算機研究與發(fā)展;1999年06期
5 彭軍;楊樂;稂嬋新;盛立琨;;基于總線偵聽Cache一致性協(xié)議算法與實現[J];計算機與現代化;2007年10期
6 劉洪波;龍娟;郝曉莉;沈緒榜;;異步FIFO狀態(tài)判斷的研究與設計[J];微電子學與計算機;2007年03期
7 武楊;;高速緩沖存儲器Cache設計的關鍵技術分析[J];中國科技信息;2006年07期
相關碩士學位論文 前3條
1 程由猛;高性能DSP片內二級Cache控制器設計研究[D];國防科學技術大學;2003年
2 盧晏安;“銀河飛騰”DSP片內存儲系統(tǒng)的優(yōu)化設計研究[D];國防科學技術大學;2005年
3 李衛(wèi)偉;32位嵌入式處理器的Cache設計[D];西北工業(yè)大學;2007年
本文編號:2721763
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/2721763.html