JPH04363723A - 演算処理装置 - Google Patents

演算処理装置

Info

Publication number
JPH04363723A
JPH04363723A JP27440591A JP27440591A JPH04363723A JP H04363723 A JPH04363723 A JP H04363723A JP 27440591 A JP27440591 A JP 27440591A JP 27440591 A JP27440591 A JP 27440591A JP H04363723 A JPH04363723 A JP H04363723A
Authority
JP
Japan
Prior art keywords
data
delimiter
instruction
read
address
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
JP27440591A
Other languages
English (en)
Inventor
Makoto Kimura
木 村  誠
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP27440591A priority Critical patent/JPH04363723A/ja
Publication of JPH04363723A publication Critical patent/JPH04363723A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、オフィスコンピュー
タ、パーソナルコンピュータ等を構成する演算処理装置
に関する。
【0002】
【従来の技術】従来、オフィスコンピュータ等を構成す
る中央演算処理装置は、1つの命令で固定長の1バイト
単位で転送や演算等の処理を行なうようにしている。と
ころで、ファイルは1レコードを最小単位として入出力
が行なわれ、また1レコードは複数のフィールドから成
っている。通常、フィールドは複数のバイトから構成さ
れており、レコード内のデータの更新は、フィールドを
最小単位として行なわれる。したがって、ファイルのデ
ータ処理においては、複数バイト単位で処理が行なわれ
ることが多い。
【0003】
【発明が解決しようとする課題】このように、従来の中
央演算処理装置は、1つの命令で固定長の1バイト単位
でしか処理を行なうことができないので、ファイリング
においてフィールド単位やレコード単位でデータ処理を
行なう場合には、複数命令からなるサブルーチンプログ
ラムを作成して処理せねばならなかった。
【0004】このため、プログラム作成の為の作業時間
が長くなり、しかも処理速度が遅くなるという欠点があ
った。
【0005】この発明の課題は、1つの命令で任意の長
さのデータを処理することができ、これにより処理速度
を大幅に向上させ、しかもソフトウェアあるいはハード
ウェア上でエラーが発生したとしてもそれに効果的に対
処することができるようにすることである。
【0006】
【課題を解決するための手段】この発明の手段は次の通
りである。データ記憶手段1(図1の機能ブロック図を
参照、以下同じ)は、例えばオフィスコンピュータ等の
主記憶装置に設けられ、データ及びこのデータの区切り
を示すデリミタを記憶する。
【0007】アドレス生成手段2はデータ記憶手段1に
対するリードアドレス等を作成し、データ記憶手段1に
与える。
【0008】命令語格納手段3は命令語及びこの命令語
に対応して指定されたデリミタを記憶するインストラク
ションレジスタ等である。
【0009】制御手段4は命令語格納手段3に記憶され
ている命令語を解読し、アドレス生成手段2のアドレス
指定によってデータ記憶手段1から順位読み出されるデ
ータを前記命令語にしたがって処理するもので、例えば
、命令語を解読する命令デコーダと、この命令デコーダ
によって解読されたオペレーションコードにしたがって
動作指令やタイミング信号を出力する制御回路と、演算
論理回路とによって構成されている。
【0010】検出手段5はアドレス生成手段2のアドレ
ス指定によってデータ記憶手段1から読み出されたデリ
ミタと命令語格納手段3に記憶されているデリミタとを
比較し、両者が対応するデリミタであることが検出され
た際に検出信号を出力する。
【0011】計数手段6はデータ記憶手段1から読み出
されたデータの数を計数するもので、例えば1バイト単
位毎にその値がプラス「1」されたり、予め設定された
設定バイト数が1バイト単位毎にマイナス「1」される
【0012】
【作用】この発明の手段の作用は次の通りである。先ず
、データ記憶手段1にデータ及びこのデータの区切りを
示すデリミタを記憶させておく。
【0013】この状態において、制御手段4は命令語格
納手段3に記憶されている命令語を解読し、アドレス生
成手段2のアドレス指定によってデータ記憶手段1から
順位読み出されるデータを前記命令語にしたがって転送
等の処理を行なう。
【0014】この場合、検出手段5はアドレス生成手段
2のアドレス指定によってデータ記憶手段1から読み出
されたデリミタと命令語格納手段3に記憶されているデ
リミタとの比較を行なっている。また、計数手段6はデ
ータ記憶手段1から読み出されたデータの数を計数して
いる。
【0015】その結果、検出手段5で両デリミタの対応
関係の一致を検出されて検出手段5から検出信号が出力
された際あるいは計数手段6の計数値が特定値となった
際、制御手段4は命令語にしたがった処理を終了する。
【0016】したがって、デリミタで区切られた任意の
長さのデータを単位とするデータ処理を1つの命令によ
って実行することができると共に、ソフトウェアやハー
ドウェア上でエラーが発生したとしてもデータの読み出
し数によってデータの処理範囲が規制される為、プログ
ラムの暴走等を効果的に防止することができる。
【0017】
【実施例】以下、一実施例を図2および図3を参照しな
がら説明する。図2はオフィスコンピュータ等を構成す
る中央演算処理装置のブロック回路図で、インストラク
ションレジスタ11はアドレスバスAB、データバスD
Bを介して接続されたプログラムメモリ(図示せず)か
ら読み出された命令語を記憶するレジスタであり、この
インストラクションレジスタ11に格納された命令語内
のオペレーションコードは命令デコーダ12に、アドレ
ス変更方向はアドレス発生回路13に、指定デリミタは
デリミタ検出回路14に供給される。
【0018】命令デコーダ12は入力されるオペレーシ
ョンコードを解読し、そのデコード結果に基づく出力信
号を制御回路15に与える。なお、制御回路15は命令
デコーダ12によって解読された命令を実行する為に必
要な制御信号aをアドレス発生回路13及びカウンタ2
2等へ出力する。
【0019】アドレス発生回路13は制御回路15から
出力される制御信号aに応答して実行サイクル毎に、リ
ードアドレス、ライトアドレスをインストラクションレ
ジスタ11からのアドレス更新方向にしたがってインク
リメントあるいはデクリメントするもので、これによっ
て生成されたアドレスはアドレスバスABを介して上記
主記憶装置に供給される。この場合、主記憶装置からア
ドレス発生回路13のリードアドレスによって指定され
たデータが読み出されると、データバスDBを介してリ
ードバッファ16に格納される。また、主記憶装置から
アドレス発生回路13のライトアドレスによって指定さ
れたデータが読み出されると、データバスDBを介して
リードバッファ16に格納される。なお、インストラク
ションレジスタ11に格納されたオペレーションコード
が算術論理演算命令のように被演算データと演算データ
の演算を行う命令であれば、リードバッファ16に被演
算データ、リードバッファ17に演算データがセットさ
れる。この場合、リードバッファ16、17内の被演算
データ、演算データはALU(論理演算回路)18に入
力され、ALU18は命令デコーダ12からの演算命令
にしたがった演算を行い、その演算結果はデータバスバ
ッファ19に取り込まれたのちデータバスDBを介して
主記憶装置に供給され、アドレス発生回路13のライト
アドレスによって指定されるアドレス領域内に書き込ま
れる。一方、インストラクションレジスタ11のオペレ
ーションコードが指定する命令が転送命令である場合に
は、アドレス発生回路13のリードアドレスによって指
定されたデータが主記憶装置から読み出され、リードバ
ッファ16にセットされる。そして、次にアドレス発生
回路13からライトアドレスが出力され、リードバッフ
ァ16にセットされているデータがALU18、データ
バスバッファ19を介して主記憶装置に供給されると、
そのデータはライトアドレスによって指定されるアドレ
ス領域内に書き込まれる。
【0020】デリミタ検出回路14はインストラクショ
ンレジスタ11に記憶されている指定デリミタあるいは
デリミタ設定レジスタ20に予め設定されている設定デ
リミタと、リードバッファ16にセットされているデー
タ(デリミタ)とを比較し、その結果、両デリミタが一
致した場合は一致検出信号cを出力し、制御回路15お
よびステータスバッファ21に与える。
【0021】カウンタ22は主記憶装置から1バイトず
つ読み出されるデータの数を計数するもので、任意のバ
イト数を設定可能な減算カウンタによって構成され、制
御回路15から制御信号aが入力される毎に、つまり主
記憶装置からデータが1バイトずつ読み出される毎にそ
の値がマイナス「1」ずつ減算される。そして、カウン
タ22の計数値はゼロ検出回路23に送られ、その値が
「0」になったか否かが検出される。このゼロ検出回路
23で「0」が検出されると、ゼロ検出信号fを制御回
路15、ステータスバッファ21に与える。
【0022】制御回路15はデリミタ検出回路14から
一致検出信号cあるいはゼロ検出回路23からゼロ検出
信号fが入力されると、命令語を実行させる為の制御信
号の出力を中止すると共に、終了信号eを出力し、プロ
グラムメモリからの次の命令語の読み出し指定を行う。
【0023】次に、本実施例で取扱うデリミタについて
説明する。デリミタは主記憶装置内のデータの区切りを
示すもので、以下の4種類がある。
【0024】△……トラックエンド (……レコードスタート 9N ……ワードエンド(数値用) 9……ワードエンド(キャラクタ用) なお、各デリミタは1バイト構成で16進コードによっ
て表現され、トラックエンドは“FF”、レコードエン
ドは“FE”、数値用ワードエンドは“FD”、キャラ
クタ用ワードエンドは“00”に対応している。このよ
うな4種類の固定デリミタの他、本実施例においては、
デリミタ設定レジスタ20に任意のデリミタを設定する
ことができ、この設定デリミタを加えて5種類のデリミ
タがある。
【0025】いま、図3に示すように、主記憶装置MM
内に記憶されるデータd(dは1バイト構成で16進コ
ードによって表現される)を各種のデリミタ(キャラク
タ用ワードエンド、レコードスタート)で所定の単位に
区切られて主記憶装置MM内に記憶させておき、しかも
カウンタ22にデータの処理範囲を示すデータ数Nとし
て「20」バイトを設定したものとする。そして、イン
ストラクションレジスタ11内にセットされたオペレー
ションコードの指示する命令が転送命令であるものとす
る。
【0026】なお、カウンタ22には、プログラムのエ
ラーやハードウェアによるエラーのために転送命令等が
終了しなくなり、主記憶装置の他のデータが破壊される
等の悪影響を防止するために設定されるもので、転送命
令の場合には、デリミタで区切られるデータのバイト数
の上限値である。
【0027】先ず、アドレス発生回路13からのリード
アドレスによって主記憶装置MMから1バイト目のデー
タが読み出され、リードバッファ16にセットされる。 次いで、アドレス発生回路13からライトアドレスが出
力され、リードバッファ16内のデータが読み出されて
主記憶装置MMの指定アドレス領域に書き込まれる。こ
の際、カウンタ22の値がデクリメントされて「19」
となるが、ゼロ検出回路23からゼロ検出信号cは出力
されない。また、リードバッファ16にセットされた1
バイト目のデータはデリミタではないので、デリミタ検
出回路14から一致検出信号cは出力されない。このよ
うにゼロ検出信号fおよび一致検出信号cの双方が出力
されないことを条件に、制御回路15は転送命令を実行
させる為の制御信号を再度出力し、アドレス発生回路1
3の各アドレスを更新し、主記憶装置MM内の次のデー
タがリードバッファ16にセットされる。
【0028】しかして、4バイト目のデリミタが読み出
されてリードバッファ16にセットされた場合、インス
トラクションレジスタ11内の指定デリミタがレコード
スタートを示すデリミタであるものとすると、リードバ
ッファ16にワードエンドのデリミタがセットされたと
しても一致検出信号cは出力されず、しかもこの時のカ
ウンタ22の値は「16」であるのでゼロ検出信号fは
出力されない。
【0029】そして、14バイト目のデータが読み出さ
れてリードバッファ16にセットされると、このデータ
はレコードスタートを示すデリミタであり、指定デリミ
タと一致する為、一致検出信号cが出力される。これに
よって制御回路15は転送命令の実行を終了させ、終了
信号eを出力する。このように指定デリミタがレコード
スタートを示すデリミタである場合、カウンタ22の値
が「0」となる前に、つまり20バイト分のデータが読
み出される前にこのデリミタが読み出されると、その時
点で転送命令の実行が終了する。
【0030】尚、ステータスバッファ21は命令の実行
が、ゼロ検出回路23からのゼロ検出信号fで終了した
のか、デリミタ検出回路14からの一致検出信号cによ
って終了したのか、そのステータスをデータとして記憶
しておくもので、他の処理装置等(図示せず)からのア
クセスによってデータバスDBを介して読み出される。
【0031】したがって、図3(A)に示すように、レ
コードスタートを示すデリミタで区切られる14バイト
分のデータ長を単位とするデータ転送が行なわれる。
【0032】一方、図3(B)に示すように、20バイ
ト分のデータを読み出しても指定デリミタと一致するデ
リミタがリードバッファ16にセットされない場合には
、カウンタ22の値が「0」となってゼロ検出信号fが
出力される為、この時点でデータ転送が終了する。した
がって、この場合には20バイト分のデータ長を単位と
するデータ転送が行なわれる。
【0033】なお、デリミタ設定レジスタ20に任意の
コードによってデリミタを設定しておけば、デリミタ検
出回路14はこの設定デリミタとリードバッファ16に
セットされているデリミタとの一致を検出した際に、一
致検出信号cを出力する為、この検出時点でデータ転送
が終了することは上述した指定デリミタの場合と同様で
ある。
【0034】また、オペレーションコードが演算命令や
論理演算命令である場合には、主記憶装置の連続するア
ドレスに記憶されている演算データと被演算データとに
基づいた演算が実行されるが、この場合においてもデリ
ミタ単位で処理が行なわれることはデータ転送の場合と
同様である。
【0035】また、命令語の中の指定デリミタのコード
とデータ中のデリミタのコードは同一のコードを用いて
もよく、同一のコードを用いなくてもよい。同一のコー
ドを用いない場合は、指定デリミタに用いるデリミタの
コードとデータ中で用いるデリミタのコードを予め対応
させておき、デリミタ検出回路14の検出時に、前記対
応関係に基づいて両デリミタの検出を行う。
【0036】
【発明の効果】本発明によれば、命令語の中に命令の実
行の終了を指示するデリミタを設け、読み出されたデー
タの中に前記デリミタが検出されるまで命令の実行を繰
り返すようにしたので、デリミタで区分される任意の長
さのデータの転送や演算等を1命令語で行なうことが可
能になり、データの処理速度が向上すると共にデータ処
理のためのプログラム作成も容易になる。また、計数手
段が特定値になった際に命令語による命令の実行を終了
しているので、プログラムやハードウェアのエラーによ
る異常動作を確実に防止できる。
【図面の簡単な説明】
【図1】本発明の機能ブロック図である。
【図2】全体のブロック回路図である。
【図3】指定デリミタあるいは設定バイト数に応じて処
理されるデータ単位を説明する図である。
【符号の説明】
11  インストラクションレジスタ 12  命令デコーダ 13  アドレス発生回路 14  デリミタ検出回路 15  制御回路 16  リードバッファ 18  ALU 22  カウンタ 23  ゼロ検出回路 MM  主記憶装置

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  データ及びこのデータの区切りを示す
    デリミタを記憶するデータ記憶手段に対するアドレスを
    生成するアドレス生成手段と、命令語及びこの命令語に
    対応して指定されたデリミタを記憶する命令語格納手段
    と、この命令語格納手段に記憶されている命令語を解読
    し、前記アドレス生成手段のアドレス指定によって前記
    データ記憶手段から順位読み出されるデータを前記命令
    語にしたがって処理する制御手段と、前記命令語格納手
    段に記憶されているデリミタと対応するデリミタが前記
    データ記憶手段から読み出されたことを検出した際に検
    出信号を出力する検出手段と、  前記データ記憶手段
    から読み出されたデータの数を計数する計数手段と、を
    備え、前記制御手段は前記検出信号が入力された際ある
    いは前記計数手段で特定値が計数された際に、前記命令
    語にしたがった処理を終了することを特徴とする演算処
    理装置。
JP27440591A 1991-10-23 1991-10-23 演算処理装置 Pending JPH04363723A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27440591A JPH04363723A (ja) 1991-10-23 1991-10-23 演算処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27440591A JPH04363723A (ja) 1991-10-23 1991-10-23 演算処理装置

Publications (1)

Publication Number Publication Date
JPH04363723A true JPH04363723A (ja) 1992-12-16

Family

ID=17541214

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27440591A Pending JPH04363723A (ja) 1991-10-23 1991-10-23 演算処理装置

Country Status (1)

Country Link
JP (1) JPH04363723A (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58217053A (ja) * 1982-06-10 1983-12-16 Nec Corp ドキユメント処理指向計算機
JPS62171037A (ja) * 1986-01-23 1987-07-28 Nec Corp 可変長ストリ−ム処理終了判定機構
JPS62221059A (ja) * 1986-03-20 1987-09-29 Nec Corp 中央処理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58217053A (ja) * 1982-06-10 1983-12-16 Nec Corp ドキユメント処理指向計算機
JPS62171037A (ja) * 1986-01-23 1987-07-28 Nec Corp 可変長ストリ−ム処理終了判定機構
JPS62221059A (ja) * 1986-03-20 1987-09-29 Nec Corp 中央処理装置

Similar Documents

Publication Publication Date Title
US5757685A (en) Data processing system capable of processing long word data
US4093983A (en) Fast and normal rate instruction fetching
US4975835A (en) Variable length data processing apparatus for consecutively processing variable-length data responsive to one instruction
US5237664A (en) Pipeline circuit
JP2581218B2 (ja) カウンタ回路
JPH04363723A (ja) 演算処理装置
US5596761A (en) Central processing unit with internal register initializing means
JPS6236575B2 (ja)
JPH056273A (ja) 演算処理装置
US5214764A (en) Data processing apparatus for operating on variable-length data delimited by delimiter codes
JPH0831033B2 (ja) データ処理装置
JPS59123055A (ja) 命令処理方式
JP2671325B2 (ja) データ処理装置
JPH0258648B2 (ja)
JP2850377B2 (ja) マイクロコンピュータ
JPH01316826A (ja) レジスタファイルアドレス回路
JPH05334074A (ja) マイクロプロセッサ
JPS62219128A (ja) デ−タ処理装置
JPH0340013A (ja) 中央演算処理装置
JPS62151936A (ja) マイクロプロセツサに内蔵されるキヤツシユ回路
JPS6385831A (ja) マイクロプロセツサの制御回路
JPH01193943A (ja) マイクロコンピュータ
JPS63165931A (ja) 不連続命令フエツチアドレス情報記憶方式
JPH0476150B2 (ja)
JPH01255037A (ja) 電子計算機