最近淺顯的學習了下這方面的知識,所以目前也想去總結一下
cpu除了控制器、運算器等器件還有乙個重要的部件就是暫存器。其中暫存器的作用就是進行資料的臨時儲存。cpu的運算速度是非常快的,為了效能cpu在內部開闢一小塊臨時儲存區域,並在進行運算時先將資料從記憶體複製到這一小塊臨時儲存區域中,運算時就在這一小快臨時儲存區域內進行。我們稱這一小塊臨時儲存區域為暫存器。
cpu讀取指令是往記憶體裡面去讀取的,讀一條指令放到cpu中,cpu去執行,對記憶體的讀取速度比較慢,所以從記憶體讀取的速度去決定了這個cpu的執行速度的。所以無論我們的cpu怎麼去公升級,但是如果這方面速度沒有解決的話,其的效能也不會得到多大的提公升所以為了彌補這個缺陷,所以去新增了快取記憶體的機制,a11只有兩級快取記憶體。這個時候就能彌補記憶體讀寫的速度了。
執行速度越快,做工肯定要越精良,所以成本會越高,所以容量肯定是需要有限制。
就拿iphonex 上面的arm處理器a11舉例子,它的1級快取中的容量是64kb,2級快取中的容量是8m。我們讀取指令的時候,就是pc暫存器指向誰就去執行誰,然後cpu會先去找對映表,如果發現快取記憶體中有這個位址,那麼就會去高速緩衝中去讀取。
如果pc所指向的位址在快取記憶體中找不到了會去記憶體中找,然後根據特定的替換策略就會將記憶體中的指令或者資料拷貝到記憶體中。
高速緩衝儲存器是存在於主存與cpu之間的一級儲存器, 由靜態儲存晶元(sram)組成,容量比較小但速度比主存高得多, 接近於cpu的速度。
主要由三大部分組成:
關於靜態儲存晶元的介紹:
靜態隨機訪問儲存器(static random-access memory,sram)是隨機訪問儲存器的一種。所謂的「靜態」,是指這種儲存器只要保持通電,裡面儲存的資料就可以恆常保持。相對之下,動態隨機訪問儲存器(dram)裡面所儲存的資料就需要周期性地更新。關於靜態儲存晶元和動態隨機訪問儲存器的具體區別
sram不需要重新整理電路即能儲存它內部儲存的資料。而dram(dynamic random access memory)每隔一段時間,要重新整理充電一次,否則內部的資料即會消失,因此sram具有較高的效能,功耗較小,但是sram也有它的缺點,即它的整合度較低,相同容量的dram記憶體可以設計為較小的體積,但是sram卻需要很大的體積。同樣面積的矽片可以做出更大容量的dram,因此sram顯得更貴。
儲存器 cpu快取記憶體1
現代儲存器一共包括以下幾種 暫存器直接和cpu進行互動資料的儲存器 速度最快 與cpu1級快取記憶體互動 cpu 1級快取記憶體 直接嵌在cpu內部,每個cpu獨有的 cpu 2級快取記憶體 在cpu外部,也是每個cpu獨有 cpu 3快取記憶體 所有cpu共享的快取 記憶體與快取記憶體互動 通過c...
無法寫入快取記憶體 記憶體與CPU的快取記憶體的關係
我們個人pc都有乙個叫做記憶體的硬體,有4g 8g 16g不等的容量。但我們的cpu執行時執行的指令並不是直接從記憶體中獲取,而是從cpu自身的快取記憶體中獲得指令並執行,指令執行完畢再寫回快取,然後待到特定的時機才把資料在寫回主記憶體。那cpu是如何將比自己容量大的多的記憶體放進自己的快取記憶體中...
CPU的快取記憶體儲存器的理解
參考 cpu的快取記憶體儲存器知識整理 基於快取的儲存器層次結構行之有效,是因為較慢的儲存裝置比較快的儲存裝置更便宜,還因為程式往往展示區域性性 1.通用快取記憶體儲存器結構介紹 乙個通用的快取記憶體儲存器會有s 2 s個set 組 每個set含有e個line 既通常所說的cache line 每個...