JPH061445B2 - マイクロコンピュータにおけるチェックサム回路 - Google Patents

マイクロコンピュータにおけるチェックサム回路

Info

Publication number
JPH061445B2
JPH061445B2 JP61160360A JP16036086A JPH061445B2 JP H061445 B2 JPH061445 B2 JP H061445B2 JP 61160360 A JP61160360 A JP 61160360A JP 16036086 A JP16036086 A JP 16036086A JP H061445 B2 JPH061445 B2 JP H061445B2
Authority
JP
Japan
Prior art keywords
checksum
address
bus
input
register
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.)
Expired - Lifetime
Application number
JP61160360A
Other languages
English (en)
Other versions
JPS6316337A (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.)
AI OO DEETA KIKI KK
Original Assignee
AI OO DEETA KIKI KK
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 AI OO DEETA KIKI KK filed Critical AI OO DEETA KIKI KK
Priority to JP61160360A priority Critical patent/JPH061445B2/ja
Publication of JPS6316337A publication Critical patent/JPS6316337A/ja
Publication of JPH061445B2 publication Critical patent/JPH061445B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)

Description

【発明の詳細な説明】 産業上の利用分野 この発明は、マイクロコンピュータシステムにおいて、
一連のメモリ領域をブロック転送する際に、転送された
データの有効性をチェックするために用いる、マイクロ
コンピュータにおけるチェックサム回路に関する。
従来技術 コンピュータシステムにおいて、メモリに記憶された情
報を読み出すとき、あるいは、情報をメモリに記憶せし
めるときに、そのデータ転送に誤りがなかったか否かを
判断する手法は、種々のものが提案されており、その最
も単純なものは、転送データをビット単位にチェックす
る垂直パリティ方式である。
しかしながら、このものは、1ワードまたは1バイトの
データの中のビット情報に着目するものであるから、多
数ワード、または、多数バイトのデータを、いわゆるブ
ロック転送する際の、ワードまたはバイト単位の転送誤
りを適確に検出することは至難であって、これに対処す
る手法として、巡回冗長検査(Cyclic Redu
nda−ncy Check(CRC))方式や水平パ
リティチェック方式が知られており、殊に、後者は、転
送すべき多数ワードまたは多数バイトのデータの各対応
ビット間の累積合計からなるパリティワードの内容を以
って、転送誤りを検知するための情報源とするもので、
サムチェック方式とも呼ばれる周知の方法である。ま
た、これらの方式によるときは、単に、ブロック転送の
際に発生する転送誤りの検出のみならず、引き続く2回
のブロック転送の間におけるデータの同一性のチェック
ができるものであるから、その間に、プログラムミス等
によって、同一に保たれるべきデータ内容の破壊が発生
したことも、容易に検出できるものである。
而して、従来のコンピュータシステム、殊に、マイクロ
コンピュータシステムにおいて、かかるサムチェック方
式を実現しようとするときは、パリティワードを記憶す
べきチェックサムレジスタを、システムの入出力機器と
して外付けするとともに、1ワードまたは1バイトのデ
ータを転送する都度、そのデータ内容を前記チェックサ
ムレジスタにも転送し、一連のブロック転送の最後に、
当該チェックサムレジスタの内容を読み取る操作が必要
であったから(第5図)、この方式を実行するときは、
チェックサムをとらない場合に比して、同図中のブログ
ラムステップ(1)、(3)、(6)が余分の動作とな
り、したがって、転送に要する処理時間が極端に長くな
るという重大なる欠点が避けられないものであった。た
とえば、インテル社製の8086系マイクロコンピュー
タを中央演算装置として使用したシスタムにおいては、
1024バイトのブロック転送を行なうとき、チェック
サムをとらないときは、リピートプリフィックス命令と
ストリング操作命令とを活用することによって、約51
30クロックの処理時間で済むのに対して、チェックサ
ムをとるときは、高速の前記各命令を活用できないこと
と、1ワード(2バイト)ごとに、外付けのチェックサ
ムレジスタへのデータ転送を要することとが相俟って、
同一バイト数のブロック転送に、約17940クロック
もの処理時間を要するものである。
そこで、この発明の目的は、かかる従来技術の実情に鑑
み、いかなるタイプの転送命令を使用するとしても、シ
ステムのバス上には、1ワードまたは1バイトの転送単
位ごとに、そのアドレス信号とデータ信号とが時系列的
に現われることに着目し、このデータ信号を、ビット単
位に逐次加算するための全加算器とチェックサムレジス
タとをバスに接続することによって、チェックサムレジ
スタには、ハードウェアを介して、前記データ信号のチ
ェックサムを集積することができるから、中央演算装置
に対して、余分な処理時間を殆んど付加することなしに
チェックサムをとることができる、新規の、マイクロコ
ンピュータにおけるチェックサム回路を提供することに
ある。
問題点を解決するための手段 而して、かかる目的を達成するためのこの発明の構成
は、ブロック転送の際に、バス上に時系列的に現われる
データ信号をビット単位に加算する全加算器と、該全加
算器の出力を貯えるチェックサムレジスタと、該チェッ
クサムレジスタの内容をバスに出力するドライバとを備
え、チェックサムレジスタは、入出力機器として、その
内容の読取りと消去とができるようにするとともに、ア
ドレスデコーダを設けて、チェックサムをとるべきアド
レス範囲の設定ができるようにしたことをその要旨とす
る。
作 用 かかる構成によれば、ブロック転送が行なわれる際に
は、その転送単位たる1ワードまたは1バイトごとに、
バス上には、アドレス信号とデータ信号とが現われるか
ら、アドレス信号の内容が前記アドレスデコーダに設定
される範囲内であるときにのみ、前記全加算器が、バス
上のデータ信号のビット単位の加算を行ない、その結果
をチェックサムレジスタに累積せしめることによって、
余分な処理時間を殆んど要することなく、当該ブロック
転送に当ってのチェックサムを得ることができるととも
に、チェックサムレジスタの内容の読取りと消去とを行
なうことによって、得られたチェックサムの、中央演算
装置による読取りと、チェックサムレジスタのイニシャ
ライズとを行なうことができるものである。
実施例 以下、図面を以って実施例を説明する。
マイクロコンピュータにおけるチェックサム回路10
は、全加算器13と、チェックサムレジスタ14と、ド
ライバ15と、アドレスデコーダ18とを主要要素とし
てなる(第1図)。
マイクロコンピュータシステムは、中央演算装置(CP
U)1と、メモリユニット2と、1または2以上の入出
力機器3とが、システムバス(以下、単に、バスとい
う)9を以って接続されて形成されており、チェックサ
ム回路10は、このバス9に接続されている。
バス9は、データバス9aと、コントロールバス9b
と、アドレスバス9cとからなり、中央演算装置1と、
メモリユニット2、または、入出力機器3との間は、バ
ス9を介して接続されているから、これらの装置の相互
間においてデータ転送を行なう都度、データバス9a、
コントロールバス9b、アドレスバス9c上には、それ
ぞれ、時系列的に、所定のデータ信号、制御信号、アド
レス信号が現われるものである。ただし、ここでは、デ
ータバス9aは、16ビットのデータ信号D0〜D15を
同時に搬送するために16本の信号線からなり、アドレ
スバス9cは、20ビットのアドレス信号A0〜A19を
同時に搬送するために20本の信号線からなるものと
し、また、コントロールバス9bは、所要の適当なる本
数の信号線からなるものとする。
全加算器13は、16ビットのフルアダーであって、そ
の入力は、排他的論理和回路11と、テンポラリレジス
タ12とを介して、バス9のデータバス9aに接続され
ている。すなわち、データバス9aの下位8ビットD0
〜D7は、排他的論理和回路11を介して、また、上位
8ビットD8〜D15は、直接に、それぞれ、テンポラリ
レジスタ12に入力され、テンポラリレジスタ12の出
力は、そのまま、全加算器13の入力となっている。ま
た、アドレスバス9cの最下位ビットA0を除く下位8
ビットA1〜A8が、排他的論理和回路11に入力され
ている。
チェックサムレジスタ14は、全加算器13の出力を入
力とする16ビットのレジスタであって、その出力は、
全加算器13にフィードバックされるとともに、ドライ
バ15を介して、データバス9aに接続されている。た
だし、第1図においては、データバス9aから、排他的
論理和回路11、テンポラリレジスタ12、全加算器1
3、チェックサムレジスタ14、ドライバ15に至る回
路は、16ビットのデータ信号D0〜D15の下位8ビッ
トD0〜D7と上位8ビツトD8〜D15とを、それぞ
れ、別の信号線として書き表わしてある。
アドレスバス9cには、入出力ポートコンパレータ16
が接続されている。入出力ポートコンパレータ16に
は、アドレスバス9cの下位16ビットA0〜A15が入
力されるとともに、16ビットのディップスイッチから
なる入出力ポート設定スイッチ16aも入力されてお
り、また、その出力は、コントロールバス9bから入出
力制御信号IOR、IOWとともに、入出力制御部17
に入力されている。さらに、入出力制御部17の出力
は、出力信号S1、S6として、それぞれ、チェックサ
ムレジスタ14とドライバ15とに接続されている。
アドレスバス9cの上位3ビットA17〜A19には、アド
レスデコーダ18が接続されていて、これには、コント
ロールバス9bからのリフレッシュ信号RFSHも入力
されている。アドレスデコーダ18の出力は、コントロ
ールバス9bからのメモリ読取り・書込み制御信号MR
C、MWCとともに、出力信号S2として、タイミング
制御部19に入力される一方、タイミング制御部19の
出力は、テンポラリレジスタ12とチェックサムレジス
タ14とに接続されている。
メモリユニット2は、本体RAM2aと、バンクRAM
窓口2bを介して切り換えられる複数のバンクRAM2
c、2c…と、バンクRAM2c、2c…を切り換える
ためのバンクレジスタ2dとを含んでなるものとする
(第2図)。すなわち、本体RAM2aのメモリ容量の
不足を補うために、複数のバンクRAM2c、2c…を
用意し、このバンクRAM2c、2c…の任意の1個
を、バンクレジスタ2dに設定したインデクスによって
指定することにより、本体RAM2aと、指定されたバ
ンクRAM2cとを合体したメモリ領域を完成し(第3
図)、中央演算装置1は、その20ビットのアドレス信
号A0〜A19によって、本体RAM2aと指定されたバ
ンクRAM2cとからなるメモリ領域の全域をアクセス
できるものである。ただし、すべてのバンクRAM2
c、2c…の容量は同一であるものとし、そのアドレス
範囲AD1〜AD2は固定されていて、バンクRAM窓
口2bのアドレス範囲AD1〜AD2と合致しているも
のとする。このようにして、本体RAM2aと、任意に
切換え可能な複数のバンクRAM2c、2c…とによっ
て、中央演算装置1がアクセス可能なメモリ領域を完成
するので、中央演算装置1によって直接アクセス可能な
RAM領域を、ほとんど無制限に拡張できるものであ
る。
なお、バンクRAM2c、2c…とバンクRAM窓口2
bとの各アドレス範囲AD1〜AD2は、ラウンドナン
バとし、アドレスデコーダ18に入力されるアドレスバ
ス9cの上位3ビットA17〜A19によって、このアドレ
ス範囲AD1〜AD2の上下限値AD1、AD2が表現
できるものとする。
いま、指定されたバンクRAM2cに含まれる任意のフ
ァイルfbを、本体RAM2aの任意の領域にあるファ
イルfmにブロック転送するに当って、チェックサムを
とることを考える。
まず、中央演算装置1において出力命令を実行して、チ
ェックサムレジスタ14の内容を消去し、そのイニシャ
ライズを行なう。すなわち、入出力ポート設定スイッチ
16aにおいて設定された入出力ポート番号をオペラン
ドとする出力命令を実行すると、アドレスバス9cに
は、当該入出力ポート番号を示すアドレス信号A0〜A
15が現われるから、入出力ポートコンパレータ16は、
アドレスバス9cと入出力ポート設定スイッチ16aと
からの各入力信号の一致を検出して、その出力を発生す
る。一方、出力命令の実行によって、コントロールバス
9bの出力制御信号IOWが発生するから、前記入出力
ポートコンパレータ16の出力と出力制御信号IOWと
を入力とする入出力制御部17は、出力信号S1を発生
し(第4図の信号波形S1、以下、単に、(S1)のよ
うに記す)、これによって、チェックサムレジスタ14
の内容を消去して、チェックサムレジスタ14のイニシ
ャライズを行なう。チェックサムレジスタ14がイニシ
ャライズされれば、その出力が全加算器13にフィード
バックされているから、全加算器13も、その内容がク
リアされてイニシャライズされる。
次いで、中央演算装置1は、ファイルfbの最初の1ワ
ードをファイルfmに転送するべく、ファイルfbの最
初のワードのアドレスにアクセスする。これによって、
アドレスバス9cには、当該アドレスに対応するアドレ
ス信号A0〜A19が現われるが(A0〜A19)、このと
き、あらかじめ、アドレスデコーダ18には、バンクR
AM窓口2bのスタートアドレスAD1とエンドアドレ
スAD2とを設定しておくものとする。而して、ファイ
ルfbは、バンクRAM窓口2bと同一のアドレス範囲
AD1〜AD2を有するバンクRAM2cに含まれるも
のであるから、ファイルfbの最初のワードのアドレス
は、当然に、アドレス範囲AD1〜AD2の中にある。
そこで、アドレスデコーダ18は、アドレスバス9cに
現われるアドレス信号A0〜A19が、設定されたアドレ
ス範囲AD1〜AD2の間にあるときに、その出力信号
S2を発生するものとし、アドレス信号A0〜A19がア
ドレス範囲AD1〜AD2に含まれないとき、その出力
信号S2を発生しないような、一種の、コンパレータと
ゲートとの組合せからなるものとすれば、前記の、ファ
イルfbの最初のワードへのアクセスの際には、アドレ
スデコーダ18の出力信号S2が得られ(S2)、これ
がタイミング制御部19に入力される。
一方、ファイルfbの最初のワードにアクセスするため
に、中央演算装置1によって実行される命令は、ファイ
ルfbの当該ワードの内容を読み取るための、メモリリ
ード命令であるから、コントロールバス9bのメモリ読
取り制御信号MRCが現われる(MRC)。タイミング
制御部19は、前記アドレスデコーダ18の出力信号S
2と、コントロールバス9bのメモリ読取り制御信号M
RCとを入力されて、出力信号S3を発生し(S3)、
これが、テンポラリレジスタ12をイニシャライズす
る。
前記メモリリード命令の実行の結果、アドレスバス9c
上のアドレス信号A0〜A19、コントロールバス9bの
メモリ読取り制御信号MRCは、ともに、バス9を介し
て、メモリユニット2にも供給されるから、メモリユニ
ット2は、これに呼応して、当該アドレスのメモリ内
容、すなわち、ファイルfbの最初のワードの内容を、
データバス9a上に、データ信号D0〜D15として出力
する(D0〜D15)。このデータ信号D0〜D15の下位
8ビットD0〜D7は、アドレスバス9c上にある、ア
ドレス信号A0〜A19の最下位ビットA0を除いた下位
8ビットA1〜A8とともに、排他的論理和回路11に
入力されて、ここで、対応する各ビット相互間の排他的
論理和がとられ、その結果の8ビットと、データ信号D
0〜D15の上位8ビットD8〜D15とが、ともに、テン
ポラリレジスタ12に入力される。
テンポラリレジスタ12に対する入力データのセット
は、タイミング制御部19の、別の出力信号S4によっ
て行なわれる。すなわち、出力信号S4は、メモリ読取
り制御信号MRCの復帰のタイミングで出力されるもの
とし(S4)、その時点においては、データバス9a上
には、データ信号D0〜D15が確定した信号として存在
している。このようにして、出力信号S4によって、テ
ンポラリレジスタ12にセットされるデータは、データ
信号D0〜D15の上位8ビットD8〜D15と、データ信
号D0〜D15の下位8ビットD0〜D7が、それが記憶
されていたファイルfbの対応するワードのアドレスを
表わすアドレス信号A0〜A19の、最下位ビットA0を
除く下位8ビットA1〜A8によって修飾されたものと
の組合せからなっている。
テンポラリレジスタ12にセットされたデータは、その
まま、全加算器13に入力されるから、全加算器13の
現在内容との間において、全加算が行なわれるが、全加
算器13は、先きに、入出力制御部17からの出力信号
S1によって、チェックサムレジスタ14がイニシャラ
イズされ、その結果がフィードバックされているので、
その内容は、全ビットがクリアされており、したがっ
て、ここでは、テンポラリレジスタ12の内容が、その
まま、全加算器13に転写されることになる。
タイミング制御部19は、出力信号S4の出力後、遅延
時間Taをおいて、別の出力信号S5をチェックサムレ
ジスタ14に送り(S5)、チェックサムレジスタ14
は、このタイミングを以って、全加算器13の内容を取
り込んで記憶する。ただし、遅延時間Taは、全加算器
13の演算所用時間を見込んだ遅れ時間である。さら
に、チェックサムレジスタ14の内容は、そのまま、全
加算器13にフィードバックされるから、全加算器13
においても、その内容が保持される。
中央演算装置1は、以上のチェックサム回路10の動作
と併行して、データバス9a上のデータ信号D0〜D15
を、中央演算装置1内の、図示しない所定のレジスタに
読み取っている。
而して、中央演算装置1が、次に実行する命令は、読み
取ったデータD0〜D15を、ファイルfmの最初のワー
ドに格納するためのメモリライト命令である。このメモ
リライト命令に呼応して、アドレスバス9c上には、フ
ァイルfmの当該ワードに対応するアドレス信号A0〜
A19が現わえるが、このときのアドレス信号A0〜A
19は、本体RAM2aに含まれているファイルfm内
のワードを示すものであるから、このものは、アドレス
デコーダ18に設定されているアドレス範囲AD1〜A
D2の間になく、したがって、アドレスデコーダ18
は、このメモリライト命令に対しては、何ら、その出力
信号S2を発生することがない。そのため、タイミング
制御部19も、その出力信号S3、S4、S5のいずれ
をも発生することがなく、したがって、チェックサム回
路10は、全体として、何らの動作もしない。しかしな
がら、この間においては、中央演算装置1から、ファイ
ルfmの所定アドレスのワードへのデータの転送が行な
われ、前記メモリライト命令の動作が遂行されることは
勿論である。
続いて、中央演算装置1は、ファイルfbの第2のワー
ドを転送すべく、メモリリード命令を実行する。このと
きのチェックサム回路10の動作も、前記の、転送すべ
き最初のワードのメモリリード命令の実行に呼応するも
のと全く同様である。ただし、タイミング制御部19か
らの出力信号S4によって、テンポラリレジスタ12に
データがセットされた時点では、前述のように、全加算
器13には、前回のメモリリード命令の実行の直後にお
けるチェックサムレジスタ14の内容が保持されている
から、今回の全加算器13の演算結果は、前回と今回と
の累積加算結果となり、この累積結果が、チェックサム
レジスタ14にセットされるとともに、これが、全加算
器13にフィードバックされて保持される。
引き続いて、中央演算装置1が実行するメモリライト命
令に対しては、前述のとおり、チェックサム回路10
は、何ら、応答することがない。
以上の動作を繰り返して、ファイルfbの全ワードにつ
いての転送を完了すれば、チェックサムレジスタ14の
内容として、ファイルfbの全ワードについて、その下
位8ビットD0〜D7が各ワードのアドレスの、最下位
ビットA0を除く下位8ビットA1〜A8との間で排他
的論理和がとられたものと、上位8ビットD8〜D15と
の組合せからなるデータのチェックサムが得られること
になる。
次いで、中央演算装置1において、入出力ポート設定ス
イッチ16aに設定した入出力ポート番号をオペランド
とする入力命令を実行する。これに対応して、入出力ポ
ートコンパレータ16は出力を発生するとともに、コン
トロールバス9bの入力制御信号IORが現われるか
ら、入出力制御部17は、これらの各信号に対応して、
出力信号S6を発生し、ドライブ15を駆動する。ドラ
イバ15には、チェックサムレジスタ14の内容が入力
されているので、ドライバ15は、入出力制御部17か
らの出力信号S6を受けて、前記チェックサムレジスタ
14の内容をデータバス9a上に出力し、したがって、
中央演算装置1は、前記入力命令の結果として、チェッ
クサムレジスタ14に貯えられている、チェックサムを
読み取ることができるものである。
以上のチェックサム回路10の動作は、本体RAM2a
内のファイルfmから、バンクRAM2c内のファイル
fbへのブロック転送においても、全く同様であるか
ら、このときにも、チェックサムレジスタ14にチェッ
クサムを集積し、中央演算装置1は、ドライバ15とデ
ータバス9aとを介して、その結果を読み取ることがで
きる。ただし、このとき、アドレスデコーダ18は、ア
ドレス範囲AD1〜AD2の範囲たるファイルfbの各
ワードのアドレスに対してのみ、その出力信号S2を発
生することに変わりはなく、したがって、アドレスデコ
ーダ18が出力信号S2を発生し、チェックサムレジス
タ14にチェックサムを集積するのは、ファイルfmに
対するメモリリード命令の実行時ではなく、ファイルf
bに対するメモリライト命令の実行時である。よって、
タイミング制御部19を動作せしめて、出力信号S3、
S4を発生せしめるのは、メモリ読取り制御信号MRC
ではなく、メモリ書込み制御信号MWCとなる点、動作
が異なることになる。なお、一般に、データバス9a上
に現われるデータ信号D0〜D15の時間的長さは、メモ
リライト命令の実行時の方が、第4図に示すメモリリー
ド命令の実行時よりも長いので、チェックサム回路10
の動作としては、メモリライト命令に呼応する今回の方
が、タイミング的に、大きな余裕が取れるものである。
以上のようにして、ファイルfb、fm間のブロック転
送の際には、そのデータの転送方向がいずれの場合にあ
っても、チェックサムレジスタ14に、チェックサムを
得ることができるので、たとえば、ファイルfmからフ
ァイルfbへの転送の際に得られたチェックサムを保存
しておき、次に、逆方向の転送の際に得られたチェック
サムとの比較を実施すれば、簡単に、これらのブロック
転送の際における転送誤りの有無、ないし、引き続く2
回のブロック転送の間におけるデータの同一性の有無の
検出ができるものである。
なお、アドレスデコーダ18に入力されているリフレッ
シュ信号RFSHは、チェックサム回路10の動作に直
接関与するものではなく、メモリユニット2を構成する
メモリ素子としてダイナミックRAMを使用したとき
に、アドレスAD1〜AD2の範囲内の領域に対するメ
モリリフレッシュ動作がなされても、アドレスデコーダ
18が不用意に出力信号S2を出力しないように、アド
レスデコーダ18の動作を禁止する目的で入力されてい
るものである。
以上説明した実施例においては、排他的論理和回路11
は、データ信号D0〜D15の下位8ビットD0〜D7
と、アドレス信号A0〜A19の、最下位ビットA0を除
く下位8ビットA1〜A8との間において、各対応ビッ
ト間の排他的論理和をとっている。ここで、アドレス信
号A0〜A19について、最下位ビットA0を除いたの
は、同ビットが、ワード単位のメモリアクセスとバイト
単位のメモリアクセスとを切り換える情報として使用さ
れるインテル社製の8086系の中央演算装置1の使用
を想定したからであって、一般的には、排他的論理和回
路11に入力すべきアドレス情報としては、バンクRA
M2cのメモリ容量をカバーできるに足る、任意の下位
のビット数を使用するのがよい。すなわち、排他的論理
和回路11は、データ信号D0〜D15を、アドレス信号
A0〜A19の一部で修飾することによって、ブロック転
送の途中における、ワード単位の交換的誤り(特定ワー
ドのアドレスが入れ替わってしまうタイプの誤りをい
う、以下同じ)が発生したことを検出するのが目的であ
るが、この交換的誤りに関与する一方のアドレスが、バ
ンクRAM2cの範囲を越えるような極端な誤りが生じ
たときは、別途用意したワードウェア的、または、ソフ
トウェア的保護方式によって、容易に、これを検出する
ことができるものである。しかしながら、排他的論理和
回路11のビット数を大きくとって、データ信号D0〜
D15の全ビットに対して修飾を加えるようにしてもよい
ことは勿論であり、さらには、排他的論理和回路11に
おける論理演算内容も、その他の、任意の、ビット単位
の論理演算内容に変更してもよいものである。
アドレスデコーダ18に設定するアドレス範囲AD1〜
AD2は、バンクRAM窓口2bまたはバンクRAM2
cのスタートアドレスAD1とエンドアドレスAD2
を、そのまま、固定して使用するものとしたが、これに
代えて、転送元、または、転送先となるべきファイルf
bのスタートアドレスとエンドアドレスとを使用して、
転送の都度、これを可変設定するようにすることもでき
る。これによれば、ファイルfbの範囲を逸脱するよう
な交換的誤りが発生したときは、アドレスデコーダ18
が、その出力信号S2を発生しないので、前記排他的論
理和回路11によるデータ信号D0〜D7の修飾動作に
頼ることなく、チェックサムエラーとして、確実に、誤
り検出が可能となる。
以上の説明においては、ファイルfb、fm間のデータ
転送は、1ワード単位の転送命令を繰り返すことによっ
て実現するように記したが、チェックサム回路10の動
作としては、高速のリピートプリフィックス命令とスト
リング操作命令とを使用するときでも、何ら変更となる
所はない。すなわち、そのときであっても、アドレスバ
ス9a、コントロールバス9b、データバス9cに時系
列的に現われる各信号の内容と順序は、前記説明と同一
であるからである。
また、この実施例においては、アドレう信号A0〜A1
9は20ビットから構成され、データ信号D0〜D15は
16ビットから構成されるとともに、転送動作はワード
単位で行なわれるものとして説明したが、これらの信号
が、他の任意のビット数で構成され、さらには、転送動
作がバイト単位で行なわれたとしても、この発明は、そ
の趣旨を、何わ変更することなく、そのまま適用できる
ものとする。
発明の効果 以上説明したようにこの発明によれば、ブロック転送の
際に、バス上に時系列的に現われるデータ信号をビット
単位に累積加算する全加算器と、該全加算器の出力を貯
えるチェックサムレジスタと、該チェックサムレジスタ
の内容をバスに出力するドライバとを備え、チェックサ
ムレジスタの内容の読取りと消去とができるようになす
とともに、チェックサムをとるべきアドレス範囲を設定
するためのアドレスデコーダを設けることによって、全
加算器とチェックサムレジスタとは、バスに現われるデ
ータ信号を分岐入力して、中央演算装置の処理時間を何
ら消費することなくチェックサムを集積することができ
るので、ソフトウェア的に処理する場合のように、中央
演算装置に余分な処理負担を強いることなく、適確に、
チェックサムをとることができるという、極めて優れた
効果がある。
加えて、バス上に、ワード単位またはバイト単位からな
る転送単位ごとに、データ信号とアドレス信号とが時系
列的に現われる限り、リピートプリフィックス命令とス
トリング操作命令との組合せによるときの如く、高速の
ブロック転送を行なうときにも、確実に、チェックサム
が得られ、しかも、このときも、これらの命令の高速性
を何ら損なうおそれがないという優れた効果もある。
また、すべての入出力信号が、マイクロコンピュータシ
ステムのバスに対して接続し得るものであるから、格別
のメモリチェック回路やメモリプロテクション機能のな
い、既存の、または、標準構成のシステムに対しても、
極めて簡単に付加することができるという実用的な効果
もある。
【図面の簡単な説明】
第1図ないし第4図は実施例を示し、第1図は全体ブロ
ック図、第2図はメモリユニットの構成概念図、第3図
はブロック転送の概念説明図、第4図は要部信号波形説
明図である。 第5図は従来技術を説明するプログラムフローチャート
である。 A0〜A19…アドレス信号 D0〜D15…データ信号 2b…バンクRAM窓口 9…バス 13…全加算器 14…チェックサムレジスタ 15…ドライバ 18…アドレスデコーダ

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】ブロック転送の際に、バス上に時系列的に
    現われるデータ信号をビット単位に加算する全加算器
    と、該全加算器の出力を貯えるチェックサムレジスタ
    と、該チェックサムレジスタの内容を前記バスに出力す
    るドライバとを備え、前記チェックサムレジスタは、任
    意の入出力ポート番号を有する入出力機器として、内容
    の読取りと消去とが可能であるとともに、チェックサム
    をとるべきアドレス範囲を設定するためのアドレスデコ
    ーダを備えて、前記バス上に現われるアドレス信号が、
    前記アドレスデコーダによって設定された範囲内である
    ときにのみ、前記チェックサムをとるようにしたことを
    特徴とするマイクロコンピュータにおけるチェックサム
    回路。
  2. 【請求項2】前記全加算器は、前記バス上のデータ信号
    を、前記バス上のアドレス信号によって修飾して加算す
    ることを特徴とする特許請求の範囲第1項記載のマイク
    ロコンピュータにおけるチェックサム回路。
  3. 【請求項3】前記アドレスデコーダは、バンクRAM窓
    口に相当するアドレス範囲を設定してあることを特徴と
    する特許請求の範囲第1項または第2項記載のマイクロ
    コンピュータにおけるチェックサム回路。
JP61160360A 1986-07-08 1986-07-08 マイクロコンピュータにおけるチェックサム回路 Expired - Lifetime JPH061445B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61160360A JPH061445B2 (ja) 1986-07-08 1986-07-08 マイクロコンピュータにおけるチェックサム回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61160360A JPH061445B2 (ja) 1986-07-08 1986-07-08 マイクロコンピュータにおけるチェックサム回路

Publications (2)

Publication Number Publication Date
JPS6316337A JPS6316337A (ja) 1988-01-23
JPH061445B2 true JPH061445B2 (ja) 1994-01-05

Family

ID=15713290

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61160360A Expired - Lifetime JPH061445B2 (ja) 1986-07-08 1986-07-08 マイクロコンピュータにおけるチェックサム回路

Country Status (1)

Country Link
JP (1) JPH061445B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09111781A (ja) * 1995-10-13 1997-04-28 Takeshi Isshi 間知ブロック擁壁
JPH09235742A (ja) * 1996-03-01 1997-09-09 Takeshi Isshi コンクリートブロック積擁壁

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5111465A (en) * 1989-06-30 1992-05-05 Digital Equipment Corporation Data integrity features for a sort accelerator
JPH075726A (ja) * 1991-12-19 1995-01-10 Fuji Xerox Co Ltd カプセルトナー

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09111781A (ja) * 1995-10-13 1997-04-28 Takeshi Isshi 間知ブロック擁壁
JPH09235742A (ja) * 1996-03-01 1997-09-09 Takeshi Isshi コンクリートブロック積擁壁

Also Published As

Publication number Publication date
JPS6316337A (ja) 1988-01-23

Similar Documents

Publication Publication Date Title
US4375678A (en) Redundant memory arrangement providing simultaneous access
JPS6252637A (ja) デジタルプロセツサ制御
US3887901A (en) Longitudinal parity generator for mainframe memories
JPH0248931B2 (ja)
JPS5926059B2 (ja) 制御回路
JPH061445B2 (ja) マイクロコンピュータにおけるチェックサム回路
JPS6129024B2 (ja)
JPH0283736A (ja) バッファ記憶制御装置のosc検出方式
JPH0756640B2 (ja) 記憶装置
JP2727947B2 (ja) アドレストレース方式
KR920005293B1 (ko) 데이터 처리장치의 메모리 어드레스 할당 방법 및 장치
JPS588357A (ja) 制御記憶装置
JPS62166449A (ja) 論理装置の履歴記憶装置
JPS5936359B2 (ja) デ−タバツフア装置
SU879655A1 (ru) Запоминающее устройство с самоконтролем
JPH05151076A (ja) メモリアドレス拡張制御方式
JPH01137346A (ja) メモリ選択切換装置
JPS6091461A (ja) マイクロプロセツサのデ−タアドレス空間拡張装置
JPS58208997A (ja) 誤り訂正を行なう記憶装置の部分書込みを含む連続動作方式
JPS63118965A (ja) Dmaワ−ド転送方式
JPS61294556A (ja) プログラム誤動作検出方式
JPH03283188A (ja) メモリ・システム
JPH04233052A (ja) 二重化メモリ装置
JPS63317857A (ja) メモリアクセス回路
JPH06110792A (ja) 書き換え可能なpromにおける冗長ビット制御回路