<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > DRAM 原理 2 :DRAM Memory Organization

          DRAM 原理 2 :DRAM Memory Organization

          作者: 時(shí)間:2017-10-11 來源:網(wǎng)絡(luò) 收藏

          Storage Cell 章節(jié)中,介紹了單個(gè) Cell 的結(jié)構(gòu)。在本章節(jié)中,將介紹 的組織方式。

          本文引用地址:http://www.ex-cimer.com/article/201710/365495.htm

          為了更清晰的描述 的組織方式,我們先對(duì)上一章節(jié)中的 Storage Cell 進(jìn)行抽象,最后得到新的結(jié)構(gòu)圖,如下:

          1. Array

          DRAM 在設(shè)計(jì)上,將所有的 以特定的方式組成一個(gè) Array。本小節(jié)將介紹 DRAM 中是如何將 Cells 以 特定形式的 Array 組織起來的。

          首先,我們?cè)诓豢紤]形式的情況下,最簡(jiǎn)單的組織方式,就是在一個(gè) Bitline 上,掛接更多的 Cells,如下圖所示:

          然而,在實(shí)際制造過程中,我們并不會(huì)無限制的在 Bitline 上掛接 Cells。因?yàn)?Bitline 掛接越多的 Cells,Bitline 的長(zhǎng)度就會(huì)越長(zhǎng),也就意味著 Bitline 的電容值會(huì)更大,這會(huì)導(dǎo)致 Bitline 的信號(hào)邊沿速率下降(電平從高變低或者從低變高的速率),最終導(dǎo)致性能的下降。為此,我們需要限制一條 Bitline 上掛接的 Cells 的總數(shù),將更多的 Cells 掛接到其他的 Bitline 上去。

          從 Cell 的結(jié)構(gòu)圖中,我們可以發(fā)現(xiàn),在一個(gè) Cell 的結(jié)構(gòu)中,有兩條 Bitline,它們?cè)诠δ苌鲜峭耆葍r(jià)的,因此,我們可以把 Cells 分?jǐn)偟讲煌?Bitline 上,以減小 Bitline 的長(zhǎng)度。然后,Cells 的組織方式就變成了如下的形式:

          當(dāng)兩條 Bitline 都掛接了足夠多的 Cells 后,如果還需要繼續(xù)拓展,那么就只能增加 Bitline 了,增加后的結(jié)構(gòu)圖如下:

          從圖中我們可以看到,增加 Bitline 后,Sense Amplifier、Read Latch 和 Write Driver 的數(shù)量也相應(yīng)的增加了,這意味著成本、功耗、芯片體積都會(huì)隨著增加。由于這個(gè)原因,在實(shí)際的設(shè)計(jì)中,會(huì)優(yōu)先考慮增加 Bitline 上掛接的 Cells 的數(shù)量,避免增加 Bitline 的數(shù)量,這也意味著,一般情況下 Wordline 的數(shù)量會(huì)比 Bitline 多很多。

          上圖中,呈現(xiàn)了一個(gè)由 16 個(gè) Cells 組成的 Memory Array。其中的控制信號(hào)有 8 個(gè) Wordline、2 個(gè) CSL、2 個(gè) WE,一次進(jìn)行 1 個(gè) Bit 的讀寫操,也就是可以理解為一個(gè) 8 x 2 x 1 的 Memory Array。

          如果把 2 個(gè) CSL 和 2 個(gè) WE 合并成 1 個(gè) CSL 和 1 個(gè) WE,如下圖所示。此時(shí),這個(gè) Memory Array 就有 8 Wordline、1 個(gè) CSL、1 個(gè) WE,一次可以進(jìn)行 2 個(gè) Bit 的讀寫操作,也就是成為了 8 x 1 x 2 的 Memory Array。

          按照上述的過程,不斷的增加 Cells 的數(shù)量,最終可以得到一個(gè) m x n x w 的 Memory Array,如下圖所示

          其中,m 為 Wordline 的數(shù)量、n 為 CSL 和 WE 控制信號(hào)的數(shù)量、w 則為一次可以進(jìn)行讀寫操作的 Bits。
          在實(shí)際的應(yīng)用中,我們通常以 Rows x Columns x Data Width 來描述一個(gè) Memory Array。后續(xù)的小節(jié)中,將對(duì)這幾個(gè)定義進(jìn)行介紹。

          1.1 Data Width

          Memory Array 的 Data Width 是指對(duì)該 Array 進(jìn)行一次讀寫操作所訪問的 Bit 位數(shù)。這個(gè)位數(shù)與 CSL 和 WE 控制線的組織方式有關(guān)。

          1.2 Rows

          DRAM Memory 中的 Row 與 Wordline 是一一對(duì)應(yīng)的,一個(gè) Row 本質(zhì)上就是所有接在同一根 Wordline 上的 Cells,如下圖所示。

          DRAM 在進(jìn)行數(shù)據(jù)讀寫時(shí),選中某一 Row,實(shí)質(zhì)上就是控制該 Row 所對(duì)應(yīng)的 Wordline,打開 Cells,并將 Cells 上的數(shù)據(jù)緩存到 Sense Amplifiers 上。

          Row Size

          一個(gè) Row 的 Size 即為一個(gè) Row 上面的 Cells 的數(shù)量。其中一個(gè) Cell 存儲(chǔ) 1 個(gè) Bit 的信息,也就是說,Row Size 即為一個(gè) Row 所存儲(chǔ)的 Bit 位數(shù)。

          1.3 Columns

          Column 是 Memory Array 中可尋址的最小單元。一個(gè) Row 中有 n 個(gè) Column,其中 n = Row Size / Data Width。下圖是 Row Size 為 32,Data Width 為 8 時(shí),Column 的示例。

          Column Size

          一個(gè) Column 的 Size 即為該 Column 上所包含的 Cells 的數(shù)量,與 Data Width 相同。Column Size 和 Data Width 在本質(zhì)上是一樣的,也是與 CSL 和 WE 控制線的組織方式有關(guān)(參考 Memory Array 小節(jié)中關(guān)于 CSL 的描述)。

          2. Memory Bank

          隨著 Bitline 數(shù)量的不斷增加,Wordline 上面掛接的 Cells 也會(huì)越來越多,Wordline 會(huì)越來越長(zhǎng),繼而也會(huì)導(dǎo)致電容變大,邊沿速率變慢,性能變差。因此,一個(gè) Memory Array 也不能無限制的擴(kuò)大。

          為了在不減損性能的基礎(chǔ)上進(jìn)一步增加容量,DRAM 在設(shè)計(jì)上將多個(gè) Memory Array 堆疊到一起,如下圖所示:

          其中的每一個(gè) Memory Array 稱為一個(gè) Bank,每一個(gè) Bank 的 Rows、Columns、Data Width 都是一樣的。在 DRAM 的數(shù)據(jù)訪問時(shí),只有一個(gè) Bank 會(huì)被激活,進(jìn)行數(shù)據(jù)的讀寫操作。

          以下是一個(gè) DRAM Memory OrganizaTIon 的例子:



          關(guān)鍵詞: DRAM Memory Cells

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();