JP6447167B2 - 半導体デバイス、ログ取得方法及び電子機器 - Google Patents

半導体デバイス、ログ取得方法及び電子機器 Download PDF

Info

Publication number
JP6447167B2
JP6447167B2 JP2015010802A JP2015010802A JP6447167B2 JP 6447167 B2 JP6447167 B2 JP 6447167B2 JP 2015010802 A JP2015010802 A JP 2015010802A JP 2015010802 A JP2015010802 A JP 2015010802A JP 6447167 B2 JP6447167 B2 JP 6447167B2
Authority
JP
Japan
Prior art keywords
semiconductor device
detection condition
access
external
cpu
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
JP2015010802A
Other languages
English (en)
Other versions
JP2016136292A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2015010802A priority Critical patent/JP6447167B2/ja
Priority to US14/995,686 priority patent/US9910757B2/en
Publication of JP2016136292A publication Critical patent/JP2016136292A/ja
Application granted granted Critical
Publication of JP6447167B2 publication Critical patent/JP6447167B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3471Address tracing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)

Description

本発明は、半導体デバイス、ログ取得方法及び電子機器に関する。
CPUからのアクセスが可能な半導体デバイス、および半導体デバイスを搭載する電子機器の障害解析のために、CPUのアクセスや半導体デバイスの内部信号に関する履歴(ログ)を所定の条件でメモリや半導体デバイスに搭載したシリアル通信手段へ出力することが知られている。
例えば、特許文献1には、デバッグ用のログデータを生成し、生成されたログデータを、エンジン制御部内のバッファの空き状況及びコントローラのデータ転送状況に応じてバッファへ蓄積するか又はコントローラへ転送する電子機器が開示されている。
特許文献2には、CPUからのアクセスをモニタし、ログデータを取得する半導体デバイスにおいて、CPUからのアクセスの種類によりログデータの要又は不要を判断し、必要なログデータのみを取得する技術が開示されている。
しかしながら、特許文献1、2では、CPUによる半導体デバイスの制御開始前又は半導体デバイスのシステムが立ち上がる前に、ログデータの取得範囲や取得条件を制御することや、取得したログデータをDDR等の外部メモリへ書き込むことは困難である。
そこで、一側面では、CPUによる半導体デバイスの制御開始前又は半導体デバイスのシステムが立ち上がる前に検出条件に基づき検出したログデータをメモリに記憶することを目的とする。
一つの案では、CPUからのアクセスが可能な半導体デバイスであって、設定されたアクセス検出条件に基づき、前記CPUからのアクセスのうちログ取得の対象となるアクセスを検出するCPUアクセス検出手段と、設定されたイベント検出条件に基づき、前記半導体デバイスが有する機能モジュールからの内部信号のうちログ取得の対象となる内部信号を検出する内部信号検出手段と、検出した前記ログ取得の対象となるアクセス及び内部信号の少なくともいずれかのログデータを記憶する内部メモリ手段と、前記半導体デバイスの外部端子の状態に基づき、前記アクセス検出条件及び前記イベント検出条件を設定する検出条件設定手段と、を有し、前記検出条件設定手段は、前記半導体デバイスの外部リセット解除の前に、前記アクセス検出条件及び前記イベント検出条件を設定し、前記外部リセット解除の後に、一の外部端子に設定されている前記アクセス検出条件及び他の外部端子により設定されている前記イベント検出条件を有効にする半導体デバイスが提供される。
一態様によれば、CPUによる半導体デバイスの制御開始前又は半導体デバイスのシステムが立ち上がる前に検出条件に基づき検出したログデータをメモリに記憶することができる。
一実施形態にかかる半導体デバイスの内部構成の一例を示す図。 一実施形態にかかるシステムの電源オンから外部メモリ初期化までの動作の一例を示すタイムチャート。 一実施形態にかかるログフォーマットの一例を示す図。 一実施形態にかかる検出条件の一例を示す図。 一実施形態にかかる内部メモリへのログデータ蓄積処理の一例を示すフローチャート。 一実施形態にかかる外部メモリへのログデータ転送処理の一例を示すフローチャート。 一実施形態にかかる外部メモリの初期化処理の一例を示すフローチャート。
以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
[半導体デバイスの内部構成]
まず、本発明の一実施形態にかかる半導体デバイス27の内部構成について、図1を参照して説明する。図1は、一実施形態にかかる半導体デバイス27の内部構成の一例を示す。半導体デバイス27は、半導体デバイス27の制御用であるCPU1からのアクセスが可能なデバイスである。半導体デバイス27と後述される外部メモリとは、電子機器40に搭載されている。
半導体デバイス27は、CPUアクセス検出手段4、検出条件設定手段6、内部信号トリガ検出手段8、ログフォーマット変換手段9、内蔵メモリアクセス制御手段10、内蔵メモリ手段11、ログデータ転送手段12、外部メモリアクセス制御手段13、外部メモリ初期化実行手段15、外部メモリ初期化完了検出手段16、機能モジュール17、シリアル通信手段18、内部バスの一例であるAXI(Advanced eXtensible Interface)バス19、PLL(phase locked loop)20及びリセット生成手段21を有する。
CPU1は、本実施形態にかかる半導体デバイス27の制御用のCPUであり、半導体デバイス27にアクセスすると、CPUアクセスI/F((InterFace)信号3が出力される。CPU1にはリセット信号2が入力され、これにより、CPU1はリセットされる。
CPUアクセス検出手段4は、CPUアクセスI/F信号3を検出する。CPUアクセス検出手段4は、CPUアクセスI/F信号3によって、あるアドレスへR/W(Read/Write)アクセスする動作を監視し、検出条件設定手段6が設定したアクセス検出条件に合致したCPU1からのアクセス(以下、「CPUアクセス」ともいう。)を検出する。検出したCPUアクセスは、ログ取得対象のログデータの一例である。
検出条件設定手段6は、半導体デバイス27の外部端子の状態を示す検出条件信号5に基づきアクセス検出条件、イベント検出条件及びログ取得の許可又は不許可を設定する。半導体デバイス27の外部端子の状態は、半導体デバイス27の外部ピンのレベルであり、検出条件信号5によって示される。検出条件設定手段6は、検出条件信号5を外部リセット信号22の立ち上がりのタイミングでラッチし、保存する。ある外部ピンによりアクセス検出条件(のモード)が設定され、他の外部ピンによりイベント検出条件(のモード)が設定される。検出条件設定手段6は、半導体デバイス27の外部ピンを複数用いることで各検出条件の選択肢を増やしてもよい。
内部信号トリガ検出手段8は、検出条件設定手段6が設定したイベント検出条件に基づき、半導体デバイス27が有する機能モジュール17からの内部信号7のうちからイベント検出条件を満たす内部信号7(I/F信号)を検出する。具体的には、内部信号トリガ検出手段8は、機能モジュール17の内部信号7を入力する。内部信号トリガ検出手段8は、イベント検出条件に合致した、割り込み、バス、制御信号などのレベルやエッジなどの組み合わせが予め設定された内部信号7を検出する。検出した内部信号は、ログ取得対象のログデータの一例である。
ログフォーマット変換手段9は、検出したCPUアクセスや内部信号のログデータを例えば図3に示すようなログフォーマットに変換する。
内蔵メモリアクセス制御手段10は、内蔵メモリ手段11へのアクセスを制御する。内蔵メモリアクセス制御手段10は、ログフォーマット変換手段9から出力されたログデータに応じて、選択信号やR/W信号やアドレス信号を生成する。
内蔵メモリ手段11は、検出したログ取得対象となるCPUアクセスや内部信号のログデータを記憶する。内蔵メモリ手段11は、例えばSRAM(Static Random Access Memory)で構成され得る。システムの立ち上がり前であれば、通常画像処理等の他の用途に使用している内蔵メモリをジョイント(Joint)してログデータを保存するメモリ容量を増やすこともできる。
ログデータ転送手段12は、内蔵メモリ手段11のSRAM等のメモリに転送すべきデータがバースト分溜まったことを検出し、AXIバス19のプロトコルへ変換してバースト転送する。但し、外部メモリ14が使用できない間(外部メモリ14の初期化前)は一時的に内蔵メモリ手段11へ蓄積したままとする。
外部メモリアクセス制御手段13は、外部メモリ14へのI/Fプロトコルを生成する。外部メモリ14は、半導体デバイス27の外部に設けられたメモリである。外部メモリ14は、SRAM、DRAM(Dynamic Random Access Memory)、HDD(Hard Disk Drive)、Flashメモリ等の揮発性メモリまたは不揮発性メモリで構成され得る。
外部メモリ初期化実行手段15は、CPU1を介さずに外部メモリ14を初期化する。例えば外部メモリ14がDRAMの場合、外部メモリ初期化実行手段15は、PHY/論理層のリセット制御、初期化Parameter設定、モードレジスタ設定、トレーニング等の一連動作をCPU1の介在無く実施する。
外部メモリ初期化完了検出手段16は、外部メモリ初期化実行手段15による外部メモリ14の初期化実行処理が完了したことを、CPU1の介在無く検出する。
機能モジュール17は、半導体デバイス27に搭載された、各種機能を実行するためのモジュールであり、画像処理やDMA、割り込みコントローラ、IO(INput/Output)I/Fの論理層などである。機能モジュール17は、その機能を実行するためにCPU1によってアクセスされる。機能モジュール17は、ログ取得用に内部信号7によって内部信号トリガ検出手段8へ接続されている。
シリアル通信手段18は、CPU1の介在無く、CPU1のアクセス範囲と同じエリアをアクセスすることができる。シリアル通信手段18は、図示しない外部PC(Personal Computer)などからシリアルコマンドを介して接続され、内部レジスタ、内部メモリ、AXIバス19経由で外部メモリ14へアクセスできる。
AXIバス19は、機能モジュール17やシリアル通信手段18、外部メモリアクセス制御手段13等を接続する内部バスの一例である。
PLL20は、PLL(phase locked loop)回路である。リセット生成手段21は、半導体デバイス27で使用するPLLリセット信号125を生成するリセット生成回路である。内部クロック生成手段120は、半導体デバイス27で使用する内部クロック信号24を生成する回路である。内部リセット生成手段121は、半導体デバイス27で使用する内部リセット信号25を生成する回路である。最初にPLL20のリセットが解除され、内部クロック信号24の出力が安定してから、半導体デバイス27内部の機能モジュール17等のリセットが解除される。
外部リセット信号22は、半導体デバイス27の外部からリセット生成手段21に入力するリセット信号である。外部クロック信号23は、半導体デバイス27の外部からPLL20に入力するクロック信号である。
PLLリセット信号125は、PLL20をリセットする専用の信号であり、リセット生成手段21から出力され、PLL20に入力される。内部クロック信号24は、内部クロック生成手段120から出力されるクロック信号である。内部リセット信号25は、内部クロック信号24に応じて内部リセット生成手段121から出力され、半導体デバイス27内部の機能モジュール17等をリセットする信号である。
シリアル通信信号は、シリアル通信手段18へ接続されている。外部メモリI/F信号28は、例えばDDR等であり、外部メモリ14に入力される。
(データの流れ)
かかる構成の半導体デバイス27の(1)〜(4)のデータの流れについて簡単に説明する。(1)は、検出条件設定手段6により設定された各検出条件に従い、CPUアクセス検出手段4又は内部信号トリガ検出手段8が検出したログデータをログフォーマット変換手段9でフォーマット変換してログフォーマットを生成し、内蔵メモリ手段11へ蓄積するデータフローである。(2)は、内蔵メモリ手段11から、外部メモリ14へデータ転送するデータフローである。(3)は、シリアル通信手段18から、内蔵メモリ手段11へアクセスするデータフローである。(4)は、シリアル通信手段18から、外部メモリ14へアクセスするデータフローである。
(1)のデータフローは、CPUアクセスのログデータ取得時及び内部信号のログデータ取得時に発生する。(1)のデータフローにより蓄積されるログデータの蓄積処理については、図5を参照しながら後述される。
<CPUアクセスのログ取得>
CPU1からのアクセスのうち、ログ取得対象のアクセスかを判定するためのアクセス検出条件は、予め検出条件信号5に設定され、検出条件設定手段6に保存されている。CPU1からCPUアクセスI/F信号3を通して、半導体デバイス27へのアクセスが行われる。CPUアクセス検出手段4は、検出条件設定手段6に設定したアクセス検出条件に合致したCPUアクセスを検出する。検出されたCPUアクセスのログデータは、ログフォーマット変換手段9でフォーマット変換され、内蔵メモリアクセス制御手段10を通して、内蔵メモリ手段11に保存される。
<内部信号トリガのログ取得>
機能モジュール17からの内部信号7のうち、ログ取得対象の信号かを判定するためのイベント検出条件は、予め検出条件信号5に設定され、検出条件設定手段6に保存されている。機能モジュール17からの内部信号7が、内部信号トリガ検出手段8に接続される。内部信号トリガ検出手段8は、検出条件設定手段6が設定したイベント検出条件に合致した内部信号7を検出する。検出された内部信号7のログデータは、ログフォーマット変換手段9でフォーマット変換され、内蔵メモリアクセス制御手段10を通して、内蔵メモリ手段11に保存される。
また、(2)のデータフローにより転送されるログデータの転送処理については、図6を参照しながら後述される。また、(4)のデータフローによりアクセスされる外部メモリ14の初期化処理については、図7を参照しながら後述される。
<外部メモリ初期化実行>
本実施形態にかかる外部メモリ14の初期化処理は、外部メモリ初期化実行手段15により、CPU1の介在無く実行される。外部メモリ初期化完了検出手段16は、外部メモリ14の初期化完了を検出し、内蔵メモリアクセス制御手段10へ通知する。内蔵メモリアクセス制御手段10は、ログデータ転送手段12を起動して、内蔵メモリ手段11から、外部メモリアクセス制御手段13を通して外部メモリ14へログデータを転送する。
[電源オンから外部メモリ初期化までの動作]
次に、本実施形態にかかるシステムの電源投入から外部メモリ14の初期化までの動作について、図2を参照して説明する。図2は、一実施形態にかかるシステムの電源投入から外部メモリ14の初期化までの動作の一例を示すタイムチャートである。
本実施形態において以下に説明する「システムが立ち上がる前」とは、CPU1による制御開始前、又は、システム自体が立ち上がらない状態をいう。すなわち、「システムが立ち上がる前」とは、「CPU1を含むシステムの電源は入っているが、CPU1のリセットが解除されていない状態」、又は、「CPU1のリセットは解除されているが、CPU1が本来の制御ができない状態」をいう。例えば、PCI expressのLink upまでの動作は、CPU1の介在がなくてもハードウェアで実施出来る為、CPU1による制御開始前の動作とすることが出来る。例えば、そのような構成を取った際、Link upしない場合にハードウェア不具合を確認する為に、本実施形態にかかるログ取得方法を適用することで、設定した検出条件に基づくログデータを検出でき、そのログデータによる解析が可能となる。
なお、本実施形態にかかるシステムは、CPU1及び半導体デバイス28を有する。しかしながら、これに限らず、本実施形態にかかるシステムは、システム電子機器40に含まれる構成要素の全部又は一部であり、少なくともCPU1を含んでいればよい。
(1)外部リセット信号22が解除されると、図2の(B−3)に示すPLLリセット信号125が解除され、これに応じてPLL20が動作し、図2の(A−2)に示す内部クロック信号24が生成される。図2の(A−1)に示すように外部リセット信号22の解除に応じて設定されている各検出条件が有効になる。図2の(B−3)に示すPLLリセット信号125の解除タイミングは、外部リセット信号22の後であって、かつ内部リセット信号25の前である。
(2)内部クロック信号24に応じて内部リセット信号25が解除される。図2の(B−1)に示すように、内部リセット信号25の解除に応じて外部メモリ初期化実行手段15が、外部メモリ14の初期化を開始する。
(3)CPU1のリセット信号2の解除は、内部リセット信号25の解除よりも後であってもよい。CPU1のリセット信号2が解除されると、図2の(C)に示すように半導体デバイス27へのCPUアクセスが開始される。
(4)外部メモリ14の初期化が完了すると、図2の(D)に示すように外部メモリ初期化完了を示す信号の論理が変化する。外部メモリ初期化完了検出手段16は、外部メモリ初期化完了を示す信号の変化を検出する。
(5)ログの取得は、PLLリセット信号125及び内部リセット信号25の解除時より可能となっている(図2の(B−2)を参照)。
(6)外部メモリ14の初期化が完了すると、内蔵メモリ手段11から外部メモリ14へログデータが転送される(図2の(E)を参照)。
本実施形態では、(3)のCPU1の動作開始(=CPUによるログ設定の開始)よりも前にハードウェアでログデータの取得を開始可能である。また、外部メモリ14が使用可能になると、内蔵メモリ手段11に取得されたログデータを外部メモリ14へ転送可能となる。
つまり、本実施形態では、CPU1の動作開始前またはシステムが立ち上がらない場合に、予めハードウェアで設定したアクセス検出条件又はイベント検出条件に合致したログデータを取得可能である。取得したログデータは、CPU1以外からもアクセス可能な、LSIチップの内蔵メモリ手段11または外部メモリ14へソフトウェアの介在無く書き出して解析に役立てることができる。
[ログフォーマット]
次に、本実施形態にかかるログフォーマットの一例について、図3を参照して説明する。図3は、本実施形態にかかるログフォーマットの一例を示す。
(1)レジスタトレースモード
図3のレジスタトレースモードには、CPUアクセスをログフォーマット変換したフォーマット例が示されている。
(2)イベントトレースモード
図3のイベントトレースモードには、内部信号の動作組み合わせを1つのイベントとして、最大8つのイベントについて監視し、それぞれの発生時にログデータを生成したときのフォーマット例が示されている。
(1)、(2)ともに、内蔵のタイマによるタイムスタンプが付加されている。図3に示す「num」は、レジスタトレースモードのword識別(0:下位、1:上位)を示す。「time_cnt[15:0]」は、タイムスタンプ(上位:設定Period毎のカウント)を示す。「sub_cnt[17:0] 」は、タイムスタンプ(下位18bitのカウント)を示す。「rw」は、アクセス種別(0: リード/1: ライト) を示す。「bar」は、bar識別(2'b00=bar0、2'b01=bar4、2'b10=bar5)を示す。「addr[25:2]」は、アドレスを示す。「data[31:0]」は、データを示す。「event[3:0]」は、イベント1〜8(4'h1〜4'h8)検知結果を示し、最大8個のイベントを同時に検出している。
[検出条件]
次に、本実施形態にかかる検出条件設定手段6に設定されるアクセス検出条件及びイベント検出条件の一例について、図4を参照して説明する。各検出条件としては、ログ取得オン/オフ、モード(CPUアクセス又はイベント検出)選択、機能モジュール選択、アドレス/内部信号選択、CPUアクセスモード選択、イベントモード選択等を半導体デバイス27の外部の端子から設定可能である。これらの設定は、CPU1やシリアル通信手段18からでも設定変更可能である。
[内部メモリ手段へのログデータ蓄積処理]
次に、本実施形態にかかる内部メモリ手段11へのログデータ蓄積処理の一例について、図5のフローチャートを参照しながら説明する。本実施形態にかかる内部メモリ手段11へのログデータ蓄積処理が開始されると、ステップS1にて、半導体デバイス27の外部から検出条件信号5が入力され、これにより、アクセス検出条件やイベント検出条件が設定される。
次に、ステップS2にて、外部リセット信号22が解除されるまで待ち、外部リセット信号22が解除されたとき、ステップS3にて、検出条件設定手段6が検出条件を保存する。
次に、ステップS4にて、検出条件設定手段6に従ってログデータの取得が開始され、ステップS5にて、発生したCPUアクセスや内部信号がログ取得条件に合致するかどうかが判定される。具体的には、CPUアクセス検出手段4は、CPUアクセスI/F信号3によって、アクセス検出条件に合致したCPUアクセスを取得対象のログデータとして検出する。内部信号トリガ検出手段8は、イベント検出条件に合致した内部信号7のイベントを取得対象のログデータとして検出する。
次に、ステップS6にて、ログフォーマット変換手段9は、取得したログデータのフォーマットを変換し、ログフォーマットを作成する。次に、ステップS7にて、内蔵メモリ手段11は、フォーマット変換後のログデータを、内蔵メモリアクセス制御手段10を通して随時保存する。
次に、ステップS8にて、内蔵メモリ手段11は、記憶可能なメモリ領域がFullになったかを判定する。記憶可能なメモリ領域がFullになった場合、ステップS9にて、内蔵メモリ手段11は、Fullのフラグを立て、ステップS10に進む。記憶可能なメモリ領域がFullになっていない場合、そのままステップS10に進む。
次に、ステップS10にて、検出条件設定手段6が、ログ取得終了の指示が送出された場合、本処理を終了する。一方、ステップS10にて、検出条件設定手段6が、ログ取得終了の指示が送出されなかった場合、ステップS4に戻り、ステップS4以降の処理を繰り返す。
[外部メモリへのログデータ転送処理]
次に、本実施形態にかかる外部メモリ14へのログデータ転送処理の一例について、図6のフローチャートを参照しながら説明する。本実施形態にかかる外部メモリ14へのログデータ転送処理が開始されると、ステップS11にて、検出条件設定手段6は、検出条件信号5に応じた検出条件を設定する。次に、ステップS12にて、外部リセット信号22が解除されるまで待つ。
外部リセット信号22が解除されると、内部リセット信号25の解除に応じて、ステップS13にて、外部メモリ初期化実行手段15が起動される。これにより、図7にて示される外部メモリ14の初期化処理が実行される。
次に、ステップS14にて、外部メモリ初期化完了検出手段16は、外部メモリ初期化処理が完了したかを判定する。外部メモリ初期化処理が完了したと判定された場合、ステップS15にて、内蔵メモリ手段11は一定量以上のログデータが蓄積されているかを判定する。一定量以上のログデータとしては、例えば16ワード以上のログデータ等が挙げられる。
次に、内蔵メモリ手段11に一定量以上のログデータが蓄積されていると判定された場合、ステップS16にて、ログデータ転送手段12は、内蔵メモリアクセス制御手段10及び外部メモリアクセス制御手段13を介してそのログデータを外部メモリ14へ転送する。次に、ステップS17にて、ログ取得終了の指示があったかを判定し、ログ取得終了の指示があった場合にはステップS18に進む。ログ取得終了の指示がなかった場合にはステップS15に戻り、ステップS15〜S17の処理を繰り返す。ステップS18にて、内蔵メモリ手段11に一定量未満のログデータが残っている場合、ステップS16にて、残っているログデータを外部メモリ14へ転送し、ステップS17、S18へ進んで本処理を終了する。
[外部メモリの初期化処理]
次に、本実施形態にかかる外部メモリ14の初期化処理一例について、図7のフローチャートを参照しながら説明する。まず、ステップS21にて、半導体デバイス27の外部から、検出条件信号5の入力に従い、各検出条件が検出条件設定手段6により設定される。次に、ステップS22にて、外部リセット信号22が解除されるまで待つ。外部リセット信号22が解除されると、ステップS23にて、外部メモリアクセス制御手段13(メモリコントローラ)のリセット解除後、メモリコントローラ、図示しないDDR−PHYのレジスタに初期パラメータが設定される。検出条件信号5にてDDR構成(容量、Bit幅、速度等)を指定して、検出条件信号5に基づきパラメータ設定値が変更される。
次に、ステップS24にて、外部メモリ初期化実行手段15が起動され、外部メモリ14の初期化が開始される。次に、ステップS25にて、メモリコントローラの起動後、(伝送特性向上の為)ハード動作で伝送路のインピーダンスの補正を行うPZQキャリブレーションを実行する。これによりインピーダンスのプロセス・温度・電圧ばらつきをキャンセルできる。
次に、ステップS26にて、ステップS25のPZQキャリブレーション後、使用するDDRデバイスに応じた初期設定が、デバイス側のモードレジスタに設定される。次に、ステップS27のZQキャリブレーションロングにて、ステップS26のDDRデバイスの初期設定の後に、初期化シーケンスの一環として、(伝送特性向上のため)出力抵抗・終端抵抗の補正を実行する。
次に、ステップS28にて、(伝送特性向上の為)ライトレベリング、ゲートトレーニング、データアイのメモリトレーニングを順次実行する。次に、ステップS29にて、外部メモリ初期化完了検出手段16が、外部メモリ14の初期化が完了したことを検出すると、図6に示す外部メモリ14へのログデータ転送処理への移行が可能となる。
以上に説明したように、本実施形態にかかる半導体デバイス27によれば、半導体デバイス27の外部端子の状態からログ取得許可・不許可及びCPUアクセス検出手段4または内部信号トリガ検出手段8による検出条件が検出条件設定手段6に設定される。外部メモリ初期化実行手段15は、CPU1の介在無く外部メモリ14の初期化を実行する。外部メモリ初期化完了検出手段16は、外部メモリ14の初期化を完了したことを検出する。外部メモリ14の初期化の完了が検出されると、ログデータ転送手段は、外部メモリアクセス制御手段13を通して半導体デバイス27の内蔵メモリ手段11から外部メモリ14へログデータを転送する。
これにより、半導体デバイス制御用のCPU1による制御開始前、またはシステム自体が立ち上がらない場合において、ログデータの取得範囲やモードの自由な制御が可能となる。また、CPU1による半導体デバイス27の制御開始前又はシステムが立ち上がる前において、設定した検出条件に基づき取得対象のログデータを検出し、CPU1を介さずに半導体デバイス27の内蔵メモリ手段11に記憶することができる。また、外部メモリ14の初期化が完了したタイミングに応じてCPU1を介さずに内蔵メモリ手段11に保存したログデータを外部メモリ14に転送することができる。
以上、半導体デバイス、ログ取得方法及び半導体デバイスが搭載された電子機器を上記実施形態により説明したが、本発明にかかる半導体デバイス、ログ取得方法及び電子機器は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、上記複数の実施形態に記載された事項は、矛盾しない範囲で組み合わせることができる。また、半導体デバイスの各機能は、ハードウェアにより構成されてもよく、ソフトウェアにより構成されてもよく、ハードウェアとソフトウェアとを組み合わせて構成されてもよい。
1:CPU
3:CPUアクセスI/F信号
4:CPUアクセス検出手段
5:検出条件信号
6:検出条件設定手段
7:内部信号
8:内部信号トリガ検出手段
9:ログフォーマット変換手段
10:内蔵メモリアクセス制御手段
11:内蔵メモリ手段
12:ログデータ転送手段
13:外部メモリアクセス制御手段
14:外部メモリ
15:外部メモリ初期化実行手段
16:外部メモリ初期化完了検出手段
17:機能モジュール
18:シリアル通信手段
19:AXIバス
20:PLL
21:リセット生成手段
22:外部リセット信号
23:外部クロック信号
24:内部クロック信号
25:内部リセット信号
26:シリアル通信信号
27:半導体デバイス
28:外部メモリI/F信号
40:電子機器
120:内部クロック生成手段
121:内部リセット生成手段
125:PLLリセット信号
特開2013−225291号公報 特開2008−287319号公報

Claims (9)

  1. CPUからのアクセスが可能な半導体デバイスであって、
    設定されたアクセス検出条件に基づき、前記CPUからのアクセスのうちログ取得の対象となるアクセスを検出するCPUアクセス検出手段と、
    設定されたイベント検出条件に基づき、前記半導体デバイスが有する機能モジュールからの内部信号のうちログ取得の対象となる内部信号を検出する内部信号検出手段と、
    検出した前記ログ取得の対象となるアクセス及び内部信号の少なくともいずれかのログデータを記憶する内部メモリ手段と、
    前記半導体デバイスの外部端子の状態に基づき、前記アクセス検出条件及び前記イベント検出条件を設定する検出条件設定手段と、
    を有し、
    前記検出条件設定手段は、前記半導体デバイスの外部リセット解除の前に、前記アクセス検出条件及び前記イベント検出条件を設定し、前記外部リセット解除の後に、一の外部端子に設定されている前記アクセス検出条件及び他の外部端子により設定されている前記イベント検出条件を有効にする半導体デバイス。
  2. 前記検出条件設定手段は、前記半導体デバイスの外部端子の状態に基づき、前記ログ取得の許可又は不許可を設定し、
    設定した前記ログ取得の許可又は不許可に応じて前記ログデータを記憶する前記内部メモリ手段へのアクセスを制御する内部メモリアクセス制御手段を有する、
    請求項1に記載の半導体デバイス。
  3. 前記内部メモリ手段は、前記CPUによる制御が開始される前、又は前記半導体デバイスを搭載したシステムが立ち上がる前における前記ログデータを一時的に記憶する、
    請求項1又は2に記載の半導体デバイス。
  4. 前記内部メモリ手段に記憶した前記ログデータが転送される外部メモリへのアクセスを制御する外部メモリアクセス制御手段を有する、
    請求項1〜3のいずれか一項に記載の半導体デバイス。
  5. 前記半導体デバイスの外部に設けられた前記外部メモリを初期化する外部メモリ初期化実行手段と、
    前記外部メモリの初期化が完了したことを検出する初期化完了検出手段と、
    前記外部メモリの初期化の完了を検出したことに応じて前記内部メモリ手段に記憶したログデータを、前記外部メモリアクセス制御手段を介して前記外部メモリへ転送するログデータ転送手段と、を有する、
    請求項4に記載の半導体デバイス。
  6. 前記半導体デバイスの外部から前記CPUを介さずに該半導体デバイスの内部メモリ手段及び前記外部メモリへのアクセスを可能とするシリアル通信手段を有し、
    前記ログデータ転送手段は、前記シリアル通信手段を用いて前記内部メモリ手段から前記外部メモリへ前記ログデータを転送する、
    請求項5に記載の半導体デバイス。
  7. 前記検出条件設定手段は、前記CPUのリセット解除時よりも前に前記アクセス検出条件及び前記イベント検出条件の少なくともいずれかを設定する、
    請求項1〜6のいずれか一項に記載の半導体デバイス。
  8. CPUからのアクセスが可能な半導体デバイスのログデータを取得する方法であって、
    設定されたアクセス検出条件に基づき、該CPUのアクセスのうちログ取得の対象となるアクセスを検出し、
    設定されたイベント検出条件に基づき、前記半導体デバイスが有する機能モジュールからの内部信号のうログ取得の対象となる内部信号を検出し、
    検出した前記ログ取得の対象となるアクセス及び内部信号の少なくともいずれかのログデータを内部メモリ手段へ記憶し、
    前記半導体デバイスの外部端子の状態に基づき、前記アクセス検出条件及び前記イベント検出条件を設定し、
    前記半導体デバイスの外部リセット解除の前に、前記アクセス検出条件及び前記イベント検出条件を設定し、前記外部リセット解除の後に、一の外部端子に設定されている前記アクセス検出条件及び他の外部端子により設定されている前記イベント検出条件を有効にする、
    処理をコンピュータが実行するログ取得方法。
  9. 請求項1〜のいずれかに記載された半導体デバイスと、前記内部メモリ手段に記憶されたログデータが転送される外部メモリとを備えた電子機器。
JP2015010802A 2015-01-23 2015-01-23 半導体デバイス、ログ取得方法及び電子機器 Active JP6447167B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015010802A JP6447167B2 (ja) 2015-01-23 2015-01-23 半導体デバイス、ログ取得方法及び電子機器
US14/995,686 US9910757B2 (en) 2015-01-23 2016-01-14 Semiconductor device, log acquisition method and electronic apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015010802A JP6447167B2 (ja) 2015-01-23 2015-01-23 半導体デバイス、ログ取得方法及び電子機器

Publications (2)

Publication Number Publication Date
JP2016136292A JP2016136292A (ja) 2016-07-28
JP6447167B2 true JP6447167B2 (ja) 2019-01-09

Family

ID=56434086

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015010802A Active JP6447167B2 (ja) 2015-01-23 2015-01-23 半導体デバイス、ログ取得方法及び電子機器

Country Status (2)

Country Link
US (1) US9910757B2 (ja)
JP (1) JP6447167B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11416372B2 (en) 2020-03-23 2022-08-16 Kioxia Corporation Storage device and method of controlling storage device

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6447167B2 (ja) * 2015-01-23 2019-01-09 株式会社リコー 半導体デバイス、ログ取得方法及び電子機器
JP6862081B2 (ja) * 2015-06-23 2021-04-21 キヤノン株式会社 ロボットシステムの制御方法、制御プログラム、コンピュータ読み取り可能な記録媒体、およびロボットシステム
JP6514182B2 (ja) * 2016-12-14 2019-05-15 キャッツ株式会社 機器、管理サーバ、情報収集システム及び情報収集方法
JP7024621B2 (ja) * 2018-06-18 2022-02-24 株式会社リコー 制御装置、画像形成装置、制御方法及び制御プログラム
CN117521168A (zh) * 2023-11-20 2024-02-06 海光云芯集成电路设计(上海)有限公司 芯片、芯片的信息安全保护方法及电子设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0863374A (ja) * 1994-08-22 1996-03-08 Toshiba Corp トレース機能内蔵型lsi
JP2003006003A (ja) * 2001-06-18 2003-01-10 Mitsubishi Electric Corp Dmaコントローラおよび半導体集積回路
JP2003263339A (ja) * 2002-03-08 2003-09-19 Seiko Epson Corp デバック機能内蔵型マイクロコンピュータ
JP2008287319A (ja) 2007-05-15 2008-11-27 Ricoh Co Ltd 半導体デバイス、電子装置及びアクセスログ取得方法
JP5495310B2 (ja) * 2010-01-13 2014-05-21 エヌイーシーコンピュータテクノ株式会社 情報処理装置、障害解析方法及び障害解析プログラム
JP5533097B2 (ja) * 2010-03-18 2014-06-25 株式会社リコー 情報処理装置、画像形成装置及び情報処理プログラム
JP2010231818A (ja) * 2010-07-16 2010-10-14 Renesas Electronics Corp デバッグシステム
JP6070220B2 (ja) * 2012-03-23 2017-02-01 株式会社リコー 電子機器用のデバイス
JP6127766B2 (ja) 2013-06-20 2017-05-17 株式会社リコー 電子機器用のデバイス及び前記デバイスを搭載した電子機器
JP6447167B2 (ja) * 2015-01-23 2019-01-09 株式会社リコー 半導体デバイス、ログ取得方法及び電子機器

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11416372B2 (en) 2020-03-23 2022-08-16 Kioxia Corporation Storage device and method of controlling storage device

Also Published As

Publication number Publication date
US20160216914A1 (en) 2016-07-28
JP2016136292A (ja) 2016-07-28
US9910757B2 (en) 2018-03-06

Similar Documents

Publication Publication Date Title
JP6447167B2 (ja) 半導体デバイス、ログ取得方法及び電子機器
CN106462520B (zh) 用于与非易失性双列直插式存储器模块的控制器通信的技术
US20200034319A1 (en) Master-slave system, command execution method and data access method with use of serial peripheral interface(spi)
US9081516B2 (en) Application memory preservation for dynamic calibration of memory interfaces
JP4550439B2 (ja) Ecc制御装置
US7624225B2 (en) System and method for providing synchronous dynamic random access memory (SDRAM) mode register shadowing in a memory system
US9009531B2 (en) Memory subsystem data bus stress testing
US9870233B2 (en) Initializing a memory subsystem of a management controller
KR20190019209A (ko) Ddr 메모리 에러 복구
JP2008134736A (ja) 電子機器
US20180181457A1 (en) Semiconductor device
US8918680B2 (en) Trace queue for peripheral component
US10387361B2 (en) Serial device with configuration mode for changing device behavior
US11829640B2 (en) Asynchronous arbitration across clock domains for register writes in an integrated circuit chip
CN113778328B (zh) 在半导体封装之间引导控制数据
JP4426468B2 (ja) メモリエミュレーションモジュールを用いて高速でテストできるエンベデッドmcu、及びそのテスト方法
US20130305000A1 (en) Signal processing circuit
US10747611B2 (en) Safety enhancement for memory controllers
TWI525415B (zh) 參考頻率設定方法、記憶體控制器及記憶體儲存裝置
US11372581B2 (en) Information processing apparatus and control method thereof and program regarding reading a boot program
JP4103452B2 (ja) シリアルeepromのデータ入力制御装置
JP6712312B2 (ja) メモリモジュールまたはサブシステムと併置されたデータメンテナンスブロックを組み込んだdramメモリコントローラを用いて再構成可能なデバイスを再プログラミングする場合にdramデータを保持するシステムおよび方法
JP5350049B2 (ja) インターフェース回路
CN117312089A (zh) 基于i2c总线的ddr5内存温度监测装置及方法
JP2006155434A (ja) Pciバスコントローラ及びその動作制御方法並びにプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180831

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181018

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181029

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: 20181106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181119

R151 Written notification of patent or utility model registration

Ref document number: 6447167

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151