雙口RAM - 臨時數(shù)據(jù)存儲媒介
隨機存儲器 - 英語:Random Access Memory,RAM又稱作“隨機存取存儲器”,臺灣、港澳稱作隨機存取記憶體,是與CPU直接交換數(shù)據(jù)的內(nèi)部存儲器,也叫主存。它可以隨時讀寫 - 刷新時除外,見下文,而且速度很快,通常作為操作系統(tǒng)或其他正在運行中的程序的臨時數(shù)據(jù)存儲媒介。
簡介
雙口RAM是在一個SRAM存儲器上具有兩套完全獨立的數(shù)據(jù)線、地址線和讀寫控制線,并允許兩個獨立的系統(tǒng)同時對該存儲器進行隨機性的訪問。即共享式多端口存儲器。
雙口RAM最大的特點是存儲數(shù)據(jù)共享。一個存儲器配備兩套獨立的地址、數(shù)據(jù)和控制線,允許兩個獨立的CPU或控制器同時異步地訪問存儲單元。因為數(shù)據(jù)共享,就必須存在訪問仲裁控制。內(nèi)部仲裁邏輯控制提供以下功能:對同一地址單元訪問的時序控制;存儲單元數(shù)據(jù)塊的訪問權(quán)限分配;信令交換邏輯(例如中斷信號)等。
雙口RAM可用于提高RAM的吞吐率,適用于作于實時的數(shù)據(jù)緩存。
特點
(1)對同一地址單元訪問的競爭控制
如果同時訪問雙口RAM的同一存儲單元,勢必造成數(shù)據(jù)訪問失真。為了防止沖突的發(fā)生,采用Busy邏輯控制,也稱硬件地址仲裁邏輯。此處只給出了地址總線選通信信號先于片選脈沖信號的情況,而且,兩端的片選信號至少相差tAPS——仲裁最小時間間隔(IDT7132為5ns),內(nèi)部仲裁邏輯控制才可給后訪問的一方輸出Busy閉鎖信號,將訪問權(quán)交給另一方直至結(jié)束對該地址單元的訪問,才撤消Busy閉鎖信號,將訪問權(quán)交給另一方直至結(jié)束對該地址單元的訪問,才撤消Busy閉鎖信號。
即使在極限情況,兩個CPU幾乎同時訪問同一單元——地址匹配時片選信號低跳變之差少于tAPS,Busy閉鎖信號也僅輸出給其中任一CPU,只允許一個CPU訪問該地址單元。仲裁控制不會同時向兩個CPU發(fā)Busy閉鎖信號。
(2)存儲單元數(shù)據(jù)塊的訪問權(quán)限分配
存儲單元數(shù)據(jù)塊的訪問權(quán)限分配只允許在某一時間段內(nèi)由1個CPU對自定義的某一數(shù)據(jù)塊進行讀寫操作,這將有助于存儲數(shù)據(jù)的保護,更有效地避免地址沖突。信號量(Semaphore,簡稱SEM)仲裁閉鎖就是一種硬件電路結(jié)合軟件實現(xiàn)訪問權(quán)限分配方法。SEM單元是與存儲單元無關(guān)的獨立標志單元,圖3給出了一個信號量閉鎖邏輯框圖。
兩個觸發(fā)器在初始化時均使SEM允許輸出為高電平,等待雙方申請SEM。如果收到一方寫入的SEM信號(通常低電平寫入),仲裁電路將使其中一個觸發(fā)器的SEM允許輸出端為低電平,而閉鎖另一個SEM允許輸出端使其繼續(xù)保持高電平。只有當(dāng)先請求的一方撤消SEM信號,即寫入高電平,才使另一SEM允許輸出端的閉鎖得到解除,恢復(fù)等待新的SEM申請。
(3)信令交換邏輯(signaling logic)
為了提高數(shù)據(jù)的交換能力,有些雙口RAM采用信令交換邏輯來通知對方。IDT7130(1K容量)就是采用中斷方式交換信令。利用兩個特殊的單元(3FFH和3FEH)作為信令字和中斷源。假設(shè)左端CPU向3FFH寫入信令,將由寫信號和地址選通信號觸發(fā)右端的中斷輸出,只有當(dāng)右端的CPU響應(yīng)中斷并讀取3FFH信令字單元,其中斷才被雙口RAM撤消。
