JP2007207075A - Cpu、集積回路装置、マイクロコンピュータ、電子機器、及びcpuの制御方法 - Google Patents
Cpu、集積回路装置、マイクロコンピュータ、電子機器、及びcpuの制御方法 Download PDFInfo
- Publication number
- JP2007207075A JP2007207075A JP2006026914A JP2006026914A JP2007207075A JP 2007207075 A JP2007207075 A JP 2007207075A JP 2006026914 A JP2006026914 A JP 2006026914A JP 2006026914 A JP2006026914 A JP 2006026914A JP 2007207075 A JP2007207075 A JP 2007207075A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- fetch
- reset
- cpu
- software interrupt
- 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
Images
Landscapes
- Executing Machine-Instructions (AREA)
- Microcomputers (AREA)
Abstract
【課題】リセット専用ロジックを持つことなしにリセット機能を実現できるCPUの提供。
【解決手段】本CPU10は、命令コード32を読み出してフェッチレジスタ30にフェッチするフェッチ回路20と、フェッチレジスタ30にフェッチされている命令コードを受け取り、デコードして実行する命令デコード実行回路40とを含み、フェッチレジスタ30は、リセット入力がリセット信号80に接続され、リセット時に所定のソフトウエア割り込み命令に初期化されるように構成され、命令デコード実行回路40は、所定のソフトウエア割り込み命令の命令コードをデコードして実行するソフトウエア割り込み処理部50を含む。
【選択図】図1
【解決手段】本CPU10は、命令コード32を読み出してフェッチレジスタ30にフェッチするフェッチ回路20と、フェッチレジスタ30にフェッチされている命令コードを受け取り、デコードして実行する命令デコード実行回路40とを含み、フェッチレジスタ30は、リセット入力がリセット信号80に接続され、リセット時に所定のソフトウエア割り込み命令に初期化されるように構成され、命令デコード実行回路40は、所定のソフトウエア割り込み命令の命令コードをデコードして実行するソフトウエア割り込み処理部50を含む。
【選択図】図1
Description
本発明は、CPU、集積回路装置、マイクロコンピュータ、電子機器及びCPUの制御方法に関する。
従来のCPUやマイクロコンピュータでは、リセット動作は、リセット信号を直接処理するハードウエアを持たせていた。
特開平6−230857号
しかしリセット時には特殊な動作をするため、ロジックはリセット専用となり回路規模の増大を招く。またデバッグや品質保証する手間も増大する。
本発明は以上のような問題点に鑑みてなされたものであり、リセット専用ロジックを持つことなしにリセット機能を実現できるCPUの提供を目的とする。
(1)本発明は、
リセット信号を受け付けるCPUであって、
命令コードを読み出してフェッチレジスタにフェッチするフェッチ回路と、
前記フェッチレジスタにフェッチされている命令コードを受け取り、デコードして実行する命令デコード実行回路とを含み、
前記フェッチ回路のフェッチレジスタは、
リセット入力がリセット信号に接続され、リセット時に所定のソフトウエア割り込み命令に初期化されるように構成され、
前記命令デコード実行回路は、
前記所定のソフトウエア割り込み命令の命令コードをデコードして実行するソフトウエア割り込み処理部を含むことを特徴とする。
リセット信号を受け付けるCPUであって、
命令コードを読み出してフェッチレジスタにフェッチするフェッチ回路と、
前記フェッチレジスタにフェッチされている命令コードを受け取り、デコードして実行する命令デコード実行回路とを含み、
前記フェッチ回路のフェッチレジスタは、
リセット入力がリセット信号に接続され、リセット時に所定のソフトウエア割り込み命令に初期化されるように構成され、
前記命令デコード実行回路は、
前記所定のソフトウエア割り込み命令の命令コードをデコードして実行するソフトウエア割り込み処理部を含むことを特徴とする。
所定のソフトウエア割り込み命令とは、リセットと等価な処理を含むソフトウエア割り込み命令であり、例えば所定のソフトウエア割り込み命令によって行われる処理が、プログラムカウンタのスタックポインタへの待避等のようにリセット自体には不要な処理を含む場合も含む。
フェッチ回路のフェッチレジスタは、リセット時に所定のソフトウエア割り込み命令に初期化されるように構成されているため、リセット信号を受けると、所定のソフトウエア割り込み命令が実行される。
本発明によれば、従来はハードウエアの専用ロジックで実現していたリセット処理を、ソフトウエア割り込み命令で実現することができる。
従ってリセット専用に設けていたロジック回路(ハードウエア)を設けなくてもよいため、CPUの回路規模の増大防止やデバッグや品質保証の手間を削減することができる。
(2)本発明のCPUは、
前記ソフトウエア割り込み処理部は、
前記所定のソフトウエア割り込み命令の命令コードを受け取ると、所定の番地に分岐して所定の番地に格納されている命令又は所定の番地に関連づけて格納されている命令を実行する処理を行うことを特徴とする。
前記ソフトウエア割り込み処理部は、
前記所定のソフトウエア割り込み命令の命令コードを受け取ると、所定の番地に分岐して所定の番地に格納されている命令又は所定の番地に関連づけて格納されている命令を実行する処理を行うことを特徴とする。
前記所定のソフトウエア割り込み命令の命令コードを受け取ると、所定の番地に命令が格納されている命令を実行する構成でもよいし、所定の番地に格納されているアドレスに分岐して当該アドレスに格納されている命令を実行する構成でもよい。
(3)本発明のCPUは、
前記所定のソフトウエア割り込み命令によって発生するアクセスであって、リセット動作には不要なアクセスに使用するアドレスレジスタを含み、
前記アドレスレジスタは、
ソフトウエア割り込み命令によって発生するアクセスアドレスがメモリ上の予約エリアに割り振られるような値をリセット時の初期値にもつことを特徴とする。
前記所定のソフトウエア割り込み命令によって発生するアクセスであって、リセット動作には不要なアクセスに使用するアドレスレジスタを含み、
前記アドレスレジスタは、
ソフトウエア割り込み命令によって発生するアクセスアドレスがメモリ上の予約エリアに割り振られるような値をリセット時の初期値にもつことを特徴とする。
このようにするとこで、ソフトウエア割り込み命令の動作でリセットを実現した場合にリセットには不要なアクセスが発生しても、メモリのユーザーエリアには影響をあたえないようにすることができる。従ってソフトウエア割り込み命令で発生した不要なアクセスによって不足の不具合が発生することもない。
(4)本発明のCPUは、
前記フェッチ回路は、
フェッチ要求信号を生成するフェッチ要求信号を生成するフェッチ要求信号生成回路をふくみ、
前記フェッチ要求信号生成回路は、
リセット信号を受け取り、リセット時にはフェッチ要求無しの信号を出力するように構成されていることを特徴とする。
前記フェッチ回路は、
フェッチ要求信号を生成するフェッチ要求信号を生成するフェッチ要求信号生成回路をふくみ、
前記フェッチ要求信号生成回路は、
リセット信号を受け取り、リセット時にはフェッチ要求無しの信号を出力するように構成されていることを特徴とする。
このようにするとこで、ソフトウエア割り込み命令の動作でリセットを実現した場合にリセット時に命令のバスアクセス要求がでないようにすることができる。
(5)本発明のCPUは、
前記フェッチ要求信号生成回路は、
リセット入力にリセット信号が接続されたフィリップフロップであって、リセット時の初期値がフェッチ要求無しの信号となるフィリップフロップで構成されていることを特徴とする。
前記フェッチ要求信号生成回路は、
リセット入力にリセット信号が接続されたフィリップフロップであって、リセット時の初期値がフェッチ要求無しの信号となるフィリップフロップで構成されていることを特徴とする。
(6)本発明のCPUは、
前記命令デコード実行回路が出力するデータ要求信号をマスクするデータ要求マスク回路をふくみ、
前記データ要求マスク回路は、
リセット時にはデータ要求信号をマスクすることを特徴とする。
前記命令デコード実行回路が出力するデータ要求信号をマスクするデータ要求マスク回路をふくみ、
前記データ要求マスク回路は、
リセット時にはデータ要求信号をマスクすることを特徴とする。
このようにするとこで、ソフトウエア割り込み命令の動作でリセットを実現した場合にリセット時にデータバスのアクセス要求がでないようにすることができる。
(7)本発明は、
上記のいずれかに記載のCPUを含むことを特徴とする集積回路装置である。
上記のいずれかに記載のCPUを含むことを特徴とする集積回路装置である。
(8)本発明は、
上記のいずれかに記載のCPUを含むことを特徴とするマイクロコンピュータである。
上記のいずれかに記載のCPUを含むことを特徴とするマイクロコンピュータである。
(9)本発明は、
上記に記載のマイクロコンピュータと、
入力情報を受け付ける手段と、
入力情報に基づき前記情報処理装置により処理された結果を出力するため手段と、
を含むことを特徴とする電子機器である。
上記に記載のマイクロコンピュータと、
入力情報を受け付ける手段と、
入力情報に基づき前記情報処理装置により処理された結果を出力するため手段と、
を含むことを特徴とする電子機器である。
(10)本発明は、
ソフトウエア割り込み命令を処理機能を有し、リセット信号を受け付けるCPUの制御方法であって、
前記リセット信号を受け取ると、フェッチ回路のフェッチレジスタを所定のソフトウエア割り込み命令に初期化するステップと、
前記リセット信号によって初期化された前記フェッチレジスタから所定のソフトウエア割り込み命令の命令コードを受け取り、デコードして実行するステップとを含むことを特徴とする。
ソフトウエア割り込み命令を処理機能を有し、リセット信号を受け付けるCPUの制御方法であって、
前記リセット信号を受け取ると、フェッチ回路のフェッチレジスタを所定のソフトウエア割り込み命令に初期化するステップと、
前記リセット信号によって初期化された前記フェッチレジスタから所定のソフトウエア割り込み命令の命令コードを受け取り、デコードして実行するステップとを含むことを特徴とする。
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。
1.CPU
以下、本発明の好適な実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成の全てが本発明の必須構成要件であるとは限らない。
以下、本発明の好適な実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成の全てが本発明の必須構成要件であるとは限らない。
図1は、本実施の形態のCPUの構成について説明するための機能ブロック図である。
本実施の形態のCPU10は、リセット信号80を受け付けるCPUであって、命令コード32を読み出してフェッチレジスタ30にフェッチするフェッチ回路20と、フェッチレジスタ30にフェッチされている命令コードを受け取り、デコードして実行する命令デコード実行回路40とを含む。
フェッチ回路20のフェッチレジスタ30は、リセット入力がリセット信号30に接続され、リセット時に所定のソフトウエア割り込み命令に初期化されるように構成される。
フェッチレジスタ30は例えば16ビットのフィリップフロップで構成され、入力が命令フェッチバスに接続され、リセット入力がリセット信号80に接続され、出力は命令デコード実行部200の入力と接続してもよい。
所定のソフトウエア割り込み命令とは、リセットと等価な処理を含むソフトウエア割り込み命令であり、例えば所定のソフトウエア割り込み命令によって行われる処理が、プログラムカウンタのスタックポインタへの待避等のようにリセット自体には不要な処理を含む場合も含む。
命令デコード実行部40は、所定のソフトウエア割り込み命令の命令コードをデコードして実行するソフトウエア割り込み処理部210を含む。
命令デコード実行部40は、データバス90に接続され、命令のデコードや実行に必要なデータアクセスが必要になるとデータ要求信号やアドレスを出力し、データのアクセスを行う。
CPUは各種レジスタとその制御回路60を含む。各種レジスタとは、例えばプログラムカウンタ62やスタックポインタ64や図示しない汎用レジスタ等を含む。
プログラムカウンタの値は命令アドレス63としてアドレスバスに出力される。
フェッチ回路のフェッチレジスタ30は、リセット時に所定のソフトウエア割り込み命令に初期化されるように構成されているため、リセット信号を受けると、所定のソフトウエア割り込み命令が実行される。
本発明によれば、従来はハードウエアの専用ロジックで実現していたリセット処理を、ソフトウエア割り込み命令で実現することができる。
従ってリセット専用に設けていたハードウエアロジック回路を設けなくてもよいため、回路規模の増大を防止やデバッグや品質保証の手間を削減することができる。
図2(A)(B)は、本実施の形態のソフトウエア割り込み命令について説明するための図である。
本実施の形態のCPUは図2(A)の400に示すような16ビットの命令コードをデコードして実行している。命令コード400の上位6ビット(0〜5)はオペコード410であり、上位6ビットがオール1の場合が割り込み命令であることを示している。
命令コードの6〜7目ビットは割り込み種別420であり、’00’はソフトウエア割り込み、’01’はハードウエア割り込み、’10’はソフトウエアブレイク、’11’はハードウエアブレイクを示している。
命令コードの8〜11ビット目は割り込み番号430であり、飛び先を特定するための値が格納されている。
命令コードの12ビット目は割り込みマスク440であり、’1’はマスク、’0’は変化無しを示している。
命令コードの13ビット目は割り込みレベルのセットの有無450であり、’1’はセット有り、’0’はセット無しを示している。
命令コードの14〜15ビット目は割り込みレベル4ソフトウエア割り込み命令60であり、優先順位に応じて設定された値(例えば優先順位が高いほど小さな値)が格納されている。
図2(B)は本実施の形態の所定のソフトウエア割り込み命令(INTn)の具体例を示した図である。
本実施の形態の所定のソフトウエア割り込み命令であるINT0は、オペコード410は割り込み命令であることを示す'000000’で、割り込み種別420はソフトintであることを示す'00'で、割り込み場号は0番地であるkとを示す'0000'である。
次に本実施の形態におけるソフトウエア割り込み命令の実行時の処理について説明する。
図3(A)はメモリに記憶されている命令コード列である。
ここでは2段のパイプラインのRISCタイプのCPUで、命令バス(フェッチバス)、データバスがアドレス、データ幅とも16ビットであるとする。割り込みは番地指定可能であり、命令コードの飛び先番号(図2(A)の430参照)で指定された番地へ分岐する。例えばINTnの場合0x0+n×2のアドレスから16ビットリードし、そのアドレスにジャンプする。
所定のソフトウエア割り込み命令であるINT1命令(310参照)が実行される場合、0x0+1×2='0x0002'アドレスから16ビットリードして、そのアドレス(この場合2000番地)に分岐する(320参照)。そして分岐先の命令(この場合OR)を実行する(330参照)。
図3(B)はタイミングチャート図である。
12はCPUに供給されるクロックである。
63はフェッチバスの命令アドレスであり、プログラムカウンタ62からフェッチバスに出力される。
32は、フェッチバスの命令コードであり、フェッチバスからフェッチレジスタ40に入力される。
100は、CPUの動作を示している。
クロックc1で'0100'番地のADD命令がフェッチされる。クロックc2でADD命令が実行され、'0102'番地のSUB命令がフェッチされる。クロックc3でSUB命令が実行され、'0104'番地のINT命令がフェッチされる。
すると次のクロックc3では命令のフェッチは行われず、CPUはINT1命令で指定された飛び先である'0002'番地から飛び先('2000'番地)を読み出すと共に、スタックポインタの位置を2だけディクリメントする。
次のクロックc4で飛び先である'2000'番地のOR命令がフェッチされ、スタックポインタ上に元のプログラムカウンタの値('0006'番地、ここではINT1の次の命令のアドレスにインクリメントされている)。
そして次のクロックc5でOR命令が実行される。
クロックc2,c3に示すようにINT命令は2クロック命令となる。
図4は本実施の形態のリセット時の処理について説明するタイミングチャート図である。
ここで所定のソフトウエア割り込み命令として、INT0命令を用いる場合を例にとり説明する。
12はCPUに供給されるクロックである。
80はリセット信号であり、リセット時に第1のレベル(例えばL)となり、リセットが解除されると第2のレベル(例えばH)になる信号である。リセット信号は、フェッチレジスタ(フィリップフロップ)のリセット入力に接続されている。
63はフェッチバスの命令アドレスであり、プログラムカウンタ62からフェッチバスに出力される。
32は、フェッチバスの命令コードであり、フェッチバスからフェッチレジスタ40に入力される。
30はフェッチレジスタ(16ビットのフィリップフロップ)の値であり、リセット時にはINT0の命令コードの値(ここでは'1111110000001100')に初期化される。
100は、CPUの動作を示している。
クロックc1、c2の立ち上がりではリセット信号がリセット状態であるので、フェッチレジスタ(フィリップフロップ)30はINT0の命令コードに初期化されている(210参照)。またINT0の時は0番地から実行される仕様であるので、フェッチバスの命令アドレスは0となっている(220参照)。
クロックc2の間にリセット信号がリセット状態(Lレベル)からリセット解除状態(Hレベル)に変化すると、CPUはクロックc3でINT0命令で指定された飛び先である'0000'番地から飛び先('0100'番地、図3(A)参照)を読み出すと共に、スタックポインタの位置を2だけディクリメントする。このときフェッチレジスタ30の値はINT0命令のままである。
次のクロックc4ではフェッチバスの命令アドレス63は飛び先である'0100'番地となり、フェッチバスの命令コード32はADD命令となる。そしてCPUはスタックポインタ上に元のプログラムカウンタの値('0100'番地)を待避させる。このときフェッチレジスタ30の値はINT0命令のままである。
そして次のクロックc5で、ADD命令が実行され、'0102'番地のSUB命令がフェッチされる。
図5は、他の実施の形態のCPUの構成について説明するための機能ブロック図である。
図1と同じ構成には同じ番号を付しており説明を省略する。
CPU10’は図1の構成に加えてフェッチ制御部130を含むようにしてもよい
図6はフェッチ制御部の構成の一例である。
図6はフェッチ制御部の構成の一例である。
フェッチ制御部130は、フェッチ要求信号134を生成するフェッチ要求信号生成回路を含む。
フェッチ要求信号生成回路は、リセット信号80を受け取り、リセット時にはフェッチ要求無しの信号を出力するように構成されている。
このようにするとこで、ソフトウエア割り込み命令の動作でリセットを実現した場合にリセット時にフェッチバスのアクセス要求がでないようにすることができる。
フェッチ要求信号生成回路は、リセット入力にリセット信号80が接続された1ビットのフィリップフロップであって、リセット時の初期値がフェッチ要求無しの信号(例えば第1のレベルでバス要求がOFF状態となる場合は第1のLレベル)となる1ビットのフィリップフロップ(フェッチ要求信号生成フィリップフロップ132)で実現することができる。
このようにするとフェッチ要求信号生成フィリップフロップ132の出力であるフェッチ要求信号134は、リセット時は第1のレベル(例えばLレベルでバス要求がOFF状態となる場合はLレベル)となり、リセット解除後には第2のレベル(例えばHレベルがON状態となる場合はHレベル)となる。
命令フェッチ要求信号134が第1のレベル(例えばLレベルでバス要求がバス要求がOFF状態となる場合はLレベル)の時はフェッチバスに対してバス要求が行われないので、リセット中のフェッチバスへのバスアクセスを防止することができる。
またCPU10’は図1の構成に加えてデータバス制御部120を含むようにしてもよい。
図7はデータバス制御部の構成の一例である。
データバス制御部120は、命令デコード実行回路40が出力するデータ要求信号91をマスクするデータ要求マスク回路をふくむ。
データ要求マスク回路は、リセット時にはデータ要求信号をマスクするように構成されている。このようにするとこで、ソフトウエア割り込み命令の動作でリセットを実現した場合にリセット時にデータバスのアクセス要求がでないようにすることができる。
データ要求マスク回路は例えばアンド回路122で実現することができる。アンド回路122の一方の入力は命令デコード実行部が出力するデータバスに対するデータ要求91に接続され、他方の入力はリセット信号80に接続され、出力がデータバスに対するデータ要求となる。
アンド回路122はリセット時に命令デコード実行部40の出力するデータ要求91をマスクする機能を有する。例えばリセット時はリセット信号80はLレベルで、リセット解除後にHレベルに変化するとすると、アンド回路122の出力するデータ要求はリセット時はLレベルとなる。
データ要求92が第1のレベル(例えばLレベルでバス要求バス要求がOFF状態となる場合はLレベル)の時はデータバスに対してバス要求が行われないので、リセット中のデータバスへのバスアクセスを防止することができる。
図8は他の実施の形態のリセット時の処理について説明するタイミングチャート図である。
12はCPUに供給されるクロックである。
80はリセット信号であり、リセット時に第1のレベル(例えばL)となり、リセットが解除されると第2のレベル(例えばH)になる信号である。リセット信号は、フェッチレジスタ(フィリップフロップ)のリセット入力に接続されている。
134はフェッチ要求信号であり、フェッチ要求信号生成フィリップフロップの出力であり、リセット時に第1のレベル(例えばL)となり、リセットが解除されると第2のレベル(例えばH)になる信号である。
92はデータ要求信号であり、データバス制御部のアンド回路(図7の122)の出力であり、リセット時に第1のレベル(例えばL)となり、リセットが解除されると第2のレベル(例えばH)になる信号である。
30はフェッチレジスタ(16ビットのフィリップフロップ)の値であり、リセット時にはINT0の命令コードの値(ここでは'1111110000001100')に初期化される。
100は、CPUの動作とバス動作を示している。
クロックc1、c2の立ち上がりではリセット信号がリセット状態であるので、フェッチレジスタ(フィリップフロップ)30はINT0の命令コードに初期化されている(260参照)。
クロックc1、c2の間はフェッチ要求信号134はディセーブル状態である(Lレベル)ので命令フェッチはない(270参照)。
またクロックc1、c2の間はデータ要求信号92はディセーブル状態である(Lレベル)のでデータアクセスもない(270参照)。
クロックc2の間にリセット信号がリセット状態(Lレベル)からリセット解除状態(Hレベル)に変化すると、図4の場合と同様にCPUはクロックc3でINT0命令で指定された飛び先である'0000'番地から飛び先('0100'番地、図3(A)参照)を読み出すと共に、スタックポインタの位置を2だけディクリメントする。このときフェッチレジスタ30の値はINT0命令のままである(260参照)。
次のクロックc4では、図4の場合と同様にフェッチバスの命令アドレスは飛び先である'0100'番地となり、フェッチバスの命令コード32はADD命令となる。そしてCPUはスタックポインタ上に元のプログラムカウンタの値('0100'番地)を待避させる。このときフェッチレジスタ30の値はINT0命令のままである。
そして次のクロックc5で、ADD命令が実行され、'0102'番地のSUB命令がフェッチされる。このようにリセット解除後であるクロックc3以降は、フェッチ要求信号134及びデータ要求信号92はイネーブル状態である(Hレベル)のでバスアクセスが可能となる(280参照)。
図9は本実施の形態のメモリマップの一例である。
所定のソフトウエア割り込み命令が実行されると、割り込み終了後の戻り先アドレスがスタックポインタに格納されるが、これはリセット時には不要なアクセスとなる。
従って所定のソフトウエア割り込み命令によって発生するアクセスであって、リセット動作には不要なアクセスに使用するアドレスレジスタ(例えばスタックポインタ)を、ソフトウエア割り込み命令によって発生するアクセスアドレスがメモリ上の予約エリア380に割り振られるような値をリセット時の初期値にもつように構成してもよい。
例えばリセット時にスタックポインタの位置がメモリ上の'0x0000'に割り当てられ、プログラムカウンタの値が'0x0000'であるとすると、所定のソフトウエア割り込み命令(例えばINT0)が実行されると、スタックポインタの位置が2だけディクリメントされ、メモリ上の'0xfffe'(390参照)に、プログラムカウンタの値が書き込まれる。
ここで所定のソフトウエア割り込み命令による発生するアクセスはスタックポインタへの書き込みであって、ソフトウエア割り込み命令によって発生するアクセスアドレスは'0xfffe'である。この'0xfffe'がメモリ上の予約エリア380に割り振られるような値がスタックポインタのリセット時の初期値になるように、スタックポインタを構成する。例えば所定のソフトウエア割り込み命令が実行されるときに、現在のスタックポインタの位置を2だけディクリメントさせる場合には、スタックポインタの初期値をxとするとx−2が予約エリアに属するようなxをリセット字の初期値に持ちようにスタックポインタを構成するとよい。
このようにするとこで、ソフトウエア割り込み命令の動作でリセットを実現した場合にリセットには不要なアクセスが発生しても、メモリのユーザーエリア370には影響を与えないようにすることができる。従って不要なアクセスによって不足の不具合が発生することもない。
2.マイクロコンピュータ
図10は、本実施の形態のマイクロコンピュータのハードウエアブロック図の一例である。
図10は、本実施の形態のマイクロコンピュータのハードウエアブロック図の一例である。
本マイクロコンピュータ700は、CPU510、キャッシュメモリ520、LCDコントローラ530、リセット回路540、プログラマブルタイマ550、リアルタイムクロック(RTC)560、DRAMコントローラ兼バスI/F570、割り込みコントローラ580、シリアルインターフェース590、バスコントローラ600、A/D変換器610、D/A変換器620、入力ポート630、出力ポート640、I/Oポート650、クロック発生装置560、プリスケーラ570及びそれらを接続する汎用バス680、専用バス730等、各種ピン690等を含む。
CPU510は、例えば図1〜図9で説明した構成を有する。
3.電子機器
図11に、本実施の形態の電子機器のブロック図の一例を示す。本電子機器800は、マイクロコンピュータ(またはASIC)810、入力部820、メモリ830、電源生成部840、LCD850、音出力部860を含む。
図11に、本実施の形態の電子機器のブロック図の一例を示す。本電子機器800は、マイクロコンピュータ(またはASIC)810、入力部820、メモリ830、電源生成部840、LCD850、音出力部860を含む。
ここで、入力部820は、種々のデータを入力するためのものである。マイクロコンピュータ810は、この入力部820により入力されたデータに基づいて種々の処理を行うことになる。メモリ830は、マイクロコンピュータ810などの作業領域となるものである。電源生成部840は、電子機器800で使用される各種電源を生成するためのものである。LCD850は、電子機器が表示する各種の画像(文字、アイコン、グラフィック等)を出力するためのものである。
音出力部860は、電子機器800が出力する各種の音(音声、ゲーム音等)を出力するためのものであり、その機能は、スピーカなどのハードウェアにより実現できる。
図12(A)に、電子機器の1つである携帯電話950の外観図の例を示す。この携帯電話950は、入力部として機能するダイヤルボタン952や、電話番号や名前やアイコンなどを表示するLCD954や、音出力部として機能し音声を出力するスピーカ956を備える。
図12(B)に、電子機器の1つである携帯型ゲーム装置960の外観図の例を示す。この携帯型ゲーム装置960は、入力部として機能する操作ボタン962、十字キー964や、ゲーム画像を表示するLCD966や、音出力部として機能しゲーム音を出力するスピーカ968を備える。
図12(C)に、電子機器の1つであるパーソナルコンピュータ970の外観図の例を示す。このパーソナルコンピュータ970は、入力部として機能するキーボード972や、文字、数字、グラフィックなどを表示するLCD974、音出力部976を備える。
本実施の形態のマイクロコンピュータを図12(A)〜図12(C)の電子機器に組みむことにより、低消費電力でコストパフォーマンスの高い電子機器を提供することができる。
なお、本実施形態を利用できる電子機器としては、図12(A)、(B)、(C)に示すもの以外にも、携帯型情報端末、ページャー、電子卓上計算機、タッチパネルを備えた装置、プロジェクタ、ワードプロセッサ、ビューファインダ型又はモニタ直視型のビデオテープレコーダ、カーナビゲーション装置等のLCDを使用する種々の電子機器を考えることができる。
なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
10 CPU、20 フェッチ回路、30 フェッチレジスタ、32 命令コード、40 命令コード実行部、50 ソフトウエア割り込み処理部、60 各種レジスタとその制御回路、62 プログラムカウンタ、63 命令アドレス、64 スタックポインタ、80 リセット信号、90 データバス、92 データ要求信号、120 データバス制御部、122 データ要求マスク回路、510 CPU、530 LCDコントローラ、540 リセット回路、550 プログラマブルタイマ、560 リアルタイムクロック(RTC)、570 DRAMコントローラ兼バスI/F、580 割り込みコントローラ、590 シリアルインターフェース、600 バスコントローラ、610 A/D変換器、620 D/A変換器、630 入力ポート、640 出力ポート、650 I/Oポート、660 クロック発生装置(PLL)、670 プリスケーラ、680 汎用バス、690 各種ピン、700 マイクロコンピュータ、710 ROM、720 RAM、730 MMU、740 クロック供給制御回路、800 電子機器、850 LCD
Claims (10)
- リセット信号を受け付けるCPUであって、
命令コードを読み出してフェッチレジスタにフェッチするフェッチ回路と、
前記フェッチレジスタにフェッチされている命令コードを受け取り、デコードして実行する命令デコード実行回路とを含み、
前記フェッチ回路のフェッチレジスタは、
リセット入力がリセット信号に接続され、リセット時に所定のソフトウエア割り込み命令に初期化されるように構成され、
前記命令デコード実行回路は、
前記所定のソフトウエア割り込み命令の命令コードをデコードして実行するソフトウエア割り込み処理部を含むことを特徴とするCPU。 - 請求項1において、
前記ソフトウエア割り込み処理部は、
前記所定のソフトウエア割り込み命令の命令コードを受け取ると、所定の番地に分岐して所定の番地に格納されている命令又は所定の番地に関連づけて格納されている命令を実行する処理を行うことを特徴とするCPU。 - 請求項1乃至2のいずれかにおいて、
前記所定のソフトウエア割り込み命令によって発生するアクセスであって、リセット動作には不要なアクセスに使用するアドレスレジスタを含み、
前記アドレスレジスタは、
ソフトウエア割り込み命令によって発生するアクセスアドレスがメモリ上の予約エリアに割り振られるような値をリセット時の初期値にもつことを特徴とするCPU。 - 請求項1乃至3のいずれかにおいて、
前記フェッチ回路は、
フェッチ要求信号を生成するフェッチ要求信号を生成するフェッチ要求信号生成回路をふくみ、
前記フェッチ要求信号生成回路は、
リセット信号を受け取り、リセット時にはフェッチ要求無しの信号を出力するように構成されていることを特徴とするCPU。 - 請求項4において、
前記フェッチ要求信号生成回路は、
リセット入力にリセット信号が接続されたフィリップフロップであって、リセット時の初期値がフェッチ要求無しの信号となるフィリップフロップで構成されていることを特徴とするCPU。 - 請求項1乃至5のいずれかにおいて、
前記命令デコード実行回路が出力するデータ要求信号をマスクするデータ要求マスク回路をふくみ、
前記データ要求マスク回路は、
リセット時にはデータ要求信号をマスクすることを特徴とするCPU。 - 請求項1乃至6のいずれかに記載のCPUを含むことを特徴とする集積回路装置。
- 請求項1乃至7のいずれかに記載のCPUを含むことを特徴とするマイクロコンピュータ。
- 請求項8に記載のマイクロコンピュータと、
入力情報を受け付ける手段と、
入力情報に基づき前記情報処理装置により処理された結果を出力するため手段と、
を含むことを特徴とする電子機器。 - ソフトウエア割り込み命令を処理機能を有し、リセット信号を受け付けるCPUの制御方法であって、
前記リセット信号を受け取ると、フェッチ回路のフェッチレジスタを所定のソフトウエア割り込み命令に初期化するステップと、
前記リセット信号によって初期化された前記フェッチレジスタから所定のソフトウエア割り込み命令の命令コードを受け取り、デコードして実行するステップとを含むことを特徴とするCPUの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006026914A JP2007207075A (ja) | 2006-02-03 | 2006-02-03 | Cpu、集積回路装置、マイクロコンピュータ、電子機器、及びcpuの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006026914A JP2007207075A (ja) | 2006-02-03 | 2006-02-03 | Cpu、集積回路装置、マイクロコンピュータ、電子機器、及びcpuの制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007207075A true JP2007207075A (ja) | 2007-08-16 |
Family
ID=38486475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006026914A Withdrawn JP2007207075A (ja) | 2006-02-03 | 2006-02-03 | Cpu、集積回路装置、マイクロコンピュータ、電子機器、及びcpuの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007207075A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103809717A (zh) * | 2012-11-09 | 2014-05-21 | 华为技术有限公司 | 复位方法和网络设备 |
US20220246184A1 (en) * | 2021-02-02 | 2022-08-04 | Nvidia Corporation | Techniques for performing write training on a dynamic random-access memory |
US11809719B2 (en) | 2021-02-02 | 2023-11-07 | Nvidia Corporation | Techniques for performing write training on a dynamic random-access memory |
-
2006
- 2006-02-03 JP JP2006026914A patent/JP2007207075A/ja not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103809717A (zh) * | 2012-11-09 | 2014-05-21 | 华为技术有限公司 | 复位方法和网络设备 |
CN103809717B (zh) * | 2012-11-09 | 2017-04-12 | 华为技术有限公司 | 复位方法和网络设备 |
US20220246184A1 (en) * | 2021-02-02 | 2022-08-04 | Nvidia Corporation | Techniques for performing write training on a dynamic random-access memory |
US11742007B2 (en) * | 2021-02-02 | 2023-08-29 | Nvidia Corporation | Techniques for performing write training on a dynamic random-access memory |
US11809719B2 (en) | 2021-02-02 | 2023-11-07 | Nvidia Corporation | Techniques for performing write training on a dynamic random-access memory |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4324810B2 (ja) | マイクロコンピュータ、電子機器及びフラッシュメモリのプロテクト方式 | |
JP3627725B2 (ja) | 情報処理装置及び電子機器 | |
JP3698123B2 (ja) | 情報処理装置及び電子機器 | |
JP2007310714A (ja) | 集積回路装置、デバッグツール、デバッグシステム、マイクロコンピュータ及び電子機器 | |
JP2007207075A (ja) | Cpu、集積回路装置、マイクロコンピュータ、電子機器、及びcpuの制御方法 | |
JP2006252006A (ja) | デバッグシステム、半導体集積回路装置、マイクロコンピュータ及び電子機器 | |
JP2007193572A (ja) | Cpu、集積回路装置、マイクロコンピュータ及び電子機器 | |
JP4235831B2 (ja) | ターゲットシステム、デバッグシステム、集積回路装置、マイクロコンピュータ及び電子機器 | |
JP4284559B2 (ja) | マイクロプロセッサ、マイクロコンピュータ、電子機器 | |
JP2016076106A (ja) | 半導体装置及び電子機器 | |
JP2008065549A (ja) | マイクロコンピュータ、情報処理システム、電子機器及びマイクロコンピュータの起動制御方法 | |
JPH03271829A (ja) | 情報処理装置 | |
EP0907124A1 (en) | Microcomputer and electronic equipment | |
JP3760999B2 (ja) | 情報処理装置、マイクロコンピュータ及び電子機器 | |
JP2006277333A (ja) | 集積回路装置、マイクロコンピュータ及び電子機器 | |
JP2007199991A (ja) | 集積回路装置、マイクロコンピュータ及び電子機器 | |
JP3928730B2 (ja) | 半導体装置、マイクロコンピュータ及び電子機器 | |
JP2007316840A (ja) | プロセッサ、集積回路装置及び電子機器 | |
JP2006285761A (ja) | 集積回路装置、マイクロコンピュータ及び電子機器 | |
JP2003271417A (ja) | 情報処理装置及び電子機器 | |
JP2006011707A (ja) | エミュレーションシステム、マイクロコンピュータ及び電子機器 | |
JP6127883B2 (ja) | 半導体装置および半導体装置の動作制御方法 | |
JP2006178725A (ja) | 集積回路装置、通信制御装置、マイクロコンピュータ及び電子機器 | |
JP2006079332A (ja) | 集積回路装置、マイクロコンピュータ及び電子機器 | |
JP2005165548A (ja) | 割り込みコントローラ、マイクロコンピュータ及び電子機器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080627 |
|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20090407 |