(57)【要約】      （修正有）【課題】電力効率が優れたデータ処理システム及びその動作方法を提供する。【解決手段】電子装置１は、ホスト１０とデータ処理システム１００を含む。データ処理システムは、複数のページを含む複数のメモリバンクからなるメモリモジュール２００と、メモリモジュールを制御するコントローラ３００を含む。コントローラは、ホストからオフロードして処理する演算のアプリケーションの種類、及びアプリケーションのプログラムコード保存住所を受信してプログラムコードを実行し、実行結果により生成されたデータをメモリモジュールに保存し、アプリケーションの種類に基づいてメモリモジュールのリフレッシュの可否又は周期を制御する。【選択図】図１
2020177646.tif 000002
【特許請求の範囲】
【請求項１】
複数のページを含む複数のメモリバンクからなるメモリモジュール；及び、
前記メモリモジュールを制御するコントローラ；を含み、
前記コントローラは、ホストからオフロードして処理する演算のアプリケーションの種類、及び前記アプリケーションのプログラムコード保存住所を受信して前記プログラムコードを実行し、前記実行結果により生成されたデータを前記メモリモジュールに保存し、前記アプリケーションの種類に基づいて、前記メモリモジュールのリフレッシュの可否又は周期を制御するように構成される、データ処理システム。
【請求項２】
前記コントローラは、前記プログラムコードを前記メモリモジュールの第１の領域にローディングし、前記第１の領域に含まれたメモリバンクを既設定の周期ごとにリフレッシュするように構成される、請求項１に記載のデータ処理システム。
【請求項３】
前記コントローラは、前記データを前記メモリモジュールの第２の領域に保存し、前記第２の領域に含まれたメモリバンク別にリフレッシュの可否又は周期を制御するように構成される、請求項１に記載のデータ処理システム。
【請求項４】
前記コントローラは、前記メモリバンク別動作制御コマンドを用いて、前記メモリバンクのリフレッシュの可否を制御するように構成される、請求項１に記載のデータ処理システム。
【請求項５】
前記コマンドはアクティブコマンドを含む、請求項４に記載のデータ処理システム。
【請求項６】
前記コントローラは、前記データを前記メモリモジュールの第２の領域に保存し、前記第２の領域に含まれたメモリバンクのページ別にリフレッシュの可否又は周期を制御するように構成される、請求項１に記載のデータ処理システム。
【請求項７】
前記コントローラは、前記メモリバンクのページ別動作制御コマンドを用いて、前記メモリバンクのリフレッシュの可否を制御するように構成される、請求項６に記載のデータ処理システム。
【請求項８】
前記コマンドはバンク別リフレッシュコマンドを含む、請求項７に記載のデータ処理システム。
【請求項９】
前記コントローラは、前記メモリバンク別に、或いは前記メモリバンクの前記ページ別に、リフレッシュサイクルを保存するルックアップテーブルを含み、前記ルックアップテーブルに保存されたサイクルに基づいて、前記メモリモジュールにリフレッシュコマンドを転送するように構成される、請求項１に記載のデータ処理システム。
【請求項１０】
前記アプリケーションの種類は、前記コントローラが前記オフロードした演算を処理することにより生成された前記データが消失しても構わないかを示す特性によって区分される、請求項１に記載のデータ処理システム。
【請求項１１】
複数のページを含む複数のメモリバンクからなるメモリモジュール、及び前記メモリモジュールを制御するコントローラを含むデータ処理システムの動作方法であって、
ホストがアプリケーションに対する演算処理を要請することにより、前記コントローラが前記ホストから前記アプリケーションの種類、及び前記アプリケーションのプログラムコード保存住所を受信するステップ；
前記プログラムコードをローディングする前記メモリの住所及び前記プログラムコードが処理されることにより生成されるデータを保存する前記メモリモジュールの住所を判断するステップ；及び、
前記アプリケーションの種類に基づいて、前記メモリモジュールのリフレッシュの可否又は周期を制御するリフレッシュ制御ステップ；を含むように構成される、データ処理システムの動作方法。
【請求項１２】
前記コントローラは、前記プログラムコードを前記メモリモジュールの第１の領域にローディングし、前記リフレッシュ制御ステップは、前記第１の領域に含まれたメモリバンクを既設定の周期ごとにリフレッシュするように制御するステップを含む、請求項１１に記載のデータ処理システムの動作方法。
【請求項１３】
前記コントローラは、前記データを前記メモリモジュールの第２の領域に保存し、前記リフレッシュ制御ステップは、前記第２の領域に含まれたメモリバンク別にリフレッシュの可否又は周期を制御するステップを含むように構成される、請求項１１に記載のデータ処理システムの動作方法。
【請求項１４】
前記リフレッシュ制御ステップは、前記コントローラが前記メモリモジュールに転送する前記メモリバンク別動作制御コマンドにリフレッシュ制御情報を含めて転送するステップを含む、請求項１１に記載のデータ処理システムの動作方法。
【請求項１５】
前記コマンドはアクティブコマンドを含む、請求項１４に記載のデータ処理システムの動作方法。
【請求項１６】
前記コントローラは、前記データを前記メモリモジュールの第２の領域に保存し、前記第２の領域に含まれたメモリバンクのページ別にリフレッシュの可否又は周期を制御するように構成される、請求項１１に記載のデータ処理システムの動作方法。
【請求項１７】
前記リフレッシュ制御ステップは、前記コントローラが前記メモリモジュールに転送する前記メモリバンクのページ別動作制御コマンドにリフレッシュ制御情報を含めて転送するステップを含む、請求項１６に記載のデータ処理システムの動作方法。
【請求項１８】
前記コマンドはバンク別リフレッシュコマンドを含む、請求項１７に記載のデータ処理システムの動作方法。
【請求項１９】
前記コントローラは、前記メモリバンク別に、或いは前記メモリバンクの前記ページ別に、リフレッシュサイクルを保存するルックアップテーブルを含み、
前記リフレッシュ制御ステップは、前記ルックアップテーブルに保存されたサイクルに基づいて、前記メモリモジュールにリフレッシュコマンドを転送するステップを含むように構成される、請求項１１に記載のデータ処理システムの動作方法。
【請求項２０】
前記アプリケーションの種類は、前記コントローラが前記データが消失しても構わないかを示す特性によって区分される、請求項１１に記載のデータ処理システムの動作方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピューティング装置に関し、より詳細には、データ処理システム及びその動作方法に関する。
【背景技術】
【０００２】
人工知能アプリケーション及びビッグデータ分析に対する関心及び重要性が高くなると共に、大容量のデータを効率よく処理できるコンピューティングシステムに対する要求が増加しつつある。
【０００３】
伝統のコンピューティングシステムは、プロセッサ中心コンピューティングに集中したのに対し、最近のコンピューティングシステムは、膨大なデータを高速で並列処理できるデータ中心コンピューティング、或いは、メモリ中心コンピューティングに発展している。これにより、プロセッサ及びメモリ間のデータのボトルネック現象が低減できるため、演算性能の極大化を図ることができる。
【０００４】
しかしながら、コンピューティング装置の性能及び速度の向上は、エネルギー消費量の増加及び発熱を誘発する恐れがある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、電力効率が優れたデータ処理システム及びその動作方法を提供することができる。
【課題を解決するための手段】
【０００６】
本発明の一実施例に係るデータ処理システムは、複数のページを含む複数のメモリバンクからなるメモリモジュール；及び、前記メモリモジュールを制御するコントローラ；を含み、前記コントローラは、ホストからオフロードして処理する演算のアプリケーションの種類、及び前記アプリケーションのプログラムコード保存住所を受信して前記プログラムコードを実行し、前記実行結果により生成されたデータを前記メモリモジュールに保存し、前記アプリケーションの種類に基づいて、前記メモリモジュールのリフレッシュの可否又は周期を制御するように構成される。
【０００７】
本発明の一実施例に係るデータ処理システムの動作方法は、複数のページを含む複数のメモリバンクからなるメモリモジュール、及び前記メモリモジュールを制御するコントローラを含むデータ処理システムの動作方法であって、ホストがアプリケーションに対する演算処理を要請することにより、前記コントローラが前記ホストから前記アプリケーションの種類、及び前記アプリケーションのプログラムコード保存住所を受信するステップ；前記プログラムコードをローディングする前記メモリの住所、及び前記プログラムコードの処理により生成されるデータを保存する前記メモリモジュールの住所を判断するステップ；及び、前記アプリケーションの種類に基づいて、前記メモリモジュールのリフレッシュの可否又は周期を制御するリフレッシュ制御ステップ；を含むように構成される。
【発明の効果】
【０００８】
本発明によれば、メモリに保存されたデータの特性によってデータを維持するための付加動作を制御することで、データ処理システムの電力効率を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施例に係るデータ処理システムを含む電子装置の構成図である。
【図２】本発明の一実施例に係るメモリモジュールの構成図である。
【図３】本発明の一実施例に係るコントローラの構成図である。
【図４】本発明の一実施例に係る電力管理部の構成図である。
【図５】本発明の実施例等に係るリフレッシュ周期設定方法を説明するための図である。
【図６】本発明の実施例等に係るリフレッシュ周期設定方法を説明するための図である。
【図７】本発明の実施例等に係るリフレッシュ周期設定方法を説明するための図である。
【図８】本発明の一実施例に係るデータ処理システムの動作方法を説明するためのフローチャートである。
【図９】本発明の実施例等に係る積層型半導体装置の構成図である。
【図１０】本発明の実施例等に係る積層型半導体装置の構成図である。
【図１１】本発明の実施例等に係る積層型半導体装置の構成図である。
【図１２】本発明の一実施例に係るネットワークシステムの構成図である。
【発明を実施するための形態】
【００１０】
以下、添付図面に基づき、本発明の好適な実施例をより詳細に説明する。
【００１１】
図１は、本発明の一実施例に係るデータ処理システムを含む電子装置の構成図である。
【００１２】
図１に示すように、電子装置１は、ホスト１０及びデータ処理システム１００を含むことができる。
【００１３】
電子装置１は、個人用コンピュータ、サーバコンピュータ、モバイルコンピューティング装置及び自動車の電子制御装置などのような多様な電子装置であり得る。
【００１４】
電子装置１は、スーパーコンピュータやコンピュータクラスターを用いて協力的な方式にて高級演算を遂行する高性能コンピューティング(High  Performance  Computing:ＨＰＣ)装置、或いは、個別的にデータを処理するネットワーキングした情報処理装置等又はサーバ等のアレイを含むことができる。
【００１５】
ホスト１０は、使用者インタフェースを介して使用者に多様なサービスが提供できる。このために、ホスト１０は、データ処理システム１００にデータ処理と関連した要請、アドレス、そして必要な場合データを転送し、それに対する処理結果が受信できる。
【００１６】
データ処理システム１００は、ホスト１０の要請及びアドレスに応じて対応する動作を遂行し、必要な場合データをホスト１０に転送できる。
【００１７】
ホスト１０は、データ処理システム１００にオフロードして処理する演算のアプリケーション関連情報をデータ処理システム１００に転送できる。アプリケーション関連情報は、アプリケーションの種類、アプリケーションのプログラムコード保存住所及び初期データを含むことができる。データ処理システム１００は、これに応じてオフロードした演算が処理できる。ここで、オフロードとは、ホスト１０の演算を他の装置、例えばデータ処理システム１００に委任することを意味する。
【００１８】
一実施例において、アプリケーションの種類は、処理過程で発生するデータが消失しても構わないかを示す特性によって区分できる。
【００１９】
データ処理システム１００は、メモリモジュール２００及びコントローラ３００を含むことができる。
【００２０】
メモリモジュール２００は、コントローラ３００の制御によって、データを保存したり保存のデータを出力したりできる。メモリモジュール２００は、揮発性メモリ装置(ＶＭ)を含むことができる。揮発性メモリ装置(ＶＭ)の例としては、ＤＲＡＭ(Dynamic Random Access Memory)及びＳＲＡＭ(Static Random Access Memory)等が挙げられる。
【００２１】
メモリモジュール２００は、揮発性メモリ装置に加えて、ＥＥＰＲＯＭ(Electrically Erasable and Programmable ROM)、ナンド(NAND)フラッシュメモリ、ノア(NOR)フラッシュメモリ、ＰＲＡＭ(Phase-Change RAM)、ＲｅＲＡＭ(Resistive RAM)、ＦＲＡＭ（登録商標）(Ferroelectric RAM)及びＳＴＴ−ＭＲＡＭ(Spin Torque Transfer Magnetic RAM)等のような多様な非揮発性メモリ装置(ＮＶＭ)を含むことができる。
【００２２】
データ処理システム１００のコントローラ３００は、ホスト１０から提供されるアプリケーションのプログラムコード保存住所に対応するメモリ領域からプログラムコードを読み取り、メモリモジュール２００の第１の領域にローディングして実行、すなわち演算できる。これによって生成されたデータらは、メモリモジュール２００の第２の領域に保存できる。一実施例において、プログラムコードは非揮発性メモリ装置(ＮＶＭ)に保存できる。コントローラ３００は、ホスト１０のアプリケーション処理要請に応じて、非揮発性メモリ装置(ＮＶＭ)のプログラムコードを揮発性メモリ装置(ＶＭ)の第１の領域にローディングできる。プログラムコードの実行によって生成されたデータらは、揮発性メモリ領域(ＶＭ)の第２の領域に一時的に保存された後、必要によって非揮発性メモリ装置(ＮＶＭ)に保存できる。
【００２３】
一実施例において、第１の領域に保存されたプログラムコードは、アプリケーションが実行される間に、第１の領域に維持される必要がある。このために、コントローラ３００は、第１の領域のメモリセルを既設定の周期でリフレッシュできる。
【００２４】
一実施例において、機械学習や人工知能アプリケーションを実行して第２の領域に保存されたデータは、一回性であったり、無意味であったり、重要度が低いデータであり得る。このようなデータらは、標準で要求するデータ保有時間内にリフレッシュされなくても、アプリケーションを処理するのに影響を与えない。一実施例において、コントローラ３００は、メモリモジュール２００の第２の領域に含まれたメモリセルをリフレッシュしなかったり、既設定のリフレッシュ周期よりも長くリフレッシュしたりできる。
【００２５】
消失しても構わないデータが保存されたメモリ領域に対して、リフレッシュの遂行が足りなかったり遂行されないように制御することで、データ処理システム１００が消耗する電力量を減少させることができる。
【００２６】
図２は、本発明の一実施例に係るメモリモジュールの構成図である。
【００２７】
図２に示すように、メモリモジュール２００は、ロジック回路部２１０及びメモリコア２２０を含むことができる。
【００２８】
ロジック回路部２１０は、コマンド処理ロジック２１１、アドレス処理ロジック２１３及びデータ送受信ロジック２１５を含むことができる。
【００２９】
コマンド処理ロジック２１１は、コントローラ３００から提供されるコマンドをバッファリング及びデコーディングを行ってメモリコア２２０に提供できる。
【００３０】
アドレス処理ロジック２１３は、コントローラ３００から提供されるアドレスをバッファリング及びデコーディングを行ってメモリコア２２０に提供できる。
【００３１】
データ送受信ロジック２１５は、コントローラ３００から提供されるデータをメモリコア２２０に伝達する一方、メモリコア２２０から提供されるデータをコントローラ３００に伝達するように構成できる。
【００３２】
メモリコア２２０は、複数のバンクを含むことができる。各々のバンクは、複数のロウ(Row)(ページ)及びカラム(Column)に各々接続されるメモリセルを含むことができる。一実施例においてメモリセルはＤＲＡＭセルであり得る。
【００３３】
ＤＲＡＭセルは、保存のデータが消失しないように周期的にリフレッシュされるが、リフレッシュ動作は、コントローラ３００の制御下にコマンド処理ロジック２１１で生成されるオートリフレッシ命令に基づいて、或いは、ロジック回路部２１０で自体的に生成されるセルフリフレッシュ命令に基づいて、バンク単位又はバンク別ロウ(ページ)単位に遂行できる。
【００３４】
リフレッシュ周期は、ＤＲＡＭセルの工程、サイズ及び動作温度等に基づいて決定され得る。
【００３５】
単位ロウに接続されたメモリセルに対するリフレッシュ間隔(Ｔｒｅｆ)は、メモリセルのデータ維持時間よりも短く設定できる。各々のロウをロウアドレスによって順次選択しながらリフレッシュする場合、メモリモジュール２００の各バンクを構成するＮ個のロウに接続されたメモリセルを完全にリフレッシュするためのリフレッシュ周期(Ｃｙｃｌｅ)は、Ｔｒｅｆ／Ｎで設定できる。
【００３６】
したがって、メモリモジュール２００を構成するセルの特性及びメモリモジュール２００の容量により、リフレッシュサイクルが異なるように設定できる。
【００３７】
周期的なリフレッシュ動作は、データ処理システム１００、さらに電子装置１の電力消耗量を増加させる。人工知能や機械学習に用いられるデータ処理システム１００は、膨大な量のデータを処理するために大容量メモリモジュール２００を採択し、周期的なリフレッシュ動作による電力消耗の問題を解決するための方案が必要である。
【００３８】
本発明の一実施例によれば、消失しても構わないデータが保存されたメモリ領域に対し、リフレッシュの遂行が足りなかったり遂行されないように制御することで、データ処理システム１００が消耗する電力量を減少させることができる。
【００３９】
図３は、本発明の一実施例に係るコントローラの構成図である。
【００４０】
図３に示すように、一実施例に係るコントローラ３００は、プロセッサ３０１、ホストインタフェース３０３及びメモリインタフェース３０５を含むことができる。
【００４１】
プロセッサ３０１は、メモリモジュール２００に対するデータの読み取り及び書き取りに必要な多様な制御情報をホストインタフェース３０３及びメモリインタフェース３０５に伝達するように構成できる。一実施例において、プロセッサ３０１は、ホスト１０が転送する命令に応じてホスト１０の要請した演算が処理できる。ホスト１０の要請した演算を処理するために、プロセッサ３０１は、ホスト１０又はメモリモジュール２００から提供されるデータが用いられる。
【００４２】
一実施例において、プロセッサ３０１は、電子装置１で実行される特化したアプリケーションのための論理関数が実行できる。一実施例において、電子装置１は高い帯域幅を要求する機械学習アプリケーションや機械学習処理を伴う人工知能アプリケーションが実行でき、プロセッサ３０１は機械学習や人工知能アプリケーションに特化した論理関数、例えば、コンボリューション(Convolution)や行列積(Matrix Multiplication)演算が実行できる。
【００４３】
ホストインタフェース３０３は、ホスト１０及びデータ処理システム１００間のインタフェースが提供できる。ホストインタフェース３０３は、ホスト１０から提供されるコマンドを保存及びスケジュールリングしてプロセッサ３０１に提供できる。ホストインタフェース３０３は、プロセッサ３０１の制御によってホスト１０から提供されるデータをプロセッサ３０１又はメモリインタフェース３０５に提供したり、メモリモジュール２００からメモリインタフェース３０５を介して提供されたデータをホスト１０に提供したりできる。
【００４４】
メモリインタフェース３０５は、ホストインタフェース３０３又はプロセッサ３０１から提供されたデータをメモリモジュール２００に転送したり、メモリモジュール２００から読み取るデータを受信してプロセッサ３０１又はホストインタフェース３０３に提供できる。このために、メモリインタフェース３０５は、コントローラ３００及びメモリモジュール２００間の信号送受信のための通信チャンネルが提供できる。
【００４５】
一実施例において、プロセッサ３０１は、命令処理部３１０、演算処理部３２０及び電力管理部３３０を含むことができる。
【００４６】
命令処理部３１０は、ホストインタフェース３０３を介して提供されるホスト１０の命令を復号化して出力できる。ホスト１０はデータ処理システム１００に特定アプリケーションに対する演算処理をコントローラ３００の演算処理部３２０でオフロードして処理するように命令でき、命令処理部３１０はオフロード命令を抽出して復号化して出力できる。
【００４７】
演算処理部３２０は、命令処理部３１０から出力された命令に応じて、メモリモジュール２００の第１の領域にローディングされたプログラムコードによってホスト１０からオフロードした演算が処理できる。演算処理部３２０の演算処理結果により生成されたデータは、既設定のレジスタ設定値によってメモリモジュール２００の特定領域、例えば第２の領域に保存できる。
【００４８】
一実施例において、演算処理部３２０は、算術論理装置(Arithmetic Logic Unit;ＡＬＵ)及び浮動小数点装置(Floating-Point Unit;ＦＰＵ)を含むことができる。
【００４９】
一実施例において、ホスト１０は、特定アプリケーションに対する演算処理をデータ処理システム１００にオフロードするために、オフロードして処理する演算のアプリケーションの種類、アプリケーションのプログラムコード保存住所及び初期データを含むアプリケーション関連情報が転送できる。データ処理システム１００は、プログラムコード保存住所に接近してメモリモジュール２００の第１の領域にプログラムコードをローディング及び実行して演算を処理し、演算処理結果をメモリモジュール２００の第２の領域に保存できる。
【００５０】
電力管理部３３０は、メモリモジュール２００で消耗する電力量を管理するように構成できる。
【００５１】
ホスト１０がデータ処理システム１００にオフロード処理要請した演算のアプリケーションは、高い帯域幅を要求する機械学習アプリケーションやビッグデータ処理に特化した論理関数であり得る。機械学習アプリケーションは、例えば自律走行車両などに適用されるイメージ処理アプリケーションであり得る。自律走行車両の場合、周辺の事物や動物のイメージを入力データとして周辺状況を識別した後には、入力データをもう使用しないことがある。ビックデータを処理する場合、入力される数多くのデータを加工した結果値のみが使用されるだけで、入力値はもう使用しないことがある。ＣＮＮ(Convolutional Neural Network)アプリケーションの場合、入力として使用されるイメージは解像度が多少低くなっても既に検出の正確度に影響を与えない。
【００５２】
このように、特化したアプリケーションのための論理関数を演算する場合は、一回性であったり、無意味であったり、重要度が低いデータを占有する比重が高い。
【００５３】
このようなデータらはメモリモジュール２００に継続維持される必要がないので、電力管理部３３０は、このようなデータらが保存されたメモリセルに対するリフレッシュ動作を制御することで、不必要な電力消耗が抑制できる。
【００５４】
一実施例において、電力管理部３３０は、メモリモジュール２００に転送するコマンドインタフェースを用いてリフレッシュ動作が制御できる。
【００５５】
図４は、本発明の一実施例に係る電力管理部の構成図である。
【００５６】
図４に示すように、電力管理部３３０は、アプリケーション認識部３３０１、保存位置判断部３３０３及びリフレッシュ周期設定部３３０５を含むことができる。
【００５７】
ホスト１０がデータ処理システム１００にオフロードして処理する演算のアプリケーション関連情報を転送することで、アプリケーション認識部３３０１は、該演算のアプリケーションの種類が把握できる。アプリケーション認識部３３０１は、アプリケーションの種類によって該演算処理過程で発生するデータが消失しても構わないか否かが判断できる。
【００５８】
保存位置判断部３３０３には、演算処理部３２０からプログラムコードがローディングされる第１の領域の位置、及びアプリケーションに対する演算の処理過程で発生するデータが保存される第２の領域の位置が提供される。
【００５９】
リフレッシュ周期設定部３３０５は、アプリケーション認識部３３０１で把握したアプリケーションの種類、及び保存位置判断部３３０３から提供されたデータ保存位置に基づいて、第１の領域及び第２の領域の各々に対するリフレッシュの可否又は周期が設定できる。
【００６０】
一実施例において、リフレッシュ周期設定部３３０５は、第１の領域に含まれるメモリセルが既設定の周期ごとにリフレッシュされるようにし、第２の領域に含まれるメモリセルがリフレッシュしなかったり既設定の周期よりも長くリフレッシュされるように制御できる。
【００６１】
リフレッシュ周期設定部３３０５は、第１の領域及び第２の領域に対するリフレッシュ制御情報をメモリインタフェース３０５を介してメモリモジュール２００に提供し、第１の領域及び第２の領域に含まれたメモリセルのリフレッシ周期が制御できる。
【００６２】
一実施例において、リフレッシュ周期設定部３３０５は、コマンドインタフェースを介して転送されるコマンドを用いて、リフレッシュ制御情報が転送できる。一実施例において、リフレッシュ制御情報を転送するためのコマンドは、メモリモジュール２００を構成するメモリバンク単位に動作を制御するコマンド、或いは、メモリバンク別ロウ単位に動作を制御するコマンドであり得る。メモリバンク単位に動作を制御するコマンドは、アクティブコマンドであり得るが、これに限定されない。メモリバンク別ロウ単位に動作を制御するコマンドは、バンク別リフレッシュコマンドであり得るが、これに限定されない。
【００６３】
図５〜図７は、本発明の実施例等に係るリフレッシュ周期設定方法を説明するための図である。
【００６４】
図５及び図６は、コマンドインタフェースを用いたリフレッシュ周期設定方法を示す。一実施例において、図５は、アクティブコマンドを用いたリフレッシュ制御情報転送方法を説明するための図である。
【００６５】
アクティブコマンド(ＡＣＴ)は、ＤＲＡＭからなるメモリモジュール２００に含まれた複数のメモリバンクのうち、特定メモリバンクを活性化するためにコントローラ３００がメモリモジュール２００に転送するコマンドである。アクティブコマンド(ＡＣＴ)は、クロックの立ち上がりエッジ及び立ち下がりエッジにより２−サイクルで転送できるが、このうち、未使用インタフェース、例えばＲ[６]、Ｒ[７]が存在する。リフレッシュ周期設定部３３０５は、未使用インタフェースを介してページ別リフレッシュ制御信号(ＰＰＲＥ)が転送できる。
【００６６】
具体的に、保存位置判断部３３０３から第２の領域のバンクアドレス(ＢＡ)及びロウアドレス(ＲＡ)が抽出でき、抽出されたバンクのロウ別にリフレッシュの可否又は周期を制御するためのページ別リフレッシュ制御信号(ＰＰＲＥ)が転送できる。
【００６７】
メモリモジュール２００は、コントローラ３００から転送されるアクティブコマンドに含まれたバンクアドレス(ＢＡ)、ロウアドレス(ＲＡ)及びページ別リフレッシュ制御信号(ＰＰＲＥ)を抽出し、該バンクの該ロウに対するリフレッシュ動作をオン又はオフさせることができる。例えば、ページ別リフレッシュ制御信号(ＰＰＲＥ)の論理レベルが論理ローレベルである場合、該バンクの該ロウに対してはリフレッシュを遂行しないことができる。
【００６８】
図６は、バンク別リフレッシュコマンドを用いたリフレッシュ制御情報転送方法を説明するための図である。
【００６９】
バンク別リフレッシュコマンド(ＲＥＦＳＢ)は、ＤＲＡＭからなるメモリモジュール２００に含まれた複数のメモリバンクのうち、特定バンクをリフレッシュするために、すなわちメモリバンク別にリフレッシュを遂行するために、コントローラ３００がメモリモジュール２００に転送するコマンドである。バンク別リフレッシュコマンド(ＲＥＦＳＢ)は、クロックの立ち上がりエッジ及び立ち下がりエッジにより１−サイクルで転送できるが、このうち、未使用インタフェース、例えばＲ[０]が存在する。リフレッシュ周期設定部３３０５は、未使用インタフェースＲ[０]を介してバンク別リフレッシュ制御信号(ＰＢＲＥ)が転送できる。
【００７０】
具体的に、保存位置判断部３３０３から第２の領域のバンクアドレス(ＢＡ)が抽出でき、抽出されたバンク別にリフレッシュの可否又は周期を制御するためのバンク別リフレッシュ制御信号(ＰＢＲＥ)が転送できる。
【００７１】
メモリモジュール２００は、コントローラ３００から転送されるバンク別リフレッシュコマンドに含まれたバンクアドレス(ＢＡ)及びバンク別リフレッシュ制御信号(ＰＢＲＥ)を抽出し、該バンクに対するリフレッシュ動作をオン又はオフさせることができる。例えば、バンク別リフレッシュ制御信号(ＰＢＲＥ)の論理レベルが論理ローレベルである場合、該バンクに対してはリフレッシュを遂行しないことができる。
【００７２】
図５及び図６に示すように、メモリモジュール２００を構成する特定バンク又は特定バンクの特定ロウ単位にリフレッシュのオン/オフが制御できる。
【００７３】
図７は、特定バンク又は特定バンクのロウ別にリフレッシュ周期を設定する方法を説明するための図である。
【００７４】
メモリモジュール２００を構成する特定バンク又は特定バンクのロウ単位にリフレッシュ単位を設定するために、リフレッシュ周期設定部３３０５は、アプリケーション認識部３３０１で把握したアプリケーションの種類、及び保存位置判断部３３０３から提供されたデータ保存位置に基づいて、第１の領域及び第２の領域の各々に対するリフレッシュ周期が設定できる。一実施例において、プログラムコードが保存される第１の領域に含まれるメモリバンクは、規格で定義したリフレッシュ周期によってリフレッシュできる。一実施例において、消失しても構わないデータが保存される第２の領域に含まれるメモリバンクは、規格で定義したリフレッシュ周期よりも長い周期、例えばＮ倍(Ｎは１よりも大きい有理数)長い周期ごとにリフレッシュできる。第1の領域と第2領域は、異なる領域であり、第2の領域のデータは消失しても構わないデータであることができる。演算処理に伴って発生するデータのうち消失されるべきデータは、第2の領域とは異なる第1の領域または第3の領域に格納されることができる。第1の領域のリフレッシュサイクルがXμs、第2の領域のリフレッシュ周期がYμsであるアプリケーションにおいて、YがXよりも大きく、Xは、第1の領域に含まれているメモリセルのデータリテンション時間よりも小さく、Yは、第2領域に含まれているメモリセルのデータリテンション時間よりも大きい時間である。
【００７５】
リフレッシュ周期設定部は、データの保存位置別に、すなわちバンクアドレス及び/又はロウアドレス別に、リフレッシュ周期(Ｃｙｃｌｅ)を設定したデータをルックアップテーブル３３０７に保存できる。また、ルックアップテーブル３３０７に保存されたサイクルによって、特定バンク又は特定バンクの特定ロウにリフレッシュコマンドが転送できる。
【００７６】
メモリモジュール２００は、ルックアップテーブルで定義した周期ごとにコントローラ３００から転送されるリフレッシュコマンドに応じてリフレッシュが遂行できる。
【００７７】
人工知能は、人間の知的能力を摸倣するための方法を研究する分野であって、コンピュータ工学及び半導体を含んだ多様な分野に直間接的に多くの影響を与えている。
【００７８】
最近、人工神経網アルゴリズム及び機械学習に対する活発な研究結果により、イメージ認識や自然語処理などの正確度は人間水準まで向上し、今後、自律走行自動車や自動化システムなどの分野においても、正確度の高い人工知能技術の実現が予測される。
【００７９】
人工知能アルゴリズムの処理において、本技術のように演算過程で生成されたデータのメモリ内維持時間を制御することで、データ処理システム１００の電力効率を増大させることができる。
【００８０】
図８は、本発明の一実施例に係るデータ処理システムの動作方法を説明するためのフローチャートである。
【００８１】
データ処理システム１００の動作又は待機の中(Ｓ１０１)、ホスト１０は、データ処理システム１００に特定アプリケーションの演算をオフロードして処理することが要請できる(Ｓ１０３)。
【００８２】
ホスト１０は、このために、データ処理システム１００にアプリケーションの種類及びアプリケーションのプログラムコード保存住所が転送できる(Ｓ１０５)。これにより、非揮発性メモリ装置(ＮＶＭ)の該領域に保存されるプログラムコードは、揮発性メモリ装置(ＶＭ)の第１の領域にローディングでき、コントローラ３００のプログラムコードの実行によって生成されるデータは、揮発性メモリ装置(ＶＭ)の第２の領域に保存できる。
【００８３】
コントローラ３００は、プログラムコードがローディングされた第１の領域の住所、及びデータが保存される第２の領域の住所が判断できる(Ｓ１０７)。
【００８４】
また、コントローラ３００は、アプリケーションの種類に基づいて、第１及び第２の領域に含まれたメモリバンクのリフレッシュの可否又は周期が制御できる(Ｓ１０９)。
【００８５】
一実施例において、プログラムコードが保存される第１の領域に含まれるメモリバンクは、規格で定義したリフレッシュ周期によってリフレッシュできる。一実施例において、消失しても構わないデータが保存される第２の領域に含まれるメモリバンクは、規格で定義したリフレッシュ周期よりも長い周期、例えばＮ倍(Ｎは１よりも大きい有理数)長い周期ごとにリフレッシュしたりリフレッシュしなかったりできる。
【００８６】
リフレッシュの可否及び周期を制御するための制御信号は、メモリバンク別動作制御コマンド、又はメモリバンクのページ(ロウ)別動作制御コマンドによって転送できるが、これに限定されるものではない。
【００８７】
図９〜図１１は、本発明の実施例等に係る積層型半導体装置の構成図である。
【００８８】
図９は、本発明の一実施例に係る積層型半導体装置の構成図である。
【００８９】
一実施例に係る積層型半導体装置４０は、複数のダイが積層された積層構造体４１０を含むことができる。積層構造体４１０は、ベースダイ(ＢＡＳＥ ＤＩＥ)４１４の一面に複数のダイを積層し、貫通電極(ＴＳＶ、Through Silicon Via)を介して電気的に連結させることで、入/出力ユニットの数を増やして帯域幅(Bandwidth)を増加させたＨＢＭ(High Bandwidth Memory)形態で構成できる。
【００９０】
積層構造体４１０は、ベースダイ(ＢＡＳＥ ＤＩＥ)４１４及び複数のコアダイ(ＣＯＲＥ ＤＩＥ)４１２を含むことができる。
【００９１】
複数のコアダイ４１２は、ベースダイ４１４の一面上に積層でき、貫通電極(ＴＳＶ)を介して互いに連結できる。コアダイ４１２の各々には、データを保存するためのメモリセル及びメモリセルのコア動作のための回路が配置できる。
【００９２】
コアダイ４１２は、貫通電極(ＴＳＶ)を介してベースダイ４１４と電気的に接続され、貫通電極(ＴＳＶ)を介してベースダイ４１４から信号及び電源などが提供される。
【００９３】
ベースダイ４１４は、例えば図２〜図４に示すようなコントローラ３００を含むことができる。ベースダイ４１４は、積層型半導体装置４０内の多様な機能、例えば、メモリセルの電力管理及びリフレッシュのようなメモリ管理機能、或いはコアダイ４１２及びベースダイ４１４間のタイミング調節機能が遂行できる。
【００９４】
ベースダイ４１４の背面に具備される物理領域(ＰＨＹ)は、アドレス、命令語、データ及び制御信号などのような入出力領域であり得る。物理領域(ＰＨＹ)には、積層型半導体装置４０に要求されるデータ処理速度を満足させる数だけの入出力回路部が具備される。また、ベースダイ４１４の背面における物理領域(ＰＨＹ)の部分には、入出力動作時に必要な信号及び電源が供給されるように、複数の入出力端子及び電源供給端子が具備される。
【００９５】
図１０は、本発明の一実施例に係る積層型半導体装置の構成図である。
【００９６】
図１０に示すように、積層型半導体装置４００は、複数のコアダイ４１２及びベースダイ４１４の積層構造体４１０、ホスト４２０及びインタフェース基板４３０を含むことができる。ホスト４２０は、ＣＰＵやＧＰＵやＡＳＩＣ(Application Specific Integrated Circuit)やＦＰＧＡ(Field Programmable Gate Arrays)などになり得る。
【００９７】
ベースダイ４１４は、コアダイ４１２及びホスト４２０間のインタフェースのための回路が実装できる。積層構造体４１０は、図９に示すような構造を持つことができる。
【００９８】
積層構造体４１０及びホスト４２０は、インタフェース基板４３０を介して各々の物理領域(ＰＨＹ)が連結できる。インタフェース基板４３０は、インターポーザー(ＩＮＴＥＲＰＯＳＥＲ)が指称され得る。
【００９９】
図１１は、本発明の一実施例に係る積層型半導体装置の構成図である。
【０１００】
図１１に示す積層型半導体装置４０００は、図１０に示す積層型半導体装置４００をパッケージ基板４４０上に配置したものと理解できる。
【０１０１】
パッケージ基板４４０及びインタフェース基板４３０は、接続端子を介して電気的に接続できる。
【０１０２】
インタフェース基板４３０上に図９に示すような積層構造体４１０及びホスト４２０を積層し、これをパッケージ基板４４０に装着した後にパッケージングすることで、システムインパッケージ(System In Package;ＳｉＰ)タイプの半導体装置が具現できる。
【０１０３】
図１２は、本発明の一実施例に係るネットワークシステムの構成図である。
【０１０４】
図１２に示すように、ネットワークシステム５０００は、ネットワーク５５００を介して連結したサーバシステム５３００及び複数のクライアントシステム５４１０〜５４３０を含むことができる。
【０１０５】
サーバシステム５３００は、複数のクライアントシステム５４１０〜５４３０の要請に応じてデータがサービスできる。例えば、サーバシステム５３００は、複数のクライアントシステム５４１０〜５４３０から提供されたデータが保存できる。他の例として、サーバシステム５３００は、複数のクライアントシステム５４１０〜５４３０にデータが提供できる。
【０１０６】
サーバシステム５３００は、ホスト装置５１００及びメモリシステム５２００を含むことができる。メモリシステム５２００は、図２〜図４に示すデータ処理システムとして構成できる。
【図１】
2020177646.tif 000003
【図２】
2020177646.tif 000004
【図３】
2020177646.tif 000005
【図４】
2020177646.tif 000006
【図５】
2020177646.tif 000007
【図６】
2020177646.tif 000008
【図７】
2020177646.tif 000009
【図８】
2020177646.tif 000010
【図９】
2020177646.tif 000011
【図１０】
2020177646.tif 000012
【図１１】
2020177646.tif 000013
【図１２】
2020177646.tif 000014