在一個電子系統中,CPU、內存、物理存儲、IO這些單元必不可少,只不過有的集成在CPU內部,有的分離出來。性能
這裏就針對系統中的內存,此處選用DRAM來進行說明,講述下基本的原理設計,主要分爲如下幾個部分:設計
(1)DRAM芯片引用blog
256Mb大小SDRAM:K4S560432E內存
(2)DRAM引腳類型原理
A0-A12:地址總線擴展
DQ0-DQ15:數據總線引用
CLK:系統時鐘im
CKE:時鐘使能數據
RAS#:行地址鎖存db
CAS:列地址鎖存
WE#:寫使能
DQM:數據輸入輸出屏蔽
BA0,BA1:塊地址選擇
(3)DRAM原理設計
看完DRAM的接線圖,有沒有什麼疑問?
筆者第一次看完就有疑問了,爲何DRAM的地址線A0接的是CPU的LADDR2而不是LADDR0,爲何?
幾經周折,查了資料,找人討論,終於獲得了答案,請看下文:
上圖中CPU是32位的數據寬度,即CPU在數據讀寫過程當中,一次能夠傳輸32位。那圖中一片DRAM確定是無法知足性能最大化了,即便使用一片也能夠工做(下降性能),欣慰的是,能夠採用兩片並聯的方式進行內存擴展,達到32位傳輸的目的。
那地址線那樣接是什麼意思,解釋一下吧!
CPU每次數據傳輸爲32位4字節,即存儲單元地址是以4字節遞增的,以下圖。若設計者想要獲取地址0x0000、0x000一、0x000二、0x0003單元的字節,此時須要經過設置地址線來實現,對應A0A1爲:00、0一、十、11。有沒有發現,這四個字節單元其所在的存儲位置都是CPU能夠一次進行讀寫的存儲塊。即不管你要訪問的是這四個字節中的哪個,最終CPU都是經過地址0x0000來進行操做的,最終再根據你須要的相應字節來截取出來。也就是說,A0、A1的狀態對於CPU訪問的物理空間是沒有影響的。
如今是否是有些理解爲何圖中是從LADDR2開始了。