JPH0281237A - ワンチップマイクロコンピュータのユーザ・プログラムのチェック方法 - Google Patents

ワンチップマイクロコンピュータのユーザ・プログラムのチェック方法

Info

Publication number
JPH0281237A
JPH0281237A JP63234110A JP23411088A JPH0281237A JP H0281237 A JPH0281237 A JP H0281237A JP 63234110 A JP63234110 A JP 63234110A JP 23411088 A JP23411088 A JP 23411088A JP H0281237 A JPH0281237 A JP H0281237A
Authority
JP
Japan
Prior art keywords
instruction
register
gate
data
jump
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.)
Pending
Application number
JP63234110A
Other languages
English (en)
Inventor
Yoshihiko Kon
今 義彦
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP63234110A priority Critical patent/JPH0281237A/ja
Publication of JPH0281237A publication Critical patent/JPH0281237A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (イ)産業上の利用分野 この発明はワンチップマイクロコンピュータのユーザ・
プログラムのチエツク方法に関し、より詳細にはネステ
ィング・オーバおよびサブルミチンの再帰的使用等のチ
エツクが可能な、ワンチップマイクロコンピュータのユ
ーザΦプログラムのチエツク方法に関する。
(ロ)従来の技術 ワンチップマイクロコンピュータ(以下、単にマイクロ
コンピュータと称する)は、限定されたシリコンチップ
上にプロセッサ、メモリ、入出力装置を収容するため、
汎用マイクロコンピュータと異なるアーキテクチユアが
採用きれている。そのため、ユーザがユーザ・プログラ
ムのマスク化以前に、現実に使用されるプロセッサの性
能限界に起因する、あるいはプロセッサとのミスマツチ
に起因するソフトウェア・トラブルをチエツクすること
は極めて困難である。また、コンピュータ・メーカーも
、マイクロフンピユータにより制御される周辺機器が用
意されない理由により、上記ソフトウェア・トラブルを
チエツクすることは極めて困難である。そこで、マイク
ロコンピュータには単体にてユーザ・プログラムのチエ
ツクが可能なテスト・モードが用意されている。
以下、第3図を参照して従来のユーザ・プログラムのチ
エツク方法をマイクロ命令の流れにより説明する。
まず、マイクロコンピュータはその特殊ピンの電位の変
更によりテスト・モードにされ、しかる後起動される。
そして、 (1)プログラム・カウンタ(以下、PCと称する)(
1)のデータをアドレス・レジスタ(2)に転送し、P
ctの内容を+1する。
(2)アドレス・レジスタ(2)の出力をアドレスとし
、て、ユーザ・プログラムがマスクされているロム(以
下、マスク・ロムと称する)3をアクセスする。
(3)マスク・ロム(3)から読み出したデータをデー
タ・レジスタ(4)にセットする。
(4)データ・レジスタ(4)のデータをデータ・バス
(5)を介して、命令レジスタ(8)にセットする。
(5)命令レジスタ(8)のデータを命令デコーダ(9
)によって、複数の制御信号にデコードする。
(6)ジャンプ命令、CALL命令およびリターン命令
に対応する制御信号を強制的にノー・オペレーション(
以下、NOPと称する)命令に対応する制御信号とする
(7)複数の制御信号により、演算部(10)の算術論
理演算ユニット、汎用レジスタ、アキュムレータ、−時
レジスタ等を制御し、命令を実行する。
(8)命令実行に伴う、データ・ポインタ(6)あるい
はレジスタ値等のステータス情報をデータ・ラッチ(1
1)を介して、ステータス・モニタ(12)に出力する
〈9)ステップ(1)に戻る。
なるテストが実施される。ここで、ジャンプ命令、CA
LL命令およびリターン命令を強制的にNOP命令に置
き換える理由は、周辺機器よりのデータ入力が無い単体
テストでは、これらの命令を含むマイクロ・プログラム
を無限に繰り返し、全てのプログラムのチエツクが実施
されない虞があるためである。
ところが、このようにジャンプ命令、CALL命令およ
びリターン命令を無視して、ユーザ・プログラムを実行
する場合には、前記したプロセッサの性能限界に起因す
る、あるいはプロセッサとのミスマツチに起因するソフ
トウェア・トラブルをチエツクすることは不可能であっ
た。
さらに、従来のマイクロコンピュータではそのPCデー
タを得ることができず、トラブルが発生するプログラム
を特定することが困難であった。
(八)発明が解決しようとする課題 この発明は、周辺機器とのデータの入出力が条件ジャン
プ命令により行われることが多い事実の解明に基づいて
、上記した従来のマイクロコンピュータの課題を解決す
ることにある。
(ニ)課題を解決するための手段 この発明は、ジャンプ命令につき、その分岐先アドレス
確認後、そのジャンプ命令の次の命令に強制復帰させる
点を特徴とする。
(*)作用 上記構成は、周辺機器からのデータ入力が無い場合に繰
り返し実行される虞のあるジャンプ命令の実行につき、
その分岐先アドレスの確認に止めるよう作用する。
(へ)実施例 以下、第1図および第2図を参照してこの発明の一実施
例を説明する。初めに、この発明を適用したマイクロコ
ンピュータの機能ブロック図である第1図をマイクロ命
令の流れにより説明する。
まず、マイクロコンピュータはその特殊ビンの電位の変
更によりテスト・モードにされ、しかる後起動される。
そして、 (1) PC(21)のデータをアドレス・レジスタ(
22)に転送し、PC(21)の内容を+1する。
(2)アドレス・レスシタ(22)の出力をアドレスと
して、マスク・ロム(23)をアクセスする。
(3)マスク・ロム(23)から読み出したデータをデ
ータ・レジスタ(24)にセットする。
(4)データ・レジスタ(24)のデータをデータ・バ
ス(25〉を介して、命令レジスタ(28)にセットす
る。
(5)命令レジスタ(28)のデータを命令デコーダ(
29)によって、複数の制御信号に変換する。
(6)ジャンプ命令の場合には、対応する制御信号によ
り、PC(21)のデータをPC保持レジスタ(20)
にセットする。
(7)分岐先アドレスをPCレジスタ(22)にセット
する。
(8)命令レジスタ(28)にNOP命令を強制的にセ
ットする。
(9)複数の制御信号により、演算部(30)の算術論
理演算ユニット、汎用レジスタ、アキュムレータ、−時
レジスタ等を制御し、命令を実行する。
(10)命令実行に伴う、アドレス・レジスタ(22)
のデータ、データ・ポインタ(26)あるいは他のレジ
スタのデータ等のステータス情報をデータ・ラッチ(3
1)を介して、ステータス・モニタ(32)に出力する
(11)ステップ(1)に戻る。
なるテストが実行される。
続いて、第2図を参照してこの発明をより詳細に説明す
る。
テスト信号TESTがL”のときには、ゲート(31)
 、 (32)がオフし、ゲート(31)の“L”出力
が反転入力に入力されるゲート(33)はシステム・ク
ロックCPmに同期してオンし、データ・レジスタ(2
4)の命令を命令レジスタ(28)にセットする。また
、ゲート(35) 、 (38) 、 (39)がオフ
するため、PC保持レジスタが回路から分離される。
よって、テスト信号TESTが“L”のときにはこのマ
イクロコンピュータは通常の動作が保証されている。
さて、TESTを“H”としマイクロコンピュータをテ
スト・モードとすると、ジャンプ命令を実行しない、す
なわちXjが“L”の当初は、ゲー) (31) 、 
(32)がオフし、ゲート(31)の“L”出力が反転
入力に入力されるゲート(33)がシステム・クロック
CPmに同期してオンするため、命令はデータ・レジス
タ(24)からゲート(33)、命令レジスタ(28)
を介して命令デコーダ(29)にセットされる。
命令デコーダ(29)にジャンプ命令がセットされると
、ジャンプ命令に対応する制御信号がデコードされ、ゲ
ート(40)およびRSフリップフロップ(43)によ
り構成されるXj生成回路の出力が”H”となる、なお
、このXj生成回路はジャンプ命令に対応する制御信号
線に並列に接続されるものであり、他のジャンプ制御を
阻害するものではない。
これにより、ゲート(39)がオンし、PC(21)の
データ、すなわち当該ジャンプ命令のアドレスに+1さ
れたアドレス・データがPC保持レジスタ(20)にセ
ットされる。同時にゲート(34)がオンすることによ
り、ゲート(36)がオフし、PC(21)とアドレス
・レジスタ(22)が分離され、代わって、システム・
クロックCPnに同期してゲート(37)がオンするた
め、分岐先アドレスがアドレス・レジスタ(22)にセ
ットされる。
そして、サイクル・クロックSiに同期してゲート(3
1)がオンすると、ゲート(33)がオフし、データ・
レジスタ(24)からの命令を阻止すると共に、ゲート
(32)をオンし、NOP命令に対応するコードを命令
レジスタ(28〉に強制的にセットする。
命令レジスタ(28)にNOP命令がセットきれ、命令
デコーダ(29〉がこれをデコードするとXjが“L”
になり、D−フリッププロップ(42)により遅延され
たXjの“H”が出力されるゲート(38)はオンし、
システム・クロックCPnに同期してゲート(38)が
オンし、PC保持レジスタ(20)のデータをアドレス
・レジスタ(22)にセットし、ジャンプ命令の次の命
令を指定することになる。
さて、このようにして順にプログラムが実行されていく
と、やがて、CALL命令により呼ばれないサブルーチ
ンを実行し、そのリターン命令を実行することになる。
そこで、リターン命令がコードきれると、それがCAL
L命令の後のリターン命令であるか否かをRSフリップ
フロップ(45)、ゲート(41)により判定し、単独
のリターン命令である場合には、NOP命令に置き換え
る処理が行われ、ブ【lグラムの暴走が防止される。
(ト)発明の効果 以上述べたようにこの発明によれば、 (1) ジャンプ命令につき、その分岐先アドレス確認
後、そのジャンプ命令の次の命令に強制復帰させるため
、分岐先アドレスの確認が可能であると共に、特定のプ
ログラムのみが無限に実行される虞がなく、 (2)CALL命令が実行可能なため、ネステイング・
オーバおよびサブルーチンの再帰的使用等のチエツクが
可能である。
という顕著な効果を奏するユーザ・プログラムのチエツ
ク方法を提供することができる。
【図面の簡単な説明】
第1図はこの発明を適用したワンチップマイクロコンピ
ュータのブロック図、第2図はこの発明を適用したワン
チップマイクロコンピュータの部分詳細図、第3図は従
来のワンチップマイクロコンピュータのブロック図であ
る。 (20)・・・PC保持レジスタ、(21)・・・プロ
グラムカウンタ、(22)・・・アドレス・レジスタ、
(23)・・・マスク・ロム、(24)・・・データ・
レジスタ、(28)・・・命令レジスタ、(29)・・
・命令デコーダ、(30)・・・演算部、 (42) 
、 (44)・・・D−FF、(43) 、 (45)
・・・R8−FF、Si・・・サイクル・クロック、 
 Xj・・・ジャンプ命令制御信号、XC・・・CAL
L命令制御信号、 X*・・・リターン命令制御信号、
CP n、m・・・システム畳クロック。 第1図 第3図

Claims (1)

    【特許請求の範囲】
  1. (1)ジャンプ命令につき、その分岐先アドレス確認後
    、そのジャンプ命令の次の命令に強制復帰させるワンチ
    ップマイクロコンピュータのユーザ・プログラムのチェ
    ック方法。
JP63234110A 1988-09-19 1988-09-19 ワンチップマイクロコンピュータのユーザ・プログラムのチェック方法 Pending JPH0281237A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63234110A JPH0281237A (ja) 1988-09-19 1988-09-19 ワンチップマイクロコンピュータのユーザ・プログラムのチェック方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63234110A JPH0281237A (ja) 1988-09-19 1988-09-19 ワンチップマイクロコンピュータのユーザ・プログラムのチェック方法

Publications (1)

Publication Number Publication Date
JPH0281237A true JPH0281237A (ja) 1990-03-22

Family

ID=16965787

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63234110A Pending JPH0281237A (ja) 1988-09-19 1988-09-19 ワンチップマイクロコンピュータのユーザ・プログラムのチェック方法

Country Status (1)

Country Link
JP (1) JPH0281237A (ja)

Similar Documents

Publication Publication Date Title
US5430862A (en) Emulation of CISC instructions by RISC instructions using two pipelined stages for overlapped CISC decoding and RISC execution
Yiu The definitive guide to the ARM Cortex-M3
US5481719A (en) Exception handling method and apparatus for a microkernel data processing system
US5488688A (en) Data processor with real-time diagnostic capability
KR100563012B1 (ko) 처리기를보조처리기에인터페이스하는방법및그장치
US8135975B2 (en) Software programmable timing architecture
JP3745039B2 (ja) 遅延命令を有するマイクロプロセッサ
GB2289353A (en) Data processing with multiple instruction sets.
US12242415B2 (en) Multi-core processor, multi-core processor processing method, and related device
JPS6243764A (ja) バス・ステ−ト制御回路
US5410721A (en) System and method for incrementing a program counter
US7613903B2 (en) Data processing device with instruction translator and memory interface device to translate non-native instructions into native instructions for processor
US6012138A (en) Dynamically variable length CPU pipeline for efficiently executing two instruction sets
US5742801A (en) Microprocessor to which additional instructions are added and instructions addition method thereof
US5991872A (en) Processor
JPH07120284B2 (ja) データ処理装置
Alexandridis Microsystems Special Monograph: Bit-Sliced Microprocessor Architecture
US6502181B1 (en) Method and apparatus for an enhanced processor
US20050257224A1 (en) Processor with instruction-based interrupt handling
JPH0281237A (ja) ワンチップマイクロコンピュータのユーザ・プログラムのチェック方法
US5212779A (en) System for guarantee reexecution after interruption by conditionally used store buffer if microinstruction being executed is a memory write and last microinstruction
Fidge et al. Interactively verifying a simple real-time scheduler
Godse ARM Controller
Staroletov Towards Model Checking Linux Interrupts Behavior for SMP Systems
JPS63173130A (ja) 計算機の命令セツトを拡張するための装置