存儲電路及操作存儲電路的方法
【專利摘要】本發(fā)明公開了一種緩存存儲管芯,包括:襯底,位于襯底上的預確定組數(shù)的存儲單元,位于緩存存儲管芯的第一表面上的第一組輸入/輸出端,以及位于緩存存儲管芯的第二表面上的第二組輸入/輸出端。第一組輸入/輸出端與緩存存儲管芯外部的主存儲電路連接。第二組輸入/輸出端的一部分與第一組輸入/輸出端兼容。本發(fā)明還公開了存儲電路以及操作存儲電路的方法。
【專利說明】存儲電路及操作存儲電路的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及半導體【技術(shù)領(lǐng)域】,更具體地,涉及存儲電路以及操作存儲電路的方法?!颈尘凹夹g(shù)】
[0002]半導體工業(yè)通過不斷減小最小部件尺寸來持續(xù)提高各種電子部件(例如,晶體管、二極管、電阻器、電容器等)的集成密度,這使得更多的部件被集成到給定的面積。而且,為進一步提高集成電路(IC)封裝件內(nèi)的集成密度,新的封裝技術(shù),諸如與傳統(tǒng)的二維(2D) IC封裝相比的2.5維(2.5D)集成電路(IC)封裝或者三維(3D) IC封裝開始發(fā)展。2DIC封裝指將一個IC管芯接合到一個封裝襯底上,2.5D IC封裝指將多個IC管芯接合到共同的中介板上,并且3D IC封裝指多個IC管芯相互堆疊。
[0003]由于各種類型的電路有時需要不同的電/機械特性,所以不必都使用相同的制造工藝在相同的管芯上制造。在加強單個IC封裝中的處理單元和存儲電路方面,2.5D IC封裝和3D IC封裝比沒有使用2.1C封裝和3D IC封裝的系統(tǒng)能夠容納將處理單元和存儲電路連接的更多數(shù)量的輸入/輸出(I/O)端(也被稱為I/O管腳)。
【發(fā)明內(nèi)容】
[0004]為了解決現(xiàn)有技術(shù)中所存在的問題,根據(jù)本發(fā)明的一個方面,提供了一種存儲電路,包括:
[0005]第一存儲電路,由第一管芯或者一組堆疊管芯形成,所述第一存儲電路包括P組第一類型的存儲單元,每組所述第一類型的存儲單元都具有Q個輸入/輸出(I/O)端,P和Q是大于I的整數(shù);`
[0006]第二存儲電路,由第二管芯形成,所述第二存儲電路包括D組第二類型的存儲單元,所述第二類型的存儲單元比所述第一類型的存儲單元具有更快的讀取速度,并且每組所述第二類型的存儲單元都包括P個所述第二類型的Q*N存儲單元的子集,所述第二類型的存儲單元的P個子集中的每一個子集都與所述P組第一類型的存儲單元中對應的一組相關(guān)聯(lián),D和N是正整數(shù);
[0007]存儲控制電路,與所述第一存儲電路和所述第二存儲電路連接,所述存儲控制電路被配置為存取所述P組第一類型的存儲單元;以及
[0008]緩存控制電路,與所述存儲控制電路和所述第二存儲電路連接,所述緩存控制電路被配置為:接收用于以讀取地址讀取存儲在所述第一存儲電路中的數(shù)據(jù)的讀取命令,以及如果在所述第二存儲電路中存在所述讀取命令所請求的數(shù)據(jù)的有效副本,則從所述第二存儲電路檢索所述數(shù)據(jù)。
[0009]在可選實施例中,所述緩存控制電路進一步被配置為:如果所述第二存儲電路不具有所述讀取命令所請求的數(shù)據(jù)的有效副本,則將P*n比特的數(shù)據(jù)的副本存儲在所述D組第二類型的存儲單元中的一組中,所述1^11比特的數(shù)據(jù)包括所述讀取命令所請求的數(shù)據(jù),η是介于I至N的整數(shù)。[0010]在可選實施例中,3所述緩存控制電路被配置為響應于外部請求設置數(shù)值η。
[0011]在可選實施例中,所述第一類型的存儲單元是動態(tài)隨機存取存儲(DRAM)單元,而所述第二類型的存儲單元是靜態(tài)隨機存取存儲(SRAM)單元。
[0012]在一可選實施例中,P為4,并且Q為128。在另一可選實施例中,D在8至32的范圍內(nèi)。在又一可選實施例中,N在I至32的范圍內(nèi)。
[0013]在可選實施例中,所述緩存控制電路進一步被配置為:響應于所述緩存控制電路接收的寫入命令,將與寫入地址對應的數(shù)據(jù)寫入到所述第一存儲電路中。
[0014]在可選實施例中,所述緩存控制電路進一步被配置為:使與所述寫入地址對應的所述第二存儲電路中存儲的數(shù)據(jù)的副本無效。
[0015]在可選實施例中,所述緩存控制電路進一步被配置為:響應于外部請求繞過所述第二存儲電路。
[0016]在可選實施例中,所述第一存儲電路包括將所述第一存儲電路和所述第二存儲電路的第一表面連接的第一組凸塊,所述第二存儲電路包括位于所述第二存儲電路的第二表面上的第二組凸塊,并且所述第二組凸塊的一部分與所述第一存儲電路的第一組凸塊管腳兼容。
[0017]根據(jù)本發(fā)明的另一方面,還提供了一種緩存存儲管芯,包括:
[0018]襯底;
[0019]預定組數(shù)的存儲單元,位于所述襯底上;
[0020]第一組輸入/輸出端,位于所述緩存存儲管芯的第一表面上,所述第一組輸入/輸出端被配置為連接至所述緩存存儲管芯外部的主存儲電路;
[0021 ] 第二組輸入/輸出端,位于所述緩存存儲管芯的第二表面上,所述第二組輸入/輸出端的一部分與所述第一組輸入/輸出端管腳兼容。
[0022]在可選實施例中,所述襯底包括多個硅通孔,多個所述硅通孔將所述第一組輸入/輸出端和所述第二組輸入/輸出端的一部分電連接。
[0023]在可選實施例中,每一組存儲單元都包括:預定數(shù)目的緩存部分,每一個緩存部分都被配置為在對應的存儲地址范圍內(nèi)存儲數(shù)據(jù)的副本;地址部分,被配置為存儲地址信息,所述地址信息與所存儲的數(shù)據(jù)的副本相關(guān)聯(lián);以及,有效性標記部分,被配置為存儲指示所述緩存部分是否包含數(shù)據(jù)的有效副本的值。
[0024]在可選實施例中,所述存儲單元是靜態(tài)隨機存取存儲(SRAM)單元。
[0025]根據(jù)本發(fā)明的又一方面,還提供了一種操作存儲電路的方法,所述存儲電路包括主存儲電路和緩存存儲電路,所述主存儲電路具有P個Q比特信道帶寬的存取通道,所述緩存存儲電路具有P個Q*N存儲單元的子集,P和Q是大于I的整數(shù),N是正整數(shù),所述方法包括:
[0026]通過緩存控制電路響應于用于讀取可通過所述主存儲電路的第一存取通道存取的第一數(shù)據(jù)和可通過所述主存儲電路的第二存取通道存取的第二數(shù)據(jù)的讀取命令,確定所述緩存存儲電路中是否存儲有所述第一數(shù)據(jù)和所述第二數(shù)據(jù)的有效副本;
[0027]如果所述緩存存儲電路中沒有存儲所述讀取命令所請求的第一數(shù)據(jù)和第二數(shù)據(jù)的有效副本,則將來自所述第一存取通道的Q*n比特的連續(xù)尋址數(shù)據(jù)的副本和來自所述第二存取通道的Q*n比特的連續(xù)尋址數(shù)據(jù)的副本存儲到所述緩存存儲電路,η是介于I到N的整數(shù);以及
[0028]如果所述緩存存儲電路中存儲有所述第一數(shù)據(jù)和所述第二數(shù)據(jù)的有效副本,則從所述緩存存儲電路輸出所述第一數(shù)據(jù)和所述第二數(shù)據(jù)。
[0029]在可選實施例中,所述方法進一步包括根據(jù)所述緩存控制電路接收到的外部請求設置η。
[0030]在可選實施例中,所述方法進一步包括:根據(jù)所述存儲電路的訪問負載通過所述緩存控制電路設置η。
[0031]在可選實施例中,所述方法進一步包括:響應于所述緩存控制電路接收到的寫入命令,將與寫入地址對應的數(shù)據(jù)寫入到所述主存儲電路中。
[0032]在可選實施例中,所述方法進一步包括:使與所述寫入地址對應的所述緩存存儲電路中存儲的數(shù)據(jù)的副本無效。
【專利附圖】
【附圖說明】
[0033]在附圖部分的多個圖中通過實例的方式示例說明了一個或多個實施例,但不限于這些實施例,其中,在整個說明書和附圖中具有相同的參考編號的元件表示相同的元件,其中:
[0034]圖1是根據(jù)一個或多個實施例的計算系統(tǒng)的系統(tǒng)框圖;
[0035]圖2是根據(jù)一個或多個實施例的存儲電路的系統(tǒng)框圖;
[0036]圖3是根據(jù)一個或多個實施例的主存儲電路和緩存存儲電路的功能框圖;
[0037]圖4Α至圖4C是根據(jù)一個或多個實施例的使用各種封裝技術(shù)封裝的存儲電路的截面圖;
[0038]圖5Α是根據(jù)一個或多個實施例的緩存存儲電路的一個實例的俯視圖;
[0039]圖5Β是根據(jù)一個或多個實施例的堆疊有主存儲電路的圖5Α的緩存存儲電路的截面圖;
[0040]圖6是根據(jù)一個或多個實施例的響應于讀取命令而讀取數(shù)據(jù)的方法流程圖;
[0041]圖7是根據(jù)一個或多個實施例的響應于寫入命令而寫入數(shù)據(jù)的方法流程圖。
【具體實施方式】
[0042]應當了解,為實施本發(fā)明的不同部件,以下公開內(nèi)容提供了許多不同的實施例或?qū)嵗?。在下面描述元件和布置的特定實例以簡化本發(fā)明。當然這些僅僅是實例并不旨在限定。根據(jù)工業(yè)中的標準實踐,附圖中的各種部件并不按比例繪制并且僅用于示例說明的目的。
[0043]而且,使用空間關(guān)系術(shù)語例如“較低的”、“較高的”、“水平的”、“垂直的”、
“在......上方”、“在......下方”、“頂部”、“底部”、“左邊”、“右邊”等以及它們的派生詞
(例如,“水平地”、“向下地”、“向上地”等)以便于說明本發(fā)明部件之間的關(guān)系。這些空間關(guān)系術(shù)語意圖涵蓋包含部件的器件的不同方位。
[0044]圖1是計算系統(tǒng)100的系統(tǒng)框圖。計算系統(tǒng)100具有處理單元110,存儲電路120,以及統(tǒng)指示為電路塊130的其他外圍電路。在一些實施例中,其他外圍電路包括輸入/輸出電路、顯示單元、網(wǎng)絡接口電路和/或諸如硬盤驅(qū)動器或者光盤驅(qū)動器的存儲器件。在一些實施例中,處理單元110包括單個處理器。在一些其他實施例中,處理單元110包括兩個以上處理器。在一些其他實施例中,存儲電路120是靜態(tài)隨機存取存儲器(SRAM),動態(tài)隨機存取存儲器(DRAM)或者非易失性存儲器。在許多應用中,處理單元110和存儲電路120要求不同的復雜性和電特性,因此在相同的管芯上和/或根據(jù)相同的制造工藝制造處理單元110和存儲電路120并不經(jīng)濟可行。
[0045]圖2是根據(jù)一個或多個實施例的存儲電路200的系統(tǒng)框圖。存儲電路200包括主存儲電路210、緩存存儲電路220、存儲控制電路230和緩存控制電路240。主存儲電路210由一個或多個第一管芯形成。在一些實施例中,主存儲電路210由單個管芯形成。在又一些其他實施例中,主存儲電路210由相互堆疊的多個管芯形成并且具有3D IC封裝配置。緩存存儲電路220由另一種管芯形成并且通過總線252與主存儲電路210連接。主存儲電路210包括第一類型的存儲單元,并且緩存存儲電路220包括第二類型的存儲單元。在一些實施例中,與第一類型的存儲單元相比,第二類型的存儲單元讀取和/或?qū)懭氲乃俣雀?。在一些實施例中,根?jù)從收到讀取地址到以該地址讀取數(shù)據(jù)操作的完成所需的時間來計量速度。
[0046]在一些實施例中,第一類型的存儲單元是動態(tài)隨機存取存儲(DRAM)單元,并且第二類型的存儲單元是靜態(tài)隨機存取存儲(SRAM)單元。在一些實施例中,第一類型的存儲單元和第二類型的存儲單元是SRAM單元但具有不同的讀取速度。
[0047]存儲控制電路230通過總線254與主存儲電路210連接并且通過總線256與緩存存儲電路220連接。存儲控制電路230可用于控制主存儲電路210中存儲的數(shù)據(jù)的存取。緩存控制電路240通過總線257與存儲控制電路230連接并且通過總線258與緩存存儲電路220連接。緩存控制電路240通過總線262接收讀取命令以在讀取地址讀取主存儲電路210中存儲的數(shù)據(jù),和/或,通過總線262接收寫入命令以將數(shù)據(jù)對應于寫入地址寫入到主存儲電路210。緩存控制電路240確定緩存存儲電路220中是否存在數(shù)據(jù)的有效副本,然后如果需要直接存取主存儲電路210,則通過總線257可選地將控制信號發(fā)送給主存儲電路210。否則,在沒有操作緩存控制電路230和主存儲電路210的情況下,緩存控制電路240通過總線258將控制信號發(fā)送給緩存存儲電路220。在一些實施例中,不管存儲控制電路230是否將響應于讀取/寫入命令而使用,仍通過總線264將地址信息發(fā)送給存儲控制電路230。
[0048]如果緩存存儲電路220中的數(shù)據(jù)副本與主存儲電路210中存儲的相應原始數(shù)據(jù)匹配,那么緩存存儲電路220中的數(shù)據(jù)副本有效。在一些實施例中,原始數(shù)據(jù)的地址和有效性記錄在緩存存儲電路220中。
[0049]在一些實施例中,存儲控制電路230和緩存控制電路240中的一個或兩個都合并在處理單元110(圖1)中,因此從存儲單元200中省略。在一些實施例中,存儲控制電路230和緩存控制電路240集成為聯(lián)合存儲控制電路。在一些實施例中,在沒有緩存存儲電路220和緩存控制電路240協(xié)助的情況下,主存儲電路210和緩存存儲電路220被配置為便于數(shù)據(jù)至主存儲電路210的存入或者從主存儲電路210的讀取。在至少一個實施例中,根據(jù)提供給緩存控制電路240的設置,緩存控制電路240可選地繞過緩存存儲電路220。
[0050]圖3是根據(jù)一個或多個實施例的主存儲電路210和緩存存儲電路220的功能框圖。主存儲電路210包括4組第一類型的存儲單元(312、314、316和318)。每組第一類型的存儲單元具有Q個輸入/輸出(I/o)端,并且Q是大于I的整數(shù)。用于四組存儲單元312、314、316和318的Q比特I/O端統(tǒng)指為I/O總線252,其包括四個相應的存取通道322、324、326和328。在一些實施例中,主存儲電路210包括P組第一類型的存儲單元,并且P是大于I的整數(shù)。在一些實施例中,操作主存儲電路210以在單讀取周期或者單寫入周期期間存取P組存儲單元中每一組的Q比特,并且因此主存儲電路210具有P*Q比特I/O總線252以及P*Q個I/O管腳。在一些實施例中,數(shù)P指主存儲電路210的存取通道的數(shù)目,數(shù)Q指主存儲電路210的每個存取通道的帶寬。在至少一個實施例中,P是4,Q是128,因此主存儲電路210還被稱為具有四個存取通道,每一個都具有128比特的帶寬。在一些實施例中,主存儲電路210符合JEDEC的寬I/O存儲標準或者HYBRID MEMORY CUBIT(HMC)標準的存儲電路。
[0051]緩存存儲電路220包括多個第二類型的存儲單元,被布置成D行(或組)330-1、
330-2,330-3......330-D。每組第二類型的存儲單元包括P (在圖3描述的實施例中P等
于4)個第二類型的Q*N存儲單元的子集或者緩存部分(對應于標示為340-1、340-2、340-3和340-4的列)。D和N是正整數(shù)。在一些實施例中,D在8至32的范圍內(nèi)。在一些實施例中,N在I至32的范圍內(nèi)。
[0052]第二類型的存儲單元330-1、330-2、330-3......330-D的P個子集中的每一個子
集與P組第一類型的存儲單元312、314、316和318中對應的一組相關(guān)聯(lián)。緩存控制電路240在一個讀取周期期間存儲來自不同組存儲單元312、314、316和318的P*Q比特的數(shù)據(jù)。而且,緩存控制電路240在直到下一個(N-1)另外的周期期間,還能夠執(zhí)行來自P組存儲單元312、314、316和318的更多連續(xù)尋址數(shù)據(jù)的預取。同樣,第二類型330_1、330_2、
330-3......330-D的存儲單元的P個子集中每一個都容納總計為P*Q比特數(shù)據(jù)的N個“突
發(fā)”。在一些實施例中,可行或者可用的“突發(fā)”的數(shù)目可通過緩存控制電路240來設計。在一些實施例中,根據(jù)處理單元110當前執(zhí)行的一個或多個軟件程序來動態(tài)調(diào)整可行或者可用的“突發(fā)”的數(shù)目。在一些實施例中,根據(jù)預取數(shù)據(jù)后續(xù)使用的頻率的統(tǒng)計記錄和/或兩個讀/寫命令之間可用的額外周期來動態(tài)設置可行或者可用的“突發(fā)”的數(shù)目。
[0053]每組第二類型的存儲單元330-1、330-2、330-3......330-D進一步包括地址部分
(用列350表示)和有效性標記部分(用列360表示)。地址部分350存儲地址信息,其與緩存部分340-1、340-2、340-3和340-4中存儲的數(shù)據(jù)副本相關(guān)聯(lián)。在一些實施例中,地址部分350被分成P個子部分,每一個用于存儲與緩存部分340-1、340-2、340-3和340-4中的一個相對應的地址信息。有效性標記部分360存儲指示緩存部分340-1、340-2、340-3和340-4是否包含有效數(shù)據(jù)副本的值。在一些實施例中,有效性標記部分360被分成P個子部分,每個子部分用于存儲與緩存部分340-1、340-2、340-3和340-4中的一個相對應的有效性信息。在一些實施例中,有效性標記部分360存儲根據(jù)緩存部分340-1、340-2、340-3和340-4的有效性計算得到的值。
[0054]在一些實施例中,緩存控制電路240響應于緩存控制電路240接收到的寫入命令,將與寫入地址對應的數(shù)據(jù)寫入到主存儲電路210。在至少一個實施例中,緩存控制電路240改變相應的有效性標記部分360中存儲的值,從而使與寫入地址對應的存儲在緩存存儲電路220中的數(shù)據(jù)副本無效。
[0055]在又一些其他實施例中,如果與寫入地址對應的有效數(shù)據(jù)副本當前存儲在緩存存儲電路220中,那么緩存控制電路240響應于緩存控制電路240接收到的寫入命令,將與寫入地址對應的數(shù)據(jù)寫入到緩存存儲電路220。在至少一個實施例中,緩存控制電路240將與寫入地址對應的存儲在緩存存儲電路220中的數(shù)據(jù)寫入到主存儲電路210。
[0056]圖4A至圖4C是根據(jù)一個或多個實施例的使用各種封裝技術(shù)封裝的存儲電路200的截面圖。
[0057]圖4A是存儲電路200的2.5D IC封裝件400A的截面圖。2.5D IC封裝件400A包括用于主存儲電路210的堆疊存儲管芯410,用于緩存存儲電路220的緩存存儲管芯420,以及與存儲控制電路230和/或緩存控制電路240對應的邏輯管芯430。在一些實施例中,堆疊存儲管芯410具有一個或多個管芯。使用多個微凸塊450將堆疊存儲管芯410、緩存管芯420和邏輯管芯430安裝到中介板440上。在一些實施例中,存儲控制電路230和緩存控制電路240由多個管芯形成。在一些實施例中,還將其他管芯安裝到中介板450上。
[0058]圖4B是存儲電路200的混合2.5D/3D IC封裝件400B的截面圖?;旌螴C封裝件400B包括使用微凸塊450安裝到緩存存儲管芯420上的堆疊存儲管芯410以形成堆疊存儲管芯410和緩存存儲管芯420的3D IC封裝件460。在一些實施例中,堆疊存儲管芯410具有一個或多個管芯。然后,將3D IC封裝件460和邏輯管芯430安裝到中介板440上。
[0059]圖4C是存儲電路200的3D IC封裝件400C的截面圖。3D IC封裝件400C包括安裝到緩存管芯420上的堆疊存儲管芯410,然后將其安裝到邏輯管芯上以形成3D IC封裝件400C。
[0060]圖5A是根據(jù)一個或多個實施例的存儲電路220的緩存存儲管芯420的示例配置的俯視圖。緩存存儲管芯420具有存儲單元,被分成設置為朝緩存存儲管芯420的邊緣的六組存儲單元。四組存儲單元對應于緩存部分340-1、340-2、340-3和340-4。兩組存儲單元對應于地址部分350和有效性標記部分360,并且每一組設置在相應兩組存儲單元340-1/340-2和340-3/340-4之間。多個輸入/輸出端在緩存存儲管芯420的中心部分(區(qū)510和520)。在一些實施例中,緩存管芯420具有存儲單元,被分成多于或者小于六組存儲單元。在至少一個實施例中,緩存管芯420具有存儲單元,被分成用于所有緩存部分340-1、340-2,340-3和340-4的一組存儲單元以及用于地址部分350和有效性標記部分360的另一組存儲單元。
[0061]圖5B是根據(jù)一個或多個實施例的沿圖5A中線A獲得的緩存管芯420以及用于主存儲電路210的堆疊存儲管芯410的截面圖。多個輸入/輸出端包括位于緩存存儲管芯420的第一表面上的第一組輸入/輸出端(用占據(jù)與區(qū)域510對應的區(qū)域的微凸塊532表示)。第一組輸入/輸出端532與主存儲電路210的堆疊存儲管芯410電連接。多個輸入/輸出端還包括位于緩存管芯的第二表面上的第二組輸入/輸出端(用占據(jù)與區(qū)域510對應的區(qū)域的微凸塊534和用占據(jù)與區(qū)域510對應的區(qū)域的微凸塊536表示)。第二組輸入/輸出端的一部分(諸如微凸塊534)與第一組輸入/輸出端532的管腳兼容。襯底540包括將第一組輸入/輸出端532與第二組輸入/輸出端534的部分電連接的多個娃通孔542。
[0062]圖6是根據(jù)一個或多個實施例的響應讀取命令讀取數(shù)據(jù)的方法600的流程圖。應該理解,可以在圖6所描述的方法600之前、期間和/或之后實施額外的工藝,并且一些其他的工藝可在本文僅簡略描述。
[0063]如圖6和圖2和圖3所述,在操作610中,緩存控制電路240接收用于讀取主存儲電路210中存儲的數(shù)據(jù)的讀取命令。讀取命令至少請求可通過主存儲電路210的第一存取通道322存取的第一數(shù)據(jù)以及可通過主存儲電路210的第二存取通道324存取的第二數(shù)據(jù)。
[0064]方法進行到操作620,緩存控制電路240在處理接收到的讀取命令時,確定是否繞過緩存存儲電路220。如果確定繞過緩存存儲電路220,那么方法進行到操作630,緩存控制電路240發(fā)送控制信號到存儲控制電路230以從主存儲電路讀取所請求的數(shù)據(jù)。在一些實施例中,基于緩存控制電路240從總線262接收的外部請求來確定是否繞過緩存存儲電路220。
[0065]如果確定不繞過緩存存儲電路220,那么方法進行到操作640。在操作640中,緩存控制電路240確定緩存存儲電路220中是否存儲有第一數(shù)據(jù)和第二數(shù)據(jù)的有效副本。
[0066]在操作650中,如果讀取命令請求的第一數(shù)據(jù)和第二數(shù)據(jù)的有效副本沒有存儲在緩存存儲電路220中,那么將來自存取通道322的Q*n比特的連續(xù)尋址數(shù)據(jù)的副本、來自存取通道324的Q*n比特的連續(xù)尋址數(shù)據(jù)的副本存儲到緩存存儲電路220中。η是介于I至N之間的整數(shù)、在一些實施例中,在操作650中,還可以將來自存取通道326的0*11比特的連續(xù)尋址數(shù)據(jù)的副本和來自存取通道328的Q*n比特的連續(xù)尋址數(shù)據(jù)的副本存儲到緩存存儲電路220中。在一些實施例中,操作650中,并不是所有的存取通道322、324、326和328都使用。
[0067]在一些實施例中,根據(jù)緩存控制電路220接收的外部請求來設置η。在一些實施例中,處理單元110在執(zhí)行一組特定執(zhí)行指令例如軟件程序時,根據(jù)訪問在先前讀取命令訪問的數(shù)據(jù)附近的數(shù)據(jù)的可能性來確定η的值。訪問存儲在先前訪問的數(shù)據(jù)附近的數(shù)據(jù)的現(xiàn)象還被稱為“存儲器訪問的局部性”。因此,如果處理單元110認為目前執(zhí)行的軟件程序具有更好的存儲器訪問的局部性,那么η的值增大。相反,如果處理單元110認為目前執(zhí)行的軟件程序具有較差的存儲器訪問的局部性,那么η的值減小。
[0068]在一些實施例中,緩沖控制電路240根據(jù)存儲電路200的訪問負載設置η的值。如果存儲電路200具有低的工作負載,那么緩沖控制電路240在接收到下一個讀取或者寫入命令之前進入空閑周期并且試圖預取盡可能多的數(shù)據(jù)。在一些實施例中,根據(jù)處理單元110當前執(zhí)行的一個或多個軟件程序來動態(tài)調(diào)整η的值。
[0069]在通過緩存存儲電路220預取數(shù)據(jù)之后或者如果通過讀取命令請求的第一數(shù)據(jù)和第二數(shù)據(jù)的有效副本當前存儲在緩存存儲電路220中,緩存控制電路240輸出來自緩存存儲電路220的被請求的第一數(shù)據(jù)和第二數(shù)據(jù)。
[0070]圖7是根據(jù)一個或多個實施例的響應于寫入命令寫入數(shù)據(jù)的方法700的流程圖。應該理解,可以在圖7所描述的方法700之前、期間和/或之后實施額外的工藝,并且一些其他的工藝可在本文僅簡略描述。
[0071]如圖7和圖2和圖3所示,在操作710中,緩存控制電路240接收用于寫入數(shù)據(jù)到主存儲電路210的寫入命令。方法進行到操作720中,緩存控制電路240發(fā)送控制信號給存儲控制電路230以根據(jù)寫入命令指定的地址將數(shù)據(jù)寫入到主存儲電路210。
[0072]在操作730中,緩存控制電路240確定緩存存儲電路220是否具有數(shù)據(jù)的有效副本。因為剛更新了主存儲電路中在指定地址的數(shù)據(jù),緩存存儲電路220中數(shù)據(jù)的副本(如果存在的話)不再認為“有效”。因此,在操作740中,如果緩存存儲電路220中存儲有數(shù)據(jù)的有效副本,那么更新有效性標記從而使數(shù)據(jù)的副本無效。另一方面,如果緩存存儲電路220不具有有效的數(shù)據(jù)副本,那么跳過操作740。
[0073]根據(jù)一個實施例,一種存儲電路包括第一存儲電路、第二存儲電路、存儲控制電路和緩存控制電路。第一存儲電路由第一管芯或者一組堆疊管芯形成,第二存儲電路由第二管芯形成。第一存儲電路包括P組第一類型的存儲單元,每組第一類型的存儲單元都具有Q個輸入/輸出(I/O)端,并且P和Q是大于I的整數(shù)。第二存儲電路包括D組第二類型的存儲單元。每組第二類型的存儲單元包括P個第二類型的Q*N存儲單元的子集,第二類型的存儲單元的P個子集中的每一個子集與P組第一類型的存儲單元中對應的一組相關(guān)聯(lián),D和N是正整數(shù)。與第一類型的存儲單元相比,第二類型的存儲單元的讀取速度更快。存儲控制電路連接到第一存儲電路和第二存儲電路。緩存控制電路連接到存儲控制電路和第二存儲電路。緩存控制電路接收用于在讀取地址讀取第一存儲電路中存儲的數(shù)據(jù)的讀取命令,以及如果第二存儲電路中存在讀取命令請求的數(shù)據(jù)的有效副本,則從第二存儲電路檢索數(shù)據(jù)。
[0074]根據(jù)另一個實施例,緩存存儲管芯包括襯底,位于襯底上的預確定組數(shù)的存儲單元,位于緩存管芯的第一表面上的第一組輸入/輸出端,以及位于緩存管芯的第二表面上的第二組輸入/輸出端。第一組輸入/輸出端與緩存存儲管芯外部的主存儲電路連接。第二組輸入/輸出端的一部分與第一組輸入/輸出端管腳兼容。
[0075]根據(jù)另一個實施例,一種操作存儲電路的方法包括:通過緩存控制電路響應用于讀取可通過主存儲電路的第一存取通道存取的第一數(shù)據(jù)和可通過主存儲電路的第二存取通道存取的第二數(shù)據(jù)的讀取命令,確定第一數(shù)據(jù)和第二數(shù)據(jù)的有效副本是否存儲在緩存存儲電路中。該存儲電路包括主存儲電路和緩存存儲電路。主存儲電路具有Q比特信道帶寬的P個存取通道,并且緩存存儲電路具有Q*N存儲單元的P個子集。P和Q是大于I的整數(shù),并且N是正整數(shù)。該方法進一步包括:如果通過讀取命令請求的第一數(shù)據(jù)和第二數(shù)據(jù)的有效副本沒有存儲在緩存存儲電路中,那么將來自第一存取通道的Q*n比特的連續(xù)尋址數(shù)據(jù)的副本和來自第二存取通道的`^^比特的連續(xù)尋址數(shù)據(jù)的副本存儲到緩存存儲電路,η是介于I到N的整數(shù)。如果第一數(shù)據(jù)和第二數(shù)據(jù)的有效副本存儲在緩存存儲電路中,那么從緩存存儲電路輸出第一數(shù)據(jù)和第二數(shù)據(jù)。
[0076]上面論述了若干實施例的部件,使得本領(lǐng)域普通技術(shù)人員可以更好地理解本發(fā)明的各個方面。本領(lǐng)域普通技術(shù)人員應該理解,可以很容易地使用本發(fā)明作為基礎來設計或更改其他用于達到與這里所介紹實施例相同的目的和/或?qū)崿F(xiàn)相同優(yōu)點的處理和結(jié)構(gòu)。本領(lǐng)域普通技術(shù)人員也應該意識到,這種等效構(gòu)造并不背離本發(fā)明的精神和范圍,并且在不背離本發(fā)明的精神和范圍的情況下,可以進行多種變化、替換以及改變。
【權(quán)利要求】
1.一種存儲電路,包括: 第一存儲電路,由第一管芯或者一組堆疊管芯形成,所述第一存儲電路包括P組第一類型的存儲單元,每組所述第一類型的存儲單元都具有Q個輸入/輸出(I/o)端,P和Q是大于I的整數(shù); 第二存儲電路,由第二管芯形成,所述第二存儲電路包括D組第二類型的存儲單元,所述第二類型的存儲單元比所述第一類型的存儲單元具有更快的讀取速度,并且每組所述第二類型的存儲單元都包括P個所述第二類型的Q*N存儲單元的子集,所述第二類型的存儲單元的P個子集中的每一個子集都與所述P組第一類型的存儲單元中對應的一組相關(guān)聯(lián),D和N是正整數(shù); 存儲控制電路,與所述第一存儲電路和所述第二存儲電路連接,所述存儲控制電路被配置為存取所述P組第一類型的存儲單元;以及 緩存控制電路,與所述存儲控制電路和所述第二存儲電路連接,所述緩存控制電路被配置為:接收用于以讀取地址讀取存儲在所述第一存儲電路中的數(shù)據(jù)的讀取命令,以及如果在所述第二存儲電路中存在所述讀取命令所請求的數(shù)據(jù)的有效副本,則從所述第二存儲電路檢索所述數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的存儲電路,其中,所述緩存控制電路進一步被配置為:如果所述第二存儲電路不具有所述讀取命令所請求的數(shù)據(jù)的有效副本,則將P*n比特的數(shù)據(jù)的副本存儲在所述D組第二類型的存儲單元中的一組中,所述P*n比特的數(shù)據(jù)包括所述讀取命令所請求的數(shù)據(jù),n是介于1至N的整數(shù)。
3.根據(jù)權(quán)利要求1所述的存儲電路,其中,所述緩存控制電路被配置為響應于外部請求設置數(shù)值n。
4.一種緩存存儲管芯,包括: 襯底; 預定組數(shù)的存儲單元,位于所述襯底上; 第一組輸入/輸出端,位于所述緩存存儲管芯的第一表面上,所述第一組輸入/輸出端被配置為連接至所述緩存存儲管芯外部的主存儲電路; 第二組輸入/輸出端,位于所述緩存存儲管芯的第二表面上,所述第二組輸入/輸出端的一部分與所述第一組輸入/輸出端管腳兼容。
5.根據(jù)權(quán)利要求4所述的緩存存儲管芯,其中,所述襯底包括多個硅通孔,多個所述硅通孔將所述第一組輸入/輸出端和所述第二組輸入/輸出端的一部分電連接。
6.一種操作存儲電路的方法,所述存儲電路包括主存儲電路和緩存存儲電路,所述主存儲電路具有P個Q比特信道帶寬的存取通道,所述緩存存儲電路具有P個Q*N存儲單元的子集,P和Q是大于I的整數(shù),N是正整數(shù),所述方法包括: 通過緩存控制電路響應于用于讀取可通過所述主存儲電路的第一存取通道存取的第一數(shù)據(jù)和可通過所述主存儲電路的第二存取通道存取的第二數(shù)據(jù)的讀取命令,確定所述緩存存儲電路中是否存儲有所述第一數(shù)據(jù)和所述第二數(shù)據(jù)的有效副本; 如果所述緩存存儲電路中沒有存儲所述讀取命令所請求的第一數(shù)據(jù)和第二數(shù)據(jù)的有效副本,則將來自所述第一存取通道的Q*n比特的連續(xù)尋址數(shù)據(jù)的副本和來自所述第二存取通道的Q*n比特的連續(xù)尋址數(shù)據(jù)的副本存儲到所述緩存存儲電路,η是介于I到N的整數(shù);以及 如果所述緩存存儲電路中存儲有所述第一數(shù)據(jù)和所述第二數(shù)據(jù)的有效副本,則從所述緩存存儲電路輸出所述第一數(shù)據(jù)和所述第二數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的方法,進一步包括:根據(jù)所述緩存控制電路接收到的外部請求設置η。
8.根據(jù)權(quán)利要求6所述的方法,進一步包括:根據(jù)所述存儲電路的訪問負載通過所述緩存控制電路設置η。
9.根據(jù)權(quán)利要求6所述的方法,進一步包括:響應于所述緩存控制電路接收到的寫入命令,將與寫入地址對應的數(shù)據(jù)寫入到所述主存儲電路中。
10.根據(jù)權(quán)利要求9所述的方法,進一步包括:使與所述寫入地址對應的所述緩存存儲電路中存儲的數(shù)據(jù)的副本無 效。
【文檔編號】G11C11/4063GK103811050SQ201310042106
【公開日】2014年5月21日 申請日期:2013年2月1日 優(yōu)先權(quán)日:2012年11月2日
【發(fā)明者】李憲信, 沈武, 李云漢 申請人:臺灣積體電路制造股份有限公司