JP7075528B2 - 半導体集積回路 - Google Patents

半導体集積回路 Download PDF

Info

Publication number
JP7075528B2
JP7075528B2 JP2021086923A JP2021086923A JP7075528B2 JP 7075528 B2 JP7075528 B2 JP 7075528B2 JP 2021086923 A JP2021086923 A JP 2021086923A JP 2021086923 A JP2021086923 A JP 2021086923A JP 7075528 B2 JP7075528 B2 JP 7075528B2
Authority
JP
Japan
Prior art keywords
control unit
master
request
write
training
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.)
Active
Application number
JP2021086923A
Other languages
English (en)
Other versions
JP2021120909A (ja
Inventor
勝也 水本
俊行 平木
信彦 本田
翔 山中
隆宏 入田
義彦 堀田
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics 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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2021086923A priority Critical patent/JP7075528B2/ja
Publication of JP2021120909A publication Critical patent/JP2021120909A/ja
Application granted granted Critical
Publication of JP7075528B2 publication Critical patent/JP7075528B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4076Timing circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling requests for interconnection or transfer for access to memory bus based on priority control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • 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/0658Controller construction arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Bus Control (AREA)
  • Dram (AREA)
  • Memory System (AREA)
  • Information Transfer Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

本発明は半導体装置及びアクセス制御方法に関し、例えばメモリへのアクセスを行う半導体装置、及びそのような半導体装置におけるアクセス制御方法に関する。
特許文献1は、複数のバスマスタが共通バスに接続するバスシステムにおけるアクセス制御を開示する。特許文献1に記載される半導体装置は、複数のマスタと、メモリコントローラと、複数のマスタとメモリコントローラとを接続するバスと、中央バス制御システムとを有する。特許文献1には、中央バス制御システムが、各マスタの転送量をモニタし、各マスタの予約ハンド幅とモニタした転送量と権利付与可能数とに基づいて、アクセス権の付与先のマスタを選択することが記載されている。特許文献1において、アクセス権が付与されていないマスタのリクエストは、メモリコントローラとマスタとの間のバスでマスクされる。
また、特許文献1には、メモリのリフレッシュを考慮したバンド幅制御も記載されている。特許文献1では、中央バス制御システムが、メモリコントローラに対してリフレッシュ要求信号を出力し、メモリのリフレッシュ動作を制御する。具体的に、中央バス制御システムは、複数のサブスロットを含む基本スロットの特定の番号のサブスロットにおいてリフレッシュ要求信号を出力し、メモリにおいてリフレッシュ動作を実施させる。特許文献1では、中央バス制御システムは、リフレッシュによりメモリアクセスできない期間が存在するサブスロットについて、全体の要求バンド幅を減らすことで、リフレッシュを考慮したバンド幅制御を実現する。
ところで、近年、メモリに対するデータの書き込み、及び読み出し動作において、動作周波数の高速化に伴って、クロックとデータとのタイミングマージンが厳しくなってきている。この問題に関し、特許文献2は、データ信号とクロック信号との間のスキューの検査を行う検査回路を有するメモリインタフェース回路を開示する。特許文献2に記載のメモリインタフェース回路は、スキュー検査の結果に基づいてCPU(Central Processing Unit)を含む制御回路にスキュー調整を要求する。
国際公開第2017/056132号 特開2011-150759号公報
特許文献1では、メモリにおけるリフレッシュを考慮したアクセス制御が実施される。しかしながら、特許文献1では、スキュー調整などを行うことを考慮したアクセス制御は実施されていない。特許文献2にも記載されるように、一般に、スキュー調整には比較的長い時間が必要である。スキュー調整を行っている間は、メモリに対するデータの書込み、及び読出しはできないため、スキュー調整などを考慮したアクセス制御が望まれる。
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
一実施の形態によれば、半導体装置は、マスタが発行したアクセス要求のメモリコントローラへの出力を制御するアクセス制御部を含み、そのアクセス制御部は、メモリに対するアクセスが停止された状態で実施されるメモリに対するトレーニングを更に制御し、トレーニングの実行中は、マスタが発行したアクセス要求のうちリード要求のメモリコントローラへの出力を抑制するものである。
前記一実施の形態によれば、トレーニングが実行されてメモリアクセスが停止される期間が存在する場合でも、マスタが発行するアクセス要求に対する応答性を向上することができ、リアルタイム性を向上できる。
実施形態1に係る半導体装置を含む電子装置を示すブロック図。 中央バス制御システムを含む電子装置の一部を示すブロック図。 クロック信号とデータ信号とのタイミング調整を示すタイミングチャート。 中央バス制御システムの動作モードを示す図。 ライトトレーニング実行時の各部の動作波形を示すタイミングチャート。 実施形態2におけるライトトレーニング実行時の各部の動作波形を示すタイミングチャート。 実施形態3に係る半導体装置を含む電子装置を示すブロック図。 実施形態3におけるライトトレーニング実行時の各部の動作波形を示すタイミングチャート。 変形例1に係る半導体装置を含む電子装置を示すブロック図。 変形例2に係る半導体装置を含む電子装置を示すブロック図。
実施形態の説明に先立って、本発明者らが検討した事項を説明する。一般に、画像表示や、ビデオ入力などの処理を行うシステムには、リアルタイム性の保証が要求される。ここでいうリアルタイム性の保証とは、例えば何らかのリクエストが発行された場合に、そのリクエストに対するレスポンスがあらかじめ規定された時間以内に得られることが保証されることを意味する。リアルタイム性が保証されたシステムにおいて、データ処理中にDDR(Double-Data-Rate)メモリへのアクセスが発生する場合は、DDRメモリへのアクセスも含めてリアルタイム性が保証される必要がある。その一方で、そのようなシステムで使用されるDDRメモリに対して、取り扱いデータ量の増大に伴うメモリ帯域不足の問題、或いは低消費電力化などの問題が生じており、それらに対する解決策が求められている。
上記問題の解決策として、JEDEC(Joint Electron Device Engineering Council)で規格化されたLPDDR4(Low Power DDR4)メモリがある。LPDDR4メモリでは、通常のデータ転送やリフレッシュ動作以外に、DDRライトトレーニング動作を必要とする。DDRライトトレーニングは、クロック信号とデータ信号との間のタイミング(スキュー)を調整するために実施されるトレーニングである。DDRライトトレーニングの動作中、DDRメモリへのアクセスは禁止される。DDRライトトレーニングの実行時間は、例えば1μsec~2μsec程度である。
LPDDR4メモリなどのライトトレーニングが実施されるメモリを使用するリアルタイムシステムでは、ライトトレーニング期間中のデータ転送ができない時間を考慮してリアルタイム性を確保しなければならない。また、ライトトレーニング動作に起因するメモリ帯域への影響が小さくなるようにバスシステムを設計する必要がある。特許文献1においては、リフレッシュ動作に起因するアクセス停止期間を考慮したアクセス制御は実施されるものの、ライトトレーニングに起因するアクセス停止期間は考慮されていなかった。特許文献1において、アクセス権の付与を制御する中央バス制御システムは、ライトトレーニングがいつ実施されるかを把握しておらず、特許文献1に記載の技術では、ライトトレーニング動作中にメモリアクセスが停止されることに起因して、リアルタイム性を保証することができない場合があることを、本発明者らは見出した。
以下、図面を参照しつつ、上記課題を解決するための手段を適用した実施形態を詳細に説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。また、様々な処理を行う機能ブロックとして図面に記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、又はその他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、又はそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、何れかに限定されるものではない。なお、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
また、上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスク)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)CD-R、CD-R/W、及び半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
以下の実施の形態においては便宜上その必要があるときは、複数のセクション又は実施の形態に分割して説明するが、特に明示した場合を除き、それらはお互いに無関係なものではなく、一方は他方の一部又は全部の変形例、応用例、詳細説明、又は補足説明等の関係にある。また、以下の実施の形態において、要素の数等(個数、数値、量、範囲等を含む)に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でもよい。
さらに、以下の実施の形態において、その構成要素(動作ステップ等も含む)は、特に明示した場合及び原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではない。同様に、以下の実施の形態において、構成要素等の形状、又は位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数等(個数、数値、量、範囲等を含む)についても同様である。
[実施形態1]
図1は、実施形態1に係る半導体装置を含む電子装置を示す。電子装置10は、マスタA20、マスタB30、マスタC40、バスサブコントローラ22、32、及び42、中央バス制御システム50、インターコネクト60、メモリコントローラ70、PHY(物理層インタフェース)80、並びにメモリ90を有する。電子装置10の構成要素のうち、例えば、マスタA20、マスタB30、マスタC40、バスサブコントローラ22、32、及び42、中央バス制御システム50、インターコネクト60、メモリコントローラ70、並びにPHY80は、半導体装置を構成する。なお、半導体装置の構成要素のうち、例えばバスサブコントローラ22、32、及び42、インターコネクト60、メモリコントローラ70、並びにPHY80は、ハードウェア回路として構成することができる。また、中央バス制御システム50は、例えばプロセッサを含んだ回路として構成することができる。
マスタA20、マスタB30、及びマスタC40は、メモリ90に対してアクセス要求を発行する。メモリ90に対するアクセス要求は、リード要求とライト要求とを含む。メモリ90は、例えばDDR-SDRAM(Double-Data-Rate Synchronous Dynamic Random Access Memory)などのメモリである。以下では、主に、メモリ90にLPDDR4メモリが用いられる例を説明する。
マスタA20、マスタB30、及びマスタC40は、例えばCPUやGPU(Graphics Processing Unit)などのプロセッサとして構成される。各マスタには、優先度が設定されていてもよい。例えば、マスタA20及びマスタB30の優先度は、マスタC40の優先度よりも高く設定されているものとする。以下では、主に、マスタA20及びマスタB30はリアルタイム性の保証が要求されるマスタであり、マスタC40はリアルタイム性の保証が不要なマスタであるとして説明する。
マスタA20は、バス21を介して対応するバスサブコントローラ22に接続される。バスサブコントローラ22は、バス24を介してインターコネクト60に接続される。バスサブコントローラ22は、リクエスト発行制御部23を含む。リクエスト発行制御部23は、バス21を介して入力されたアクセス要求のバス24への出力を制御する。リクエスト発行制御部23は、中央バス制御システム50からアクセス権が付与されている場合は、マスタA20が発行したアクセス要求をバス24を介してインターコネクト60に出力する。リクエスト発行制御部23は、アクセス権が付与されていない場合は、マスタA20が発行したアクセス要求のインターコネクト60への出力を抑制する。
マスタB30は、バス31を介して対応するバスサブコントローラ32に接続される。バスサブコントローラ32は、バス34を介してインターコネクト60に接続される。バスサブコントローラ32は、リクエスト発行制御部33を含む。同様に、マスタC40は、バス41を介して対応するバスサブコントローラ42に接続される。バスサブコントローラ42は、バス44を介してインターコネクト60に接続される。バスサブコントローラ42は、リクエスト発行制御部43を含む。リクエスト発行制御部33及び43の機能は、リクエスト発行制御部23の機能と同様である。リクエスト発行制御部23、33、及び43は、アクセス権が付与された場合で、かつ対応するマスタからアクセス要求を受け取っていなかった場合は、アクセス権を中央バス制御システム50に返却してもよい。
インターコネクト60は、バス24、34、及び44を介して、マスタA20、マスタB30、及びマスタC40が発行したアクセス要求を受け取る。インターコネクト60は、例えばバスアービタであり、複数のマスタから入力されるアクセス要求を調停して、バス61を通じてメモリコントローラ70に出力する。インターコネクト60は、例えばマスタA20、マスタB30、及びマスタC40からアクセス要求を受け取った場合は、各マスタに設定された優先度に従って、優先度が高いマスタが発行したアクセス要求をメモリコントローラ70に出力する。インターコネクト60は、メモリコントローラ70から出力したアクセス要求に対するレスポンスが得られると、次に優先度が高いアクセス要求を選択してメモリコントローラ70に出力する。
[中央バス制御システム]
中央バス制御システム50は、マスタA20、マスタB30、及びマスタC40が発行したアクセス要求のメモリコントローラ70への出力を制御する。中央バス制御システム50は、バスサブコントローラ22、32、及び42と共にアクセス制御部を構成する。ユーザは、例えば中央バス制御システム50にあらかじめ各マスタの帯域を設定し、一定時間(スロット)内のQoS(Quality of Service)を保証する。中央バス制御システム50は、例えば、バスサブコントローラ22、32、及び42のそれぞれに対して、所定のアクセス制御の内容に従ってアクセス権を付与する。通常時における所定のアクセス制御の内容は、例えば特許文献1に記載されたものと同様でよい。特許文献1に記載の内容は、参照として本明細書に取り込まれる。
中央バス制御システム50は、例えば各マスタに対して設定されたQoS情報に基づいて、各マスタの対応するバスサブコントローラ22、32、及び40に対してアクセス権を付与するか否かを決定する。このとき、中央バス制御システム50は、バス24、34、及び44から取得されたトランザクションモニタ信号によってインターコネクト60に流れるトランザクションを監視し、トランザクションの転送量に基づいてスロットごとに補正しながらアクセス権を付与してもよい。中央バス制御システム50は、アクセス権の付与を通じて、各マスタが発行するアクセス要求のメモリコントローラ70への出力を制御する。
図2は、中央バス制御システム50を含む電子装置10の一部を示す。中央バス制御システム50は、例えば権利付与選択制御部51、権利付与数制御部52、QoS情報レジスタ53、トレーニング実行制御部54、及びリフレッシュ実行制御部55を有する。なお、図2では、図1に示されるトランザクションモニタ信号は、図示を省略している。また、以下では、主に権利付与選択制御部51、権利付与数制御部52、及びQoS情報レジスタ53について説明し、トレーニング実行制御部54及びリフレッシュ実行制御部55の動作については後述する。
QoS情報レジスタ53は、各マスタのQoS情報を記憶する。権利付与数制御部52は、各マスタに対して付与されるアクセス権の権利付与可能数を計算する。権利付与数制御部52は、例えば、あらかじめレジスタなどに設定された最大権利付与可能数を上限として、アクセス権の残り権利付与可能数を計算する。最大権利付与可能数は、例えばメモリコントローラ70内に配置されたバッファ71において記憶できるアクセス要求の数(容量)と同じ数に設定される。権利付与数制御部52は、バッファ71から、バッファ71においてアクセス要求が削除された旨を示す解放通知信号を受信し、バッファ71の空き情報を監視する。権利付与数制御部52は、バッファ71の空き情報に基づいて、最大権利付与可能数を上限として現在のアクセス権の権利付与可能数を計算する。
権利付与選択制御部51は、アクセス権を付与するマスタを決定(選択)する。権利付与選択制御部51は、例えば権利付与数制御部52が計算した権利付与可能数の範囲内で、アクセス権の付与先となるマスタを決定し、そのマスタに対応するバスサブコントローラ22、32、及び42に、アクセス権を獲得した旨を示すアクセス権付与信号を出力する。権利付与選択制御部51は、例えばアクセス権の付与先のマスタに対応するバスサブコントローラに出力するアクセス権付与信号をアサートし、アクセス権を付与しないマスタに対応するバスサブコントローラに出力するアクセス権付与信号はネゲートしたままとする。権利付与選択制御部51は、例えば一定時間(スロット)を複数の期間で分割したサブスロットごとに、アクセス権を付与するマスタを決定する。
権利付与数制御部52は、例えば権利付与選択制御部51がアクセス権を付与するごとに最大権利付与可能数からアクセス権を付与した数を減算し、残りの権利付与可能数を計算する。権利付与数制御部52は、バッファ71から解放通知信号を受信するごとに、バッファが解放された分だけ残り権利付与可能数を増加させる。権利付与選択制御部51は、各マスタのQoS情報、及び残り権利付与可能数に基づいて、アクセス権の付与先のマスタを選択する。このとき、権利付与選択制御部51は、残り権利付与可能数の範囲内で、例えばQoS情報に基づく優先レベルが高いマスタに優先的にアクセス権を付与してもよい。権利付与選択制御部51は、マスタごとに所定の期間(サブスロット)における転送量(バンド幅)を設定し、各マスタのサブスロットにおける転送量と、設定されたバンド幅と、残り権利付与可能数とに基づいて、アクセス権の付与先のマスタを選択してもよい。
ここで、本実施形態において、マスタA20に対応するバス21及び24は、リード要求を伝送するためのリード要求バス21R及び24Rと、ライト要求を伝送するためのライト要求バス21W及び24Wとを含む。マスタA20に対応するバスサブコントローラ22は、リード要求に対応したリクエスト発行制御部23Rと、ライト要求に対応したリクエスト発行制御部23Wとを有する。
同様に、マスタB30に対応するバス31及び34は、リード要求のためのリード要求バス31R及び34Rと、ライト要求のためのライト要求バス31W及び34Wとを含む。また、マスタC40に対応するバス41及び44は、リード要求のためのリード要求バス41R及び44Rと、ライト要求のためのライト要求バス41W及び44Wとを含む。図2では、図示を省略しているが、マスタB30及びマスタC40に対応するバスサブコントローラ32及び42も、それぞれリード要求に対応するリクエスト発行制御部とライト要求に対応するリクエスト発行制御部とを有する。
リクエスト発行制御部23R及び23Wは、それぞれ、アクセス権付与信号を受信した場合(入力されるアクセス権付与信号がアサートされている場合)、例えば1つのサブスロットつき、リード要求及びライト要求を1つリード要求バス24R及びライト要求バス24Wに出力する。権利付与選択制御部51は、リクエスト発行制御部23R及び23Wのそれぞれにアクセス権付与信号を個別に送信することができる。リクエスト発行制御部23R及び23Wは、アクセス権付与信号を受信すると、それぞれマスタA20からリード要求及びライト要求が出力されているか否かを判断する。リクエスト発行制御部23R及び23Wは、それぞれ、マスタA20からリード要求及びライト要求が出力されており、かつアクセス権付与信号を受信している場合、リード要求及びライト要求をリード要求バス24R及びライト要求バス24Wを通じてインターコネクト60に出力する。リクエスト発行制御部23R及び23Wは、アクセス権付与信号が受信されていない場合で、かつマスタA20からリード要求及びライト要求が出力されていた場合は、リード要求及びライト要求をリクエスト発行制御部23R及び23Wにおいて抑止する。
権利付与選択制御部51は、例えばマスタA20に対応するバスサブコントローラ22のリクエスト発行制御部23R及び23Wの双方にアクセス権付与信号を送信することで、マスタA20が発行するリード要求及びライト要求の双方のメモリコントローラ70への出力を許可する。権利付与選択制御部51は、例えばバスサブコントローラ22のリクエスト発行制御部23Wにのみアクセス権付与信号を送信し、リクエスト発行制御部23Rに対してはアクセス権付与信号を送信しないことで、マスタA20が発行するライト要求のメモリコントローラ70への出力を許可しつつ、マスタA20が発行するリード要求のメモリコントローラ70への出力を抑制することが可能である。
リクエスト発行制御部23R及び23Wは、それぞれ、アクセス権付与信号が受信された場合で、かつマスタA20からリード要求及びライト要求が出力されていなかった場合は、アクセス権返却信号を権利付与数制御部52に出力し、アクセス権を中央バス制御システム50に返却する。権利付与数制御部52は、アクセス返却信号を受信すると、返却された分だけ残りの権利付与可能数を増加させる。このようにすることで、権利付与選択制御部51が他のマスタにアクセス権を付与することが可能となる。バスサブコントローラ32及び42におけるリード要求及びライト要求に対応したリクエスト発行制御部の動作は、それぞれ上記したリクエスト発行制御部23R及び23Wの動作と同様である。
[メモリコントローラ]
メモリコントローラ70は、バス61及びインターコネクト60などを介してマスタA20、マスタB30、及びマスタC40に接続され、インターコネクト60から出力されるアクセス要求に従ってメモリ90にアクセスする。なお、図1では電子装置10がマスタを3つ有する例が示されているが、マスタの数は特に限定されない。電子装置10は、メモリコントローラ70に対してメモリ90へのアクセス要求を発行するマスタを少なくとも1つ有していればよい。マスタの数が1つである場合、調停のためのインターコネクト60は不要である。
メモリコントローラ70は、バッファ71、スケジューラ72、及びメモリコマンド生成部73を有する。バッファ(リクエストバッファ)71は、メモリコントローラ70がインターコネクト60を介して受け付けたアクセス要求を記憶する。バッファ71は、複数のアクセス要求を記憶可能に構成される。スケジューラ72は、バッファ71に記憶されたアクセス要求の1つを選択し、選択したアクセス要求をメモリコマンド生成部73に出力する。スケジューラ72は、例えば所定の選択基準に従ってアクセス要求を選択し、選択したアクセス要求をメモリコマンド生成部73に出力する。
メモリコマンド生成部73は、スケジューラ72から出力されるアクセス要求に従ってメモリ90にアクセスするためのメモリコマンド(コマンド信号)を生成する。メモリコマンド生成部73は、生成したコマンド信号をPHY80に出力する。メモリコマンド生成部73は、例えばアクセス要求がリード要求であれば、メモリ90からデータをリードするためのリードコマンド信号を生成し、PHY80に出力する。また、メモリコマンド生成部73は、例えばアクセス要求がライト要求であれば、メモリ90にデータを書き込むためのライトコマンド信号を生成し、PHY80に出力する。
[PHY(DDR PHY)]
PHY80は、メモリコントローラ70とメモリ90との間の物理層インタフェースを構成する。メモリコントローラ70は、PHY80を通じてメモリ90にアクセスする。メモリコントローラ70は、例えばPHY80を通じてメモリ90にリードコマンド信号を送信し、PHY80を通じてメモリ90から読み出されたデータを取得する。また、メモリコントローラ70は、PHY80を通じてメモリ90にライトコマンドを送信し、PHY80を通じてメモリ90に書込みデータを送信する。PHY80とメモリコントローラ70とは、例えばDFI(DDR PHY Interface)仕様に従った所定のプロトコルで通信する。PHY80は、メモリコントローラ70に含まれていてもよいし、メモリコントローラ70が含まれる半導体装置とは別の半導体装置として構成されていてもよい。
PHY80は、調停回路81、トレーニング回路82、及びセレクタ83を有する。トレーニング回路82は、メモリ90に対するトレーニングを実施する。このトレーニングは、メモリ90に対するアクセスが停止された状態で実行される。トレーニング回路82が実施するトレーニングは、例えばメモリ90に入力される信号間のスキュー調整を含む。具体的には、トレーニングは、クロック信号とメモリ90に入力されるデータ信号とのタイミングを調整するライトトレーニング(WT:Write Training)を含む。これに加えて、又は代えて、トレーニングは、クロック信号とメモリ90から出力されるデータ信号とのタイミングを調整するリードトレーニング(RT:Read Training)を含んでいてもよい。以下では、主にトレーニングはライトトレーニングであるものとして説明する。
調停回路81は、メモリ90に対する制御権の取得を要求する信号(マスタ権要求プロトコル信号)をメモリコントローラ70に出力する。通常時、メモリ90に対する制御権はメモリコントローラ70が有しており、メモリコントローラ70は、PHY80を通じてメモリ90にアクセスしている。メモリコントローラ70(メモリコマンド生成部73)は、調停回路81から制御権の取得が要求された場合に、許可を示す応答を調停回路81に返すことで、制御権をPHY80に渡すことができる。調停回路81は、メモリコマンド生成部73から許可を示す応答を受信すると、メモリ90に対する制御権をメモリコントローラ70から取得する。
セレクタ83は、メモリ90に接続されたコマンド信号及びデータバスの接続先を、メモリコントローラ70とトレーニング回路82との間で切り替える。調停回路81は、メモリ90に対する制御権を取得していない場合は、セレクタ83に、コマンド信号及びデータバスの接続先をメモリコントローラ70とするための制御信号を送信する。調停回路81は、メモリ90に対する制御権を取得すると、セレクタ83に、コマンド信号及びデータバスの接続先をトレーニング回路82とするための制御信号を送信する。トレーニング回路82は、PHY80がメモリ90に対する制御権を取得している場合に、トレーニングを実行する。メモリコントローラ70は、PHY80がメモリ90に対する制御権を有している場合、メモリ90にアクセスすることができない。ただし、メモリコントローラ70は、リフレッシュコマンドなどの一部のコマンドについては、メモリ90に対して発行可能である。
[DDRメモリ]
メモリ90は、コマンドデコーダ91、セレクタ92、メモリアレイ93、及びトレーニング用FIFO(First In First Out)94を有する。メモリアレイ93は、データを記憶する。メモリアレイ93は、マトリクス状に配列された複数の記憶素子を含む。メモリ90は、例えば複数のメモリアレイ93を含んでいる。コマンドデコーダ91は、PHY80からコマンド信号を受け取り、メモリ90において各種コマンドを発行する。
セレクタ92は、PHY80に接続されるデータバスの接続先を、メモリアレイ93とトレーニング用FIFO94との間で切り替える。コマンドデコーダ91は、通常時は、データバスの接続先をメモリアレイ93にするための制御信号をセレクタ92に出力する。コマンドデコーダ91は、PHY80からライトトレーニングの実施を示すコマンド信号を受け取ると、データバスの接続先をトレーニング用FIFO94に切り替える。ライトトレーニングは、トレーニング用FIFO94を用いて実施される。
[ライトトレーニング]
図3は、メモリ90におけるクロック信号とデータ信号とのタイミング調整を示す。図3(a)はPHY80からメモリ90に出力されるクロック信号を表し、(b)はライトトレーニング実施前のデータ信号を表し、(c)は、ライトトレーニング実施後のデータ信号を表している。図3(b)を参照すると、ライトトレーニング実施前は、クロック信号の立ち上がり及び立ち下がりエッジと、データ信号の変化点の中央とは、時間差Δtだけずれている。この時間差Δtは、例えばクロック信号又はデータ信号に与えられる遅延時間を変化させることで、変化させることができる。
ライトトレーニングは、例えば下記の手順で実施される。PHY80は、クロック信号を遅延させる可変遅延回路を有しており、トレーニング回路82は、クロック信号に与える時間を変化させつつ、所定のテスト用データをメモリ90に出力する。メモリ90において、トレーニング回路82が出力するテスト用データは、クロック信号で規定されるタイミングでトレーニング用FIFO94に記憶される。トレーニング回路82は、トレーニング用FIFO94から記憶されたデータを読み出し、読み出したデータがテスト用データに一致するか否かを判定する。別の言い方をすれば、トレーニング回路82は、テスト用データをトレーニング用FIFO94に正しく書き込めたか否かを判定する。
トレーニング回路82は、クロック信号に与える遅延時間を変化させつつ、トレーニング用FIFO94にテスト用データを書き込み、正しくテスト用データを書き込むことができた遅延時間の範囲を求める。トレーニング回路82は、例えば正しくテスト用データを書き込むことができた遅延時間の最小値と最大値との中間の遅延時間を、メモリ90へのデータ書込み時の遅延時間に設定する。このようにすることで、図3(c)に示されるように、クロック信号の立ち上がり及び立ち下がりエッジとデータ信号の変化点の中央とを一致させることができ、メモリアレイ93に対して安定して正しいデータを書き込むことが可能となる。
トレーニング回路82は、リードトレーニングの場合は、メモリ90が有する図示しないレジスタに記憶されたトレーニング用データを読み出す。トレーニング回路82は、トレーニング用データと並走して出力されるクロック信号に与える遅延時間を変化させつつ、トレーニング用データが正しく読み出せる遅延時間の範囲を求める。トレーニング回路82は、例えば正しくテスト用データを読み出すことができた遅延時間の最小値と最大値との中間の遅延時間を、メモリ90へのデータ読出し時の遅延時間に設定する。このようなすることで、メモリ90から安定して正しいデータを読み出すことが可能となる。
図1に戻り、本実施形態では、中央バス制御システム50は、ライトトレーニングの実施(そのタイミング)も制御する。中央バス制御システム50のトレーニング実行制御部54(図2を参照)は、ライトトレーニングを実行させる場合、メモリコントローラ70のメモリコマンド生成部73にWTスロット信号を出力し、ライトトレーニングの実施を通知する。メモリコマンド生成部73は、調停回路81からメモリ90に対する制御権を要求するマスタ権要求プロトコル信号を受信しており、トレーニング実行制御部54からWTスロット信号を受信すると、マスタ権要求プロトコル信号に対して許可を示す応答を送信する。
調停回路81が許可を示す応答を受け取ると、PHY80は、メモリ90に対する制御権を取得し、トレーニング回路82がライトトレーニングを実行する。調停回路81は、ライトトレーニングが完了すると、制御権をメモリコントローラ70へ返却する。制御権がメモリコントローラ70へ返却されることで、メモリコントローラ70は、メモリ90に対するデータの書込み及び読出しを行うことができる。調停回路81は、制御権の返却後、マスタ権要求プロトコル信号をメモリコントローラ70に出力し、新たな制御権の取得を要求する。このようにすることで、PHY80は、中央バス制御システム50がWTスロット信号を出力するたびに制御権を取得したライトトレーニングを実行できる。
トレーニング実行制御部54は、周期的にWTスロット信号を出力し、トレーニング回路82に周期的にライトトレーニングを実行させる。中央バス制御システム50は、例えばライトトレーニングの実行間隔を指定するレジスタを有しており、トレーニング実行制御部54は、そのレジスタに格納された値に応じた周期でWTスロット信号を出力する。ライトトレーニングの実行間隔を指定するレジスタは、外部から書き換えが可能に構成されており、図示しないCPUなどを用いてレジスタの値を書き換えることで、ライトトレーニングの実行間隔を調整することが可能に構成されている。
本実施形態において、中央バス制御システム50は、メモリ90のライトトレーニングを考慮して、各マスタに対するアクセス制御を行う。中央バス制御システム50の権利付与選択制御部51(図2を参照)は、ライトトレーニングの実行中は、ライトトレーニングが実行されていない通常時とは異なるアクセス制御を実施する。権利付与選択制御部51は、通常時は、上記したように、所定のアクセス制御の内容に従って、例えば各マスタのQoS情報及び残り権利付与可能数に基づいて、アクセス権の付与先のマスタを選択する。権利付与選択制御部51は、ライトトレーニングの実行中は、マスタが発行したアクセス要求のうちリード要求にはアクセス権を付与せず、リード要求のメモリコントローラ70への出力を抑制する。より詳細には、権利付与選択制御部51は、例えばマスタA20に対応するバスサブコントローラ22のリクエスト発行制御部23Wにアクセス権付与信号を送信しつつ、リクエスト発行制御部23Rにはアクセス権付与信号を送信しないことで、リード要求のメモリコントローラ70への出力を抑制する。権利付与選択制御部51は、例えばライトトレーニングが開始されるタイミングよりも所定時間前のタイミングで、リード要求の出力の抑制を開始してもよい。
特に、本実施形態では、中央バス制御システム50(権利付与選択制御部51)は、ライトトレーニングの実行中、リアルタイム性の保証が要求されるマスタA20及びマスタB30が発行するリード要求のメモリコントローラ70への出力を抑制する。中央バス制御システム50は、ライトトレーニングの実行中、リアルタイム性の保証が要求されるマスタA20及びマスタB30が発行するライト要求については、メモリコントローラ70への出力を抑制しない。また、中央バス制御システム50は、ライトトレーニングの実行中、リアルタイム性の保証が不要なマスタC40については、リード要求とライト要求の双方のメモリコントローラ70への出力を抑制する。マスタの種別、すなわちリアルタイムの保証が要求されるマスタであるか、不要なマスタであるは、例えば中央バス制御システム50内にも受けられたレジスタにおいて設定される。
本実施形態において、中央バス制御システム50は、2つの動作モードの間で動作モードが切替え可能に構成される。1つ目の動作モードは、ライトトレーニングが実行されない通常動作時の動作モード(通常動作モード)であり、2つ目の動作モードは、ライトトレーニングが実行される場合の動作モード(WTフェーズ動作モード)である。中央バス制御システム50は、通常動作モードでは、所定のアクセス制御の内容に従って、各マスタが発行するアクセス要求にアクセス権を付与する。本実施形態において、通常動作モードとWTフェーズ動作モードとの切替えは、例えばトレーニング実行制御部54が行う。トレーニング実行制御部54は、例えばWTフェーズ動作モードへの切替えを権利付与選択制御部51に通知し、権利付与選択制御部51においてライトトレーニング時の動作を実行させる。
トレーニング実行制御部54は、WTフェーズ動作モードでは、WTスロット信号を出力することでPHY80にライトトレーニングを実行させる。また、権利付与選択制御部51は、WTフェーズ動作モードでは、マスタが発行するアクセス要求のうちライト要求には所定のアクセス制御の内容に従ってアクセス権を付与する一方で、リード要求にはアクセス権を付与しない。権利付与選択制御部51は、例えば、通常動作モードからWTフェーズ動作モードへの切替え後、マスタが発行するアクセス要求のうちのリード要求に対するアクセス権の付与を停止し、アクセス権の付与の停止から所定時間経過後にWTスロット信号を出力してPHY80にライトトレーニングを実行させる。
本実施形態では、権利付与選択制御部51は、WTフェーズ動作モードでは、特に、リアルタイム性の保証が要求されるマスタA20及びマスタB30が発行するアクセス要求のうちライト要求には所定のアクセス制御の内容に従ってアクセス権を付与する一方で、リード要求にはアクセス権を付与しない。また、権利付与選択制御部51は、リアルタイム性の保証が不要なマスタC40については、発行するリード要求及びライト要求の双方に対してアクセス権を付与しない。
中央バス制御システム50(トレーニング実行制御部54)は、動作モードを、周期的に通常動作モードからWTフェーズ動作モードに切り替える。図4は、動作モードの切替えを示す。中央バス制御システム50は、WTフェーズ動作モードで動作した後、動作モードを通常動作モードに切り替える。中央バス制御システム50は、例えば通常動作モードへの切替えから所定時間の経過後、動作モードをWTフェーズ動作モードに切り替え、ライトトレーニングを実行させる。中央バス制御システム50は、例えば通常動作モードへの切替えから1msec程度の時間が経過すると動作モードをWTフェーズモードに切り替える。その場合、ライトトレーニングを1msec程度の間隔で周期的に実行させることができる。なお、動作モードの切替えは周期的に行われていればよく、その切替え周期は、厳密に一定である必要はない。
中央バス制御システム50は、上記したライトトレーニングの制御に加えて、メモリ90におけるリフレッシュ動作(そのタイミング)を制御してもよい。リフレッシュ実行制御部55(図2を参照)は、リフレッシュ動作を実行させる場合、メモリコントローラ70のメモリコマンド生成部73(図1を参照)にリフレッシュ要求信号を出力する。リフレッシュ実行制御部55は、例えばJEDECの規格で定義された時間間隔を満たすように、周期的にリフレッシュ要求信号を出力する。メモリコマンド生成部73は、リフレッシュ要求信号を受信すると、メモリ90に対してリフレッシュ実行を示すコマンド信号を出力する。メモリ90は、リフレッシュ実行を示すコマンド信号を受け取ると、メモリアレイ93のリフレッシュ動作を実行する。
中央バス制御システム50は、メモリ90においてリフレッシュ動作が実行されている場合、メモリにおけるリフレッシュを考慮したアクセス制御を実施してもよい。メモリのリフレッシュを考慮したアクセス制御は、特許文献1に記載されるものと同様でよい。なお、本実施形態において、中央バス制御システム50がリフレッシュ動作を制御すること、及びリフレッシュを考慮したアクセス制御を実施することは必須ではない。その場合、リフレッシュ実行制御部は省略可能である。リフレッシュ動作の制御などは、中央バス制御システム50とは異なる制御部などが実施することとしてもよい。
[動作例]
以下、動作例を説明する。図5は、ライトトレーニング実行時の各部の動作波形を示す。以下では、ライトトレーニングの実行に関連した期間(WTフェーズ)の長さが12個のスロット(サブスロット)に対応している例を説明する。また、実際にはマスタA20及びマスタB30はそれぞれリード要求とライト要求の双方を発行することが可能であるものの、以下では、説明簡略化のため、マスタA20はライト要求を発行し、マスタB30はリード要求を発行するものとして説明する。
中央バス制御システム50は、時刻t11で、動作モードをWTフェーズ動作モードに切り替える。中央バス制御システム50は、動作モードを切り替える時刻t11において、WTスロット信号((d)を参照)の出力に先立って、リアルタイム性の保証が不要なマスタC40のリード要求及びライト要求の双方のメモリコントローラ70への出力を抑制する((c)を参照)。より詳細には、中央バス制御システム50は、マスタC40に対応するリクエスト発行制御部43に対するアクセス権の付与を停止し、マスタC40が発行するリード要求及びライト要求がメモリコントローラ70に受け付けられないようにする。
中央バス制御システム50は、時刻t11からスロット2つ分の時間が経過した時刻t12において、リアルタイム性の保証が要求されるマスタB30のリード要求のメモリコントローラ70への出力を抑制する((b)を参照)。より詳細には、中央バス制御システム50は、マスタB30に対応するリクエスト発行制御部33に対して、リード要求についてのアクセス権の付与を停止し、マスタB30が発行するリード要求がメモリコントローラ70に受け付けられないようにする。マスタB30のリード要求のメモリコントローラ70への出力の抑制も、WTスロット信号が出力される前に実施される。
中央バス制御システム50は、時刻t11からスロット2つ分の時間が経過した時刻t13でWTスロット信号をメモリコントローラ70に出力(信号をアサート)し、PHY80にメモリ90のライトトレーニングを実行させる((d)及び(e)を参照)。ライトトレーニングが実施される期間、メモリ90のデータバスは出力するテスト用データの送受信に使用され、メモリコントローラ70は、メモリ90に対する書込み及び読出しを行うことができない。中央バス制御システム50は、ライトトレーニングが実行される期間は、リアルタイム保証が要求されるマスタA20が発行するライト要求に対してのみ、アクセス権を付与する((a)を参照)。
中央バス制御システム50は、ライトトレーニング動作が終了した後、時刻t14において、リアルタイム性の保証が要求されるマスタB30のリード要求のメモリコントローラ70への出力の抑制を解除する((b)を参照)。中央バス制御システム50は、時刻t14では、マスタB30に対応するリクエスト発行制御部33に対して、リード要求についてのアクセス権の付与の停止を解除する。このようにすることで、時刻t14以降、マスタB30が発行するリード要求がメモリコントローラ70に出力可能となる。
中央バス制御システム50は、時刻t14からスロット1つ分の時間が経過した時刻t15において、動作モードをWTフェーズ動作モードから通常動作モードへと切り替え、リアルタイム性の保証が不要なマスタC40のリード要求及びライト要求のメモリコントローラ70への出力の抑制を解除する((c)を参照)。中央バス制御システム50は、時刻t15では、マスタC40に対応するリクエスト発行制御部43に対するアクセス権の付与の停止を解除する。動作モードが通常動作モードとなることで、各マスタに対して、通常のアクセス制御の内容に従ってアクセス権が付与される。
図5に示されるように、中央バス制御システム50は、ライトトレーニングの開始前で、かつライトトレーニングが開始されるタイミング(時刻t13)に対して所定の時間関係にあるタイミング(時刻t11)で、マスタC40が発行するリード要求及びライト要求の出力の抑制を開始する。この場合、時刻t11から時刻t12において、メモリコントローラ70へ出力されるアクセス要求は、マスタA20が発行するライト要求及びマスタB30が発行するリード要求のみとなる。ライトトレーニングの実行前に、リアルタイム性の保証が不要なマスタC40のリード要求及びライト要求がメモリコントローラ70の前段で抑制されることで、メモリコントローラ70は、リアルタイム性の保証が要求されるマスタA20及びマスタB30が発行するアクセス要求をより多く受け付けることが可能である。
また、中央バス制御システム50は、ライトトレーニングの開始前で、かつマスタC40が発行するリード要求及びライト要求の出力の抑制が開始されるタイミング(時刻t11)よりも後のタイミング(時刻t12)で、マスタB30が発行するリード要求の出力の抑制を開始する。この場合、時刻t11から時刻t12において、メモリコントローラ70は、マスタA20が発行するライト要求のみを受け付けてバッファ71に記憶する。メモリコントローラ70は、中央バス制御システム50によって新たなリード要求の受付が抑制された状態で、バッファ71に記憶されているリード要求に従ってメモリ90からデータを読み出す。このようにすることで、ライトトレーニングの実行前にバッファ71に記憶されたリード要求の処理を完結させることができる。また、メモリコントローラ70は、バッファ71に記憶されているライト要求及びライトデータに従って、メモリ90に対してライトデータを書き込む。マスタB30のリード要求の出力の抑制後、ライトトレーニングの実行開始前に、バッファ71に記憶されたアクセス要求に基づくメモリアクセスを実行させる時間を設けることで、ライトトレーニングの実行開始前に、バッファ71を空の状態にすることができる。
中央バス制御システム50は、ライトトレーニングの実行中、マスタA20が発行するライト要求のみアクセス権を付与し、メモリコントローラ70は、マスタA20のライト要求のみを受け付ける。メモリコントローラ70は、ライトトレーニングの実行中はメモリ90へアクセスすることができず、マスタA20のライト要求をバッファ71に記憶する。このとき、ライト要求を発行したマスタA20から見ると、ライト要求がバッファ71に記憶された時点で、ライトデータがメモリ90に書き込まれたように見え、ライトトレーニングの実行中も、通常動作時と同様にライトアクセスできる。メモリコントローラ70は、リードの場合とは異なり、バッファ71にライト要求を記憶した段階でライト要求に対する応答を返すことができる。マスタA20は、メモリコントローラ70から応答を受信すると、実際にメモリ90にデータが書き込まれる前に、次の処理に移ることができる。
中央バス制御システム50は、ライトトレーニングの終了後、そのタイミング(時刻t14)でまずマスタB30が発行するリード要求の出力の抑制を解除する。中央バス制御システム50は、次いで、それよりも後のタイミング(時刻t15)で、マスタC40が発行するリード要求及びライト要求の出力の抑制を解除する。ライトトレーニングの終了後、リアルタイム性の保証が要求されるマスタB30が発行するリード要求に対して優先的にアクセス権を付与することで、マスタB30が発行するリード要求をメモリコントローラ70に優先的に処理させることができ、リアルタイム性の確保が可能となる。
[まとめ]
本実施形態では、中央バス制御システム50は、マスタが発行したアクセス要求のメモリコントローラ70への出力の制御(アクセス制御)に加えて、メモリ90のライトトレーニングの実行を制御する。中央バス制御システム50がライトトレーニングの実行を制御する場合、中央バス制御システム50は、いつライトトレーニングを実施するのかを知ることができ、ライトトレーニングによるメモリアクセス停止期間を考慮してアクセス制御を実施することができる。特に、本実施形態では、中央バス制御システム50は、ライトトレーニングの実行中は、マスタが発行したアクセス要求のうちリード要求のメモリコントローラへの出力を抑制する。
前述のように、マスタは、メモリコントローラ70がライト要求を受け付けた段階でライト要求に対する応答を受け取ることができる。このため、マスタは、ライトトレーニングの実行中でも、メモリコントローラ70のバッファ71に空きがあれば、実際にメモリ90にデータが書き込まれるのを待たずに、次の処理に移ることができる。一方、リード要求については、ライトトレーニングの実行中はメモリ90へのアクセスが停止され、リードデータが得られないため、マスタは、ライトトレーニングが終了するまでは、リード要求に対する応答を得ることができない。
本実施形態では、上記したようなリード要求とライト要求との特性を利用し、ライトトレーニングの実行中にメモリコントローラ70がリード要求を受け付けないようにする。メモリコントローラ70は、ライトトレーニングの実行中、ライト要求をバッファ71に記憶していく。このようにすることで、マスタは、通常時と同様にライトアクセスすることができ、ライト要求に対する応答性を向上させてリアルタイム性を確保することができる。
本実施形態では、中央バス制御システム50は、ライトトレーニングを、例えば数msecの単位で周期的に実行させる。1回のライトトレーニングに要する時間は、ライトトレーニングの実行間隔に依存すると考えられる。ライトトレーニングの実行間隔が長いと、クロック信号とデータ信号とのずれが大きくなり、ライトトレーニングに要する時間が長くなる。また、ライトトレーニングに要する時間のばらつきも大きくなる。本実施形態では、中央バス制御システム50が例えば数msec単位で周期的にライトトレーニングを実行させるため、1回あたりのライトトレーニングの実行時間を均一化でき、また、実行時間そのものを短くすることができる。
関連技術では、特許文献2も含め、ライトトレーニングなどのトレーニングは、CPUなどの制御回路がソフトウェア制御で実行していた。ソフトウェアによるライトトレーニング実行では、例えば1msec単位で定期的に制御することは、他の処理との兼ね合いなどからも困難である。したがって、ライトトレーニングの実行間隔をあまり短くすることはできず、1回あたりのライトトレーニング実行時間が長くなっていた。1回あたりのライトトレーニング実行時間が長いと、その分、リアルタイム性が要求されるリクエストの処理数が減少し、リアルタイム性の確保が困難になる。本実施形態では、PHY80に設けられたトレーニング回路82、及び中央バス制御システム50を用いて、短い実行間隔で定期的にライトトレーニングを実行できるため、関連技術に比べて、リアルタイム性の確保が容易である。
[実施形態2]
次いで、実施形態2を説明する。本実施形態に係る電子装置の構成は、図1に示される実施形態1に係る電子装置の構成と同様である。本実施形態は、主に、中央バス制御システムがライトトレーニングの実行時にリフレッシュも実行させる点で、実施形態1と異なる。その他の点は、実施形態1と同様でよい。
本実施形態において、中央バス制御システム50は、メモリ90のライトトレーニングの実行時に、リフレッシュも同時に動作するようにリフレッシュ動作を制御する。中央バス制御システム50のトレーニング実行制御部54(図2を参照)は、動作モードをWTフェーズ動作モードに切り替えると、その旨をリフレッシュ実行制御部55に通知する。リフレッシュ実行制御部55(図2を参照)は、通常のリフレッシュ要求信号の出力に加えて、例えばライトトレーニングの実行開始時に、メモリコントローラ70にリフレッシュ要求信号を出力し、リフレッシュ動作を実行させる。また、リフレッシュ実行制御部55は、は、ライトトレーニングの実行終了時に、メモリコントローラ70にリフレッシュ要求信号を出力し、リフレッシュ動作を実行させる。
[動作例]
以下、動作例を説明する。図6は、実施形態2におけるライトトレーニング実行時の各部の動作波形を示す。実施形態1で説明した図5に示す動作波形との違いは、主に、リフレッシュ要求信号((e)を参照)が追加されている点である。時刻t22までの動作は、図5における時刻t12までの動作と同様である。すなわち、中央バス制御システム50は、時刻t21で、リアルタイム性の保証が不要なマスタC40のリード要求及びライト要求の双方のメモリコントローラ70への出力を抑制し((c)を参照)、時刻t22において、リアルタイム性の保証が要求されるマスタB30のリード要求のメモリコントローラ70への出力を抑制する((b)を参照)。
中央バス制御システム50は、マスタB30のリード要求の出力の抑制後、時刻t23でメモリコントローラ70のメモリコマンド生成部73にリフレッシュ要求信号を出力(信号をアサート)する((e)を参照)。メモリコマンド生成部73は、リフレッシュ要求信号を受け取ると、メモリ90においてリフレッシュ動作を実行させるためのコマンド信号を生成する。メモリコマンド生成部73は、生成したコマンド信号をPHY80を介してメモリ90に出力する。
中央バス制御システム50は、続いて、時刻t24でWTスロット信号をメモリコントローラ70に出力し、PHY80にメモリ90のライトトレーニングを実行させる((d)及び(f)を参照)。このとき、メモリ90では、リフレッシュ動作も同時に実行される。なお、図6では、ライトトレーニング動作とリフレッシュ動作とが時刻t24で同時に開始されているが、これら動作は完全に同じタイミングで開始されるとは限らない。中央バス制御システム50は、ライトトレーニングが実行される期間は、リアルタイム保証が要求されるマスタA20が発行するライト要求に対してのみ、アクセス権を付与する((a)を参照)。
その後、中央バス制御システム50は、ライトトレーニングが終了する前に、メモリコマンド生成部73に再度リフレッシュ要求信号を出力する((e)を参照)。メモリコマンド生成部73は、リフレッシュ要求信号を受け取ると、リフレッシュ動作を実行させるためのコマンド信号をPHY80を介してメモリ90に出力する。メモリ90は、コマンド信号に従って、リフレッシュ動作を実行する((f)を参照)。WTフェーズにおける2回目のリフレッシュ要求信号の出力タイミング(時刻t25)は、例えば、あらかじめ推定したライトトレーニングに要する時間(時刻t24から時刻t26までの時間に相当)と、リフレッシュ動作に要する時間とに基づいて決定される。
ライトトレーニングの終了時の動作は、図5に示す実施形態1で説明したものと同様でよい。中央バス制御システム50は、時刻t26でまずマスタB30が発行するリード要求の出力の抑制を解除し、次いで、時刻t27で、マスタC40が発行するリード要求及びライト要求の出力の抑制を解除する。中央バス制御システム50は、時刻t25でリフレッシュ要求信号を出力した後、通常動作における次のリフレッシュ要求信号の出力タイミングを、時刻t25を基点に計算する。
[まとめ]
本実施形態では、中央バス制御システム50は、ライトトレーニングの実行にあわせてリフレッシュ要求信号を出力し、メモリ90において、ライトトレーニング動作とリフレッシュ動作とを同時に実行させる。ライトトレーニング動作及びリフレッシュ動作は、共に、メモリアレイ93に対するアクセスが停止された状態で実行される。メモリアクセスが停止された状態で実行される2つの動作を同時に実行することで、リフレッシュ動作に伴うメモリアクセス停止を、ライトトレーニング動作に伴うメモリアクセス停止で隠蔽することができ、メモリ90のアクセス停止期間を短くしてアクセス帯域を改善することができる。メモリ90のアクセス帯域が多いほど、リアルタイム性の確保がしやすくなる。
また、本実施形態では、中央バス制御システム50は、ライトトレーニングの終了に合わせてリフレッシュ要求信号を出力する。例えば、LPDDR4メモリの場合、リフレッシュは2μsec~4μsec程度の間隔で実行される。ライトトレーニングの実行時間が、例えば1μsec~2μsec程度であるとすれば、メモリアクセスが停止されているライトトレーニングの終了時刻に合わせてリフレッシュを実行すれば、終了時刻に合わせてリフレッシュを実行しない場合に比べて、次のリフレッシュの実行時刻を遅らせることができる。ライトトレーニングの終了に合わせてリフレッシュを実行することで、ライトトレーニングの通常動作において、可能な限りリフレッシュ実行に伴う通常動作におけるメモリアクセスへの影響を低減できる。
[実施形態3]
続いて、実施形態3を説明する。実施形態1及び実施形態2では、中央バス制御システム50は、WTフェーズ動作モードにおいて、リード要求及びライト要求のメモリコントローラ70への出力を制御(スケジューリング)する。しかしながら、WTフェーズにおいて、最終的にメモリ90においてどのアクセス要求に従うメモリアクセスが行われるかは、メモリコントローラ70のスケジューラ72によって制御される。スケジューラ72は中央バス制御システム50とは独立に動作し、中央バス制御システム50は、メモリコントローラ70に受け付けられるアクセス要求は制御できても、バッファ71に記憶されているアクセス要求のスケジューリングまでは制御できない。
具体的に、WTフェーズにおいて、中央バス制御システム50は、図5の時刻t11でリアルタイム性の保証が不要なマスタC40のリード要求及びライト要求に対するアクセス権の付与を停止した後、時刻t12でリアルタイム性の保証が要求されるマスタB30のリード要求へのアクセス権の付与を停止する。このようにすることで、時刻t11から時刻t12までの期間において、マスタB30のリード要求がメモリコントローラ70に優先的に受け付けられる。しかしながら、中央バス制御システム50がマスタB30のリード要求を優先的に処理させたくても、スケジューラ72が通常のスケジューリングを行ってライトリクエストを先に処理させることもあり得る。その場合、ライトトレーニングの実行が開始する時刻t13において、バッファ71にマスタB30のリード要求が処理しきれずに残る可能性がある。本実施形態は、このような点の改善を図る。
図7は、実施形態3に係る半導体装置を含む電子装置を示す。本実施形態に係る電子装置10aは、主に、中央バス制御システム50がメモリコントローラ70のスケジューラ72にWTフェーズ信号(トレーニングフェーズ信号)を出力する点で、図1に示される実施形態1に係る電子装置10と相違する。本実施形態において、スケジューラ72は、ライトトレーニングを考慮したスケジューリングを行う。その他の点は、実施形態1又は実施形態2と同様でよい。
本実施形態において、中央バス制御システム50は、ライトトレーニングの実行の開始前に、トレーニングの実施に関連した期間である旨を示すWTフェーズ信号をメモリコントローラ70に出力する。中央バス制御システム50は、例えば動作モードを通常動作モードからWTフェーズ動作モードに切り替えると、WTフェーズ信号をメモリコントローラ70に出力(信号をアサート)する。中央バス制御システム50は、WTフェーズ信号を出力すると、所定時間経過後にマスタが発行するリード要求の出力の抑制を開始する。
スケジューラ72は、WTフェーズ信号が出力されている間、バッファ71に記憶されたアクセス要求のうち、リード要求を優先的に選択する。スケジューラ72は、リード要求を優先的に選択し、バッファ71にリード要求が存在しなくなると、ライト要求を選択する。中央バス制御システム50は、ライトトレーニングの終了後、リード要求の出力の抑制を解除すると、そこから所定期間の経過後、メモリコントローラ70に出力するWTフェーズ信号を停止(信号をネゲート)する。スケジューラ72は、WTフェーズ信号がネゲートされるまで、バッファ71に記憶されたリード要求のうちリード要求を優先的に選択する。
[動作例]
以下、動作例を説明する。図8は、実施形態3におけるライトトレーニング実行時の各部の動作波形を示す。実施形態1で説明した図5に示す動作波形との違いは、主に、WTフェーズ信号((d)を参照)と、スケジューラの動作((f)を参照)とが追加されている点である。中央バス制御システム50は、時刻t31で、動作モードをWTフェーズ動作モードに切り替え、メモリコントローラ70のスケジューラ72にWTフェーズ信号を出力(信号をアサート)する((d)を参照)。また、中央バス制御システム50は、時刻t31でリアルタイム性の保証が不要なマスタC40のリード要求及びライト要求の双方のメモリコントローラ70への出力を抑制する((c)を参照)。
スケジューラ72は、WTフェーズ信号がアサートされると、バッファ71に記憶されたアクセス要求のうち、リード要求を優先的に選択し((f)を参照)、メモリコマンド生成部73に出力する。このようにすることで、中央バス制御システム50の制御によりメモリコントローラ70に優先的に受け付けられたマスタB30のリード要求は、メモリコントローラ70において優先的に選択され、処理されることとなる。
中央バス制御システム50は、時刻t32において、リアルタイム性の保証が要求されるマスタB30のリード要求のメモリコントローラ70への出力を抑制する((b)を参照)。このとき、スケジューラ72は、選択するリード要求がなくなるまで、バッファ71に記憶されたリード要求のうちリード要求を優先的に選択し、選択するリード要求がなくなると、ライト要求を選択する。このようにすることで、メモリアクセスで停止されるライトトレーニングの実行開始までに、バッファ71に記憶されるアクセス要求の数をできるだけ少なくすることができる。
中央バス制御システム50は、時刻t33でWTスロット信号をメモリコントローラ70に出力し、PHY80にメモリ90のライトトレーニングを実行させる((e)及び(g)を参照)。中央バス制御システム50は、ライトトレーニングが実行される期間は、リアルタイム保証が要求されるマスタA20が発行するライト要求に対してのみ、アクセス権を付与する((a)を参照)。マスタA20が発行したライト要求は、メモリコントローラ70のバッファ71に記憶される。ライトトレーニングの実行中、バッファ71に新たに記憶されるのはマスタA20が発行したライト要求のみとなる。ライトトレーニングの実行中は、メモリ90へのアクセスが停止されているため、スケジューラ72は実質的には動作を停止した状態となり、この期間において、バッファ71に記憶されたライト要求に従うメモリアクセスは発生しない。
中央バス制御システム50は、ライトトレーニング動作が終了した後、時刻t34で、リアルタイム性の保証が要求されるマスタB30のリード要求のメモリコントローラ70への出力の抑制を解除する((b)を参照)。その後、中央バス制御システム50は、時刻t35で、動作モードをWTフェーズ動作モードから通常動作モードへと切り替え、WTフェーズ信号をネゲートする((d)を参照)。また、中央バス制御システム50は、時刻t35で、リアルタイム性の保証が不要なマスタC40のリード要求及びライト要求のメモリコントローラ70への出力の抑制を解除する((c)を参照)。
スケジューラ72は、ライトトレーニングの終了後、WTフェーズ信号がアサートされている期間はリード要求を優先的に選択する。仮に、時刻t34から時刻t35までの間にマスタB30が発行したリード要求がメモリコントローラ70で受け付けられ、バッファ71に記憶されたとすると、そのリード要求は優先的に選択され、処理される。
ここで、バッファ71には、ライトトレーニングの実行中にマスタA20が発行したライト要求が記憶されており、ライトトレーニングが終了する時刻t33において、バッファ71に空きがない状態となっていることも考えられる。その場合には、スケジューラ72は、バッファ71に記憶されたライト要求を1つ選択し、ライト要求の処理後、バッファ71からそのライト要求を削除する。その後、バッファ71にリード要求が記憶されると、スケジューラ72は、そのリード要求を優先的に選択する。このようにすることで、アクセス権の付与が停止されていたマスタが発行したリード要求を優先的に処理することができる。
[まとめ]
本実施形態では、中央バス制御システム50は、メモリコントローラ70のスケジューラ72にWTフェーズ信号を出力し、WTフェーズをスケジューラ72に通知する。スケジューラ72は、WTフェーズでは、中央バス制御システム50が行うライトトレーニングを考慮したアクセス制御に対応したスケジューリングを行う。このように、本実施形態では、WTフェーズにおいて、中央バス制御システム50が行うメモリコントローラ70へ出力されるリード要求及びライト要求の制御(スケジューリング)と、メモリコントローラ70におけるリード要求及びライト要求のスケジューリングとを協調動作させることができる。中央バス制御システムの動作とメモリコントローラ70の動作とを協調させることで、実施形態1及び実施形態2に比べて、リアルタイム性の確実度を向上させることができる。
具体的に、本実施形態では、ライトトレーニングの実行前は、スケジューラ72が中央バス制御システム50と協働してリード要求を優先することで、リード要求が優先的に処理される。ライトトレーニングの実行前にリード要求を優先的に処理することで、ライトトレーニング実行前にリードアクセスが完了せず、ライトトレーニング後にリード要求に対する応答が返ることを防止できる。本実施形態では、リード要求がライトトレーニング前に処理されることから、リアルタイム性の確実度を向上させることができる。
本実施形態において、リード要求は、ライトトレーニング前に優先的に処理され、ライトトレーニングの開始時点では処理を完了している。本実施形態では、ライトトレーニングの実行中にバッファ71にリード要求が残らないため、ライトトレーニング中にバッファ71に記憶することができるライト要求の数を増やすことができる。これは、単一時間における処理能力の向上につながり、リアルタイム処理できる能力が増えることを意味する。または、リアルタイム処理に余裕ができることで、より確実にリアルタイム性を保証することが可能となることを意味する。
本実施形態では、ライトトレーニングの実行後、WTフェーズ信号がアサートされている期間、スケジューラ72は、バッファ71に滞留しているライト要求よりも、ライトトレーニングの実行中にアクセス権の付与が停止されていたマスタが発行したリード要求を優先的に選択する。このようにすることで、ライトトレーニングの実行中にアクセス権が得られず、リアルタイム処理の許容時間が迫っているリード要求を優先的に処理することができ、リアルタイム性の確実度を向上させることができる。
[変形例1]
続いて、変形例1を説明する。図9は、変形例1に係る半導体装置を含む電子装置を示す。本変形例に係る電子装置10bは、主に、中央バス制御システム50がPHY80の調停回路81にWTスロット信号を出力する点で図1に示される実施形態1に係る電子装置10と相違する。その他の点は、実施形態1、実施形態2、又は実施形態3と同様でよい。
本変形例では、中央バス制御システム50のトレーニング実行制御部54(図2を参照)は、調停回路81にWTスロット信号を出力し、調停回路81にトレーニングの実施を通知する。調停回路81は、トレーニング実行制御部54からWTスロット信号を受け取ると、メモリ90の制御権の取得を要求するマスタ権要求プロトコル信号をメモリコントローラ70のメモリコマンド生成部73に出力する。メモリコマンド生成部73は、マスタ権要求プロトコル信号を受け取ると、許可を示す応答を調停回路81に返却する。
本実施形態では、中央バス制御システム50は、PHY80に対してWTスロット信号を出力する。PHY80は、WTスロット信号を受信するとメモリコントローラ70に対して制御権の取得を要求し、ライトトレーニングを行う。PHY80の調停回路81は、実施形態1、実施形態2、及び実施形態3では、ライトトレーニングの実行前に、メモリコントローラ70に制御権の取得を要求しておく必要があった。本実施形態では、調停回路81は、WTスロット信号が出力されたタイミングで制御権の取得を要求すればよく、メモリコントローラ70に対して常に制御権の取得を要求しておく必要がなくなる。
[変形例2]
引き続き、変形例2を説明する。図10は、変形例2に係る半導体装置を含む電子装置を示す。本変形例に係る電子装置10cは、主に、メモリコマンド生成部73が中央バス制御システム50に対してライトトレーニングの実行を要求するWT要求信号を出力する点で図1に示される実施形態1に係る電子装置10と相違する。その他の点は、実施形態1、実施形態2、実施形態3、又は変形例1と同様でよい。
本実施形態において、メモリ90にはLPDDR4メモリが用いられており、メモリ90は、温度ドリフト測定装置95と電圧ドリフト測定装置96とを有している。メモリコントローラ70は、温度ドリフト測定装置95の測定結果、及び電圧ドリフト測定装置96の測定結果を取得し、取得した測定結果が所定の条件を満たすか否かを判断する。メモリコントローラ70は、所定の条件が満たされると判断した場合、中央バス制御システム50を介してトレーニング回路82にライトトレーニングを実行させる。
メモリコントローラ70において、メモリコマンド生成部73は、メモリ90に対して温度ドリフト測定装置95の測定結果(温度ドリフト測定結果)を取得するためのコマンド信号、及び電圧ドリフト測定装置96の測定結果(電圧ドリフト測定結果)を取得するためのコマンド信号を出力する。これらコマンド信号(リード)は、メモリ90への通常のリードコマンド及びライトコマンドと同様に取り扱われる。メモリ90は、上記コマンド信号を受信すると、温度ドリフト測定結果、及び電圧ドリフト測定結果をメモリコントローラ70に出力する。メモリコマンド生成部73は、例えば通常の1回のリード転送と同様な転送時間で、メモリ90から温度ドリフト測定結果及び電圧ドリフト測定結果を読み出すことができる。メモリコマンド生成部73は、上記コマンド信号を定期的に発行し、メモリ90における温度変化、及び電圧変化を監視する。
メモリコマンド生成部73は、温度ドリフト測定結果、及び電圧ドリフト測定結果が例えばあらかじめ設定された範囲から逸脱しているか否かを判断する。メモリ90において、温度変動及び電圧変動が大きい場合、データ信号とクロック信号とのタイミング変化が大きいと考えられる。メモリコマンド生成部73は、温度ドリフト測定結果、及び電圧ドリフト測定結果の少なくとも一方が、あらかじめ設定された範囲から逸脱していると判断した場合、ライトトレーニングを実行させることを決定する。メモリコマンド生成部73は、ライトトレーニングを実行させることを決定すると、WT要求信号をアサートし、中央バス制御システム50にライトトレーニングの実行を要求する。メモリコマンド生成部73は、ライトトレーニングを実行させないと決定した場合は、WT要求信号をネゲートしたままとする。
本実施形態において、中央バス制御システム50のトレーニング実行制御部54は、例えば実施形態1において説明したものと同様な周期でWT要求信号をチェックし、WTフェーズ動作モードへの切替えを行うか否かを判断する。トレーニング実行制御部54は、実施形態1においては例えば所定時間経過ごとに動作モードをWTフェーズ動作モードに切り替えていた。これに対し、本変形例においては、トレーニング実行制御部54は、動作モードの切替え前に、WT要求信号がアサートされているか否かを調べ、その結果に応じて動作モードの切替えを行うか否かを判断する。トレーニング実行制御部54は、WT要求信号がアサートされていると判断した場合は、予定通り、動作モードをWTフェーズ動作モードに切り替えてライトトレーニングを実行させる。トレーニング実行制御部54は、WT要求信号がアサートされていなかった場合は、WTフェーズ動作モードへの切替えを行わず、通常動作モードでの動作を続ける。ライトトレーニング(WTフェーズ)における各部の動作は、これまでに説明したものと同様でよい。
本変形例では、メモリコマンド生成部73は、メモリ90の温度ドリフト測定装置95及び電圧ドリフト測定装置96の値を定期的に読み出し、ライトトレーニングを実行させるか否かを判断する。中央バス制御システム50は、メモリコマンド生成部73から出力されるWT要求信号の信号状態に応じて、WTフェーズ動作モードへの切替えを行うか否かを能動的に(ハードウェアによって)判断する。中央バス制御システム50は、WT要求信号がアサートされている場合にWTフェーズ動作モードへの切替えを行うことで、必要なときにライトトレーニングを実行させることができる。中央バス制御システム50は、WT要求信号がアサートされていない場合は、通常動作モードでの動作を続けるため、不必要なライトトレーニングが実行されない分だけ、データ転送の帯域を確保することができる。また、本変形例では、ライトトレーニングをハードウェア的に実行するため、ソフトウェア制御(CPU制御)に比べてよりきめ細かに制御できる。
なお、上記各実施形態及び各変形例においては、主にメモリ90にLPDDR4が用いられることを想定して説明したが、これには限定されない。メモリ90には、DDR3メモリなどの、温度ドリフト測定装置95及び電圧ドリフト測定装置96や、トレーニング用FIFO94を有していない他のメモリを使用することもできる。メモリ90が温度ドリフト測定装置95及び電圧ドリフト測定装置96を有していない場合は、メモリ90の外部にそれら測定装置を実装し、それらの測定値をメモリコマンド生成部73が取得可能に構成すればよい。また、メモリ90がトレーニング用FIFO94を有していない場合は、例えばメモリアレイ93の一部の領域を、実動作で使用が禁止されるトレーニング用の領域として確保し、その領域に対してライトトレーニングを実行すればよい。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は既に述べた実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変更が可能であることはいうまでもない。
例えば、上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
メモリに対して、リード要求及びライト要求を含むアクセス要求を発行するマスタと、
バスを介して前記マスタに接続され、前記アクセス要求に従って前記メモリにアクセスするメモリコントローラと、
前記マスタが発行したアクセス要求の前記メモリコントローラへの出力を制御するアクセス制御部と、
前記メモリに対するアクセスが停止された状態で前記メモリに対するトレーニングを実施するトレーニング回路とを備え、
前記アクセス制御部は、前記トレーニングの実行を更に制御し、かつ、前記トレーニングの実行中は、前記マスタが発行したアクセス要求のうち前記リード要求の前記メモリコントローラへの出力を抑制する半導体装置。
[付記2]
前記メモリと前記メモリコントローラとの間に、前記トレーニング回路を有する物理層インタフェースを更に備える付記1に記載の半導体装置。
[付記3]
前記物理層インタフェースは、前記メモリに対する制御権の取得を前記メモリコントローラに要求し、前記制御権を前記メモリコントローラから取得する調停回路を更に有し、
前記トレーニング回路は、前記調停回路が前記制御権を取得している場合、前記トレーニングを実施する付記2に記載の半導体装置。
[付記4]
前記アクセス制御部は、前記メモリコントローラに前記トレーニングの実施を通知し、
前記メモリコントローラは、前記アクセス制御部から前記トレーニングの実施の通知を受け取ると、前記調停回路に対して前記制御権を与える付記3に記載の半導体装置。
[付記5]
前記調停回路は、前記トレーニングが完了すると、前記制御権を前記メモリコントローラに返却する付記4に記載の半導体装置。
[付記6]
前記調停回路は、前記制御権の返却後、新たな制御権の取得を前記メモリコントローラへ要求する付記5に記載の半導体装置。
[付記7]
前記アクセス制御部は、前記調停回路に前記トレーニングの実施を通知し、
前記調停回路は、前記アクセス制御部から前記トレーニングの実施の通知を受け取ると、前記制御権の取得を前記メモリコントローラに要求する付記3に記載の半導体装置。
[付記8]
前記バスは、前記リード要求を伝送するためのリード要求バスと、前記ライト要求を伝送するためのライト要求バスとを含み、
前記アクセス制御部は、前記リード要求バスと前記ライト要求バスとのそれぞれに対応して配置されたリクエスト発行制御部を有するバスサブコントローラと、前記リード要求バス及び前記ライト要求バスに対応して配置されたリクエスト発行制御部に対して個別にアクセス権を付与する中央バス制御システムとを含み、
前記リード要求バス及び前記ライト要求バスに対応して配置されたリクエスト発行制御部は、それぞれ、前記中央バス制御システムから前記アクセス権が付与されている場合は前記マスタが発行したリード要求及びライト要求を前記メモリコントローラへ出力し、前記アクセス権が付与されていない場合は前記マスタが発行したリード要求及びライト要求の前記メモリコントローラへの出力を抑制する付記1に記載の半導体装置。
[付記9]
前記アクセス制御部は、前記トレーニングが開始されるタイミングよりも所定時間前のタイミングで、前記リード要求の出力の抑制を開始する付記1に記載の半導体装置。
[付記10]
前記マスタを複数有し、
前記複数のマスタから入力されるアクセス要求を調停して前記メモリコントローラに出力するインターコネクトを更に備える付記1に記載の半導体装置。
[付記11]
前記アクセス制御部は、前記複数のマスタのそれぞれと前記インターコネクトとの間を接続する複数のバスのそれぞれに対応して配置された複数のバスサブコントローラと、前記複数のバスサブコントローラのそれぞれに対して所定のアクセス制御の内容に従ってアクセス権を付与する中央バス制御システムとを含む付記10に記載の半導体装置。
[付記12]
前記複数のバスサブコントローラは、それぞれ、前記中央バス制御システムから前記アクセス権が付与されている場合は前記マスタが発行したアクセス要求を前記インターコネクトに出力し、前記アクセス権が付与されていない場合は前記マスタが発行したアクセス要求の前記インターコネクトへの出力を抑制するリクエスト発行制御部を含む付記11に記載の半導体装置。
[付記13]
前記複数のバスは、それぞれ、リード要求を伝送するためのリード要求バスと、ライト要求を伝送するためのライト要求バスとを含み、前記複数のバスサブコントローラのそれぞれでは、前記リクエスト発行制御部が、前記リード要求バスと前記ライト要求バスとのそれぞれに対応して配置されており、
前記中央バス制御システムは、前記リード要求バスに対応して配置されたリクエスト発行制御部と、前記ライト要求バスに対応して配置されたリクエスト発行制御部のそれぞれに対して個別に前記アクセス権の付与を行う付記12に記載の半導体装置。
[付記14]
前記複数のマスタは、第1のマスタと、優先度が第1のマスタよりも低い第2のマスタとを含み、
前記アクセス制御部は、前記トレーニングの実行中、前記第2のマスタが発行する前記リード要求及び前記ライト要求の前記メモリコントローラへの出力を抑制し、かつ前記第1のマスタが発行する前記リード要求の前記メモリコントローラへの出力を抑制する付記10に記載の半導体装置。
[付記15]
前記アクセス制御部は、前記トレーニングが開始されるタイミングよりも前で、かつ前記トレーニングが開始されるタイミングに対して所定の時間関係にある第1のタイミングで前記第2のマスタが発行する前記リード要求及びライト要求の出力の抑制を開始し、前記トレーニングが開始されるタイミングよりも前で、かつ前記第1のタイミングよりも後の第2のタイミングで前記第1のマスタが発行する前記リード要求の出力の抑制を開始する付記14に記載の半導体装置。
[付記16]
前記アクセス制御部は、前記トレーニングの終了後、第3のタイミングで前記第1のマスタが発行する前記リード要求の出力の抑制を解除し、かつ前記第3のタイミングよりも後の第4のタイミングで前記第2のマスタが発行する前記リード要求及びライト要求の出力の抑制を解除する付記15に記載の半導体装置。
[付記17]
前記メモリはリフレッシュ動作が実行可能に構成されており、
前記アクセス制御部は、前記リフレッシュ動作の実行を更に制御し、前記トレーニングの実行開始時に前記メモリに前記リフレッシュ動作を実行させる付記1に記載の半導体装置。
[付記18]
前記アクセス制御部は、前記トレーニングの実行終了時に前記メモリに前記リフレッシュ動作を更に実行させる付記17に記載の半導体装置。
[付記19]
前記メモリコントローラは、前記アクセス要求を受け付けて記憶するリクエストバッファと、前記リクエストバッファに記憶された前記アクセス要求を選択するスケジューラと、前記スケジューラで選択されたアクセス要求に従って前記メモリへアクセスするメモリコマンド生成部とを含む付記1に記載の半導体装置。
[付記20]
前記アクセス制御部は、前記トレーニングの実行の開始前に、前記トレーニングの実施に関連した期間である旨を示すトレーニングフェーズ信号を前記メモリコントローラに出力し、かつ前記トレーニングフェーズ信号を出力してから所定時間経過後に前記リード要求の出力の抑制を開始し、
前記スケジューラは、前記トレーニングフェーズ信号が出力されている間、前記リクエストバッファに記憶されたアクセス要求のうち、前記リード要求を優先的に選択する付記19に記載の半導体装置。
[付記21]
前記アクセス制御部は、前記トレーニングの終了後、前記リード要求の出力の抑制を解除し、
前記スケジューラは、前記リード要求の出力の抑制が解除されてから所定期間の経過後に前記トレーニングフェーズ信号の出力を停止する付記20に記載の半導体装置。
[付記22]
前記アクセス制御部は、周期的に前記トレーニング回路に前記トレーニングを実行させる付記1に記載の半導体装置。
[付記23]
前記メモリは、電圧及び温度の少なくとも一方を測定する測定回路を有しており、
前記メモリコントローラは、前記測定回路の測定結果を取得し、該取得した測定結果が所定の条件を満たす場合、前記トレーニング回路に前記トレーニングを実行させる付記1に記載の半導体装置。
[付記24]
前記トレーニングは、前記メモリに入力される信号間のスキュー調整を含む付記1に記載の半導体装置。
[付記25]
前記トレーニングは、クロック信号と、前記メモリに入力されるデータ信号のタイミングを調整するライトトレーニングを含む付記1に記載の半導体装置。
[付記26]
前記トレーニングは、クロック信号と、前記メモリから出力されるデータ信号とタイミングを調整するリードレーニングを含む付記1に記載の半導体装置。
[付記27]
前記メモリは、DDR-SDRAM(Double-Data-Rate Synchronous Dynamic Random Access Memory)である付記1に記載の半導体装置。
[付記28]
前記アクセス制御部は、前記マスタに対して設定されたQoS(Quality of Service)情報に基づいて、前記アクセス要求の前記メモリコントローラへの出力を制御する付記1に記載の半導体装置。
[付記29]
マスタから、リード要求及びライト要求を含むアクセス要求をメモリに対して発行し、
前記マスタからバスを介して前記アクセス要求を受信し、該受信したアクセス要求に従って前記メモリにアクセスするメモリコントローラへの、前記マスタが発行したアクセス要求の出力を制御し、
前記メモリに対するアクセスが停止された状態で前記メモリに対するトレーニングを実施することを有し、
前記アクセス要求の出力の制御では、前記トレーニングの実行中、前記マスタが発行したアクセス要求のうち前記リード要求の前記メモリコントローラへの出力を抑制するアクセス制御方法。
[付記30]
メモリに対して、リード要求及びライト要求を含むアクセス要求を発行するマスタと、
バスを介して前記マスタに接続され、前記アクセス要求に従って前記メモリにアクセスするメモリコントローラと、
前記マスタが発行したアクセス要求に対するアクセス権の付与を制御することで、前記マスタが発行したアクセス要求の前記メモリコントローラへの出力を制御するアクセス制御部と、
前記メモリに対するアクセスが停止された状態で前記メモリに対するトレーニングを実施するトレーニング回路とを備え、
前記アクセス制御部は、前記トレーニングの実行を更に制御し、かつ、
前記アクセス制御部は、動作モードが第1の動作モードと第2の動作モードとの間で切替可能に構成され、前記第1の動作モードでは前記マスタが発行するアクセス要求に所定のアクセス制御の内容に従って前記アクセス権を付与し、前記第2の動作モードでは前記トレーニングを実行させ、かつ前記マスタが発行するアクセス要求のうち前記ライト要求には前記所定のアクセス制御の内容に従って前記アクセス権を付与し、前記マスタが発行するアクセス要求のうち前記リード要求には前記アクセス権を付与しない半導体装置。
[付記31]
前記アクセス制御部は、周期的に前記動作モードを前記第1の動作モードから前記第2の動作モードに切り替えて、前記トレーニングを周期的に実行させる付記30に記載の半導体装置。
[付記32]
前記アクセス制御部は、前記第1の動作モードから前記第2の動作モードへの切替え後、前記マスタが発行するアクセス要求のうちのリード要求に対するアクセス権の付与を停止し、該アクセス権の付与の停止から所定時間経過後に前記トレーニングを実行させる付記30に記載の半導体装置。
[付記33]
前記マスタを複数有し、該複数のマスタは、第1のマスタと、優先度が第1のマスタよりも低い第2のマスタとを含み、
前記アクセス制御部は、前記第2の動作モードでは、前記第1のマスタが発行するアクセス要求のうち前記ライト要求には前記所定のアクセス制御の内容に従って前記アクセス権を付与し、前記第1のマスタが発行したアクセス要求のうち前記リード要求には前記アクセス権を付与せず、かつ前記第2のマスタが発行するアクセス要求には前記アクセス権を付与しない付記30に記載の半導体装置。
[付記34]
前記アクセス制御部は、前記第1の動作モードから前記第2の動作モードへの切替え後、前記第2のマスタが発行するアクセス要求に対する前記アクセス権の付与を停止し、該アクセス要求に対するアクセス権の付与の停止から所定時間経過後、前記第1のマスタが発行したアクセス要求のうちのリード要求に対するアクセス権の付与を停止し、該リード要求に対するアクセス権の付与の停止から所定時間経過後に前記トレーニングを実行させる付記33に記載の半導体装置。
[付記35]
前記アクセス制御部は、前記トレーニングの終了後、前記第1のマスタが発行するアクセス要求のうちのリード要求に対するアクセス権の付与の停止を解除し、該アクセス権の付与の停止の解除から所定時間経過後に、前記動作モードを前記第2の動作モードから前記第1の動作モードへ切り替えて前記第2のマスタが発行するアクセス要求に対するアクセス権の付与の停止を解除する付記34に記載の半導体装置。
10:電子装置
20、30、40:マスタ
21、31、41:バス
22、32、42:バスサブコントローラ
23、33、43:リクエスト発行制御部
21、31、41:バス
50:中央バス制御システム
51:権利付与選択制御部
52:権利付与数制御部
53:QoS情報レジスタ
54:トレーニング実行制御部
55:リフレッシュ実行制御部
60:インターコネクト
61:バス
70:メモリコントローラ
71:バッファ
72:スケジューラ
73:メモリコマンド生成部
80:PHY
81:調停回路
82:トレーニング回路
83:セレクタ
90:メモリ
91:コマンドデコーダ
92:セレクタ
93:メモリアレイ
94:トレーニング用FIFO
95:温度ドリフト測定装置
96:電圧ドリフト測定装置

Claims (14)

  1. ライト要求およびリード要求を発行する第1のマスタと、
    前記ライト要求および前記リード要求に従ってメモリにアクセスするメモリコントローラと、
    第1のライトアクセス権付与信号および第1のリードアクセス権付与信号を出力し、第1の動作モードおよび第2の動作モードを切り替えて動作する中央バス制御システムと、
    前記第1のマスタが発行したライト要求を受け取り、前記第1のライトアクセス権付与信号に応答して前記第1のマスタから受け取ったライト要求を前記メモリコントローラへ出力する第1のライトリクエスト発行制御部と、
    前記第1のマスタが発行したリード要求を受け取り、前記第1のリードアクセス権付与信号に応答して前記第1のマスタから受け取ったリード要求を前記メモリコントローラへ出力する第1のリードリクエスト発行制御部と、
    前記メモリに対してトレーニングを実行するトレーニング回路と、
    を備え、
    前記中央バス制御システムが前記第1の動作モードで動作する第1の期間は、前記トレーニングが実行される期間を含む第2の期間および前記トレーニングが実行される期間を含まない第3の期間を含み、
    前記第2の期間は、前記トレーニングが実行されない期間と前記トレーニングが実行される期間から構成され、
    前記第2の期間のうちの前記トレーニングが実行されない期間は、前記第3の期間の後に連続する期間であり、
    前記中央バス制御システムは、
    前記第1の期間において、前記第1のライトアクセス権付与信号を前記第1のライトリクエスト発行制御部へ出力し、
    前記第2の期間において、前記第1のリードアクセス権付与信号を前記第1のリードリクエスト発行制御部へ出力せず、
    前記第3の期間において、前記第1のリードアクセス権付与信号を前記第1のリードリクエスト発行制御部へ出力する、
    半導体集積回路。
  2. 請求項1に記載の半導体集積回路であって、
    前記メモリコントローラは、前記第1のライトリクエスト発行制御部から受け取ったライト要求および前記第1のリードリクエスト発行制御部から受け取ったリード要求を記憶するリクエストバッファと、前記リクエストバッファに記憶されたライト要求およびリード要求を選択するスケジューラと、を有し、前記スケジューラで選択されたライト要求およびリード要求に従って前記メモリへアクセスし、
    前記スケジューラは、前記第1の期間のうちの前記トレーニングが実行されない期間において、前記リクエストバッファに記憶されたライト要求およびリード要求のうち、前記リード要求を優先的に選択する、
    半導体集積回路。
  3. 請求項2に記載の半導体集積回路であって、
    前記第1の期間は、前記トレーニングが実行される期間を含まない第4の期間を含み、
    前記第4の期間は、前記第2の期間のうちの前記トレーニングが実行される期間に連続する期間であり、
    前記中央バス制御システムは、前記第4の期間において、前記第1のリードアクセス権付与信号を前記第1のリードリクエスト発行制御部へ出力し、
    前記スケジューラは、前記第4の期間において、前記リクエストバッファに記憶されたライト要求およびリード要求のうち、前記リード要求を優先的に選択する、
    半導体集積回路。
  4. 請求項2に記載の半導体集積回路であって、
    前記メモリコントローラは、前記トレーニングが実行される期間に前記第1のライトリクエスト発行制御部からライト要求を受け取った場合、前記第1のライトリクエスト発行制御部から受け取ったライト要求を前記リクエストバッファに記憶する、
    半導体集積回路。
  5. 請求項1に記載の半導体集積回路であって、
    前記中央バス制御システムは、前記第2の動作モードで動作する期間において、前記第1のライトアクセス権付与信号を前記第1のライトリクエスト発行制御部へ出力し、かつ、前記第1のリードアクセス権付与信号を前記第1のリードリクエスト発行制御部へ出力する、
    半導体集積回路。
  6. 請求項5に記載の半導体集積回路であって、
    前記中央バス制御システムは、前記第1の動作モードおよび前記第2の動作モードを周期的に切り替えて動作する、
    半導体集積回路。
  7. 請求項1に記載の半導体集積回路であって、
    ライト要求およびリード要求を発行する第2のマスタと、
    第2のライトリクエスト発行制御部と、
    第2のリードリクエスト発行制御部と、
    をさらに備え、
    前記中央バス制御システムは、第2のライトアクセス権付与信号を前記第2のライトリクエスト発行制御部へ出力し、かつ、第2のリードアクセス権付与信号を前記第2のリードリクエスト発行制御部へ出力し、
    前記第2のライトリクエスト発行制御部は、前記第2のマスタが発行したライト要求を受け取り、前記第2のライトアクセス権付与信号に応答して前記第2のマスタから受け取ったライト要求を前記メモリコントローラへ出力し、
    前記第2のリードリクエスト発行制御部は、前記第2のマスタが発行したリード要求を受け取り、前記第2のリードアクセス権付与信号に応答して前記第2のマスタから受け取ったリード要求を前記メモリコントローラへ出力し、
    前記メモリコントローラは、前記第2のライトリクエスト発行制御部から受け取ったライト要求および前記第2のリードリクエスト発行制御部から受け取ったリード要求に従って前記メモリにアクセスし、
    前記中央バス制御システムは、
    前記第1の期間において、前記第2のライトアクセス権付与信号を前記第2のライトリクエスト発行制御部へ出力し、
    前記第2の期間において、前記第2のリードアクセス権付与信号を前記第2のリードリクエスト発行制御部へ出力せず、
    前記第3の期間において、前記第2のリードアクセス権付与信号を前記第2のリードリクエスト発行制御部へ出力する、
    半導体集積回路。
  8. 請求項7に記載の半導体集積回路であって、
    前記第1のマスタおよび前記第2のマスタは、リアルタイム性の保証が要求されるマスタである、
    半導体集積回路。
  9. 請求項7に記載の半導体集積回路であって、
    前記第1のライトリクエスト発行制御部、前記第1のリードリクエスト発行制御部、第2のライトリクエスト発行制御部および第2のリードリクエスト発行制御部の各々と、前記メモリコントローラとの間に接続され、前記第1のマスタに設定された優先度および前記第2のマスタに設定された優先度に基づいて、前記第1のマスタから発行されたライト要求およびリード要求、および、前記第2のマスタから発行されたライト要求およびリード要求を調停するインターコネクトをさらに備え、
    前記メモリコントローラは、前記第1のライトリクエスト発行制御部から出力されたライト要求、前記第1のリードリクエスト発行制御部から出力されたリード要求、前記第2のライトリクエスト発行制御部から出力されたライト要求および前記第2のリードリクエスト発行制御部から出力されたリード要求を、前記インターコネクトを介して受け取る、
    半導体集積回路。
  10. 請求項1に記載の半導体集積回路であって、
    ライト要求およびリード要求を発行する第3のマスタと、
    第3のライトリクエスト発行制御部と、
    第3のリードリクエスト発行制御部と、
    をさらに備え、
    前記中央バス制御システムは、第3のライトアクセス権付与信号を前記第3のライトリクエスト発行制御部へ出力し、かつ、第3のリードアクセス権付与信号を前記第3のリードリクエスト発行制御部へ出力し、
    前記第3のライトリクエスト発行制御部は、前記第3のマスタが発行したライト要求を受け取り、前記第3のライトアクセス権付与信号に応答して前記第3のマスタから受け取ったライト要求を前記メモリコントローラへ出力し、
    前記第3のリードリクエスト発行制御部は、前記第3のマスタが発行したリード要求を受け取り、前記第3のリードアクセス権付与信号に応答して前記第3のマスタから受け取ったリード要求を前記メモリコントローラへ出力し、
    前記メモリコントローラは、前記第3のライトリクエスト発行制御部から受け取ったライト要求および前記第3のリードリクエスト発行制御部から受け取ったリード要求に従って前記メモリにアクセスし、
    前記中央バス制御システムは、
    前記第1の期間において、前記第3のライトアクセス権付与信号を前記第3のライトリクエスト発行制御部へ出力せず、かつ、前記第3のリードアクセス権付与信号を前記第3のリードリクエスト発行制御部へ出力せず、
    前記第2の動作モードで動作する期間において、前記第3のライトアクセス権付与信号を前記第3のライトリクエスト発行制御部へ出力し、かつ、前記第3のリードアクセス権付与信号を前記第3のリードリクエスト発行制御部へ出力する、
    半導体集積回路。
  11. 請求項10に記載の半導体集積回路であって、
    前記第1のマスタは、リアルタイム性の保証が要求されるマスタであり、
    前記第3のマスタは、リアルタイム性の保証が不要なマスタである、
    半導体集積回路。
  12. 請求項2に記載の半導体集積回路であって、
    前記中央バス制御システムは、前記第1のマスタのQoS情報および前記リクエストバッファの空き情報に基づいて、前記第1のライトアクセス権付与信号および前記第1のリードアクセス権付与信号を生成する、
    半導体集積回路。
  13. 請求項1に記載の半導体集積回路であって、
    前記中央バス制御システムは、前記第1の動作モードで動作中に、トレーニングスロット信号を生成し、
    前記トレーニング回路は、前記トレーニングスロット信号に基づいて前記メモリに対するトレーニングを実行する、
    半導体集積回路。
  14. 請求項1に記載の半導体集積回路であって、
    前記中央バス制御システムは、前記第1の動作モードで動作中に、リフレッシュ要求信号を生成し、
    前記メモリコントローラは、前記トレーニングが実行される期間において、前記リフレッシュ要求信号に基づいて前記メモリにリフレッシュ動作を実行させる、
    半導体集積回路。
JP2021086923A 2017-06-30 2021-05-24 半導体集積回路 Active JP7075528B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021086923A JP7075528B2 (ja) 2017-06-30 2021-05-24 半導体集積回路

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017128728A JP6890055B2 (ja) 2017-06-30 2017-06-30 半導体装置
JP2021086923A JP7075528B2 (ja) 2017-06-30 2021-05-24 半導体集積回路

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2017128728A Division JP6890055B2 (ja) 2017-06-30 2017-06-30 半導体装置

Publications (2)

Publication Number Publication Date
JP2021120909A JP2021120909A (ja) 2021-08-19
JP7075528B2 true JP7075528B2 (ja) 2022-05-25

Family

ID=62715880

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2017128728A Active JP6890055B2 (ja) 2017-06-30 2017-06-30 半導体装置
JP2021086923A Active JP7075528B2 (ja) 2017-06-30 2021-05-24 半導体集積回路

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2017128728A Active JP6890055B2 (ja) 2017-06-30 2017-06-30 半導体装置

Country Status (5)

Country Link
US (2) US10929317B2 (ja)
EP (2) EP3428803B1 (ja)
JP (2) JP6890055B2 (ja)
KR (1) KR102537338B1 (ja)
CN (2) CN116978422A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6890055B2 (ja) * 2017-06-30 2021-06-18 ルネサスエレクトロニクス株式会社 半導体装置
KR20200100951A (ko) * 2019-02-19 2020-08-27 에스케이하이닉스 주식회사 메모리 장치 및 이를 포함하는 데이터 처리 시스템
FR3093197A1 (fr) * 2019-02-21 2020-08-28 Stmicroelectronics (Grenoble 2) Sas Procédé d’arbitrage d’accès à une mémoire partagée, et dispositif électronique correspondant

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003050739A (ja) 2001-08-06 2003-02-21 Matsushita Electric Ind Co Ltd メモリ制御装置
US20090295438A1 (en) 2008-05-30 2009-12-03 Ravi Kishore Jammula Optimum Timing of Write and Read Clock Paths
JP2010020387A (ja) 2008-07-08 2010-01-28 Sony Corp メモリアクセス制御装置および撮像装置
JP2010225161A (ja) 2010-04-13 2010-10-07 Renesas Electronics Corp 半導体記憶装置
JP2011061457A (ja) 2009-09-09 2011-03-24 Elpida Memory Inc クロック生成回路及びこれを備える半導体装置並びにデータ処理システム
WO2012014603A1 (ja) 2010-07-29 2012-02-02 ルネサスエレクトロニクス株式会社 半導体装置及びデータ処理システム
JP2014167763A (ja) 2013-02-28 2014-09-11 Canon Inc 電子機器及びその制御方法
JP2015520902A (ja) 2012-05-22 2015-07-23 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated メモリアクセス遅延トレーニングのための方法および装置
WO2017056132A1 (ja) 2015-10-01 2017-04-06 ルネサスエレクトロニクス株式会社 半導体装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6430641B1 (en) * 1999-05-04 2002-08-06 International Business Machines Corporation Methods, arbiters, and computer program products that can improve the performance of a pipelined dual bus data processing system
US6820152B2 (en) * 2001-04-25 2004-11-16 Matsushita Electric Industrial Co., Ltd. Memory control device and LSI
JP2006039672A (ja) * 2004-07-22 2006-02-09 Olympus Corp バス要求制御回路
DE102005025168B4 (de) * 2005-06-01 2013-05-29 Qimonda Ag Elektronische Speichervorrichtung und Verfahren zum Betreiben einer elektronischen Speichervorrichtung
US8180990B2 (en) * 2006-03-10 2012-05-15 Panasonic Corporation Integrated circuit including a plurality of master circuits transmitting access requests to an external device and integrated circuit system including first and second interated circuits each including a plurality of master circuits transmitting access requests
US7647467B1 (en) * 2006-05-25 2010-01-12 Nvidia Corporation Tuning DRAM I/O parameters on the fly
US8949520B2 (en) * 2009-01-22 2015-02-03 Rambus Inc. Maintenance operations in a DRAM
US8549217B2 (en) 2009-11-17 2013-10-01 International Business Machines Corporation Spacing periodic commands to a volatile memory for increased performance and decreased collision
JP2011150759A (ja) 2010-01-22 2011-08-04 Renesas Electronics Corp メモリインタフェース回路、半導体装置、メモリインタフェース方法
US9268721B2 (en) * 2010-11-25 2016-02-23 International Business Machines Corporation Holding by a memory controller multiple central processing unit memory access requests, and performing the multiple central processing unit memory requests in one transfer cycle
CN103858117B (zh) * 2012-08-13 2017-09-15 松下知识产权经营株式会社 访问控制装置、中继装置、访问控制方法
US9058135B1 (en) * 2012-11-12 2015-06-16 Xilinx, Inc. Synchronization of timers across clock domains in a digital system
US9372818B2 (en) * 2013-03-15 2016-06-21 Atmel Corporation Proactive quality of service in multi-matrix system bus
JP2016018430A (ja) 2014-07-09 2016-02-01 ソニー株式会社 メモリ管理装置
US9851744B2 (en) * 2014-12-10 2017-12-26 Advanced Micro Devices, Inc. Address and control signal training
US9870169B2 (en) * 2015-09-04 2018-01-16 Intel Corporation Interleaved all-level programming of non-volatile memory
JP6890055B2 (ja) * 2017-06-30 2021-06-18 ルネサスエレクトロニクス株式会社 半導体装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003050739A (ja) 2001-08-06 2003-02-21 Matsushita Electric Ind Co Ltd メモリ制御装置
US20090295438A1 (en) 2008-05-30 2009-12-03 Ravi Kishore Jammula Optimum Timing of Write and Read Clock Paths
JP2010020387A (ja) 2008-07-08 2010-01-28 Sony Corp メモリアクセス制御装置および撮像装置
JP2011061457A (ja) 2009-09-09 2011-03-24 Elpida Memory Inc クロック生成回路及びこれを備える半導体装置並びにデータ処理システム
JP2010225161A (ja) 2010-04-13 2010-10-07 Renesas Electronics Corp 半導体記憶装置
WO2012014603A1 (ja) 2010-07-29 2012-02-02 ルネサスエレクトロニクス株式会社 半導体装置及びデータ処理システム
JP2015520902A (ja) 2012-05-22 2015-07-23 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated メモリアクセス遅延トレーニングのための方法および装置
JP2014167763A (ja) 2013-02-28 2014-09-11 Canon Inc 電子機器及びその制御方法
WO2017056132A1 (ja) 2015-10-01 2017-04-06 ルネサスエレクトロニクス株式会社 半導体装置

Also Published As

Publication number Publication date
KR102537338B1 (ko) 2023-05-26
EP3428803B1 (en) 2021-04-07
CN116978422A (zh) 2023-10-31
US20210141749A1 (en) 2021-05-13
US10929317B2 (en) 2021-02-23
JP2019012410A (ja) 2019-01-24
CN109215707A (zh) 2019-01-15
CN109215707B (zh) 2023-09-01
EP3428803A1 (en) 2019-01-16
US20190004983A1 (en) 2019-01-03
EP3872643B1 (en) 2022-01-05
US11461253B2 (en) 2022-10-04
JP6890055B2 (ja) 2021-06-18
KR20190003374A (ko) 2019-01-09
EP3872643A1 (en) 2021-09-01
JP2021120909A (ja) 2021-08-19

Similar Documents

Publication Publication Date Title
JP7075528B2 (ja) 半導体集積回路
CN112506422B (zh) 精细粒度刷新
JP6840145B2 (ja) 高速メモリインタフェースのためのコマンドアービトレーション
US7350004B2 (en) Resource management device
KR102444201B1 (ko) 플랫폼 마지닝 및 디버그를 위한 소프트웨어 모드 레지스터 액세스
JP7357169B2 (ja) Dramのリフレッシュ管理
JP2023156472A (ja) 同じチャネルで不均一なレイテンシを有するメモリタイプのための応答のサポート
KR20230017865A (ko) Dram을 위한 리프레시 관리
US20190196997A1 (en) Semiconductor device and bus generator
US20090013144A1 (en) Integrated circuit, and integrated circuit system
JP2009116702A (ja) 半導体集積回路
JP2024512684A (ja) データファブリッククロックスイッチング
US11157206B2 (en) Multi-die system capable of sharing non-volatile memory
EP3270294B1 (en) Command arbitration for high-speed memory interfaces
JP2011034214A (ja) メモリ制御装置
JP2008226135A (ja) 半導体集積回路及びメモリシステム
JP5752091B2 (ja) メモリーコントローラー
JP2024514503A (ja) Dramコマンドストリーク効率管理
JP2020057110A (ja) コマンド制御システム、車両、コマンド制御方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220308

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220420

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220513

R150 Certificate of patent or registration of utility model

Ref document number: 7075528

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150