半導體記憶裝置及資料讀出方法
本發明之實施形態係關於一種半導體記憶裝置及資料讀出方法。
作為半導體記憶裝置之一種已知悉具有電阻變化型記憶體之半導體記憶裝置。又,作為電阻變化型記憶體之一種已知悉MRAM (magnetoresistive random access memory,磁性隨機存取記憶體)。MRAM係在記憶資訊之記憶體單元使用具有磁阻效應(magnetoresistive effect)之磁性元件的記憶體裝置,作為以高速動作、大容量、非揮發性為特徵之下一代記憶體裝置而備受關注。又,MRAM作為DRAM與SRAM等之揮發性記憶體之置換不斷進行研究及開發。
本發明之實施形態提供一種能夠提高處理能力之半導體記憶裝置及資料讀出方法。 實施形態之半導體記憶裝置包含:記憶體單元陣列,其包含複數個記憶體單元;ECC(Error checking and correcting,錯誤檢查與校正)電路,其包含:在將來自外部之寫入資料寫入至複數個記憶體單元時產生錯誤校正符號的編碼器、及在自複數個記憶體單元讀出資料時基於錯誤校正符號進行自複數個記憶體單元讀出之資料之校正處理的解碼器;頁緩衝區,其可記憶寫入資料、由校正處理校正之校正資料、及用於校正處理之錯誤校正符號;及多工器,其第1輸入端子連接於編碼器,第2輸入端子連接於頁緩衝區,輸出端子連接於記憶體單元陣列,且在將寫入資料寫入至複數個記憶體單元的情形時選擇第1輸入端子,將校正資料寫入至複數個記憶體單元的情形時選擇第2輸入端子。
以下,參照圖式針對實施形態進行說明。在進行其說明時,遍及全圖,針對共通之部分賦予共通之參考符號。 1.第1實施形態 針對第1實施形態之半導體記憶裝置進行說明。以下,例舉半導體記憶裝置為自旋轉移力矩型磁性隨機存取記憶體(STT-MRAM)之情形為例進行說明。 1.1 半導體記憶裝置之整體構成 首先,針對半導體記憶裝置之整體構成,使用圖1進行說明。此外,在圖1之例中,為了使說明簡略化,而顯示連接各方塊間之配線(bus,匯流排)之一部分。 如圖1所示,半導體記憶裝置1具備:記憶體單元陣列10、列解碼器11、行控制電路12、行解碼器13、控制電路14、CA輸入電路15、位址暫存器16、命令電路17、及DQ電路18。 記憶體單元陣列10具備包含記憶資料之複數個記憶體單元之複數個記憶庫BNK(BNK0、BNK1、…)。例如,複數個記憶庫BNK能夠獨立地進行資料之寫入或讀出動作。此外,記憶庫BNK之個數可任意地設定。 列解碼器11例如將選擇1個記憶庫BNK之記憶庫位址B_AD、及所選擇之記憶庫BNK內之列位址R_AD解碼。列解碼器11根據解碼結果選擇連接於記憶體單元陣列10之字元線。 行解碼器13例如將記憶體單元陣列10內之行、更具體而言用於選擇位元線與源極線之行位址C_AD解碼。行解碼器13將解碼結果發送至行控制電路12。 行控制電路12對於所選擇之行控制資料之讀出及寫入。行控制電路12包含:行選擇電路21、感測放大器22、寫入驅動器23、ECC(Error checking and correcting,錯誤檢查與校正)電路24、頁緩衝區25、及多工器26。 行選擇電路21連接於複數條位元線、複數條源極線、感測放大器22、及寫入驅動器23。行選擇電路21基於行解碼器13之解碼結果選擇行、亦即對應之複數條位元線及複數條源極線,而與感測放大器22或寫入驅動器23連接。本實施形態之行選擇電路21包含後述之第1及第2行選擇電路。第1行選擇電路與複數條源極線對應,第2行選擇電路與複數條位元線對應。 感測放大器22連接於由行選擇電路21選擇之複數條位元線及複數條源極線。感測放大器22藉由分別檢測在成為讀出對象的複數個選擇記憶體單元中流動之電流,而一併地讀出記憶於複數個選擇記憶體單元之資料(以下,將一併地讀出之記憶體單元之單位稱為「頁」)。 寫入驅動器23連接於由行選擇電路21選擇之複數條位元線及複數條源極線。寫入驅動器23對成為寫入對象的複數個選擇記憶體單元施加寫入電壓(寫入脈衝)。藉由寫入電流流動於選擇記憶體單元,將資料寫入至選擇記憶體單元。資料之寫入係相對於複數個記憶體單元一併地進行。 ECC電路24執行資料之錯誤校正處理。更具體而言,ECC電路24在寫入動作時使用由主機100(例如記憶體控制器)輸入之寫入資料(以下稱為「寫入資料」)而產生錯誤校正符號(以下稱為「同位位元」)。又,ECC電路24在讀出動作時基於同位位元,檢查自選擇記憶體單元讀出之資料(以下稱為「讀取資料」)中是否存在錯誤。ECC電路24在檢測出資料錯誤時校正所檢測出之錯誤。以下,為了簡化說明而針對將以頁單位讀出之資料一併予以ECC處理之情形進行說明。此外,ECC電路24一併地執行ECC處理之資料長度可非為與頁相同之資料長度。行控制電路12將錯誤經校正之資料(以下稱為「校正資料」)回寫至記憶體單元陣列10內之相同之位址。以下,將使校正資料回寫至記憶體單元陣列10內之動作稱為「回寫」。例如,於讀取資料中未檢測出錯誤的情形時,可不執行回寫動作。ECC電路24包含:ECC解碼器31、及ECC編碼器32。 ECC解碼器31連接於感測放大器22及頁緩衝區25。ECC解碼器31使用讀取資料中所含之同位位元來校正讀取資料之錯誤。校正資料及同位位元暫時記憶於頁緩衝區25。 ECC編碼器32連接於頁緩衝區25及多工器26。ECC編碼器32將經由頁緩衝區25自主機100輸入之寫入資料編碼而產生同位位元。所產生之同位位元被賦予至寫入資料,並被寫入至記憶體單元陣列10。 寫入資料及讀取資料(包含同位位元)暫時記憶於頁緩衝區25。更具體而言,在寫入動作時,自DQ電路18傳送之寫入資料暫時記憶於頁緩衝區25。而後,寫入資料被傳送至ECC編碼器32。又,在讀出動作時,讀取資料(校正資料)及同位位元暫時記憶於頁緩衝區25。讀取資料(校正資料)被傳送至DQ電路18 多工器26之第1輸入端子連接於ECC編碼器32,第2輸入端子連接於頁緩衝區25,輸出端子連接於寫入驅動器23。多工器26基於由控制電路14發送之控制信號SWB將ECC編碼器32及頁緩衝區中之任一者與寫入驅動器連接。更具體而言,多工器26在頁緩衝區25保持校正資料及同位位元的情形時將第2輸入端子與輸出端子連接,在頁緩衝區25保持寫入資料的情形時將第1輸入端子與輸出端子連接。 CA輸入電路15經由例如10條命令/位址線CA0~CA9與主機100連接。命令/位址線CA0~CA9係單向匯流排。CA輸入電路15自主機100經由命令/位址線CA0~CA9接收命令及位址信號。CA輸入電路15接收之命令係用於控制記憶庫BNK之動作之命令,包含例如有效命令、預充電命令、寫入命令、讀取命令、及重置命令。預充電命令係用於為了讀出動作或寫入動作而使選擇之記憶庫BNK設定為初始狀態(預充電狀態)的命令。更具體而言,在預充電動作之時,所有字元線、所有位元線、及所有源極線被設定為非啟動(非選擇狀態)。有效命令係用於將1個記憶庫BNK啟動(選擇),且使選擇記憶庫BNK內之複數條字元線中之1條啟動(選擇)的命令。又,CA輸入電路15連接於位址暫存器16及命令電路17。CA輸入電路15將接收之位址信號發送至位址暫存器16,將接收之命令發送至命令電路17。 位址暫存器16連接於列解碼器11及行解碼器13。位址暫存器16將由記憶庫位址B_AD及記憶庫位址B_AD選擇之記憶庫BNK內之指定列(亦即字元線)的列位址R_AD發送至列解碼器11,將選擇記憶庫BNK內之指定行(亦即位元線及源極線)之行位址C_AD發送至行解碼器13。 命令電路17將命令解碼並將解碼結果發送至控制電路14。 DQ電路18經由例如16條資料線DQ<15:0>與主機100連接。資料線DQ<15:0>係雙向之資料匯流排。又,DQ電路18連接於頁緩衝區25。DQ電路18自主機100經由資料線DQ<15:0>接收輸入資料(寫入資料),將接收之寫入資料發送至行控制電路12(具體而言係頁緩衝區25)。又,DQ電路18將儲存於頁緩衝區25之輸出資料(讀取資料)經由資料線DQ<15:0>輸出至主機100。此外,資料線DQ之條數任意。 控制電路14控制半導體記憶裝置1之整體動作。更具體而言,控制電路14控制例如列解碼器11、行解碼器13、行控制電路12(行選擇電路21、感測放大器22、寫入驅動器23、ECC電路24、頁緩衝區25、及多工器26)、及DQ電路18。控制電路14自主機100接收各種控制信號,例如時脈信號CK、時脈啟用信號CKE、及晶片選擇信號CS等。控制電路14按照自命令電路17發送之命令控制例如寫入動作及讀出動作。 1.2 記憶體單元陣列之構成 其次,針對記憶體單元陣列10之構成,使用圖2進行說明。圖2之例顯示記憶體單元陣列10之記憶庫BNK0,其他記憶庫BNK亦為相同之構成。 如圖2所示,記憶庫BNK0構成為複數個記憶體單元MC呈矩陣狀配列。在記憶庫BNK0中,沿列方向設置有複數條字元線WL(WL0~WLn,n為1以上之整數),沿行方向設置有複數條位元線BL(BL0~BLm,m為1以上之整數)及複數條源極線SL(SL0~SLm)。在1條字元線WL連接有在列方向上配置之複數個記憶體單元MC,在由1條位元線BL及1條源極線SL構成之1對連接有在行方向上配置之複數個記憶體單元MC。藉由選擇1條字元線WL與一對位元線BL及源極線SL,而選擇1個記憶體單元MC。 記憶體單元MC包含:磁阻效應元件(MTJ(Magnetic Tunnel Junction,磁性穿隧接面)元件)40及選擇電晶體41。選擇電晶體41可為例如n通道MOSFET。 MTJ元件40之一端連接於位元線BL,另一端連接於選擇電晶體41之汲極(源極)。選擇電晶體41之閘極連接於字元線WL,源極(汲極)連接於源極線SL。 此外,上述之記憶庫BNK之構成係一例,記憶庫BNK可為其以外之構成。 行選擇電路21包含:連接於複數條源極線SL之第1行選擇電路21a、及連接於複數條位元線BL之第2行選擇電路21b。第1行選擇電路21a基於行解碼器13之解碼結果選擇複數條源極線SL。第1行選擇電路21a在寫入動作時將寫入驅動器23之施加電壓傳送至複數條選擇源極線SL。第2行選擇電路21b基於行解碼器13之解碼結果選擇複數條位元線BL。第2行選擇電路21b在寫入動作時將寫入驅動器23之施加電壓傳送至複數條選擇位元線BL。又,第2行選擇電路21b在讀出動作時將複數條選擇位元線BL之電壓傳送至感測放大器22。 在列解碼器11連接有設置於記憶庫BNK內之複數條字元線WL。 1.3 讀出動作 1.3.1 讀出動作之概要 其次,針對本實施形態之讀出動作之概要,使用圖3進行說明。本實施形態之讀出動作包含:自選擇記憶體單元讀出資料之動作(以下稱為「單元讀出」)、及校正資料之回寫動作。更具體而言,單元讀出包含:讀取資料之讀出、ECC處理、及朝頁緩衝區25之儲存(記憶)。在本實施形態中,單元讀出與回寫動作係連續地進行。 如圖3所示,首先,列解碼器11若自主機100接收有效命令及位址信號,則將選擇記憶庫BNK之選擇字元線WL啟動(步驟S10)。更具體而言,CA輸入電路15經由命令/位址線CA0~CA9接收有效命令、記憶庫位址B_AD、及列位址R_AD。而後,CA輸入電路15經由位址暫存器16將記憶庫位址B_AD及列位址R_AD發送至列解碼器11。且,CA輸入電路15經由命令電路17將經解碼之有效命令發送至控制電路14。控制電路14若接收有效命令,則對列解碼器11指示啟動。列解碼器11將記憶庫位址B_AD及列位址R_AD解碼。而後,列解碼器11根據解碼結果將1個記憶庫BNK啟動,進而將已啟動之記憶庫BNK內之選擇字元線WL啟動。 其次,控制電路14接收讀取命令(步驟S11)。更具體而言,CA輸入電路15經由命令/位址線CA0~CA9接收讀取命令及行位址C_AD。CA輸入電路15經由命令電路17將經解碼之讀取命令發送至控制電路14。且,CA輸入電路15將行位址C_AD發送至行解碼器13。行解碼器13將對行位址C_AD解碼完之結果發送至控制電路12。 其次,行控制電路12讀出選擇記憶庫BNK之選擇記憶體單元MC之資料(步驟S12)。更具體而言,控制電路14若接收讀取命令,則對行控制電路12指示資料之讀出。行控制電路12內之行選擇電路21根據解碼結果選擇複數條位元線BL及複數條源極線SL。感測放大器22將經由選擇位元線BL讀出之讀取資料及同位位元發送至ECC解碼器31。 其次,ECC解碼器31使用同位位元進行讀取資料之ECC處理(步驟S13)。 其次,行控制電路12將讀取資料儲存頁緩衝區25(步驟S14)。更具體而言,於讀取資料中無校正時,將讀取資料及同位位元儲存於頁緩衝區25。於讀取資料中有校正時,將校正資料及同位位元儲存於頁緩衝區25。 圖3之步驟S12~S14相當於單元讀出。 在利用ECC解碼器31校正資料時(步驟S15_是),行控制電路12進行回寫動作(步驟S16)。更具體而言,儲存於頁緩衝區25之校正資料及同位位元被回寫至選擇記憶體單元MC。此時,在多工器26中,根據控制信號SWB選擇第2輸入端子,寫入驅動器23與頁緩衝區25連接。且,行控制電路12將儲存於頁緩衝區25之校正資料經由DQ電路18及資料線DQ<15:0>輸出至主機100。 在不利用ECC解碼器31校正資料時(步驟S15_否),行控制電路12不進行回寫動作,將儲存於頁緩衝區25之讀取資料輸出至主機100。 其次,列解碼器11及行控制電路12若自主機100接收到預充電命令及位址信號,則進行選擇記憶庫BNK之預充電(非啟動)(步驟S17)。藉此,讀出動作結束。此外,於在選擇記憶庫BNK之選擇字元線WL中持續進行寫入或讀出動作時,可省略預充電動作。 1.3.2 讀出動作時之命令序列 其次,針對讀出動作時之命令序列,使用圖4進行說明。圖4之例顯示自記憶庫BNK0讀出資料之情形,選擇其他記憶庫BNK之情形亦相同。本實施形態之半導體記憶裝置1係配合內部時脈CLK(時脈CK_t、及互補時脈CK_c)之時序而動作。且,半導體記憶裝置1以時脈CK_t、及互補時脈CK_c交叉之時序自主機100接收命令/位址等。 如圖4所示,在時刻T0時,半導體記憶裝置1自主機100接收記憶庫BNK0之有效命令(參考符號「Activate(啟動)」)。此外,以輸入有效命令時之時脈CK_t之上升沿及下降沿之時序,自主機100輸入記憶庫位址B_AD及列位址R_AD。而後,在位址暫存器16設置記憶庫位址B_AD、及列位址R_AD。藉此,進行選擇字元線WL之啟動。 在自時刻T0經過期間「tRCD(RAS至CAS之延遲)」後之時刻T1時,半導體記憶裝置1繼有效命令之後自主機100接收選擇記憶庫BNK0之讀取命令(參考符號「Read(讀取)」)。又,以輸入讀取命令時之時脈CK_t之上升沿及下降沿之時序,自主機100輸入記憶庫位址B_AD及行位址C_AD。而後,在位址暫存器16設置記憶庫位址B_AD、及行位址C_AD。藉此,讀出動作開始。此外,期間「tRCD」(RAS至CAS之延遲)係自接收有效命令至接收讀取命令(在寫入動作時係寫入命令)之期間。且,「RAS」係列位址選通,「CAS」係行位址選通。又,列位址R_AD及行位址C_AD分別分2次輸入至半導體記憶裝置1,但輸入次數可任意地設定。 在自時刻T0經過期間「tRAS(列有效時間)」後之時刻Tk(k為3以上之整數)時,亦即在讀出動作結束後,半導體記憶裝置1自主機100接收預充電命令(參考符號「Pre-charge(預充電)」)。又,以輸入預充電命令之時脈CK_t之上升沿之時序,自主機100輸入記憶庫位址B_AD。藉此,進行選擇記憶庫BNK0之非啟動。此外,期間「tRAS(列有效時間)」係自接收有效命令至接收預充電命令之期間、亦即選擇記憶庫BNK(字元線WL)啟動之期間。 在自時刻Tk經過期間「tRP(列預充電時間)」後之時刻Tk+2時,亦即在預充電動作結束後,接收用於下一動作之有效命令。此時接收之記憶庫位址B_AD可表示記憶庫BNK0,亦可表示其他記憶庫BNK。此外,期間「tRP(列預充電時間)」係自接收預充電命令至接收有效命令之期間。 將期間tRAS與期間tRP相加而成之期間tRC(有效至有效之命令期間)表示1次讀出動作(或寫入動作)之期間。 1.4 寫入動作 1.4.1 寫入動作之概要 其次,針對本實施形態之寫入動作,使用圖5進行說明。本實施形態之寫入動作包含:與包含成為寫入對象的行位址C_AD之頁對應之單元讀出、回寫動作、及將寫入資料寫入之動作(以下稱為單元寫入」)。而且,與讀出動作相同地,單元讀出與回寫動作係連續地進行。 如圖5所示,首先,列解碼器11若與讀出動作之步驟S10相同地自主機100接收有效命令及位址信號,則將選擇記憶庫BNK之選擇字元線WL啟動(步驟S10) 其次,控制電路14接收寫入命令(步驟S20)。更具體而言,CA輸入電路15經由命令/位址線CA0~CA9接收寫入命令及行位址C_AD。CA輸入電路15經由命令電路17將經解碼之寫入命令發送至控制電路14。且,CA輸入電路15將行位址C_AD發送至行解碼器13。行解碼器13將解碼行位址C_AD之結果發送至控制電路12。 其次,行控制電路12係與圖3之讀出動作之單元讀出(步驟S12至S14)相同地,對讀取資料進行ECC處理,並將讀取資料(校正資料)及同位位元儲存於頁緩衝區25。 行控制電路12在將讀取資料(校正資料)及同位位元儲存於頁緩衝區25後,與回寫動作並行地開始寫入資料之寫入動作。 更具體而言,在步驟S14結束後,於與讀出動作相同地利用ECC解碼器31校正資料時(步驟S15_是),行控制電路12進行回寫動作(步驟S16)。另一方面,在不利用ECC解碼器31校正資料時(步驟S15_否),省略回寫動作。 又,在步驟S14結束後,寫入資料被儲存於頁緩衝區25,讀取資料被改寫為寫入資料(步驟S21)。 其次,ECC編碼器32進行自頁緩衝區25傳送之寫入資料之編碼,而產生同位位元(步驟S22)。 其次,在步驟S16及步驟S22結束後,在多工器26中切換資料匯流排(步驟S23)。更具體而言,在多工器26中,根據控制信號SWB選擇第1輸入端子,ECC編碼器32與寫入驅動器23連接。 其次,寫入資料被寫入至選擇記憶體單元MC(步驟S24)。更具體而言,行選擇電路21根據行位址之解碼結果選擇複數條位元線BL及複數條源極線SL。寫入驅動器23根據寫入資料將寫入脈衝發送至1對位元線BL及源極線SL中任一者,而在記憶體單元MC中流動有寫入電流。藉此,資料被寫入至記憶體單元MC。 圖5之步驟S21~S24相當於單元讀取/寫入。 其次,與讀出動作之步驟S17相同地進行選擇記憶庫BNK之預充電(非啟動)。藉此,寫入動作結束。此外,於在選擇記憶庫BNK之選擇字元線WL中持續進行寫入或讀出動作時,可省略預充電動作。 此外,讀取資料(頁)之資料長度可與寫入資料之資料長度不同。亦即,寫入資料之資料長度可短於頁之資料長度。 再者,在圖5之例中,針對步驟S16之回寫動作與步驟S21之寫入資料之儲存及步驟S22之編碼被並列地處理之情形進行了說明,但可在步驟S16之回寫結束後執行步驟S21之寫入資料之儲存。 1.4.2 寫入動作時之資料之流動 其次,針對寫入動作時之資料之流動,使用圖6進行說明。在圖6之例中,為了使說明簡略化,而省略行選擇電路21。且,顯示對於讀取資料進行完錯誤校正之情形。在圖6中,塗白色之箭頭表示第1動作、亦即讀取資料(或校正資料),塗黑色之箭頭表示第2動作、亦即寫入資料,塗斜線之箭頭表示校正資料或寫入資料中任一者。 如圖6所示,在第1動作中,首先,感測放大器22自記憶體單元陣列10讀出讀取資料及同位位元(參考符號a1),並發送至ECC解碼器31(參考符號a2)。ECC解碼器31執行ECC處理,並將校正資料及同位位元發送至頁緩衝區25(參考符號a3)。保持於頁緩衝區25之校正資料及同位位元經由多工器26(參考符號a4)被發送至寫入驅動器23(參考符號a5),並被回寫至記憶體單元陣列10(參考符號a6)。此時,多工器26根據控制信號SWB將頁緩衝區25與寫入驅動器23連接。 其次,針對第2動作進行說明。在第2動作中,寫入資料自DQ電路18被發送至頁緩衝區(參考符號b1)。儲存於頁緩衝區25之寫入資料被發送至ECC編碼器(參考符號b2),而被賦予同位位元。寫入資料及同位位元經由多工器26(參考符號b3)被發送至寫入驅動器23(b4),並被寫入至記憶體單元陣列10(參考符號b5)。此時,多工器26根據控制信號SWB將寫入驅動器23與ECC編碼器32連接。 1.5 本實施形態之效果 若採用本實施形態之構成,則能夠提高處理能力。針對本效果具體地說明。 已知悉於在回寫動作中回寫儲存於頁緩衝區之校正資料時,在利用ECC編碼器產生相對於校正資料之同位位元後,回寫至記憶體單元陣列之方法。在此一情形下,需要用於將校正資料編碼之處理時間。 相對於此,在本實施形態之構成中,藉由連續地進行讀出動作與回寫動作,而在回寫校正資料時能夠省略產生校正資料之編碼、亦即同位位元。更具體而言,在資料讀出時,將用於錯誤校正之同位位元與校正資料一起儲存於頁緩衝區25。而且,在回寫時,藉由回寫儲存於頁緩衝區25之校正資料與同位位元,而能夠省略相對於校正資料產生同位位元。藉此,能夠省略校正資料之編碼時間。亦即,能夠縮短tRC之期間。因而,能夠提高半導體記憶裝置之處理能力。 再者,在本實施形態之構成中具備多工器26,該多工器26選擇頁緩衝區25或ECC編碼器32中一者,並使其與寫入驅動器23連接。藉此,能夠在不經由ECC編碼器32下將儲存於頁緩衝區25之校正資料及同位位元發送至寫入驅動器23。 2.第2實施形態 其次,針對第2實施形態進行說明。在第2實施形態中,針對控制信號SWB之產生進行說明。以下,僅針對與第1實施形態不同之點進行說明。 2.1 寫入動作時之控制電路之序列 首先,針對寫入動作時之控制電路14之序列,使用圖7進行說明。 如圖7所示,在控制電路14中,在將寫入資料寫入時(以下稱為「寫入序列」),進行大致劃分為3個階段之序列、亦即3個控制信號之確證處理。更具體而言,控制電路14首先在接收寫入命令、行位址C_AD、及寫入資料時,確證寫入啟用信號BWEN1。其次,控制電路14在經過第1期間後,確證寫入啟用信號BWEN2。亦即,寫入啟用信號BWEN2係使寫入啟用信號BWEN1延遲第1期間之信號。在頁緩衝區25中,基於寫入啟用信號BWEN2與行位址C_AD自DQ電路18擷取寫入資料。而後,ECC電路24進行被擷取入頁緩衝區25之寫入資料之編碼。再者,控制電路14在自確證出寫入啟用信號BWEN2經過第2期間後,確證寫入啟用信號BWENS。亦即,寫入啟用信號BWENS係使寫入啟用信號BWEN2延遲第2期間之信號。寫入驅動器23基於寫入啟用信號BWENS開始施加寫入脈衝。 另一方面,在控制電路14中,在回寫時(以下稱為「回寫序列」),省略寫入啟用信號BWEN1及BWEN2之確證處理,而進行寫入啟用信號BWENS之確證處理。 2.2 寫入啟用信號之發送/接收 其次,針對寫入啟用信號BWEN1、BWEN2、及BWENS之發送/接收,使用圖8更詳細地說明。圖8之例顯示與1行對應之寫入脈衝之產生。 如圖8所示,寫入啟用信號BWEN1被發送至例如設置於控制電路14內之延遲電路50。延遲電路50將使寫入啟用信號BWEN1延遲第1期間之寫入啟用信號BWEN2發送至例如設置於控制電路14內之延遲電路51及BWEN2_CAD產生電路53。延遲電路50例如為了調整將寫入資料擷取入頁緩衝區25之時序,而使寫入啟用信號BWEN1延遲第1期間。此外,延遲電路50及51、以及BWEN2_CAD產生電路53可設置於控制電路14外。 BWEN2_CAD產生電路53若接收行位址C_AD及寫入啟用信號BWEN2,則產生(確證)與行對應之控制信號BWEN2_<C_AD>,並將其發送至頁緩衝區25。頁緩衝區25基於控制信號BWEN2_<C_AD>將寫入資料儲存於頁緩衝區25內之指定之區域。之後,寫入資料被發送至ECC編碼器32,而被賦予同位位元。 延遲電路51將使寫入啟用信號BWEN2延遲第2期間之寫入啟用信號BWENS發送至例如設置於寫入驅動器23內之寫入脈衝產生電路54。延遲電路51以例如在ECC編碼器32之同位位元產生結束後,寫入驅動器23開始施加寫入脈衝之方式,使寫入啟用信號BWEN2延遲第2期間。 設置於例如行解碼器13內之延遲電路52為了配合寫入脈衝產生電路54接收寫入啟用信號BWENS之時序,而在延遲第3期間後將行位址C_AD發送至寫入脈衝產生電路54。寫入脈衝產生電路54基於寫入啟用信號BWENS與行位址C_AD產生寫入脈衝(參考符號「WP」)。 2.3 SWB產生電路 其次,針對SWB產生電路,使用圖9進行說明。本實施形態之SWB產生電路著眼於在寫入資料寫入時產生之(確證之)控制信號BWEN2_<C_AD>,產生控制信號SWB。SWB產生電路設置於例如控制電路14內,產生用於控制多工器26之控制信號SWB。在圖9之例中,在控制信號SWB為低(「L」)位準時,多工器26選擇第1輸入端子而將寫入驅動器23與ECC編碼器32連接。又,在控制信號SWB為高(「H」)位準時,多工器26選擇第2輸入端子而將寫入驅動器23與頁緩衝區25連接。 如圖9所示,SWB產生電路60包含:3條NAND電路61~63、非或電路64、及反相器65。 在NAND電路61之第1輸入端子輸入控制信號BWEN2_<C_AD>,第2輸入端子連接於非或電路64之輸出端子。NAND電路61之輸出端子連接於NAND電路62之第1輸入端子。 NAND電路62之第2輸入端子連接於NAND電路63之輸出端子。NAND電路62之輸出端子連接於NAND電路63之第1輸入端子及反相器65之輸入端子。 在非或電路64之第1輸入端子輸入重置信號RESET,在第2輸入端子輸入控制信號ACT_PULSE。重置信號RESET係用將SWB產生電路60設定為重置狀態之信號,被確證為「H」位準。控制信號ACT_PULSE係在控制電路14接收到有效命令時,在一定期間設定為「H」位準之信號。非或電路64之輸出端子連接於NAND電路63之第2輸入端子。 自反相器65輸出之信號作為控制信號SWB被發送至多工器26。 此外,圖9顯示構成SWB產生電路之鎖存器電路之一例,但並不限定於此。可為根據控制信號BWEN2_<C_AD>及控制信號ACT_PULSE執行設置與重置之SR鎖存器電路。 其次,在圖10中顯示SWB產生電路60之真值表。此外,在圖10之例中,重置信號RESET被設定為「L」位準。 如圖10所示,在控制信號ACT_PULSE及控制信號BWEN2_<C_AD>均為「L」位準時,控制信號SWB保持此前之狀態。而且,在控制信號BWEN2_<C_AD>為「H」位準時,控制信號SWB被設定為「L」位準,在控制信號ACT_PULSE為「H」位準時,控制信號SWB被設定為「H」位準。在本實施形態中,不會發生控制信號ACT_PULSE及控制信號BWEN2_<C_AD>均被設定為「H」位準之狀態。 例如,控制電路14若接收有效命令,則將控制信號ACT_PULSE暫時設定為「H」位準。此時,SWB產生電路60將控制信號SWB設定為「H」位準。之後,控制電路14將控制信號ACT_PULSE設定為「L」位準,SWB產生電路60將控制信號SWB保持為「H」位準。在該狀態下,執行例如回寫動作。而且,在將寫入資料寫入時,由於控制信號BWEN2_<C_AD>被設定為「H」位準,故SWB產生電路60將控制信號SWB設定為「L」位準。在該狀態下,執行寫入資料之寫入。 2.4 本實施形態之效果 能夠將本實施形態之構成應用於第1實施形態。藉此,能夠得到與第1實施形態相同之效果。 3.變化例 上述實施形態之半導體記憶裝置包含:記憶體單元陣列(10@圖1),其包含複數個記憶體單元(MC@圖2);ECC(Error checking and correcting,錯誤檢查與校正)電路(24@圖1),其包含:在將自外部輸入之寫入資料(寫入資料)寫入至複數個記憶體單元(MC@圖2)時產生錯誤校正符號的編碼器(32@圖1)、及在自複數個記憶體單元(MC@圖2)讀出資料時基於錯誤校正符號(同位位元)進行自複數個記憶體單元(MC@圖2)讀出之資料之校正處理的解碼器(31@圖1);頁緩衝區(25@圖1),其可記憶寫入資料、由校正處理校正之校正資料、及用於校正處理之錯誤校正符號;及多工器(26@圖1),其第1輸入端子連接於編碼器,第2輸入端子連接於頁緩衝區,輸出端子連接於記憶體單元陣列,在將寫入資料寫入至複數個記憶體單元時選擇第1輸入端子,在將校正資料寫入至複數個記憶體單元時選擇第2輸入端子。 藉由應用上述實施形態,而能夠提供一種能夠提高處理能力之半導體記憶裝置。此外,實施形態並不限定於上述說明之形態,可進行各種變化。 在上述各實施形態中,作為半導體記憶裝置係例舉STT-MRAM為例進行了說明,但並不限定於此。例如,可應用於如與MRAM相同之電阻變化型記憶體、例如ReRAM(resistive random access memory,電阻式隨機存取記憶體)、PCRAM(phase-change random access memory,相變隨機存取記憶體)等般具有使用電阻變化來記憶資料之元件的所有半導體記憶裝置。且,無論是揮發性記憶體還是非揮發性記憶體皆可,可應用於搭載ECC電路,於在讀出時存在錯誤時,基於該資訊立即進行朝記憶體單元之回寫動作之半導體記憶裝置。 再者,所謂上述實施形態之「連接」亦包含使例如電晶體或電阻等其他之何者介置於其間而間接地連接之狀態。 雖然說明了本發明之若干個實施形態,但該等實施形態係作為例子而提出者,並非意圖限定本發明之範圍。該等新穎之實施形態可利用其他各種方式實施,在不脫離本發明之要旨之範圍內可進行各種省略、置換、變更。該等實施形態及其變化係包含於本發明之範圍及要旨內,且包含於申請專利範圍所記載之本發明及其均等之範圍內。 [關聯申請案] 本發明申請案享有將日本專利申請2017-45201號(申請日:2017年3月9日)作為基礎申請案之優先權。本申請案藉由參照該基礎申請案而包含基礎申請案之全部內容。
<TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 1 </td><td> 半導體記憶裝置 </td></tr><tr><td> 10 </td><td> 記憶體單元陣列 </td></tr><tr><td> 11 </td><td> 列解碼器 </td></tr><tr><td> 12 </td><td> 行控制電路 </td></tr><tr><td> 13 </td><td> 行解碼器 </td></tr><tr><td> 14 </td><td> 控制電路 </td></tr><tr><td> 15 </td><td> CA輸入電路 </td></tr><tr><td> 16 </td><td> 位址暫存器 </td></tr><tr><td> 17 </td><td> 命令電路 </td></tr><tr><td> 18 </td><td> DQ電路 </td></tr><tr><td> 21 </td><td> 行選擇電路 </td></tr><tr><td> 21a </td><td> 第1行選擇電路 </td></tr><tr><td> 21b </td><td> 第2行選擇電路 </td></tr><tr><td> 22 </td><td> 感測放大器 </td></tr><tr><td> 23 </td><td> 寫入驅動器 </td></tr><tr><td> 24 </td><td> ECC電路 </td></tr><tr><td> 25 </td><td> 頁緩衝區 </td></tr><tr><td> 26 </td><td> 多工器 </td></tr><tr><td> 31 </td><td> 解碼器/ECC解碼器 </td></tr><tr><td> 32 </td><td> 編碼器/ECC編碼器 </td></tr><tr><td> 40 </td><td> 磁阻效應元件/MTJ元件 </td></tr><tr><td> 41 </td><td> 選擇電晶體 </td></tr><tr><td> 50 </td><td> 延遲電路 </td></tr><tr><td> 51 </td><td> 延遲電路 </td></tr><tr><td> 52 </td><td> 延遲電路 </td></tr><tr><td> 53 </td><td> BWEN2_CAD產生電路 </td></tr><tr><td> 54 </td><td> 寫入脈衝產生電路 </td></tr><tr><td> 60 </td><td> SWB產生電路 </td></tr><tr><td> 61 </td><td> NAND電路 </td></tr><tr><td> 62 </td><td> NAND電路 </td></tr><tr><td> 63 </td><td> NAND電路 </td></tr><tr><td> 64 </td><td> 非或電路 </td></tr><tr><td> 65 </td><td> 反相器 </td></tr><tr><td> 100 </td><td> 主機 </td></tr><tr><td> ACT_PULSE </td><td> 控制信號 </td></tr><tr><td> a1 </td><td> 參考符號 </td></tr><tr><td> a2 </td><td> 參考符號 </td></tr><tr><td> a3 </td><td> 參考符號 </td></tr><tr><td> a4 </td><td> 參考符號 </td></tr><tr><td> a5 </td><td> 參考符號 </td></tr><tr><td> a6 </td><td> 參考符號 </td></tr><tr><td> BL0 </td><td> 位元線 </td></tr><tr><td> BL1 </td><td> 位元線 </td></tr><tr><td> BLm </td><td> 位元線 </td></tr><tr><td> BNK0 </td><td> 記憶庫 </td></tr><tr><td> BNK1 </td><td> 記憶庫 </td></tr><tr><td> BWEN1 </td><td> 寫入啟用信號 </td></tr><tr><td> BWEN2 </td><td> 寫入啟用信號 </td></tr><tr><td> BWEN2_<C_AD> </td><td> 控制信號 </td></tr><tr><td> BWENS </td><td> 寫入啟用信號 </td></tr><tr><td> B_AD </td><td> 記憶庫位址 </td></tr><tr><td> b1 </td><td> 參考符號 </td></tr><tr><td> b2 </td><td> 參考符號 </td></tr><tr><td> b3 </td><td> 參考符號 </td></tr><tr><td> b4 </td><td> 參考符號 </td></tr><tr><td> b5 </td><td> 參考符號 </td></tr><tr><td> b6 </td><td> 參考符號 </td></tr><tr><td> CA0 </td><td> 命令/位址線 </td></tr><tr><td> CA1 </td><td> 命令/位址線 </td></tr><tr><td> CA2 </td><td> 命令/位址線 </td></tr><tr><td> CA3 </td><td> 命令/位址線 </td></tr><tr><td> CA4 </td><td> 命令/位址線 </td></tr><tr><td> CA5 </td><td> 命令/位址線 </td></tr><tr><td> CA6 </td><td> 命令/位址線 </td></tr><tr><td> CA7 </td><td> 命令/位址線 </td></tr><tr><td> CA8 </td><td> 命令/位址線 </td></tr><tr><td> CA9 </td><td> 命令/位址線 </td></tr><tr><td> CK </td><td> 時脈信號 </td></tr><tr><td> CK_t </td><td> 時脈 </td></tr><tr><td> CK_c </td><td> 互補時脈 </td></tr><tr><td> CS </td><td> 晶片選擇信號 </td></tr><tr><td> C_AD </td><td> 行位址 </td></tr><tr><td> DQ<15:0> </td><td> 資料線 </td></tr><tr><td> R_AD </td><td> 列位址 </td></tr><tr><td> SL0 </td><td> 源極線 </td></tr><tr><td> SL1 </td><td> 源極線 </td></tr><tr><td> SLm </td><td> 源極線 </td></tr><tr><td> SWB </td><td> 控制信號 </td></tr><tr><td> T0 </td><td> 時刻 </td></tr><tr><td> T1 </td><td> 時刻 </td></tr><tr><td> T2 </td><td> 時刻 </td></tr><tr><td> Tk </td><td> 時刻 </td></tr><tr><td> Tk+1 </td><td> 時刻 </td></tr><tr><td> Tk+2 </td><td> 時刻 </td></tr><tr><td> tRAS </td><td> 期間 </td></tr><tr><td> tRC </td><td> 期間 </td></tr><tr><td> tRCD </td><td> 期間 </td></tr><tr><td> tRP </td><td> 期間 </td></tr><tr><td> WL0 </td><td> 字元線 </td></tr><tr><td> WL1 </td><td> 字元線 </td></tr><tr><td> WLm </td><td> 字元線 </td></tr><tr><td> WP </td><td> 參考符號 </td></tr></TBODY></TABLE>
圖1係第1實施形態之半導體記憶裝置之方塊圖。 圖2係第1實施形態之半導體記憶裝置之記憶體單元陣列之電路圖。 圖3係第1實施形態之半導體記憶裝置之讀出動作之流程圖。 圖4係第1實施形態之半導體記憶裝置之讀出動作之時序圖。 圖5係第1實施形態之半導體記憶裝置之寫入動作之流程圖。 圖6係顯示第1實施形態之半導體記憶裝置之資料與同位之流動之流程圖。 圖7係顯示第2實施形態之半導體記憶裝置之寫入序列與回寫序列之不同之流程圖。 圖8係顯示第2實施形態之半導體記憶裝置之寫入啟用信號之發送/接收之方塊圖。 圖9係第2實施形態之半導體記憶裝置具備之SWB產生電路。 圖10係第2實施形態之半導體記憶裝置具備之SWB產生電路之真值表。