国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種面向相變存儲器的Bank控制器讀寫控制裝置及方法

      文檔序號:9910943閱讀:438來源:國知局
      一種面向相變存儲器的Bank控制器讀寫控制裝置及方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明屬于計算機(jī)系統(tǒng)結(jié)構(gòu)技術(shù)領(lǐng)域,特別涉及一種面向相變存儲器的Bank控制器讀寫控制裝置及方法。
      【背景技術(shù)】
      [0002]本發(fā)明涉及的技術(shù)術(shù)語如下。
      [0003]DRAM:Dynamic Random Access Memory,動態(tài)隨機(jī)存儲器,即現(xiàn)在廣泛使用的內(nèi)存。
      [0004]DIMM:Dual Inline Memory Module,即雙列直插式存儲模塊。
      [0005]Channe1:通道是北橋上獨(dú)立的內(nèi)存接口,一個通道內(nèi)可以有若干個DIMM。
      [0006]Rank:指的是連接到同一個片選信號的一組存儲芯片,內(nèi)存控制器能夠同時對一個Rank中的所有芯片進(jìn)行讀寫操作,這些芯片共享同樣的控制信號。一個DMM中可以包含多個Rank。
      [0007]Bank:內(nèi)存芯片中的存儲單元。每一個存儲芯片有一組Bank。
      [0008]PCM:Phase Change Memory,相變存儲器,非易失性存儲器的一種。
      [0009]由于PCM具有接近于DRAM的性能,并且相比于DRAM能有更高的存儲密度,因此,相變存儲器有希望替代DRAM成為新一代的內(nèi)存技術(shù)。
      [0010]PCM相對于DRAM的劣勢在于寫能耗高,寫性能低,壽命短等。相變存儲器的工作原理是利用相變材料在不同溫度下物理特行的不同來存儲數(shù)據(jù)的,如果將相變材料加熱到熔點(diǎn)后迅速冷卻,那么相變材料就會呈非晶態(tài),具有較高的電阻值,這個過程成為reset(寫0);如果將相變材料加熱到結(jié)晶溫度以上,熔點(diǎn)以下并保持一段時間后再冷卻,那么相變材料會呈晶態(tài),具有相對較低的電阻值,這個過程稱為set(寫I)。通常情況下,相變材料的reset操作所需的時間要遠(yuǎn)小于set操作所需的時間,也就是說相變存儲器寫O的時間遠(yuǎn)少于寫I所需的時間。
      [0011 ]目前典型的內(nèi)存有如下的組織結(jié)構(gòu):最高層是Channel,每個Channel中可以有若干個DIMM(也就是內(nèi)存條),每個DHM有若干個Rank,一個Rank包含多個芯片,而具體到芯片的訪存操作是以Bank作為基本單位的,并且某個芯片上的一次訪存操作僅會操作該芯片的一個Bankο
      [0012]PCM的低寫性能是阻礙其成為高速內(nèi)存的一個重要因素,然而,由于相變存儲器的低寫性能是由其技術(shù)特點(diǎn)以及相變材料的物理特性決定的,在計算機(jī)體系結(jié)構(gòu)領(lǐng)域?qū)で筇岣咂鋵懶阅軣o疑是困難的。目前的PCM具有與DRAM類似的結(jié)構(gòu),沒有針對PCM寫O和寫I時間代價不同而進(jìn)行優(yōu)化。

      【發(fā)明內(nèi)容】

      [0013]目前的PCM具有與DRAM類似的結(jié)構(gòu),沒有針對PCM寫O和寫I時間代價不同而進(jìn)行優(yōu)化。針對這一問題,本發(fā)明提出了面向PCM的寫優(yōu)化方法及實現(xiàn)裝置,充分利用PCM寫O和寫I時間代價具有顯著差異的物理特性,提供一種提高PCM寫性能的裝置及方法。
      [0014]本發(fā)明的技術(shù)方案包括面向相變存儲器的Bank控制器讀寫控制裝置,以及一個輔助控制單元。所述的面向相變存儲器的Bank控制器讀寫控制裝置包括指令分發(fā)器模塊、位請求隊列模塊、執(zhí)行邏輯模塊、位輸出隊列模塊和取出邏輯模塊五個模塊;所述的輔助控制單元包括命令緩沖區(qū)、輸出數(shù)據(jù)緩沖區(qū),等待數(shù)據(jù)緩沖區(qū)和訪存控制邏輯。
      [0015]進(jìn)一步的,如附圖1所示,所述的面向相變存儲器的Bank控制器讀寫控制裝置,描述如下:
      [0016]指令分發(fā)器模塊,用于接收輔助控制單元發(fā)送過來的訪存請求,并將所述訪存請求分解成對應(yīng)每個存儲陣列的位訪問請求;
      [0017]位請求隊列模塊,用于保存存儲陣列的位操作請求序列。所述的位請求隊列模塊中的各個元素由四個域組成,如附圖2所示,分別是操作類別(讀或?qū)?、行地址、列地址,位值。所述的位請求隊列用兩個寄存器front和end分別記錄隊首和隊尾。指令分發(fā)器模塊每接收一個訪存請求,并將其分解成對應(yīng)每個存儲陣列的位訪問請求,同時添加到對應(yīng)的位請求隊列中front所指向的位置,執(zhí)行操front = (front+1)mod N,若front = end時,表示隊列為空,當(dāng)(front+l)mod N=end時表示隊列已滿,所述的N為對應(yīng)的位請求隊列的長度。
      [0018]執(zhí)行邏輯模塊,用于控制存儲陣列的位讀寫操作。執(zhí)行邏輯模塊先檢查對應(yīng)的位請求隊列是否為空,如果為空,則不需要執(zhí)行任何操作;如果非空,則從對應(yīng)的位請求隊列中end所指向的位置取出一個位請求命令,執(zhí)行操作end = (end+1 )mod N,所述的N為對應(yīng)的位請求隊列的長度;然后判斷所取出的命令類型,若為寫操作命令,則在對應(yīng)的存儲陣列中執(zhí)行所述的寫操作命令;若為讀操作命令,則進(jìn)一步檢查對應(yīng)的位輸出隊列是否已滿,如果已滿,則等待一個周期再執(zhí)行檢查;如果對應(yīng)的位輸出隊列未滿,則根據(jù)行地址和列地址讀出相應(yīng)的位并放入對應(yīng)的位輸出隊列;
      [0019]位輸出隊列模塊,如附圖3所示,用于保存執(zhí)行邏輯模塊讀操作讀出的數(shù)據(jù)。執(zhí)行邏輯模塊的讀操作是將讀出的位暫時放入位輸出隊列中,等待后續(xù)輔助控制單元的取數(shù)據(jù)操作來讀取,每一個位輸出隊列用一個位指針bpi來指向下一個寫入位置,執(zhí)行邏輯完成讀操作時,將讀出的數(shù)據(jù)放入其對應(yīng)的位輸出隊列bpi所指向的位置,然后將所述隊列的位指針bpi加I,即bpi = (bpi+1 )modM,所述的M為位輸出隊列的長度,位輸出隊列滿時,執(zhí)行單元將推遲進(jìn)行讀操作,直到位輸出隊列非滿;
      [0020]取出邏輯模塊,用于判斷輔助控制單元取數(shù)據(jù)操作的目標(biāo)Bank是否滿足取出條件。取出邏輯模塊包括字節(jié)指針Bp和比較單元,所述的字節(jié)指針Bp用于與位輸出隊列模塊中的位指針bpi比較,判斷當(dāng)前的取出條件是否滿足,若取出條件滿足,輔助控制單元可以對當(dāng)前Bank執(zhí)行取數(shù)據(jù)操作,取數(shù)據(jù)的位置即是所述的字節(jié)指針Bp指向的位置。所述的取出條件是位輸出隊列模塊中的各個位輸出隊列的位指針bpi都不等于字節(jié)指針Bp,表示整個Bank位寬的數(shù)據(jù)都已準(zhǔn)備好;當(dāng)某個位輸出隊列的位指針bpi與字節(jié)指針Bp指向相同位置時,表示相應(yīng)的位輸出隊列為空;當(dāng)某個位輸出隊列的位指針bpi滿足:(bpi + 1 )mod M =Bp時表示相應(yīng)的位輸出隊列已滿。當(dāng)取出條件滿足時,輔助控制單元對當(dāng)前Bank執(zhí)行取數(shù)據(jù)操作,數(shù)據(jù)讀出后Bp = (Bp+1 )mod Μ。
      [0021 ]進(jìn)一步的,如附圖4所示,所述的輔助控制單元,描述如下:
      [0022]命令緩沖區(qū),用于接收CPU對PCM的讀寫請求。
      [0023]等待數(shù)據(jù)緩沖區(qū),用于保存部分讀請求信息。等待數(shù)據(jù)緩沖區(qū)的每個元素包含三個域:Channel號、Rank號和Bank號。
      [0024]訪存控制邏輯,用于執(zhí)行PCM的訪存操作。所述的訪存操作包含以下三種類型:讀操作,寫操作和取數(shù)據(jù)操作。訪存控制邏輯從命令緩沖區(qū)取出命令,并將該命令解析成:讀寫類型,Channel號,Rank號,Bank號,行地址,列地址和操作數(shù)據(jù),再根據(jù)訪存類型執(zhí)行相應(yīng)的操作。所述的訪存操作具體描述如下:
      [0025]第一種操作為寫操作,訪存控制邏輯先根據(jù)解析出來的Channel號,Rank號和Bank號找到目標(biāo)Bank,再檢查所有目標(biāo)Bank中所有位請求隊列是否為滿,若都未滿,則將讀寫類型、行地址、列地址這些控制信號通過控制總線發(fā)送到所有的目標(biāo)Bank中,同時將操作數(shù)據(jù)通過數(shù)據(jù)總線發(fā)送到目標(biāo)Bank中,如果目標(biāo)Bank存在某個位請求隊列已滿,則等待一個周期;
      [0026]第二種操作為讀操作,訪存控制邏輯根據(jù)解析出來的Channel號,Rank號和Bank號找到目標(biāo)Bank的同時將這些數(shù)據(jù)保存到等待數(shù)據(jù)緩沖區(qū),再檢查所有目標(biāo)Bank中所有位請求隊列是否為滿,若都未滿,則將讀寫類型、行地址、列地址這些控制信號通過控制總線發(fā)送到所有的目標(biāo)Bank中,如果目標(biāo)Bank存在某個位請求隊列已滿,則等待一個周期;
      [0027]第三種操作為取數(shù)據(jù)操作,取數(shù)據(jù)操作首先從等待數(shù)據(jù)緩沖區(qū)中讀出第一個元素,根據(jù)得到的Channel號,Rank號,Bank號找到對應(yīng)的目標(biāo)Bank,隨后通過所有目標(biāo)Bank的取出邏輯判斷是否所有的Bank都滿足取出條件,如果是,則讀出數(shù)據(jù)并刪除等待數(shù)據(jù)緩沖區(qū)中的第一個元素,否則,直接結(jié)束本次操作。需要注意的是,取數(shù)
      當(dāng)前第1頁1 2 3 4 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1