內(nèi)存-矩陣連接鎖存器
「在矩陣中,不并列排放鎖存器,做成網(wǎng)格的形式?!?/strong>
這樣存256位就可以使用16X16的網(wǎng)格。
「如果要啟用其中的某個寄存器,指明對應(yīng)的行號和列號即可?!?/strong>

如何實現(xiàn)只打開某個鎖存器
首先給定行號和列號,只有對應(yīng)的 「行號和列號都滿足條件時」 ,才會打開某個鎖存器的行列選擇器 「(ROW+COLUMN SELECT TEST)?!?/strong>
實現(xiàn)方案已經(jīng)看出來了**「使用的是AND門(也就是下圖的ROW+COLUMN SELECT TEST)」** ,那么這個行號和列號怎么轉(zhuǎn)換成對應(yīng)的比特01呢?(后面總結(jié)矩陣需要多少跟線的時候在講解)

如何實現(xiàn)"允許寫入線"
「和之前一樣也是用的一根允許寫入線來控制所有鎖存器的寫入線。」
但和之前稍微不同的是
「允許存儲不單單是允許寫入就可以存儲的了,還需要滿足另外一個條件就是:對應(yīng)的行列選擇器被打開」
因此需要在傳統(tǒng)的WRITE ENABLE的基礎(chǔ)上 AND 行列選擇器的開關(guān)。只有行號,列號,允許寫入線都是1才進(jìn)行存儲。
「而且每次只有一個鎖存器會這樣,這會在數(shù)據(jù)輸入線實現(xiàn)的時候有特別大的幫助」

如何實現(xiàn)數(shù)據(jù)輸入線
得益于之前的寫入判斷:只有行號,列號,允許寫入線都是1才進(jìn)行存儲,而且每次只有一個鎖存器會這樣。因此我們不需要向并排那樣每個鎖存器都有一個輸入線 「,矩陣只需要一個數(shù)據(jù)輸入線即可,因為每次只能操作一個鎖存器,其他鎖存器會忽略數(shù)據(jù)線上的值,因為沒有“允許寫入(行列不滿足)”」
大致修改流程
先鎖定行列矩陣中開啟哪個鎖存器,在判斷是否允許寫入,如果允許寫入那么數(shù)據(jù)線的值就是輸出,如果不允許寫入那么輸出不會改變
如何實現(xiàn)數(shù)據(jù)讀取線
類似數(shù)據(jù)輸入線一樣,每次鎖定要讀取的行列即可。「但是每次只可以輸出一個鎖存器上存儲的數(shù)字」
總結(jié)-矩陣后的256位內(nèi)存需要多少線
「答案是僅僅需要35跟線即可。」
一條數(shù)據(jù)線,一條允許寫入線,一條允許讀取線(強調(diào)!!每次只可讀取一位如果需要讀取多位需要將多個內(nèi)存向寄存器那樣把鎖存器并排放置),還有剩下32個線就是我們用于鎖定對應(yīng)行列的鎖存器,這個32跟線就是多路復(fù)用器的32跟線,下面介紹多路復(fù)用器
多路復(fù)用器----將行列二進(jìn)制地址轉(zhuǎn)換為行和列打開對應(yīng)的鎖存器
由于256位的寄存器行列數(shù)最大值也就是16,因此4位數(shù)足夠了。
轉(zhuǎn)換示例:比如行號12用二進(jìn)制表示:1100,列號8用二進(jìn)制表示:1000.因此行列的表示可以寫成**「11001000代表的是十二行第8列」**
選擇多路復(fù)用器
根據(jù)轉(zhuǎn)換的不同行列數(shù),需要不同的多路復(fù)用器。
上面我們用的都是16行,「因此行和列選擇的都是1到16多路復(fù)用器。一個多路復(fù)用器處理行,一個處理列」
工作方式
輸入四位數(shù)字,會選擇對應(yīng)的行或列,比如代表列的0000列的復(fù)用器會選擇第一列,如果是0001=1會選擇第二列,以此類推..

抽象-可以存儲256位的內(nèi)存
8位地址里面四位表示行號,另外四位表示列號
數(shù)據(jù)Data輸入線
允許寫入線:WRITE ENABLE
允許讀取線:READ ENABLE

存儲多位信息
我們從最初只能存儲一位的內(nèi)存發(fā)展到存儲八位的內(nèi)存再之后發(fā)展到剛剛提到的可以存儲256位的內(nèi)存(每次只可取一個位)。但是這一個**「可以存儲256位的內(nèi)存也只是每次可以輸出一位的信息,并沒有多大用處,因此將這些內(nèi)存再次鏈接起來,向寄存器那樣將多個鎖存器并排放置」**
「將八個256位內(nèi)存并排放置,每次都可以存儲一個八位的數(shù)字,八位也叫一個字節(jié)(byte)。」
「每次都給8個256位內(nèi)存一樣的地址,每個地址存一位,也就意味著總共能存256個字節(jié)」

抽象-看成一個整體的可尋址內(nèi)存
8-BIT ADDRESS INPUT:代表的是這八個256位內(nèi)存中使用的同一個行列,因此這個RAM有256個地址,而每個地址都可以讀寫一個8位的值,也就是可以存儲256X8位的信息,也即256個字節(jié)(byte)
「這個RAM有16個尋址空間地址,每個地址可以讀寫8位值,可以看到是由8個16位內(nèi)存組成」 下一篇文章將CPU的時候會用到

現(xiàn)在計算機(jī)的內(nèi)存已經(jīng)擴(kuò)展到了GB的方式,和上面介紹的一樣,也是不斷的打包這些矩陣,不斷把內(nèi)存打包到更大規(guī)模,8位最多能代表256個內(nèi)存地址,如果想要給千兆或者十億字節(jié)的內(nèi)存尋址(尋找地址),需要使用32位的地址。
總結(jié)
這篇文章,我們用**「鎖存器做了一個SRAM(靜態(tài)隨機(jī)存取存儲器)」** ,還有其他類型的RAM,比如DRAM,閃存和NVRAM。。他們在功能上和SRAM相同,但用不同的電路存單個位:比如 「用不同的邏輯門,電容器,電荷捕獲或憶阻器」 。但根本上,「這些技術(shù)都是矩陣層層嵌套來存儲大量信息。計算機(jī)底層其實很好理解,難得是一層層難以理解的抽象?!?/strong>
-
電源
+關(guān)注
關(guān)注
185文章
18622瀏覽量
260233 -
存儲器
+關(guān)注
關(guān)注
39文章
7698瀏覽量
170338 -
ROM
+關(guān)注
關(guān)注
4文章
578瀏覽量
88300
發(fā)布評論請先 登錄
鎖存器、觸發(fā)器、寄存器和緩沖器的區(qū)別
觸發(fā)器、鎖存器、寄存器三者的區(qū)別
【轉(zhuǎn)】數(shù)字電路三劍客:鎖存器、觸發(fā)器和寄存器
RFM反射內(nèi)存5565控制和狀態(tài)寄存器
如何使用鎖存器的Time Borrowing技術(shù)來替代關(guān)鍵路徑中的寄存器
如何在VHDL中實現(xiàn)一個簡單的寄存器
鎖存器、觸發(fā)器、寄存器的關(guān)聯(lián)與區(qū)別及其相應(yīng)的verilog描述
簡單利用鎖存器做一個寄存器和內(nèi)存(上)
什么是鎖存器 與寄存器有何區(qū)別
帶輸入鎖存器的8位移位寄存器數(shù)據(jù)表

簡單利用鎖存器做一個寄存器和內(nèi)存(下)
評論