存儲器

存儲器

存儲器(Memory)是現代信息技術中用于儲存信息的記憶設備。其概念很廣,有很多層次,在數位系統中,隻要能儲存二進位資料的都可以是存儲器;在積體電路中,一個沒有實物形式的具有存儲功能的電路也叫存儲器,如RAM、FIFO等;在系統中,具有實物形式的存儲設備也叫存儲器,如記憶體條、TF卡等。電腦中全部信息,包括輸入的原始資料、電腦程式、中間運行結果和最終運行結果都儲存在存儲器中。它根據控製器指定的位置存入和取出信息。有了存儲器,電腦才有記憶功能,才能保證正常工作。電腦中的存儲器按用途存儲器可分為主存儲器(記憶體)和輔助存儲器(外存),也有分為外部存儲器和內部存儲器的分類方法。外存通常是磁性介質或光碟等,能長期儲存信息。記憶體指主機板上的存儲部件,用來存放當前正在執行的資料和程式,但僅用于暫時存放程式和資料,關閉電源或斷電,資料會丟失。

  • 中文名稱
    存儲器
  • 外文名稱
    Memory
  • 功能
    用來存放程式和資料
  • 類別
    記憶設備

​概述

存儲器的主要功能是存儲程式和各種資料,並能在電腦運行過程中高速、自動地完成程式或資料的存取。存儲器是具有“記憶”功能的設備,它採用具有兩種穩定狀態的物理器件來存儲信息。這些器件也稱為記憶元件。在電腦中採用隻有兩個數碼“0”和“1”的二進位來表示資料。中國聯保網記憶元件的兩種穩定狀態分別表示為“0”和“1”。日常使用的十進位數必須轉換成等值的二進位數才能存入存儲器中。電腦中處理的各種字元,例如英文字母、運算符號等,也要轉換成二進位代碼才能存儲和操作。

存儲器

存儲器:存放程式和資料的器件

存儲位:存放一個二進位數位的存儲單元,是存儲器最小的存儲單位,或稱記憶單元

存儲字:一個數(n位二進位位)作為一個整體存入或取出時,稱存儲字

存儲單元:存放一個存儲字的若幹個記憶單元組成一個存儲單元

存儲體:大量存儲單元的集合組成存儲體

存儲單元地址:存儲單元的編號

字編址:對存儲單元按字編址

位元組編址:對存儲單元按位元組編址

定址:由地址尋找資料,從對應地址的存儲單元中訪存資料。

構成

構成存儲器的存儲介質,目前主要採用半導體器件和磁性材料。存儲器中最小的存儲單位就是一個雙穩態半導體電路或一個CMOS電晶體或磁性材料的存儲元,它可存儲一個二進位代碼。由若幹個存儲元組成一個存儲單元,然後再由許多存儲單元組成一個存儲器。一個存儲器包含許多存儲單元,每個存儲單元可存放一個位元組(按位元組編址)。每個存儲單元的位置都有一個編號,即地址,一般用十六進位表示。一個存儲器中所有存儲單元可存放資料的總和稱為它的存儲容量。假設一個存儲器的地址碼由20位二進位數(即5位十六進位數)組成,則可表示2的20次方,即1M個存儲單元地址。每個存儲單元存放一個位元組,則該存儲器的存儲容量為1MB。

存儲器

分類

按存儲介質分

半導體存儲器:用半導體器件組成的存儲器。

存儲器

磁表面存儲器:用磁性材料做成的存儲器。

按存儲方式分

隨機存儲器:任何存儲單元的內容都能被隨機存取,且存取時間和存儲單元的物理位置無關。

順序存儲器:隻能按某種順序來存取,存取時間和存儲單元的物理位置有關。

按存儲器的讀寫功能分

唯讀存儲器(ROM):存儲的內容是固定不變的,隻能讀出而不能寫入的半導體存儲器。

隨機讀寫存儲器(RAM):既能讀出又能寫入的半導體存儲器。

按信息的可儲存性分

非永久記憶的存儲器:斷電後信息即消失的存儲器。

存儲器

永久記憶性存儲器:斷電後仍能儲存信息的存儲器。

按存儲器用途分

根據存儲器在電腦系統中所起的作用,可分為主存儲器、輔助存儲器、高速緩沖存儲器、控製存儲器等。

為了解決對存儲器要求容量大,速度快,成本低三者之間的矛盾,目前通常採用多級存儲器體系結構,即使用高速緩沖存儲器、主存儲器和外存儲器。

名稱簡稱用途特點

高速緩沖存儲器 Cache 高速存取指令和資料存取速度快,但存儲容量小

主存儲器 記憶體存放電腦運行期間的大量程式和資料 存取速度較快,存儲容量不大

外存儲器 外存存放系統程式和大型資料檔案及資料庫 存儲容量大,位成本低

工作原理

這裏隻介紹動態存儲器(DRAM)的工作原理。

動態存儲器每片隻有一條輸入資料線,而地址引腳隻有8條。為了形成64K地址,必須在系統地址匯流排和晶片地址引線之間專門設計一個地址形成電路。使系統地址匯流排信號能分時地加到8個地址的引腳上,借助晶片內部的行鎖存器、列鎖存器和解碼電路選定晶片內的存儲單元,鎖存信號也靠著外部地址電路產生。

存儲器

當要從DRAM晶片中讀出資料時,CPU首先將行地址加在A0-A7上,而後送出RAS鎖存信號,該信號的下降沿將地址鎖存在晶片內部。接著將列地址加到晶片的A0-A7上,再送CAS鎖存信號,也是在信號的下降沿將列地址鎖存在晶片內部。然後保持WE=1,則在CAS有效期間資料輸出並保持。

當需要把資料寫入晶片時,行列地址先後將RAS和CAS鎖存在晶片內部,然後,WE有效,加上要寫入的資料,則將該資料寫入選中的存貯單元。

由于電容不可能長期保持電荷不變,必須定時對動態存儲電路的各存儲單元執行重讀操作,以保持電荷穩定,這個過程稱為動態存儲器重新整理。PC/XT機中DRAM的重新整理是利用DMA實現的。首先套用可程式定時器8253的計數器1,每隔1⒌12μs產生一次DMA請求,該請求加在DMA控製器的0通道上。當DMA控製器0通道的請求得到回響時,DMA控製器送出到重新整理地址信號,對動態存儲器執行讀操作,每讀一次重新整理一行。

功能

存儲器功能定址方式掉電後說明
隨機存取存儲器(RAM)讀、寫隨機定址資料丟失
唯讀存儲器(ROM)隨機定址資料不丟失工作前寫入資料
快閃記憶體(Flash Memory)讀、寫隨機定址資料不丟失
先進先出存儲器(FIFO)讀、寫順序定址資料丟失
先進後出存儲器(FILO)讀、寫順序定址資料丟失

層次

按照與CPU的接近程度,存儲器分為記憶體儲器與外存儲器,簡稱記憶體與外存。記憶體儲器又常稱為主存儲器(簡稱主存),屬于主機的組成部分;外存儲器又常稱為輔助存儲器(簡稱輔存),屬于外部設備。CPU不能像訪問記憶體那樣,直接訪問外存,外存要與CPU或I/O設備進行資料傳輸,必須通過記憶體進行。在80386以上的高檔微機中,還配置了高速緩沖存儲器(cache),這時記憶體包括主存與高速快取兩部分。對于低檔微機,主存即為記憶體。

存儲器

把存儲器分為幾個層次主要基于下述原因:

1、合理解決速度與成本的矛盾,以得到較高的性能價格比。半導體存儲器速度快,但價格高,容量不宜做得很大,因此僅用作與CPU頻繁交流信息的記憶體儲器。磁碟存儲器價格較便宜,可以把容量做得很大,但存取速度較慢,因此用作存取次數較少,且需存放大量程式、原始資料(許多程式和資料是暫時不參加運算的)和運行結果的外存儲器。電腦在執行某項任務時,僅將與此有關的程式和原始資料從磁碟上調入容量較小的記憶體,通過CPU與記憶體進行高速的資料處理,然後將最終結果通過記憶體再寫入磁碟。這樣的配置價格適中,綜合存取速度則較快。

存儲器

為解決高速的CPU與速度相對較慢的主存的矛盾,還可使用高速快取。它採用速度很快、價格更高的半導體靜態存儲器,甚至與微處理器做在一起,存放當前使用最頻繁的指令和資料。當CPU從記憶體中讀取指令與資料時,將同時訪問高速快取與主存。如果所需內容在高速快取中,就能立即獲取;如沒有,再從主存中讀取。高速快取中的內容是根據實際情況及時更換的。這樣,通過增加少量成本即可獲得很高的速度。

存儲器

2、使用磁碟作為外存,不僅價格便宜,可以把存儲容量做得很大,而且在斷電時它所存放的信息也不丟失,可以長久儲存,且復製、攜帶都很方便。

管理

伺服器在存儲器環境按這樣的方法分配存儲器:在某個環境分配的存儲器可以被環境析構器釋放而不會影響其他環境中分配的存儲器.所有存儲器分配(通過 palloc 等)都被當作在當前環境的區域中分配存儲器.如果你嘗試釋放(或再分配)不在當前環境的存儲器,你將得到不可預料的結果.

存儲器

建立存儲器環境和切換存儲器環境是 SPI 管理器中存儲器管理器的任務.

SPI過程處理兩種存儲器環境:上層執行器存儲器環境和過程存儲器環境(如果已聯接).

在一個過程與 SPI管理器聯接之前,當前存儲器環境是上層執行器環境,所以所有由過程自身通過 palloc/repalloc 或通過SPI 套用函式在聯接到SPI 管理器之前分配的存儲器都在這個環境裏.

在進行SPI_connect 調用之後,當前環境是過程自身所有的.通過 palloc/repalloc 或通過SPI 套用函式分配的存儲器(除了SPI_copytuple,SPI_modifytuple,SPI_palloc 和SPI_repalloc 以外)都在這個環境中分配.

存儲器

當進程與 SPI 管理器斷開(通過調用SPI_finish)後,當前環境恢復為上層執行器環境並且所有在過程存儲器環境分配的存儲器都被釋放,並且不可繼續使用!

如果你想返回一些東西給上層執行器,那麽你必須為此在上層環境分配一片存儲器!

SPI 不能自動釋放在上層執行器環境裏分配的存儲器!

SPI 在查詢完成後自動釋放查詢執行期間的存儲器分配!

實體

可以是一張卡,也可以是軟碟,可以是活動的,也可以是固定的,用于儲存圖像。

cf快閃記憶體卡

一種迷你快閃記憶體卡,(compact flash card)。像pc卡那樣插入數碼相機,它可用適配器,(又稱轉接卡),使之適應標準的pc卡閱讀器或其他的pc卡設備。cf存儲卡的部分結構採用強化玻璃及金屬外殼,cf存儲卡採用standard ata/ide接口介面,配備有專門的pcm-cia適配器(轉接卡),筆電的使用者可直接在pcmcia插槽上使用,使資料很容易在數碼相機與電腦之間傳遞。

sm快閃記憶體卡

即smart media,智慧型媒體卡,一種存儲媒介。sm卡採用了ssfdg/flash記憶體卡,具有超小超薄超輕等特徵,體積37(長)×45(寬)×0.76(厚)毫米,重量是1.8g,功耗低,容易升級,sm轉換卡也有pcmcia介面,方便使用者進行資料傳送。

存儲器

memory stick duo

memory stick duo即微型記憶棒,微型記憶棒的體積和重量都為普通記憶棒的三分之一左右,目前最大存儲容量可以達到4g。

sd快閃記憶體卡

即SecureDigital, 32×24×2.11 存儲的速度快,非常小巧,面板和MMC一樣,目前市面上較多數數碼相機使用這種格式的存儲卡,市場佔有率第一。

xd快閃記憶體卡

即Fuji film(富士膠卷)和OLYMPUS(奧林巴斯)聯合推出的xD-Picture卡,體形很小,傳輸速度很快,不過價格很昂貴。

存儲器

mmc快閃記憶體卡

即MultiMedia Card ,外型和SD完全一樣,很多時候也通用。

微硬碟

是一種比較高端的存貯產品,目前“Hitachi(日立)”和國產品牌“南方匯通”都推出了自己的微硬碟產品。微型硬碟外型和CF卡完全一樣,使用同一型號接口。

優卡

優卡是lexar公司生產的一種數碼相機存儲介質,外形和一般的cf卡相同,可以用在使用cf卡的數碼相機、pda、mp3等數碼設備上,同時可以直接通過usb接口與電腦系統在線上,用作移動存儲器。

存儲器

數位膠卷

數位膠卷是lexar公司生產的的一種數碼相機的存儲介質,同日立的sm卡、松下的sd卡、新力的memorystick屬同類的數位存儲媒體。

pc卡轉換器

一種接外掛程式,可以把cf卡或sm卡插入其中,然後,整體作為一個pc卡插入電腦的pcmica插口,這是常用于便攜機的一種通用擴展接口,可以接入pcmica記憶體卡、pcmica硬碟、pcmica數據機等。

選用

存儲器的類型將決定整個嵌入式系統的操作和性能,因此存儲器的選擇是一個非常重要的決策。無論系統是採用電池供電還是由市電供電,套用需求將決定存儲器的類型(易失性或非易失性)以及使用目的(存儲代碼、資料或者兩者兼有)。另外,在選擇過程中,存儲器的尺寸和成本也是需要考慮的重要因素。對于較小的系統,微控製器自帶的存儲器就有可能滿足系統要求,而較大的系統可能要求增加外部存儲器。為嵌入式系統選擇存儲器類型時,需要考慮一些設計參數,包括微控製器的選擇、電壓範圍、電池壽命、讀寫速度、存儲器尺寸、存儲器的特徵、擦除/寫入的耐久性以及系統總成本。

選擇存儲器時應遵循的基本原則

1.內部存儲器與外部存儲器

一般情況下,當確定了存儲程式代碼和資料所需要的存儲空間之後,設計工程師將決定是採用內部存儲器還是外部存儲器。通常情況下,內部存儲器的性價比最高但彈性最低,因此設計工程師必須確定對存儲的需求將來是否會成長,以及是否有某種途徑可以升級到代碼空間更大的微控製器。基于成本考慮,人們通常選擇能滿足套用要求的存儲器容量最小的微控製器,因此在預測代碼規模的時候要必須特別小心,因為代碼規模增大可能要求更換微控製器。

目前市場上存在各種規模的外部存儲器器件,我們很容易通過增加存儲器來適應代碼規模的增加。有時這意味著以封裝尺寸相同但容量更大的存儲器替代現有的存儲器,或者在匯流排上增加存儲器。即使微控製器帶有內部存儲器,也可以通過增加外部串列EEPROM或快閃記憶體來滿足系統對非易失性存儲器的需求。

2.引導存儲器

在較大的微控製器系統或基于處理器的系統中,設計工程師可以利用引導代碼進行初始化。套用本身通常決定了是否需要引導代碼,以及是否需要專門的引導存儲器。例如,如果沒有外部的定址匯流排或串列引導接口,通常使用內部存儲器,而不需要專門的引導器件。但在一些沒有內部程式存儲器的系統中,初始化是操作代碼的一部分,因此所有代碼都將駐留在同一個外部程式存儲器中。某些微控製器既有內部存儲器也有外部定址匯流排,在這種情況下,引導代碼將駐留在內部存儲器中,而操作代碼在外部存儲器中。這很可能是最安全的方法,因為改變操作代碼時不會出現意外地修改引導代碼。在所有情況下,引導存儲器都必須是非易失性存儲器。

3.配置存儲器

對于現場可程式門陣列(FPGA)或片上系統(SoC),人們使用存儲器來存儲配置信息。這種存儲器必須是非易失性EPROM、EEPROM或快閃記憶體。大多數情況下,FPGA採用SPI接口,但一些較老的器件仍採用FPGA串列接口。串列EEPROM或快閃記憶體器件最為常用,EPROM用得較少。

4.程式存儲器

所有帶處理器的系統都採用程式存儲器,但設計工程師必須決定這個存儲器是位于處理器內部還是外部。在做出了這個決策之後,設計工程師才能進一步確定存儲器的容量和類型。當然有的時候,微控製器既有內部程式存儲器也有外部定址匯流排,此時設計工程師可以選擇使用它們當中的任何一個,或者兩者都使用。這就是為什麽為某個套用選擇最佳存儲器的問題,常常由于微控製器的選擇變得復雜起來,以及為什麽改變存儲器的規模也將導致改變微控製器的選擇的原因。

如果微控製器既利用內部存儲器也利用外部存儲器,則內部存儲器通常被用來存儲不常改變的代碼,而外部存儲器用于存儲更新比較頻繁的代碼和資料。設計工程師也需要考慮存儲器是否將被線上重新編程或用新的可程式器件替代。對于需要重編程功能的套用,人們通常選用帶有內部快閃記憶體的微控製器,但帶有內部OTP或ROM和外部快閃記憶體或EEPROM的微控製器也滿足這個要求。為降低成本,外部快閃記憶體可用來存儲代碼和資料,但在存儲資料時必須小心避免意外修改代碼。

在大多數嵌入式系統中,人們利用快閃記憶體存儲程式以便線上升級韌體。代碼穩定的較老的套用系統仍可以使用ROM和OTP存儲器,但由于快閃記憶體的通用性,越來越多的套用系統正轉向快閃記憶體。

5.資料存儲器

與程式存儲器類似,資料存儲器可以位于微控製器內部,或者是外部器件,但這兩種情況存在一些差別。有時微控製器內部包含SRAM(易失性)和EEPROM(非易失)兩種資料存儲器,但有時不包含內部EEPROM,在這種情況下,當需要存儲大量資料時,設計工程師可以選擇外部的串列EEPROM或串列快閃記憶體器件。當然,也可以使用並行EEPROM或快閃記憶體,但通常它們隻被用作程式存儲器。

當需要外部高速資料存儲器時,通常選擇並行SRAM並使用外部串列EEPROM器件來滿足對非易失性存儲器的要求。一些設計還將快閃記憶體器件用作程式存儲器,但保留一個扇區作為資料存儲區。這種方法可以降低成本、空間並提供非易失性資料存儲器。

針對非易失性存儲器要求,串列EEPROM器件支持I2C、SPI或微線(Microwire)通訊匯流排,而串列快閃記憶體通常使用SPI匯流排。由于寫入速度很快且帶有I2C和SPI串列接口,FRAM在一些系統中得到套用。

6.易失性和非易失性存儲器

存儲器可分成易失性存儲器或者非易失性存儲器,前者在斷電後將丟失資料,而後者在斷電後仍可保持資料。設計工程師有時將易失性存儲器與後備電池一起使用,使其表現猶如非易失性器件,但這可能比簡單地使用非易失性存儲器更加昂貴。然而,對要求存儲器容量非常大的系統而言,帶有後備電池的DRAM可能是滿足設計要求且性價比很高的一種方法。

在有連續能量供給的系統中,易失性或非易失性存儲器都可以使用,但必須基于斷電的可能性做出最終決策。如果存儲器中的信息可以在電力恢復時從另一個信源中恢復出來,則可以使用易失性存儲器。

選擇易失性存儲器與電池一起使用的另一個原因是速度。盡管非易失存儲器件可以在斷電時保持資料,但寫入資料(一個位元組、頁或扇區)的時間較長。

7.串列存儲器和並行存儲器

在定義了套用系統之後,微控製器的選擇是決定選擇串列或並行存儲器的一個因素。對于較大的套用系統,微控製器通常沒有足夠大的內部存儲器,這時必須使用外部存儲器,因為外部定址匯流排通常是並行的,外部的程式存儲器和資料存儲器也將是並行的。

較小的套用系統通常使用帶有內部存儲器但沒有外部地址匯流排的微控製器。如果需要額外的資料存儲器,外部串列存儲器件是最佳選擇。大多數情況下,這個額外的外部資料存儲器是非易失性的。

根據不同的設計,引導存儲器可以是串列也可以是並行的。如果微控製器沒有內部存儲器,並行的非易失性存儲器件對大多數套用系統而言是正確的選擇。但對一些高速套用,可以使用外部的非易失性串列存儲器件來引導微控製器,並允許主代碼存儲在內部或外部高速SRAM中。

8.EEPROM與快閃記憶體

存儲器技術的成熟使得RAM和ROM之間的界限變得很模糊,如今有一些類型的存儲器(如EEPROM和快閃記憶體)組合了兩者的特徵。這些器件像RAM一樣進行讀寫,並像ROM一樣在斷電時保持資料,它們都可電擦除且可程式,但各自有它們優缺點。

從軟體角度看,獨立的EEPROM和快閃記憶體器件是類似的,兩者主要差別是EEPROM器件可以逐位元組地修改,而快閃記憶體器件隻支持扇區擦除以及對被擦除單元的字、頁或扇區進行編程。對快閃記憶體的重新編程還需要使用SRAM,因此它要求更長的時間內有更多的器件在工作,從而需要消耗更多的電池能量。設計工程師也必須確認在修改資料時有足夠容量的SRAM可用。

存儲器密度是決定選擇串列EEPROM或者快閃記憶體的另一個因素。市場上目前可用的獨立串列EEPROM器件的容量在128KB或以下,獨立快閃記憶體器件的容量在32KB或以上。

如果把多個器件級聯在一起,可以用串列EEPROM實現高于128KB的容量。很高的擦除/寫入耐久性要求促使設計工程師選擇EEPROM,因為典型的串列EEPROM可擦除/寫入100萬次。快閃記憶體一般可擦除/寫入1萬次,隻有少數幾種器件能達到10萬次。

今天,大多數快閃記憶體器件的電壓範圍為2.7V到3.6V。如果不要求位元組定址能力或很高的擦除/寫入耐久性,在這個電壓範圍內的套用系統採用快閃記憶體,可以使成本相對較低。

9.EEPROM與FRAM

EEPROM和FRAM的設計參數類似,但FRAM的可讀寫次數非常高且寫入速度較快。然而通常情況下,使用者仍會選擇EEPROM而不是FRAM,其主要原因是成本(FRAM較為昂貴)、質量水準和供貨情況。設計工程師常常使用成本較低的串列EEPROM,除非耐久性或速度是強製性的系統要求。

DRAM和SRAM都是易失性存儲器,盡管這兩種類型的存儲器都可以用作程式存儲器和資料存儲器,但SRAM主要用于資料存儲器。DRAM與SRAM之間的主要差別是資料存儲的壽命。隻要不斷電,SRAM就能保持其資料,但DRAM隻有極短的資料壽命,通常為4毫秒左右。

存儲器

與SRAM相比,DRAM似乎是毫無用處的,但位于微控製器內部的DRAM控製器使DRAM的性能表現與SRAM一樣。DRAM控製器在資料消失之前周期性地重新整理所存儲的資料,所以存儲器的內容可以根據需要保持長時間。

由于比特成本低,DRAM通常用作程式存儲器,所以有龐大存儲要求的套用可以從DRAM獲益。它的最大缺點是速度慢,但電腦系統使用高速SRAM作為高速緩沖存儲器來彌補DRAM的速度缺陷。

小結

盡管我們幾乎可以使用任何類型的存儲器來滿足嵌入式系統的要求,但終端套用和總成本要求通常是影響我們做出決策的主要因素。有時,把幾個類型的存儲器結合起來使用能更好地滿足套用系統的要求。例如,一些PDA設計同時使用易失性存儲器和非易失性存儲器作為程式存儲器和資料存儲器。把永久的程式儲存在非易失性ROM中,而把由使用者下載的程式和資料存儲在有電池支持的易失性DRAM中。不管選擇哪種存儲器類型,在確定將被用于最終套用系統的存儲器之前,設計工程師必須仔細折中考慮各種設計因素。

測試

存儲器測試的目的是確認在存儲設備中的每一個存儲位置都在工作。換一句話說,如果你把數50存儲在一個具體的地址,你希望可以找到存儲在那裏的那個數,直到另一個數寫入。任何存儲器測試的基本方法是,往存儲器寫入一些資料,然後根據記憶體設備的地址,校驗讀回的資料。如果所有讀回的資料和那些寫入的資料是一樣的,那麽就可以說存儲設備通過了測試。隻有通過認真選擇的一組資料你才可以確信通過的結果是有意義的。

當然,像剛才描述的有儲器的測試不可避免地具有破壞性。在記憶體測試過程中,你必須覆蓋它原先的內容。因為重寫非易失性存儲器內容通常來說是不可行的,這一部分描述的測試通常隻適用于RAM 的測試。

一,普通的存儲器問題

在學習具體的測試演算法之前,你應該了解可能遇到的各種存儲器問題。在軟體工程師中一個普遍的誤解是,大部分的存儲器問題發生在晶片的內部。盡管這類問題一度是一個主要的問題,但是它們在日益減少。存儲設備的製造商們對于每一個批量的晶片都進行了各種產品後期測試。因此,即使某一個批量有問題,其中某個壞晶片進人到你的系統的可能性是微乎其微的。

你可能遇到的一種類型的存儲晶片問題是災難性的失效。這通常是在加工好之後晶片受到物理或者是電子損傷造成的。災難性失效是少見的,通常影響晶片中的大部分。因為一大片區域受到影響,所以災難性的失效當然可以被合適的測試演算法檢測到。

存儲器出問題比較普遍的原因是電路板故障。典型的電路板故障有:

(1)在處理器與存儲設備之間的連線問題

(2)無存儲器晶片

(3)存儲器晶片的不正確插人

二,測試策略

最好有三個獨立的測試:資料匯流排的測試、地址匯流排的測試以及設備的測試。前面兩個測試針對電子連線的問題以及晶片的不正確插入;第三個測試更傾向于檢測晶片的有無以及災難性失效。作為一個意外的結果,設備的測試也可以發現控製匯流排的問題,盡管它不能提供關于問題來源的有用信息。

執行這三個測試的順序是重要的。正確的順序是:首先進行資料匯流排測試,接著是地址匯流排測試,最後是設備測試。那是因為地址匯流排測試假設資料匯流排在正常工作,除非資料匯流排和地址匯流排已知是正常的,否則設備測試便毫無意義。如果任何測試失敗,你都應該和一個硬體工程師一起確定問題的來源。通過查看測試失敗處的資料值或者地址,應該能夠迅速地找出電路板上的問題。

1,資料匯流排測試

我們首先要測試的就是資料匯流排。我們需要確定任何由處理器放置在資料匯流排上的值都被另一端的存儲設備正確接收。最明顯的測試方法就是寫人所有可能的資料值並且驗證存儲設備成功地存儲了每一個。然而,那並不是最有效率的測試方法。一個更快的測試方法是一次測試匯流排上的一位。如果每一個資料上可被設定成為 0 和1,而不受其他資料位的影響,那麽資料匯流排就通過了測試。

2,地址匯流排測試

在確認資料匯流排工作正常之後,你應該接著測試地址匯流排。記住地址匯流排的問題將導致存儲器位置的重疊。有很多可能重疊的地址。然而,不必要測試每一個可能的組合。你應該努力在測試過程中分離每一個地址位。你隻需要確認每一個地址線的管腳都可以被設定成0和 1,而不影響其他的管腳。

3,設備測試

一旦你知道地址和資料匯流排是正確的,那麽就有必要測試存儲設備本身的完整性。要確認的是設備中的每一位都能夠保持住0和 1。這個測試實現起來十分簡單,但是它花費的時間比執行前面兩項測試花費的總時間還要長。

對于一個完整的設備測試,你必須訪問(讀和寫)每一個存儲位置兩次。你可以自由地選擇任何資料作為第一步測試的資料,隻要在進行第二步測試的時候把這個值求反即可。因為存在沒有存儲器晶片的可能性,所以最好選擇一組隨著地址變化(但是不等于地址)的數。

最佳化措施

目前市場上並不缺少提高資料存儲效率的新技術,然而這些新技術絕大多數都是關註備份和存檔的,而非主存儲。但是,當企業開始進行主存儲資料縮減時,對他們來說,了解主存儲最佳化所要求的必要條件十分重要。

存儲器

主存儲,常常被稱為1級存儲,其特征是存儲活躍資料――即經常被存取並要求高性能、低時延和高可用性的資料。主存儲一般用于支持關鍵任務套用,如資料庫、電子郵件和交易處理。大多數關鍵套用具有隨機的資料取存模式和不同的取存要求,但它們都生成機構用來運營它們的業務的大量的資料。因此,機構製作資料的許多份拷貝,復製資料供分布使用,庫存資料,然後為安全儲存備份和存檔資料。

絕大多數資料是起源于主資料。隨著資料存在的時間增加,它們通常被遷移到二級和三級存儲儲存。因此,如果機構可以減少主資料存儲佔用空間,將能夠在資料生命期中利用這些節省下來的容量和費用。換句話說,更少的主存儲佔用空間意味著更少的資料復製、庫存、存檔和備份。

嘗試減少主存儲佔用空間存儲管理人員可以考慮兩種減少資料的方法:即時壓縮和資料去重。

直到不久前,由于性能問題,資料壓縮一直沒有在主存儲套用中得到廣泛套用。然而,Storwize等廠商目前提供利用即時、隨機存取壓縮/解壓技術將資料佔用空間壓縮15:1的解決方案。更高的壓縮率和即時性能使壓縮解決方案成為主存儲資料縮減的可行的選擇。

在備份套用中廣泛採用的資料去重技術也在被套用到主存儲。目前為止,資料去重面臨著一大挑戰,即資料去重處理是離線處理。這是因為確定數量可能多達數百萬的檔案中的多餘的資料塊需要大量的時間和存儲處理器做大量的工作,因此非常活躍的資料可能受到影響。當前,推出資料去重技術的主要廠商包括NetApp、Data Domain和Ocarina Networks。

部署主存儲最佳化解決方案有6項要求:

一、零性能影響

與備份或存檔存儲不同,活躍資料集的性能比能夠用某種形式的資料縮減技術節省的存儲容量更為關鍵。因此,選擇的資料縮減技術必須不影響到性能。它必須有效和簡單;它必須等價于“撥動一個開關,就消耗更少的存儲”。

目前,活躍存儲縮減解決方案隻在需要去重的資料達到非活躍狀態時才為活躍存儲去重。換句話說,這意味著實際上隻對不再被存取但仍儲存在活躍存儲池中的檔案――近活躍存儲級――進行去重。

去重技術通過建議隻對輕I/O工作負載去重來避免性能瓶頸。因此,IT基礎設施的關鍵組件的存儲沒有得到最佳化。資料庫排在關鍵組件清單之首。由于它們是1級存儲和極其活躍的組件並且幾乎始終被排除在輕工作負載之外,去重處理從來不分析它們。因此,它們在主存儲中佔據的空間沒有得到最佳化。

另一方面,即時壓縮系統即時壓縮所有流經壓縮系統的資料。這導致節省存儲容量之外的意外好處:存儲性能的提高。當所有資料都被壓縮時,每個I/O請求提交的資料量都有效地增加,硬碟空間增加了,每次寫和讀操作都變得效率更高。

實際結果是佔用的硬碟容量減少,整體存儲性能顯著提高。

主存儲去重的第二個好處是所有資料都被減少,這實現了包括資料庫在內的所有資料的容量節省。盡管Oracle環境的即時資料壓縮可能造成一些性能問題,但迄今為止的測試表明性能提高了。

另一個問題是對存儲控製器本身的性能影響。人們要求今天的存儲控製器除了做伺服硬碟外,還要做很多事情,包括管理不同的協定,執行復製和管理快照。再向這些功能增加另一個功能可能會超出控製器的承受能力――即使它能夠處理額外的工作負載,它仍增加了一個存儲管理人員必須意識到可能成為潛在I/O瓶頸的過程。將壓縮工作交給外部專用設備去做,從性能問題中消除了一個變數,而且不會給存儲控製器造成一點影響。

存儲器

二、高可用性

許多關註二級存儲的資料縮減解決方案不是高可用的。這是由于它們必須立即恢復的備份或存檔資料不像一級存儲中那樣關鍵。但是,甚至在二級存儲中,這種概念也逐漸不再時興,高可用性被作為一種選擇增加到許多二級存儲系統中。

可是,高可用性在主存儲中並不是可選的選項。從資料縮減格式(被去重或被壓縮)中讀取資料的能力必須存在。在資料縮減解決方案中(其中去重被集成到存儲陣列中),冗餘性是幾乎總是高可用的存儲陣列的必然結果。

在配件市場去重系統中,解決方案的一個組件以資料的原始格式向客戶機提供去重的資料。這個組件就叫做讀出器(reader)。讀出器也必須是高可用的,並且是無縫地高可用的。一些解決方案具有在發生故障時在標準伺服器上載入讀出器的能力。這類解決方案經常被用在近活躍的或更合適的存檔資料上;它們不太適合非常活躍的資料集。

多數在線上壓縮系統被插入系統中和網路上,放置(邏輯上)在交換機與存儲之間。因此,它們由于網路基礎設施級上幾乎總是設計具有的高可用性而取得冗餘性。沿著這些路徑插入在線上專用設備實現了不需要IT管理人員付出額外努力的無縫的故障切換;它利用了已經在網路上所做的工作。

三、節省空間

部署這些解決方案之一必須帶來顯著的容量節省。如果減少佔用容量的主存儲導致低于標準的使用者性能,它沒有價值。

主資料不具有備份資料通常具有的高冗餘存儲模式。這直接影響到整體容量節省。這裏也有兩種實現主資料縮減的方法:資料去重和壓縮。

資料去重技術尋找近活躍檔案中的冗餘資料,而能取得什麽水準的資料縮減將取決于環境。在具有高冗餘水準的環境中,資料去重可以帶來顯著的ROI(投資回報),而另一些環境隻能取得10%到20%的縮減。

壓縮對所有可用資料都有效,並且它在可以為高冗餘資料節省更多的存儲容量的同時,還為主存儲套用常見的更隨機的資料模式始終帶來更高的節省。

實際上,資料模式冗餘度越高,去重帶來的空間節省就越大。資料模式越隨機,壓縮帶來的空間節省就越高。

四、獨立于套用

真正的好處可能來自所有跨資料類型(不管產生這些資料是什麽套用或資料有多活躍)的資料縮減。雖然實際的縮減率根據去重資料的水準或資料的壓縮率的不同而不同,但所有資料都必須合格。

當涉及存檔或備份時,套用特有的資料縮減具有明確的價值,並且有時間為這類資料集定製縮減過程。但是對于活躍資料集,套用的特殊性將造成性能瓶頸,不會帶來顯著的容量縮減的好處。

五、獨立于存儲

在混合的廠商IT基礎設施中,跨所有平台使用同樣的資料縮減工具的能力不僅將進一步增加資料縮減的ROI好處,而且還簡化了部署和管理。每一個存儲平台使用一種不同的資料縮減方法將需要進行大量的培訓,並造成管理級上的混亂。

六、互補

在完成上述所有最佳化主存儲的工作後,當到了備份主存儲時,最好讓資料保持最佳化的格式(被壓縮或去重)。如果資料在備份之前必須擴展恢復為原始格式,這將是浪費資源。

為備份擴展資料集將需要:

使用存儲處理器或外部讀出器資源解壓資料;

擴展網路資源以把資料傳送給備份目標;

把額外的資源分配給儲存備份資料的備份存儲設備。

同名歌曲

MEMORY

薛之謙詞:薛之謙曲:薛之謙

當你的手從我的手中滑落

我不知道該怎麽隱藏

隱藏那滴流過嘴角很鹹的淚

事到如今已過了這麽多年

我還是無法忘記

分手的那天天空飄下雪

誰說時間可以沖淡一切

可是我怎麽做也做不到

記憶總是提醒我

要看著你睡著我才能睡

怎麽相信

失去你了

Memory

無法忘記當時我多麽愛你

Memory

你總是說我太孩子氣

Memory

還記得在你樓下淋雨哭泣

Memory

你為我擦幹說我傻的可以

Memory

事到如今我還是那麽愛你

Memory

你曾許諾過的我無法忘記

Memory

我會在分手的地方等你

Memory把結婚戒指給你

(獨白)其實當我醒來的時候

已經隻剩我自己了

但是我堅信

maybe it's just my memory

你曾深深的愛過我了

音樂劇《貓》主題曲《記憶》

Memory (from the Cats)

Daylight

See the dew on the sunflower

And a rose that is fading

Roses whither away

Like the sunflower

I yearn to turn my face to the dawn

I am waiting for the day . . .

Midnight

Not a sound from the pavement

Has the moon lost her memory?

She is smiling alone

In the lamplight

The withered leaves collect at my feet

And the wind begins to moan

Memory

All alone in the moonlight

I can smile at the old days

I was beautiful then

I remember the time I knew what happiness was

Let the memory live again

Every streetlamp

Seems to beat a fatalistic warning

Someone mutters

And the streetlamp gutters

And soon it will be morning

Daylight

I must wait for the sunrise

I must think of a new life

And I musn't give in

When the dawn comes

Tonight will be a memory too

And a new day will begin

Burnt out ends of smoky days

The stale cold smell of morning

The streetlamp dies, another night is over

Another day is dawning

Touch me

It's so easy to leave me

All alone with the memory

Of my days in the sun

If you touch me

You'll understand what happiness is

Look

A new day has begun    

相關詞條

相關搜尋

其它詞條