JP2007213415A - Memory device - Google Patents
Memory device Download PDFInfo
- Publication number
- JP2007213415A JP2007213415A JP2006034011A JP2006034011A JP2007213415A JP 2007213415 A JP2007213415 A JP 2007213415A JP 2006034011 A JP2006034011 A JP 2006034011A JP 2006034011 A JP2006034011 A JP 2006034011A JP 2007213415 A JP2007213415 A JP 2007213415A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- command
- memory device
- cpu
- break
- 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.)
- Withdrawn
Links
- 238000012545 processing Methods 0.000 claims description 14
- 238000012360 testing method Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 230000000630 rising effect Effects 0.000 description 9
- 102100025250 C-X-C motif chemokine 14 Human genes 0.000 description 7
- 101000858068 Homo sapiens C-X-C motif chemokine 14 Proteins 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 238000000034 method Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Landscapes
- Executing Machine-Instructions (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、CPU(Central Processing Unit)を内蔵したメモリ装置に関し、特に、CPUのブレーク機能を有するメモリ装置に関する。 The present invention relates to a memory device incorporating a CPU (Central Processing Unit), and more particularly to a memory device having a break function of a CPU.
近年、高機能のメモリ装置が種々開発されており、CPUを搭載したものが多くなってきている。このようなメモリ装置において、メモリ装置の内部状態をモニタする機能があればテスト、評価、解析などが容易に行なえるようになる。 In recent years, various high-performance memory devices have been developed, and many are equipped with a CPU. In such a memory device, if there is a function for monitoring the internal state of the memory device, testing, evaluation, analysis and the like can be easily performed.
従来のメモリ装置においては、CPUがROM(Read Only Memory)などに格納されたプログラムを実行し、メモリ装置内の周辺回路に対して制御信号を出力することによりメモリ装置の制御を行なう。 In a conventional memory device, a CPU executes a program stored in a ROM (Read Only Memory) or the like, and controls the memory device by outputting a control signal to a peripheral circuit in the memory device.
メモリ装置の内部状態をモニタするために、動作中のCPUを停止させるブレーク機能が搭載されていることが多い。たとえば、プログラムを格納するROM内に停止命令(BREAK命令)を埋め込んでおき、CPUがその停止命令を実行することによりプログラムの実行を停止する。CPUの動作が停止している状態で、内部状態を外部に出力することによりメモリ装置の内部状態をモニタすることが可能である。 In order to monitor the internal state of the memory device, a break function for stopping the operating CPU is often installed. For example, a stop instruction (BREAK instruction) is embedded in a ROM that stores a program, and the execution of the program is stopped by the CPU executing the stop instruction. It is possible to monitor the internal state of the memory device by outputting the internal state to the outside while the operation of the CPU is stopped.
これに関連する技術として、特許文献1に開示された発明がある。この特許文献1に開示されたデバッグ支援装置においては、モジュール番号比較器がモジュール番号フィールドとモジュール番号レジスタに保持されたモジュール番号とを比較し、アドレス比較器がアドレスフィールドに保持された停止アドレスと命令RAM(Random Access Memory)のフェッチアドレスとを比較し、共に一致したときにブレーク信号を出力するものである。
上述した従来のメモリ装置においては、ROM内に停止命令を埋め込んでおくことにより任意のポイントでCPUを停止させることができるが、CPUを停止させるポイントに予め停止命令を格納しておく必要がある。プログラムを格納するメモリがROMの場合、ブレークポイントを書き換えることができない。したがって、ブレークポイントを最適な位置に格納しておかなければならず、ブレークポイントを変更するためにはマスクの修正が必要となって、開発コストが大きくなったり、開発期間が長くなったりするという問題点があった。また、新たなテストを行ないたい場合には、同様の問題が発生する。 In the conventional memory device described above, the CPU can be stopped at an arbitrary point by embedding a stop instruction in the ROM. However, it is necessary to store the stop instruction in advance at the point at which the CPU is stopped. . When the memory storing the program is ROM, the breakpoint cannot be rewritten. Therefore, it is necessary to store breakpoints at optimal positions. To change the breakpoints, it is necessary to modify the mask, which increases the development cost and the development period. There was a problem. The same problem occurs when a new test is desired.
また、特許文献1に開示されたデバッグ支援装置においては、アドレスフィールドに保持される停止アドレスを書き換えることにより任意のアドレスでプログラムを停止させることができる。しかしながら、特許文献1に開示されたデバッグ支援装置は、一般的なマイクロコンピュータのデバッグを対象としており、特許文献1に開示された発明をメモリ装置のテスト、評価、解析などに適用することはできない。 In the debugging support apparatus disclosed in Patent Document 1, the program can be stopped at an arbitrary address by rewriting the stop address held in the address field. However, the debugging support apparatus disclosed in Patent Document 1 is intended for debugging of a general microcomputer, and the invention disclosed in Patent Document 1 cannot be applied to testing, evaluation, analysis, etc. of a memory device. .
本発明は、上記問題点を解決するためになされたものであり、その目的は、任意の状態で動作を停止させることが可能なメモリ装置を提供することである。 The present invention has been made to solve the above-described problems, and an object of the present invention is to provide a memory device capable of stopping operation in an arbitrary state.
本発明のある局面に従えば、メモリ装置は、メモリと、外部から受けたコマンドをデコードするコマンドデコード手段と、コマンドデコード手段によるデコード結果に応じて、メモリの動作を制御するプロセッサと、ブレークアドレスを格納する第1の格納手段とを含み、プロセッサは、プログラムカウント値と格納手段に格納されたブレークアドレスとが一致するときに動作を停止する。 According to one aspect of the present invention, a memory device includes a memory, a command decoding unit that decodes a command received from the outside, a processor that controls the operation of the memory according to a decoding result by the command decoding unit, a break address The processor stops the operation when the program count value matches the break address stored in the storage means.
本発明のある局面によれば、プロセッサが、プログラムカウント値と格納手段に格納されたブレークアドレスとが一致するときに動作を停止するので、任意の状態でメモリ装置の動作を停止させることが可能となる。 According to an aspect of the present invention, the processor stops the operation when the program count value matches the break address stored in the storage unit, so that the operation of the memory device can be stopped in an arbitrary state. It becomes.
図1は、CPUを搭載したメモリ装置の構成例を示すブロック図である。このメモリ装置は、外部からのコマンドを解析するコマンドデコーダ(COMDEC)110と、コマンドデコーダ110による解析結果に応じてメモリ装置の全体的な制御を行なうCPU120と、CPU120が実行するプログラムが格納されるROM21と、外部クロック生成回路22と、内部クロック生成回路23とを含む。
FIG. 1 is a block diagram illustrating a configuration example of a memory device equipped with a CPU. This memory device stores a command decoder (COMDEC) 110 that analyzes an external command, a
また、CPU120は、ROM21からの命令および外部CPU命令のいずれかを選択して出力する組合せ回路41と、組合せ回路41からの命令を保持する命令レジスタ(IR)42と、BREAKモード制御部43と、外部クロック生成回路22および内部クロック生成回路23からのクロックを選択的に出力するセレクタ49とを含む。
In addition, the
コマンドデコーダ110は、アドレス制御信号がハイレベル(以下、Hレベルと呼ぶ。)、コマンド制御信号がロウレベル(以下、Lレベルと呼ぶ。)のときに、ライトイネーブル信号の立ち上がりでI/O[7:0]の値をアドレスとして取込み、図示しないアドレスバッファに書込む。また、コマンドデコーダ110は、アドレス制御信号がLレベル、コマンド制御信号がHレベルのときに、ライトイネーブル信号の立ち上がりでI/O[7:0]の値をコマンドとして取込む。
When the address control signal is at a high level (hereinafter referred to as “H level”) and the command control signal is at a low level (hereinafter referred to as “L level”), the
コマンドデコーダ110は、取込んだコマンドが正常なコマンドであれば、CPU120を起動する。このとき、busy制御部31は、内部状態をbusy状態にして以降のコマンドを受付けないように制御を行なう。CPU120の起動時には、内部クロック生成回路23からの内部クロックがIR42に与えられる。CPU120による内部動作が完了したときに、busy制御部31は、内部状態をready状態にして次のコマンドを受付けるよう制御を行なう。
The
CPU120内部の図示しない命令デコーダがBREAK命令をデコードすると、BREAKモード制御部43は、組合せ回路41が外部CPU命令を選択し、セレクタ49が外部クロック生成回路22からの外部クロックを選択するよう制御を行なう。
When an instruction decoder (not shown) in the
外部クロック生成回路22は、ライトイネーブル信号に同期して外部クロックを生成してCPU120に与える。CPU120がBREAKモードになったときに、外部クロック生成回路22からの外部クロックに同期してCPU120に外部CPU命令が与えられ、CPU120がその外部CPU命令を実行することにより、メモリ装置のテスト、評価、解析などが行なわれる。
The external
しかしながら、図1に示すメモリ装置においては、BREAK命令がROM21内に埋め込まれているため、任意のBREAKポイントでCPU120を停止させることが困難である。
However, in the memory device shown in FIG. 1, since the BREAK instruction is embedded in the
また、外部クロック生成回路22と内部クロック生成回路23とが別個に設けられているため、異クロックの切替え処理が必要になる。マイクロコンピュータなどのように常にクロックが入力されているシステムでは異なるクロックの同期を取ることは比較的容易であるが、メモリ装置のようにクロックが不定期に入力されるシステムでは異なるクロックの同期を取ることが難しい。
In addition, since the external
したがって、テストモードを追加することにより、ノーマルモード機能に悪影響を与えることがある。このような理由から、テストモードの場合であっても異クロックを使用することなく、CPU用クロックのみで動作させることが望ましい。 Therefore, adding a test mode may adversely affect the normal mode function. For this reason, it is desirable to operate only with the CPU clock without using a different clock even in the test mode.
(第1の実施の形態)
図2は、本発明の第1の実施の形態におけるメモリ装置の概略構成を示すブロック図である。このメモリ装置1は、コマンドデコーダ11と、CPU12と、PAD13と、データレジスタ14と、アドレス制御回路15と、モードレジスタ16と、ステータスレジスタ17と、センス/ラッチ部18と、パワー制御部19と、フラッシュメモリ20とを含む。
(First embodiment)
FIG. 2 is a block diagram showing a schematic configuration of the memory device according to the first embodiment of the present invention. The memory device 1 includes a
コマンドデコーダ11は、PAD13を介して入力したアドレス制御信号がHレベル、コマンド制御信号がLレベルのときに、ライトイネーブル信号の立ち上がりでI/O[7:0]の値をアドレスとして取込み、内部のアドレスバッファに書込む。また、コマンドデコーダ11は、アドレス制御信号がLレベル、コマンド制御信号がHレベルのときに、ライトイネーブル信号の立ち上がりでI/O[7:0]の値をコマンドとして取込む。
The
コマンドデコーダ11はコマンドを取込むと、そのコマンドをデコードする。取込んだコマンドが通常処理時のCPUコマンドであれば、コマンドデコーダ11はCPUイネーブル信号を出力してCPU12を起動すると共に、CPUコマンドをCPU12に発行する。CPU12は、コマンドデコーダ11から受けたCPUコマンドの処理を終了すると、コマンドデコーダ11にCPU処理終了信号を出力する。
When the
また、コマンドデコーダ11は、BREAKモード中にBREAKモードからの復帰コマンドをデコードすると、BREAK復帰選択信号をCPU12に出力すると共に、BREAK復帰時のCPU命令コードをCPU12に発行する。なお、コマンドデコーダ11は、CPU12からのBREAKモード信号によってCPU12がBREAKモードであるか否かを判定する。
In addition, when the
データレジスタ14は、フラッシュメモリ20への書込みデータおよびフラッシュメモリ20からの読出しデータを一時的に保持するレジスタであり、ライトイネーブル信号がHレベルのときにI/O[7:0]の値をデータとして取込み、リードイネーブル信号がHレベルのときに保持しているデータをI/O[7:0]に出力する。
The
アドレス制御回路15は、コマンドデコーダ11内部のアドレスバッファに保持されるアドレスをデコードし、フラッシュメモリ20のロウアドレス、カラムアドレスや、モードレジスタ16などのレジスタを指定するためのセレクト信号を生成する。
The
モードレジスタ16は、後述するBREAKモードの設定、BREAK許可、フラッシュメモリ制御用電源の電圧値の変更、シーケンスの変更などの情報を保持する。このモードレジスタ16の内容を参照することにより、メモリ装置1は設定変更などを行なう。CPU12は、モードレジスタ16の内容を書換えることも可能である。
The
ステータスレジスタ17は、フラッシュメモリ20の状態を保持するレジスタであり、フラッシュメモリ20の状態をI/O[7:0]を介して外部に出力する。
The
センス/ラッチ部18は、フラッシュメモリ20からのデータ読出し時のセンス制御およびデータラッチと、フラッシュメモリ20へのデータ書込み時のデータラッチおよびメモリアレイに印加する電圧の制御とを行なう。
The sense /
パワー制御部19は、CPU12からの指示に応じてモードレジスタ16の内容を参照し、電圧設定、印加回数などのフラッシュメモリ20の電源制御を行なう。また、パワー制御部19は、フラッシュメモリ20の電源制御の状態をCPU12に出力する。
The
図3は、コマンドデコーダ11とCPU12との間の信号を動作モードで分けて示す図である。通常処理(通常動作モード)時においては、コマンドデコーダ11がコマンドをデコードすると、CPU12にCPUイネーブル信号を出力すると共に、CPUコマンドを発行する。CPU12がそのCPUコマンドの処理を終了すると、コマンドデコーダ11にCPU処理終了信号を出力する。
FIG. 3 is a diagram showing signals between the
また、BREAKモード時においては、コマンドデコーダ11はCPU12からBREAKモード信号を受け、BREAKモード中であることを認識する。そして、BREAKモード中にBREAKモードからの復帰コマンドをデコードすると、BREAK復帰選択信号をCPU12に出力すると共に、BREAK復帰時のCPU命令コードをCPU12に発行する。CPU12は、コマンドデコーダ11からCPU命令コードを受けると、その命令コードを実行する。
In addition, in the Break mode, the
図4は、本発明の第1の実施の形態におけるコマンドデコーダ11の詳細な構成を示すブロック図である。コマンドデコーダ11は、外部I/F(Interface)制御部32と、コマンド制御部33と、BREAK制御部34と、クロック生成部35とを含む。また、BREAK制御部34は、BREAK解除コマンドデコード部36と、ステート制御部37と、データバッファ38とを含む。
FIG. 4 is a block diagram showing a detailed configuration of the
外部I/F制御部32は、PAD13を介して入力したアドレス制御信号がHレベル、コマンド制御信号がLレベルのときに、ライトイネーブル信号の立ち上がりでI/O[7:0]の値をアドレスとして取込み、図示しないアドレスバッファに書込む。また、コマンドデコーダ11は、アドレス制御信号がLレベル、コマンド制御信号がHレベルのときに、ライトイネーブル信号の立ち上がりでI/O[7:0]の値をコマンドとして取込み、コマンド制御部33およびBREAK解除コマンドデコード部36に出力する。
The external I /
コマンド制御部33は、外部I/F制御部32からコマンドを受けてデコードし、そのコマンドが通常処理時のCPUコマンドであれば、CPUイネーブル信号を出力してCPU12を起動すると共に、CPUコマンドをCPU12に発行する。このとき、コマンド制御部33は、Ready/Busy信号によって外部にBUSY状態であることを通知する。また、コマンド制御部33は、CPU12からCPU処理終了信号を受けると、Ready/Busy信号によって外部にReady状態であることを通知する。
The
BREAK解除コマンドデコード部36は、CPU12からBREAKモード信号を受けているときに、外部I/F制御部32からコマンドを受けると、そのコマンドがBREAK解除コマンドであるか否かを判定する。BREAK解除コマンドであれば、BREAK解除コマンドデコード部36はBREAK復帰選択信号をCPU12に出力し、ステート制御部37に復帰方法を指示すると共に、続いて入力されるCPU命令コードをデータバッファ38に書込む。
When receiving a command from the external I /
BREAK解除コマンドには、複数の種類がある。たとえば、BREAK解除コマンドデコード部36がBREAK解除コマンド“C0”をデコードした場合、BREAK復帰選択信号によってCPU12にその旨を通知する。CPU12は、BREAK復帰選択信号によってBREAK解除コマンド“C0”が発行された通知を受けると、BREAKモードを直ちに解除してCPU12に内部クロックを供給し、ROM21の次のアドレスからの命令コードのフェッチを再開する。
There are a plurality of types of break release commands. For example, when the break release
また、BREAK解除コマンドデコード部36がBREAK解除コマンド“C1”をデコードした場合、BREAK復帰選択信号によってCPU12にその旨を通知する。このとき、ステート制御部37は、ライトイネーブル信号の3サイクルでI/O[7:0]を介してCPU命令コードを入力する制御を行ない、そのCPU命令コードをデータバッファ38に格納する。たとえば、CPU命令コードが17ビットであれば、ライトイネーブル信号の最初の立ち上がりでCPU命令コード[15:8]を入力し、2番目の立ち上がりでCPU命令コード[7:0]を入力し、3番目の立ち上がりでCPU命令コード[16]を入力するよう制御を行なう。
Further, when the break release
BREAK解除コマンド“C1”の場合には、BREAKモードが解除されず、CPU12がCPU命令コードを実行した後、BREAKモードの状態を維持する。BREAKモードを解除する場合には、上述したBREAK解除コマンド“C0”を外部から入力する必要がある。
In the case of the break release command “C1”, the break mode is not released, and after the
クロック制御部35は、PAD13を介してライトイネーブル信号を受け、コマンドデコーダ11内部の各ブロックに与えるクロック信号を生成する。
The
図5は、本発明の第1の実施の形態におけるCPU12の詳細な構成を示すブロック図である。このCPU12は、命令制御部41と、命令レジスタ42と、BREAKモード制御部43と、プログラムカウンタ44と、プログラムカウンタ44の値をインクリメントするインクリメンタ45と、CPU命令をデコードするデコーダ46と、アキュムレータ47と、汎用レジスタ48−1〜48−nとを含む。
FIG. 5 is a block diagram showing a detailed configuration of the
命令制御部41は、通常動作モード時にはROM21からCPU命令をフェッチし、命令レジスタ42に格納する。また、命令制御部41は、BREAKモード時にはコマンドデコーダ11から外部CPU命令(BREAK復帰CPU命令コード)を受け、命令レジスタ42に格納する。
The
BREAKモード制御部43は、モードレジスタ16からBREAK許可信号およびBREAKアドレスを受け、プログラムカウンタ44から現在のプログラムカウント値を受ける。BREAKモード制御部43は、モードレジスタ16にBREAK許可が設定されている場合、モードレジスタ16に設定されたBREAKアドレスとプログラムカウント値とを比較し、一致するとBREAKモード信号を出力してBREAKモードになったことをコマンドデコーダ11および命令制御部41に通知すると共に、内部クロックを停止させる。
The break
プログラムカウンタ44は、通常動作時にはインクリメンタ45によってプログラムカウント値を1ずつインクリメントし、ROMアドレスとしてROM21に与える。また、デコーダ46によって分岐命令がデコードされた場合は、プログラムカウンタ44に分岐先アドレスが設定される。
The
また、プログラムカウンタ44は、BREAKモード時にはプログラムカウント値のインクリメントを停止する。そして、プログラムカウンタ44は、BREAKモードから復帰するときにプログラムカウント値のインクリメントを再開する。
Further, the
デコーダ46は、命令レジスタ42に格納された命令をデコードし、CPU12内の各ブロックの制御信号を生成する。
The
CPU12は、コマンドデコーダ11からのBREAK復帰選択信号を受け、BREAKモードからの復帰方法を決定する。コマンドデコーダ11がBREAK解除コマンド“C0”をデコードした場合、CPU12は内部クロックの供給を再開し、BREAKアドレスの次の命令からプログラムの実行を開始する。
The
また、コマンドデコーダ11がBREAK復帰解除コマンド“C1”をデコードした場合、CPU12は内部クロックの供給を再開して外部CPU命令を取込み、この外部CPU命令を実行した後、再度内部クロックを停止してBREAKモードに入る。このとき、プログラムカウンタ44の値はそのまま保持される。このBREAK復帰解除コマンド“C1”を外部から与えることによって、CPU12をBREAK状態にしたまま任意の処理が行なえるようになる。
When the
このようなBREAKモードの使用方法として、たとえば外部からモードレジスタ16にBREAKアドレスを設定し、そのアドレスでCPU12をBREAKモードに遷移させる。このとき、メモリセルには高電圧が印加された状態であり、メモリ装置1の内部において各電源ポンプにどれだけの電圧が印加されているかを計測し、その情報をステータスレジスタ17に格納する。そして、外部からステータスレジスタ17の内容を読出すことにより、メモリ装置1の内部状態をモニタすることができる。内部状態のモニタが終了すると、BREAK復帰によってBREAKアドレスの次の命令の実行を再開する。
As a method of using such a BREAK mode, for example, a BREAK address is set in the
また、CPU12をBREAKモードに遷移させて内部状態をモニタする。そして、CPU12がBREAKモードのときに、モードレジスタ16に次のBREAKアドレスを設定する。BREAK復帰によってCPU12が通常動作モードとなった後、次のBREAKアドレスでCPU12を再度停止させることができる。この操作を繰り返すことによって、連続的に任意の状態で内部状態をモニタすることが可能となる。
Further, the
また、CPU12をBREAKモードに遷移させて内部状態をモニタする。そして、CPU12に外部CPU命令を与えることによって状態を変化させ、内部状態をモニタすることが可能となる。
Further, the
以上説明したように、本実施の形態におけるメモリ装置によれば、モードレジスタ16に設定されたBREAKアドレスとプログラムカウンタ44のアドレスとが一致するときにCPU12がBREAKモードに遷移するようにしたので、任意のアドレスでCPU12を停止させることが可能となった。したがって、従来のようにROM内にBREAK命令を埋め込む必要がなくなり、BREAKポイントを変更するためのマスクの修正などが不要となるので、開発コストの削減、開発期間の短縮などが可能となった。
As described above, according to the memory device of the present embodiment, the
また、BREAKモード中にモードレジスタ16のBREAKアドレスを変更することによって、ステップバイステップでメモリ装置のテスト、評価、解析などを行なうことが可能となった。
Further, by changing the BREAK address of the
また、CPU12に供給するクロックを1つとし、そのクロックの供給の停止/再開によってBREAKモードを実現しているので、異クロックを使用する場合のクロック切替えに伴う不良を削減することが可能となった。
In addition, since a single clock is supplied to the
また、CPU12がBREAKモードから復帰する(再度、BREAKモードに入る)ときに、CPU12が外部CPU命令を取込んで実行するようにしたので、CPU12に任意の処理を行なわせることができ、メモリ装置のテスト、評価、解析などが容易に行なえるようになった。
Since the
(第2の実施の形態)
図6は、本発明の第2の実施の形態におけるメモリ装置の概略構成を示すブロック図である。このメモリ装置は、コマンドデコーダ11’と、CPU12’と、ROM21と、外部クロック生成回路51と、内部クロック生成回路52とを含む。なお、第1の実施の形態におけるメモリ装置と同じ構成および機能を有する部分には同一の参照番号を付しており、その詳細な説明は繰返さない。
(Second Embodiment)
FIG. 6 is a block diagram showing a schematic configuration of the memory device according to the second embodiment of the present invention. This memory device includes a
コマンドデコーダ11’は、busy制御部31と、コマンドバッファ39と、クロック制御部40とを含む。
The
コマンドバッファ39は、CPU12’がBREAKモードのときに外部CPU命令としてCPU12’に与える命令群を格納する。外部からの制御によって、アドレスバッファにアドレスを書込むことにより、コマンドバッファ39を指定する。そして、ライトイネーブル信号の立ち上がりで、I/O[7:0]を介して外部CPU命令をコマンドバッファ39に順次格納する。コマンドバッファ39への外部CPU命令の書込みタイミング信号は、外部クロック生成回路51によって生成される。
The
クロック制御部40は、CPU12’に与える内部クロックを制御する。CPU12’の通常動作時において、クロック制御部40は、CPU12’に対して内部クロックを供給するよう内部クロック生成回路52を制御する。また、CPU12’のBREAKモード時において、クロック制御部40は、CPU12’への内部クロックの供給を停止するよう内部クロック生成回路52を制御する。そして、CPU12’に外部CPU命令を与えるときに、内部クロック生成回路52を制御して内部クロックの供給を再開し、内部クロックに同期してコマンドバッファ39に格納された外部CPU命令を順次CPU12’に与える。
The
以上説明したように、本実施の形態におけるメモリ装置によれば、CPU12’に供給するクロックを1つとし、そのクロックの供給の停止/再開によってBREAKモードを実現しているので、異クロックを使用する場合のクロック切替えに伴う不良を削減することが可能となった。 As described above, according to the memory device of the present embodiment, one clock is supplied to the CPU 12 ', and the BRAKE mode is realized by stopping / resuming the supply of the clock. This makes it possible to reduce defects associated with clock switching.
また、CPU12’がBREAKモード中にコマンドバッファ39に格納された外部CPU命令を順次CPU12’に与えることができるので、メモリ装置のテスト、評価、解析などをさらに容易に行なうことが可能となった。
Further, since the CPU 12 'can sequentially give the external CPU instructions stored in the
(第3の実施の形態)
本発明の第3の実施の形態におけるメモリ装置の概略構成は、図2に示す第1の実施の形態におけるメモリ装置の概略構成と同様である。また、本発明の第3の実施の形態におけるコマンドデコーダ11およびCPU12の構成は、図4および図5に示す第1の実施の形態におけるコマンドデコーダ11およびCPU12の構成と同様である。したがって、重複する構成および機能の詳細な説明は繰返さない。
(Third embodiment)
The schematic configuration of the memory device according to the third embodiment of the present invention is the same as the schematic configuration of the memory device according to the first embodiment shown in FIG. The configuration of the
図5に示すCPU12において、BREAKモード制御部43は、モードレジスタ16に設定されたチェックサムテスト信号を受ける。BREAKモード制御部43は、チェックサムテスト信号が有効となっているときにBREAKモードに入ると、命令レジスタ42の内容にかかわらず常にプログラムカウンタの値を1ずつインクリメントするよう制御を行なう。したがって、分岐命令は無視される。
In the
たとえば、コマンドデコーダ11がBREAK復帰解除コマンドをデコードした場合、CPU12は内部クロックの供給を再開してROM21からCPU命令をフェッチし、そのCPU命令をステータスレジスタ17に格納する。そして、外部システムがステータスレジスタ17に格納される値を読出す。このとき、CPU12は再度BREAKモードに入る。外部システムは、BREAK復帰解除コマンドを発行した後ステータスレジスタ17に格納される値を読出して順次加算することによってチェックサム値を算出することができる。また、ROM21内に予めチェックサムの期待値を格納しておき、算出したチェックサム値と期待値とを比較することによってチェックサムテストが容易に行なえるようになる。
For example, when the
以上説明したように、本実施の形態におけるメモリ装置によれば、CPU12がBREAKモードとなったときに、ROM21の内容を読出してステータスレジスタ17に格納することにより、外部システムがROM21の内容を読出せるようにしたので、チェックサムテストを容易に行なうことが可能となった。
As described above, according to the memory device of the present embodiment, when the
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
1 メモリ装置、11,11’,110 コマンドデコーダ、12,12’,120 CPU、13 PAD、14 データレジスタ、15 アドレス制御回路、16 モードレジスタ、17 ステータスレジスタ、18 センス/ラッチ部、19 パワー制御部、20 フラッシュメモリ、22,51 外部クロック生成回路、23,52 内部クロック生成回路、31 busy制御部、32 外部I/F制御部、33 コマンド制御部、34 BREAK制御部、35 クロック生成部、36 BREAK解除コマンドデコード部、37 ステート制御部、38 データバッファ、39 コマンドバッファ、40 クロック制御部、41 命令制御部、42 命令レジスタ、43 BREAKモード制御部、44 プログラムカウンタ、45 インクリメンタ、46 デコーダ、47 アキュムレータ、48−1〜48−n 汎用レジスタ。
1 memory device, 11, 11 ′, 110 command decoder, 12, 12 ′, 120 CPU, 13 PAD, 14 data register, 15 address control circuit, 16 mode register, 17 status register, 18 sense / latch unit, 19
Claims (10)
外部から受けたコマンドをデコードするコマンドデコード手段と、
前記コマンドデコード手段によるデコード結果に応じて、前記メモリの動作を制御するプロセッサと、
ブレークアドレスを格納する第1の格納手段とを含み、
前記プロセッサは、プログラムカウント値と前記格納手段に格納されたブレークアドレスとが一致するときに動作を停止する、メモリ装置。 Memory,
Command decoding means for decoding a command received from the outside;
A processor for controlling the operation of the memory in accordance with a decoding result by the command decoding means;
First storage means for storing a break address;
The processor is a memory device that stops operation when a program count value matches a break address stored in the storage means.
前記コマンドデコード手段は、前記プロセッサが動作を停止中に外部から所定コマンドを受けると、前記第2の格納手段に格納された命令コードを前記プロセッサに与えて実行させる、請求項1記載のメモリ装置。 The memory device further includes second storage means for storing an instruction code received from the outside,
2. The memory device according to claim 1, wherein the command decoding unit gives the instruction code stored in the second storage unit to the processor for execution when a predetermined command is received from the outside while the processor is stopped. .
前記コマンドデコード手段は、前記プロセッサが動作を停止中に外部から所定コマンドを受けると、前記第2の格納手段に格納された複数の命令コードを順次前記プロセッサに与えて実行させる、請求項3記載のメモリ装置。 The second storage means stores a plurality of instruction codes received from the outside,
4. The command decoding means, when receiving a predetermined command from the outside while the processor stops operating, sequentially gives a plurality of instruction codes stored in the second storage means to the processor for execution. Memory device.
前記コマンドデコード手段は、前記プロセッサが動作を停止中に外部から所定コマンドを受けると、前記プロセッサに前記プログラム格納手段から命令コードを読出させて外部に出力させる、請求項1記載のメモリ装置。 The memory device further includes program storage means for storing a program executed by the processor,
2. The memory device according to claim 1, wherein the command decoding unit causes the processor to read an instruction code from the program storage unit and output the same to the outside when a predetermined command is received from the outside while the processor is stopped.
前記コマンドデコード手段は、ブレークモード時において前記プロセッサからブレーク中である通知を受け、前記プロセッサをブレークモードから復帰させるときに、前記プロセッサにブレークモードからの復帰を通知すると共に前記プロセッサに実行させる命令コードを与える、請求項1記載のメモリ装置。 The command decoding means gives a decoding result of a command received from the outside during normal processing to the processor to enable the processor, and notifies the processing end from the processor when processing of the command by the processor is completed. received,
The command decoding means receives a notification that a break is in progress from the processor in the break mode, and notifies the processor to return from the break mode and causes the processor to execute when the processor is returned from the break mode. The memory device of claim 1, wherein a code is provided.
前記プロセッサは、前記パッドには接続されずに、前記コマンドデコード手段および前記第1の格納手段に接続される、請求項2記載のメモリ装置。 The memory device further includes a pad connected to the command decoding means and the first storage means,
3. The memory device according to claim 2, wherein the processor is connected to the command decoding means and the first storage means without being connected to the pad.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006034011A JP2007213415A (en) | 2006-02-10 | 2006-02-10 | Memory device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006034011A JP2007213415A (en) | 2006-02-10 | 2006-02-10 | Memory device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007213415A true JP2007213415A (en) | 2007-08-23 |
Family
ID=38491775
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006034011A Withdrawn JP2007213415A (en) | 2006-02-10 | 2006-02-10 | Memory device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007213415A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013097518A (en) * | 2011-10-31 | 2013-05-20 | Kyocera Document Solutions Inc | Arithmetic processor and arithmetic processing system |
-
2006
- 2006-02-10 JP JP2006034011A patent/JP2007213415A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013097518A (en) * | 2011-10-31 | 2013-05-20 | Kyocera Document Solutions Inc | Arithmetic processor and arithmetic processing system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI450078B (en) | Debug register for terminating the processor core after reset or shutdown | |
KR101183651B1 (en) | System and method of data forwarding within an execution unit | |
EP1324190B1 (en) | Data processing system having a read-modify-write unit | |
JP3553946B2 (en) | Execution of data processing instructions | |
US20030093612A1 (en) | Microcomputer | |
KR20030059339A (en) | Single-step processing | |
US10049025B2 (en) | Processor with debug pipeline | |
KR20180133794A (en) | Programmable instruction buffering | |
JP2008009721A (en) | Evaluation system and evaluation method thereof | |
US11625316B2 (en) | Checksum generation | |
US20110179255A1 (en) | Data processing reset operations | |
US5930470A (en) | Debugging system and debugging method | |
US10754743B2 (en) | Apparatus and method using debug status storage element | |
JP2007213415A (en) | Memory device | |
KR100543152B1 (en) | Microprocessors and Processing Methods | |
JP2536726B2 (en) | Microprocessor | |
JP2006221606A (en) | Data processor | |
JP2008111682A (en) | Method and apparatus for testing semiconductor | |
JP2004199630A (en) | Data processor | |
JP2006099654A (en) | Semiconductor circuit apparatus | |
JP2008108361A (en) | Nonvolatile semiconductor storage device | |
JP2009070195A (en) | Program processing system and program processing apparatus | |
KR20210080398A (en) | Read-only memory testing with built-in memory self-test controller | |
JPH07281924A (en) | Trace device and emulator equipped with the same | |
JP2000276347A (en) | Portable electronic apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20090512 |