(57)【特許請求の範囲】
【請求項１】
データの読み取り・書き込み時に、連続したｎ個のアドレス（ｎは２以上の整数）に連続してアクセスするバーストアクセスを行う中央演算装置
(１)と、
データメモリ(２)と、
該データメモリ(２)のｎ個のアドレスにあるデータに対応するパリティのビット数は整数ｍ(ｍはｎ未満)で除することができ、パリティメモリ(３) のアドレスのそれぞれに記憶されている情報のビット数は、前記データメモリ(２)の前記連続したｎ個のアドレスに対応するパリティ情報のビット数を前記整数ｍで除した商と同一の数である記憶装置で構成され、前記データメモリ(２)のｎ個のアドレスにあるデータに対応するパリティの全てはｍ個のアドレスに記憶されるようにされたパリティメモリ(３)と、
前記中央演算装置(１)からアドレス指令を受け、前記データメモリ(２)にアドレスを発し、１回のバーストアクセス毎に前記データメモリ(２)によってアクセスされるデータに対応するパリティが格納されているアドレスを前記パリティメモリ(３)に発するメモリコントローラ(４)と、
データ読み取り時に、前記データメモリ(２)の発するデータと前記パリティメモリ(３)の発するパリティとを照合し、合否の判定結果を前記中央演算装置(１)に発するパリティチェック回路(５)と、
データ書き込み時に、前記中央演算装置(１)が前記データメモリ(２)に発するｎ個のデータを受けて、それぞれのパリティを生成し、生成されたパリティのいくつかを一体化して、前記パリティメモリ(３)に発するパリティ生成回路(６)と
を有する
ことを特徴とする数値制御装置。
【請求項２】
前記パリティメモリ(３)の発するパリティを一時保持し、保持しているパリティに対応するデータの読み取り時に保持しているパリティを前記パリティチェック回路(５)に発するラッチ回路(７)を有する
ことを特徴とする請求項１記載の数値制御装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、データの書込・読取時にパリティチェックを行う数値制御装置に関する。特に、データメモリを構成する半導体記憶装置と同一容量の半導体記憶装置でパリティメモリを構成することができるようにする改良に関する。
【０００２】
【従来技術】
数値制御装置において取り扱うデータのの信頼性を高めるためにある一定量のデータ毎にパリティを付加し、パリティチェックをすることがよく行われている。例えば、８ビットのデータ毎にパリティ１ビットを付加する場合、従来は、８ビットのデータを記憶させる８ビット構成の半導体記憶装置と１ビットのパリティを記憶させる１ビット構成の半導体記憶装置とを組み合わせ、例えば、データ幅が３２ビットのメモリの場合は、この組み合わせを４組使用してメモリを構成している。また、データとパリティを一緒にして記憶させる９ビット構成の半導体記憶装置あるいは１８ビット構成の半導体記憶装置を複数組使用して、メモリを構成することもある。
【０００３】
従来技術に係る数値制御装置は一回の読取・書込時に一つのアドレスのみにアクセスしていたので、パリティメモリを構成する半導体記憶装置のビット構成を大きくするにしても、データメモリの一つのアドレスにあるデータに対応するパリティのビット数で制限されていた。
【０００４】
【発明が解決しようとする課題】
ところで、半導体記憶装置の記憶容量は２５６ｋビット、１Ｍビット、４Ｍビットと開発の世代が一代新しくなるにつれ４倍の容量となり、ビット当たりのコストも低減してきたが、この傾向は今後も継続すると見られている。従来技術に係る数値制御装置において、８ビット構成の半導体記憶装置と１ビット構成の半導体記憶装置とでは開発された世代が異なるため、組み合わせて使用する場合メモリメーカの供給に不安がある。また、９ビット構成のメモリあるいは１８ビット構成のメモリは、半導体記憶装置の次の世代が開発されたとき供給されない可能性がある。
【０００５】
また、８ビットのデータ毎にパリティ１ビットを付加する３２ビット幅のメモリにおいて、パリティメモリとして８ビット構成の半導体記憶装置を使用し、一回のアクセスでパリティメモリから呼び出される８ビットの内４ビットはパリティとして用い、残りの４ビットは使用しないでおく方法は、余りにも非効率的な使用方法であり馬鹿げている。
【０００６】
本発明の目的はこれらの問題を解消することにあり、パリティメモリを構成する半導体記憶装置を余すことなく使用でき、同一容量の半導体記憶装置のみを使用する数値制御装置を提供することにあり、その結果、同一世代のメモリのみで記憶装置が構成できるようにすることにある。
【０００７】
【課題を解決するための手段】
上記の目的は、データの読み取り・書き込み時に、連続したｎ個のアドレス（ｎは２以上の整数）に連続してアクセスするバーストアクセスを行う中央演算装置
(１)と、データメモリ(２)と、該データメモリ(２)のｎ個のアドレスにあるデータに対応するパリティのビット数は整数ｍ(ｍはｎ未満)で除することができ、パリティメモリ(３)のアドレスのそれぞれに記憶されている情報のビット数は、前記のデータメモリ(２)の前記の連続したｎ個のアドレスに対応するパリティ情報のビット数を前記の整数ｍで除した商と同一の数である記憶装置で構成され、前記のデータメモリ(２)のｎ個のアドレスにあるデータに対応するパリティの全てはｍ個のアドレスに記憶されるようにされたパリティメモリ(３)と、前記の中央演算装置(１)からアドレス指令を受け、前記のデータメモリ(２)にアドレスを発し、１回のバーストアクセス毎に前記のデータメモリ(２)によってアクセスされるデータに対応するパリティが格納されているアドレスを前記のパリティメモリ(３)に発するメモリコントローラ(４)と、データ読み取り時に、前記のデータメモリ(２)の発するデータと前記のパリティメモリ(３)の発するパリティとを照合し、合否の判定結果を前記の中央演算装置(１)に発するパリティチェック回路(５)と、データ書き込み時に、前記の中央演算装置(１)が前記のデータメモリ(２)に発するｎ個のデータを受けて、それぞれのパリティを生成し、生成されたパリティのいくつかを一体化して、前記のパリティメモリ(３)に発するパリティ生成回路(６)とを有する数値制御装置によって達成される。
【０００８】
そして、前記のパリティメモリ（３）の発するパリティを一時保持し、保持しているパリティに対応するデータの読取時に保持しているパリティを前記のパリティチェック回路（５）に発するラッチ回路（７）を有していると、メモリコントローラ（４）がデータメモリ（２）にアドレスを発する毎にパリティメモリ（３）にアドレスを発する必要がないので都合がよい。
【０００９】
【作用】
従来技術に係る数値制御装置は、一回の読み取り・書き込み時に、一つのアドレスのみにアクセスすることにされていたので、データメモリ２の一つのアドレスに対応するパリティのビット数とパリティメモリ３の一つのアドレスのビット数とを同一にする必要があった。しかし、本願発明に係る数値制御装置は、連続したアドレスに連続してアクセスするバーストアクセス方式を使用することとしており、一回のバーストアクセスでアクセスされるデータに必要なパリティの数が、データメモリへのアクセス回数より少ない数のアドレスに格納されているパリティメモリの総ビット数と同一とされており、一回のバーストアクセスでアクセスされるデータに対応するパリティの全てが一回でアクセスされるよにされており、そのため、パリティメモリにも、データメモリと同一容量・同一世代の半導体記憶装置を使用することができることになり、半導体記憶装置の供給の不安が解消したものである。
【００１０】
本発明に係る数値制御装置は、中央演算装置１が読取・書込時にｎ個（ｎは２以上の整数）の連続したアドレスを連続してアクセスするバーストアクセスを行うことを利用しており、データメモリ２のｎ個のアドレスにあるデータに対応するパリティのビット数と、パリティメモリ３のｍ個（ｍはｎ未満）のアドレスにある合計ビット数とが同一とされており、メモリコントローラ４は中央演算装置１よりアドレス指令を受けるとデータメモリ２にアドレスを発し、一回のバーストアクセス毎にデータメモリ２にアクセスされるデータに対応するパリティが格納されているアドレスをパリティメモリ３に発するようにされている。
【００１１】
バーストアクセスを利用しているため、パリティメモリを構成する半導体記憶装置のビット構成はデータメモリ２の一つのアドレスにあるデータに対応するパリティのビット数で制限される必要はなく、一回のバーストアクセスでアクセスされるアドレスの数に比例して増大させうる。このため、データメモリ２を構成する半導体装置と同一容量の半導体装置を使用することができる。さらに、一回のバーストアクセスにおいて、パリティメモリより呼び出されるすべてのビットはパリティとして有効に使用され、パリティメモリの全記憶容量に対しデータメモリの全記憶容量をパリティ１ビットに対応するデータビット数倍にすれば、パリティメモリを構成する半導体記憶装置を余すことなく使用できる。
【００１２】
【実施例】
以下、図面を参照して、本発明の１実施例に係る数値制御装置についてさらに詳細に説明する。
【００１３】
図１参照
図１は本発明の１実施例に係る数値制御装置のブロック図である。図１において、１は中央演算装置であり、データの読取・書込時に複数の連続したｎ個のアドレス（ｎは２以上の整数）を連続してアクセスするバーストアクセスを行うことができる。２はデータメモリであり、３はパリティメモリであり、４は中央演算装置１からのアドレス信号を受け、データメモリ２とパリティメモリ３とにアドレス信号を発するメモリコントローラである。
【００１４】
５はパリティチェック回路であり、中央（演算または処理）装置１がデータメモリ２に記憶されているデータを読み出す時、データメモリ２に記憶あれているデータと、パリティメモリ３に記憶されているパリティとを比較して、同一か否かを判定し、判定の結果を中央演算装置１に与える機能を有する。なお、７はパリティメモリ３から読み出されたパリティを一時保持するラッチ回路であり、図５に示す実施例において、パリティメモリ３に記憶されているパリティをパリティチェック回路５に与える前に、一時保持する機能を有するものであり、本願発明の実施に必ずしも必須な物ではない。
【００１５】
６はパリティ生成回路であり、中央演算装置１がデータメモリ２にデータを書き込むとき、中央演算装置１が出力するデータが入力され、このデータより偶奇いずれかの予め決められている方のパリティを生成しパリティメモリ３に書き込む機能を有している。
【００１６】
図２参照
図２は３２ビット幅のデータメモリ２と８ビットのデータ毎に１ビットのパリティを有するパリティメモリ３との構成の一例を示す図である。図２において、メモリUUD 、メモリUMD 、メモリLMD とメモリLLD は、それぞれ、８ビット構成の半導体記憶装置である。パリティメモリ３はデータメモリ２を構成している半導体記憶装置と同一容量の８ビット構成半導体記憶装置で構成している。
【００１７】
データメモリ２のアドレス０ＨにあるメモリUUD のデータに対するパリティはパリティメモリ３のアドレス０Ｈのビット７に格納される。以下同様に、メモリUMD のデータに対するパリティはアドレス０Ｈのビット６に、メモリLMD のデータに対するパリティはアドレス０Ｈのビット５に、メモリLLD のデータに対するパリティはアドレス０Ｈのビット４に格納される。さらに、データメモリ２のアドレス１ＨにあるメモリUUD 、メモリUMD 、メモリLMD とメモリLLD とのデータに対するパリティはパリティメモリ３のアドレス０Ｈのビット３乃至ビット０に格納される。同様にして、データメモリ２のアドレス２Ｈと３Ｈとのデータに対するパリティはパリティメモリ３のアドレス１Ｈのビット７乃至ビット０に格納される。
【００１８】
４個の半導体記憶装置、メモリUUD 、メモリUMD 、メモリLMD とメモリLLD との全てのデータに対応するパリティは、１個のパリティメモリ３の容量のちょうど半分になる。このため、実際にはさらに４個の同一容量の８ビット構成半導体記憶装置を用意し、合計８個の半導体記憶装置によりデータメモリ２を構成している。
【００１９】
図３参照
図３は３２ビット幅のデータメモリ２と８ビットのデータ毎に１ビットのパリティを有するパリティメモリ３との構成の他の一例を示している。図３において、メモリUUUD、メモリUUMD、メモリUMUD、メモリUMMD、メモリLMMD、メモリLMLD、メモリLLMDとメモリLLLDは、それぞれ、４ビット構成の半導体記憶装置である。パリティメモリ３はデータメモリ２を構成している半導体記憶装置と同一容量の８ビット構成半導体記憶装置で構成している。
【００２０】
データメモリ２のアドレス０ＨにあるメモリUUUDとメモリUUMDとの計８ビットのデータに対するパリティはパリティメモリ３のアドレス０Ｈのビット７に格納される。以下同様に、メモリUMUDとメモリUMMDとのデータに対するパリティはアドレス０Ｈのビット６に、メモリLMMDとメモリLMLDとのデータに対するパリティはアドレス０Ｈのビット５に、メモリLLMDとメモリLLLDとのデータに対するパリティはアドレス０Ｈのビット４に格納される。さらに、データメモリ２のアドレス１ＨにあるメモリUUUD、メモリUUMD、メモリUMUD、メモリUMMD、メモリLMMD、メモリLMLD、メモリLLMDとメモリLLLDとのデータに対するパリティはパリティメモリ３のアドレス０Ｈのビット３乃至ビット０に格納される。同様にして、データメモリ２のアドレス２Ｈと３Ｈとのデータに対するパリティはパリティメモリ３のアドレス１Ｈのビット７乃至ビット０に格納される。
【００２１】
図３に示す構成においては、データメモリを構成する８個の４ビット構成の半導体記憶装置のデータに対応するパリティの数は、パリティメモリ３を構成する１個の８ビット構成半導体記憶装置のビット数と合致し、パリティメモリ３の容量に過不足はない。
【００２２】
次に、中央演算装置１がバーストアクセスを行って一回に４個の連続したアドレスをメモリコントローラ４に発し、図２または図３に示す構成のデータメモリ２およびパリティメモリ３よりデータを読取り、書込むときのタイムチャートを示す。
【００２３】
図４参照
図４はデータを読取るときのタイムチャートの一例である。図４において、ａとｃとは、それぞれ、は中央演算装置１からのアドレス信号を受けたメモリコントローラ４がデータメモリ２とパリティメモリ３とに発するアドレス信号であり、図中に示されているアドレスが順次アクセスされる。ｂとｄとは、それぞれ、データメモリ２とパリティメモリ３へのリード信号であり、リード信号の立ち上がり時にアクセスされているアドレスのデータメモリ２からデータが、パリティメモリ３からパリティが読取られる。ｅはラッチ回路７が読取ったパリティをラッチするタイミングを示している。
【００２４】
データメモリ２のアドレス０Ｈにある３２ビットのデータが読み取られると、このデータとパリティメモリ３のアドレス０Ｈから読取られたパリティの内ビット７からビット４までのパリティとがパリティチェック回路に送られる（図には示していない）。そして、パリティメモリ３のアドレス０Ｈから読取られたパリティの内ビット３からビット０までのパリティはラッチ回路７に一旦保持されている。次に、データメモリ２のアドレス１Ｈにある３２ビットのデータが読み取られると、このデータとラッチ回路７に保持されていたパリティメモリ３のアドレス０Ｈのビット３からビット０までのパリティとがパリティチェック回路に送られる（図には示していない）。そして、パリティメモリ３のアドレス１Ｈから読取られたビット７からビット０までのパリティはラッチ回路７に一旦保持されている。引き続いて、データメモリ２のアドレス２Ｈにある３２ビットのデータが読み取られると、このデータとラッチ回路７に保持されていたパリティメモリ３のアドレス１Ｈのビット７からビット４までのパリティとがパリティチェック回路に送られる（図には示していない）。最後に、データメモリ２のアドレス３Ｈにある３２ビットのデータが読み取られると、このデータとラッチ回路７に保持されていたパリティメモリ３のアドレス１Ｈのビット３からビット０までのパリティとがパリティチェック回路に送られる（図には示していない）。以上により、一回のバーストリードアクセスを終了する。
【００２５】
なお、バーストリードアクセスがデータメモリのアドレス１Ｈより始まる場合は、データメモリの連続したアドレスであるアドレス２Ｈ、アドレス３Ｈ、アドレス０Ｈを順次アクセスして、一回のバーストリードアクセスを終了する。この時、パリティメモリ３へのアクセスはアドレス０Ｈとアドレス１Ｈとし、ラッチ回路７は読取ったパリティの内そのタイミングで必要なパリティはパリティチェック回路５に送り、他は一旦保持したのち、必要なタイミングにパリティチェック回路５に送ればよい。
【００２６】
本例のように、メモリコントローラ４は、データメモリ２へアクセスする毎にパリティメモリへアクセスする必要はなく、一回のバーストアクセス毎にデータメモリ２にアクセスされるデータに対応するパリティが格納されているアドレスをパリティメモリ３に発するようにすればよい。例えば、パリティメモリのアドレス１Ｈへのアクセスのタイミングを、データメモリのアドレス１Ｈへのアクセスのタイミングでなく、データメモリのアドレス２Ｈへのアクセスのタイミングにしてもよい。
【００２７】
図５参照
図５はデータを読取るときのタイムチャートの他の一例である。図５において、ａ、ｂ、ｃとｄとは図４と同一信号である。図５の例では、パリティメモリ３へのアクセスは、データメモリ２へアクセスする毎に、データメモリ２にあるデータに対応するパリティが格納されているアドレスにアクセスしている。このため、本例の場合には、図１のラッチ回路７は不要となる。すなわち、データメモリ２のアドレス０Ｈにある３２ビットのデータとパリティメモリ３のアドレス０Ｈにあるビット７からビット４までのパリティとがパリティチェック回路に送られる（図には示していない）。次に、データメモリ２のアドレス１Ｈにある３２ビットのデータとパリティメモリ３のアドレス０Ｈにあるビット３からビット０までのパリティとがパリティチェック回路に送られる（図には示していない）。引き続いて、データメモリ２のアドレス２Ｈにある３２ビットのデータとパリティメモリ３のアドレス１Ｈにあるビット７からビット４までのパリティとがパリティチェック回路に送られる（図には示していない）。最後に、データメモリ２のアドレス３Ｈにある３２ビットのデータとパリティメモリ３のアドレス１Ｈにあるビット３からビット０までのパリティとがパリティチェック回路に送られて（図には示していない）、一回のバーストリードアクセスを終了する。
【００２８】
図６参照
図６はデータを書込むときのタイムチャートの一例である。図６において、ａとｃとは、図４と同一であり、データメモリ２とパリティメモリ３とに発するアドレス信号であり、図中に示されているアドレスが順次アクセスされる。ｆとｇとは、それぞれ、データメモリ２とパリティメモリ３へのライト信号であり、ライト信号の立ち上がり時にアクセスされているアドレスのデータメモリ２へデータが、パリティメモリ３へパリティが書込まれる。
【００２９】
データメモリ２はアドレス０Ｈ、１Ｈ、２Ｈ、３Ｈと順次アクセスされて、一回のバーストライトアクセスが終了する。データメモリ２のアドレス０Ｈ、１Ｈがアクセスされている間、パリティメモリ３はアドレス０Ｈがアクセスされる。パリティ生成回路６では、データメモリ２のアドレス０Ｈがアクセスされている間に、パリティメモリ３のアドレス０Ｈのビット７かラビット４までのパリティを生成し、一旦保持し、データメモリ２のアドレス１Ｈがアクセスされている間に、パリティメモリ３のアドレス０Ｈのビット３かラビット０までのパリティを生成し、保持していたビット７からビット４までと一体にして、パリティメモリ３のアドレス０Ｈに書込む（図には示していない）。同様にして、アドレス１Ｈのパリティを生成し、パリティメモリ３のアドレス１Ｈがアクセスされている時、アドレス１Ｈに書込む（図には示していない）。
【００３０】
以上実施例を説明したが、データメモリの１アドレスのデータ幅が３２ビットに限ることも、パリティを付加するデータビットが８ビットに限ることもない。さらに、データメモリ２やパリティメモリ３を構成する半導体記憶装置のビット構成、あるいは、読取・書込のタイミングも実施例に限るものではない。
【００３１】
【発明の効果】
以上説明したとおり、本願発明に係る数値制御装置においては、連続したアドレスに連続してアクセスするバーストアクセスを実行できる中央演算装置が使用されており、一回のバーストアクセスでアクセスされるデータに必要なパリティの数が、データメモリへのアクセス回数より少ない数のアドレスに格納されているパリティメモリの総ビット数と同一とされており、一回のバーストアクセスでアクセスされるデータに対応するパリティの全てが一回でアクセスされるようにされており、そのため、パリティメモリにも、データメモリと同一容量・同一世代の半導体記憶装置を使用することができることになり、半導体記憶装置の供給の不安が解消したものである。
【図面の簡単な説明】
【図１】本発明の１実施例に係る数値制御装置のブロック図である。
【図２】本発明に係るデータメモリとパリティメモリとの構成図の１例である。
【図３】本発明に係るデータメモリとパリティメモリとの構成図の他の１例である。
【図４】本発明に係る数値制御装置のリード時のタイムチャートの１例である。
【図５】本発明に係る数値制御装置のリード時のタイムチャートの他の１例である。
【図６】本発明に係る数値制御装置のライト時のタイムチャートの他の１例である。
【符号の説明】
１    中央演算装置
２    データメモリ
３    パリティメモリ
４    メモリコントローラ
５    パリティチェック回路
６    パリティ生成回路
７    ラッチ回路
【図１】
0003655658.tif 000002
【図２】
0003655658.tif 000003
【図３】
0003655658.tif 000004
【図４】
0003655658.tif 000005
【図５】
0003655658.tif 000006
【図６】
0003655658.tif 000007