雙埠SRAM中讀干擾問題

来源:https://www.cnblogs.com/wridy/archive/2020/07/23/13366052.html
-Advertisement-
Play Games

普通的存儲器器件為單埠,也就是數據的輸入輸出只利用一個埠,設計了兩個輸入輸出埠的就是雙埠sram。雖然還具有擴展系列的4埠sram,但雙埠sram已經非常不錯了。雙埠sram經常應用於cpu與其周邊控制器等類似需要直接訪問存儲器或者需要隨機訪問緩衝器之類的器件之間進行通信的情況。從存儲 ...


普通的存儲器器件為單埠,也就是數據的輸入輸出只利用一個埠,設計了兩個輸入輸出埠的就是雙埠sram。雖然還具有擴展系列的4埠sram,但雙埠sram已經非常不錯了。雙埠sram經常應用於cpu與其周邊控制器等類似需要直接訪問存儲器或者需要隨機訪問緩衝器之類的器件之間進行通信的情況。

從存儲單元來看,雙埠SRAM只是在單埠SRAM的基礎上加上了兩個存取管(見圖1),但要實現兩個埠對存儲單元的獨立讀寫,還要對新增的埠複製一套單埠SRAM的讀寫外圍電路。然而這樣雖然增強了存儲器的讀寫能力,但卻是以降低存儲單元的穩定性為代價的,具體表現為雙埠SRAM的兩個埠進行同行存取時發生的讀寫干擾(Read/WriteDisturbance)問題;並且當兩個埠進行非同步存取時,讀寫干擾會表現出一定的規律性;對讀寫干擾問題目前尚未找到完美的解決方法,現有的各個方法都具有一定的側重方向。
 

 

圖1雙埠SRAM單元

 
讀干擾的原理分析
 
如圖2(a)所示,當雙埠SRAM的兩個埠對不同的行進行操作時,只有連接在WLAn-1和WLBn上的存取管才會被打開,即一個雙埠SRAM存儲單元只有兩個存取管被打開,所以此時雙埠SRAM單元可以像單埠SRAM單元一樣工作。但是如果兩個埠對同一行進行操作時,如圖2(b),由於半選擇問題該行所有存儲單元的所有存取管都將被打開。當一個進行讀操作的存儲單元的所有存取管都被打開時,和單埠SRAM讀操作時存取管降低RSNM同理,該單元的RSNM將有更大幅度的下降,這稱為讀干擾;此外,偽讀取操作對執行寫操作的存儲單元的數據寫入也會造成困難,這稱為寫干擾。現在假設A埠在進行讀操作,B埠在進行寫操作,下麵分別分析讀干擾。

 

圖2埠SRAM的兩種存取情形

 
讀干擾
 
圖3是圖2(b)中左邊進行讀操作的存儲單元的具體情形,可以看到,B埠的寫操作使WLB為高電平,此高電平對該單元產生了偽讀取操作。與單埠SRAM的讀取操作相比,下拉管N1將同時對BLA和BLB放電,這將導致兩個結果:第一,對BLA的放電電流減小,造成讀取時間增加;第二,D點電壓將會比單埠SRAM中讀取操作升高得更高,從而進一步降低RSNM,甚至直接使單元翻轉。對於後者可以這樣簡單地分析:N3和N5同時打開後,二者並聯,若將其看成整體,則存取管的寬度將增加一倍,其“電阻”減半,而N1的電阻不變,故在放電通路上D點的分壓變得更高;對於前者,雖然放電通路的電阻減小,N1的下拉電流增大,但其還沒有增大到原來的兩倍(其寬度加倍電流才會加倍),而N3和N5的電流相等,故N3分得的電流較之單埠SRAM將減小。

 
圖3雙埠SRAM單元中的讀干擾
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Linux 常用軟體推薦 一些個人使用的工具, 以及對應的Windows下替代品. 大部分都是免費/開源的軟體 圖形圖像 Blender - 3D Modeling dikiKam - 圖片管理 - (Adobe Lightroom) GIMP - 圖片處理 - (Adobe Photoshop) ...
  • 在Ubuntu 18.04上搭建開發學習常用的軟體環境(git、中文輸入法、qq、微信、Android Studio、Intellij Idea、Pycharm、Electron、Eclipse、Firefox、Chrome、MySQL、Tomcat、Sublime、Typora、WPS、Java、... ...
  • 在Ubuntu上安裝QQ、微信、TIM等軟體一直是一個老大難的問題,網上搜集到的博客也比較零散,本篇博客較詳細地記錄了Wine系列軟體的安裝以及托盤圖標功能的安裝過程,同時記錄了幾種常見的問題 ...
  • 在vmware虛擬機環境下: 實驗環境: 1,CentOS7伺服器,ip地址192.168.118.10/24 2,win7客戶端,ip地址192.168.118.100/24 一,搭建伺服器 1,配置本地yum源 [root@localhost ~]# cd /etc/yum.repos.d [r ...
  • session複製集群的原理就是通過多播通信的方式,把節點的session信息發送給集群其他節點;這種session複製集群有一個缺陷,如果後端tomcat server 一旦增多,那麼對於後端用於發送session信息的網路會非常擁擠,到達一定的量以後,後端網路就可能癱瘓,這樣一來session... ...
  • 安裝自動補齊需要依賴工具 yum install -y bash-completion docker命令補齊: 執行下列命令 sh /usr/share/bash-completion/bash_completion sh /usr/share/bash-completion/completions ...
  • 我對ubuntu的紫色不太喜歡,我比較喜歡黑色;雖然20.04版本換成了黑色,登錄界面也很好看;但是我用的是舊版本ubuntu,所以只能動手改了; grub界面顏色設置: vim /usr/share/plymouth/themes/ubuntu-logo/ubuntu-logo.grub; 結束後 ...
  • 近期,重新玩了玩kali下的airmon-ng等一套工具“破解”自家wifi密碼。 首先,有關處理2.4Ghz的wifi,在網上講解詳細且含圖文搭配的教程有許多,所以在這裡就不多贅述了。 這裡,主要說明一下處理5Ghz的wifi,在鎖定目標wifi後使用aireplay-ng指令抓取握手包時在確定無 ...
一周排行
    -Advertisement-
    Play Games
  • Timer是什麼 Timer 是一種用於創建定期粒度行為的機制。 與標準的 .NET System.Threading.Timer 類相似,Orleans 的 Timer 允許在一段時間後執行特定的操作,或者在特定的時間間隔內重覆執行操作。 它在分散式系統中具有重要作用,特別是在處理需要周期性執行的 ...
  • 前言 相信很多做WPF開發的小伙伴都遇到過表格類的需求,雖然現有的Grid控制項也能實現,但是使用起來的體驗感並不好,比如要實現一個Excel中的表格效果,估計你能想到的第一個方法就是套Border控制項,用這種方法你需要控制每個Border的邊框,並且在一堆Bordr中找到Grid.Row,Grid. ...
  • .NET C#程式啟動閃退,目錄導致的問題 這是第2次踩這個坑了,很小的編程細節,容易忽略,所以寫個博客,分享給大家。 1.第一次坑:是windows 系統把程式運行成服務,找不到配置文件,原因是以服務運行它的工作目錄是在C:\Windows\System32 2.本次坑:WPF桌面程式通過註冊表設 ...
  • 在分散式系統中,數據的持久化是至關重要的一環。 Orleans 7 引入了強大的持久化功能,使得在分散式環境下管理數據變得更加輕鬆和可靠。 本文將介紹什麼是 Orleans 7 的持久化,如何設置它以及相應的代碼示例。 什麼是 Orleans 7 的持久化? Orleans 7 的持久化是指將 Or ...
  • 前言 .NET Feature Management 是一個用於管理應用程式功能的庫,它可以幫助開發人員在應用程式中輕鬆地添加、移除和管理功能。使用 Feature Management,開發人員可以根據不同用戶、環境或其他條件來動態地控制應用程式中的功能。這使得開發人員可以更靈活地管理應用程式的功 ...
  • 在 WPF 應用程式中,拖放操作是實現用戶交互的重要組成部分。通過拖放操作,用戶可以輕鬆地將數據從一個位置移動到另一個位置,或者將控制項從一個容器移動到另一個容器。然而,WPF 中預設的拖放操作可能並不是那麼好用。為瞭解決這個問題,我們可以自定義一個 Panel 來實現更簡單的拖拽操作。 自定義 Pa ...
  • 在實際使用中,由於涉及到不同編程語言之間互相調用,導致C++ 中的OpenCV與C#中的OpenCvSharp 圖像數據在不同編程語言之間難以有效傳遞。在本文中我們將結合OpenCvSharp源碼實現原理,探究兩種數據之間的通信方式。 ...
  • 一、前言 這是一篇搭建許可權管理系統的系列文章。 隨著網路的發展,信息安全對應任何企業來說都越發的重要,而本系列文章將和大家一起一步一步搭建一個全新的許可權管理系統。 說明:由於搭建一個全新的項目過於繁瑣,所有作者將挑選核心代碼和核心思路進行分享。 二、技術選擇 三、開始設計 1、自主搭建vue前端和. ...
  • Csharper中的表達式樹 這節課來瞭解一下表示式樹是什麼? 在C#中,表達式樹是一種數據結構,它可以表示一些代碼塊,如Lambda表達式或查詢表達式。表達式樹使你能夠查看和操作數據,就像你可以查看和操作代碼一樣。它們通常用於創建動態查詢和解析表達式。 一、認識表達式樹 為什麼要這樣說?它和委托有 ...
  • 在使用Django等框架來操作MySQL時,實際上底層還是通過Python來操作的,首先需要安裝一個驅動程式,在Python3中,驅動程式有多種選擇,比如有pymysql以及mysqlclient等。使用pip命令安裝mysqlclient失敗應如何解決? 安裝的python版本說明 機器同時安裝了 ...