JP2014174849A - Semiconductor memory device - Google Patents

Semiconductor memory device Download PDF

Info

Publication number
JP2014174849A
JP2014174849A JP2013048514A JP2013048514A JP2014174849A JP 2014174849 A JP2014174849 A JP 2014174849A JP 2013048514 A JP2013048514 A JP 2013048514A JP 2013048514 A JP2013048514 A JP 2013048514A JP 2014174849 A JP2014174849 A JP 2014174849A
Authority
JP
Japan
Prior art keywords
command
unit
memory
buffer
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
JP2013048514A
Other languages
Japanese (ja)
Inventor
Tatsuhiro Suzumura
竜広 鈴村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2013048514A priority Critical patent/JP2014174849A/en
Publication of JP2014174849A publication Critical patent/JP2014174849A/en
Abandoned legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a nonvolatile semiconductor memory device with improved reliability in data reading.SOLUTION: A semiconductor memory device 30 includes: a nonvolatile memory 11 that stores data; a measuring unit 40 that measures the completion time of operation caused by a command in the nonvolatile memory and outputs completion time information; address acquisition units 33 and 34 that obtain an address; a first buffer 38 that stores the command; a command issuing unit 35 that receives the address that is obtained by the address acquisition unit and issues a command according to the completion time information that is output from the measuring unit; command processing units 36 and 37 that store and process the command which is issued from the command issuing unit; and a memory controller 39 that outputs the command, which is processed by the command processing units, to the nonvolatile memory and controls the operation of the nonvolatile memory.

Description

本発明の実施形態は、半導体記憶装置に関する。   Embodiments described herein relate generally to a semiconductor memory device.

NAND型フラッシュメモリが知られている。このNAND型フラッシュメモリのデータ記憶容量を大きくするための技術として、メモリセルの閾値分布を細分化し、メモリセルが複数ビットデータ(多値データ)を記憶可能とする多値記憶方式が用いられる。   A NAND flash memory is known. As a technique for increasing the data storage capacity of the NAND flash memory, a multi-value storage method is used in which the threshold distribution of memory cells is subdivided and the memory cells can store a plurality of bit data (multi-value data).

特開2011−227664号公報JP 2011-227664 A

本発明が解決しようとする課題は、データの読み出しの信頼性向上を図った不揮発性半導体記憶装置を提供する。   The problem to be solved by the present invention is to provide a nonvolatile semiconductor memory device that improves the reliability of data reading.

実施形態の半導体記憶装置は、データを記憶する不揮発性メモリと、前記不揮発性メモリにおけるコマンドによる動作の終了時間を求め、終了時間情報を出力する計測部と、アドレスを取得するアドレス取得部と、コマンドを記憶する第1のバッファと、前記アドレス取得部により取得されたアドレスを受け取り、前記計測部から出力された前記終了時間情報に応じてコマンドを発行するコマンド発行部と、前記コマンド発行部から発行された前記コマンドを記憶し処理するコマンド処理部と、前記コマンド処理部により処理された前記コマンドを前記不揮発性メモリへ出力すると共に、前記不揮発性メモリの動作を制御するメモリコントローラとを備える。   The semiconductor memory device according to the embodiment includes a nonvolatile memory that stores data, an end time of an operation based on a command in the nonvolatile memory, a measurement unit that outputs end time information, an address acquisition unit that acquires an address, A first buffer for storing a command, a command issuing unit for receiving an address acquired by the address acquiring unit, and issuing a command according to the end time information output from the measuring unit; and the command issuing unit A command processing unit that stores and processes the issued command; and a memory controller that outputs the command processed by the command processing unit to the nonvolatile memory and controls an operation of the nonvolatile memory.

第1実施形態の半導体記憶装置の構成を示すブロック図。1 is a block diagram showing a configuration of a semiconductor memory device according to a first embodiment. 第1実施形態の半導体記憶装置のリードにおけるNANDコントローラと不揮発性半導体メモリの構成を示すブロック図。FIG. 3 is a block diagram showing a configuration of a NAND controller and a nonvolatile semiconductor memory in reading of the semiconductor memory device of the first embodiment. 第1実施形態における不揮発性半導体メモリのリードの動作を示すタイムダイアグラム。The time diagram which shows the read-out operation | movement of the non-volatile semiconductor memory in 1st Embodiment. 第1実施形態における不揮発性半導体メモリの他の動作を示すタイムダイアグラム。The time diagram which shows other operation | movement of the non-volatile semiconductor memory in 1st Embodiment. 前記第1実施形態のリード及びイレーズにおける不揮発性半導体メモリの動作を示すタイムダイアグラム。3 is a time diagram showing the operation of the nonvolatile semiconductor memory in reading and erasing according to the first embodiment. 前記第1実施形態のライト及びリードにおける不揮発性半導体メモリの動作を示すタイムダイアグラム。3 is a time diagram showing the operation of the nonvolatile semiconductor memory in writing and reading according to the first embodiment. 前記第1実施形態のリードにおける不揮発性半導体メモリの他の動作を示すタイムダイアグラム。6 is a time diagram showing another operation of the nonvolatile semiconductor memory in the read of the first embodiment. 第2実施形態の半導体記憶装置の構成を示すブロック図。The block diagram which shows the structure of the semiconductor memory device of 2nd Embodiment. 第2実施形態のSSDコントローラにおけるコマンドの流れとバッファを示すブロック図。The block diagram which shows the flow of the command in the SSD controller of 2nd Embodiment, and a buffer. 第2実施形態のSSDコントローラにおけるタイマーの構成を示すブロック図。The block diagram which shows the structure of the timer in the SSD controller of 2nd Embodiment. 第2実施形態のSSDコントローラにおけるコマンド発行部の構成を示すブロック図。The block diagram which shows the structure of the command issuing part in the SSD controller of 2nd Embodiment. 第3実施形態のSSDコントローラにおけるタイマーの構成を示すブロック図。The block diagram which shows the structure of the timer in the SSD controller of 3rd Embodiment. 第4実施形態の半導体記憶装置を搭載したパーソナルコンピュータの一例を示す斜視図。The perspective view which shows an example of the personal computer carrying the semiconductor memory device of 4th Embodiment. 第4実施形態の半導体記憶装置を搭載したパーソナルコンピュータの構成例を示すブロック図。The block diagram which shows the structural example of the personal computer carrying the semiconductor memory device of 4th Embodiment. 第5実施形態の半導体記憶装置の構成を示すブロック図。FIG. 9 is a block diagram showing a configuration of a semiconductor memory device according to a fifth embodiment. パーソナルコンピュータにおいてデバイススリープが実行されるSSDの構成を示すブロック図。The block diagram which shows the structure of SSD in which device sleep is performed in a personal computer. リードにおいて前記デバイススリープが起動した場合の一例を示すタイムダイアグラム。The time diagram which shows an example when the said device sleep starts in a read. 第4実施形態のSSDを搭載したサーバの使用例を示す概念図。The conceptual diagram which shows the usage example of the server carrying SSD of 4th Embodiment.

以下、図面を参照して実施形態のメモリシステムについて説明する。ここでは、メモリシステムとして、SOlid State Drive(SSD)を例に挙げ説明するが、本実施形態の適用対象はSSDに限定されるものではない。なお、以下の説明において、同一の機能及び構成を有する構成要素については、同一符号を付し、重複説明は必要な場合にのみ行う。   Hereinafter, a memory system according to an embodiment will be described with reference to the drawings. Here, a solid state drive (SSD) will be described as an example of the memory system, but the application target of the present embodiment is not limited to the SSD. In the following description, components having the same function and configuration are denoted by the same reference numerals, and redundant description will be given only when necessary.

メモリシステムは、不揮発性メモリ、コマンド管理部、コマンド発行部、データ制御部、及びコマンド監視部を備える。前記不揮発性メモリはデータを記憶する。コマンド管理部はコマンドを受け取り管理する。前記コマンド発行部は、前記コマンド管理部が受け取った前記コマンドを前記不揮発性メモリに発行する。前記データ制御部は、前記不揮発性メモリに対してデータのリード及びライトのいずれかを行う。前記コマンド監視部は、前記コマンド管理部を監視し、前記コマンド管理部がコマンドを受け取ったとき、前記データ制御部に受信信号を出力する。前記データ制御部は、前記コマンド監視部から前記受信信号を受け取ったとき、データのリード及びライトのいずれかを中断させ、前記コマンド発行部から前記不揮発性メモリへ前記コマンドを発行させ、前記コマンドの発行後に、データのリード及びライトの前記いずれかを再開させる。   The memory system includes a nonvolatile memory, a command management unit, a command issuing unit, a data control unit, and a command monitoring unit. The nonvolatile memory stores data. The command management unit receives and manages commands. The command issuing unit issues the command received by the command management unit to the nonvolatile memory. The data control unit performs either reading or writing of data with respect to the nonvolatile memory. The command monitoring unit monitors the command management unit, and outputs a reception signal to the data control unit when the command management unit receives a command. The data control unit, when receiving the reception signal from the command monitoring unit, interrupts either reading or writing of data, causes the command issuing unit to issue the command to the nonvolatile memory, and After the issuance, either the data reading or writing is resumed.

[第1実施形態]
第1実施形態の半導体記憶装置30について説明する。半導体記憶装置30は例えば、a solid state drive(SSD)である。
[First Embodiment]
The semiconductor memory device 30 of the first embodiment will be described. The semiconductor memory device 30 is, for example, a solid state drive (SSD).

図1は、第1実施形態の半導体記憶装置の構成を示すブロック図である。   FIG. 1 is a block diagram showing the configuration of the semiconductor memory device of the first embodiment.

a solid state drive(SSD)10は、ホスト装置(以下、ホストと記す)100、例えばパーソナルコンピュータ、サーバ等とAdvanced Technology Attachment(ATA)規格などの通信インタフェースで接続される。SSD10はホスト100の外部記憶装置として機能する。   The a solid state drive (SSD) 10 is connected to a host device (hereinafter referred to as a host) 100, for example, a personal computer, a server, or the like through a communication interface such as an Advanced Technology Attachment (ATA) standard. The SSD 10 functions as an external storage device for the host 100.

SSD10は、不揮発性半導体メモリ11、SSDコントローラ12、ホストインタフェース(I/F)13、及び揮発性半導体メモリ(例えば、DRAM)14などを備える。   The SSD 10 includes a nonvolatile semiconductor memory 11, an SSD controller 12, a host interface (I / F) 13, a volatile semiconductor memory (eg, DRAM) 14, and the like.

不揮発性半導体メモリ11は、ホスト100からリード/ライトされ、データを記憶する。不揮発性半導体メモリ11は、例えば、NAND型フラッシュメモリ(以下、NANDメモリと記す)、NOR型フラッシュメモリ、Magnetic Random Access Memory(MRAM)、Resistive Random access memory(ReRAM)などを含む。さらに、不揮発性半導体メモリ11は、例えば、単一あるいは複数の半導体チップを含む単一のパッケージであってもよいし、単一あるいは複数の半導体チップをそれぞれ含む複数のパッケージであってもよい。また、単一の半導体チップのフリップチップであってもよい。   The nonvolatile semiconductor memory 11 is read / written from the host 100 and stores data. The nonvolatile semiconductor memory 11 includes, for example, a NAND flash memory (hereinafter referred to as “NAND memory”), a NOR flash memory, a magnetic random access memory (MRAM), a reactive random access memory (ReRAM), and the like. Furthermore, the nonvolatile semiconductor memory 11 may be a single package including a single or a plurality of semiconductor chips, or may be a plurality of packages each including a single or a plurality of semiconductor chips. Further, it may be a flip chip of a single semiconductor chip.

本実施形態では、不揮発性半導体メモリ11は、複数のNANDメモリ11A,11B,11C,11Dを含み、各々が単一の半導体チップを含むパッケージであるとする。NANDメモリ11Aは、メモリ回路11A1とバッファ11A2を有する。同様に、NANDメモリ11Bはメモリ回路11B1とバッファ11B2を、NANDメモリ11Cはメモリ回路11C1とバッファ11C2を、NANDメモリ11Dはメモリ回路11D1とバッファ11D2をそれぞれ有する。前記メモリ回路は、データを記憶する複数の不揮発性のメモリセルを含む。前記バッファは、メモリ回路に入出力するためのデータを一時的に保持する。   In the present embodiment, the nonvolatile semiconductor memory 11 includes a plurality of NAND memories 11A, 11B, 11C, and 11D, each of which includes a single semiconductor chip. The NAND memory 11A includes a memory circuit 11A1 and a buffer 11A2. Similarly, the NAND memory 11B includes a memory circuit 11B1 and a buffer 11B2, the NAND memory 11C includes a memory circuit 11C1 and a buffer 11C2, and the NAND memory 11D includes a memory circuit 11D1 and a buffer 11D2. The memory circuit includes a plurality of nonvolatile memory cells that store data. The buffer temporarily holds data to be input / output to / from the memory circuit.

SSDコントローラ12は、ホスト100からホストインタフェース13を介して入力される信号にしたがって、不揮発性半導体メモリ11、揮発性半導体メモリ14などのSSD全体の動作を制御する。SSDコントローラ12は、バス26によって接続された、CPU21、インタフェース(I/F)回路22、DRAMコントローラ23、データバッファ24、及びNANDコントローラ25を有する。   The SSD controller 12 controls the operation of the entire SSD such as the nonvolatile semiconductor memory 11 and the volatile semiconductor memory 14 in accordance with a signal input from the host 100 via the host interface 13. The SSD controller 12 includes a CPU 21, an interface (I / F) circuit 22, a DRAM controller 23, a data buffer 24, and a NAND controller 25 connected by a bus 26.

CPU21は、各種プログラム及び演算の処理を行うと共に、SSDコントローラ12内の動作を制御する。インタフェース回路22は、ホストインタフェース13とSSDコントローラ12との間の信号の授受を行う。DRAMコントローラ23は揮発性半導体メモリ(DRAM)14の動作を制御する。データバッファ24は、ホスト100や不揮発性半導体メモリ11に対する転送データを一時的に格納する際などに使用される。さらに、NANDコントローラ25は、不揮発性半導体メモリ11内のNANDメモリ11A,11B,11C,11Dの動作を制御する。   The CPU 21 performs various programs and calculation processes, and controls the operation in the SSD controller 12. The interface circuit 22 exchanges signals between the host interface 13 and the SSD controller 12. The DRAM controller 23 controls the operation of the volatile semiconductor memory (DRAM) 14. The data buffer 24 is used when temporarily storing transfer data for the host 100 or the nonvolatile semiconductor memory 11. Further, the NAND controller 25 controls the operation of the NAND memories 11A, 11B, 11C, and 11D in the nonvolatile semiconductor memory 11.

ホストインタフェース13は、SSD10とホスト100との間の信号の授受を行う。揮発性半導体メモリ14は、不揮発性半導体メモリ11の管理情報の保管やデータのキャッシュなど、転送データを一時的に格納する際などに使用される。揮発性半導体メモリ14は、例えば、DRAM、SRAMなどを含む。   The host interface 13 exchanges signals between the SSD 10 and the host 100. The volatile semiconductor memory 14 is used for temporarily storing transfer data such as storage of management information of the nonvolatile semiconductor memory 11 and data cache. The volatile semiconductor memory 14 includes, for example, DRAM, SRAM and the like.

ホスト100からホストインタフェース13へ送信されたデータは、CPU21の制御に従って、一旦データバッファ24に格納される。その後、データバッファ24から転送されて不揮発性半導体メモリ11内のNANDメモリに書き込まれる。一方、NANDメモリから読み出されたデータは、一旦データバッファ24に格納される。その後、データバッファ24からホストインタフェース13を介してホスト100へ送信される。   Data transmitted from the host 100 to the host interface 13 is temporarily stored in the data buffer 24 under the control of the CPU 21. Thereafter, the data is transferred from the data buffer 24 and written to the NAND memory in the nonvolatile semiconductor memory 11. On the other hand, the data read from the NAND memory is temporarily stored in the data buffer 24. Thereafter, the data is transmitted from the data buffer 24 to the host 100 via the host interface 13.

図2は、第1実施形態のリードにおけるNANDコントローラ25と不揮発性半導体メモリ11の構成を示すブロック図である。   FIG. 2 is a block diagram showing a configuration of the NAND controller 25 and the nonvolatile semiconductor memory 11 in the read of the first embodiment.

図示するように、NANDコントローラ25は、コマンドキュー部251(第1のバッファ)、コマンド引き抜き部252、コマンド発行部253、コマンド監視部254、データ制御部255、及びデコーダ256を有する。ホストインタフェース13は、コマンドキュー部251及びデータバッファ24に接続されている。さらに、コマンド発行部253及びデータ制御部255は、デコーダ256を介してNANDメモリ11A,11B,11C,11Dにそれぞれ接続されている。デコーダ256は、アドレスに基づいて不揮発性半導体メモリ11内のNANDメモリ11A,11B,11C,11Dのいずれかを選択する。   As illustrated, the NAND controller 25 includes a command queue unit 251 (first buffer), a command extraction unit 252, a command issue unit 253, a command monitoring unit 254, a data control unit 255, and a decoder 256. The host interface 13 is connected to the command queue unit 251 and the data buffer 24. Further, the command issuing unit 253 and the data control unit 255 are connected to the NAND memories 11A, 11B, 11C, and 11D via the decoder 256, respectively. The decoder 256 selects one of the NAND memories 11A, 11B, 11C, and 11D in the nonvolatile semiconductor memory 11 based on the address.

まず、ホスト100からホストインタフェース13を介してコマンドキュー部251にコマンドが入力される。コマンドキュー部251は、受け取ったコマンドを記憶し管理する。コマンド引き抜き部252は、コマンドキュー部251からコマンドを引き抜き、コマンド発行部253に転送する。コマンド発行部253は、コマンド引き抜き部252から受け取ったコマンドを、デコーダ256を介して不揮発性半導体メモリ11内のNANDメモリへ発行する。デコーダは、コマンド発行部253から発行されたコマンドを、アドレスに基づいて選択したNANDメモリへ出力する。なお、コマンドキュー部251とコマンド引き抜き部252はコマンド管理部を形成している。   First, a command is input from the host 100 to the command queue unit 251 via the host interface 13. The command queue unit 251 stores and manages the received command. The command extracting unit 252 extracts a command from the command queue unit 251 and transfers the command to the command issuing unit 253. The command issuing unit 253 issues the command received from the command extraction unit 252 to the NAND memory in the nonvolatile semiconductor memory 11 via the decoder 256. The decoder outputs the command issued from the command issuing unit 253 to the NAND memory selected based on the address. The command queue unit 251 and the command extraction unit 252 form a command management unit.

図3は、第1実施形態のリードにおける不揮発性半導体メモリの動作を示すタイムダイアグラムである。ここでは、リードにおけるNANDメモリ11A及びNANDメモリ11Bの動作制御を示す。   FIG. 3 is a time diagram showing the operation of the nonvolatile semiconductor memory in the read of the first embodiment. Here, operation control of the NAND memory 11A and the NAND memory 11B in reading is shown.

コマンド引き抜き部252はコマンドキュー部251からコマンドを引き抜き、コマンド発行部253は、コマンド引き抜き部252から受け取ったコマンドを、デコーダ256を介してNANDメモリ11Aへ発行する。一方、データ制御部255は各NANDメモリのコマンド投入状況、ビジー状況を監視し、データの引き抜きが可能になったものを発見次第、データ引き抜き動作に移行する。   The command extraction unit 252 extracts a command from the command queue unit 251, and the command issue unit 253 issues the command received from the command extraction unit 252 to the NAND memory 11 A via the decoder 256. On the other hand, the data control unit 255 monitors the command input status and busy status of each NAND memory, and shifts to the data extraction operation as soon as it is found that data can be extracted.

コマンド監視部254は、コマンドキュー部251への新たなコマンドの到着を監視し、コマンド引き抜き部252が引き抜いていない新たなコマンドを発見次第、コマンド引き抜き部252へ通知する。データ制御部255は、データ引き抜き中も含む期間中、一定間隔でコマンド監視部254の通知を確認し、新たなコマンドがあり、かつそのコマンドがNANDメモリへ投入可能であれば、データの引き抜きを中断し、コマンドを発行させる。   The command monitoring unit 254 monitors the arrival of a new command to the command queue unit 251 and notifies the command extraction unit 252 as soon as a new command not extracted by the command extraction unit 252 is found. The data control unit 255 confirms the notification of the command monitoring unit 254 at regular intervals during the period including data extraction, and if there is a new command and the command can be input to the NAND memory, the data control unit 255 extracts the data. Suspend and issue a command.

以下に、図3を参照して、NANDメモリ11A,11BへリードコマンドC0,C1をそれぞれ投入する場合を詳述する。   Hereinafter, the case where the read commands C0 and C1 are input to the NAND memories 11A and 11B will be described in detail with reference to FIG.

まず、コマンド発行部253は、デコーダ256を介してNANDメモリ11AにリードコマンドC0を発行する。期間C0にて、NANDメモリ11AはリードコマンドC0を受け取る。続いて、NANDメモリ11Aは、期間BUSY0にて、NANDメモリ11A内においてメモリ回路11A1からバッファ11A2にデータを取り出す。次に、期間OUT0にて、NANDメモリ11A内のバッファ11A2のデータがデータ制御部255によって引き抜かれる。   First, the command issuing unit 253 issues a read command C0 to the NAND memory 11A via the decoder 256. In the period C0, the NAND memory 11A receives the read command C0. Subsequently, the NAND memory 11A extracts data from the memory circuit 11A1 to the buffer 11A2 in the NAND memory 11A in the period BUSY0. Next, in the period OUT0, the data in the buffer 11A2 in the NAND memory 11A is extracted by the data control unit 255.

上記期間中、コマンド監視部254は、コマンドキュー部251への新たなコマンドの到着を監視し、リードコマンドC1の到着を発見すると、コマンド引き抜き部252及びデータ制御部255へ通知する。コマンド引き抜き部252は、コマンド監視部254の通知を受け取ると、コマンドキュー部251からリードコマンドC1を引き抜き、コマンド発行部253へ出力する。   During the period, the command monitoring unit 254 monitors the arrival of a new command to the command queue unit 251, and notifies the command extraction unit 252 and the data control unit 255 when the arrival of the read command C1 is found. Upon receiving the notification from the command monitoring unit 254, the command extraction unit 252 extracts the read command C1 from the command queue unit 251 and outputs it to the command issuing unit 253.

データ制御部255は、コマンド監視部254の通知を確認し、新たなコマンドとしてリードコマンドC1があり、かつそのリードコマンドC1がNANDメモリ11Bへ投入可能であれば、期間OUT0におけるデータの引き抜きを中断する。コマンド発行部253は、データ制御部255によるデータの引き抜きが中断したことを確認すると、リードコマンドC1をNANDメモリ11Bへ発行する。その後、データ制御部255は、コマンド発行部253によるリードコマンドC1の発行が終了したことを確認し、NANDメモリ11A内のバッファ11A2からデータの引き抜きを再開する。   The data control unit 255 confirms the notification of the command monitoring unit 254, and if the read command C1 is a new command and the read command C1 can be input to the NAND memory 11B, the data control unit 255 interrupts the data extraction in the period OUT0. To do. When the command issuing unit 253 confirms that the data extraction by the data control unit 255 is interrupted, the command issuing unit 253 issues a read command C1 to the NAND memory 11B. Thereafter, the data control unit 255 confirms that the issue of the read command C1 by the command issuing unit 253 is completed, and resumes the extraction of data from the buffer 11A2 in the NAND memory 11A.

すなわち、NANDメモリ11Aでは、期間OUT0におけるデータの引き抜きが中断され、期間C1にて、NANDメモリ11BはリードコマンドC1を受け取る。リードコマンドC1の受け取りが終了すると、NANDメモリ11Aでは、期間OUT0におけるデータの引き抜きが再開される。NANDメモリ11Bは、リードコマンドC1を受け取った後、期間BUSY1にて、NANDメモリ11B内でメモリ回路11B1からバッファ11B2にデータを取り出す。   That is, in the NAND memory 11A, the data extraction in the period OUT0 is interrupted, and in the period C1, the NAND memory 11B receives the read command C1. When the reception of the read command C1 is completed, the extraction of data in the period OUT0 is resumed in the NAND memory 11A. After receiving the read command C1, the NAND memory 11B takes out data from the memory circuit 11B1 to the buffer 11B2 in the NAND memory 11B in the period BUSY1.

ここで、NANDメモリ11Aでの期間OUT0におけるデータの引き抜きと、NANDメモリ11Bでの期間BUSY1におけるデータの取り出しとが並行して実行される。これにより、リードコマンドC0とC1による、NANDメモリ11A,11BからNANDコントローラ25へのデータの引き抜きを短期間で行うことができる。すなわち、複数のNANDメモリからNANDコントローラへのデータの引き抜きに要する時間を短縮することができる。この結果、リードにおける複数のNANDメモリの使用効率を高めることが可能である。   Here, the extraction of data in the period OUT0 in the NAND memory 11A and the extraction of data in the period BUSY1 in the NAND memory 11B are executed in parallel. As a result, the data extraction from the NAND memories 11A and 11B to the NAND controller 25 by the read commands C0 and C1 can be performed in a short period of time. That is, the time required for extracting data from a plurality of NAND memories to the NAND controller can be shortened. As a result, it is possible to increase the use efficiency of a plurality of NAND memories in reading.

なお、NANDメモリへのコマンドの投入は、NANDメモリ内のバッファからNANDコントローラへのデータ引き抜き時や、別のコマンドの投入時は不可となっている。すなわち、図3において、期間C0や期間OUT0では、NANDコントローラ25とNANDメモリ11A間の配線が使用されているため、NANDメモリ11Bへコマンドを投入することはできない。   Note that it is not possible to input a command to the NAND memory when extracting data from the buffer in the NAND memory to the NAND controller or when inputting another command. That is, in FIG. 3, in the period C0 and the period OUT0, since the wiring between the NAND controller 25 and the NAND memory 11A is used, a command cannot be input to the NAND memory 11B.

次に、図3では別々のNANDメモリ11A,11BへリードコマンドC0,C1を投入する場合を説明したが、以下では1つのNANDメモリ11AへリードコマンドC0,C1を投入する例を説明する。   Next, although the case where the read commands C0 and C1 are input to the separate NAND memories 11A and 11B has been described with reference to FIG. 3, an example in which the read commands C0 and C1 are input to one NAND memory 11A will be described below.

図4は、第1実施形態における不揮発性半導体メモリの他の動作を示すタイムダイアグラムである。ここでは、リードにおけるNANDメモリ11Aの動作制御を示す。   FIG. 4 is a time diagram showing another operation of the nonvolatile semiconductor memory according to the first embodiment. Here, operation control of the NAND memory 11A in reading is shown.

まず、コマンド発行部253は、デコーダ256を介してNANDメモリ11AにリードコマンドC0を発行する。期間C0にて、NANDメモリ11AはリードコマンドC0を受け取る。続いて、NANDメモリ11Aは、期間BUSY0にて、NANDメモリ11A内においてメモリ回路11A1からバッファ11A2にデータを取り出す。次に、期間OUT0にて、NANDメモリ11A内のバッファ11A2のデータがデータ制御部255によって引き抜かれる。   First, the command issuing unit 253 issues a read command C0 to the NAND memory 11A via the decoder 256. In the period C0, the NAND memory 11A receives the read command C0. Subsequently, the NAND memory 11A extracts data from the memory circuit 11A1 to the buffer 11A2 in the NAND memory 11A in the period BUSY0. Next, in the period OUT0, the data in the buffer 11A2 in the NAND memory 11A is extracted by the data control unit 255.

上記期間中、コマンド監視部254は、コマンドキュー部251への新たなコマンドの到着を監視し、リードコマンドC1の到着を発見すると、コマンド引き抜き部252及びデータ制御部255へ通知する。コマンド引き抜き部255は、コマンド監視部254の通知を受け取ると、コマンドキュー部251からリードコマンドC1を引き抜き、コマンド発行部253へ出力する。   During the period, the command monitoring unit 254 monitors the arrival of a new command to the command queue unit 251, and notifies the command extraction unit 252 and the data control unit 255 when the arrival of the read command C1 is found. Upon receiving the notification from the command monitoring unit 254, the command extracting unit 255 extracts the read command C1 from the command queue unit 251 and outputs it to the command issuing unit 253.

データ制御部255は、コマンド監視部254の通知を確認し、新たなコマンドとしてリードコマンドC1があり、かつそのリードコマンドC1がNANDメモリ11Aへ投入可能であれば、期間OUT0におけるデータの引き抜きを中断する。コマンド発行部253は、データ制御部255によるデータの引き抜きが中断したことを確認すると、リードコマンドC1をNANDメモリ11Aへ発行する。その後、データ制御部255は、コマンド発行部253によるリードコマンドC1の発行が終了したことを確認し、NANDメモリ11A内のバッファ11A2からデータの引き抜きを再開する。   The data control unit 255 confirms the notification of the command monitoring unit 254, and if there is a read command C1 as a new command and the read command C1 can be input to the NAND memory 11A, the data control unit 255 interrupts the data extraction in the period OUT0. To do. When the command issuing unit 253 confirms that the data extraction by the data control unit 255 is interrupted, the command issuing unit 253 issues a read command C1 to the NAND memory 11A. Thereafter, the data control unit 255 confirms that the issue of the read command C1 by the command issuing unit 253 is completed, and resumes the extraction of data from the buffer 11A2 in the NAND memory 11A.

すなわち、NANDメモリ11Aでは、期間OUT0におけるデータの引き抜きが中断され、期間C1にて、NANDメモリ11AはリードコマンドC1を受け取る。リードコマンドC1の受け取りが終了すると、NANDメモリ11Aでは、期間OUT0におけるデータの引き抜きが再開される。NANDメモリ11Aは、リードコマンドC1を受け取った後、期間BUSY1にて、NANDメモリ11A内でメモリ回路11A1からバッファ11A2にデータを取り出す。   That is, in the NAND memory 11A, the extraction of data in the period OUT0 is interrupted, and in the period C1, the NAND memory 11A receives the read command C1. When the reception of the read command C1 is completed, the extraction of data in the period OUT0 is resumed in the NAND memory 11A. After receiving the read command C1, the NAND memory 11A takes out data from the memory circuit 11A1 to the buffer 11A2 in the NAND memory 11A in the period BUSY1.

ここで、NANDメモリ11Aにおいて、期間OUT0におけるデータの引き抜きと、期間BUSY1におけるデータの取り出しとが並行して実行される。これにより、リードコマンドC0による、NANDメモリ11AからNANDコントローラ25へのデータの引き抜きと、リードコマンドC1による、NANDメモリ11A内でのメモリ回路11A1からバッファ11A2へのデータ取り出しとを短期間で行うことができる。すなわち、NANDメモリからNANDコントローラへのデータの引き抜きに要する時間を短縮することができる。この結果、リードにおけるNANDメモリの使用効率を高めることが可能である。   Here, in the NAND memory 11A, the data extraction in the period OUT0 and the data extraction in the period BUSY1 are executed in parallel. Thus, the data extraction from the NAND memory 11A to the NAND controller 25 by the read command C0 and the data extraction from the memory circuit 11A1 to the buffer 11A2 in the NAND memory 11A by the read command C1 are performed in a short period. Can do. That is, it is possible to reduce the time required for extracting data from the NAND memory to the NAND controller. As a result, it is possible to increase the use efficiency of the NAND memory for reading.

次に、図5を参照して、NANDメモリ11AへリードコマンドC0を投入し、NANDメモリ11BへイレーズコマンドC2を投入する例を説明する。   Next, an example in which a read command C0 is input to the NAND memory 11A and an erase command C2 is input to the NAND memory 11B will be described with reference to FIG.

図5は、第1実施形態のリード及びイレーズにおける不揮発性半導体メモリの動作を示すタイムダイアグラムである。ここでは、リード及びイレーズにおけるNANDメモリ11A,11Bの動作制御を示す。   FIG. 5 is a time diagram showing the operation of the nonvolatile semiconductor memory in reading and erasing according to the first embodiment. Here, operation control of the NAND memories 11A and 11B in reading and erasing is shown.

まず、コマンド発行部253は、デコーダ256を介してNANDメモリ11AにリードコマンドC0を発行する。期間C0にて、NANDメモリ11AはリードコマンドC0を受け取る。続いて、NANDメモリ11Aは、期間BUSY0にて、NANDメモリ11A内においてメモリ回路11A1からバッファ11A2にデータを取り出す。次に、期間OUT0にて、NANDメモリ11A内のバッファ11A2のデータがデータ制御部255によって引き抜かれる。   First, the command issuing unit 253 issues a read command C0 to the NAND memory 11A via the decoder 256. In the period C0, the NAND memory 11A receives the read command C0. Subsequently, the NAND memory 11A takes out data from the memory circuit 11A1 to the buffer 11A2 in the NAND memory 11A in the period BUSY0. Next, in the period OUT0, the data in the buffer 11A2 in the NAND memory 11A is extracted by the data control unit 255.

上記期間中、コマンド監視部254は、コマンドキュー部251への新たなコマンドの到着を監視し、イレーズコマンドC2の到着を発見すると、コマンド引き抜き部252及びデータ制御部255へ通知する。コマンド引き抜き部255は、コマンド監視部254の通知を受け取ると、コマンドキュー部251からイレーズコマンドC2を引き抜き、コマンド発行部253へ出力する。   During the period, the command monitoring unit 254 monitors the arrival of a new command to the command queue unit 251 and notifies the command extraction unit 252 and the data control unit 255 when the arrival of the erase command C2 is found. When receiving the notification from the command monitoring unit 254, the command extraction unit 255 extracts the erase command C 2 from the command queue unit 251 and outputs it to the command issuing unit 253.

データ制御部255は、コマンド監視部254の通知を確認し、新たなコマンドとしてイレーズコマンドC2があり、かつそのイレーズコマンドC2がNANDメモリ11Bへ投入可能であれば、期間OUT0におけるデータの引き抜きを中断する。コマンド発行部253は、データ制御部255によるデータの引き抜きが中断したことを確認すると、イレーズコマンドC2をNANDメモリ11Bへ発行する。その後、データ制御部255は、コマンド発行部253によるイレーズコマンドC2の発行が終了したことを確認し、NANDメモリ11A内のバッファ11A2からデータの引き抜きを再開する。   The data control unit 255 confirms the notification of the command monitoring unit 254. If there is an erase command C2 as a new command and the erase command C2 can be input to the NAND memory 11B, the data control unit 255 interrupts the data extraction in the period OUT0. To do. When the command issuing unit 253 confirms that the data extraction by the data control unit 255 is interrupted, the command issuing unit 253 issues an erase command C2 to the NAND memory 11B. Thereafter, the data control unit 255 confirms that the issue of the erase command C2 by the command issuing unit 253 is completed, and resumes the extraction of data from the buffer 11A2 in the NAND memory 11A.

すなわち、NANDメモリ11Aでは、期間OUT0におけるデータの引き抜きが中断され、期間C2にて、NANDメモリ11BはイレーズコマンドC2を受け取る。イレーズコマンドC2の受け取りが終了すると、NANDメモリ11Aでは、期間OUT0にてデータの引き抜きが再開される。NANDメモリ11Bでは、イレーズコマンドC2を受け取った後、期間ERASE2にて、メモリ回路11B1内のブロックからデータが消去される。   That is, in the NAND memory 11A, the data extraction in the period OUT0 is interrupted, and in the period C2, the NAND memory 11B receives the erase command C2. When the reception of the erase command C2 ends, the NAND memory 11A resumes data extraction in the period OUT0. In the NAND memory 11B, after receiving the erase command C2, data is erased from the block in the memory circuit 11B1 in the period ERASE2.

ここで、NANDメモリ11Aでの期間OUT0におけるデータの引き抜きと、NANDメモリ11Bでの期間ERASE2におけるデータの消去とが並行して実行される。これにより、リードコマンドC0による、NANDメモリ11AからNANDコントローラ25へのデータの引き抜きと、イレーズコマンドC2による、NANDメモリ11B内でのデータの消去を短期間で行うことができる。すなわち、複数のNANDメモリに対するデータの引き抜きと消去に要する時間を短縮することができる。この結果、リード及びイレーズにおける、複数のNANDメモリの使用効率を高めることが可能である。   Here, the data extraction in the period OUT0 in the NAND memory 11A and the data erasure in the period ERASE2 in the NAND memory 11B are executed in parallel. As a result, the extraction of data from the NAND memory 11A to the NAND controller 25 by the read command C0 and the erasure of data in the NAND memory 11B by the erase command C2 can be performed in a short period of time. That is, it is possible to reduce the time required for extracting and erasing data from a plurality of NAND memories. As a result, it is possible to increase the use efficiency of the plurality of NAND memories in reading and erasing.

次に、図6を参照して、NANDメモリ11AへライトコマンドC3を投入し、NANDメモリ11BへリードコマンドC4を投入する例を説明する。   Next, an example in which a write command C3 is input to the NAND memory 11A and a read command C4 is input to the NAND memory 11B will be described with reference to FIG.

図6は、第1実施形態のライト及びリードにおける不揮発性半導体メモリの動作を示すタイムダイアグラムである。ここでは、ライト及びリードにおけるNANDメモリ11A,11Bの動作制御を示す。   FIG. 6 is a time diagram illustrating the operation of the nonvolatile semiconductor memory in writing and reading according to the first embodiment. Here, operation control of the NAND memories 11A and 11B in writing and reading is shown.

まず、コマンド発行部253は、デコーダ256を介してNANDメモリ11AにライトコマンドC3を発行する。期間C3にて、NANDメモリ11AはライトコマンドC3を受け取る。続いて、NANDメモリ11Aは、期間IN3にて、データ制御部255からNANDメモリ11A内のバッファ11A2にデータを受け取る。次に、NANDメモリ11Aは、期間PROGRAM3にて、NANDメモリ11A内でバッファ11A2からメモリ回路11A1にデータを書き込む。   First, the command issuing unit 253 issues a write command C3 to the NAND memory 11A via the decoder 256. In the period C3, the NAND memory 11A receives the write command C3. Subsequently, the NAND memory 11A receives data from the data control unit 255 to the buffer 11A2 in the NAND memory 11A in the period IN3. Next, the NAND memory 11A writes data from the buffer 11A2 to the memory circuit 11A1 in the NAND memory 11A in the period PROGRAM3.

上記期間中、コマンド監視部254は、コマンドキュー部251への新たなコマンドの到着を監視し、リードコマンドC4の到着を発見すると、コマンド引き抜き部252及びデータ制御部255へ通知する。コマンド引き抜き部255は、コマンド監視部254の通知を受け取ると、コマンドキュー部251からリードコマンドC4を引き抜き、コマンド発行部253へ出力する。   During the above period, the command monitoring unit 254 monitors the arrival of a new command to the command queue unit 251, and notifies the command extraction unit 252 and the data control unit 255 when the arrival of the read command C4 is found. Upon receiving the notification from the command monitoring unit 254, the command extraction unit 255 extracts the read command C4 from the command queue unit 251 and outputs it to the command issuing unit 253.

データ制御部255は、コマンド監視部254の通知を確認し、新たなコマンドとしてリードコマンドC4があり、かつそのリードコマンドC4がNANDメモリ11Bへ投入可能であれば、期間IN3におけるデータの転送を中断する。コマンド発行部253は、データ制御部255によるデータの転送が中断したことを確認すると、リードコマンドC4をNANDメモリ11Bへ発行する。その後、データ制御部255は、コマンド発行部253によるリードコマンドC4の発行が終了したことを確認し、NANDメモリ11A内のバッファ11A2へデータの転送を再開する。   The data control unit 255 confirms the notification of the command monitoring unit 254, and interrupts the data transfer in the period IN3 if there is a read command C4 as a new command and the read command C4 can be input to the NAND memory 11B. To do. When confirming that the data transfer by the data control unit 255 is interrupted, the command issuing unit 253 issues a read command C4 to the NAND memory 11B. Thereafter, the data control unit 255 confirms that the issue of the read command C4 by the command issuing unit 253 is completed, and resumes the data transfer to the buffer 11A2 in the NAND memory 11A.

すなわち、NANDメモリ11Aでは、期間IN3におけるデータの転送が中断され、期間C4にて、NANDメモリ11BはリードコマンドC4を受け取る。リードコマンドC4の受け取りが終了すると、NANDメモリ11Aでは、期間IN3におけるデータの転送が再開される。NANDメモリ11Bは、リードコマンドC4を受け取った後、期間BUSY4にて、NANDメモリ11B内でメモリ回路11B1からバッファ11B2にデータを取り出す。   That is, in the NAND memory 11A, the data transfer in the period IN3 is interrupted, and in the period C4, the NAND memory 11B receives the read command C4. When the reception of the read command C4 is completed, the data transfer in the period IN3 is resumed in the NAND memory 11A. After receiving the read command C4, the NAND memory 11B takes out data from the memory circuit 11B1 to the buffer 11B2 in the NAND memory 11B in the period BUSY4.

ここで、NANDメモリ11Aでの期間IN3におけるデータの転送と、NANDメモリ11Bでの期間BUSY4におけるデータの取り出しとが並行して実行される。これにより、ライトコマンドC3による、NANDコントローラ25からNANDメモリ11Aへのデータ転送と、リードコマンドC4による、NANDメモリ11B内でのメモリ回路11B1からバッファ11B2へのデータ取り出しとを短期間で行うことができる。すなわち、複数のNANDメモリに対するデータのライトとリードに要する時間を短縮することができる。この結果、ライト及びリードにおける、複数のNANDメモリの使用効率を高めることが可能である。   Here, the data transfer in the period IN3 in the NAND memory 11A and the data extraction in the period BUSY4 in the NAND memory 11B are executed in parallel. Thus, data transfer from the NAND controller 25 to the NAND memory 11A by the write command C3 and data extraction from the memory circuit 11B1 to the buffer 11B2 in the NAND memory 11B by the read command C4 can be performed in a short period of time. it can. That is, it is possible to reduce the time required for writing and reading data with respect to a plurality of NAND memories. As a result, it is possible to increase the use efficiency of the plurality of NAND memories in writing and reading.

また、図3,4では、NANDメモリ11A内のバッファのデータがデータ制御部255によって引き抜かれている期間に、コマンドC1がホスト100から入力された場合を説明したが、NANDメモリ11Aの動作中で、その動作を中断せずにコマンドを入力できる期間に、ホスト100がコマンドC1を入力するようにしてもよい。例えば、NANDメモリ11A内でメモリ回路11A1からバッファ11A2にデータを取り出している期間に、ホスト100がコマンドC1をコマンドキュー部251に投入するようにしてもよい。   3 and 4, the case where the command C1 is input from the host 100 during the period when the data in the buffer in the NAND memory 11A is extracted by the data control unit 255 has been described, but the NAND memory 11A is operating. Thus, the host 100 may input the command C1 during a period in which the command can be input without interrupting the operation. For example, the host 100 may input the command C1 to the command queue unit 251 during a period in which data is extracted from the memory circuit 11A1 to the buffer 11A2 in the NAND memory 11A.

図7は、第1実施形態のリードにおける不揮発性半導体メモリの他の動作を示すタイムダイアグラムである。ここでは、リードにおけるNANDメモリ11A,11Bの動作制御を示す。   FIG. 7 is a time diagram showing another operation of the nonvolatile semiconductor memory in the read of the first embodiment. Here, operation control of the NAND memories 11A and 11B in reading is shown.

まず、コマンド発行部253は、デコーダ256を介してNANDメモリ11AにリードコマンドC0を発行する。期間C0にて、NANDメモリ11AはリードコマンドC0を受け取る。続いて、NANDメモリ11Aは、期間BUSY0にて、NANDメモリ11A内においてメモリ回路11A1からバッファ11A2にデータを取り出す。次に、期間OUT0にて、NANDメモリ11A内のバッファ11A2のデータがデータ制御部255によって引き抜かれる。   First, the command issuing unit 253 issues a read command C0 to the NAND memory 11A via the decoder 256. In the period C0, the NAND memory 11A receives the read command C0. Subsequently, the NAND memory 11A extracts data from the memory circuit 11A1 to the buffer 11A2 in the NAND memory 11A in the period BUSY0. Next, in the period OUT0, the data in the buffer 11A2 in the NAND memory 11A is extracted by the data control unit 255.

上述したNANDメモリ11Aの動作期間中において、ホスト100は期間BUSY0中にリードコマンドC1を、ホストインタフェース13を介してコマンドキュー部251へ投入する。コマンド監視部252はコマンドキュー部251への新たなコマンドの到着を監視し、リードコマンドC1の到着を発見すると、コマンド引き抜き部252及びデータ制御部255へ通知する。コマンド引き抜き部252は、コマンド監視部254の通知を受け取ると、リードコマンドC1を引き抜き、コマンド発行部253へ出力する。   During the operation period of the NAND memory 11A described above, the host 100 inputs the read command C1 to the command queue unit 251 via the host interface 13 during the period BUSY0. The command monitoring unit 252 monitors the arrival of a new command to the command queue unit 251 and notifies the command extraction unit 252 and the data control unit 255 when the arrival of the read command C1 is found. Upon receiving the notification from the command monitoring unit 254, the command extraction unit 252 extracts the read command C1 and outputs it to the command issuing unit 253.

上述したように、期間BUSY0中に、ホスト100からリードコマンドC1がコマンドキュー部251へ入力されるため、コマンド発行部253は受け取ったリードコマンドC1をそのままNANDメモリ11Bへ発行する。その後、データ制御部255は、NANDメモリ11A内のバッファ11A2からデータの引き抜きを開始する。一方、NANDメモリ11Bは、リードコマンドC1を受け取った後、期間BUSY1にて、メモリ回路11B1からバッファ11B2にデータを取り出す。その後、データ制御部255は、NANDメモリ11B内のバッファ11B2からデータの引き抜きを開始する。   As described above, since the read command C1 is input from the host 100 to the command queue unit 251 during the period BUSY0, the command issuing unit 253 issues the received read command C1 to the NAND memory 11B as it is. Thereafter, the data control unit 255 starts extracting data from the buffer 11A2 in the NAND memory 11A. On the other hand, after receiving the read command C1, the NAND memory 11B takes out data from the memory circuit 11B1 to the buffer 11B2 in the period BUSY1. Thereafter, the data control unit 255 starts extracting data from the buffer 11B2 in the NAND memory 11B.

すなわち、NANDメモリ11Aは、コマンドC0を受け取った後、期間BUSY0にて、メモリ回路11A1からバッファ11A2にデータを取り出す。この期間BUSY0中に、NANDメモリ11Bは、ホスト100から入力されたコマンドC1を受け取る。このように、ホスト100が期間BUSY0中にコマンドC1を投入することにより、NANDメモリ11A,11Bにおいて、期間BUSY0の動作と期間BUSY1の動作とが並行して実行され、さらに、期間OUT0の動作と期間BUSY1の動作とが並行して実行される。   That is, after receiving the command C0, the NAND memory 11A takes out data from the memory circuit 11A1 to the buffer 11A2 in the period BUSY0. During this period BUSY0, the NAND memory 11B receives the command C1 input from the host 100. As described above, when the host 100 inputs the command C1 during the period BUSY0, the operations of the period BUSY0 and the operation of the period BUSY1 are executed in parallel in the NAND memories 11A and 11B. The operation in the period BUSY1 is executed in parallel.

これにより、リードコマンドC0とC1による、NANDメモリ11A,11BからNANDコントローラ25へのデータの引き抜きを短期間で行うことができる。すなわち、複数のNANDメモリからNANDコントローラへのデータの引き抜きに要する時間を短縮することができる。この結果、リードにおける複数のNANDメモリの使用効率を高めることが可能である。   As a result, the data extraction from the NAND memories 11A and 11B to the NAND controller 25 by the read commands C0 and C1 can be performed in a short period of time. That is, the time required for extracting data from a plurality of NAND memories to the NAND controller can be shortened. As a result, it is possible to increase the use efficiency of a plurality of NAND memories in reading.

従来のNANDコントローラは、用意されたデータの引き抜き中に、新規コマンドが投入されたかのチェックを行わないため、新規コマンドが投入された場合、データ引き抜き後に新規コマンドを処理するようになっている。このため、本来、データの引き抜きと並行してNANDメモリに対して処理を進められるような場合も、並行処理が実現せず性能の低下を招いていた。   The conventional NAND controller does not check whether a new command has been input while extracting the prepared data. Therefore, when a new command is input, the new command is processed after the data is extracted. For this reason, originally, even in the case where the processing can be performed on the NAND memory in parallel with the extraction of data, the parallel processing is not realized and the performance is deteriorated.

例えば、2つのNANDチップ、chipAとchipBを用いて並行してリード処理を進める場合、chipAがBusy中にchipBのコマンドが投入可能な時期が訪れたとき、chipAとchipBのリード処理を並行して進めることができる。一方、chipAからデータ引き抜き中にchipBのコマンドが投入可能な時期が訪れたとき、データ引き抜き中はコマンドが投入できないため、コントローラはデータ引き抜きを待ってコマンド投入を行う必要がある。このため、chipBの使用効率がその分落ちてしまう。   For example, in the case where read processing is performed in parallel using two NAND chips, chipA and chipB, when it is time for chipB to input a command of chipB while BusA is busy, read processing of chipA and chipB is performed in parallel. Can proceed. On the other hand, when it is time to input a command of chipB while extracting data from chipA, the command cannot be input during data extraction. Therefore, the controller needs to input the command after waiting for data extraction. For this reason, the usage efficiency of chipB falls by that much.

上述した第1実施形態によれば、期間OUT0においてNANDメモリ11Aからのデータの引き抜きが中断され、NANDメモリ11BにリードコマンドC1が投入される。リードコマンドC1の投入が終了すると、期間OUT0におけるNANDメモリ11Aからのデータの引き抜きが再開される。NANDメモリ11Bは、リードコマンドC1を受け取った後、期間BUSY1にて、NANDメモリ11B内でメモリ回路からバッファにデータを取り出す。   According to the first embodiment described above, the extraction of data from the NAND memory 11A is interrupted in the period OUT0, and the read command C1 is input to the NAND memory 11B. When the input of the read command C1 is completed, the extraction of data from the NAND memory 11A in the period OUT0 is resumed. After receiving the read command C1, the NAND memory 11B takes out data from the memory circuit to the buffer in the NAND memory 11B in the period BUSY1.

ここで、NANDメモリ11Aでの期間OUT0におけるデータの引き抜きと、NANDメモリ11Bでの期間BUSY1におけるデータの取り出しとが並行して実行される。このため、リードコマンドC0とC1による、NANDメモリ11A,11BからNANDコントローラ25へのデータの引き抜きに要する時間を短縮することができる。   Here, the extraction of data in the period OUT0 in the NAND memory 11A and the extraction of data in the period BUSY1 in the NAND memory 11B are executed in parallel. For this reason, it is possible to reduce the time required for extracting data from the NAND memories 11A and 11B to the NAND controller 25 by the read commands C0 and C1.

以上説明したように第1実施形態によれば、不揮発性メモリに対するリード、ライト、及びイレーズの動作性能を高めることができ、SSDの使用効率を向上させることができる。   As described above, according to the first embodiment, it is possible to improve the operation performance of reading, writing, and erasing with respect to the nonvolatile memory, and it is possible to improve the usage efficiency of the SSD.

[第2実施形態]
第2実施形態の半導体記憶装置30について説明する。半導体記憶装置30は例えばSSD30である。図8は、第2実施形態の半導体記憶装置の30構成を示すブロック図である。
[Second Embodiment]
A semiconductor memory device 30 according to the second embodiment will be described. The semiconductor memory device 30 is, for example, an SSD 30. FIG. 8 is a block diagram showing the configuration of the semiconductor memory device according to the second embodiment.

図示するように、SSD30は不揮発性半導体メモリ11とSSDコントローラ32を備える。SSDコントローラ32は、リードコマンドアドレス取得部33、ライトコマンドアドレス取得部34、コマンド発行部35、リードコマンド処理部36、ライトコマンド処理部37、コマンドキュー部38、NANDコントローラ39、及びタイマー40(計測部)を備える。不揮発性半導体メモリ11は、例えば、複数のNAND型フラッシュメモリ(以下、NANDメモリと記す)11A,11B,11Cを含む。   As illustrated, the SSD 30 includes a nonvolatile semiconductor memory 11 and an SSD controller 32. The SSD controller 32 includes a read command address acquisition unit 33, a write command address acquisition unit 34, a command issue unit 35, a read command processing unit 36, a write command processing unit 37, a command queue unit 38, a NAND controller 39, and a timer 40 (measurement). Part). The nonvolatile semiconductor memory 11 includes, for example, a plurality of NAND flash memories (hereinafter referred to as NAND memories) 11A, 11B, and 11C.

リードコマンドアドレス取得部33は、ホストから入力された信号に基づいてアドレスを取得する。リードコマンドアドレス取得部33にてアドレスが取得されると、リードコマンドは、コマンド発行部35に入力され、さらにコマンド発行部35からリードコマンド処理部36へ発行される。   The read command address acquisition unit 33 acquires an address based on a signal input from the host. When the address is acquired by the read command address acquisition unit 33, the read command is input to the command issuing unit 35 and further issued from the command issuing unit 35 to the read command processing unit 36.

次に、リードコマンドはリードコマンド処理部36にて処理され、コマンドキュー部38に出力される。コマンドキュー部38は、受け取ったリードコマンドを記憶し管理する。さらに、リードコマンドは、コマンドキュー部38からNANDコントローラ39に出力される。   Next, the read command is processed by the read command processing unit 36 and output to the command queue unit 38. The command queue unit 38 stores and manages the received read command. Further, the read command is output from the command queue unit 38 to the NAND controller 39.

同様に、ライトコマンドアドレス取得部34は、ホストから入力された信号に基づいてアドレスを取得する。ライトコマンドアドレス取得部34にてアドレスが取得されると、ライトコマンドは、コマンド発行部35に入力され、さらにコマンド発行部35からライトコマンド処理部37へ発行される。   Similarly, the write command address acquisition unit 34 acquires an address based on a signal input from the host. When the address is acquired by the write command address acquisition unit 34, the write command is input to the command issuing unit 35 and further issued from the command issuing unit 35 to the write command processing unit 37.

次に、ライトコマンドはライトコマンド処理部37にて処理され、コマンドキュー部38に出力される。コマンドキュー部38は、受け取ったライトコマンドを記憶し管理する。さらに、ライトコマンドは、コマンドキュー部38からNANDコントローラ39に出力される。   Next, the write command is processed by the write command processing unit 37 and output to the command queue unit 38. The command queue unit 38 stores and manages the received write command. Further, the write command is output from the command queue unit 38 to the NAND controller 39.

NANDコントローラ39は、コマンドキュー部38から受け取ったコマンドをNANDメモリ11A,11B,11Cのいずれかに発行する。NANDコントローラ39は、また、発行情報として、発行したコマンドと発行先のNANDメモリ情報をタイマー(計測部)40に出力する。   The NAND controller 39 issues the command received from the command queue unit 38 to any of the NAND memories 11A, 11B, and 11C. The NAND controller 39 also outputs the issued command and the issued NAND memory information to the timer (measurement unit) 40 as issue information.

タイマー40は、発行情報に基づいて、終了するコマンドとそのNANDメモリを含む先行終了時間情報をコマンド発行部35へ出力する。コマンド発行部35は、先行終了時間情報に従って、コマンドを発行し、コマンド処理部によるコマンド処理を進める。このように、コマンドの終了時間を求め、終了前に次のコマンドの処理を進めることにより、前記コマンドが終了したとき、直ぐに、NANDコントローラ39から次のコマンドがNANDメモリに投入できるようにする。   Based on the issue information, the timer 40 outputs the command to be ended and the preceding end time information including the NAND memory to the command issuing unit 35. The command issuing unit 35 issues a command according to the preceding end time information, and advances the command processing by the command processing unit. Thus, the end time of the command is obtained, and the processing of the next command is advanced before the end, so that the next command can be input from the NAND controller 39 to the NAND memory as soon as the command ends.

図9は、第2実施形態のSSDコントローラ32におけるコマンドの流れとバッファを示すブロック図である。   FIG. 9 is a block diagram illustrating a command flow and a buffer in the SSD controller 32 of the second embodiment.

リードコマンドアドレス取得部33にてアドレスが取得されると、リードコマンドR-Comがコマンド発行部35から発行され、リードコマンド処理部36のバッファ36Aに記憶される。リードコマンド処理部36は、リードコマンドを記憶するためのバッファ36Aを1段有している。   When the address is acquired by the read command address acquisition unit 33, a read command R-Com is issued from the command issuing unit 35 and stored in the buffer 36A of the read command processing unit 36. The read command processing unit 36 has one stage of a buffer 36A for storing a read command.

次に、リードコマンドR−Comは、バッファ36Aからコマンドキュー部38を介してNANDコントローラ39へ出力され、NANDコントローラ39のバッファ39Aに記憶される。その後、リードコマンドR−Comは、例えばNANDメモリ11Aへ投入される。   Next, the read command R-Com is output from the buffer 36A to the NAND controller 39 via the command queue unit 38 and stored in the buffer 39A of the NAND controller 39. Thereafter, the read command R-Com is input to the NAND memory 11A, for example.

同様に、ライトコマンドアドレス取得部34にてアドレスが取得されると、ライトコマンドW-Comがコマンド発行部35から出力され、ライトコマンド処理部37のバッファ37Aに記憶される。これと同時に、ホストからライトデータがライトコマンド処理部37に入力され、ライトコマンド処理部37のバッファ37Aに記憶される。ライトコマンド処理部37は、ライトコマンドR−Com及びライトデータを記憶するためのバッファ37Aを1段有している。   Similarly, when the address is acquired by the write command address acquisition unit 34, the write command W-Com is output from the command issuing unit 35 and stored in the buffer 37A of the write command processing unit 37. At the same time, write data is input from the host to the write command processing unit 37 and stored in the buffer 37 A of the write command processing unit 37. The write command processing unit 37 has one stage of a buffer 37A for storing a write command R-Com and write data.

次に、ライトコマンドR−Comは、バッファ37Aからコマンドキュー部38を介してNANDコントローラ39へ出力され、NANDコントローラ39のバッファ39Aに記憶される。その後、ライトコマンドR−Comは、例えばNANDメモリ11Aへ投入される。これと共に、ライトデータもNANDメモリ11Aへ出力される。   Next, the write command R-Com is output from the buffer 37A to the NAND controller 39 via the command queue unit 38 and stored in the buffer 39A of the NAND controller 39. Thereafter, the write command R-Com is input to the NAND memory 11A, for example. At the same time, write data is also output to the NAND memory 11A.

ここで、アドレス取得部33,34におけるアドレス取得からNANDメモリ11Aへコマンドを発行できるようになるまで、リードコマンド処理とライトコマンド処理にそれぞれ時間t1、t2が掛かるものとする。すなわち、アドレス取得後からNANDメモリ11Aへリードコマンドを投入できるまでの準備時間をt1とし、アドレス取得後からNANDメモリ11Aへライトコマンドを投入できるまでの準備時間をt2とする。さらにここでは、t1<t2とする。   Here, it is assumed that time t1 and time t2 are required for the read command process and the write command process, respectively, from the address acquisition by the address acquisition units 33 and 34 until the command can be issued to the NAND memory 11A. That is, the preparation time from the acquisition of the address until the read command can be input to the NAND memory 11A is t1, and the preparation time from the acquisition of the address until the write command can be input to the NAND memory 11A is t2. Further, here, t1 <t2.

次に、第2実施形態の半導体記憶装置30の動作について説明する。   Next, the operation of the semiconductor memory device 30 of the second embodiment will be described.

図10は、第2実施形態のSSDコントローラ32におけるタイマー40の構成を示すブロック図である。   FIG. 10 is a block diagram illustrating a configuration of the timer 40 in the SSD controller 32 according to the second embodiment.

図10に示すように、タイマー40は、対応テーブル401、コマンド毎の準備時間402、及びカウンタ403を備える。   As shown in FIG. 10, the timer 40 includes a correspondence table 401, a preparation time 402 for each command, and a counter 403.

対応テーブル401は、コマンド(リード、ライト、イレーズ等)と処理時間との対応を示す。対応テーブル401内の処理時間は、リードコマンドでは時間X、ライトコマンドでは時間Y、イレーズでは時間Zである。対応テーブル401には、設定インタフェースにより、コマンド種別と処理時間が予め設定されている。   The correspondence table 401 shows correspondence between commands (read, write, erase, etc.) and processing time. The processing time in the correspondence table 401 is time X for a read command, time Y for a write command, and time Z for erase. In the correspondence table 401, a command type and a processing time are set in advance by a setting interface.

コマンド毎の準備時間402は、上述したように、リードコマンドでは時間t1、ライトコマンドでは時間t2であり、イレーズでは時間t3とする。   As described above, the preparation time 402 for each command is time t1 for a read command, time t2 for a write command, and time t3 for erase.

カウンタ403は、対応テーブル401と準備時間402から算出した待機時間をカウントして、先行終了情報として終了を迎えるコマンドとNANDメモリ情報(例えば、NANDメモリチップの番号等)を出力する。   The counter 403 counts the standby time calculated from the correspondence table 401 and the preparation time 402, and outputs a command that reaches the end and the NAND memory information (for example, the number of the NAND memory chip) as the preceding end information.

図11は、第2実施形態のSSDコントローラ32におけるコマンド発行部35の構成を示すブロック図である。   FIG. 11 is a block diagram illustrating a configuration of the command issuing unit 35 in the SSD controller 32 of the second embodiment.

図11に示すように、コマンド発行部35は、チップステータステーブル351、コマンド受信テーブル352、及びスケジューラ353を備える。   As shown in FIG. 11, the command issuing unit 35 includes a chip status table 351, a command reception table 352, and a scheduler 353.

チップステータステーブル351は、NANDメモリ11A,11B,11Cと状態との対応を示す。すなわち、NANDメモリ毎にコマンドが投入可能か投入不可かを示すものである。   The chip status table 351 shows the correspondence between the NAND memories 11A, 11B, and 11C and the states. That is, it indicates whether or not a command can be input for each NAND memory.

コマンド受信テーブル352は、アドレス取得部33,34から出力されるコマンドとその対象のNANDメモリを示すものである。スケジューラ353は、チップステータステーブル351とコマンド受信テーブル352から実行可能なコマンドを求め、そのコマンドをコマンド処理部36,37へ発行する。   The command reception table 352 shows the commands output from the address acquisition units 33 and 34 and the target NAND memory. The scheduler 353 obtains an executable command from the chip status table 351 and the command reception table 352 and issues the command to the command processing units 36 and 37.

第2実施形態の半導体記憶装置30の動作は以下のようになる。   The operation of the semiconductor memory device 30 of the second embodiment is as follows.

まず、NANDコントローラ39は、コマンドキュー部38から受け取ったコマンドをNANDメモリ11Aに発行する。これと共に、NANDコントローラ39は、発行したコマンドと発行先のNANDメモリ情報を発行情報として、タイマー40に出力する。   First, the NAND controller 39 issues the command received from the command queue unit 38 to the NAND memory 11A. At the same time, the NAND controller 39 outputs the issued command and the issued NAND memory information to the timer 40 as issue information.

タイマー40は、対応テーブル401とコマンド毎の準備時間402を参照して、前記先行情報から待機時間を算出し、カウンタ403を起動する。タイマー40にて算出される待機時間は、コマンドの前記処理時間から準備時間を減算することによって求められる。例えば、リードコマンドの場合、X−t1であり、ライトコマンドの場合、Y−t2、イレーズコマンドの場合、Z−t3である。カウンタ403は、待機時間を計時して待機時間が経過したら、終了を迎えるコマンドとNANDメモリ情報をコマンド発行部35へ出力する。   The timer 40 refers to the correspondence table 401 and the preparation time 402 for each command, calculates the waiting time from the preceding information, and starts the counter 403. The waiting time calculated by the timer 40 is obtained by subtracting the preparation time from the command processing time. For example, X-t1 for a read command, Y-t2 for a write command, and Z-t3 for an erase command. The counter 403 counts the waiting time, and when the waiting time elapses, the counter 403 outputs a command for ending and NAND memory information to the command issuing unit 35.

コマンド発行部35は、前記終了を迎えるコマンドとNANDメモリ情報に従って、チップステータステーブル351内の情報を更新する。スケジューラ353は、チップステータステーブル351とコマンド受信テーブル352を参照し、適切なコマンドとNANDメモリ、すなわち実行可能なコマンドとその対象のNANDメモリを選択する。さらに、スケジューラ353は、コマンド種別に応じて、選択したコマンドをリードコマンド処理部36あるいはライトコマンド処理部37へ発行する。   The command issuing unit 35 updates the information in the chip status table 351 in accordance with the command ending and the NAND memory information. The scheduler 353 refers to the chip status table 351 and the command reception table 352, and selects an appropriate command and NAND memory, that is, an executable command and a target NAND memory. Furthermore, the scheduler 353 issues the selected command to the read command processing unit 36 or the write command processing unit 37 according to the command type.

従来のSSDコントローラは、NANDメモリがいつ使用可能になるか、すなわち、NANDメモリにおけるコマンドがいつ終了するかが分からないため、動作速度を低下させないために、コマンドを記憶するための少なくとも2段のバッファを配置していた。初段のバッファで即座のコマンド要求に応じつつ、2段目のバッファを用いて次のコマンド要求に備えておく必要があった。第2実施形態の半導体記憶装置30では、不揮発性メモリにおけるコマンドの終了を推定し、コマンド発行部へ先行してコマンドの終了を通知することにより、2段必要だったコマンドバッファを1段に減らすことが可能となる。   The conventional SSD controller does not know when the NAND memory becomes usable, that is, when the command in the NAND memory is finished, so that it does not slow down the operation speed, so that at least two stages for storing the command. A buffer was placed. In response to an immediate command request in the first-stage buffer, it is necessary to prepare for the next command request using the second-stage buffer. In the semiconductor memory device 30 according to the second embodiment, the command end in the nonvolatile memory is estimated, and the command issuance is notified to the command issuing unit in advance, thereby reducing the command buffer that is required for two steps to one. It becomes possible.

上述した第2実施形態では、NANDメモリにおけるコマンドの終了を算出し、事前にコマンド発行部にコマンドの終了を通達することができる。これにより、コマンド発行部がコマンド要求を受信してからコマンドの準備動作に入っても間に合うため、2段目のバッファにコマンドを記憶しておき、次の要求に備えておく必要がない。これにより、2段必要だったコマンドバッファとデータバッファ(ライトデータを記憶するバッファ)を1段に減らすことができる。また、設定インタフェースによって対応テーブル401を書き換えることにより、コマンド毎の処理時間を変更することもできる。   In the second embodiment described above, the end of the command in the NAND memory can be calculated, and the end of the command can be notified to the command issuing unit in advance. As a result, even if the command issuing unit receives the command request and enters the command preparation operation, it is not necessary to store the command in the second-stage buffer and prepare for the next request. As a result, the command buffer and data buffer (buffers for storing write data), which required two stages, can be reduced to one stage. In addition, the processing time for each command can be changed by rewriting the correspondence table 401 using the setting interface.

[第3実施形態]
第3実施形態の半導体記憶装置30について説明する。この第3実施形態では、コマンド毎の処理時間、及びNANDメモリの温度あるいは消費電力の情報に応じたオフセットに基づいて、待機時間を算出する例を述べる。
[Third Embodiment]
A semiconductor memory device 30 according to the third embodiment will be described. In the third embodiment, an example will be described in which the standby time is calculated based on the processing time for each command and the offset corresponding to the temperature or power consumption information of the NAND memory.

図12は、第3実施形態のSSDコントローラ32におけるタイマー40の構成を示すブロック図である。   FIG. 12 is a block diagram illustrating a configuration of the timer 40 in the SSD controller 32 according to the third embodiment.

図12に示すように、タイマー40は、対応テーブル404、コマンド毎の準備時間402、及びカウンタ403を備える。対応テーブル404は、コマンド(リード、ライト、イレーズ等)と処理時間、及びコマンドと温度情報あるいは消費電力情報に応じたオフセットとの対応を示す。対応テーブル404には、設定インタフェースにより、コマンド種別、処理時間、温度情報あるいは消費電力情報、及び待機時間オフセットが予め設定されている。   As shown in FIG. 12, the timer 40 includes a correspondence table 404, a preparation time 402 for each command, and a counter 403. The correspondence table 404 shows correspondence between commands (read, write, erase, etc.) and processing time, and commands and offsets according to temperature information or power consumption information. In the correspondence table 404, the command type, processing time, temperature information or power consumption information, and standby time offset are set in advance by the setting interface.

温度情報あるいは消費電力情報に応じたオフセットは、NANDメモリの温度(例えば、25℃、50℃、85℃等)あるいは消費電力によって、コマンド毎に、例えば3つの条件I、J、Kが設定されている。さらに、コマンド毎の条件I、J、Kに、オフセットL、M、N、O、P、Q、R、S、Pがそれぞれ対応付けられている。オフセットは、コマンド発行間隔に加えられる時間であり、対応するコマンドを発行するとき、発行までの待機時間に加えられる。   For the offset corresponding to the temperature information or power consumption information, for example, three conditions I, J, and K are set for each command depending on the temperature of the NAND memory (for example, 25 ° C., 50 ° C., 85 ° C., etc.) or power consumption. ing. Further, offsets L, M, N, O, P, Q, R, S, and P are associated with the conditions I, J, and K for each command, respectively. The offset is the time added to the command issue interval, and is added to the waiting time until issue when issuing the corresponding command.

第3実施形態の半導体記憶装置30の動作は以下のようになる。   The operation of the semiconductor memory device 30 of the third embodiment is as follows.

まず、NANDコントローラ39は、コマンドキュー部38から受け取ったコマンドをNANDメモリ11Aに発行する。これと共に、NANDコントローラ39は、発行情報として、発行したコマンドと発行先のNANDメモリ情報、及び温度情報または消費電力情報をタイマー40に出力する。   First, the NAND controller 39 issues the command received from the command queue unit 38 to the NAND memory 11A. At the same time, the NAND controller 39 outputs the issued command, the issued NAND memory information, and the temperature information or power consumption information to the timer 40 as issue information.

タイマー40は、対応テーブル404に記述されたコマンド毎の処理時間と、温度情報または消費電力情報のオフセットと、コマンド毎の準備時間402を参照して、前記先行情報から待機時間を算出する。詳述すると、タイマー40は、コマンドの処理時間と、温度情報または消費電力情報のオフセットとを加算し、この加算値からコマンドの準備時間を減算する。これにより、待機時間を算出する。さらに、算出した待機時間によりカウンタ403を起動する。カウンタ403は、待機時間を計時して待機時間が経過したら、終了を迎えるコマンドとNANDメモリ情報をコマンド発行部35へ出力する。   The timer 40 calculates the waiting time from the preceding information with reference to the processing time for each command described in the correspondence table 404, the offset of the temperature information or the power consumption information, and the preparation time 402 for each command. More specifically, the timer 40 adds the command processing time and the offset of the temperature information or power consumption information, and subtracts the command preparation time from this added value. Thereby, the waiting time is calculated. Further, the counter 403 is activated based on the calculated waiting time. The counter 403 counts the waiting time, and when the waiting time elapses, the counter 403 outputs a command for ending and NAND memory information to the command issuing unit 35.

コマンド発行部35は、前記終了を迎えるコマンドとNANDメモリ情報に従って、チップステータステーブル351内の情報を更新する。スケジューラ353は、チップステータステーブル351とコマンド受信テーブル352を参照し、適切なコマンドとNANDメモリ、すなわち実行可能なコマンドとその対象のNANDメモリを選択する。さらに、スケジューラ353は、コマンド種別に応じて、選択したコマンドをリードコマンド処理部36あるいはライトコマンド処理部37へ発行する。   The command issuing unit 35 updates the information in the chip status table 351 in accordance with the command ending and the NAND memory information. The scheduler 353 refers to the chip status table 351 and the command reception table 352, and selects an appropriate command and NAND memory, that is, an executable command and a target NAND memory. Furthermore, the scheduler 353 issues the selected command to the read command processing unit 36 or the write command processing unit 37 according to the command type.

第3実施形態では、第2実施形態と同様に、NANDメモリにおけるコマンドの終了を算出し、事前にコマンド発行部にコマンドの終了を通達することができる。これにより、2段必要だったコマンドバッファとデータバッファ(ライトデータを記憶するバッファ)を1段に減らすことができる。   In the third embodiment, as in the second embodiment, the end of the command in the NAND memory can be calculated, and the end of the command can be notified to the command issuing unit in advance. As a result, the command buffer and data buffer (buffers for storing write data), which required two stages, can be reduced to one stage.

さらに、第3実施形態では、温度情報あるいは消費電力情報に応じて、コマンド発行時に待機すべき時間(オフセット)を変更することにより、NANDメモリの動作性能と温度あるいは消費電力とのバランスを取ることが可能となる。また、第3実施形態を用いれば、NANDメモリへ投入するコマンドの間隔を細やかに制御することが可能になるため、状況に応じた動作性能と、消費電力及び温度の制御も可能である。   Furthermore, in the third embodiment, the balance between the operation performance of the NAND memory and the temperature or power consumption is achieved by changing the time (offset) to be waited for when issuing the command according to the temperature information or power consumption information. Is possible. In addition, if the third embodiment is used, it is possible to finely control the interval between commands input to the NAND memory, so that it is possible to control the operation performance, power consumption and temperature according to the situation.

また、設定インタフェースによって対応テーブル404を書き換えることにより、外部環境や顧客要求に応じて動作性能と温度あるいは消費電力のどちらに重きを置くかの設定も可能である。   Also, by rewriting the correspondence table 404 using the setting interface, it is possible to set whether to place emphasis on the operating performance, temperature, or power consumption according to the external environment or customer request.

[第4実施形態]
図13は、第4実施形態の半導体記憶装置30を搭載したパーソナルコンピュータの一例を示す斜視図である。第4実施形態では、上述したSSDを用いた適用例について説明する。
[Fourth Embodiment]
FIG. 13 is a perspective view showing an example of a personal computer on which the semiconductor memory device 30 of the fourth embodiment is mounted. In the fourth embodiment, an application example using the above-described SSD will be described.

パーソナルコンピュータ200は、本体201、及び表示ユニット202を備えている。表示ユニット202は、ディスプレイハウジング203と、このディスプレイハウジング203に収容された表示装置204とを備える。   The personal computer 200 includes a main body 201 and a display unit 202. The display unit 202 includes a display housing 203 and a display device 204 accommodated in the display housing 203.

本体201は、筐体205と、キーボード206と、ポインティングデバイスであるタッチパッド207とを備えている。筐体205の内部には、メイン回路基板、Optical Disk Device(ODD)ユニット、カードスロット、及びSSD10等が収容されている。   The main body 201 includes a housing 205, a keyboard 206, and a touch pad 207 that is a pointing device. The housing 205 accommodates a main circuit board, an optical disk device (ODD) unit, a card slot, the SSD 10, and the like.

カードスロットは、筐体205の周壁に隣接して設けられている。周壁には、カードスロットに対向する開口部208が設けられている。ユーザは、この開口部208を通じて筐体205の外部から追加デバイスをカードスロットに挿抜することが可能である。   The card slot is provided adjacent to the peripheral wall of the housing 205. An opening 208 facing the card slot is provided on the peripheral wall. The user can insert / remove an additional device into / from the card slot from the outside of the housing 205 through the opening 208.

SSD10は、従来のa hard disk drive(HDD)の置き換えとして、パーソナルコンピュータ200内部に実装された状態として使用してもよいし、パーソナルコンピュータ200が備えるカードスロットに挿入した状態で、追加デバイスとして使用してもよい。   The SSD 10 may be used as a state of being mounted inside the personal computer 200 as a replacement for a conventional a hard disk drive (HDD), or used as an additional device while being inserted into a card slot included in the personal computer 200. May be.

図14は、第4実施形態の半導体記憶装置30を搭載したパーソナルコンピュータの構成例を示すブロック図である。   FIG. 14 is a block diagram illustrating a configuration example of a personal computer on which the semiconductor memory device 30 according to the fourth embodiment is mounted.

パーソナルコンピュータ200は、CPU301、ノースブリッジ302、主メモリ303、ビデオコントローラ304、オーディオコントローラ305、サウスブリッジ309、BIOS−ROM310、SSD10、ODDユニット311、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)312、及びネットワークコントローラ313等を備えている。   The personal computer 200 includes a CPU 301, a north bridge 302, a main memory 303, a video controller 304, an audio controller 305, a south bridge 309, a BIOS-ROM 310, an SSD 10, an ODD unit 311, an embedded controller / keyboard controller IC (EC / KBC) 312, And a network controller 313 and the like.

CPU301は、パーソナルコンピュータ200の動作を制御するために設けられたプロセッサであり、SSD10から主メモリ303にロードされるオペレーティングシステム(OS)を実行する。更に、ODDユニット311が、装填された光ディスクに対してリード処理及びライト処理の少なくとも1つの処理の実行を可能にした場合に、CPU301は、それらの処理を実行する。   The CPU 301 is a processor provided for controlling the operation of the personal computer 200 and executes an operating system (OS) loaded from the SSD 10 to the main memory 303. Further, when the ODD unit 311 enables execution of at least one of read processing and write processing on the loaded optical disc, the CPU 301 executes those processing.

また、CPU301は、BIOS−ROM310に格納された Basic Input Output System(BIOS)も実行する。なお、BIOSは、パーソナルコンピュータ200内のハードウェア制御のためのプログラムである。   The CPU 301 also executes a basic input output system (BIOS) stored in the BIOS-ROM 310. The BIOS is a program for hardware control in the personal computer 200.

ノースブリッジ302は、CPU301のローカルバスとサウスブリッジ309との間を接続するブリッジデバイスである。ノースブリッジ302には、主メモリ303をアクセス制御するメモリコントローラも内蔵されている。   The north bridge 302 is a bridge device that connects the local bus of the CPU 301 and the south bridge 309. The north bridge 302 also includes a memory controller that controls access to the main memory 303.

また、ノースブリッジ302は、Accelerated Graphics Port(AGP)バス314等を介してビデオコントローラ304との通信、及びオーディオコントローラ305との通信を実行する機能も有している。   The north bridge 302 also has a function of executing communication with the video controller 304 and communication with the audio controller 305 via an accelerated graphics port (AGP) bus 314 or the like.

主メモリ303は、プログラムやデータを一時的に記憶し、CPU301のワークエリアとして機能する。主メモリ303は、例えばRAMから構成される。   The main memory 303 temporarily stores programs and data and functions as a work area for the CPU 301. The main memory 303 is composed of, for example, a RAM.

ビデオコントローラ304は、パーソナルコンピュータ200のディスプレイモニタとして使用される表示ユニット202を制御するビデオ再生コントローラである。   The video controller 304 is a video playback controller that controls the display unit 202 used as a display monitor of the personal computer 200.

オーディオコントローラ305は、パーソナルコンピュータ200のスピーカ306を制御するオーディオ再生コントローラである。   The audio controller 305 is an audio playback controller that controls the speaker 306 of the personal computer 200.

サウスブリッジ309は、Low Pin Count(LPC)バス上の各デバイス、及びPeripheral Component Interconnect(PCI)バス315上の各デバイスを制御する。また、サウスブリッジ309は、各種ソフトウェア及びデータを格納する記憶装置であるSSD10を、ATAインタフェースを介して制御する。   The south bridge 309 controls each device on the Low Pin Count (LPC) bus and each device on the Peripheral Component Interconnect (PCI) bus 315. The south bridge 309 controls the SSD 10 that is a storage device for storing various software and data via the ATA interface.

パーソナルコンピュータ200は、セクタ単位でSSD10へのアクセスを行う。ATAインタフェースを介して、ライトコマンド、リードコマンド、及びキャッシュフラッシュコマンド等がSSD10に入力される。   The personal computer 200 accesses the SSD 10 on a sector basis. A write command, a read command, a cache flush command, and the like are input to the SSD 10 via the ATA interface.

また、サウスブリッジ309は、BIOS−ROM310、及びODDユニット311をアクセス制御するための機能も有している。   The south bridge 309 also has a function for controlling access to the BIOS-ROM 310 and the ODD unit 311.

EC/KBC312は、電力管理のためのエンベデッドコントローラと、キーボード(KB)206及びタッチパッド207を制御するためのキーボードコントローラとが集積された1チップマイクロコンピュータである。   The EC / KBC 312 is a one-chip microcomputer in which an embedded controller for power management and a keyboard controller for controlling the keyboard (KB) 206 and the touch pad 207 are integrated.

このEC/KBC312は、ユーザによるパワーボタンの操作に応じてパーソナルコンピュータ200の電源をON/OFFする機能を有している。ネットワークコントローラ313は、例えばインターネット等の外部ネットワークとの通信を実行する通信装置である。   The EC / KBC 312 has a function of turning on / off the power of the personal computer 200 according to the operation of the power button by the user. The network controller 313 is a communication device that executes communication with an external network such as the Internet.

図15は、第5実施形態の半導体記憶装置の構成を示すブロック図である。   FIG. 15 is a block diagram showing the configuration of the semiconductor memory device of the fifth embodiment.

本実施形態の半導体記憶装置は、データが格納される不揮発性メモリ409と、コマンド実行部402とコマンド出力部408を有するNANDコントローラ406とを備える。   The semiconductor memory device of this embodiment includes a nonvolatile memory 409 that stores data, and a NAND controller 406 that includes a command execution unit 402 and a command output unit 408.

コマンド出力部408は、コマンドをコマンド実行部402に出力すると同時に、出力したコマンド毎の処理時間情報と、コマンド毎の準備時間情報を参照して、次にコマンドを出力するまでの待機時間を算出する。   The command output unit 408 outputs a command to the command execution unit 402 and, at the same time, refers to the output processing time information for each command and the preparation time information for each command, and calculates a waiting time until the next command output. To do.

ここで、リードコマンド処理とライトコマンド処理にそれぞれ時間t1、t2が掛かるものとする。すなわち、アドレス取得後から不揮発性メモリ409へリードコマンドを投入できるまでの準備時間をt1とし、アドレス取得後から不揮発性メモリ409へライトコマンドを投入できるまでの準備時間をt2とする。さらにここでは、t1<t2とする。   Here, it is assumed that time t1 and time t2 are required for the read command process and the write command process, respectively. That is, the preparation time from the acquisition of the address until the read command can be input to the nonvolatile memory 409 is t1, and the preparation time from the acquisition of the address until the write command can be input to the nonvolatile memory 409 is t2. Further, here, t1 <t2.

算出される待機時間は、コマンドの処理時間から準備時間を減算することによって求められる。例えば、リードコマンド、ライトコマンド、イレーズコマンドの準備時間をX、Y及びZとするとリードコマンドの場合、X−t1であり、ライトコマンドの場合、Y−t2、イレーズコマンドの場合、Z−t3である。   The calculated waiting time is obtained by subtracting the preparation time from the command processing time. For example, if the read command, write command, and erase command preparation times are X, Y, and Z, the read command is X-t1, the write command is Y-t2, and the erase command is Z-t3. is there.

算出した待機時間により、待機時間を計時して待機時間が経過したら、次のコマンドをコマンド実行部407に出力する。NANDコントローラ406はこの動作が繰り返し行う。 When the standby time is measured by the calculated standby time and the standby time has elapsed, the next command is output to the command execution unit 407. The NAND controller 406 repeats this operation.

以上説明したように本実施形態によれば、不揮発性メモリに対するリード、ライト、及びイレーズの動作性能を高めることができ、SSDの使用効率を向上させることができる。さらには、ユーザの利便性を高めることができるメモリシステムを提供することが可能である。なお、コマンド出力部408及びコマンド実行部407を備えているのは、NANDコントローラ406に限らない。   As described above, according to the present embodiment, it is possible to improve the performance of reading, writing, and erasing with respect to the nonvolatile memory, and it is possible to improve the usage efficiency of the SSD. Furthermore, it is possible to provide a memory system that can improve user convenience. The command output unit 408 and the command execution unit 407 are not limited to the NAND controller 406.

図12,13に示したパーソナルコンピュータにおいて、第1実施形態のSSDの動作が実行される適用例について説明する。ここでは、SSD10を省電力状態に遷移するデバイススリープについて述べる。   An application example in which the SSD operation of the first embodiment is executed in the personal computer shown in FIGS. Here, device sleep in which the SSD 10 is shifted to the power saving state will be described.

図16は、パーソナルコンピュータにおいてデバイススリープが実行されるSSDの構成を示すブロック図である。   FIG. 16 is a block diagram showing a configuration of an SSD in which device sleep is executed in a personal computer.

SSD10の電源端子15には、電源電圧VDDが供給されている。さらに、電源電圧VDDは、電源端子15から電源制御回路16と電源スイッチ回路17に供給されている。電源制御回路16は、CPU301から出力される信号に従って、電源スイッチ回路17の動作を制御する制御信号を電源スイッチ回路17へ出力する。電源スイッチ回路17は、前記制御信号によってオン状態あるいはオフ状態に切り換えられる。電源スイッチ回路17は、オン状態にあるとき、電源電圧VDDをSSDコントローラ12及び不揮発性半導体メモリ(例えば、NANDメモリ等)11に供給する。一方、オフ状態にあるとき、SSDコントローラ12及び不揮発性半導体メモリ11への電源電圧VDDの供給を停止する。   A power supply voltage VDD is supplied to the power supply terminal 15 of the SSD 10. Further, the power supply voltage VDD is supplied from the power supply terminal 15 to the power supply control circuit 16 and the power supply switch circuit 17. The power supply control circuit 16 outputs a control signal for controlling the operation of the power supply switch circuit 17 to the power supply switch circuit 17 in accordance with a signal output from the CPU 301. The power switch circuit 17 is switched to an on state or an off state by the control signal. The power supply switch circuit 17 supplies the power supply voltage VDD to the SSD controller 12 and the non-volatile semiconductor memory (for example, NAND memory) 11 when in the on state. On the other hand, when in the off state, the supply of the power supply voltage VDD to the SSD controller 12 and the nonvolatile semiconductor memory 11 is stopped.

以下に、デバイススリープが実行される動作の一例を述べる。   Hereinafter, an example of an operation in which device sleep is executed will be described.

パーソナルコンピュータ200内のCPU301から電源制御回路16に省電力状態への遷移要求が出される。省電力状態とは、SSD10内で電源電圧VDDの供給を制御する回路(例えば、電源制御回路16と電源スイッチ回路17)のみに電源電圧が供給され、SSD10内のその他の回路(例えば、SSDコントローラ12や不揮発性半導体メモリ11)には電源電圧が供給されていない状態を指す。   A request for transition to the power saving state is issued from the CPU 301 in the personal computer 200 to the power supply control circuit 16. In the power saving state, the power supply voltage is supplied only to the circuits (for example, the power supply control circuit 16 and the power supply switch circuit 17) that control the supply of the power supply voltage VDD in the SSD 10, and other circuits (for example, the SSD controller) in the SSD 10 12 and the nonvolatile semiconductor memory 11) indicate a state in which no power supply voltage is supplied.

省電力状態への遷移要求を受け取ると、電源制御回路16は、電源電圧VDDの供給遮断を指示する制御信号(オフ要求)を電源スイッチ回路17へ出力する。電源スイッチ回路17は、制御信号(オフ要求)を受け取るとオフ状態となり、SSDコントローラ12と不揮発性半導体メモリ11への電源電圧VDDの供給を遮断する。これにより、SSD10は省電力状態に遷移する。   When receiving the request for transition to the power saving state, the power supply control circuit 16 outputs to the power supply switch circuit 17 a control signal (off request) instructing to cut off the supply of the power supply voltage VDD. When the power switch circuit 17 receives the control signal (off request), the power switch circuit 17 is turned off and cuts off the supply of the power supply voltage VDD to the SSD controller 12 and the nonvolatile semiconductor memory 11. Thereby, SSD10 changes to a power saving state.

一方、SSD10を省電力状態から通常状態へ復帰させる場合、CPU301から電源制御回路16に、省電力状態から通常状態への復帰要求が出される。通常状態とは、SSD10内の電源電圧VDDの供給を制御する回路以外の回路(例えば、SSDコントローラ12と不揮発性半導体メモリ11)にも電源電圧が供給され、動作が通常に行われる状態を指す。   On the other hand, when the SSD 10 is returned from the power saving state to the normal state, the CPU 301 issues a request for returning from the power saving state to the normal state to the power supply control circuit 16. The normal state refers to a state in which the power supply voltage is supplied to circuits (for example, the SSD controller 12 and the nonvolatile semiconductor memory 11) other than the circuit that controls the supply of the power supply voltage VDD in the SSD 10 and the operation is normally performed. .

通常状態への復帰要求を受け取ると、電源制御回路16は、電源電圧VDDの供給を指示する制御信号(オン要求)を電源スイッチ回路17へ出力する。電源スイッチ回路17は、制御信号(オン要求)を受け取るとオン状態となり、SSDコントローラ12と不揮発性半導体メモリ11への電源電圧VDDの供給を開始する。これにより、SSD10は通常状態に復帰する。   When receiving the request for returning to the normal state, the power supply control circuit 16 outputs a control signal (ON request) instructing supply of the power supply voltage VDD to the power supply switch circuit 17. When the power switch circuit 17 receives the control signal (ON request), the power switch circuit 17 is turned on and starts supplying the power supply voltage VDD to the SSD controller 12 and the nonvolatile semiconductor memory 11. As a result, the SSD 10 returns to the normal state.

上述したSSD10の省電力状態と通常状態の遷移において、前記第1実施形態が適用されると以下のようになる。例えば、ユーザが図13に示したノート型パーソナルコンピュータ200を使用中に、表示ユニット202を一瞬閉じて、直ぐに開いたとき、上述したデバイススリープが一瞬起動し、直ぐに通常状態に復帰する場合がある。   In the transition between the power saving state and the normal state of the SSD 10 described above, when the first embodiment is applied, the following occurs. For example, when the user is using the notebook personal computer 200 shown in FIG. 13, when the display unit 202 is momentarily closed and then immediately opened, the device sleep described above may be activated for a moment and immediately return to the normal state. .

図17は、リードにおいてデバイススリープが起動した場合の一例を示すタイムダイアグラムである。   FIG. 17 is a time diagram illustrating an example when device sleep is activated in a read.

図17に示すように、期間OUT0にて、不揮発性半導体メモリ11内のバッファに保持されたデータがSSDコントローラ12のデータ制御部によって引き抜かれているとき、デバイススリープが起動してデータの引き抜きが一旦停止する。その後、直ぐデバイススリープから通常状態に復帰する。通常状態への復帰により、バッファのデータの引き抜きが再開される(後部の期間OUT0)。   As shown in FIG. 17, when data held in the buffer in the nonvolatile semiconductor memory 11 is pulled out by the data control unit of the SSD controller 12 during the period OUT0, device sleep is activated and data is pulled out. Stop temporarily. Thereafter, the device returns to the normal state from the device sleep immediately. By returning to the normal state, the extraction of the buffer data is resumed (rear period OUT0).

上述したように、不揮発性半導体メモリ11内のバッファのデータがSSDコントローラ12へ引き抜かれているときに、省電力状態、例えばデバイススリープに遷移して、直ぐに通常状態に復帰した場合、不揮発性半導体メモリ11内のバッファからのデータ引き抜きを一旦中断して、再開すれば、データ引き抜きを始めからやり直す場合に比べて、リードに要する時間を短縮することができる。これにより、不揮発性半導体メモリの使用効率を向上させることが可能である。   As described above, when the data in the buffer in the nonvolatile semiconductor memory 11 is extracted to the SSD controller 12, the nonvolatile semiconductor is changed to the power saving state, for example, the device sleep and immediately returns to the normal state. If the data extraction from the buffer in the memory 11 is temporarily interrupted and restarted, the time required for reading can be shortened compared with the case where data extraction is performed again from the beginning. Thereby, it is possible to improve the use efficiency of the nonvolatile semiconductor memory.

図18は、第4実施形態のSSDを搭載したサーバの使用例を示す概念図である。   FIG. 18 is a conceptual diagram illustrating a usage example of a server equipped with the SSD of the fourth embodiment.

インターネット401にはサーバ400が接続されている。サーバ400には、SSD10が搭載されている。さらに、インターネット401には端末、例えばコンピュータ402が接続されている。ユーザは、コンピュータ402からインターネット401を介してサーバ400内のSSD10にアクセスする。SSD10の構成及び動作については前述した実施形態と同様である。   A server 400 is connected to the Internet 401. The server 400 includes the SSD 10. Further, a terminal such as a computer 402 is connected to the Internet 401. A user accesses the SSD 10 in the server 400 from the computer 402 via the Internet 401. The configuration and operation of the SSD 10 are the same as those in the embodiment described above.

本発明のいくつかの実施例を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。   Although several examples of the present invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the spirit of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalents thereof.

10…SSD
11…不揮発性半導体メモリ
12…SSDコントローラ
24…半導体記憶装置
25…NANDコントローラ
30…半導体記憶装置
34…アドレス取得部
39…NANDコントローラ
40…タイマー
100…ホスト
200…パーソナルコンピュータ
202…表示ユニット
204…タッチパッド
251…コマンドキュー部
253…コマンド発行部
254…コマンド監視部
255…コマンド発行部
256…デコーダ
301…CPU
353…スケジューラ
401…不揮発性メモリ
402…コマンド実行部
406…NANDコントローラ
10 ... SSD
DESCRIPTION OF SYMBOLS 11 ... Nonvolatile semiconductor memory 12 ... SSD controller 24 ... Semiconductor memory device 25 ... NAND controller 30 ... Semiconductor memory device 34 ... Address acquisition part 39 ... NAND controller 40 ... Timer 100 ... Host 200 ... Personal computer 202 ... Display unit 204 ... Touch Pad 251 ... Command queue unit 253 ... Command issuing unit 254 ... Command monitoring unit 255 ... Command issuing unit 256 ... Decoder 301 ... CPU
353 ... Scheduler 401 ... Non-volatile memory 402 ... Command execution unit 406 ... NAND controller

Claims (10)

データを記憶する不揮発性メモリと、
前記不揮発性メモリにおけるコマンドによる動作の終了時間を求め、終了時間情報を出力する計測部と、
アドレスを取得するアドレス取得部と、
コマンドを記憶する第1のバッファと、
前記アドレス取得部により取得されたアドレスを受け取り、前記計測部から出力された前記終了時間情報に応じてコマンドを発行するコマンド発行部と、
前記コマンド発行部から発行された前記コマンドを記憶し処理するコマンド処理部と、
前記コマンド処理部により処理された前記コマンドを前記不揮発性メモリへ出力すると共に、前記不揮発性メモリの動作を制御するメモリコントローラと、
を備え、
前記第1のバッファに第1のコマンドを記憶させ、前記第1のバッファに記憶された前記第1のコマンドを前記不揮発性メモリへ出力させた後、前記計測部から出力され、前記第1のコマンドの前記終了時間情報に応じて、前記第1のコマンドの次に実行するべき第2のコマンドを前記第1のバッファに記憶させる半導体記憶装置。
Non-volatile memory for storing data;
A measurement unit for obtaining an end time of an operation by a command in the nonvolatile memory and outputting end time information;
An address acquisition unit for acquiring an address;
A first buffer for storing commands;
A command issuing unit that receives an address acquired by the address acquisition unit and issues a command according to the end time information output from the measurement unit;
A command processing unit for storing and processing the command issued from the command issuing unit;
A memory controller that outputs the command processed by the command processing unit to the non-volatile memory and controls the operation of the non-volatile memory;
With
The first command is stored in the first buffer, and the first command stored in the first buffer is output to the nonvolatile memory, and then output from the measurement unit. A semiconductor memory device that stores, in the first buffer, a second command to be executed next to the first command in accordance with the end time information of the command.
データを記憶する不揮発性メモリと、
前記不揮発性メモリにおけるコマンドによる動作の終了時間を求め、終了時間情報を出力する計測部と、
コマンドを記憶する第1のバッファと、
を備え、
前記第1のバッファに第1のコマンドを記憶させ、前記第1のバッファに記憶された前記第1のコマンドを前記不揮発性メモリへ出力させた後、前記計測部から出力され、前記第1のコマンドの前記終了時間情報に応じて、前記第1のコマンドの次に実行するべき第2のコマンドを前記第1のバッファに記憶させる半導体記憶装置。
Non-volatile memory for storing data;
A measurement unit for obtaining an end time of an operation by a command in the nonvolatile memory and outputting end time information;
A first buffer for storing commands;
With
The first command is stored in the first buffer, and the first command stored in the first buffer is output to the nonvolatile memory, and then output from the measurement unit. A semiconductor memory device that stores, in the first buffer, a second command to be executed next to the first command in accordance with the end time information of the command.
データを記憶する不揮発性メモリと、
前記不揮発性メモリにおけるコマンドによる動作の終了時間を求め、終了時間情報を出力する計測部と、
コマンドを記憶する第1のバッファを含むコマンド処理部と、
前記不揮発性メモリの動作を制御するメモリコントローラと、
前記メモリコントローラはコマンドを記憶する第2のバッファと、
を備え、
前記第1のバッファに記憶された第1のコマンドを前記第2のバッファに記憶させ、前記第2のバッファに記憶された前記第1のコマンドを前記不揮発性メモリへ出力させた後、前記計測部から出力され、前記第1のコマンドの前記終了時間情報に応じて、前記第1のコマンドの次に実行するべき第2のコマンドを前記第1のバッファに記憶させる半導体記憶装置。
Non-volatile memory for storing data;
A measurement unit for obtaining an end time of an operation by a command in the nonvolatile memory and outputting end time information;
A command processing unit including a first buffer for storing commands;
A memory controller for controlling the operation of the nonvolatile memory;
The memory controller has a second buffer for storing commands;
With
The first command stored in the first buffer is stored in the second buffer, the first command stored in the second buffer is output to the nonvolatile memory, and then the measurement is performed. A semiconductor memory device that stores a second command to be executed next to the first command in the first buffer in accordance with the end time information of the first command output from the unit.
前記コマンド発行部は、前記複数の不揮発性メモリに対して発行するべきコマンドとの対応を示すコマンド対応情報と、前記複数の不揮発性メモリの状態を示すメモリ情報と、前記コマンドテーブルと前記状態テーブルに基づいてコマンドを発行するスケジューラと、を備える請求項3に記載の半導体記憶装置。   The command issuing unit includes command correspondence information indicating correspondence with commands to be issued to the plurality of nonvolatile memories, memory information indicating states of the plurality of nonvolatile memories, the command table, and the state table. The semiconductor memory device according to claim 3, further comprising a scheduler that issues a command based on the command. 前記メモリコントローラは、前記メモリ情報と前記コマンドに加えて、前記複数の不揮発性メモリにおける温度及び消費電力のいずれかの情報を前記計測部へ通知する請求項4に記載の半導体記憶装置。   The semiconductor memory device according to claim 4, wherein the memory controller notifies the measurement unit of any one of temperature and power consumption in the plurality of nonvolatile memories in addition to the memory information and the command. 前記計測部は、前記コマンドと、前記コマンドを受け取ってから前記コマンドによる動作が終了するまでの処理時間を示す処理時間情報と、
前記温度及び消費電力のいずれかの情報と、
コマンド発行時の待機時間のオフセットとの対応を示す対応情報と、
前記コマンド発行部から前記コマンドが発行されてから、前記コマンドが前記不揮発性メモリに出力されるまでの準備時間を示す準備時間情報と、
を有し、
前記終了情報は、前記処理時間と前記オフセットとを加算し、加算値から前記準備時間を減算して求められる請求項5に記載の半導体記憶装置。
The measuring unit includes the command and processing time information indicating a processing time from when the command is received until the operation according to the command is completed.
Any of the temperature and power consumption information;
Correspondence information indicating the correspondence with the offset of the waiting time when issuing the command,
Preparation time information indicating a preparation time from when the command is issued from the command issuing unit to when the command is output to the nonvolatile memory;
Have
6. The semiconductor memory device according to claim 5, wherein the end information is obtained by adding the processing time and the offset and subtracting the preparation time from the added value.
データが格納される不揮発性メモリと、
前記不揮発性メモリにアクセスし、コマンドを実行するコマンド実行部と、
前記コマンド実行部に第1コマンドを出力し、前記第1コマンドに対応したコマンド情報から得た前記第1コマンド実行に要する時間に基づき、第2コマンドを出力するコマンド出力部と、
を備える半導体記憶装置。
Non-volatile memory in which data is stored;
A command execution unit for accessing the nonvolatile memory and executing a command;
A command output unit that outputs a first command to the command execution unit and outputs a second command based on a time required to execute the first command obtained from command information corresponding to the first command;
A semiconductor memory device.
データを記憶する不揮発性メモリと、
前記不揮発性メモリに出力されたコマンドによる動作の終了時間を求め、終了時間情報をコマンド発行部に出力する計測部と、
前記終了情報に基づいてコマンドを発行するコマンド発行部と、
当該受信した前記コマンドを前記不揮発性メモリに転送するメモリコントローラと、
を備える半導体記憶装置。
Non-volatile memory for storing data;
A measurement unit for obtaining an end time of the operation by the command output to the nonvolatile memory, and outputting end time information to the command issuing unit;
A command issuing unit for issuing a command based on the end information;
A memory controller for transferring the received command to the nonvolatile memory;
A semiconductor memory device.
前記コマンドは、リードコマンド、ライトコマンド、及びイレーズコマンドのいずれかを有する請求項1又は3に記載の半導体記憶装置。   The semiconductor memory device according to claim 1, wherein the command includes any one of a read command, a write command, and an erase command. 前記第1、第2のコマンドは、リードコマンド、ライトコマンド、及びイレーズコマンドのいずれかを有する請求項1又は3に記載の半導体記憶装置。   4. The semiconductor memory device according to claim 1, wherein the first and second commands include any one of a read command, a write command, and an erase command.
JP2013048514A 2013-03-11 2013-03-11 Semiconductor memory device Abandoned JP2014174849A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013048514A JP2014174849A (en) 2013-03-11 2013-03-11 Semiconductor memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013048514A JP2014174849A (en) 2013-03-11 2013-03-11 Semiconductor memory device

Publications (1)

Publication Number Publication Date
JP2014174849A true JP2014174849A (en) 2014-09-22

Family

ID=51695981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013048514A Abandoned JP2014174849A (en) 2013-03-11 2013-03-11 Semiconductor memory device

Country Status (1)

Country Link
JP (1) JP2014174849A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016092676A1 (en) * 2014-12-11 2016-06-16 株式会社日立製作所 Storage device and control method therefor
US10115458B2 (en) 2016-03-30 2018-10-30 Toshiba Memory Corporation Perform read or write on a non-volatile memory having a pending read or write based on temperature thereof
CN112786098A (en) * 2019-11-07 2021-05-11 爱思开海力士有限公司 Memory controller, memory system having the same, and method of operating the same

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006163711A (en) * 2004-12-06 2006-06-22 Renesas Technology Corp Information processing system
WO2010029830A1 (en) * 2008-09-12 2010-03-18 株式会社日立製作所 Semiconductor device and information processing system
JP2010176646A (en) * 2009-02-02 2010-08-12 Toshiba Information Systems (Japan) Corp Memory system and interleaving control method for memory system
JP2011065359A (en) * 2009-09-16 2011-03-31 Canon Inc Memory system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006163711A (en) * 2004-12-06 2006-06-22 Renesas Technology Corp Information processing system
WO2010029830A1 (en) * 2008-09-12 2010-03-18 株式会社日立製作所 Semiconductor device and information processing system
US20110145500A1 (en) * 2008-09-12 2011-06-16 Seiji Miura Semiconductor device and data processing system
JP2010176646A (en) * 2009-02-02 2010-08-12 Toshiba Information Systems (Japan) Corp Memory system and interleaving control method for memory system
JP2011065359A (en) * 2009-09-16 2011-03-31 Canon Inc Memory system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016092676A1 (en) * 2014-12-11 2016-06-16 株式会社日立製作所 Storage device and control method therefor
US10115458B2 (en) 2016-03-30 2018-10-30 Toshiba Memory Corporation Perform read or write on a non-volatile memory having a pending read or write based on temperature thereof
CN112786098A (en) * 2019-11-07 2021-05-11 爱思开海力士有限公司 Memory controller, memory system having the same, and method of operating the same

Similar Documents

Publication Publication Date Title
KR102500661B1 (en) Cost-optimized single-level cell-mode non-volatile memory for multi-level cell-mode non-volatile memory
US9304691B2 (en) Memory system and bank interleaving method
KR101719092B1 (en) Hybrid memory device
KR101862112B1 (en) Accelerating boot time zeroing of memory based on non-volatile memory (nvm) technology
US8677051B2 (en) Memory system, control method thereof, and information processing apparatus
TWI483265B (en) Hardware dynamic cache power management
JP2012529692A (en) Pause memory operations to reduce read latency in memory arrays
CN107408018B (en) Mechanism for adapting garbage collection resource allocation in solid state drives
TWI473099B (en) Memory storage device, memory controller and controlling method
JP2014157603A (en) System for channel control of non-volatile memory, and control method thereof
US9792989B2 (en) Memory system including nonvolatile memory
TWI467513B (en) Apparatus and method for memory-hierarchy aware producer-consumer instruction
KR20170076767A (en) Processor including multiple dissimilar processor cores that implement different portions of instruction set architecture
KR20130107070A (en) A solid state drive controller and a method controlling thereof
KR20170078757A (en) Processor including multiple dissimilar processor cores
US11302405B2 (en) System approach to reduce stable threshold voltage (Vt) read disturb degradation
US10467020B2 (en) Memory device, and information-processing device
JP2014174849A (en) Semiconductor memory device
JP2022529873A (en) Multimode protection memory
JP5925549B2 (en) Memory system and bank interleaving method
US20200242040A1 (en) Apparatus and Method of Optimizing Memory Transactions to Persistent Memory Using an Architectural Data Mover
TWI714116B (en) Memory controller, memory controlling method, and computer system
JP2016026345A (en) Temporary stop of memory operation for shortening reading standby time in memory array
JP2009020776A (en) Swap-out control apparatus
US9946656B2 (en) Completion packet return based on eviction or flush

Legal Events

Date Code Title Description
RD07 Notification of extinguishment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7427

Effective date: 20140812

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140902

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150205

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20150216

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20150218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151204

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160311

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160406

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160422

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20160511