專利名稱:具有多個存儲器管芯和控制器管芯的半導體存儲裝置的制作方法
技術領域:
本發明總體上涉及半導體存儲裝置,尤其涉及具有多個存儲器管芯和控制器管芯的半導體存儲裝置。
背景技術:
將多個堆疊的半導體芯片(諸如DRAM裝置)集成在單個封裝中的多芯片封裝(MCP)實現了比被封裝在專用封裝中的單獨芯片更高的密度。授予給Rajan的美國專利7,515,453描述了與兩個或更多個DRAM管芯一起被封裝在單個封裝中的接ロ芯片。該接ロ芯片能夠通過共享數據總線與多個DRAM管芯通信,以 便在給定時間僅單個管芯能夠被訪問。可替換地,每個DRAM管芯可以具有到接ロ管芯的專用數據總線,以便多個接ロ能夠被并行地操作以提供更高的帶寬。授予給Rajan等人的美國專利7,386,656示出了與緩沖器芯片一起位于同一封裝中的堆疊的DRAM管芯的各種配置。外部命令總線(地址、控制和時鐘)可以由接ロ芯片緩沖并在公共內部總線上被提供至所有DRAM管芯,或者其可以在分離內部總線上被提供至每個DRAM管芯,或者其可以在每個分離內部總線上被提供至若干個DRAM管芯。外部數據總線可以由接ロ芯片雙向緩沖并在公共內部總線上被提供至所有DRAM管芯,或者其可以在分離內部總線上被提供至每個DRAM管芯,或者其可以在每個分離內部總線上被提供至若干個DRAM管芯。然而,這些以及其他現有MCP實現方式具有各種缺陷,包括高的功耗。這是有問題的,對于電池電能是有限資源的移動設備而言尤其如此。因此,在エ業上期望能夠設計出具有降低的功耗的MCP。
發明內容
根據寬泛的方面,本發明致カ于提供一種半導體存儲裝置,其包括多個存儲器管芯;連接到內部控制總線的控制器管芯,該控制器管芯被配置成響應于外部讀命令而向所述存儲器管芯中所選擇的存儲器管芯提供內部讀命令;其中所選擇的存儲器管芯被配置成響應于所述內部讀命令而向控制器管芯返回所讀數據;其中當所述存儲器管芯中的至少兩個存儲器管芯被選為所選擇的存儲器管芯吋,對于該至少兩個存儲器管芯而言,在控制器管芯接收到外部讀命令與控制器管芯接收到來自所選擇的存儲器管芯的讀數據之間的延時不同。在閱讀了下面結合附圖對本發明具體實施方式
的描述之后,本發明的其他方面和特征對本領域普通技術人員而言將變得顯而易見。
現在將參照附圖、僅通過示例的方式描述本發明的實施方式,其中圖I是根據本發明特定非限制性實施方式的采用控制器管芯和多個存儲器管芯的多芯片封裝(MCP)的框圖;圖2A和2B是在總線和引腳容量方面示出了 MCP的不同的可能配置的框圖;圖3是示出了在讀操作期間各種系統部件之間可能的交互的信號流圖;圖4是示出了在存儲器管芯沒有相對于全局時鐘信號來時鐘控制它們的讀輸出的情況下,控制器管芯將從存儲器管芯接收到的讀數據進行重新同步的時序圖;圖5示出了用于堆疊存儲器管芯和控制器管芯以制作MCP的物理配置的示例;以及圖6是根據本發明特定非限制性實施方式的多排(rank) MCP RDIM M的圖示。
具體實施例方式圖I示出了半導體存儲裝置100的框圖,其包括多個存儲器管芯(die) 110A、110B、 IlOC和IlOD以及控制器管芯120。半導體存儲裝置100可以被稱為多芯片封裝(MCP)。存儲器管芯110A、110B、1 IOC和IlOD中的每個存儲器管芯和控制器管芯120可以被稱為“已知合格管芯(KGD)”,用于表明在封裝到MCP 100之前其已經以晶圓形式被充分測試。存儲器管芯(K⑶)110A、110B、1 IOC和IlOD可以是動態隨機存取存儲器(DRAM)裝置(包括同步DRAM-SDRAM)或其他種類的存儲裝置,尤其是被期望具有低的讀和寫延時的裝置。在該特定示例中,存儲器管芯的數量是4,但這不應當被認為是限制性的。在特定的非限制性示例實施方式中,存儲器管芯110A、110B、110C和IlOD中的ー個或多個可以是符合JEDEC DDR3標準JESD79-3C (通過引用將其合并到本文)的DRAM裝置。在一些實施方式中,存儲器管芯110A、110B、110C和IlOD的不同子集可以符合不同的標準,所述標準可以包括或不包括前述的JEDEC JESD79-3C標準。控制器管芯120可以被稱為“橋芯片”,因為其向存儲器管芯110A、110B、110C和IlOD提供至外面世界的接ロ。具體地,外部控制總線130和外部數據總線140通過連接到控制器管芯120來將存儲控制器150連接到MCP 100。存儲控制器150和MCP 100可以都經由母板160進行連接。存儲控制器150與MCP 100之間的連接可以是直接的,或者經由寄存器和/或經由ー個或多個其他MCP。控制器管芯120可以被配置成根據給定的標準(諸如JEDEC DDR3)與外部控制總線130和外部數據總線140進行交互,以便從存儲控制器150的視角來看,MCP 100被認為是符合標準的裝置。外部控制總線130攜帶來自存儲控制器150的命令/地址信號和全局時鐘信號。外部數據總線140包括在活動(active)時攜帶有效數據的外部數據線和攜帯數據選通信號的數據選通線。數據選通信號是用于指示外部數據線何時是活動的并因此攜帶有效數據的時鐘信號。由于數據可以源自存儲控制器150或源自MCP 100,所以依賴于是正在從存儲控制器150向MCP 100傳遞寫數據還是正在從MCP 100向存儲控制器150傳遞讀數據而由存儲控制器150或MCP 100占用數據選通線。用于提供命令/地址信號和全局時鐘信號的外部控制總線130被緩沖并沿著內部控制總線被提供給每個存儲器管芯。命令/地址信號和全局時鐘信號能夠以小至一個時鐘周期的延時被傳遞給內部控制總線。在所示的實施方式中,提供了分離的專用內部控制總線190A、190B、190C和190D,每個存儲器管芯110A、110B、1 IOC和IlOD分別使用一個專用內部控制總線。因此,當來自存儲控制器150的命令被尋■址到存儲器管芯110A、110B、1 IOC和IlOD中的特定一個存儲器管芯而非其他存儲器管芯時,控制器管芯120確定命令的目的地存儲器管芯并僅激活至該目的地存儲器管芯的內部控制總線,這節省了功率。可替換地,能夠提供由所有存儲器管芯110A、110B、110C和IlOD并行共享的單個內部控制總線。這降低了控制器管芯120上的焊盤的數量和MCP 100中的互連的數量,但以增加的功耗為代價。控制器管芯120也通過各個內部數據總線170A、170B、170C和170D連接到存儲器管芯110A、110B、110C和IlOD0將控制器管芯120連接到存儲器管芯110A、110B、IlOC和IlOD中的特定一個存儲器管芯的內部數據總線包括在活動時攜帯有效數據的內部數據線和攜帯數據選通信號的數據選通線。數據選通信號是用于指示內部數據線何時是活動的并因此攜帯有效數據的時鐘信號。由于數據可以源自控制器管芯120或源自存儲器管芯110AU10BU10C和IlOD中的特定一個存儲器管芯,所以依賴于是正在從特定的存儲器管芯向控制器管芯120傳遞寫數據還是正在從控制器管芯120向特定的存儲器管芯傳遞讀數據而由控制器管芯120或特定的存儲器管芯占用該數據選通線。為了改善性能,尤其是在高頻的情況下,控制器管芯120能夠被配置成向外部接 ロ(即向外部數據總線140和外部控制總線130)提供片內終結器(0DT)。為此目的,控制器管芯120能夠實施由例如JEDEC DDR3標準所描述的各種ODT選項。ー個此類選項是對電源電壓VDDQ和VSSQ實施分裂阻性終結(split resistive termination)。可替換地,為了節省功率,可以使用針對被調節至VDDQ與VSSQ之間的中間電壓的終結電壓的單個阻性終結,諸如VTT=I/2 (VDDQ-VSSQ)。后一技術的示例在被轉讓給本申請的受讓人的、名稱為“Termination Circuit for On-Die Termination”的美國專利申請公開號No. 2010/0201397中進行了描述,其通過引用而被合并到本文。為此目的,可以使用線性VTT調節器以實現低成本和易于在控制器管芯120上集成,或者可以使用感應調節器以提供更高的功率效率。在這種情況中,VTT調節器可以被集成在MCP 100中。可替換地,可以通過母板160和MCP上的專用VTT引腳或多個VTT引腳來向MCP 100提供VTT。應當意識到,由于從控制器管芯120至每個存儲器管芯110A、110B、110C和IlOD的短的互連距離(即使對于距離控制器管芯120最遠的存儲器管芯(位于同一 MCP 100內)而言該距離仍然是保持相對短的),所以內部數據總線170A、170B、170C和170D以及內部控制總線(或總線190A、190B、190C和190D)不需要片內終結器。為此目的,設想在完全沒有片內終結器的情況下(這節省了芯片實際面積)或者在具有提供能夠被關閉(例如,如JEDECDDR3標準所提供的那樣通過擴展模式寄存器編程和/或通過將ODT焊盤連接到電源電壓)的片內終結器的能力的情況下,實施存儲器管芯110A、110B、1 IOC和110D。在這兩種情況下,ODT的不存在(或禁用)與ODT被激活相比產生更低的功耗。為了知道哪個內部數據總線170A、170B、170C和170D將激活以用于讀或寫操作,需要控制器管芯120基于經由外部控制總線130接收到的命令/地址信號來識別所選的存儲器管芯。各種可能的實現方式能夠允許所選的存儲器管芯被控制器管芯120所識別。為了說明這些實現方式中的一些實現方式,簡單地假設四個(4)存儲器管芯110A、110B、110C和IlOD中的每個的大小相同且等于2Nf可尋址字,即可修改為由N個地址比特表示。MCP的容量因此實際上是2N+2個字,其可修改為由N+2個比特表示。在ー個可能的實現方式中,如圖I所示,存儲控制器150與好像是4排(rank)DRAM裝置的MCP 100交互,從而除了識別所選存儲器管芯內的期望地址之外還需要排的選擇(實際上是存儲器管芯的選擇)。為此目的,存儲控制器150通過使用被直接提供給控制器管芯120的四個(4)芯片使能(CE*)線180來識別所選的存儲器管芯。由控制器管芯120沿著外部控制總線130接收到的命令/地址信號對識別所選存儲器管芯的地址空間內的地址所需的N個比特進行編碼。在另一可能的實現方式中,存儲控制器與好像是2排DRAM裝置的MCP交互,從而除了識別ー排的地址空間中的期望地址之外還需要該排的選擇。為此目的,存儲控制器通過使用被直接提供給控制器管芯的兩個(2)芯片使能(CE*)線來識別所選的排,而由控制器管芯沿著外部控制總線接收到的命令/地址信號包括ー個(I)額外比特以識別所選的存儲器管芯。剰余的N個地址比特識別所選存儲器管芯的地址空間中的地址。在再一可能的實現方式中,存儲控制器與好像是具有四(4)倍的存儲體(bank)、行或列數量的DRAM裝置的MCP交互。為此目的,存儲控制器通過使用形成由外部控制總線上的命令/地址信號所編碼的地址的一部分的兩個(2)附加地址比特來隱式地識別所選的存儲器管芯。剰余的N個地址比特識別被隱式選擇的存儲器管芯的地址空間中的地址。
本領域技術人員將意識到,內部和外部數據總線不需要具有相同的寬度(引腳數)、總速度或每個引腳的速度。特別地,設想通過使用各種不同的配置(ー些配置現在沒有示出)來滿足外部數據總線的帶寬需求。例如,考慮外部數據總線140是P個導線寬度且每個引腳容量為R(每個引腳毎秒為R比持)。這在外部數據總線140上產生了 P X R (姆秒P X R比持)的總容量。如果假設每個內部數據總線170A、170B、170C和170D是相同的,而且如果每個這種內部數據總線具有相同的寬度P但每個引腳容量為1/2R(每個引腳每秒為1/2R比持),則圖2A的情況是可應用的。具體地,存儲器管芯110A、110B、110C和IlOD中的兩個(2)存儲器管芯應當被同時激活,以便對應于被激活的存儲器管芯的內部數據總線的合計總帶寬共計P X R,即外部數據總線的總容量。另ー方面,如果內部數據總線170A、170B、170C和170D中的每個內部數據總線具有1/2R的每引腳容量(毎秒每個引腳為1/2R比持)但現在寬度加倍了(即2P個導線),則圖2B的情況是可應用的。具體地,每個內部數據總線170A、170B、170C和170D的帶寬是P xR,這與外部數據總線140的容量相匹配。因此,僅單個存儲器管芯應當被激活,以便滿足外部數據總線140的要求。顯然,應當意識到,控制器管芯120的使用在能夠適應寬范圍的存儲器管芯和內部數據總線設計選擇以實現系統需求方面提供了靈活性。從上面的示例中應當注意的是,在存儲控制器150沿著相應的內部數據總線170AU70BU70C和170D向存儲器管芯110A、110B、IlOC和IlOD中的特定ー個寫入數據/從其中讀取數據期間,一個或多個其他內部數據總線170A、170B、170C和170D能保持空閑。這允許降低內部數據總線170A、170B、170C和170D以及連接到控制器管芯120的存儲器管芯110A、110B、1 IOC和IlOD整體所消耗的功率的量。現在參考圖3中的信號流圖,下面概述了在讀操作的場景中能夠由控制器管芯120和存儲器管芯110A、110B、1 IOC和IlOD所使用的基本信令的示例。首先,控制器管芯120接收在外部控制總線130上的全局時鐘信號以及與之同步的外部命令/地址信號。外部命令/地址信號包括第一部分,該第一部分對讀命令進行編碼,該讀命令用于指定讀操作將發生且使控制器管芯120準備接收地址。外部命令/地址信號的第二部分對將從其中讀取數據的地址進行編碼。該地址或者是足夠完整的以允許控制器管芯120識別所選的存儲器管芯,或者從另外的信號(諸如其中一個芯片使能線180)獲取該信息。無論如何,控制器管芯120都識別所選的存儲器管芯。該地址的剰余部分指定在所選存儲器管芯的地址空間中的讀地址。在已經識別了所選的存儲器管芯之后,控制器管芯120沿著內部控制總線(依賴于配置,其可以是共享總線或專用總線)向所選的存儲器管芯發送內部命令/地址信號。更具體地,控制器管芯120將內部命令/地址信號與內部時鐘信號同歩,而且兩者都沿著內部控制總線被發送給所選的存儲器管芯。可以在控制器管芯120中提供主DLL(未示出),以將內部時鐘信號關聯到全局時鐘信號。內部命令/地址信號包括第一部分,該第一部分對讀命令進行編碼,該讀命令用于指定讀操作將發生且使所選的存儲器管芯準備接收地址。內部命令/地址信號的第二部分對所選存儲器管芯的地址空間中的前述讀地址進行編碼。所選的存儲器管芯沿著內部控制總線接收內部命令/地址信號和內部時鐘信號。如上文提到的,內部命令/地址信號與內部時鐘信號同歩。所選的存儲器管芯通過其內部 電路來從讀地址處的存儲單元中獲取數據,并將該“所讀取的數據”放置到其內部數據總線上。所選的存儲器管芯還控制數據選通信號的生成,當內部數據線攜帶有效數據時,該數據選通信號被使能。從而,內部數據線攜帯源同步數據信號。當所選的存儲器管芯占用其內部數據總線的控制時,被放置在數據線上的數據不需要與所選存儲器管芯經由內部控制總線接收到的內部時鐘信號同步。專用內部數據總線170A、170B、170C和170D消除了來自ー個存儲器管芯的讀數據突發與來自另一存儲器管芯的讀數據突發相干擾的可能性(如果共享公共內部數據總線的多個存儲器管芯被順序地激活,則這可能發生)。在相應內部數據總線上接收到的來自所選存儲器管芯的讀數據被控制器管芯120所捕獲并被重新同步以用于在外部數據總線140上進行傳輸。通過使用時鐘來實現所述讀數據的恰當捕獲,該時鐘相對于在內部數據總線上與所述讀數據被一起接收到的數據選通信號而言被相移了 90度。為此目的,控制器管芯120包括從屬DLL,該從屬DLL的頻率綁定于被關聯到全局時鐘信號的主DLL的頻率。從屬DLL通過數據選通信號的上升沿觸發,且此后產生了與數據選通信號精確地異相90度且與接收到的數據選通信號頻率相同的時鐘信號。控制器管芯120可以以上面描述的方式讀取來自若干個不同的所選存儲器管芯的數據。因此,從屬DLL被提供給存儲器管芯110A、110B、110C和IlOD中的每ー個。控制器管芯120中的緩沖器(例如,FIFO,未示出)能夠保持數據,直到應該在外部數據總線140上提供該數據為止。通過使用前述的主DLL能夠實現重新同歩。這在讀操作的情況中提供了精確的延時控制,因為其允許控制器管芯120確保被輸出到外部數據總線140上的任何讀數據在讀命令的接收之后的確定數量的時鐘周期之后跟隨。這在隨后將進行更詳細的解釋。控制器管芯120還控制外部數據選通信號的生成,其中,當外部數據線攜帯有效數據時,該外部數據選通信號被激活。應當注意,由于所選存儲器管芯不需要將其讀數據與任何接收到的時鐘信號進行對準,所以所選的存儲器管芯不需要關聯到內部時鐘信號或任意其他時鐘信號的同步電路(例如,DLL)。這意味著這種電路能夠被禁用(這能夠節省功率),或者全部被省略(這附加地節省了芯片實際面積)。該禁用現有的同步電路的能力可以通過編程存儲器管芯110A、11OB、11OC和11OD以操作在“ DLL關閉”模式(如在符合JEDEC規范的標準DDR2或DDR3DRAM裝置中定義的那樣)中來提供。因此,本領域技術人員應當意識到,通過從存儲器管芯中省略能夠在標準DRAM裝置中找到的DLL和ODT電路塊,能夠使MCP的成本保持為低。對于專用內部總線上的點到點信息傳遞,這些電路塊是不需要的。另外,由于在MCP環境中僅會遇到輕的負載,所以能夠減小輸出驅動器大小。控制器管芯120的使用向讀操作中引入了ー些延吋,因為在其知道讀地址的標識之前,其花費所選存儲器管芯至少ー個附加的時鐘周期。然而,源自這種附加延遲的任何不利后果都被降低的容性負載、降低的功耗(因為具備停用ー個或若干個不活動總線以及停用ODT和DLL電路的能力)和降低的DRAM裝置成本/管芯大小等益處所補償。現在參照圖4,用于說明兩個連續讀操作的時序圖示出了在控制器管芯120處的 信號。CLK表示通過外部控制總線130從存儲控制器接收到的全局時鐘信號。CLK還可以表示在主DLL被用于將內部時鐘與全局時鐘對準的情況下通過共享內部控制總線向存儲器管芯110A、110B、1 IOC和IlOD分發的內部時鐘信號。如果主DLL沒有用于此目的,則在內部時鐘信號與全局時鐘信號之間可以存在相移。EXT_CMD表示外部命令/地址信號,其在外部控制總線130上與CLK同步提供(在該情況中,對準到CLK的下降沿)。EXT_CMD包括第一外部讀命令410和第二外部讀命令420,用于由控制器管芯120處理。基于外部命令/地址信號來確定特定讀命令所針對的存儲器管芯。為了本示例,假設第一外部讀命令410所針對的存儲器管芯是存儲器管芯110B,而第ニ外部讀命令所針對的存儲器管芯是存儲器管芯110A。因此,每個外部讀命令導致以所選存儲器管芯為目的地的相應的內部讀命令。具體地,INT_CMD表示內部命令/地址信號,其在(共享的)內部控制總線上與內部時鐘同步提供(在該情況中,通過使用主DLL,INT_CMD和內部時鐘都與CLK同步,從而不存在不受控的相移,僅有ー個時鐘周期延遲延吋)。INT_CMD包括第一內部讀命令430 (其比第一外部讀命令410延遲ー個完整的時鐘周期)和第二內部讀命令440 (其比第二外部讀命令420也延遲ー個完整的時鐘周期)。僅示出了單個INT_CMD信號。這表示所有存儲器管芯都連接到共享的內部控制總線的情況。在分離的內部控制總線的情況中,將存在多個內部控制總線(例如,INT_CMD1、INT_CMD2等),而且各個內部讀命令430、440將出現在與所尋址的存儲裝置相關聯的相應內部控制總線上。第一內部讀命令430由存儲器管芯IlOA處理,該存儲器管芯IlOA從所需要地址處的存儲單元中檢索第一讀數據450。存儲器管芯IlOB源同步地輸出第一讀數據450到內部數據總線170B的內部數據線上。也就是說,當讀數據被提供在內部數據線上時,存儲器管芯IlOB也激活數據選通信號。在這之前可以是前同步信號(持續例如一個完整時鐘周期),在該前同步信號期間,數據選通信號保持低邏輯電平。DQ2
表示提供第一讀數據450的內部數據總線170B上的數據,而DQS2表示數據選通信號。應當指出,DQS2呈現了處于低邏輯電平的完整時鐘周期前同步信號455。以非常相同的方式,第二內部讀命令440由存儲器管芯IlOA處理,該存儲器管芯IlOA從所需要地址處的存儲單元中檢索第二讀數據460。存儲器管芯IlOA以源同步方式輸出第二讀數據460到內部數據總線170A的內部數據線上。也就是說,當讀數據被提供在內部數據線上時,存儲器管芯IlOA也激活數據選通信號。在這之前可以是前同步信號(持續例如ー個完整時鐘周期),在該前同步信號期間,數據選通信號保持低邏輯電平。DQ1
表示提供第二讀數據460的內部數據總線170A上的數據,而DQSl表示數據選通信號。應當指出,DQSl呈現了處于低邏輯電平的完整時鐘周期前同步信號465。如上文中提到的,存儲器管芯IlOA和存儲器管芯IlOB可能未配備用于重新獲得CLK的電路,或者這種電路可能被禁用。結果,存儲器管芯IlOA和存儲器管芯IlOB輸出具有相對于CLK的任意相位的它們的數據。例如,當存儲器管芯IlOA和存儲器管芯IlOB異步地輸出它們的數據時,將是這種情況。這將導致不同存儲器管芯之間的“CAS延時”(或“CL”)的變化。特別地,控制器管芯120對第一內部讀命令430的發布與第一讀數據450在內部數據總線170B的內部數據線上的出現之間的延時可能不同于控制器管芯120對第二內部讀命令440的發布與第二讀數據460在內部數據總線170A的內部數據線上的出現之間的延時。實際上,CAS延時CLn (對于存儲器管芯IlOn)可以在從CL的最小值(CLmin)到CL的最大值(CLmax)的延時范圍內的任意位置處變化,這可以跨越不止ー個時鐘周期。可以影響內部讀命令的特定實例中的CAS延時的因素包括制造變化、所選存儲器管芯與控制 器管芯120之間的距離和局部溫度梯度(僅提到了少數可能性)。如圖4 (其假設DDR (雙倍數據速率)操作模式)所示,由存儲器管芯IlOB提供的第一讀數據450在最大CAS延遲CLmax (其等于3個完整時鐘周期)處包括由四個(4)數據字組成的突發,而由存儲器管芯IlOA提供的第二讀數據460在最小CAS延時CLmin (在該示例中,其稍微大于2個完整時鐘周期)處包括由四個(4)數據字組成的突發。控制器管芯120在兩個內部數據總線170BU70A上接收讀數據450、460。具體地,在DDR模式中,控制器管芯120在通過相應的從屬DLL延遲了 90度的接收到的數據選通信號DQS2 (DQSl)的上升沿和下降沿上采樣第一讀數據450 (第二讀數據460)。或許需要一些初始的訓練來確定恰當的內部時序以在前同步信號期間使能每個從屬DLL。應當注意的是,控制器管芯120希望在向任意所選的存儲器管芯發布了內部讀命令之后,讀數據不早于CLmin且不晚于CLmax從該存儲器管芯到達。控制器管芯120內的緩沖器能夠保持第一讀數據450和第二讀數據460,直到應該將它們提供到外部數據總線140的外部數據線上為止,即在表示相對于來自存儲控制器150的第一外部讀命令410或第二外部讀命令420的接收的確定延時的時刻處。DQ
表示外部數據總線140上的數據,該數據包括第一讀數據450和緊隨的第二讀數據460。控制器管芯120以源同步方式將第一讀數據450和第二讀數據460輸出到外部數據總線140上。也就是說,控制器管芯120使能數據選通信號(在圖4中由DQS表示),以傳遞關于有效數據在外部數據總線140的外部數據線上存在的信號。這之前可以是前同步信號(持續例如ー個完整時鐘周期),在該前同步信號期間,DQS保持低邏輯電平。應當指出,DQS呈現了處于低邏輯電平的完整時鐘周期前同步信號475 ;然而,其僅需要被降低一次(即在輸出第一讀數據450之前)。因此,在內部數據總線170n (針對存儲器管芯IlOn)上以CAS延時Cln接收到的數據在出現在外部數據總線140上之前被延遲了另外的((CLmax-CLn) +1)時鐘周期。因此,在控制器管芯經由外部控制總線130接收外部讀命令(例如,410、420)與數據(例如,450、460)在外部數據總線140上輸出之間的合計總延時CLext可以表示如下
從外部讀命令到內部讀命令I從內部讀命令到讀數據的接收+CLn由控制器添加的均衡延遲 + ((CLmax - CLn) +1)= = = = = = = = = = = = = = = = = = = =合計總延時CLext:5個時鐘周期因此,能夠看出,合計總延時CLext是一致的且與CLn無關。因此,從存儲控制器150的視角看,總延時能夠保持相同,即使單獨的存儲器管芯110A、110B、110C和IlOD可以具有不同的CAS延時(由于各種因素,尤其是被禁用的同步電路或缺少同步電路)。因此,應當意識到,MCP 100在不需要位于每個存儲器管芯110A、110B、110C和IlOD上的DLL的情況下,提供了相對于外部讀命令的確定延吋。特別地,應當指出的是,在存儲控制器150發布第一外部讀命令410與第一讀數據450出現在外部數據總線140上之間的合計總延時與 在存儲控制器150發布第二外部讀命令420與第二讀數據460出現在外部數據總線140上之間的合計總延時是相同的。因此,合計總延時能夠保持一致。在上面的示例中,假設CLmax精確地等于三個(3)時鐘周期。當然,在特定的實現方式中CLmax可以不同,而且甚至可以不是整數個時鐘周期。在這種情況中,可以改變上面的計算以考慮CLmax與下一最大整數之間的差異。可替換地,能夠將CLmax調整成下ー最高半時鐘周期,以實現3. 5或4. 5的CLmax。然而,在任一情況中,所得到的CLext值都將與CLn無關。應當指出,分離的內部數據總線170A、170B、170C和170D的使用克服了各種問題。首先,如果存儲器管芯IIOA和存儲器管芯IIOB共享公共內部數據總線,而且如果如上面所述那樣連續發布了兩個內部讀命令,則來自存儲器管芯IlOA的突發的結束將與來自存儲器管芯IlOB的突發的開始相沖突。而且,由于伴隨給定突發的數據選通信號具有比突發自身更長的持續時間(由于完整時鐘周期前同步信號具有低邏輯電平),所以不可能使用公共內部數據總線以連續(無間隙)的方式排列突發,這將降低這種公共內部數據總線的可使用容量。然而,在本文描述的MCP 100的實施方式中,這些問題不會出現,因為每個存儲器管芯具有其自己的內部數據總線。而且,在本文描述的MCP 100的實施方式中,來自各個存儲器管芯的數據的突發(其可以重疊、連續或由時間間隙隔開)被連接起來,以創建用于改善的總線利用的更長的無間隙突發。從物理觀點,而且如圖5所示,控制器管芯120和存儲器管芯110A、110B、1 IOC和IIOD能夠在MCP 100中堆疊在彼此之上。控制器管芯120能夠小于存儲器管芯110A、110B、IIOC和IlOD中的任意存儲器管芯,因此能夠被放置在存儲器管芯110A、110B、1 IOC和IlOD的頂部,而存儲器管芯110A、110B、110C和IlOD自身能夠堆疊在封裝襯底上。來自存儲器管芯110A、110B、110C、110D和控制器管芯120的引線聯結能夠向下連接到封裝襯底,以實現外部連接和管芯間連接。在一個實施方式中,如圖5所示,能夠沿著存儲器管芯的邊沿用聯結焊盤550來構建定制存儲器管芯,這能夠促成管芯堆疊。雖然聯結焊盤位于芯片的兩側上的存儲器管芯是可能的,但是更有利的存儲器管芯可以是聯結焊盤位于芯片的僅ー側上的存儲器管芯。這允許管芯堆疊和交錯以暴露堆疊中的所有管芯上的聯結焊盤,從而促成與封裝襯底的直接引線聯結,而不需要插入器(inter poser)。
在ー些配置中,在印刷電路板的前側(以及可能后側)上布置幾行MCP。這可以稱為雙列直插式存儲模塊(DIMM)。DIMM模塊通常用在這樣的PC中,在該PC中,用戶能夠通過添加或替換插入到母板插槽中的模塊來升級存儲器。符合JEDEC DDR3標準JESD-793C的DMM模塊具有總共250個引腳,且提供64比特或72比特的數據接ロ。在其他配置中,多個MCP可以被“寄存”。具體地,圖6示出了利用MCP RDMM 601的多排MCP寄存的DMM (RDMM)系統,其中MCP RDMM 601具有安裝在電路板上的多個MCP 600A、600B、600C、600D、600E、600F、600G 和 600H。在所示的示例中,MCP 的數量為八個
(8),但這并不是本發明的限制。MCP RDIMM 601具有可以經由母板660連接到存儲控制器650的接ロ 640。在典型的PC中,安裝在母板上的若干個DIMM插槽用于促成系統升級。另外,MCP RDIMM 601包括安裝在電路板上的分立的寄存器芯片610。寄存器芯片610被配置成緩沖經由接ロ 640接收到的外部命令/地址信號和全局時鐘信號,以用于向MCP 600A, 600B,. . .,600H進行分發。具體地,有兩個(2)分離的中間控制總線,ー個(620L)用于向左邊的四個(4)MCP (MCP 600A、600B、600C、600D)提供命令/地址和時鐘信號,另ー 個(620R)用于向右邊的四個(4) MCP裝置(MCP 600E、600F、600G、600H)提供命令/地址和時鐘信號。端電阻器網絡630L、630R被放置在每個中間控制總線620L、620R的末端,以移除反射并維持信號完整性。依賴于操作速度和模塊板設計考慮,可以具有比所示數量更少的中間控制總線或更多的中間控制總線。寄存器芯片610可以基于芯片使能(CE*)線或地址比特來檢測哪組MCP(即左邊還是右邊)正在被訪問,以及僅驅動所需的中間控制總線(即620L或620R)。在標準PC DMM中,所有的外部數據總線被激活,并因此左邊和右邊的控制總線都必須被激活。每個MCP的外部數據總線經由接ロ 640被直接連接到存儲控制器650,而不需通過寄存器芯片610。具體地,對于x8 MCP (即,具有寬度為8比特的外部數據總線),外部數據總線能夠以字節分組的形式連接,以實現x64模塊數據寬度。其他分組是可能的,例如通過使用x4 DRAM裝置而實現的半字節(nibble)分組。通過使用例如總共九個(9)字節寬的MCP,用于支持具有x72模塊數據寬度的DIMM模塊也是可能的。如上所述,MCP 600A, 600B, 600H中的每ー者包括存儲器管芯和控制器管芯的堆疊。在給定MCP中,控制器管芯還緩沖經由寄存器芯片610接收到的外部命令/地址信號和全局時鐘信號。給定MCP的外部數據總線被直接連接在給定MCP的存儲控制器650與控制器管芯之間,從而繞過寄存器芯片610。寄存器芯片610包括延遲鎖定環(DLL),其用于生成內部時鐘,該內部時鐘用于捕獲和再生成命令/地址和內部時鐘信號。通過使用輸入采樣時鐘來鎖存(或寄存)輸入,并且通過使用輸出驅動時鐘來時鐘輸出所鎖存的信號。典型地,輸出驅動時鐘被自動調節,以通過寄存器芯片610提供從輸入到輸出的ー個(I)時鐘周期的延遲。寄存器芯片610和每個MCP的控制器管芯120對延時的影響如下。首先,寄存器芯片610向命令流增加ー個(I)時鐘周期的延時,而控制器管芯120向命令流增加另外的一個(I)時鐘周期的延時。對于數據路徑,控制器管芯120向由所選存儲器管芯提供給外部數據總線的讀數據増加ー個(I)時鐘的延時,以及向從外部數據總線到所選存儲器管芯的寫數據增加ー個(I)時鐘周期的延時。因此,MCP RDMM的讀數據延時比未緩沖的DRAM裝置(非MCP、未緩沖的DMM)多三個(3)時鐘周期,以及比傳統的(非MCP) RDMM多兩個(2)時鐘周期。就MCP RDIMM 601的寫數據延時而言,其比未緩沖的DRAM裝置(非MCP、未緩沖的DMM)多ー個(I)時鐘周期,以及與傳統的(非MCP) RDMM的延時相同。在上述的MCP RDMM系統中,就外部控制總線而言,增加寄存器芯片610降低了存儲控制器650上的負載。而且,就外部控制總線和外部數據總線而言,每個MCP600A,600B,...,600H呈現了僅單個負載。結果,能夠適應更大數量的MCP (從而能夠實現更大的存儲器密度),而且能夠最大化操作頻率。另外,功耗將變得更低,而且由于每個模塊的負載降低了,因此能夠使用更高的端電阻值。而且,將意識到,上面描述的MCP RDIMM使用比具有甚至一半容量的傳統RDIMM更小的模塊板面積。這允許更低的模塊高度和更緊湊的系統,這在小外形因素是關鍵需求的便攜式裝置和刀片服務器中尤其有益。因此,將意識到,已經提供了具有控制器管芯的MCP,其中該控制器管芯用于緩沖到多個存儲器管芯的控制信號和數據信號。存儲器管芯和控制器管芯能夠被組裝成ー個堆疊。控制器管芯向外部存儲控制器呈現單個負載,以實現高性能并同時降低功耗。具體地,通過向單獨的存儲器管芯提供分離的內部數據(以及可能的控制)總線而且僅激活連接到活動存儲裝置的那些總線來實現功率降低。還通過以非端接模式操作內部數據和控制總線 來降低功耗。通過以DLL禁用的模式操作存儲器管芯來實現另外的功率降低。通過在外部數據和控制總線上使用VTT終結(而非分裂終結)來實現進一歩的功率降低。應當意識到,在一些實施方式中,能夠基于通過使用在計算裝置上運行的邏輯綜合工具獲得的低級硬件描述來制造所有或部分半導體存儲裝置。該邏輯綜合工具被配置來讀取包含半導體存儲裝置的功能描述的源代碼(例如,用諸如HDL、VHDL、Verilog之類的語言)以及輸出適用于實施相應功能的電路的物理實現方式的定義。另外,雖然已經在DRAM存儲裝置的場景中提供了上面的描述,但是本領域技術人員可以發現,本發明的方面可以應用于其他存儲器類型,包括SRAM、MRAM、FeRAM, PCRAM、ReRAM, EEPROM、NAND 閃存和 NOR 閃存。在上面描述的實施方式中,簡單起見,裝置元件和電路被示為彼此連接。在本發明的實際應用中,元件、電路等可以彼此直接連接,或者它們可以通過裝置和設備的操作所需的其他元件、電路等彼此間接連接。因此,在實際配置中,本文描述的電路元件和電路可以彼此直接或間接耦合或連接。上面描述的本發明的實施方式僅是用作示例。在不背離僅由所附權利要求所限定的本發明范圍的情況下,本領域技術人員可以對特定實施方式做出替換、修改和變形。
權利要求
1.一種半導體存儲裝置,包括 多個存儲器管芯; 連接到內部控制總線的控制器管芯,所述控制器管芯被配置為響應于外部讀命令而向所述存儲器管芯中的所選擇的存儲器管芯提供內部讀命令; 其中,所選擇的存儲器管芯被配置為響應于所述內部讀命令而向所述控制器管芯提供讀數據; 其中,當所述存儲器管芯中的至少兩個存儲器管芯被選為所選擇的存儲器管芯時,對于該至少兩個存儲器管芯而言,在所述控制器管芯接收所述外部讀命令與所述控制器管芯接收來自所選擇的存儲器管芯的所述讀數據之間的延時不同。
2.根據權利要求I所述的裝置,所述控制器管芯還被配置為將接收到的讀數據輸出到外部數據總線上,其中,對于所述至少兩個存儲器管芯而言,在所述控制器管芯接收所述外部讀命令與輸出所述讀數據到所述外部數據總線之間的延時是一致的。
3.根據權利要求2所述的裝置,所述控制器管芯還被配置為在從所選擇的存儲器管芯接收所述讀數據之后,向接收到的讀數據增加均衡延遲。
4.根據權利要求3所述的裝置,其中,在所述控制器管芯接收所述外部讀命令與輸出所述讀數據到所述外部數據總線之間的、對于所述至少兩個存儲器管芯而言是一致的延時是合計總延時,并且其中,所述均衡延遲被選擇以確保所述合計總延時是確定數量的時鐘周期。
5.根據權利要求I所述的裝置,所述控制器被配置為將所述存儲器管芯中的第一存儲器管芯選為所選擇的存儲器管芯,從所述第一存儲器管芯接收第一讀數據,將所述存儲器管芯中的第二存儲器管芯選為所選擇的存儲器管芯,從所述第二存儲器管芯接收第二讀數據,以及將所述第一讀數據和所述第二讀數據輸出到外部數據總線上。
6.根據權利要求5所述的裝置,其中,所述第一讀數據的結尾部分的接收與所述第二讀數據的初始部分的接收同時發生,并且其中,所述控制器管芯還被配置為緩沖所述第二讀數據的至少所述初始部分以允許所述第二讀數據的所述初始部分跟隨在所述第一數據的結尾部分之后被輸出到所述外部數據總線上。
7.根據權利要求5所述的裝置,其中,在所述第一讀數據的結尾部分的接收與所述第二讀數據的初始部分的接收之間存在間隙,并且其中,所述控制器管芯還被配置為延遲所述第一讀數據的輸出以允許所述第二數據的所述初始部分在所述外部數據總線上無間隙地跟隨在所述第一數據的所述結尾部分之后。
8.根據權利要求I所述的裝置,所述存儲器管芯包括所選擇的存儲器管芯,每個所選擇的存儲器管芯包括獨立地將相應存儲器管芯連接到所述控制器管芯的相應內部數據總線。
9.根據權利要求8所述的裝置,所選擇的存儲器被配置為通過將所述讀數據輸出到相應內部數據總線上來向所述控制器管芯提供所述讀數據。
10.根據權利要求9所述的裝置,所述控制器管芯還被配置為在接收由所選擇的存儲器管芯輸出的讀數據時,禁用除所選擇的存儲器管芯之外的每個存儲器管芯的內部數據總
11.根據權利要求I所述的裝置,其中,所選擇的存儲器管芯不具有被配置用于提供內部數據和控制總線的片內終結器的電路。
12.根據權利要求8所述的裝置,其中,所選擇的存儲器管芯包括被配置用于提供內部數據和控制總線的片內終結器的電路,但是所述電路被禁用。
13.根據權利要求12所述的裝置,其中,所選擇的存儲器管芯被配置在ODT關閉模式。
14.根據權利要求I所述的裝置,所述控制器管芯還被配置為接收外部控制總線上的全局時鐘信號。
15.根據權利要求14所述的裝置,其中,所述控制器管芯將從所選擇的存儲器管芯接收到的讀數據與所述全局時鐘信號重新同步。
16.根據權利要求I所述的裝置,所述控制器管芯還被配置為將接收到的讀數據輸出到外部數據總線上,其中,所述外部數據總線和所述內部數據總線具有相同的寬度。
17.根據權利要求I所述的裝置,所述控制器管芯還被配置為將接收到的讀數據輸出到外部數據總線上,其中,所述外部數據總線和所述內部數據總線具有不同的寬度。
18.根據權利要求I所述的裝置,所述控制器管芯還被配置為將接收到的讀數據輸出到外部數據總線上,其中,所述內部數據總線以每條導線每秒NI比特的速率傳送來自所選擇的存儲器管芯的讀數據,并且其中,所述外部數據總線以每條導線每秒N2比特的速率傳送來自所述控制器管芯的重新同步后的所捕獲的讀數據,其中NI和N2相同。
19.根據權利要求I所述的裝置,所述控制器管芯還被配置為將接收到的讀數據輸出到外部數據總線上,其中,所述內部數據總線以每條導線每秒NI比特的速率傳送來自所選擇的存儲器管芯的讀數據,并且其中,所述外部數據總線以每條導線每秒N2比特的速率傳送來自所述控制器管芯的重新同步后的所捕獲的讀數據,其中NI和N2不同。
20.根據權利要求I所述的裝置,所述控制器管芯還被配置為將接收到的讀數據輸出到外部數據總線上,所述控制器管芯包括被配置用于提供所述外部數據和控制總線的片內終結器的終結電路。
21.根據權利要求20所述的裝置,其中,所述終結電路包括分裂終結電阻器。
22.根據權利要求20所述的裝置,其中,所述終結電路包括耦接到Vtt電壓源的單個終結電阻器。
23.根據權利要求I所述的裝置,其中,所述內部讀命令識別所選擇的存儲器管芯中的內部地址,所述控制器還被配置為基于所述讀命令至少確定所選擇的存儲器管芯中的所述內部地址。
24.根據權利要求23所述的裝置,其中,所述外部讀命令指定對應于所選擇的存儲器管芯中的所述內部地址的多個外部地址比特。
25.根據權利要求24所述的裝置,其中,所述外部讀命令還指定用于識別所選擇的存儲器管芯的第二多個外部地址比特。
26.根據權利要求24所述的裝置,其中,所述外部讀命令伴隨有用于識別所選擇的存儲器管芯的信號。
27.根據權利要求26所述的裝置,其中,用于識別所選擇的存儲器管芯的所述信號包括芯片使能信號。
28.根據權利要求I所述的裝置,其中,所述多個存儲器管芯被堆疊。
29.根據權利要求I所述的裝置,其中,所述多個存儲器管芯中的每個存儲器管芯是動態隨機存取存儲器(DRAM)管芯。
30.一種包括多個根據權利要求I所述的半導體存儲裝置的多芯片封裝。
31.一種包括多個根據權利要求2所述的半導體存儲裝置的多芯片封裝,所述多個裝置安裝在具有接口的電路板上,所述多芯片封裝還包括安裝在所述電路板上的寄存器芯片,所述寄存器芯片向每個所述裝置分發所述外部控制總線,每個所述裝置的所述外部數據總線直接耦合到所述接口,從而繞過所述寄存器芯片。
32.根據權利要求8所述的裝置,所述控制器管芯還被配置為沿著相應的內部控制總線向所選擇的存儲器管芯提供內部時鐘信號,所述內部讀命令與所述內部時鐘信號同步。
33.根據權利要求32所述的裝置,所選擇的存儲器管芯還被配置為響應于來自所述控制器管芯的所述內部讀命令的接收,源同步地將所述讀數據輸出到相應的內部數據總線上。
34.根據權利要求I所述的裝置,所述裝置操作在雙倍數據速率(DDR)模式中。
35.根據權利要求8所述的裝置,所述內部控制總線和每個相應的內部數據總線操作在未終結模式中。
36.根據權利要求I所述的裝置,所選擇的存儲器管芯還被配置為響應于所述內部讀命令,異步地向所述控制器管芯提供所述讀數據。
全文摘要
包括多個存儲器管芯和控制器管芯的半導體存儲裝置。該控制器管芯連接到內部控制總線。該控制器管芯被配置成響應于外部讀命令而向所述存儲器管芯中的所選擇的存儲器管芯提供內部讀命令。所選擇的存儲器管芯被配置成響應于內部讀命令而向控制器提供讀數據;其中當存儲器管芯中的至少兩個存儲器管芯被選為所選擇的存儲器管芯時,對于所述至少兩個存儲器管芯而言,在控制器管芯接收到外部讀命令與接收到來自所選擇的存儲器管芯的讀數據之間的延時不同。
文檔編號H01L27/108GK102770920SQ201180010822
公開日2012年11月7日 申請日期2011年2月7日 優先權日2010年2月25日
發明者P·戈里漢姆 申請人:莫塞德技術公司