JPH06282449A - メモリコントローラ - Google Patents

メモリコントローラ

Info

Publication number
JPH06282449A
JPH06282449A JP5070402A JP7040293A JPH06282449A JP H06282449 A JPH06282449 A JP H06282449A JP 5070402 A JP5070402 A JP 5070402A JP 7040293 A JP7040293 A JP 7040293A JP H06282449 A JPH06282449 A JP H06282449A
Authority
JP
Japan
Prior art keywords
memory
signal
data
parity
vertical parity
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
JP5070402A
Other languages
English (en)
Inventor
Hiroshi Tanuma
博志 田沼
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP5070402A priority Critical patent/JPH06282449A/ja
Publication of JPH06282449A publication Critical patent/JPH06282449A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 (修正有) 【目的】 メモリのビットエラー訂正において、水平パ
リティ及び垂直パリティを利用し、メモリの使用効率を
おとすことなくデータのエラー訂正を行う。 【構成】 メインメモリのアドレス制御及びチップセレ
クト制御を行うアドレスコントロール部、垂直パリティ
メモリのアドレス制御及びチップセレクト制御を行う垂
直バリティアドレスコントロール部、メインメモリ及び
垂直パリティメモリのリード及びライト制御を行うリー
ドライト制御部、メインメモリのデータ制御及び水平パ
リティの生成検知制御を行うメインメモリデータ制御
部、並びに垂直パリティメモリのデータ制御を行う垂直
パリティメモリデータ制御部を具備する。また、データ
を書き込む際に垂直パリティを同時に更新するためメモ
リアクセスの効率も下げることがない。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はメモリコントローラに関
し、特にパリティの生成及び検知に関する。
【0002】
【従来の技術】従来の水平パリティ及び垂直パリティを
利用しビット誤り訂正を目的とした回路は、特開昭62
−35198号公報などに示されるように、メモリ半導
体チップ内に訂正用の論理回路及びメモリセルを選択す
るセレクタ回路を有していた。
【0003】
【発明が解決しようとする課題】従来の水平パリティ及
び垂直パリティを利用しビット誤り訂正を目的とした回
路は、メモリ半導体内に訂正用の論理回路及びメモリセ
ルを選択するセレクタ回路を有しており、また原理上セ
レクタ回路はメモリセルが構成するマトリックス(行、
列)分が必要でありチップ当りコストアップとなる。ま
た、従来の方式はメモリ半導体内のワード線の駆動を利
用しており、ビット誤り訂正回路を半導体外で構成する
ことができない。
【0004】本発明の課題は、本発明のメモリコントロ
ーラは、水平パリティ及び垂直パリティの生成検知を制
御できるので、メモリの使用効率をおとすことなくデー
タのエラー訂正が実施できるメモリコントローラを提供
することにある。
【0005】また、本発明の他の課題は、データを書き
込む時に、水平パリティ及び垂直パリティを同時に更新
することができるので、メモリへのランダムアクセスが
可能となり、さらにメモリアクセスのアドレス順序の制
限等が無くなるためメモリアクセスの効率をおとすこと
がないメモリコントローラを提供することにある。
【0006】
【課題を解決するための手段】本発明によれば、メイン
メモリのアドレス制御とチップセレクト制御を行うアド
レスコントロール部と、垂直パリティメモリのアドレス
制御とチップセレクト制御を行う垂直パリティアドレス
コントロール部と、メインメモリと垂直パリティメモリ
のリード及びライト制御を行うリードライト制御部と、
メインメモリのデータ制御と水平パリティの生成検知制
御を行うメインメモリデータ制御部と、垂直パリティメ
モリのデータ制御を行う垂直パリティメモリデータ制御
部とを具備することを特徴とするメモリコントローラが
得られる。
【0007】
【実施例】次に、本発明の実施例を図面に基いて詳細に
説明する。
【0008】水平パリティと垂直パリティを利用したデ
ータ訂正の原理と有効性は従来の技術で既知となってい
るので特にここでは述べない。
【0009】図1は、水平パリティを含んだメインメモ
リと垂直パリティメモリの対応を示したものである。メ
インメモリ(水平パリティ除く)と垂直パリティメモリ
のデータ幅は同一である。メインメモリ(水平パリティ
含む)のアドレス0からアドレスN−1までのエリアに
対し、垂直パリティメモリのアドレス0が対応してい
る。即ちアドレス0からアドレスN−1までのデータ及
び水平パリティに対する垂直パリティが垂直パリティメ
モリのアドレス0に格納される。以降同様に、メインメ
モリのデータ及び水平パリティのアドレスNからアドレ
ス2N−1までの垂直パリティが、垂直パリティメモリ
のアドレス1に格納される。水平パリティと垂直パリテ
ィを利用したデータ訂正の原理からいえば、図1の例で
示した様な、メインメモリのデータと水平パリティをア
ドレスに対し等分に分割しそれぞれに垂直パリティを有
する必要はないが、ある大きさで等分に分割しておくこ
とにより、パリティエラー発生の訂正処理時間を短縮さ
せることができる。
【0010】図2は、8ビットデータバスのメインメモ
リ構成に対し、8バイト長毎に垂直パリティデータを対
応させた例である。アドレス0の1バイト長のデータ
(D00,D01…D07)に対し水平パリティP0 が対応す
る。以降同様にして、アドレス1の1バイト長のデータ
(D10,D11…D17)に対し水平パリティP1 が対応す
る。本例では8バイト長毎に垂直パリティを生成してい
るので、データD00,D10…D70の8ビットのデータに
対し垂直パリティメモリのアドレス0の1ビットV00
対応する。以降同様にデータD07,D17…D77のデータ
に対しV07が対応し、データD80,D90…D110 のデー
タに対し、V10が対応する。
【0011】次に、動作の概略を図2および図3に基い
て説明する。
【0012】まず、メインメモリを0クリアする。水平
パリティは、本発明のメモリコントローラ1により自動
的に0クリアされる。垂直パリティメモリもメモリコン
トローラ1を通し直接アクセス可能であり、0クリアさ
れる。書き込み時に、アドレス0からアドレス7がアク
セスされた場合は、垂直パリティメモリのアドレス0の
データV00,V01…V07が本発明のメモリコントローラ
1により自動的に更新される。書き込み時に、アドレス
8からアドレスFがアクセスされた場合は、垂直パリテ
ィメモリのアドレス1のV10,V11…V17が更新され
る。他のアドレスにアクセスした場合の垂直パリティの
更新も同様である。データ読み出し時には、水平パリテ
ィの検知のみを行う。例えばアドレス0のデータ読み出
し時にパリティエラーが発生した場合、データD00,D
01…D07のうち1ビットのデータ化けが予想される。こ
の為システムは、ソフト的にアドレス0からアドレス7
までのデータに対し垂直パリティを生成し、その後垂直
パリティメモリのアドレス0のデータを読み出し比較す
る。この時V06の値が、不一致であればD06がビット化
けを発生したこととなり、データ訂正が可能となる。パ
リティエラー発生時はソフト的に比較用に垂直パリティ
を生成する必要がある為、システムの処理速度に応じ、
図1で示したアドレスの分割を決定しておく必要があ
る。図2の例では8バイト長で分割しているが、16バ
イト長、32バイト長毎でもよい。
【0013】次に図4、図5、図6および図7を参照
し、メモリコントローラ1の動作タイムチャートを説明
する。
【0014】図4、図5はメインメモリクリア及び水平
パリティメモリクリアのタイムチャートである。システ
ムの立ち上げ直後は、メインメモリ2(水平パリティ含
む)及び垂直パリティメモリ3のデータをクリアする必
要がある。メモリコントローラ1を使用する場合、AD
CONT信号及びVPEN信号をLowレベルとする事
により、メインメモリ2に対し直接にデータの書き込み
及びデータの読み出しが可能となる。ADCONT信号
をLowレベル、VPEN信号をHighレベルにする
事により、垂直パリティメモリ3に対し、直接にデータ
の書き込み及びデータの読み出しが可能となる。
【0015】図6はデータライト時の垂直パリティ生成
ライトタイミングである。通常の動作ではADCONT
信号をHighレベル、VPEN信号をLowレベルと
しておく。ADDR*信号の入力に対し、規定の値を減
算したアドレス値がVPADD*信号として出力され
る。図2の例でいえば、ADDR*信号の値に対し、下
位3ビットの値を省略した値がVPADD*信号として
出力される。WE信号によりMRD信号及びVPRD信
号及びVPWE信号が生成される。MRD信号及びVP
RD信号により、メインメモリ2のデータであるMDA
TA*信号が読み出され、同時にVPRD信号により垂
直パリティメモリ3の垂直パリティであるVPD*信号
が読み出される。書き込むデータであるDATA*信号
と、書き込む前のデータであるMDATA*信号がメモ
リコントローラ1の内部でビット毎に比較され、書き込
む前のデータと書き込むデータが異なっている場合は、
該当ビットの垂直パリティのビット(VPD*信号のビ
ット)を反転させて、VPRD信号の立ち上りで、新た
にVPD*信号として出力する。更新されたVPD*信
号はVPWE信号の立ち上りで垂直パリティメモリ3に
書き込まれる。以上簡単にまとめると、データを書き込
む際に、書き込む前に書かれていたデータを読み出し、
書き込むデータと比較し、垂直パリティの値を更新する
のである。
【0016】図7は、データリード時の水平パリティチ
ェックタイミングである。ADCONT信号はHigh
レベル、VPEN信号はLowレベルである。RD信号
により、MRD信号がアクティブとなり、MDATA*
信号及びHPD信号がメインメモリ2より読み出され
る。MRD信号の立ち上りによりパリティチェックが実
施されHPERR信号がチェックされる。HPERR信
号がHighレベルとなるとパリティエラーが発生した
こととなる。HPERR信号がHighレベルになると
システム側はADCONT信号及びVPEN信号をLo
wレベルとし、パリティエラーが発生したアドレスに対
応したメモリエリアを読み出し、該当のメモリエリアの
垂直パリティを計算する。次にVPEN信号をHigh
レベルとし該当のメモリエリアに対応した垂直パリティ
メモリのデータを垂直パリティメモリ3から読み出し、
計算した値と比較し、データ破壊の発生したビットを修
正する。
【0017】修正方法で図2の例で説明すると次の様に
なる。アドレス7を読み出した時にパリティエラーが発
生した場合、システムはADCNT信号及びVPEN信
号をLowレベルとし、アドレス0からアドレス7を順
次読み出し垂直パリティの値を求める。次にVPEN信
号をHighレベルとし、垂直パリティメモリ3のアド
レス0から垂直パリティデータを読み出し、計算した値
と比較する。0ビット目で不一致が発生していれば、D
70がデータ破壊を発生したこととなる。システムはVP
EN信号をLowレベルとし、D70を反転したデータを
メインメモリ2のアドレス7に書き込む。ADCONT
信号をHighレベルとし、システムは通常のメモリア
クセスモードに戻る。
【0018】図8は本発明の1実施例をしての回路の一
部を示しており、図9は本発明の1実施例をしての回路
の残りの部分を示している。図8において、デコーダ4
はアドレス信号であるADDR*信号をデコードし、メ
インメモリ2に対するチップセレクト信号であるMCS
*信号を生成する。減算器5は、ADDR*信号に対
し、図1で示したメインメモリ2と垂直パリティメモリ
3のアドレス対応に従い垂直パリティメモリ3に対する
アドレス信号であるVPADD*信号を生成する。デコ
ーダ6はVPADD*信号をデコードし、垂直パリティ
メモリ3に対するチップセレクト信号であるVPCS*
信号を生成する。ORゲート7は、WE信号およびVP
EN信号を受けてMWE信号を生成する。ORゲート8
は、VPEN信号とRD信号を受けて出力をセレクタ9
に与える。
【0019】前記セレクタ9はADCONT信号がLo
wの時ゲート8の信号をMRD信号として出力し、AD
CONT信号がHighの時、ANDゲート11の信号
をMRD信号として出力する。ORゲート10は、WE
信号を直接に受けると共にこのWE信号を遅延素子27
およびNOT回路を介して受けて、出力をANDゲート
11およびORゲート12に与える。ANDゲート11
は、ORゲート10の出力およびRD信号を受けて前記
セレクタ9に出力を与える。
【0020】前記ORゲート12は、前記ANDゲート
11の出力を受けると共にADCONT信号をNOT回
路を介して受けて、出力をANDゲート13に与える。
ORゲート14は、RD信号を受けると共にVPEN信
号をNOT回路を介して受けて、出力をANDゲート1
3に与える。ANDゲート13は、ORゲート12およ
びORゲート14の出力を受けてVPRD信号を出力す
る。
【0021】ORゲート15は、WE信号を受けると共
にADCONT信号をNOT回路を介して受けて、出力
をANDゲート16に与える。ORゲート17は、WE
信号を受けると共にWPEN信号をNOT回路を介して
受けて、出力をANDゲート16に与える。ANDゲー
ト16は、ORゲート15およびORゲート17の出力
を受けて、VPWE信号を出力する。
【0022】図9に示すように、ANDゲート18は、
WE0信号およびMRD0信号をNOT回路を介してう
けて、バッファ制御信号を出力してMDATAI*信号
の出力を制御するバッファに与える。ANDゲート19
は、VPEN信号およびVPRD0信号をNOT回路を
介してうけて、バッファ制御信号を出力してVPDI*
信号の出力を制御するバッファに与える。
【0023】前記MDATAI*信号、前記VPDI*
信号およびDATA*信号は、バッファを介してMDA
TAO信号として出力されると共にパリティ生成回路2
1に与えられる。ANDゲート20は、MRD0信号お
よびWE0信号をNOT回路を介して受けて、バッファ
制御信号を出力してMDATAO信号の出力を制御する
バッファに与えて、MDATA*信号およびMDATA
I*信号を出力させる。
【0024】パリティ生成検知回路21は、水平パリテ
ィの生成及び検知を行う。EXOR23はメインメモリ
2にデータライト時に事前に書き込まれたデータである
MDATAO*信号と書き込むデタであるMDATAI
*信号とを比較する。具体的にはMDATAO*信号と
MDATAI*信号の排他論理結果を各ビット毎に出力
する。EXOR24は、EXOR23の出力信号とVP
DI*信号とを比較する。EXOR23と同様、EXO
R23の出力信号とVPDI*信号の排他論理結果を各
ビット毎に出力する。EXOR23とEXOR24とに
より、パリティ値が変更となるビットを検知し、変更と
なるビットに対し、垂直パリティのビットを反転するわ
けである。Latch25はEXOR24信号の出力を
ラッチする。ゲート26の出力信号の立ち上りエッジで
EXOR24の出力信号をラッチする。
【0025】
【発明の効果】以上説明した様に、本発明のメモリコン
トローラは、水平パリティ及び垂直パリティの生成検知
を制御できるので、メモリの使用効率をおとすことなく
データのエラー訂正が実施できる。
【0026】また、本発明のメモリコントローラは、デ
ータを書き込む時に、水平パリティ及び垂直パリティを
同時に更新することができるので、メモリへのランダム
アクセスが可能となり、さらにメモリアクセスのアドレ
ス順序の制限等が無くなるためメモリアクセスの効率を
おとすことがない。
【図面の簡単な説明】
【図1】本発明を使用した時のメインメモリと垂直パリ
ティメモリの対応関係を説明するための図である。
【図2】本発明を使用した場合における8ビットデータ
バス時のデータと水平パリティ及び垂直パリティの対応
関係を説明するための図である。
【図3】本発明の1実施例を示すブロック図である。
【図4】図3の実施例におけるメインメモリのデータク
リアのタイミングを説明するための図である。
【図5】図3の実施例における垂直パリティメモリのデ
ータクリアのタイミングを説明するための図である。
【図6】図3の実施例におけるメインメモリへデータ書
き込み時の垂直パリティの生成と垂直パリティの書き込
みタイミングを説明するための図である。
【図7】図3の実施例におけるメインメモリのデータ読
み出し時の水平パリティチェックタイミングを説明する
ための図である。
【図8】本発明の1実施例としての回路の一部を示す回
路図である。
【図9】本発明の1実施例としての回路の一部を示す回
路図である。
【符号の説明】
1 メモリコントローラ 2 メインメモリ 3 垂直パリティメモリ 4 デコーダ 5 減算器 6 デコーダ 9 セレクタ 21 パリティ生成検知回路 23 EXOR 24 EXOR 25 Latch

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 メインメモリのアドレス制御とチップセ
    レクト制御を行うアドレスコントロール部と、垂直パリ
    ティメモリのアドレス制御とチップセレクト制御を行う
    垂直パリティアドレスコントロール部と、メインメモリ
    と垂直パリティメモリのリード及びライト制御を行うリ
    ードライト制御部と、メインメモリのデータ制御と水平
    パリティの生成検知制御を行うメインメモリデータ制御
    部と、垂直パリティメモリのデータ制御を行う垂直パリ
    ティメモリデータ制御部とを具備することを特徴とする
    メモリコントローラ。
  2. 【請求項2】 請求項1に記載のメモリコントローラに
    おいて、前記リードライト制御部がデータを前記メイン
    メモリに書き込むのと同時に前記メインメモリデータ制
    御部が水平パリティを更新し、かつ、前記垂直パリティ
    メモリデータ制御部が垂直パリティを更新することを特
    徴とするメモリコントローラ。
JP5070402A 1993-03-29 1993-03-29 メモリコントローラ Pending JPH06282449A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5070402A JPH06282449A (ja) 1993-03-29 1993-03-29 メモリコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5070402A JPH06282449A (ja) 1993-03-29 1993-03-29 メモリコントローラ

Publications (1)

Publication Number Publication Date
JPH06282449A true JPH06282449A (ja) 1994-10-07

Family

ID=13430432

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5070402A Pending JPH06282449A (ja) 1993-03-29 1993-03-29 メモリコントローラ

Country Status (1)

Country Link
JP (1) JPH06282449A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014002222A1 (ja) * 2012-06-28 2014-01-03 三菱電機株式会社 リードリクエスト処理装置
WO2014083811A1 (ja) * 2012-11-30 2014-06-05 学校法人中央大学 半導体記憶装置およびその制御方法
JP2014110071A (ja) * 2012-11-30 2014-06-12 Taiwan Semiconductor Manufactuaring Co Ltd エラー訂正パリティビットによるmramスマートビット書き込みアルゴリズムの方法および装置
CN104425018A (zh) * 2013-08-23 2015-03-18 慧荣科技股份有限公司 存取快闪存储器中储存单元的方法以及使用该方法的装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5545110A (en) * 1978-09-25 1980-03-29 Toshiba Corp Error detection system
JPS5719847A (en) * 1980-07-09 1982-02-02 Nec Corp Parity check system of memory
JPS60118956A (ja) * 1983-11-30 1985-06-26 Fujitsu Ltd メモリシステムのパリテイチエツク方式
JPH03290745A (ja) * 1990-04-09 1991-12-20 Toshiba Corp メモリエラー検出・訂正方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5545110A (en) * 1978-09-25 1980-03-29 Toshiba Corp Error detection system
JPS5719847A (en) * 1980-07-09 1982-02-02 Nec Corp Parity check system of memory
JPS60118956A (ja) * 1983-11-30 1985-06-26 Fujitsu Ltd メモリシステムのパリテイチエツク方式
JPH03290745A (ja) * 1990-04-09 1991-12-20 Toshiba Corp メモリエラー検出・訂正方法

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI492237B (zh) * 2012-06-28 2015-07-11 Mitsubishi Electric Corp Read request processing device
JP5623677B2 (ja) * 2012-06-28 2014-11-12 三菱電機株式会社 リードリクエスト処理装置
WO2014002222A1 (ja) * 2012-06-28 2014-01-03 三菱電機株式会社 リードリクエスト処理装置
US9465691B2 (en) 2012-06-28 2016-10-11 Mitsubishi Electric Corporation Read request processing apparatus
WO2014083811A1 (ja) * 2012-11-30 2014-06-05 学校法人中央大学 半導体記憶装置およびその制御方法
JP2014110071A (ja) * 2012-11-30 2014-06-12 Taiwan Semiconductor Manufactuaring Co Ltd エラー訂正パリティビットによるmramスマートビット書き込みアルゴリズムの方法および装置
KR20150079917A (ko) * 2012-11-30 2015-07-08 가코호진 쥬오 다이가쿠 반도체 기억 장치 및 그 제어 방법
US9110829B2 (en) 2012-11-30 2015-08-18 Taiwan Semiconductor Manufacturing Co. Ltd. MRAM smart bit write algorithm with error correction parity bits
JPWO2014083811A1 (ja) * 2012-11-30 2017-01-05 学校法人 中央大学 半導体記憶装置およびその制御方法
US9684464B2 (en) 2012-11-30 2017-06-20 Chuo University Semiconductor storage device and control method for same
CN104425018A (zh) * 2013-08-23 2015-03-18 慧荣科技股份有限公司 存取快闪存储器中储存单元的方法以及使用该方法的装置
US9977714B2 (en) 2013-08-23 2018-05-22 Silicon Motion, Inc. Methods for programming a storage unit of a flash memory in multiple stages and apparatuses using the same
CN104425018B (zh) * 2013-08-23 2019-07-23 慧荣科技股份有限公司 存取快闪存储器中储存单元的方法以及使用该方法的装置

Similar Documents

Publication Publication Date Title
US4884271A (en) Error checking and correcting for read-modified-write operations
EP0138964B1 (en) Apparatus for controlling access to a memory
US4712216A (en) Method and device for correcting errors in memories
US4319356A (en) Self-correcting memory system
US20060112321A1 (en) Transparent error correcting memory that supports partial-word write
EP0837392A1 (en) A memory device with an error correction function
JPH0757496A (ja) 記憶装置の誤り検出装置及び記憶装置の誤り検出と訂正をおこなう方法
JP2669303B2 (ja) ビットエラー訂正機能付き半導体メモリ
US7246257B2 (en) Computer system and memory control method thereof
JPH06282449A (ja) メモリコントローラ
JP3123855B2 (ja) メモリ装置のパトロール制御回路
JPS62242258A (ja) 記憶装置
JPH0675864A (ja) メモリエラー回復方式
JP3098363B2 (ja) 記憶装置
JPH0689237A (ja) メモリ制御システム
JPS60113394A (ja) エラ−訂正方式
JPH02143352A (ja) メモリエラー検出修正方式
JPH06250936A (ja) コンピュータシステム
JPH0588993A (ja) メモリ制御システム
JPH0391198A (ja) メモリ再書き込み方式
JPH06139153A (ja) メモリ制御システム
JPH05158809A (ja) メモリエラー自動修正ライト方式
JPS6041151A (ja) メモリエラ−訂正方式
JPH08212143A (ja) パリティ制御方式
JPH05158810A (ja) 誤り検出回路

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19950207