JP2022188572A - 半導体装置、メモリシステム、及びチップ - Google Patents

半導体装置、メモリシステム、及びチップ Download PDF

Info

Publication number
JP2022188572A
JP2022188572A JP2021096711A JP2021096711A JP2022188572A JP 2022188572 A JP2022188572 A JP 2022188572A JP 2021096711 A JP2021096711 A JP 2021096711A JP 2021096711 A JP2021096711 A JP 2021096711A JP 2022188572 A JP2022188572 A JP 2022188572A
Authority
JP
Japan
Prior art keywords
chip
channel
data
host
signal
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.)
Pending
Application number
JP2021096711A
Other languages
English (en)
Inventor
陽平 安田
Yohei Yasuda
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.)
Kioxia Corp
Original Assignee
Kioxia 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 Kioxia Corp filed Critical Kioxia Corp
Priority to JP2021096711A priority Critical patent/JP2022188572A/ja
Priority to US17/681,423 priority patent/US11977777B2/en
Publication of JP2022188572A publication Critical patent/JP2022188572A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1063Control signal output circuits, e.g. status or busy flags, feedback command signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/109Control signal input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Dram (AREA)
  • Memory System (AREA)

Abstract

Figure 2022188572000001
【課題】複数のチップへのアクセスを高速に行う。
【解決手段】一つの実施形態によれば、中継チップと第1のチップと第2のチップとを有する半導体装置が提供される。中継チップは、ホストに接続可能である。第1のチップは、第1のチャネルを介して中継チップに接続される。第2のチップは、第2のチャネルを介して中継チップに接続される。中継チップは、第1のイネーブル信号と第2のイネーブル信号とを前記ホストから受信する。第1のイネーブル信号は、第1のチャネルを選択するための信号である。第2のイネーブル信号は、第2のチャネルを選択するための信号である。中継チップは、第1のイネーブル信号がノンアクティブレベルに維持され第2のイネーブル信号がアクティブレベルに維持された状態で、第1のチャネルを介したデータ転送動作と第2のチャネルを介したデータ転送のためのコマンド発行動作とを並行して行うことが可能である。
【選択図】図5

Description

本実施形態は、半導体装置、メモリシステム、及びチップに関する。
ホストに接続される外部端子と複数のチップとの間に中継チップを配した半導体装置がある。この半導体装置では、ホストから複数のチップへのアクセスが中継チップを介して行われる。このとき、複数のチップへのアクセスを高速に行うことが望まれる。
特開2020-14958号公報 米国特許出願公開第2018/0314629号明細書 米国特許第5453661号明細書
一つの実施形態は、複数のチップへのアクセスを高速に行うことができる半導体装置を提供することを目的とする。
一つの実施形態によれば、中継チップと第1のチップと第2のチップとを有する半導体装置が提供される。中継チップは、ホストに接続可能である。第1のチップは、第1のチャネルを介して中継チップに接続される。第2のチップは、第2のチャネルを介して中継チップに接続される。中継チップは、第1のイネーブル信号と第2のイネーブル信号とをホストから受信する。第1のイネーブル信号は、第1のチャネルを選択するための信号である。第2のイネーブル信号は、第2のチャネルを選択するための信号である。中継チップは、第1のイネーブル信号がノンアクティブレベルに維持され第2のイネーブル信号がアクティブレベルに維持された状態で、第1のチャネルを介したデータ転送動作と第2のチャネルを介したデータ転送のためのコマンド発行動作とを並行して行うことが可能である。
第1の実施形態にかかる半導体装置が適用されるメモリシステムの構成を示す図。 第1の実施形態におけるメモリチップの構成を示す図。 第1の実施形態におけるリード処理のシーケンスを示す図。 第1の実施形態にかかる半導体装置の動作を示す波形図。 第1の実施形態にかかる半導体装置の動作を示す波形図。 第1の実施形態における中継チップの構成を示す図。 第1の実施形態における中継チップの動作を示す図。 第1の実施形態の変形例における中継チップの構成を示す図。 第1の実施形態の変形例における中継チップの動作を示す図。 第2の実施形態にかかる半導体装置の動作を示す波形図。 第3の実施形態におけるライト処理のシーケンスを示す図。 第3の実施形態にかかる半導体装置の動作を示す波形図。 第3の実施形態における中継チップの構成を示す図。 第3の実施形態における中継チップの動作を示す図。 第4の実施形態にかかる半導体装置の概略動作を示す図。 第4の実施形態にかかる半導体装置の動作を示す波形図。 第4の実施形態における中継チップの構成を示す図。 第4の実施形態にかかる半導体装置の動作を示す波形図。 第4の実施形態における中継チップの動作を示す図。 第4の実施形態の変形例における中継チップの構成を示す図。 第4の実施形態の変形例にかかる半導体装置の動作を示す波形図。 第4の実施形態の変形例における中継チップの動作を示す図。 第5の実施形態にかかる半導体装置の動作を示す波形図。 第5の実施形態における中継チップの構成を示す図。 第5の実施形態にかかる半導体装置の動作を示す波形図。 第5の実施形態における中継チップの動作を示す図。 第5の実施形態の変形例における中継チップの構成を示す図。 第5の実施形態の変形例にかかる半導体装置の動作を示す波形図。 第5の実施形態の変形例における中継チップの動作を示す図。 第6の実施形態における中継チップの構成を示す図。 第7の実施形態における中継チップの構成を示す図。 第7の実施形態にかかる半導体装置の動作を示す波形図。
以下に添付図面を参照して、実施形態にかかる半導体装置を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。
(第1の実施形態)
第1の実施形態にかかる半導体装置は、複数のチップが搭載されるとともに、ホストに通信路を介して接続可能である。例えば、半導体装置は、NAND型フラッシュメモリ等を含む不揮発性メモリ装置であり、各チップは、例えばNAND型フラッシュメモリチップである。通信路は年々高速化されており、同時に半導体装置の大容量化のため通信路に対するチップ接続数も増加要求がある。各チップがメモリチップである場合、半導体装置では、実装密度を向上させるために、搭載されるチップ数は多くなりつつあり、チップを積層することで実装密度を向上させる。このとき、通信路と複数のチップとの間にFBI(Frequency Boosting Interface)チップと呼ばれる中継チップを追加する。半導体装置では、通信路に接続可能に中継チップが構成され、中継チップと複数のチップとの間を複数のチャネルで接続する構成が取られる。これにより、中継チップを利用して伝送線路の負荷分散を行うことができ、チップの多数接続時にも高速動作が可能となるようにも考えられる。
しかし、この構成では、ホスト及び複数のチップ間のデータが中継チップを経由して転送される。このとき、半導体装置において、複数のチャネルのうち1つのチャネルを選択している期間に他のチャネルを介したデータ転送ができないと、データ転送における処理待ち時間が増大しやすく、ホスト及び複数のチップ間のデータ転送性能が低下する可能性がある。
そこで、本実施形態では、半導体装置において、中継チップが複数のチャネルを介して複数のチップに並行にアクセスする動作(チャネル間インタリーブ動作)を可能にすることで、中継チップを介したホスト及び複数のチップ間のデータ転送性能の向上を図る。
具体的には、ホストに接続可能である中継チップを、第1のチャネルを介して第1のチップに接続し、第2のチャネルを介して第2のチップに接続して、半導体装置を構成する。中継チップは、第1のイネーブル信号と第2のイネーブル信号とをホストから受信する。第1のイネーブル信号は、第1のチャネルを選択するための信号である。第2のイネーブル信号は、第2のチャネルを選択するための信号である。中継チップは、第1のイネーブル信号がノンアクティブレベルに維持され第2のイネーブル信号がアクティブレベルに維持された状態で、第1のチャネルを介したデータ転送動作とデータ転送のための第2のチャネルを介したコマンド発行動作とを並行して行うことが可能である。また、中継チップは、第1のイネーブル信号がアクティブレベルに維持され第2のイネーブル信号がノンアクティブレベルに維持された状態で、データ転送のための第1のチャネルを介したコマンド発行動作と第2のチャネルを介したデータ転送動作とを並行して行うことが可能である。これにより、中継チップを介したホスト及び複数のチップ間のデータ転送を効率化できる。すなわち、ホスト及び複数のチップ間のデータ転送性能を向上できる。
より具体的には、半導体装置1が適用されるメモリシステム100は、図1に示すように構成される。図1は、半導体装置1が適用されるメモリシステム100の構成を示す図である。
メモリシステム100は、ホストHA及び半導体装置1を含む。半導体装置1は、中継チップIF及び複数のチップMC0-1~MC0-4,MC1-1~MC1-4を備える。半導体装置1は、チップMC0-1~MC0-4及びチップMC1-1~MC1-4それぞれが積層されて実装され得る。半導体装置1では、中継チップIF及び複数のチップMC0-1~MC0-4,MC2-1~MC2-4の周囲が、モールド樹脂で封止されていてもよい。図1では、チャネルCh0を介して中継チップIFに4つのチップMC0-1~MC0-4が接続され、チャネルCh1を介して中継チップIFに4つのチップMC1-1~MC1-4が接続される構成が例示されている。すなわち、半導体装置1は、複数の(ここでは8)チップMC0-1~MC0-4,MC1-1~MC1-4を含むマルチチップモジュールとして構成され得る。例えば、半導体装置1は、NAND型フラッシュメモリ等の不揮発性メモリであり、各チップMC0-1~MC0-4,MC1-1~MC1-4は、メモリチップである。
ホストHAは、コントローラなどのデバイスであってもよいし、コンピュータ又は携帯端末などの電子機器に備えられ半導体装置1を制御するプロセッサであってもよい。半導体装置1は、通信路を介してホストHAに接続可能である。通信路は、例えば、シリアルバスなどであり、ホストHAと半導体装置1との通信線の集まりであるチャネルとして機能するが、半導体装置1内のチャネルと区別するためにホストチャネルHChと呼ぶことにする。半導体装置1とホストHAとは、所定の規格に基づき構成されたホストチャネルHChを介して接続される。ホストがコンピュータ又は携帯端末等であり、各チップMC0-1~MC0-4,MC1-1~MC1-4がNAND型フラッシュメモリである場合、所定の規格は、例えば、eMMC規格、PCIe規格、M-PHY規格などである。例えば、ホストチャネルHChはeMMCインタフェースとして機能する。ホストがメモリコントローラであり、各チップMC1-1~MC1-4,MC2-1~MC2-4がNAND型フラッシュメモリである場合、所定の規格は、例えば、トグルDDR規格、ONFi規格などである。例えば、ホストチャネルHChはトグルDDRインタフェースとして機能する。
中継チップIFは、ホストチャネルHChと複数の(ここでは2)チャネルCh0,Ch1との間に電気的に接続されている。中継チップIFは、ホストチャネルHChを介してホストHAに電気的に接続可能である。複数のチップMC0-1~MC0-4,MC1-1~MC1-4は、複数のチャネルCh0,Ch1を介して中継チップIFに接続されている。中継チップIFと各チップMC0-1~MC0-4,MC1-1~MC1-4とは、所定の規格に基づき構成されたチャネルCh0,Ch1を介して接続される。
各チップMCは、例えば図2に示すように構成され得る。図2は、チップMCの構成を示す図である。
チップMCは、例えばメモリチップであり、メモリセルアレイ2、周辺回路3、レジスタ4、入出力回路5及び端子群6を有する。
メモリセルアレイ2は、複数のメモリセルが2次元的に又は3次元的に配列されている。周辺回路3及びレジスタ4は、それぞれ、メモリセルアレイ2の周辺に配され、メモリセルアレイ2に接続されている。周辺回路3は、レジスタ4、入出力回路5及び端子群6の間に配され、レジスタ4、入出力回路5及び端子群6に接続されている。入出力回路5は、レジスタ4及び端子群6の間に配され、レジスタ4及び端子群6に接続されている。
周辺回路3は、中継チップIFからチャネルCh及び端子群6を介して受けたコマンドに応じて、レジスタ4及び入出力回路5を利用して、メモリセルアレイ2の各メモリセルへのアクセス処理を制御する。周辺回路3は、中継チップIFからチャネルCh及び端子群6を介してリードコマンドを受けた場合、メモリセルアレイ2の各メモリセルへのリード処理を行う。
例えば、メモリセルアレイ2に対するリード処理は、図3に示すようなシーケンスで行われる。図3は、リード処理のシーケンスを示す図であり、リード処理においてホストHA及び半導体装置1間でやり取りされる各信号の波形を示す。
チップイネーブル信号CE ̄は、アクティブレベル(Lレベル)でチップをイネーブルするための信号である。コマンドラッチイネーブル信号CLEは、アクティブレベル(Hレベル)でデータ信号DQがコマンドであることを通知する信号である。アドレスラッチイネーブル信号ALEは、アクティブレベル(Hレベル)でデータ信号DQがアドレスであることを通知する信号である。ライトイネーブル信号WE ̄は、アクティブレベル(Lレベル)でライトアクセスをイネーブルする信号である。リードイネーブル信号RE ̄/REは、アクティブレベル(Lレベル/Hレベル)でリード処理をイネーブルする信号であるとともに、リード処理における転送データの取り込みのためのタイミング用の信号である。リードイネーブル信号RE ̄とリードイネーブル信号REとは、一対の差動信号を構成する。データストローブ信号DQS/DQS ̄は、リード処理におけるホストに通知するためのタイミング用の信号である。データストローブ信号DQSとデータストローブ信号DQS ̄とは、一対の差動信号を構成する。データ信号DQxは、ホストHA及び半導体装置1の間でやり取りされるデータ信号である。レディービジー信号R/B ̄は、半導体装置1がアクセス可能か否かを示す信号であり、Hレベルでレディー状態(アクセス可能)であることを示し、Lレベルでビジー状態(アクセス不可能)であることを示す。
リード処理のシーケンスでは、図3(a)に示すように各信号が遷移する。タイミングt1において、チップイネーブル信号CE ̄がアサートされ、コマンドラッチイネーブル信号CLEがアサートされると、ホストHAから半導体装置1へ、データ信号DQxとして、ページ(下位ページ/中位ページ/上位ページ)指定コマンド「01h/02h/03h」、センス動作コマンド「00h」が順に伝送される。
タイミングt2において、コマンドラッチイネーブル信号CLEがデアサートされ、アドレスラッチイネーブル信号ALEがアサートされると、ホストHAから半導体装置1へ、データ信号DQxとして、カラムアドレス及びロウアドレスなどのアドレス「ADD」が伝送される。
タイミングt3において、アドレスラッチイネーブル信号ALEがデアサートされ、コマンドラッチイネーブル信号CLEがアサートされると、ホストHAから半導体装置1へ、データ信号DQxとして、センス開始コマンド「30h」が伝送される。
これに応じて、タイミングt4~t5の期間tRにおいて、チップMCの周辺回路3は、選択ワード線の電位を読み出し電位に設定し、非選択ワード線の電位を非選択電位に設定する。チップMCの周辺回路3は、メモリセルアレイ2におけるロウアドレスで指定されたメモリセル群の指定されたページに対してセンス動作を行う。チップMCの周辺回路3は、センス動作で検知された1ページ分のデータをレジスタ4へ転送して格納する。期間tRでは、レディービジー信号R/B ̄がビジー(ローレベル)に維持される。なお、期間tRの前後では、レディービジー信号R/B ̄がレディー(ハイレベル)に維持される。
タイミングt6において、コマンドラッチイネーブル信号CLEがアサートされると、ホストHAから半導体装置1へ、データ信号DQxとして、転送コマンド「05h」が伝送される。
タイミングt7において、コマンドラッチイネーブル信号CLEがデアサートされ、アドレスラッチイネーブル信号ALEがアサートされると、ホストHAから半導体装置1へ、データ信号DQxとして、カラムアドレス及びロウアドレスなどのアドレス「ADD」が伝送される。
タイミングt8において、アドレスラッチイネーブル信号ALEがデアサートされ、コマンドラッチイネーブル信号CLEがアサートされると、ホストHAから半導体装置1へ、データ信号DQxとして、出力開始コマンド「E0h」が伝送される。
これに応じて、タイミングt9~t10の期間tWHR2において、中継チップIFは、プリフェッチ動作を行う。すなわち、チップMCの周辺回路3は、レジスタ4におけるカラムアドレスで指定されたデータを入出力回路5へ転送し、入出力回路5へ転送されたデータの少なくとも一部を端子群6、チャネルCh、端子群22経由で中継チップIFへ転送する。中継チップIFは、転送されたデータを所定の回路で保持(プリフェッチ)する。
タイミングt11において、ホストHAから半導体装置1へのリードイネーブル信号RE ̄/REがトグルし始める。
これに応じて、タイミングt12~t13の期間において、中継チップIFは、リードイネーブル信号RE ̄/REに応じてデータストローブ信号DQS/DQS ̄を生成してホストHAへ出力するとともに、チップMCから転送されたデータ信号DQxをホストHAへ出力する。
以下では、図3(a)に示すリード処理のコマンドシーケンスを図3(b)のように簡略化して示すことにする。すなわち、タイミングt1~t4のコマンドを「00h~30h」で表し、タイミングt6~t9のコマンドを「05h~E0h」で表し、タイミングt12~t13の動作を「DOUT」で表すことにする。なお、コマンドに応じた動作として、タイミングt4~t5の期間tRでは、「00h~30h」に応じたセンス(Sense)動作が行われ、タイミングt9~t10の期間tWHR2では、「05h~E0h」に応じたプリフェッチ(Prefetch)動作が行われる。また、「05h~E0h」の期間、期間tWHR2、「DOUT」の期間を含む期間をtTRとする。「05h~E0h」の期間では、データ転送のためのコマンドが発行される。期間tWHR2では、チップMCからチャネルCh経由で中継チップIFへのデータ転送(プリフェッチ)動作が行われる。「DOUT」の期間では、チップMCからチャネルCh、中継チップIF経由でホストHAへのデータ転送動作が行われる。データ転送のためのコマンド発行動作とデータ転送動作とを含む処理をデータ転送処理と呼ぶことにすると、期間tTRは、データ転送処理が行われる期間である。
半導体装置1は、図4に示すように、チャネル間インタリーブ動作を行い得る。図4は、半導体装置1の動作を示す図であり、リード処理についてチャネルCh0,Ch1を交互に選択しながら行われるチャネル間インタリーブ動作を例示する。図4では、簡略化のためセンス動作の図示が省略されている。
チップイネーブル信号CE ̄(図4参照)は、チップをイネーブルするための信号であるが、ホストHAは、チャネルCh0,Ch1ごとに異なるチップイネーブル信号CE0 ̄,CE1 ̄を生成してホストチャネルHCh経由で半導体装置1へ送信する。チップイネーブル信号CE0 ̄は、チャネルCh0を選択するための信号としてホストHAから送信される。チップイネーブル信号CE0 ̄は、アクティブレベル(例えばローレベル)でチャネルCh0を選択すべきことを示し、ノンアクティブレベル(例えばハイレベル)でチャネルCh0を非選択にすべきことを示す。チップイネーブル信号CE1 ̄は、チャネルCh1を選択するための信号としてホストHAから送信される。チップイネーブル信号CE1 ̄は、アクティブレベル(例えばローレベル)でチャネルCh0を選択すべきことを示し、ノンアクティブレベル(例えばハイレベル)でチャネルCh0を非選択にすべきことを示す。
半導体装置1は、チップイネーブル信号CE0 ̄,CE1 ̄をホストチャネルHCh経由でホストHAから受信すると、チップイネーブル信号CE0 ̄,CE1 ̄のレベルに応じた動作を行う。
例えば、期間TP1が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択し、チップイネーブル信号CE1 ̄がノンアクティブに維持されることに応じてチャネルCh1を非選択に維持する。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「00h~30h」をチャネルCh0経由でデータ信号DQ[Ch0]としてチップMC0へ伝送する。
期間TP1が終了し期間TP2が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がノンアクティブレベルに遷移することに応じてチャネルCh0を非選択にし、チップイネーブル信号CE1 ̄がアクティブレベルに遷移することに応じてチャネルCh1を選択する。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「00h~30h」をチャネルCh1経由でデータ信号DQ[Ch1]としてチップMC1へ伝送する。
期間TP3~TP8において、期間TP1と同様の動作及び期間TP2と同様の動作を交互に行う。
期間TP8が終了し期間TP9が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択し、チップイネーブル信号CE1 ̄がノンアクティブレベルに遷移することに応じてチャネルCh1を非選択にする。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「05h~E0h」をチャネルCh0経由でデータ信号DQ[Ch0]としてチップMC0へ伝送する。
期間TP9が終了し期間TP10が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄をノンアクティブレベルに遷移することに応じてチャネルCh0を非選択にし、チップイネーブル信号CE1 ̄をアクティブレベルに遷移することに応じてチャネルCh1を選択する。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「05h~E0h」をチャネルCh1経由でデータ信号DQ[Ch1]としてチップMC1へ伝送する。
このとき、中継チップIFは、非選択のチャネルCh0を介してプリフェッチ動作を行う。すなわち、チップMC0の周辺回路3は、レジスタ4におけるカラムアドレスで指定されたリードデータを入出力回路5へ転送し、入出力回路5へ転送されたリードデータの少なくとも一部をデータ信号DQ[Ch0]として端子群6、チャネルCh0経由で中継チップIFへ転送する。中継チップIFは、転送されたデータ信号DQ[Ch0]を所定の回路で保持(プリフェッチ)する。
期間TP10が終了し期間TP11が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択し、チップイネーブル信号CE1 ̄がノンアクティブレベルに遷移することに応じてチャネルCh1を非選択にする。この状態で、中継チップIFは、中継チップIFを経由したホストHA及びチップMC0間のデータ転送動作を行う。中継チップIFは、期間TP11にプリフェッチされたデータ信号DQ[Ch0]をホストチャネルHCh経由でデータ信号DQ[HCh]としてホストHAへ伝送する。それと並行して、中継チップIFは、動作「DOUT」に応じて、チャネルCh0経由でチップMC0から転送されたデータ信号DQ[Ch0]を保持しながら、保持されたデータ信号DQをホストチャネルHCh経由でデータ信号DQ[HCh]としてホストHAへ伝送する。
このとき、中継チップIFは、非選択のチャネルCh1を介してプリフェッチ動作を行う。すなわち、チップMC1の周辺回路3は、レジスタ4におけるカラムアドレスで指定されたリードデータを入出力回路5へ転送し、入出力回路5へ転送されたリードデータの少なくとも一部をデータ信号DQ[Ch1]として端子群6、チャネルCh1経由で中継チップIFへ転送する。中継チップIFは、転送されたデータ信号DQ[Ch1]を所定の回路で保持(プリフェッチ)する。
ホストHAへのデータ伝送が完了すると、中継チップIFは、ホストチャネルHChを介して受けるコマンド「00h~30h」をチャネルCh0経由でデータ信号DQ[Ch0]としてチップMC0へ伝送する。また、中継チップIFは、ホストチャネルHChを介して受けるコマンド「05h~E0h」をチャネルCh0経由でデータ信号DQ[Ch0]としてチップMC0へ伝送する。
期間TP11が終了し期間TP12が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がノンアクティブレベルに遷移することに応じてチャネルCh0を非選択にし、チップイネーブル信号CE1 ̄がアクティブレベルに遷移することに応じてチャネルCh1を選択する。この状態で、中継チップIFは、中継チップIFを経由したホストHA及びチップMC1間のデータ転送動作を行う。中継チップIFは、期間TP11にプリフェッチされたデータ信号DQ[Ch1]をホストチャネルHCh経由でデータ信号DQ[HCh]としてホストHAへ伝送する。それと並行して、中継チップIFは、動作「DOUT」に応じて、チャネルCh1経由でチップMC1から転送されたデータ信号DQ[Ch1]を保持しながら、保持されたデータ信号DQをホストチャネルHCh経由でデータ信号DQ[HCh]としてホストHAへ伝送する。
このとき、中継チップIFは、非選択のチャネルCh0を介してプリフェッチ動作を行う。すなわち、チップMC0の周辺回路3は、レジスタ4におけるカラムアドレスで指定されたリードデータを入出力回路5へ転送し、入出力回路5へ転送されたリードデータの少なくとも一部をデータ信号DQ[Ch0]として端子群6、チャネルCh0経由で中継チップIFへ転送する。中継チップIFは、転送されたデータ信号DQ[Ch0]を所定の回路で保持(プリフェッチ)する。
ホストHAへのデータ伝送が完了すると、中継チップIFは、ホストチャネルHChを介して受けるコマンド「00h~30h」をチャネルCh1経由でデータ信号DQ[Ch1]としてチップMC1へ伝送する。また、中継チップIFは、ホストチャネルHChを介して受けるコマンド「05h~E0h」をチャネルCh1経由でデータ信号DQ[Ch1]としてチップMC1へ伝送する。
期間TP13~TP15において、期間TP11と同様の動作及び期間TP12と同様の動作を交互に行う。
図4に示す動作をチップごとに示すと図5のようになる。図5は、半導体装置1の動作をチップごとに示す波形図である。簡略化のため、チャネルCh0に接続されたチップMC0-1,MC0-2,MC0-3,MC0-4をチップ(1),(3),(5),(7)とも呼び、チャネルCh1に接続されたチップMC1-1,MC1-2,MC1-3,MC1-4をチップ(2),(4),(6),(8)とも呼ぶことにする。
期間TP9のコマンド「05h~E0h」でチャネルCh0のチップ(1)がアドレス指定される。期間TP10のコマンド「05h~E0h」でチャネルCh1のチップ(2)がアドレス指定される。期間TP11後半のコマンド「05h~E0h」でチャネルCh0のチップ(3)がアドレス指定される。期間TP12後半のコマンド「05h~E0h」でチャネルCh1のチップ(4)がアドレス指定される。期間TP13後半のコマンド「05h~E0h」でチャネルCh0のチップ(5)がアドレス指定される。期間TP14後半のコマンド「05h~E0h」でチャネルCh1のチップ(6)がアドレス指定される。期間TP15後半のコマンド「05h~E0h」でチャネルCh0のチップ(7)がアドレス指定される。期間TP16後半のコマンド「05h~E0h」でチャネルCh1のチップ(8)がアドレス指定される。
プリフェッチ動作を行うための期間tWHR2について、チップの番号(N)(N=1~8)を付してtWHR2(N)と表すことにする。期間tWHR2(1)=TP10であり、期間tWHR2(2)=TP11であり、期間tWHR2(3)=TP12であり、期間tWHR2(4)=TP13であり、期間tWHR2(5)=TP14であり、期間tWHR2(6)=TP15であり、期間tWHR2(7)=TP16であり、期間tWHR2(8)=TP17である。
図5に示すように、期間tWHR2(1)~tWHR2(8)は、排他的に、順次に開始・終了される。期間tWHR2(1)~tWHR2(8)は、チャネルCh0とチャネルCh1とについて、交互に開始・終了される。期間tWHR2(1)~tWHR2(8)では、非選択チャネルChを介してプリフェッチ動作が行われるとともに、選択チャネルChを介してコマンド発行等が行われる。これにより、期間tWHR2(1)~tWHR2(8)を隠蔽できる。
データ転送処理が行われる期間tTRについて、チップの番号(N)(N=1~8)を付してtTR(N)と表すことにする。期間tTR(1)=TP9~TP11前半であり、期間tTR(2)=TP10~TP12前半であり、期間tTR(3)=TP11後半~TP13前半であり、期間tTR(4)=TP12後半~TP14前半であり、期間tTR(5)=TP13後半~TP15前半であり、期間tTR(6)=TP14後半~TP16前半であり、期間tTR(7)=TP15後半~TP17前半であり、期間tTR(8)=TP16後半~TP18前半である。
図5に示すように、期間tTR(1)~tTR(8)は、パイプライン的に、順次に開始され、部分的に並行して進行し、順次に終了する。期間tTR(1)~tTR(8)は、チャネルCh0とチャネルCh1とについて、交互に開始され、交互に終了する。これにより、期間tWHR2(1)~tWHR2(8)を隠蔽しながら複数のチップ(1)~(8)のデータ転送処理を効率的に行うことができる。
なお、期間TP1のコマンド「00h~30h」でチャネルCh0のチップ(1)がアドレス指定される。期間TP2のコマンド「00h~30h」でチャネルCh1のチップ(2)がアドレス指定される。期間TP3のコマンド「00h~30h」でチャネルCh0のチップ(3)がアドレス指定される。期間TP4のコマンド「00h~30h」でチャネルCh1のチップ(4)がアドレス指定される。期間TP5のコマンド「00h~30h」でチャネルCh0のチップ(5)がアドレス指定される。期間TP6のコマンド「00h~30h」でチャネルCh1のチップ(6)がアドレス指定される。期間TP7のコマンド「00h~30h」でチャネルCh0のチップ(7)がアドレス指定される。期間TP8のコマンド「00h~30h」でチャネルCh1のチップ(8)がアドレス指定される。
センス動作を行うための期間tRについて、チップの番号(N)(N=1~8)を付してtR(N)と表すことにすると、期間tR(1)~tR(8)は、パイプライン的に、順次に開始され、互いに並行して進行し、順次に終了する。期間tR(1)~tR(8)は、チャネルCh0とチャネルCh1とについて、交互に開始され、交互に終了する。これにより、複数のチップ(1)~(8)のセンス動作を、チャネルCh0及びチャネルCh1間で互いに並行して行うことができる。
次に、リード処理におけるチャネル間インタリーブ動作を行うための中継チップIFの構成について図6を用いて説明する。図6は、中継チップIFの構成を示す図である。
中継チップIFは、切り替え回路11、切り替え回路12、FIFO回路(第1の転送回路)13、FIFO回路(第2の転送回路)14、発振器15、制御回路16、セレクタ17、セレクタ18、端子群21、及び端子群22を有する。
端子群21は、ホストチャネルHChを介してホストHAに接続可能である。ホストチャネルHChは、データ信号線DQ<7:0>、ストローブ信号線DQS,DQS ̄、リードイーブル信号線RE,RE ̄、チップイネーブル信号線CE0 ̄,CE1 ̄を含む。これに対応して、端子群21は、データ信号DQ<7:0>用の端子群21a、ストローブ信号DQS,DQS ̄用の端子群21b、リードイーブル信号RE,RE ̄用の端子群21c、チップイネーブル信号CE0 ̄用の端子21d、チップイネーブル信号CE1 ̄用の端子21eを含む。
端子群22は、チャネルCh0を介してチップMC0に接続可能であり、チャネルCh1を介してチップMC1に接続可能である。チャネルCh0は、データ信号線DQ0<7:0>、ストローブ信号線DQS0,DQS0 ̄、リードイーブル信号線RE0,RE0 ̄、チップイネーブル信号線CE0 ̄を含む。これに対応して、端子群22は、データ信号DQ0<7:0>用の端子群22a、ストローブ信号DQS0,DQS0 ̄用の端子群22b、リードイーブル信号RE0,RE0 ̄用の端子群22c、チップイネーブル信号CE0 ̄用の端子22dを含む。チャネルCh1は、データ信号線DQ1<7:0>、ストローブ信号線DQS1,DQS1 ̄、リードイーブル信号線RE1,RE1 ̄、チップイネーブル信号線CE1 ̄を含む。これに対応して、端子群22は、データ信号DQ1<7:0>用の端子群22e、ストローブ信号DQS1,DQS1 ̄用の端子群22f、リードイーブル信号RE1,RE1 ̄用の端子群22g、チップイネーブル信号CE1 ̄用の端子22hを含む。
FIFO(First In First Out)回路13は、端子群21a,21b,21cと端子群22a,22bとの間に配され、切り替え回路11及び切り替え回路12と端子群22a,22bとの間に電気的に接続される。FIFO回路13は、データノード13aが切り替え回路11を介して端子群21aに接続可能であり、クロックノード13bが切り替え回路12を介して端子群21cに接続可能であり、データノード13cが端子群22aに接続され、クロックノード13dが端子群22bに接続されている。
FIFO回路13は、双方向回路であり、複数段のキューを有する。FIFO回路13は、クロックノード13dで受けるリードイーブル信号RE,RE ̄がノンアクティブレベルに維持されることに応じて、複数段のキューに対して、データノード13a,13c間をバイパス接続させる。FIFO回路13は、データノード13aでデータ信号DQを受けると、データ信号DQをバイパス接続経由でデータノード13cから端子群22aへ転送する。あるいは、FIFO回路13は、データノード13cでデータ信号DQを受けると、データ信号DQをバイパス接続経由でデータノード13aから端子群21a側へ転送する。リード処理において、FIFO回路13は、クロックノード13bで受けるリードイーブル信号RE,RE ̄がトグルされることに応じて、バイパス接続を解除し、各キューのデータ信号DQを1段シフトさせるとともにデータノード13cで受けたデータ信号DQを先頭のキューにエンキューし、最後段のキューからデキューされたデータ信号DQをデータノード13aから端子群21a側へ転送する。
FIFO回路14は、端子群21a,21b,21cと端子群22e,22fとの間に配され、切り替え回路11及び切り替え回路12と端子群22e,22fとの間に電気的に接続される。FIFO回路14は、データノード14aが切り替え回路11を介して端子群21aに接続可能であり、クロックノード14bが切り替え回路12を介して端子群21cに接続可能であり、データノード14cが端子群22eに接続され、クロックノード14dが端子群22fに接続されている。
FIFO回路14は、双方向回路であり、複数段のキューを有する。FIFO回路14は、クロックノード14dで受けるリードイーブル信号RE,RE ̄がノンアクティブレベルに維持されることに応じて、複数段のキューに対して、データノード14a,14c間をバイパス接続させる。FIFO回路14は、データノード14aでデータ信号DQを受けると、データ信号DQをバイパス接続経由でデータノード14cから端子群22eへ転送する。あるいは、FIFO回路14は、データノード14cでデータ信号DQを受けると、データ信号DQをバイパス接続経由でデータノード14aから端子群21a側へ転送する。リード処理において、FIFO回路14は、クロックノード14bで受けるリードイーブル信号RE,RE ̄がトグルされることに応じて、バイパス接続を解除し、各キューのデータ信号DQを1段シフトさせるとともにデータノード14cで受けたデータ信号DQを先頭のキューにエンキューし、最後段のキューからデキューされたデータ信号DQをデータノード14aから端子群21a側へ転送する。
切り替え回路11は、チップイネーブル信号CE0 ̄及びチップイネーブル信号CE1 ̄に応じて、第1の接続状態と第2の接続状態とを切り替える。第1の接続状態は、端子群21aとFIFO回路13のデータノード13aとが接続された状態である。第2の接続状態は、端子群21aとFIFO回路14のデータノード14aとが接続された状態である。切り替え回路11は、チップイネーブル信号CE0 ̄がアクティブレベルでありチップイネーブル信号CE1 ̄がノンアクティブレベルであることに応じて第1の接続状態に切り替え、チップイネーブル信号CE0 ̄がノンアクティブレベルでありチップイネーブル信号CE1 ̄がアクティブレベルであることに応じて第2の接続状態に切り替える。
切り替え回路12は、チップイネーブル信号CE0 ̄及びチップイネーブル信号CE1 ̄に応じて、第3の接続状態と第4の接続状態とを切り替える。第3の接続状態は、端子群21cとFIFO回路13のクロックノード13bとが接続された状態である。第4の接続状態は、端子群21cとFIFO回路14のクロックノード14bとが接続された状態である。切り替え回路12は、チップイネーブル信号CE0 ̄がアクティブレベルでありチップイネーブル信号CE1 ̄がノンアクティブレベルであることに応じて第3の接続状態に切り替え、チップイネーブル信号CE0 ̄がノンアクティブレベルでありチップイネーブル信号CE1 ̄がアクティブレベルであることに応じて第4の接続状態に切り替える。
発振器15は、出力ノード15aが制御回路16に電気的に接続されている。制御回路16は、入力ノード16aが発振器15に接続され、出力ノード群16bが端子群22cに接続され、出力ノード16cがセレクタ17に接続され、出力ノード群16dが端子群22gに接続され、出力ノード16eがセレクタ18に接続される。セレクタ17は、入力ノード17aが端子21dに接続され、入力ノード17bが制御回路16に接続され、出力ノード17cが端子22dに接続される。セレクタ18は、入力ノード18aが端子21eに接続され、入力ノード18bが制御回路16に接続され、出力ノード18cが端子22hに接続される。
制御回路16は、チップイネーブル信号CE0 ̄がアクティブレベルでありチップイネーブル信号CE1 ̄がノンアクティブレベルであることに応じて、トグルするリードイネーブル信号RE0,RE0 ̄を生成してチップMC0へ供給し、トグルするリードイネーブル信号RE1,RE1 ̄及びアクティブレベルのチップイネーブル信号CE1 ̄を生成してチップMC1へ供給する。制御回路16は、チップイネーブル信号CE0 ̄がノンアクティブレベルでありチップイネーブル信号CE1 ̄がアクティブレベルであることに応じて、トグルするリードイネーブル信号RE0,RE0 ̄及びアクティブレベルのチップイネーブル信号CE0 ̄を生成してチップMC0へ供給し、トグルするリードイネーブル信号RE1,RE1 ̄を生成してチップMC1へ供給する。
これにより、中継チップIFは、非選択のチャネルChに接続されたチップMCにアクティブレベルのチップイネーブル信号を供給することができる。また、中継チップIFは、ホストHAから受けるチップイネーブル信号RE,RE ̄に代えて、制御回路16で生成したリードイネーブル信号RE0,RE0 ̄,RE1,RE1 ̄をチップMC0,MC1へ供給することができる。すなわち、中継チップIFは、チャネルCh経由でチップMCへ供給するリードイネーブル信号をホストHAのリードイネーブル信号RE,RE ̄から制御回路16のリードイネーブル信号RE0,RE0 ̄,RE1,RE1 ̄に載せ替えることができる。
例えば、中継チップIFは、図7に示すように動作し得る。図7は、中継チップIFの動作を示す図である。図7(a)~図7(d)では、図4に示す期間TP11~TP12における中継チップIFの動作について例示する。
期間TP11になると、チップイネーブル信号CE0 ̄がアクティブレベルに遷移しチップイネーブル信号CE1 ̄がノンアクティブレベルに遷移することに応じて、図7(c)に示すように、切り替え回路11が第1の接続状態に切り替え、切り替え回路12が第3の接続状態に切り替える。
リードイネーブル信号RE,RE ̄は、トグルされる。中継チップIFは、リードイネーブル信号RE,RE ̄をデータストローブ信号DQS/DQS ̄としてホストHAへ送信する。セレクタ17は、入力ノード17aを選択し、端子群21で受けたチップイネーブル信号CE0 ̄をチャネルCh0経由でチップMC0へ転送する。FIFO回路13は、トグルされたリードイネーブル信号RE,RE ̄に応じて、プリフェッチされたリードデータの一部をホストHAへ送信する。また、制御回路16は、発振器15からの発振信号を用いて、トグルさせたリードイーブル信号RE0,RE0 ̄を生成しチャネルCh0経由でチップMC0へ供給する。チップMC0は、リードデータの残りの部分及びデータストローブ信号DQS0,DQS0 ̄をチャネルCh0経由でFIFO回路13へ転送する。FIFO回路13は、データストローブ信号DQS0,DQS0 ̄に応じて、転送されたリードデータを保持し、トグルされたリードイネーブル信号RE,RE ̄に応じて、保持されたリードデータをホストHAへ送信する。
それと並行して、制御回路16は、発振信号を用いてトグルさせたリードイーブル信号RE1,RE1 ̄を生成するとともに、アクティブレベルのチップイネーブル信号CE1 ̄を生成する。制御回路16は、リードイーブル信号RE1,RE1 ̄をチャネルCh1経由でチップMC1へ転送する。セレクタ18は、入力ノード18bを選択し、制御回路16で生成されたチップイネーブル信号CE1 ̄をチャネルCh1経由でチップMC1へ転送する。これに応じて、チップMC1は、リードデータの少なくとも一部及びデータストローブ信号DQS1,DQS1 ̄をチャネルCh1経由でFIFO回路14へ転送する。FIFO回路14は、データストローブ信号DQS1,DQS1 ̄に応じて、チャネルCh1経由で転送されたリードデータを保持(プリフェッチ)する。
期間TP11の後半では、図7(b)に示すように、リードイネーブル信号RE,RE ̄は、トグルを終了し、ノンアクティブレベルに維持される。セレクタ17は、入力ノード17aを選択し、端子群21で受けたチップイネーブル信号CE0 ̄をチャネルCh0経由でチップMC0へ転送する。これに応じて、FIFO回路13は、「00h~30h」、「05h~E0h」を、順次に、データ信号DQとしてチャネルCh0経由でチップMC0へ転送する。
このとき、FIFO回路14は、チャネルCh1経由で転送されたリードデータのプリフェッチを完了している。
期間TP12になると、図7(c)に示すように、チップイネーブル信号CE0 ̄がノンアクティブレベルに遷移しチップイネーブル信号CE1 ̄がアクティブレベルに遷移することに応じて、切り替え回路11が第2の接続状態に切り替え、切り替え回路12が第4の接続状態に切り替える。
リードイネーブル信号RE,RE ̄は、トグルされる。中継チップIFは、リードイネーブル信号RE,RE ̄をデータストローブ信号DQS/DQS ̄としてホストHAへ送信する。セレクタ18は、入力ノード18aを選択し、端子群21で受けたチップイネーブル信号CE1 ̄をチャネルCh1経由でチップMC1へ転送する。FIFO回路14は、トグルされたリードイネーブル信号RE,RE ̄に応じて、プリフェッチされたリードデータの一部をホストHAへ送信する。また、制御回路16は、発振器15からの発振信号を用いて、トグルさせたリードイーブル信号RE1,RE1 ̄を生成しチャネルCh1経由でチップMC1へ供給する。チップMC1は、リードデータの残りの部分及びデータストローブ信号DQS1,DQS1 ̄をチャネルCh1経由でFIFO回路14へ転送する。FIFO回路14は、データストローブ信号DQS1,DQS1 ̄に応じて、転送されたリードデータを保持し、トグルされたリードイネーブル信号RE,RE ̄に応じて、保持されたリードデータをホストHAへ送信する。
それと並行して、制御回路16は、発振信号を用いてトグルさせたリードイーブル信号RE0,RE0 ̄を生成するとともに、アクティブレベルのチップイネーブル信号CE0 ̄を生成する。制御回路16は、リードイーブル信号RE0,RE0 ̄をチャネルCh0経由でチップMC0へ転送する。セレクタ17は、入力ノード17bを選択し、制御回路16で生成されたチップイネーブル信号CE0 ̄をチャネルCh0経由でチップMC0へ転送する。これに応じて、チップMC0は、リードデータの少なくとも一部及びデータストローブ信号DQS0,DQS0 ̄をチャネルCh0経由でFIFO回路13へ転送する。FIFO回路13は、データストローブ信号DQS0,DQS0 ̄に応じて、転送されたリードデータを保持(プリフェッチ)する。
期間TP12の後半では、図7(d)に示すように、リードイネーブル信号RE,RE ̄は、トグルを終了し、ノンアクティブレベルに維持される。セレクタ18は、入力ノード18aを選択し、端子群21で受けたチップイネーブル信号CE1 ̄をチャネルCh1経由でチップMC1へ転送する。これに応じて、FIFO回路14は、「00h~30h」、「05h~E0h」を、順次に、データ信号DQとしてチャネルCh1経由でチップMC1へ転送する。
以上のように、第1の実施形態では、半導体装置1において、中継チップIFが複数のチャネルCh0,Ch1を介して複数のチップMC0,MC1に並行にアクセスする動作(すなわち、チャネル間インタリーブ動作)を可能にする。これにより、例えば、リード処理において、プリフェッチ動作するための期間tWHR2を隠蔽しながら中継チップIFを介したホストHA及び複数のチップMC0,MC1間のデータ転送を実現できる。この結果、中継チップIFを介したホストHA及び複数のチップMC0,MC1間のデータ転送性能を容易に向上できる。
なお、リード処理におけるチャネル間インタリーブ動作を行うための中継チップIFの構成は、図8に示すように、ホストHAのリードイネーブル信号RE,RE ̄を通過させる構成であってもよい。図8は、第1の実施形態に変形例における中継チップIFの構成を示す図である。図8に示す中継チップIFは、セレクタ19、セレクタ20が追加され、切り替え回路12からFIFO回路13,14へ延びたラインが分岐してセレクタ19、セレクタ20に延びている点で図6に示す中継チップIFと異なる。セレクタ19は、入力ノード19aが切り替え回路12に接続され、入力ノード19bが制御回路16に接続され、出力ノード19cが端子22cに接続される。セレクタ20は、入力ノード20aが切り替え回路12に接続され、入力ノード20bが制御回路16に接続され、出力ノード20cが端子22gに接続される。
中継チップIFは、切り替え回路12が第3の接続状態に切り替えセレクタ19が入力ノード19aを選択している場合、ホストHAからのリードイネーブル信号RE,RE ̄を通過させ、リードイネーブル信号RE0,RE0 ̄としてチャネルCh0経由でチップMC0へ供給する。中継チップIFは、切り替え回路12が第4の接続状態に切り替えセレクタ20が入力ノード20aを選択している場合、ホストHAからのリードイネーブル信号RE,RE ̄を通過させ、リードイネーブル信号RE1,RE1 ̄としてチャネルCh1経由でチップMC1へ供給する。
また、図8に示す中継チップIFの動作は、図9に示すように、次の点で図6に示す中継チップIFと異なる。図9(a)~図9(d)では、図4に示す期間TP11~TP12における中継チップIFの動作について例示するが、図7(a)~図7(d)と同様の部分については説明を省略する。
図9(a)に示すように、リードイネーブル信号RE,RE ̄がトグルされると、中継チップIFがトグルされたリードイネーブル信号RE,RE ̄をデータストローブ信号DQS/DQS ̄としてホストHAへ送信するとともに切り替え回路12経由でFIFO回路13へ転送する点は、図6に示す中継チップIFと同様である。中継チップIFは、トグルされたリードイネーブル信号RE,RE ̄を切り替え回路12経由でセレクタ19へ供給する。セレクタ19は、入力ノード19aを選択し、トグルされたリードイネーブル信号RE,RE ̄をリードイネーブル信号RE0,RE0 ̄としてチャネルCh0経由でチップMC0へ転送する。
このとき、セレクタ20は、入力ノード20bを選択し、トグルされたリードイネーブル信号RE1,RE1 ̄を制御回路16から受けてチャネルCh1経由でチップMC1へ転送する。これに応じて、チップMC1がリードデータの少なくとも一部をチャネルCh1経由でFIFO回路14へ転送し、FIFO回路14がチャネルCh1経由で転送されたリードデータを保持(プリフェッチ)する点は、図6に示す中継チップIFと同様である。
その後、図9(b)に示すように、リードイネーブル信号RE,RE ̄は、トグルを終了し、ノンアクティブレベルに維持される。このとき、セレクタ20は、入力ノード20bを選択しており、トグルされたリードイネーブル信号RE1,RE1 ̄を制御回路16から受けてチャネルCh1経由でチップMC1へ転送している。
図9(c)に示すように、リードイネーブル信号RE,RE ̄がトグルされると、中継チップIFがトグルされたリードイネーブル信号RE,RE ̄をデータストローブ信号DQS/DQS ̄としてホストHAへ送信するとともに切り替え回路12経由でFIFO回路14へ転送する点は、図6に示す中継チップIFと同様である。中継チップIFは、トグルされたリードイネーブル信号RE,RE ̄を切り替え回路12経由でセレクタ20へ供給する。セレクタ20は、入力ノード20aを選択し、トグルされたリードイネーブル信号RE,RE ̄をリードイネーブル信号RE1,RE1 ̄としてチャネルCh1経由でチップMC1へ転送する。
このとき、セレクタ19は、入力ノード19bを選択し、トグルされたリードイネーブル信号RE0,RE0 ̄を制御回路16から受けてチャネルCh0経由でチップMC0へ転送する。これに応じて、チップMC0がリードデータの少なくとも一部をチャネルCh0経由でFIFO回路13へ転送し、FIFO回路13がチャネルCh0経由で転送されたリードデータを保持(プリフェッチ)する点は、図6に示す中継チップIFと同様である。
その後、図9(d)に示すように、リードイネーブル信号RE,RE ̄は、トグルを終了し、ノンアクティブレベルに維持される。このとき、セレクタ19は、入力ノード19bを選択しており、トグルされたリードイネーブル信号RE0,RE0 ̄を制御回路16から受けてチャネルCh0経由でチップMC0へ転送している。
このように、図8に示す中継チップIFによっても、リード処理におけるチャネル間インタリーブ動作を行うことができる。
(第2の実施形態)
次に、第2の実施形態にかかる半導体装置1について説明する。以下では、第1の実施形態と異なる部分を中心に説明する。
第1の実施形態では、チャネル間インタリーブ動作の機能によるリード処理の期間tWHR2を隠蔽する動作を例示しているが、第2の実施形態では、チャネル間インタリーブ動作の機能によるリード処理のデータ転送を高速化する動作を例示する。
例えば、ホストチャネルHChの限界速度が各チャネルCh0,Ch1の限界速度の2倍である場合、半導体装置1は、図10に示す動作により、半導体装置1内のデータ転送を倍速化することが可能である。図10は、第2の実施形態にかかる半導体装置1の動作を示す波形図であり、図4、図5に示す期間TP9~TP14に対応する期間の動作を例示する。
図10では、動作「DOUT」の終了タイミングがチャネルChとホストチャネルHChとでほぼ揃うような工夫を行う。ホストチャネルHChの限界速度がチャネルChの限界速度の2倍であることを考慮し、中継チップIFでプリフェッチされるデータ量がホストHAへ転送すべきデータ量の半分となっている。図10では、ホストHAへ転送すべきデータ量が16kBであり、中継チップIFでプリフェッチされるデータ量が8kBである場合が例示されている。
図10に示す期間TP28~TP34の動作は、図5に示す期間TP8~TP14の動作に対応する。ただし、期間TP31の動作は、チップイネーブル信号CE0 ̄がノンアクティブレベルからアクティブレベルへ遷移するタイミングが期間TP31の開始より遅れたタイミングt21となっている点で、図5に示す期間TP11の動作と異なる。なお、図10では、簡略化のため、コマンド「00h~30h」の図示が省略されている。
期間TP28が終了し期間TP29が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択し、チップイネーブル信号CE1 ̄がノンアクティブレベルに遷移することに応じてチャネルCh1を非選択にする。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「05h~E0h」をチャネルCh0経由でデータ信号DQ[Ch0]としてチップ(1)へ伝送する。
タイミングt20になると、期間TP29が終了し期間TP30が開始する。中継チップIFは、チップイネーブル信号CE0 ̄がノンアクティブレベルに遷移することに応じてチャネルCh0を非選択にし、チップイネーブル信号CE1 ̄がアクティブレベルに遷移することに応じてチャネルCh1を選択する。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「05h~E0h」をチャネルCh1経由でデータ信号DQ[Ch1]としてチップ(2)へ伝送する。
このとき、中継チップIFは、チップ(1)について、非選択のチャネルCh0を介してプリフェッチ動作を開始する。すなわち、チップ(1)は、リードデータの少なくとも一部をデータ信号DQ[Ch0]としてチャネルCh0経由で中継チップIFへ転送する。中継チップIFは、転送されたデータ信号DQ[Ch0]をFIFO回路13で保持(プリフェッチ)し始める。
期間TP30が終了し期間TP31が開始すると、チップ(1)についてプリフェッチ動作が継続中であることに応じて、チップイネーブル信号CE0 ̄がノンアクティブレベルに維持される。これに応じて、中継チップIFは、チャネルCh0を非選択に維持する。それとともに、中継チップIFは、チップイネーブル信号CE1 ̄がノンアクティブレベルに遷移することに応じて、チャネルCh1を非選択にする。
このとき、中継チップIFは、チップ(2)について、非選択のチャネルCh1を介してプリフェッチ動作を開始する。すなわち、チップ(2)は、リードデータの少なくとも一部をデータ信号DQ[Ch1]としてチャネルCh1経由で中継チップIFへ転送する。中継チップIFは、転送されたデータ信号DQ[Ch1]をFIFO回路14で保持(プリフェッチ)し始める。
タイミングt21になると、チップ(1)についてのプリフェッチ動作が完了する。中継チップIFは、チップイネーブル信号CE1 ̄がノンアクティブレベルに維持されることに応じてチャネルCh1を非選択に維持し、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択する。中継チップIFは、プリフェッチされたチップ(1)のデータ信号DQをホストチャネルHCh経由でデータ信号DQ[HCh]としてホストHAへ伝送する。それと並行して、中継チップIFは、動作「DOUT」に応じて、チャネルCh0経由でチップ(1)から転送されたデータ信号DQをFIFO回路13で保持しながら複数段のキューの間で内部的にシフトさせる。このとき、中継チップIFは、チップ(2)についてのプリフェッチ動作を継続している。
タイミングt22になると、プリフェッチされたチップ(1)のデータ信号DQのホストHAへの転送が完了する。中継チップIFは、タイミングt21から転送され始めたチップ(1)のデータ信号DQを、ホストチャネルHCh経由でデータ信号DQ[HCh]としてホストHAへ伝送し始める。このとき、中継チップIFは、チップ(2)についてのプリフェッチ動作を完了している。
タイミングt23になると、チップ(1)からチャネルCh0を介した中継チップIFへのデータ信号DQの転送が完了する。中継チップIFは、チャネルCh0経由でチップ(1)から転送されたデータ信号DQをFIFO回路13で保持しながら複数段のキューの間で内部的にシフトさせ、その後、チップ(1)のデータ信号DQのホストHAへの伝送を完了する。データ信号DQのFIFO回路13における内部的なシフト動作の期間が無視できる場合、チップ(1)のデータ信号DQの中継チップIFへの転送完了のタイミングとホストHAへの伝送完了のタイミングとをほぼ同時にすることができる。
ここで、チップ(1)のデータ信号DQについて、中継チップIFは、転送すべきデータ量の半分をチャネルCh0の非選択期間(例えば、タイミングt20~t21の期間)にプリフェッチしておき、チャネルCh0の選択期間(例えば、タイミングt21~t23の期間)のホストHAへのデータ転送に用いる。これにより、チャネルCh0を介したデータ転送量が8kBであるタイミングt21~t23の期間におけるホストHAへのデータ転送量をその2倍の16kBにすることができる。すなわち、リード処理において、実質的に、半導体装置1内のチャネルCh0を介したデータ転送を、チャネルCh0の速度限界を超越して倍速化することができる。
チップ(2)のデータ信号DQについて、中継チップIFは、転送すべきデータ量の半分をチャネルCh1の非選択期間(例えば、期間TP31の前半)にプリフェッチしておき、チャネルCh1の選択期間(例えば、タイミングt24~t25の期間)のホストHAへのデータ転送に用いる。これにより、チャネルCh1を介したデータ転送量が8kBであるタイミングt24~t25の期間におけるホストHAへのデータ転送量をその2倍の16kBにすることができる。すなわち、リード処理において、実質的に、半導体装置1内のチャネルCh1を介したデータ転送を、チャネルCh1の速度限界を超越して倍速化することができる。
チップ(3)以降のデータ信号DQについても、チップ(1)又は(2)のデータ信号DQについてと同様である。
以上のように、第2の実施形態では、半導体装置1において、チャネル間インタリーブ動作の機能により、リード処理における半導体装置1内のチャネルChを介したデータ転送を、チャネルChの速度限界を超越して高速化することができる。
(第3の実施形態)
次に、第3の実施形態にかかる半導体装置1について説明する。以下では、第1の実施形態及び第2の実施形態と異なる部分を中心に説明する。
第1の実施形態では、チャネル間インタリーブ動作の機能によるリード処理を例示しているが、第3の実施形態では、チャネル間インタリーブ動作の機能によるライト処理を例示する。
例えば、各チップMCのメモリセルアレイ2に対するライト処理は、図11に示すようなシーケンスで行われる。図11は、ライト処理のシーケンスを示す図であり、ライト処理においてホストHA及び半導体装置1間でやり取りされる各信号の波形を示す。
ライト処理のシーケンスでは、図11(a)に示すように各信号が遷移する。タイミングt31において、チップイネーブル信号CE ̄がアサートされ、コマンドラッチイネーブル信号CLEがアサートされると、ホストHAから半導体装置1へ、データ信号DQxとして、プログラム開始コマンド「80h」が伝送される。
タイミングt32において、コマンドラッチイネーブル信号CLEがデアサートされ、アドレスラッチイネーブル信号ALEがアサートされると、ホストHAから半導体装置1へ、データ信号DQxとして、カラムアドレス及びロウアドレスなどのアドレス「ADD」が伝送される。
タイミングt33において、アドレスラッチイネーブル信号ALEがデアサートされ、タイミングt34において、ホストHAから半導体装置1へのデータストローブ信号DQS/DQS ̄がトグルし始める。
これに応じて、t35~t36の期間において、ホストHAから半導体装置1へ、データ信号DQxとして、ライトデータが伝送される。すなわち、チップMCの周辺回路3は、入出力回路5で受けたライトデータをレジスタ4へ転送して保持する。
タイミングt37において、コマンドラッチイネーブル信号CLEがアサートされると、ホストHAから半導体装置1へ、データ信号DQxとして、プログラム実行コマンド「10h」が伝送される。
これに応じて、タイミングt38~t39の期間tPROGにおいて、半導体装置1は、プログラム(Program)動作を行う。すなわち、チップMCの周辺回路3は、ライトデータをレジスタ4からメモリセルアレイ2側へ転送し、プログラム動作を行う。チップMCの周辺回路3は、メモリセルアレイ2におけるロウアドレスで指定されたメモリセル群の指定されたページに対してライトデータをライトする。
以下では、図11(a)に示すライト処理のコマンドシーケンスを図11(b)のように簡略化して示すことにする。すなわち、タイミングt31~t33のコマンドを「80h~」で表し、タイミングt35~t36の動作を「DIN」で表し、タイミングt37~t38のコマンドを「10h」で表すことにする。なお、コマンドに応じた動作として、タイミングt38~t39の期間tPROGでは、「10h」に応じたプログラム(Program)動作が行われる。また、「80h~」の期間、「DIN」の期間を含む期間をtTR’とする。「80h~」の期間では、データ転送のためのコマンドが発行される。「DIN」の期間では、ホストHAから中継チップIF及びチャネルCh経由でチップMCへのデータ転送動作が行われる。データ転送のためのコマンド発行動作とデータ転送動作とを含む処理をデータ転送処理と呼ぶことにすると、期間tTR’は、データ転送処理が行われる期間である。
半導体装置1は、図12に示すように、ライト処理についてチャネル間インタリーブ動作を行い得る。図12は、半導体装置1の動作を示す図であり、ライト処理についてチャネルCh0,Ch1を交互に選択しながら行われるチャネル間インタリーブ動作を例示する。図12では、簡略化のためプログラム動作の図示が省略されている。
チップイネーブル信号CE ̄(図11(a)参照)は、チップをイネーブルするための信号であるが、ホストHAは、チャネルCh0,Ch1ごとに異なるチップイネーブル信号CE0 ̄,CE1 ̄を生成してホストチャネルHCh経由で半導体装置1へ送信する。チップイネーブル信号CE0 ̄は、チャネルCh0を選択するための信号としてホストHAから送信される。チップイネーブル信号CE1 ̄は、チャネルCh1を選択するための信号としてホストHAから送信される。半導体装置1は、チップイネーブル信号CE0 ̄,CE1 ̄をホストチャネルHCh経由でホストHAから受信すると、チップイネーブル信号CE0 ̄,CE1 ̄のレベルに応じた動作を行う。
図12では、動作「DIN」の開始タイミングがホストチャネルHChとチャネルChとでほぼ揃う。ホストチャネルHChの限界速度がチャネルChの限界速度の2倍であることを考慮し、中継チップIFで保持可能なデータ量がホストHAから転送されるデータ量の半分以上となっている。図12では、ホストHAから転送されるデータ量が16kBであり、中継チップIFで保持可能なデータ量が8kB以上である場合が例示されている。
図12では、半導体装置1の動作をチップごとに示す。簡略化のため、チャネルCh0に接続されたチップMC0-1,MC0-2,MC0-3,MC0-4をチップ(1),(3),(5),(7)とも呼び、チャネルCh1に接続されたチップMC1-1,MC1-2,MC1-3,MC1-4をチップ(2),(4),(6),(8)とも呼ぶことにする。
期間TP41のコマンド「80h~」でチャネルCh0のチップ(1)がアドレス指定される。期間TP42のコマンド「80h~」でチャネルCh1のチップ(2)がアドレス指定される。期間TP43のコマンド「80h~」でチャネルCh0のチップ(3)がアドレス指定される。期間TP44のコマンド「80h~」でチャネルCh1のチップ(4)がアドレス指定される。期間TP45のコマンド「80h~」でチャネルCh0のチップ(5)がアドレス指定される。
データ転送処理が行われる期間tTR’について、チップの番号(N)(N=1~8)を付してtTR’(N)と表すことにすると、期間tTR’(1)~tTR’(8)は、パイプライン的に、順次に開始され、部分的に並行して進行し、順次に終了する。期間tTR’(1)~tTR’(8)は、チャネルCh0とチャネルCh1とについて、交互に開始され、交互に終了する。これにより、複数のチップ(1)~(8)のデータ転送動作を効率的に行うことができる。
例えば、期間TP41が開始すると、中継チップIFは、チップイネーブル信号CE1 ̄がノンアクティブレベルに維持されることに応じてチャネルCh1を非選択に維持し、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択する。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「80h~」をチャネルCh0経由でデータ信号DQ[Ch0]としてチップ(1)へ伝送する。
タイミングt41になると、データストローブ信号DQS/DQS ̄がトグルし始め、ホストチャネルHCh経由でホストHAから中継チップIFへチップ(1)のライトデータが伝送され始める。中継チップIFは、動作「DIN」に応じて、ホストチャネルHCh経由でホストHAから受けたライトデータを、チャネルCh0経由でデータ信号DQ[Ch0]としてチップ(1)へ伝送し始める。すなわち、中継チップIFは、チャネルCh0を介したライトデータのデータ転送動作を開始する。
タイミングt42になると、ホストチャネルHChを介したホストHAから中継チップIFへのライトデータの伝送が完了することに応じて、期間TP41が終了し期間TP42が開始する。中継チップIFは、チップイネーブル信号CE0 ̄がノンアクティブレベルに遷移することに応じてチャネルCh0を非選択にし、チップイネーブル信号CE1 ̄がアクティブレベルに遷移することに応じてチャネルCh1を選択する。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「80h~」をチャネルCh1経由でデータ信号DQ[Ch1]としてチップ(2)へ伝送する。
このとき、中継チップIFは、チップ(1)について、転送すべき残りの半分のデータ量のライトデータを保持しているとともに、非選択のチャネルCh0を介したライトデータのデータ転送動作を継続している。
タイミングt43になると、データストローブ信号DQS/DQS ̄がトグルし始め、ホストチャネルHCh経由でホストHAから中継チップIFへチップ(2)のライトデータが伝送され始める。中継チップIFは、動作「DIN」に応じて、ホストチャネルHCh経由でホストHAから受けたライトデータを、チャネルCh1経由でデータ信号DQ[Ch1]としてチップ(2)へ伝送し始める。すなわち、中継チップIFは、チャネルCh1を介したチップ(2)のライトデータのデータ転送動作を開始する。
このとき、中継チップIFは、非選択のチャネルCh0を介したチップ(1)のライトデータのデータ転送動作を継続している。
タイミングt44になると、非選択のチャネルCh0を介したチップ(1)のライトデータのデータ転送動作を完了する。
ここで、チップ(1)のデータ信号DQについて、中継チップIFは、転送すべき全データ量をチャネルCh0の選択期間(例えば、タイミングt41~t42の期間)にホストHAから受け、その期間内に半分のデータ量をチップ(1)へ転送し、チャネルCh0の非選択期間(例えば、タイミングt42~t44の期間)に残りの半分のデータ量をチップ(1)へ転送する。これにより、チャネルCh0を介したデータ転送量が8kBであるタイミングt41~t42の期間におけるホストHAからのデータ転送量をその2倍の16kBにすることができる。すなわち、ライト処理において、実質的に、半導体装置1内のチャネルCh0を介したデータ転送を、チャネルCh0の速度限界を超越して倍速化することができる。
チップ(2)のデータ信号DQについて、中継チップIFは、転送すべき全データ量をチャネルCh1の選択期間(例えば、タイミングt43~t45の期間)にホストHAから受け、その期間内に半分のデータ量をチップ(2)へ転送し、チャネルCh1の非選択期間(例えば、タイミングt45~t47の期間)に残りの半分のデータ量をチップ(2)へ転送する。これにより、チャネルCh1を介したデータ転送量が8kBであるタイミングt43~t45の期間におけるホストHAからのデータ転送量をその2倍の16kBにすることができる。すなわち、ライト処理において、実質的に、半導体装置1内のチャネルCh1を介したデータ転送を、チャネルCh1の速度限界を超越して倍速化することができる。
チップ(3)以降のデータ信号DQについても、チップ(1)又は(2)のデータ信号DQと同様である。
なお、プログラム動作を行うための期間tPROGについて、チップの番号(N)(N=1~8)を付してtPROG(N)と表すことにすると、期間tPROG(1)~tPROG(6),tPROG(7),tPROG(8)は、期間tTR’(3)~tTR’(8),tTR’(1),tTR’(2)に重複する。これにより、複数のチップ(1)~(8)のプログラム動作を、中継チップIF及び複数のチップ(1)~(8)間のデータ転送動作に並行して行うことができる。
次に、ライト処理におけるチャネル間インタリーブ動作を行うための中継チップIFの構成について図13を用いて説明する。図13は、中継チップIFの構成を示す図である。
図13に示す中継チップIFは、制御回路16(図6参照)に代えて、制御回路116を有する。図13では、端子群21におけるライト処理で使用されない端子群21cの図示が省略され、端子群22におけるライト処理で使用されない端子群22c,22gの図示が省略されている。制御回路116は、出力ノード群116bが端子群22bに接続され、出力ノード群116dが端子群22fに接続される。
制御回路116は、チップイネーブル信号CE0 ̄がアクティブレベルでありチップイネーブル信号CE1 ̄がノンアクティブレベルであることに応じて、トグルするデータストローブ信号DQS1,DQS1 ̄及びアクティブレベルのチップイネーブル信号CE1 ̄を生成してチップMC1へ供給する。制御回路116は、チップイネーブル信号CE0 ̄がノンアクティブレベルでありチップイネーブル信号CE1 ̄がアクティブレベルであることに応じて、トグルするデータストローブ信号DQS0,DQS0 ̄及びアクティブレベルのチップイネーブル信号CE0 ̄を生成してチップMC0へ供給する。
例えば、中継チップIFは、図14に示すように動作し得る。図14は、中継チップIFの動作を示す図である。図14(a)~図14(d)では、図12に示す期間TP42~TP43における中継チップIFの動作について例示する。
期間TP41が終了し期間TP42が開始すると、チップイネーブル信号CE0 ̄がノンアクティブレベルに遷移しチップイネーブル信号CE1 ̄がアクティブレベルに遷移することに応じて、図14(a)に示すように、切り替え回路11が第2の接続状態に切り替え、切り替え回路12が第4の接続状態に切り替える。
データストローブ信号DQS,DQS ̄は、ノンアクティブレベルに維持される。セレクタ18は、入力ノード18aを選択し、端子群21で受けたチップイネーブル信号CE1 ̄をチャネルCh1経由でチップMC1へ転送する。これに応じて、FIFO回路14は、「80h~」をデータ信号DQとしてチャネルCh1経由でチップMC1へ転送する。
このとき、制御回路116は、発振器15からの発振信号を用いて、トグルさせたデータストローブ信号DQS0,DQS0 ̄を生成しFIFO回路13へ供給する。それとともに、制御回路116は、アクティブレベルのチップイネーブル信号CE0 ̄を生成する。制御回路116は、データストローブ信号DQS0,DQS0 ̄及びチップイネーブル信号CE0 ̄をチャネルCh0経由でチップMC0へ供給する。これに応じて、FIFO回路13は、転送すべきライトデータを保持しながら、チャネルCh0を介したライトデータのチップMC0への転送を継続している。
図14(b)に示すように、データストローブ信号DQS/DQS ̄がトグルし始めると、FIFO回路14は、トグルされたデータストローブ信号DQS/DQS ̄に応じて、ホストHAからのデータ信号DQをライトデータとして保持しながらチャネルCh1経由でチップMC1へ転送する。このとき、FIFO回路13は、転送すべきライトデータを保持しながら、チャネルCh0を介したライトデータのチップMC0への転送を継続している。
その後、FIFO回路13は、チャネルCh0を介したライトデータのチップMC0への転送を完了させる。このとき、制御回路116は、発振器15からの発振信号を用いて、トグルさせたデータストローブ信号DQS1,DQS1 ̄を生成しFIFO回路14へ供給する。FIFO回路14は、転送すべきライトデータを保持しながら、チャネルCh1を介したライトデータのチップMC1への転送を継続している。
期間TP42が終了し期間TP43が開始すると、チップイネーブル信号CE0 ̄がアクティブレベルに遷移しチップイネーブル信号CE1 ̄がノンアクティブレベルに遷移することに応じて、図14(c)に示すように、切り替え回路11が第1の接続状態に切り替え、切り替え回路12が第3の接続状態に切り替える。
データストローブ信号DQS,DQS ̄は、ノンアクティブレベルに維持される。セレクタ17は、入力ノード17aを選択し、端子群21で受けたチップイネーブル信号CE0 ̄をチャネルCh0経由でチップMC0へ転送する。これに応じて、FIFO回路13は、「10h~」、「80h~」を、順次に、データ信号DQとしてチャネルCh0経由でチップMC0へ転送する。
このとき、制御回路116は、発振器15からの発振信号を用いて、トグルさせたデータストローブ信号DQS1,DQS1 ̄を生成しFIFO回路14へ供給する。それとともに、制御回路116は、アクティブレベルのチップイネーブル信号CE1 ̄を生成する。制御回路116は、データストローブ信号DQS1,DQS1 ̄及びチップイネーブル信号CE1 ̄をチャネルCh1経由でチップMC1へ供給する。これに応じて、FIFO回路14は、転送すべきライトデータを保持しながら、チャネルCh1を介したライトデータのチップMC1への転送を継続している。
図14(d)に示すように、データストローブ信号DQS/DQS ̄がトグルし始めると、FIFO回路13は、トグルされたデータストローブ信号DQS/DQS ̄に応じて、ホストHAからのデータ信号DQをライトデータとして保持しながらチャネルCh0経由でチップMC0へ転送する。このとき、FIFO回路14は、転送すべきライトデータを保持しながら、チャネルCh1を介したライトデータのチップMC1への転送を継続している。
その後、FIFO回路14は、チャネルCh1を介したライトデータのチップMC1への転送を完了させる。このとき、制御回路116は、発振器15からの発振信号を用いて、トグルさせたデータストローブ信号DQS0,DQS0 ̄を生成しFIFO回路13へ供給する。FIFO回路13は、転送すべきライトデータを保持しながら、チャネルCh0を介したライトデータのチップMC0への転送を継続している。
以上のように、第3の実施形態では、半導体装置1において、チャネル間インタリーブ動作の機能により、ライト処理における半導体装置1内のチャネルChを介したデータ転送を、チャネルChの速度限界を超越して高速化することができる。
(第4の実施形態)
次に、第4の実施形態にかかる半導体装置1について説明する。以下では、第1の実施形態~第3の実施形態と異なる部分を中心に説明する。
第1の実施形態では、複数のチャネルCh0,Ch1を交互に選択する場合のチャネル間インタリーブ動作を例示しているが、第4の実施形態では、複数のチャネルCh0,Ch1を同時に選択する場合のチャネル間インタリーブ動作を例示する。以下では、複数のチャネルCh0,Ch1を同時に選択する場合のチャネル間インタリーブ動作を同時アクセス方式のチャネル間インタリーブ動作と呼ぶことにする。
同時アクセス方式のチャネル間インタリーブ動作は、図15に示すように行われる。図15は、半導体装置1の概略動作を示す図であり、同時アクセス方式のチャネル間インタリーブ動作を概略的に示している。
中継チップIFは、チャネルCh0を選択するためのチップイネーブル信号CE0 ̄とチャネルCh1を選択するためのチップイネーブル信号CE1 ̄とをホストHAから受信する。中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに維持されチップイネーブル信号CE1 ̄がアクティブレベルに維持された状態で、チャネルCh0を介したデータ転送動作とチャネルCh1を介したデータ転送動作とを並行して行うことが可能である。
中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに維持されチップイネーブル信号CE1 ̄がノンアクティブレベルに維持される期間TP51に、ホストチャネルHChを介してコマンド「CMD+ADD(0)」を受けると、選択チャネルCh0を介してチップMC0にコマンド「CMD+ADD(0)」を発行する。中継チップIFは、チップイネーブル信号CE0 ̄がノンアクティブレベルに維持されチップイネーブル信号CE1 ̄がアクティブレベルに維持される期間TP52に、ホストチャネルHChを介してコマンド「CMD+ADD(1)」を受けると、選択チャネルCh1を介してチップMC1にコマンド「CMD+ADD(1)」を発行する。期間TP52は、期間TP51より後の期間である。中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに維持されチップイネーブル信号CE1 ̄がアクティブレベルに維持される期間TP53に、選択チャネルCh0を介してコマンド「CMD+ADD(0)」に応じたデータ転送動作「DIN/DOUT×1」を行うとともに選択チャネルCh1を介してコマンド「CMD+ADD(1)」に応じたデータ転送動作「DIN/DOUT×1」を行う。期間TP53は、期間TP52より後の期間である。「DIN」は、ライト処理において行われるデータ転送動作を表し、「DOUT」は、リード処理において行われるデータ転送動作を表す。
例えば、半導体装置1は、図16に示すように、リード処理について同時アクセス方式のチャネル間インタリーブ動作を行い得る。図16は、半導体装置1の動作を示す図であり、リード処理についてチャネルCh0,Ch1を同時に選択して行われるチャネル間インタリーブ動作を例示する。図16では、図4、図5に示す期間TP9~TP14に対応する期間の動作を例示する。
例えば、ホストチャネルHChの限界速度が各チャネルCh0,Ch1の限界速度の2倍であるとする。
期間TP61が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択し、チップイネーブル信号CE1 ̄がノンアクティブレベルに維持されることに応じてチャネルCh1を非選択に維持する。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「05h~E0h」をチャネルCh0経由でデータ信号DQ[Ch0]としてチップ(1)へ伝送する。
期間TP61が終了し期間TP62が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がノンアクティブレベルに遷移することに応じてチャネルCh0を非選択にし、チップイネーブル信号CE1 ̄がアクティブレベルに遷移することに応じてチャネルCh1を選択する。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「05h~E0h」をチャネルCh1経由でデータ信号DQ[Ch1]としてチップ(2)へ伝送する。
このとき、中継チップIFは、チップ(1)について、非選択のチャネルCh0を介してプリフェッチ動作を開始する。すなわち、チップ(1)は、リードデータの少なくとも一部をデータ信号DQ[Ch0]としてチャネルCh0経由で中継チップIFへ転送する。中継チップIFは、転送されたデータ信号DQ[Ch0]をFIFO回路13で保持(プリフェッチ)し始める。
期間TP62が終了すると、チップ(1)についてプリフェッチ動作が継続中であることに応じて、チップイネーブル信号CE0 ̄がノンアクティブレベルに維持される。これに応じて、中継チップIFは、チャネルCh0を非選択に維持する。それとともに、中継チップIFは、チップイネーブル信号CE1 ̄がノンアクティブレベルに遷移することに応じて、チャネルCh1を非選択にする。
このとき、中継チップIFは、チップ(2)について、非選択のチャネルCh1を介してプリフェッチ動作を開始する。すなわち、チップ(2)は、リードデータの少なくとも一部をデータ信号DQ[Ch1]としてチャネルCh1経由で中継チップIFへ転送する。中継チップIFは、転送されたデータ信号DQ[Ch1]をFIFO回路14で保持(プリフェッチ)し始める。
その後、チップ(1)についてのプリフェッチ動作が完了し、さらに、チップ(2)についてのプリフェッチ動作が完了する。
期間TP63が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択し、チップイネーブル信号CE1 ̄がアクティブレベルに遷移することに応じてチャネルCh1を選択する。この状態で、中継チップIFは、プリフェッチされたチップ(1)のデータ信号DQとプリフェッチされたチップ(2)のデータ信号DQとを、ホストチャネルHCh経由で時分割的にホストHAへ伝送する。それと並行して、中継チップIFは、チャネルCh0経由でチップ(1)から転送されたデータ信号DQをFIFO回路13で保持しながら複数段のキューの間で内部的にシフトさせ、チャネルCh1経由でチップ(2)から転送されたデータ信号DQをFIFO回路14で保持しながら複数段のキューの間で内部的にシフトさせる。そして、中継チップIFは、期間TP63内にチップ(1)から転送されたデータ信号DQと期間TP63内にチップ(2)から転送されたデータ信号DQと、ホストチャネルHCh経由で時分割的にホストHAへ伝送する。
期間TP63が終了するタイミングにおいて、中継チップIFは、チップ(1)のデータ信号DQ及びチップ(2)のデータ信号DQのホストHAへの伝送を完了する。
その後、期間TP71~TP73においても、期間TP61~TP63と同様の動作が行われる。
ここで、チップ(1)、(2)のデータ信号DQについて、中継チップIFは、チャネルCh0,Ch1の同時アクセスの選択期間(例えば、期間TP63)に、チップ(1)からのチャネルCh0経由でのホストHAへのデータ転送とチップ(2)からのチャネルCh1経由でのホストHAへのデータ転送とを時分割的に行う。これにより、リード処理において、実質的に、半導体装置1からホストHAへのデータ転送を、各チャネルCh0,Ch1の速度限界を超越して倍速化することができる。
チップ(3)、(4)以降のデータ信号DQについても、チップ(1)、(2)のデータ信号DQについてと同様である。
また、リード処理における同時アクセス方式のチャネル間インタリーブ動作を行うための中継チップIFの構成が、図17に示すように、次の点で第1の実施形態と異なる。図17は、中継チップIFの構成を示す図である。
中継チップIFは、切り替え回路11、切り替え回路12(図6参照)に代えてマルチプレクサ(MUX)211、分周回路212を有する。
マルチプレクサ211は、チップイネーブル信号CE0 ̄、チップイネーブル信号CE1 ̄及びリードイネーブル信号RE,RE ̄に応じて、第5の接続状態と第6の接続状態とを切り替える。第5の接続状態は、端子群21aとFIFO回路13のデータノード13aとが接続された状態である。第6の接続状態は、端子群21aとFIFO回路14のデータノード14aとが接続された状態である。
マルチプレクサ211は、チップイネーブル信号CE0 ̄がアクティブレベルでありチップイネーブル信号CE1 ̄がアクティブレベルであり、リードイネーブル信号RE,RE ̄がトグルされる場合、リードイネーブル信号RE,RE ̄のトグルの偶数番目のエッジに応じて第5の接続状態に切り替え、リードイネーブル信号RE,RE ̄のトグルの奇数番目のエッジに応じて第6の接続状態に切り替える。
なお、マルチプレクサ211は、チップイネーブル信号CE0 ̄がアクティブレベルでありチップイネーブル信号CE1 ̄がノンアクティブレベルであることに応じて第5の接続状態に切り替え、チップイネーブル信号CE0 ̄がノンアクティブレベルでありチップイネーブル信号CE1 ̄がアクティブレベルであることに応じて第6の接続状態に切り替える点は、切り替え回路11の動作と同様である。
分周回路212は、リードイネーブル信号RE,RE ̄がトグルされる場合、リードイネーブル信号RE,RE ̄を2分周して、半分の速度でトグルするリードイネーブル信号RE’,RE ̄’を生成する。分周回路212は、半分の速度でトグルするリードイネーブル信号RE’,RE ̄’をFIFO回路13,14へそれぞれ供給する。
制御回路16は、チップイネーブル信号CE0 ̄がアクティブレベルでありチップイネーブル信号CE1 ̄がアクティブレベルであることに応じて、トグルするリードイネーブル信号RE0,RE0 ̄を生成してチップMC0へ供給し、トグルするリードイネーブル信号RE1,RE1 ̄を生成してチップMC1へ供給する。これにより、中継チップIFは、チャネルCh経由でチップMCへ供給するリードイネーブル信号をホストHAのリードイネーブル信号RE,RE ̄から制御回路16のリードイネーブル信号RE0,RE0 ̄,RE1,RE1 ̄に載せ替えることができる。
中継チップIFは、チャネルCh0,Ch1の同時アクセスの選択期間に、図18,19に示すように、チップMC0,MC1のデータ信号DQを時分割的にホストHAへ送信する。図18は、中継チップIFの動作を示す波形図である。図19は、中継チップIFの動作を示す図である。図19(a)~図19(d)では、図16に示す期間TP63における中継チップIFの動作について例示する。
図18では、ホストチャネルHChの限界速度が各チャネルCh0,Ch1の限界速度の2倍である場合を例示している。
ホストHAからホストチャネルHCh経由で中継チップIFへ供給されるリードイネーブル信号RE,RE ̄のトグルの周波数は、制御回路16で生成されチャネルCh0経由でチップMC0に供給されるリードイネーブル信号RE0,RE0 ̄のトグルの周波数の2倍になっている。リードイネーブル信号RE,RE ̄のトグルの周波数は、制御回路16で生成されチャネルCh1経由でチップMC1に供給されるリードイネーブル信号RE1,RE1 ̄のトグルの周波数の2倍になっている。
中継チップIFからホストチャネルHCh経由でホストHAへ供給されるデータストローブ信号DQS,DQS ̄のトグルの周波数は、チップMC0からチャネルCh0経由で中継チップIFへ供給されるデータストローブ信号DQS0,DQS0 ̄のトグルの周波数の2倍になっている。データストローブ信号DQS,DQS ̄のトグルの周波数は、チップMC1からチャネルCh1経由で中継チップIFへ供給されるデータストローブ信号DQS1,DQS1 ̄のトグルの周波数の2倍になっている。
タイミングt51の直前において、中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択し、チップイネーブル信号CE1 ̄がアクティブレベルに遷移することに応じてチャネルCh1を選択する。これ以降、セレクタ17,18は、入力ノード17a,18aを選択した状態を維持し、ホストHAからのチップイネーブル信号CE0 ̄,CE1 ̄をチャネルCh0,Ch1経由でチップMC0,MC1へ供給する。
このとき、中継チップIFにおいて、FIFO回路13は、チャネルCh0経由でチップMC0のデータ信号DQをプリフェッチしており、FIFO回路14は、チャネルCh1経由でチップMC1のデータ信号DQをプリフェッチしている。
タイミングt51において、リードイネーブル信号RE,RE ̄がトグルし始める。中継チップIFは、リードイネーブル信号RE,RE ̄の0番目のエッジに応じて、図19(a)に示すように、チャネルCh0経由でプリフェッチされたチップMC0のデータ信号DQをホストHAへ送信する。
タイミングt52において、中継チップIFは、リードイネーブル信号RE,RE ̄の1番目のエッジに応じて、図19(b)に示すように、チャネルCh1経由でプリフェッチされたチップMC1のデータ信号DQをホストHAへ送信する。
タイミングt53において、中継チップIFは、リードイネーブル信号RE,RE ̄の2番目のエッジに応じて、図19(a)に示すように、中継チップIFは、チャネルCh0経由でプリフェッチされたチップMC0のデータ信号DQをホストHAへ送信する。
このとき、中継チップIFは、データストローブ信号DQS0、DQS0 ̄に応じてチップMC0からチャネルCh0経由で転送されたデータ信号DQをFIFO回路13で保持する。また、中継チップIFは、データストローブ信号DQS1、DQS1 ̄に応じてチップMC1からチャネルCh1経由で転送されたデータ信号DQをFIFO回路14で保持する。
タイミングt54において、中継チップIFは、リードイネーブル信号RE,RE ̄の3番目のエッジに応じて、図19(b)に示すように、チャネルCh1経由でプリフェッチされたチップMC1のデータ信号DQをホストHAへ送信する。
タイミングt55において、中継チップIFは、リードイネーブル信号RE,RE ̄の4番目のエッジに応じて、図19(c)に示すように、チャネルCh0経由で転送されたチップMC0のデータ信号DQをホストHAへ送信する。
このとき、中継チップIFは、データストローブ信号DQS0、DQS0 ̄に応じてチップMC0からチャネルCh0経由で転送されたデータ信号DQをFIFO回路13で保持する。また、中継チップIFは、データストローブ信号DQS1、DQS1 ̄に応じてチップMC1からチャネルCh1経由で転送されたデータ信号DQをFIFO回路14で保持する。
タイミングt56において、中継チップIFは、リードイネーブル信号RE,RE ̄の5番目のエッジに応じて、図19(d)に示すように、チャネルCh1経由で転送されたチップMC1のデータ信号DQをホストHAへ送信する。
これ以降、ホストHAへ送信すべき全データ量の転送が完了するまで、タイミングt55と同様の動作及びタイミングt56と同様の動作が、リードイネーブル信号RE,RE ̄のエッジごとに、交互に繰り返される。
なお、タイミングt51の直前においてFIFO回路13,14でプリフェッチするデータ量は、タイミングt51以降にチップから転送されるデータ信号がホストHAへ送信可能になるまでに不足するデータ量(図18の場合、リードイネーブル信号RE,RE ̄のトグル4回分のデータ量)として予め実験的に求められ得る。これにより、中継チップIFからホストHAへのデータ転送を早いタイミングで開始することができる。
以上のように、第4の実施形態では、半導体装置1は、同時アクセス方式のチャネル間インタリーブ動作の機能により、リード処理における半導体装置1内のチャネルChを介したデータ転送を、チャネルChの速度限界を超越して高速化することができる。
なお、リード処理における同時アクセス方式のチャネル間インタリーブ動作を行うための中継チップIFの構成は、図20に示すように、ホストHAのリードイネーブル信号RE,RE ̄を通過させる構成であってもよい。図20は、第4の実施形態に変形例における中継チップIFの構成を示す図である。図20に示す中継チップIFは、発振器15、制御回路16、セレクタ17、セレクタ18が省略され、分周回路212からFIFO回路13,14へ延びたラインが分岐して端子22c、22gに延びている点で図17に示す中継チップIFと異なる。端子21dが端子22dに接続され、ホストHAからのチップイネーブル信号CE0 ̄がチャネルCh0経由でチップMC0へ供給される。端子21eが端子22hに接続され、ホストHAからのチップイネーブル信号CE1 ̄がチャネルCh1経由でチップMC1へ供給される。
分周回路212は、リードイネーブル信号RE,RE ̄がトグルされる場合、リードイネーブル信号RE,RE ̄のトグルの偶数番目のエッジに応じて、リードイネーブル信号RE,RE ̄を2分周して、半分の速度でトグルするリードイネーブル信号RE0,RE0 ̄を生成する。分周回路212は、半分の速度でトグルするリードイネーブル信号RE0,RE0 ̄を、FIFO回路13へ供給するとともに、チャネルCh0経由でチップMC0へ供給する。すなわち、中継チップIFは、ホストHAからのリードイネーブル信号RE,RE ̄を分周しながら実質的に通過させてチャネルCh0経由でチップMC0へ供給する。
また、分周回路212は、リードイネーブル信号RE,RE ̄のトグルの奇数番目のエッジに応じて、リードイネーブル信号RE,RE ̄を論理反転し2分周して、半分の速度でトグルするリードイネーブル信号RE1,RE1 ̄を生成する。分周回路212は、半分の速度でトグルするリードイネーブル信号RE1,RE1 ̄を、FIFO回路14へ供給するとともに、チャネルCh1経由でチップMC1へ供給する。すなわち、中継チップIFは、ホストHAからのリードイネーブル信号RE,RE ̄を分周しながら実質的に通過させてチャネルCh1経由でチップMC1へ供給する。
また、図20に示す中継チップIFの動作は、図21、図22に示すように、次の点で図17に示す中継チップIFと異なる。図21、図22(a)~図22(d)では、図16に示す期間TP63における中継チップIFの動作について例示するが、図18、図19(a)~図19(d)と同様の部分については説明を省略する。
タイミングt61において、リードイネーブル信号RE,RE ̄がトグルし始める。中継チップIFは、リードイネーブル信号RE,RE ̄の0番目のエッジに応じて、図22(a)に示すように、チャネルCh0経由でプリフェッチされたチップMC0のデータ信号DQをホストHAへ送信する。
このとき、分周回路212は、リードイネーブル信号RE,RE ̄を2分周してリードイネーブル信号RE0,RE0 ̄を生成し、リードイネーブル信号RE0,RE0 ̄をFIFO回路13へ供給するとともにチャネルCh0経由でチップMC0へ供給する。
タイミングt62において、中継チップIFは、リードイネーブル信号RE,RE ̄の1番目のエッジに応じて、図22(b)に示すように、チャネルCh1経由でプリフェッチされたチップMC1のデータ信号DQをホストHAへ送信する。
このとき、分周回路212は、リードイネーブル信号RE,RE ̄を論理反転し2分周してリードイネーブル信号RE1,RE1 ̄を生成し、リードイネーブル信号RE1,RE1 ̄をFIFO回路14へ供給するとともにチャネルCh1経由でチップMC1へ供給する。
タイミングt63において、中継チップIFは、リードイネーブル信号RE,RE ̄の2番目のエッジに応じて、図22(a)に示すように、中継チップIFは、チャネルCh0経由でプリフェッチされたチップMC0のデータ信号DQをホストHAへ送信する。
このとき、中継チップIFは、ホストHAへ送信されたデータ量分、データストローブ信号DQS0、DQS0 ̄に応じてチップMC0からチャネルCh0経由で転送されたデータ信号DQをFIFO回路13で保持する。
タイミングt64において、中継チップIFは、リードイネーブル信号RE,RE ̄の3番目のエッジに応じて、図22(b)に示すように、チャネルCh1経由でプリフェッチされたチップMC1のデータ信号DQをホストHAへ送信する。
このとき、中継チップIFは、ホストHAへ送信されたデータ量分、データストローブ信号DQS1、DQS1 ̄に応じてチップMC1からチャネルCh1経由で転送されたデータ信号DQをFIFO回路14で保持する。
タイミングt65において、中継チップIFは、リードイネーブル信号RE,RE ̄の4番目のエッジに応じて、図22(c)に示すように、チャネルCh0経由で転送されたチップMC0のデータ信号DQをホストHAへ送信する。
このとき、中継チップIFは、ホストHAへ送信されたデータ量分、データストローブ信号DQS0、DQS0 ̄に応じてチップMC0からチャネルCh0経由で転送されたデータ信号DQをFIFO回路13で保持する。
タイミングt66において、中継チップIFは、リードイネーブル信号RE,RE ̄の5番目のエッジに応じて、図22(d)に示すように、チャネルCh0経由で転送されたチップMC0のデータ信号DQをホストHAへ送信する。
このとき、中継チップIFは、ホストHAへ送信されたデータ量分、データストローブ信号DQS1、DQS1 ̄に応じてチップMC1からチャネルCh1経由で転送されたデータ信号DQをFIFO回路14で保持する。
このように、図20に示す中継チップIFによっても、リード処理における同時アクセス方式のチャネル間インタリーブ動作を行うことができる。
(第5の実施形態)
次に、第5の実施形態にかかる半導体装置1について説明する。以下では、第1の実施形態~第4の実施形態と異なる部分を中心に説明する。
第4の実施形態では、同時アクセス方式のチャネル間インタリーブ動作の機能によるリード処理を例示しているが、第5の実施形態では、同時アクセス方式のチャネル間インタリーブ動作の機能によるライト処理を例示する。
半導体装置1は、図23に示すように、ライト処理について同時アクセス方式のチャネル間インタリーブ動作を行い得る。図23は、半導体装置1の動作を示す図であり、ライト処理についてチャネルCh0,Ch1を同時に選択して行われるチャネル間インタリーブ動作を例示する。図23では、図12に示す期間TP41~TP43前半に対応する期間の動作を例示する。
例えば、ホストチャネルHChの限界速度が各チャネルCh0,Ch1の限界速度の2倍であるとする。
期間TP81が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択し、チップイネーブル信号CE1 ̄がノンアクティブレベルに維持されることに応じてチャネルCh1を非選択に維持する。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「80h~」をチャネルCh0経由でデータ信号DQ[Ch0]としてチップ(1)へ伝送する。
期間TP81が終了し期間TP82が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がノンアクティブレベルに遷移することに応じてチャネルCh0を非選択にし、チップイネーブル信号CE1 ̄がアクティブレベルに遷移することに応じてチャネルCh1を選択する。この状態で、中継チップIFは、ホストチャネルHChを介して受けるコマンド「80h~」をチャネルCh1経由でデータ信号DQ[Ch1]としてチップ(2)へ伝送する。
期間TP82が終了し期間TP83が開始すると、中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択し、チップイネーブル信号CE1 ̄がアクティブレベルに維持されることに応じてチャネルCh1の選択を維持する。この状態で、中継チップIFは、チップ(1)のライトデータとチップ(2)のライトデータとを、ホストチャネルHCh経由で時分割的にホストHAから受信する。それと並行して、中継チップIFは、動作「DIN」に応じて、チャネルCh0を介したチップ(1)へのライトデータの転送開始とチャネルCh1を介したチップ(2)へのライトデータの転送開始とを時分割的に行う。これにより、中継チップIFは、チャネルCh0を介したチップ(1)へのライトデータの転送動作とチャネルCh1を介したチップ(2)へのライトデータの転送動作とを互いに並行して行う。
中継チップIFは、動作「DIN」が終了すると、チップ(1)のコマンド「10h」とチップ(2)のコマンド「10h」とを、ホストチャネルHCh経由で時分割的にホストHAから受信する。それと並行して、中継チップIFは、チャネルCh0を介したチップ(1)へのコマンド「10h」の転送開始とチャネルCh1を介したチップ(2)へのコマンド「10h」の転送開始とを時分割的に行う。これにより、中継チップIFは、チャネルCh0を介したチップ(1)へのコマンド「10h」の発行動作とチャネルCh1を介したチップ(2)へのコマンド「10h」の発行動作とを互いに並行して行う。
中継チップIFは、期間TP83が終了するタイミングにおいて、チップ(1)のコマンド「10h」の発行動作及びチップ(2)のコマンド「10h」の発行動作を完了する。
その後、期間TP91~TP93においても、期間TP81~TP83と同様の動作が行われる。
ここで、チップ(1)、(2)のデータ信号DQについて、中継チップIFは、チャネルCh0,Ch1の同時アクセスの選択期間(例えば、期間TP83)に、チップ(1)のライトデータとチップ(2)のライトデータについて、ホストHAからの受信とチャネルCh0,Ch1を介したチップMC0,MC1への転送とを、それぞれ時分割的に行う。これにより、ライト処理において、実質的に、ホストHAから半導体装置1へのデータ転送を、各チャネルCh0,Ch1の速度限界を超越して倍速化することができる。
チップ(3)、(4)以降のデータ信号DQについても、チップ(1)、(2)のデータ信号DQについてと同様である。
また、ライト処理における同時アクセス方式のチャネル間インタリーブ動作を行うための中継チップIFの構成が、図24に示すように、次の点で第3の実施形態と異なる。図24は、中継チップIFの構成を示す図である。
中継チップIFは、切り替え回路11、切り替え回路12(図13参照)に代えてサンプラ311、分周回路312を有する。
サンプラ311は、データノード311aが端子群21aに接続され、クロックノード311bが端子群21bに接続され、出力ノード311cがFIFO回路13に接続され、出力ノード311dがFIFO回路14に接続される。サンプラ311は、データ信号DQをサンプリングし、チップイネーブル信号CE0 ̄、チップイネーブル信号CE1 ̄及びデータストローブ信号DQS,DQS ̄に応じて、そのサンプリングしたデータ信号DQの出力先を切り替える。
サンプラ311は、チップイネーブル信号CE0 ̄がアクティブレベルでありチップイネーブル信号CE1 ̄がアクティブレベルであり、データストローブ信号DQS,DQS ̄がトグルされる場合、データストローブ信号DQS,DQS ̄のトグルの偶数番目のエッジに応じて、出力先をFIFO回路13に切り替え、データストローブ信号DQS,DQS ̄のトグルの奇数番目のエッジに応じて、出力先をFIFO回路14に切り替える。
なお、サンプラ311は、チップイネーブル信号CE0 ̄がアクティブレベルでありチップイネーブル信号CE1 ̄がノンアクティブレベルであることに応じて出力先をFIFO回路13に切り替え、チップイネーブル信号CE0 ̄がノンアクティブレベルでありチップイネーブル信号CE1 ̄がアクティブレベルであることに応じて出力先をFIFO回路14に切り替えて、データ信号DQを転送する点は、切り替え回路11の動作と同様である。
分周回路312は、データストローブ信号DQS,DQS ̄がトグルされる場合、データストローブ信号DQS,DQS ̄を2分周して、半分の速度でトグルするデータストローブ信号DQS’,DQS ̄’を生成する。分周回路312は、半分の速度でトグルするデータストローブ信号DQS’,DQS ̄’をFIFO回路13,14へそれぞれ供給する。
制御回路16は、チップイネーブル信号CE0 ̄がアクティブレベルでありチップイネーブル信号CE1 ̄がアクティブレベルであることに応じて、トグルするデータストローブ信号DQS0,DQS0 ̄を生成してチップMC0へ供給し、トグルするデータストローブ信号DQS1,DQS1 ̄を生成してチップMC1へ供給する。これにより、中継チップIFは、チャネルCh経由でチップMCへ供給するデータストローブ信号をホストHAのデータストローブ信号DQS,DQS ̄から制御回路16のデータストローブ信号DQS0,DQS0 ̄,DQS1,DQS1 ̄に載せ替えることができる。
中継チップIFは、チャネルCh0,Ch1の同時アクセスの選択期間に、図25、図26に示すように、チップMC0,MC1のデータ信号DQを時分割的にホストHAから受信し時分割的にチップMC0,MC1へ転送する。図25は、中継チップIFの動作を示す波形図である。図26は、中継チップIFの動作を示す図である。図26(a)~図26(d)では、図23に示す期間TP83における中継チップIFの動作「DIN」について例示する。
図25では、ホストチャネルHChの限界速度が各チャネルCh0,Ch1の限界速度の2倍である場合を例示している。
ホストHAからホストチャネルHCh経由で中継チップIFへ供給されるデータストローブ信号DQS,DQS ̄のトグルの周波数は、制御回路16からチャネルCh0経由でFIFO回路13及びチップMC0へ供給されるデータストローブ信号DQS0,DQS0 ̄のトグルの周波数の2倍になっている。データストローブ信号DQS,DQS ̄のトグルの周波数は、制御回路16からチャネルCh1経由でFIFO回路14及びチップMC1供給されるデータストローブ信号DQS1,DQS1 ̄のトグルの周波数の2倍になっている。
タイミングt71の直前において、中継チップIFは、チップイネーブル信号CE0 ̄がアクティブレベルに遷移することに応じてチャネルCh0を選択し、チップイネーブル信号CE1 ̄がアクティブレベルに遷移することに応じてチャネルCh1を選択する。これ以降、セレクタ17,18は、入力ノード17a,18aを選択した状態を維持し、ホストHAからのチップイネーブル信号CE0 ̄,CE1 ̄をチャネルCh0,Ch1経由でチップMC0,MC1へ供給する。
タイミングt71において、データストローブ信号DQS,DQS ̄がトグルし始める。中継チップIFは、データストローブ信号DQS,DQS ̄の0番目のエッジに応じて、図26(a)に示すように、ホストチャネルHCh経由でチップMC0のライトデータを受信しFIFO回路13で保持する。
タイミングt72において、中継チップIFは、データストローブ信号DQS,DQS ̄の1番目のエッジに応じて、図26(b)に示すように、ホストチャネルHCh経由でチップMC1のライトデータを受信しFIFO回路14で保持する。このとき、FIFO回路13は、チップMC0のライトデータを保持している。
タイミングt73において、中継チップIFは、データストローブ信号DQS,DQS ̄の2番目のエッジに応じて、図26(c)に示すように、中継チップIFは、ホストチャネルHCh経由でチップMC0のライトデータを受信しFIFO回路13で保持する。 このとき、中継チップIFは、データストローブ信号DQS0、DQS0 ̄に応じて、FIFO回路13で保持されたチップMC0のライトデータをチャネルCh0経由でチップMC0へ転送する。また、中継チップIFは、データストローブ信号DQS1、DQS1 ̄に応じて、FIFO回路14で保持されたチップMC0のライトデータをチャネルCh1経由でチップMC1へ転送する。
タイミングt74において、中継チップIFは、データストローブ信号DQS,DQS ̄の3番目のエッジに応じて、図26(d)に示すように、ホストチャネルHCh経由でチップMC1のライトデータを受信しFIFO回路14で保持する。このとき、FIFO回路13は、チップMC0のライトデータを保持している。
これ以降、ホストHAから受信される全データ量の転送が完了するまで、タイミングt73と同様の動作及びタイミングt74と同様の動作が、データストローブ信号DQS,DQS ̄のトグルのエッジごとに、交互に繰り返される。
なお、制御回路16によるデータストローブ信号DQS0,DQS0 ̄,DQS1,DQS1 ̄のトグル開始のタイミングは、ホストHAから受信されたデータがFIRO13,14から出力可能となる時間(図25の場合、データストローブ信号DQS,DQS ̄のトグル2回分の時間)として予め実験的に求められ得る。これにより、中継チップIFから各チップMCへのデータ転送を早いタイミングで開始することができる。
以上のように、第5の実施形態では、半導体装置1は、同時アクセス方式のチャネル間インタリーブ動作の機能により、ライト処理における半導体装置1内のチャネルChを介したデータ転送を、チャネルChの速度限界を超越して高速化することができる。
なお、リード処理における同時アクセス方式のチャネル間インタリーブ動作を行うための中継チップIFの構成は、図27に示すように、ホストHAのデータストローブ信号DQS,DQS ̄を通過させる構成であってもよい。図27は、第5の実施形態に変形例における中継チップIFの構成を示す図である。図27に示す中継チップIFは、FIFO回路13、FIFO回路14、発振器15、制御回路16、セレクタ17、セレクタ18が省略され、分周回路312からラインが端子22b,22fに延びている点で図24に示す中継チップIFと異なる。端子21dが端子22dに接続され、ホストHAからのチップイネーブル信号CE0 ̄がチャネルCh0経由でチップMC0へ供給される。端子21eが端子22hに接続され、ホストHAからのチップイネーブル信号CE1 ̄がチャネルCh1経由でチップMC1へ供給される。
分周回路312は、データストローブ信号DQS,DQS ̄がトグルされる場合、データストローブ信号DQS,DQS ̄のトグルの偶数番目のエッジに応じて、データストローブ信号DQS,DQS ̄を2分周して、半分の速度でトグルするデータストローブ信号DQS0,DQS0 ̄を生成する。分周回路312は、半分の速度でトグルするデータストローブ信号DQS0,DQS0 ̄をチャネルCh0経由でチップMC0へ供給する。すなわち、中継チップIFは、ホストHAからのデータストローブ信号DQS,DQS ̄を分周しながら実質的に通過させてチャネルCh0経由でチップMC0へ供給する。
また、分周回路312は、データストローブ信号DQS,DQS ̄のトグルの奇数番目のエッジに応じて、データストローブ信号DQS,DQS ̄を論理反転し2分周して、半分の速度でトグルするデータストローブ信号DQS1,DQS1 ̄を生成する。分周回路312は、半分の速度でトグルするデータストローブ信号DQS1,DQS1 ̄をチャネルCh1経由でチップMC1へ供給する。すなわち、中継チップIFは、ホストHAからのデータストローブ信号DQS,DQS ̄を分周しながら実質的に通過させてチャネルCh1経由でチップMC1へ供給する。
また、図27に示す中継チップIFの動作は、図28、図29に示すように、次の点で図24に示す中継チップIFと異なる。図28、図29(a)~図29(c)では、図16に示す期間TP83における中継チップIFの動作「DIN」について例示するが、図25、図26(a)~図26(c)と同様の部分については説明を省略する。
タイミングt81において、データストローブ信号DQS,DQS ̄がトグルし始める。中継チップIFは、データストローブ信号DQS,DQS ̄の0番目のエッジに応じて、図29(a)に示すように、ホストチャネルHCh経由で受信されたチップMC0のデータ信号DQをチャネルCh0経由でチップMC0へ転送する。
このとき、分周回路312は、データストローブ信号DQS,DQS ̄を2分周してデータストローブ信号DQS0,DQS0 ̄を生成する。分周回路312は、データストローブ信号DQS0,DQS0 ̄をチャネルCh0経由でチップMC0へ転送する。
タイミングt82において、中継チップIFは、データストローブ信号DQS,DQS ̄の1番目のエッジに応じて、図29(b)に示すように、ホストチャネルHCh経由で受信されたチップMC1のデータ信号DQをチャネルCh1経由でチップMC1へ転送する。
このとき、分周回路312は、データストローブ信号DQS,DQS ̄を論理反転し2分周してデータストローブ信号DQS1,DQS1 ̄を生成する。分周回路312は、データストローブ信号DQS1,DQS1 ̄をチャネルCh1経由でチップMC1へ転送する。
タイミングt83において、中継チップIFは、データストローブ信号DQS,DQS ̄の2番目のエッジに応じて、図29(a)に示すように、ホストチャネルHCh経由で受信されたチップMC0のデータ信号DQをチャネルCh0経由でチップMC0へ転送する。
このとき、分周回路312は、データストローブ信号DQS,DQS ̄を2分周してデータストローブ信号DQS0,DQS0 ̄を生成する。分周回路312は、データストローブ信号DQS0,DQS0 ̄をチャネルCh0経由でチップMC0へ転送する。
これ以降、ホストHAから受信される全データ量の転送が完了するまで、タイミングt82と同様の動作及びタイミングt83と同様の動作が、データストローブ信号DQS,DQS ̄のエッジごとに、交互に繰り返される。
このように、図27に示す中継チップIFによっても、ライト処理における同時アクセス方式のチャネル間インタリーブ動作を行うことができる。
(第6の実施形態)
次に、第6の実施形態にかかる半導体装置1について説明する。以下では、第1の実施形態~第5の実施形態と異なる部分を中心に説明する。
第1の実施形態では、中継チップIFの簡略化した構成を例示しているが、第6の実施形態では、中継チップIFの実装構成について例示する。
中継チップIFは、チャネルChが選択された状態でそのチャネルChを介してチップMCにコマンド発行を行う際に、コマンドを保持するように構成される。これにより、その後に、そのチャネルChが非選択された際に、チップMCからのコマンドに応じたデータ転送が行われるように制御できる。また、そのチャネルChが再び選択状態に戻された際に、ホストHAとの間でコマンドに応じたデータ転送が行われるように制御できる。
例えば、中継チッIFは、図30に示すように構成され得る。図30は、中継チップIFの構成を示す図である。
中継チップIFは、ホストインタフェース(I/F)回路411、セレクタ412、FIFO回路413、FIFO回路414、コマンド保持回路415、コマンド保持回路416、チャネルインタフェース(I/F)回路417、チャネルインタフェース(I/F)回路418、ALE/CLE/WE ̄切り替え回路419、端子群421、及び端子群422を有する。
端子群421は、端子群21(図6参照)に対して、端子群21fをさらに有する。端子群21fは、アドレスラッチイネーブル信号H_ALE用の端子、コマンドラッチイネーブル信号H_CLE用の端子、ライトイネーブル信号H_WE ̄用の端子を含む。
端子群422は、端子群22(図6参照)に対して、端子群22i,22jをさらに有する。端子群22iは、アドレスラッチイネーブル信号N0_ALE用の端子、コマンドラッチイネーブル信号N0_CLE用の端子、ライトイネーブル信号N0_WE ̄用の端子を含む。端子群22jは、アドレスラッチイネーブル信号N1_ALE用の端子、コマンドラッチイネーブル信号N1_CLE用の端子、ライトイネーブル信号N1_WE ̄用の端子を含む。
ALE/CLE/WE ̄切り替え回路419は、端子群21fと端子群22i,22jとの間に配される。ALE/CLE/WE ̄切り替え回路419は、チップイネーブル信号H_CE0 ̄,H_CE1 ̄に応じて、端子群21fと端子群22i,22jとの接続を切り替える。ALE/CLE/WE ̄切り替え回路419は、チップイネーブル信号H_CE0 ̄がアクティブレベルでありチップイネーブル信号H_CE1 ̄がノンアクティブレベルである場合、端子群21fを端子群22iに接続する。ALE/CLE/WE ̄切り替え回路419は、チップイネーブル信号H_CE0 ̄がノンアクティブレベルでありチップイネーブル信号H_CE1 ̄がアクティブレベルである場合、端子群21fを端子群22jに接続する。
FIFO回路413は、ホストインタフェース回路411及びチャネルインタフェース回路417の間に電気的に接続される。FIFO回路413は、チャネルCh0用の回路であり、FIFO回路13(図6参照)と同様の機能を有する。
FIFO回路414は、ホストインタフェース回路411及びチャネルインタフェース回路418の間に電気的に接続される。FIFO回路414は、チャネルCh1用の回路であり、FIFO回路14(図6参照)と同様の機能を有する。
コマンド保持回路415は、端子群421、セレクタ412、チャネルインタフェース回路417の間に電気的に接続される。コマンド保持回路415は、チャネルCh0用の回路である。コマンド保持回路415は、コマンドラッチイネーブル信号CLEがアクティブレベルでありチップイネーブル信号H_CE0 ̄がアクティブレベルである状態で、ホストHAからのデータ信号DQ<7:0>がチャネルCh0に対応したコマンドであるとして、そのコマンドを保持する。コマンド保持回路415は、保持されたコマンドに応じて、チャネルCh0に対応した制御信号S0を生成してセレクタ412及びチャネルインタフェース回路417へ供給する。
コマンド保持回路416は、端子群421、セレクタ412、チャネルインタフェース回路418の間に電気的に接続される。コマンド保持回路415は、チャネルCh1用の回路である。コマンド保持回路416は、コマンドラッチイネーブル信号CLEがアクティブレベルでありチップイネーブル信号H_CE1 ̄がアクティブレベルである状態で、ホストHAからのデータ信号DQ<7:0>がチャネルCh1に対応したコマンドであるとして、そのコマンドを保持する。コマンド保持回路416は、保持されたコマンドに応じて、チャネルCh1に対応した制御信号S1を生成してセレクタ412及びチャネルインタフェース回路418へ供給する。
セレクタ412は、入力ノード412aがコマンド保持回路415に接続され、入力ノード412bがコマンド保持回路416に接続され、出力ノード412cがホストインタフェース回路411に接続される。セレクタ412は、入力ノード412aを選択している状態で制御信号S0をホストインタフェース回路411へ供給し、入力ノード412bを選択している状態で制御信号S1をホストインタフェース回路411へ供給する。
ホストインタフェース回路411は、端子群421、セレクタ412、FIFO回路413、FIFO回路414の間に電気的に接続され、ホストHAに対するインタフェース動作を行う。
ホストインタフェース回路411は、制御信号S0及び制御信号S1に応じて、第1の接続状態と第2の接続状態とを切り替える。第1の接続状態は、端子群21aとFIFO回路413とが接続された状態である。第2の接続状態は、端子群21aとFIFO回路414とが接続された状態である。ホストインタフェース回路411は、制御信号S0でチャネルCh0の選択及びデータ転送が指示されることに応じて第1の接続状態に切り替え、制御信号S1でチャネルCh1の選択及びデータ転送が指示されることに応じて第2の接続状態に切り替える。
ホストインタフェース回路411は、制御信号S0及び制御信号S1に応じて、第3の接続状態と第4の接続状態とを切り替える。第3の接続状態は、端子群21cとFIFO回路413とが接続された状態である。第4の接続状態は、端子群21cとFIFO回路414とが接続された状態である。ホストインタフェース回路411は、制御信号S0でチャネルCh0の選択及びデータ転送が指示されることに応じて第3の接続状態に切り替え、制御信号S1でチャネルCh1の選択及びデータ転送が指示されることに応じて第4の接続状態に切り替える。
チャネルインタフェース回路417は、FIFO回路413、コマンド保持回路415、端子群422の間に電気的に接続される。チャネルインタフェース回路417は、チャネルCh0用の回路であり、チャネルCh0に対するインタフェース動作を行う。チャネルインタフェース回路417は、制御信号S0でチャネルCh0の選択及びコマンド発行が指示されることに応じて、コマンドを発行してデータ信号N0_DQ<7:0>としてチャネルCh0経由でチップMC0へ供給する。チャネルインタフェース回路417は、チャネルCh0の非選択及びデータ転送が指示されることに応じて、トグルするリードイネーブル信号N0_RE ̄を生成してチャネルCh0経由でチップMC0へ供給し、チップMC0からチャネルCh0経由で転送されるデータ信号N0_DQ<7:0>及びデータストローブ信号N0_DQSをFIFO回路413へ転送する。チャネルインタフェース回路417は、チャネルCh0の選択及びデータ転送が指示されることに応じて、トグルするリードイネーブル信号N0_RE ̄を生成してチャネルCh0経由でチップMC0へ供給し、チップMC0からチャネルCh0経由で転送されるデータ信号N0_DQ<7:0>及びデータストローブ信号N0_DQSをFIFO回路413へ転送する。
チャネルインタフェース回路418は、FIFO回路414、コマンド保持回路416、端子群422の間に電気的に接続される。チャネルインタフェース回路418は、チャネルCh1用の回路であり、チャネルCh1に対するインタフェース動作を行う。チャネルインタフェース回路418は、制御信号S1でチャネルCh1の選択及びコマンド発行が指示されることに応じて、コマンドを発行してデータ信号N1_DQ<7:0>としてチャネルCh1経由でチップMC1へ供給する。チャネルインタフェース回路418は、チャネルCh0の非選択及びデータ転送が指示されることに応じて、トグルするリードイネーブル信号N1_RE ̄を生成してチャネルCh1経由でチップMC1へ供給し、チップMC1からチャネルCh1経由で転送されるデータ信号N1_DQ<7:0>及びデータストローブ信号N1_DQSをFIFO回路414へ転送する。チャネルインタフェース回路417は、チャネルCh1の選択及びデータ転送が指示されることに応じて、トグルするリードイネーブル信号N1_RE ̄を生成してチャネルCh1経由でチップMC1へ供給し、チップMC1からチャネルCh1経由で転送されるデータ信号N1_DQ<7:0>及びデータストローブ信号N1_DQSをFIFO回路414へ転送する。
以上のように、第6の実施形態では、半導体装置1は、図30に示すような実装構成により、チャネル間インタリーブ動作を実現することができる。
(第7の実施形態)
次に、第7の実施形態にかかる半導体装置1について説明する。以下では、第1の実施形態~第6の実施形態と異なる部分を中心に説明する。
第5の実施形態では、半導体装置1内のチャネルChの限界速度がホストチャネルHChの限界速度より遅い(例えば、1/2倍である)場合の構成を例示しているが、第7の実施形態では、半導体装置1内のチャネルChの限界速度がホストチャネルHChの限界速度以上である場合の構成について例示する。
半導体装置1内のチャネルChの高速性を生かすためには、中継チップIFとチップMCとの本数を少なく抑えてデータ転送のタイミング信号を高速化することが有効である。
例えば、中継チップIFは、図31に示すように構成され得る。図31は、中継チップIFの構成を示す図である。
半導体装置1では、チャネルCh1及びチップMC1-1~MC1-4が省略されている。中継チップIFは、サンプラ511、FIFO回路513、カウンタ回路514、発振器515、制御回路516、端子群21、及び端子群22を有する。
サンプラ511は、端子群21及びFIFO回路513の間に電気的に接続される。サンプラ511は、データノード511aが端子群21aに接続され、クロックノード511bが端子群21bに接続され、出力ノード311cがFIFO回路513に接続される。サンプラ511は、データ信号H_DQをサンプリングし、データストローブ信号H_DQSに応じて、そのサンプリングしたデータ信号H_DQをFIFO回路513へ出力する。
FIFO回路513は、端子群21、サンプラ511及び端子群22の間に電気的に接続される。FIFO回路513は、データノード513aがサンプラ511に接続され、クロックノード513bが端子群21bに接続され、データノード513cが端子群22aに接続され、クロックノード513bが端子群22bに接続される。FIFO回路513は、FIFO回路13(図24参照)と同様の機能を有するが、ホストHAからのデータストローブ信号H_DQSに応じてデータ信号DQを受ける点でFIFO回路13と異なる。
カウンタ回路514は、端子群21及び制御回路516の間に電気的に接続される。カウンタ回路514は、入力ノード514aが端子群21bに接続され、出力ノード514bが制御回路516に接続される。カウンタ回路514は、データストローブ信号H_DQSがトグルする場合、データストローブ信号H_DQSのパルス数をカウントし、カウント結果を制御回路516へ出力する。
発振器515は、発振動作を行って発振信号を生成する。発振信号の周波数は、データストローブ信号H_DQSのトグルの周波数と均等であってもよいし、データストローブ信号H_DQSの周波数より大きくてもよい。発振器515は、発振信号を制御回路516へ出力する。
制御回路516は、カウンタ回路514、発振器515、FIFO回路513、端子群22の間に電気的に接続される。制御回路516は、入力ノード516aが発振器515に接続され、入力ノード516bがカウンタ回路514に接続され、出力ノード516cがFIFO回路513及び端子群22に接続される。
制御回路516は、発振信号を用いて、データストローブ信号H_DQS以上の周波数でトグルするデータストローブ信号N_DQSを生成し、データストローブ信号N_DQSをFIFO回路513へ供給するとともにチャネルCh0経由でチップMC0へ供給する。これにより、FIFO回路513がデータストローブ信号N_DQSに応じてデータ信号N_DQを内部的にシフトさせるとともにチャネルCh0経由でチップMC0へ転送するようにすることができる。
また、制御回路516は、カウンタ回路514のカウント値に応じて、FIFO回路513が空になったと判断すると、データストローブ信号N_DQSのトグルを停止させる。制御回路516は、カウンタ回路514のカウント値に応じて、FIFO回路513が再びデータ信号DQを保持し始めたと判断すると、データストローブ信号N_DQSのトグルを再開させる。これにより、中継チップIFの電力消費を抑制できる。
例えば、半導体装置1内のチャネルChの限界速度がホストチャネルHChの限界速度より速い場合、中継チップIFは、図32に示すように動作し得る。図32は、中継チップIFの動作を示す波形図である。
タイミングt91において、データストローブ信号H_DQSがトグルし始め、カウンタ回路514がデータストローブ信号H_DQSのパルス数をカウントし始める。中継チップIFは、データストローブ信号H_DQSのエッジに応じて、ホストチャネルHCh経由でチップMC0のデータ信号H_DQを受信しFIFO回路513で保持する。
タイミングt92において、制御回路516は、データストローブ信号N_DQSをトグルさせ始め、データストローブ信号N_DQSをFIFO回路513へ供給するとともにチャネルCh0経由でチップMC0へ供給する。
タイミングt93になると、制御回路516は、データストローブ信号H_DQSのパルス数が自身で発生させるデータストローブ信号N_DQSのパルス数に等しくなったことに応じて、FIFO回路513が空になったと判断し、データストローブ信号N_DQSのトグルを停止させる。
タイミングt94になると、制御回路516は、データストローブ信号H_DQSのパルス数がデータストローブ信号N_DQSのパルス数より大きくなったことに応じて、FIFO回路513が再びデータ信号DQを保持し始めたと判断し、データストローブ信号N_DQSのトグルを再開させる。
これ以降、タイミングt92~t94と同様の動作が繰り返される。なお、この動作により、点線の矢印で示されるように、ホストHAからデータ信号H_DQが過不足なくデータ信号N_DQとしてチップMC0へ転送されることが分かる。
以上のように、第7の実施形態では、半導体装置1は、半導体装置1内のデータ転送速度をホストチャネルHChの限界速度以上に高速化できる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1 半導体装置、MC0,MC0-1~MC0-4,MC1,MC1-1~MC1-4 チップ、IF 中継チップ。

Claims (14)

  1. ホストに接続可能である中継チップと、
    第1のチャネルを介して前記中継チップに接続された第1のチップと、
    第2のチャネルを介して前記中継チップに接続された第2のチップと、
    を備え、
    前記中継チップは、前記第1のチャネルを選択するための第1のイネーブル信号と前記第2のチャネルを選択するための第2のイネーブル信号とを前記ホストから受信し、前記第1のイネーブル信号がノンアクティブレベルに維持され前記第2のイネーブル信号がアクティブレベルに維持された状態で前記第1のチャネルを介したデータ転送動作と前記第2のチャネルを介したデータ転送のためのコマンド発行動作とを並行して行うことが可能である
    半導体装置。
  2. 前記中継チップは、前記第1のイネーブル信号がアクティブレベルに維持され前記第2のイネーブル信号がノンアクティブレベルに維持された状態で前記第1のチャネルを介したデータ転送のためのコマンド発行動作と前記第2のチャネルを介したデータ転送動作とを並行して行うことが可能である
    請求項1に記載の半導体装置。
  3. 前記中継チップは、前記第1のイネーブル信号がアクティブレベルに維持され前記第2のイネーブル信号がノンアクティブレベルに維持される第1の期間に、前記第1のチャネルを介して前記第1のチップに第1のコマンドを発行し、前記第1のイネーブル信号がノンアクティブレベルに維持され前記第2のイネーブル信号がアクティブレベルに維持される前記第1の期間より後の第2の期間に、前記第1のチャネルを介して前記中継チップ及び前記第1のチップ間で前記第1のコマンドに応じたデータ転送を行うとともに前記第2のチャネルを介して第2のコマンドを前記第2のチップに発行する
    請求項1に記載の半導体装置。
  4. 前記中継チップは、前記第1のイネーブル信号がアクティブレベルに維持され前記第2のイネーブル信号がノンアクティブレベルに維持される前記第2の期間より後の第3の期間に、前記第1のチャネルを介して第3のコマンドを前記第1のチップに発行するとともに前記第2のチャネルを介して前記中継チップ及び前記第2のチップ間で前記第2のコマンドに応じたデータ転送動作を行う
    請求項3に記載の半導体装置。
  5. ホストと、
    通信路を介して前記ホストに接続された請求項1から4のいずれか1項に記載の半導体装置と、
    を備えたメモリシステム。
  6. ホストに接続可能であり、データ信号を受ける第1の端子と、
    前記ホストに接続可能であり、タイミング信号を受ける第2の端子と、
    前記第1の端子に接続可能である第1のデータノードと前記第2の端子に接続可能である第1のクロックノードと第1のチャネルを介して第1のチップに接続可能である第2のデータノードと前記第1のチャネルを介して前記第1のチップに接続可能である第2のクロックノードとを有する第1の転送回路と、
    前記第1の端子に接続可能である第1のデータノードと前記第2の端子に接続可能である第1のクロックノードと第2のチャネルを介して第2のチップに接続可能である第2のデータノードと前記第2のチャネルを介して前記第2のチップに接続可能である第2のクロックノードとを有する第2の転送回路と、
    前記第1の端子及び前記第1の転送回路の第1のデータノードが接続された第1の状態と前記第1の端子及び前記第2の転送回路の第1のデータノードが接続された第2の状態とを切り替える第1の切り替え回路と、
    前記第2の端子及び前記第1の転送回路の第1のクロックノードが接続された第3の状態と前記第2の端子及び前記第2の転送回路の第1のクロックノードが接続された第4の状態とを切り替える第2の切り替え回路と、
    を備えた半導体チップ。
  7. ホストに接続可能である中継チップと、
    第1のチャネルを介して前記中継チップに接続された第1のチップと、
    第2のチャネルを介して前記中継チップに接続された第2のチップと、
    を備え、
    前記中継チップは、前記第1のチャネルを選択するための第1のイネーブル信号と前記第2のチャネルを選択するための第2のイネーブル信号とを前記ホストから受信し、前記第1のイネーブル信号がアクティブレベルに維持され前記第2のイネーブル信号がアクティブレベルに維持された状態で前記第1のチャネルを介したデータ転送動作と前記第2のチャネルを介したデータ転送動作とを並行して行うことが可能である
    半導体装置。
  8. 前記中継チップは、前記第1のイネーブル信号がアクティブレベルに維持され前記第2のイネーブル信号がノンアクティブレベルに維持される第1の期間に、前記第1のチャネルを介して前記第1のチップに第1のコマンドを発行し、前記第1のイネーブル信号がノンアクティブレベルに維持され前記第2のイネーブル信号がアクティブレベルに維持される前記第1の期間より後の第2の期間に、前記第2のチャネルを介して前記第2のチップに第2のコマンドを発行し、前記第1のイネーブル信号がアクティブレベルに維持され前記第2のイネーブル信号がアクティブレベルに維持される前記第2の期間より後の第3の期間に、前記第1のチャネルを介して前記第1のコマンドに応じたデータ転送動作を行うとともに前記第2のチャネルを介して前記第2のコマンドに応じたデータ転送動作を行う
    請求項7に記載の半導体装置。
  9. ホストと、
    通信路を介して前記ホストに接続された請求項7又は8に記載の半導体装置と、
    を備えたメモリシステム。
  10. ホストに接続可能であり、データ信号を受ける第1の端子と、
    前記ホストに接続可能であり、タイミング信号を受ける第2の端子と、
    前記第2の端子に接続された分周回路と、
    第1のデータノードと前記分周回路に接続された第1のクロックノードと第1のチャネルを介して第1のチップに接続可能である第2のデータノードと前記第1のチャネルを介して前記第1のチップに接続可能である第2のクロックノードとを有する第1の転送回路と、
    第1のデータノードと前記分周回路に接続された第1のクロックノードと第2のチャネルを介して第2のチップに接続された第2のデータノードと前記第2のチャネルを介して前記第2のチップに接続された第2のクロックノードとを有する第2の転送回路と、
    前記第1の端子及び前記第1の転送回路の第1のデータノードが接続された第5の状態と前記第1の端子及び前記第2の転送回路の第1のデータノードが接続された第6の状態とを切り替える切り替え回路と、
    を備えた半導体チップ。
  11. 前記切り替え回路は、前記タイミング信号の偶数番目のエッジに応じて前記第5の状態に切り替え、前記タイミング信号の奇数番目のエッジに応じて前記第6の状態に切り替える
    請求項10に記載の半導体チップ。
  12. ホストに接続可能であり、データ信号を受ける第1の端子と、
    前記ホストに接続可能であり、タイミング信号を受ける第2の端子と、
    前記第2の端子に接続された分周回路と、
    前記第1の端子で受けたデータ信号を前記タイミング信号の偶数番目のエッジに応じてサンプリングし第1のチップが接続される第1のチャネルの側へ出力し、前記第1の端子で受けたデータ信号を前記タイミング信号の奇数番目のエッジに応じてサンプリングして第2のチップが接続される第2のチャネルの側へ出力するサンプラと、
    を備えた半導体チップ。
  13. 第1のデータノードと前記分周回路に接続された第1のクロックノードと第1のチャネルを介して第1のチップに接続可能である第2のデータノードと前記第1のチャネルを介して前記第1のチップに接続された第2のクロックノードとを有する第1の転送回路と、
    第1のデータノードと前記分周回路に接続された第1のクロックノードと第2のチャネルを介して第2のチップに接続された第2のデータノードと前記第2のチャネルを介して前記第2のチップに接続された第2のクロックノードとを有する第2の転送回路と、
    をさらに備え、
    前記サンプラは、前記第1の端子で受けたデータ信号を前記タイミング信号の偶数番目のエッジに応じてサンプリングして前記第1の転送回路の第1のデータノードへ出力し、前記第1の端子で受けたデータ信号を前記タイミング信号の奇数番目のエッジに応じてサンプリングして前記第1の転送回路の第1のデータノードへ出力する
    請求項12に記載の半導体チップ。
  14. ホストに接続可能であり、データ信号を受ける第1の端子と、
    前記ホストに接続可能であり、タイミング信号を受ける第2の端子と、
    前記第1の端子に接続された第1のデータノードと前記第2の端子に接続された第1のクロックノードとを有するサンプラと、
    前記サンプラに接続された第1のデータノードと前記第2の端子に接続された第1のクロックノードとチャネルを介して第1のチップに接続された出力ノードとを有する転送回路と、
    前記第2の端子に接続された入力ノードを有するカウンタと、
    発振回路と、
    前記発振回路に接続された第1の入力ノードと前記カウンタに接続された第2の入力ノードと前記チャネルを介して前記第1のチップに接続された出力ノードとを有する制御回路と、
    を備えた半導体チップ。
JP2021096711A 2021-06-09 2021-06-09 半導体装置、メモリシステム、及びチップ Pending JP2022188572A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021096711A JP2022188572A (ja) 2021-06-09 2021-06-09 半導体装置、メモリシステム、及びチップ
US17/681,423 US11977777B2 (en) 2021-06-09 2022-02-25 Semiconductor device including relay chip

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021096711A JP2022188572A (ja) 2021-06-09 2021-06-09 半導体装置、メモリシステム、及びチップ

Publications (1)

Publication Number Publication Date
JP2022188572A true JP2022188572A (ja) 2022-12-21

Family

ID=84389881

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021096711A Pending JP2022188572A (ja) 2021-06-09 2021-06-09 半導体装置、メモリシステム、及びチップ

Country Status (2)

Country Link
US (1) US11977777B2 (ja)
JP (1) JP2022188572A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230131027A (ko) * 2022-03-04 2023-09-12 에스케이하이닉스 주식회사 지연량을 계산 및 교정하는 반도체장치

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8412880B2 (en) 2009-01-08 2013-04-02 Micron Technology, Inc. Memory system controller to manage wear leveling across a plurality of storage nodes
US9799402B2 (en) * 2015-06-08 2017-10-24 Samsung Electronics Co., Ltd. Nonvolatile memory device and program method thereof
US20180314629A1 (en) 2017-04-27 2018-11-01 British Cayman Islands Intelligo Technology Inc. Managing parallel access to a plurality of flash memories
US11404097B2 (en) * 2018-12-11 2022-08-02 SK Hynix Inc. Memory system and operating method of the memory system
JP2020149588A (ja) 2019-03-15 2020-09-17 キオクシア株式会社 メモリシステム及びメモリコントローラ
US11507310B2 (en) * 2019-09-02 2022-11-22 SK Hynix Inc. Memory controller and operating method thereof
KR20220054096A (ko) * 2020-10-23 2022-05-02 삼성전자주식회사 패리티를 저장하는 메모리 장치 및 이를 포함하는 메모리 시스템

Also Published As

Publication number Publication date
US20220398043A1 (en) 2022-12-15
US11977777B2 (en) 2024-05-07

Similar Documents

Publication Publication Date Title
US7450461B2 (en) Semiconductor memory device and transmission/reception system provided with the same
JP5193045B2 (ja) 出力制御部を備えたメモリ
JP5658082B2 (ja) 半導体装置
JP5261803B2 (ja) 不揮発性メモリ用の高速ファンアウトシステムアーキテクチャおよび入出力回路
US10552047B2 (en) Memory system
JP2002202911A (ja) 不揮発性メモリ装置
US20060023554A1 (en) Nonvolatile memory apparatus
KR20150007292A (ko) 설정 가능한 가상 페이지 크기를 갖는 브리징 장치
KR20130033230A (ko) 하이브리드 메모리 장치, 이를 포함하는 시스템, 및 하이브리드 메모리장치의 데이터 기입 및 독출 방법
US20230395111A1 (en) Non-volatile memory device, controller and memory system
US7616519B2 (en) Semiconductor integrated circuit device
WO2006051780A1 (ja) 同時アクセスするバンク数が異なるメモリコントローラに対応した不揮発性メモリ装置
US20120155200A1 (en) Memory device, memory system including the same, and control method thereof
TWI827966B (zh) 記憶體系統
US20060083096A1 (en) Semiconductor memory device and package thereof, and memory card using the same
JP2022188572A (ja) 半導体装置、メモリシステム、及びチップ
JP2021149729A (ja) 半導体装置
US20050135145A1 (en) Synchronous flash memory device and method of operating the same
KR20060041718A (ko) 불휘발성 메모리 제어방법 및 불휘발성 메모리 제어장치
US11861369B2 (en) Processing-in-memory (PIM) device
US11842266B2 (en) Processing-in-memory (PIM) device, controller for controlling the PIM device, and PIM system including the PIM device and the controller
US20200293452A1 (en) Memory device and method including circular instruction memory queue
KR20210152750A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
TW202223889A (zh) 半導體積體電路、記憶體控制器及記憶體系統
CN107093447B (zh) 存储器装置