靜態SDRAM和動態SDRAM的區別
SDRAM有一個同步介面,在響應控制輸入前會等待一個時鐘訊號,這樣就能和計算機的系統匯流排同步。時鐘被用來驅動一個有限狀態機,對進入的指令進行管線(Pipeline)操作。這使得
與沒有同步介面的非同步DRAM相比,可以有一個更復雜的操作模式。下面宇芯電子介紹關於靜態SDRAM和動態SDRAM的區別。
靜態記憶
假設我們要將16Mb儲存器連線到FPGA。
16Mb表示記憶體可容納1600萬位(準確地說是16777216位)。現在,很少對位元進行單獨定址,而是通常以8或16的資料包(我們稱其為字)進行定址。因此,如果我們的16Mb儲存器被組織為16位的1M字,則需要20位地址匯流排和16位資料匯流排,以及一些可寫和可讀訊號。
實際的儲存器也將具有CS(片選),如果儲存器是同步的,則為時鐘(為清晰起見,在圖片中將其省略)。
現在,如果該記憶體是一個Blockram(在FPGA內部),它將看起來有所不同(假設存在如此大的16Mb Blockram ...典型的Blockram要小得多)。
如您所見,它仍然是一塊記憶體,但是有兩條地址匯流排。那是因為現代FPGA中的Blockram是雙埠的……這意味著兩個代理可以同時訪問儲存器。通常,一個代理寫入記憶體,而另一個則讀取。因此,每個代理的記憶體都有獨立的地址和資料匯流排。上面的圖片在頂部顯示了第一個(寫)代理,在底部顯示了第二個(讀)代理。更高階的Blockram允許每個代理讀取和寫入,但是上面顯示的體系結構是最常用的。同樣,blockram通常也被同步使用,因此每個代理都必須提供一個時鐘(未在圖片中顯示)。
到目前為止,所顯示的記憶體是靜態的,這意味著僅透過對其施加電源即可儲存其內容。另外,靜態儲存器可以看作是一個長字形的線性陣列(您只需提供一個地址即可訪問匹配的資料...無需複雜)。需要權衡的是每位元成本要比...高得多。
動態記憶
我們將使用SDRAM,它是動態記憶體(SDRAM中的“ D”)。在動態記憶體中,記憶體不被視為單詞的長線性陣列,而是被組織為單詞的矩陣(行/列)。
上圖顯示行的12位和列的8位,如前所述總共有20個地址位...很容易。
有一種複雜性:為了提高效能,將記憶體分成相等的塊(稱為“儲存體”)。那是因為某些動態記憶體操作速度很慢,因此擁有儲存體可以在等待另一個儲存體的同時使用它。
因此,如果我們的16Mb SDRAM有2個儲存區,則每個儲存區擁有8Mb。
訪問SDRAM時,FPGA必須選擇儲存體(1位),行(現在只有11位)和列(8位),總共需要20位。但這是一個兩步過程:首先是行+庫,然後是列:
•FPGA選擇一個儲存區並啟用其行之一。然後它等待幾個時鐘(等待行準備就緒)。
•現在,該行處於活動狀態,FPGA只需提供列地址即可訪問(讀取和/或寫入)該行中所需的任何資料。
•FPGA處理完該行後,必須先關閉該行,然後再開啟新行。
為了獲得最佳效能,使用者(= FPGA)希望避免過多地開啟和關閉行,而是在關閉行之前儘可能多地完成工作,並在不同儲存體中進行交錯操作,以免浪費時鐘週期。大多數SDRAM實際上有4或8個儲存體,每個儲存體都是獨立的,因此可以啟用自己的行。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69975830/viewspace-2700440/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 偽靜態、靜態和動態的區別
- 動態庫和靜態庫的區別
- 動態圖和靜態圖的程式碼區別
- 靜態網頁和動態網頁的區別網頁
- 【知識分享】動態ip和靜態ip的區別
- 動態IP和靜態IP有什麼區別?
- 網站偽靜態和純靜態區別網站
- 動態連結庫和靜態連結庫的區別
- 動態IP與靜態IP的主要區別
- ios靜態庫與動態庫的區別iOS
- 【科普】靜態IP和動態IP有什麼區別?
- 【普】靜態IP和動態IP有什麼區別?
- 伺服器動態ip和靜態ip的區別和特點伺服器
- .NET偽靜態使用以及和純靜態的區別
- 靜態網頁與動態網頁的區別網頁
- 動態分佈與靜態分佈的區別
- apache動態編譯/靜態編譯區別Apache編譯
- 靜態內部類和非靜態內部類區別
- 區域性變數和全域性變數(靜態和非靜態)區別變數
- 宏旺半導體分析RAM、ROM、SDRAM、DRAM、DDR、flash之間的區別
- 【知識分享】伺服器動態ip和靜態ip的區別和特點伺服器
- 靜態IP是什麼意思?和動態IP 有什麼區別
- ios 開發中 動態庫 與靜態庫的區別iOS
- Java中靜態跟非靜態的區別總結Java
- 思科-Seven【NAT應用篇】!動態與靜態路由的區別和特點~~~路由
- c#物件導向- 靜態成員和非靜態成員的區別C#物件
- 【iCore4 雙核心板_ARM】例程三十七:SDRAM實驗——讀寫SDRAM
- Python 靜態方法和類方法的區別Python
- 靜態代理和動態代理
- 靜態路由和動態路由路由
- linux下靜態連結庫和動態連結庫的區別有哪些Linux
- 簡單理解動態記憶體分配和靜態記憶體分配的區別記憶體
- 靜態住宅IP與動態住宅IP有什麼區別?
- 機器學習的靜態特徵和動態特徵機器學習特徵
- java執行原理、靜態代理和動態代理區分Java
- oracle監聽器動態註冊於靜態註冊的區別Oracle
- SDRAM 不帶自動預充電寫操作
- DELPHI中的靜態虛擬及動態方法函式的區別。 (轉)函式