存儲器層次結構(1)

我們知道,一個簡單的計算機系統模型是CPU執行指令,而存儲器爲CPU存放指令和數據。
在簡單模型中,存儲器系統是一個線性的字節數組,CPU能夠在常數時間範圍內訪問每個存儲器位置。這樣的一個簡單模型並不能有效地反映現代系統實際工作的方式。

實際上,存儲器系統是一個具有不同容量,成本和訪問時間的存儲設備的層次結構。CPU寄存器保存着最常用的數據。靠近CPU的小的快速的高速緩存存儲器作爲一部分存儲在相對慢速的主存儲器(簡稱主存)中的數據和指令的緩衝區。主存暫時存放 存儲在容量較大的慢速的磁盤上的數據。而這些磁盤又常常作爲存儲在通過網絡連接的其他機器的磁盤或磁帶上的的數據的緩衝區域。

值得注意的是,高速緩存存儲器是作爲CPU和主存之間的緩存區域,它們對應用程序的性能影響最大。

存儲技術:

1.隨機訪問存儲器(RAM): 隨機訪問存儲器分爲兩類,靜態的(SRAM)和動態的(DRAM)。靜態的比動態的快,但是也貴的多。

SRAM用來作爲高速緩存存儲器,既可以在CPU上,也可以在CPU下。 DRAM用來作爲主存,也用來作爲圖形系統的幀緩衝區。典型地,一個桌面系統的SRAM不會超過幾兆,但是DRAM卻有幾百兆或者幾千兆。

爲了更好的說明DRAM和SRAM的特性和差異,在這裏做個對比:

a. SRAM將每個位存儲在一個雙穩態的存儲器單元裏。每個單元是用一個六晶體管電路來實現的。這個電路有這樣一個屬性,它可以無限期地保持在兩個不同的電壓配置或狀態之一。它的穩定性很好,也就是說,只要有電,它就會永遠保持地保持它的值。即使有干擾(例如電子噪音),來擾亂電壓,當干擾消除時,電路就會恢復到穩定值。

b. DRAM 將每個位存儲爲對一個電容的充電,這個電容非常的小。DRAM存儲器可以製造得非常密集: 每個單元由一個電容和一個訪問晶體管組成。但是,與SRAM不同,DRAM存儲器單元對干擾非常敏感,當電容的電壓被擾亂之後,它就永遠不會恢復了。暴露在光線下會導致電容電壓改變。很多原因導致漏電,使得DRAM過陣子又會失去電荷,所以它是不連續的。存儲器系統必須週期性地通過讀出,然後重寫來刷新存儲器的每一位。
c.SRAM 不需要刷新,它的存取比DRAM快,對諸如光和電噪聲這樣的干擾不敏感。代價是,SRAM比DRAM使用更多的晶體管,因而密集度更低而且更貴功耗更大。

好了,基於上面的簡單介紹,下面我們來討論一下傳統的DRAM:

DRAM 芯片中的單元是 :位.
DRAM中的所有位被分成d個超單元.
每個超單元都由w個位組成.
也就是說,一個d×w的DRAM總共存儲了dw位信息.

每個超單元有形如(i,j)的地址,這裏i表示行,j表示列。
信息通過引腳的外部連接器流入和流出芯片,每個引腳攜帶一個位的信號。2位的行和列超單元地址由2個addr引腳攜帶。

下面一個128位的16×8的DRAM芯片的高級視圖,帶陰影的方框表示(1,1)處的超單元:
這裏寫圖片描述
其中,有d=16個超單元,每個超單元有w=8位。

每個DRAM芯片被連接到某個稱爲 存儲控制器的電路,這個電路可以一次傳送w位(一個超單元的內容)到每個DRAM芯片或一次從每個DRAM傳出w位。
爲了描述這個傳送和傳出過程,我簡單做了一個過程說明圖,如下:
這裏寫圖片描述
存儲控制器將行地址發送DRAM,然後是列地址。DRAM把超單元(1,2)的內容發給控制器作爲響應。

另外,注意RAS和CAS請求共享相同的DRAM地址引腳。電路設計者們將DRAM組織成二維陣列而不是線性數組的一個原因是降低芯片上引腳的數量,它的缺點是必須分兩步發送地址,這增加了訪問時間。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章