JP2003337760A - 半導体集積回路及び半導体集積回路の設計方法 - Google Patents

半導体集積回路及び半導体集積回路の設計方法

Info

Publication number
JP2003337760A
JP2003337760A JP2002144259A JP2002144259A JP2003337760A JP 2003337760 A JP2003337760 A JP 2003337760A JP 2002144259 A JP2002144259 A JP 2002144259A JP 2002144259 A JP2002144259 A JP 2002144259A JP 2003337760 A JP2003337760 A JP 2003337760A
Authority
JP
Japan
Prior art keywords
error correction
memory
data
correction code
semiconductor integrated
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.)
Withdrawn
Application number
JP2002144259A
Other languages
English (en)
Inventor
Takahiro Oga
孝寛 大賀
Toshio Yamada
利夫 山田
Kazumasa Yanagisawa
一正 柳沢
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2002144259A priority Critical patent/JP2003337760A/ja
Publication of JP2003337760A publication Critical patent/JP2003337760A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

(57)【要約】 【課題】 大規模論理回路とメモリを搭載したシステム
オンチップ形態の所謂システムLSIにおけるソフトエ
ラー耐性を向上させる。 【解決手段】 データを格納する第1メモリ(5)と、
前記第1メモリに格納するデータの誤り訂正コードを生
成する誤り訂正コード生成手段(8)と、前記誤り訂正
コードを格納する第2メモリ(6)と、前記第2メモリ
から読み出された誤り訂正コードに基づいて第1メモリ
から読み出されたデータに対する誤り訂正が可能な誤り
訂正手段(8)と、前記第1メモリ及び第2メモリに対
するアクセス制御が可能なアクセス制御手段(9)と、
を1個の半導体基板に有する。大規模論理回路とメモリ
を搭載した所謂システムLSIにおいて、オンチップの
第1メモリは誤り訂正コードによる誤り訂正が可能にさ
れるから、その記憶情報に対しするソフトエラー耐性を
向上させることができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、メモリ部に対する
誤り訂正機能を有する半導体集積回路並びにその設計方
法に関し、例えば、複数のメモリモジュール及びそれを
用いる論理モジュール等を1個の半導体基板に搭載して
成るシステムLSI若しくはマイクロコンピュータに適
用して有効な技術に関する。
【0002】
【従来の技術】半導体メモリの高集積化に伴ってα線な
どによるソフトエラーの発生が顕在化している。ソフト
エラーとは、α線や中性子により記録情報が反転する現
象を言う。このソフトエラー対策としてECC(Error
Check and Correct)等の誤り訂正コードの利用が知ら
れている。半導体メモリ等による情報記憶の信頼性を向
上させるにはECC等の誤り訂正コードの利用が可能で
ある。ECCなどの手段をDRAM(Dynamic Random A
ccess Memory)等に適用したコンピュータシステムにつ
いて、特開平10−340586号、特開平8−161
884号、特開平6−290114号公報等に記載があ
る。
【0003】
【発明が解決しようとする課題】本発明者は大規模論理
回路とメモリを搭載したシステムオンチップ形態の所謂
システムLSIについて検討した。これによれば、シス
テムLSIには大規模なDRAMやSRAMが高集積化
され、それらはレジスタやバッファなどに多用される。
大規模論理回路による演算処理上、ソフトエラーによる
不所望なビット反転は大規模論理回路による演算処理に
影響を与え、オンチップされたシステムに不安定を招
き、その信頼性を低下させる虞のあることが本発明者に
よって明らかにされた。
【0004】また、半導体集積回路の設計ではIPモジ
ュールと称されるようなHDL(Hardware Description
Language)記述の回路モジュールを用いる手法が多用
され、必要な記憶容量のメモリを得るのに複数個のメモ
リモジュールを用いたり、また、128ビットのような
並列ビット数の多いバスに複数のメモリモジュールを並
列的に接続することが行われる。このとき、メモリモジ
ュール毎に誤り訂正コードを形成するなら、誤り訂正コ
ードを形成し、誤り訂正コードを格納し、誤り訂正を行
うための回路規模が全体的に大きくなることが本発明者
によって明らかにされた。
【0005】更に、システムの要求仕様にしたがってシ
ステムLSIに複数個のメモリモジュールを搭載し、そ
の一部に誤り訂正符号を適用するとき、誤り訂正符号の
適用に必用な誤り訂正符号の生成回路、誤り訂正符号に
基づく誤り訂正回路を個別的に設計したのでは、メモリ
モジュールなどを部品化して設計効率を向上させようと
する設計手法に対して、設計効率化が低下する虞のある
ことが本発明者によって見出された。
【0006】本発明の目的は、大規模論理回路とメモリ
を搭載したシステムオンチップ形態の所謂システムLS
Iにおけるソフトエラー耐性を向上させることができる
半導体集積回路を提供することにある。
【0007】本発明の別の目的は、オンチップメモリに
対するソフトエラー耐性を向上させるとき、誤り訂正コ
ードを形成し、誤り訂正コードを格納し、誤り訂正を行
うための回路規模を縮小する事ができる半導体集積回路
を提供することにある。
【0008】本発明の更に別の目的は、オンチップする
複数個のメモリモジュールの一部に対して誤り訂正を適
用するとき、それに必要な誤り訂正符号の生成回路、誤
り訂正符号に基づく誤り訂正回路の設計を効率化するこ
とができる半導体集積回路の設計方法を提供することに
ある。
【0009】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。
【0010】
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。
【0011】すなわち、半導体集積回路は、データを格
納する第1メモリと、前記第1メモリにデータバスを介
して接続され前記第1メモリに格納するデータの誤り訂
正コードを生成する誤り訂正コード生成手段と、前記ア
ドレスバス及びデータバスに接続され前記誤り訂正コー
ドを格納する第2メモリと、前記第2メモリから読み出
された誤り訂正コードに基づいて第1メモリから読み出
されたデータに対する誤り訂正が可能な誤り訂正手段
と、アドレスバス及びデータバスを介して前記第1メモ
リ及び第2メモリに対するアクセス制御が可能なアクセ
ス制御手段と、を1個の半導体基板に有して成る。
【0012】上記半導体集積回路を、大規模論理回路と
メモリを搭載したシステムオンチップ形態の所謂システ
ムLSIとして構成するとき、オンチップの第1メモリ
は誤り訂正コードによる誤り訂正が可能にされるから、
その記憶情報に対しするソフトエラー耐性を向上させる
ことができる。
【0013】具体的な態様として、前記アドレスバス及
びデータバスを介して前記アクセス制御手段によりアク
セス制御可能な第3メモリを更に有してよい。要する
に、上記大規模論理回路とメモリを搭載したシステムオ
ンチップ形態の所謂システムLSIにおいて、必ずしも
全てのオンチップメモリに対して誤り訂正機能を採用す
る必要はなく、システム動作上、特に高い信頼性を要す
る一部のメモリに対して誤り訂正機能を採用すればよ
い。
【0014】具体的な態様の一つとして、前記第1メモ
リの読み出しデータを前記誤り訂正手段による訂正処理
を省いてデータバスに供給可能とする選択手段を採用し
てもよい。誤り訂正処理には少なからず時間を要し、高
速読み出しを第一義とする用途の場合には、誤り訂正処
理を省略して、その要求に答えることが可能である。例
えば、第1メモリがデータバッファに利用される場合、
セキュリティーデータのように誤りの発生を極力防止す
ることが必要な場合には誤り訂正処理を選択し、画像デ
ータのように一部にデータ誤りを生じても致命的なエラ
ーに成らないような場合には誤り訂正処理を選択すれば
よい。
【0015】前記アクセス制御手段は前記選択手段によ
る動作を指定する制御信号を出力してよい。誤り訂正処
理の有無によりアクセスタイミングが相違することにな
るので、そのような制御をアクセス制御手段を介して行
なうのが好都合である。
【0016】複数個の第1メモリの夫々に対して第2メ
モリ、誤り訂正コード生成手段及び訂正手段を個別に配
置してよい。但し、誤り訂正符号は第1メモリ毎に生成
しなければならないから、結果として、複数個の第1メ
モリ全体として必要な誤り訂正コードのビット数は多く
なる。
【0017】複数個の第1メモリ全体として必要な誤り
訂正コードのビット数を少なくするには、複数個の第1
メモリ全体に共通の誤り訂正コードを採用すればよい。
即ち、複数個の第1メモリのアドレス入力端子を前記ア
ドレスバスに共通接続し、前記複数個の第1メモリのデ
ータ入出力端子をデータバスに個別接続する。前記第2
メモリには前記複数個の第1メモリに対する並列アクセ
ス単位のデータに共通化された誤り訂正コードを格納す
る。前記誤り訂正コード生成手段は前記並列アクセス単
位のデータに共通化された誤り訂正コードを生成し、ま
た、前記訂正手段は前記第2メモリから読み出された誤
り訂正コードに基づいて複数の第1メモリから並列に読
み出されたデータに対する誤り訂正をおこなう。但し、
この場合には、誤り訂正精度が低下することに注意を要
する。
【0018】本発明に係る半導体集積回路の設計方法
は、メモリ部に対する誤り訂正機能を有する半導体集積
回路の設計方法であって、論理設計データに対し、メモ
リ部を構成するどのメモリモジュールを誤り訂正機能の
対象にするかを指定する第1処理と、前記第1処理で指
定された単数又は複数のメモリモジュールの並列データ
入出力ビット数に応じた論理規模で、誤り訂正コードを
格納するメモリモジュールを論理合成する第2処理と、
前記第1処理で指定された単数又は複数のメモリモジュ
ールの並列データ入出力ビット数に応じた論理規模で、
誤り訂正コードを生成する誤り訂正コード生成手段を論
理合成する第3処理と、前記第1処理で指定された単数
又は複数のメモリモジュールの並列データ入出力ビット
数に応じた論理規模で、誤り訂正を行なう誤り訂正手段
を論理合成する第4処理と、を含む。
【0019】上記設計方法により、オンチップすべき複
数個のメモリモジュールの一部に対して誤り訂正機能を
採用するとき、前記第1処理で誤り訂正対象のメモリモ
ジュールを指定するだけで、それに必要な誤り訂正符号
の生成回路及び誤り訂正回路の設計が自動的に行われる
から、誤り訂正機能を採用するときの設計を効率化する
ことができる。
【0020】上記設計方法において、複数個のメモリモ
ジュール全体に共通の誤り訂正コードを採用する場合へ
の対応を考慮してよい。即ち、前記第1処理により、デ
ータバスの並列ビット数よりも並列データ入出力ビット
数の少ない複数個のメモリモジュールが指定されたと
き、前記第2処理では、第1処理で指定された複数のメ
モリモジュールに対する並列アクセス単位のデータに共
通化された誤り訂正コードを格納可能なビット数のメモ
リモジュールを論理合成すればよい。そして、前記第3
処理では、第1処理で指定された複数のメモリモジュー
ルに対する前記並列アクセス単位のデータに共通化され
た誤り訂正コードを生成する誤り訂正コード生成手段を
論理合成すればよい。更に、前記第4処理では、前記第
2処理で論理合成されたメモリモジュールから読み出さ
れた誤り訂正コードに基づいて第1処理で指定された複
数のメモリモジュールから並列に読み出されたデータに
対する誤り訂正が可能な誤り訂正手段を論理号合成すれ
ばよい。
【0021】
【発明の実施の形態】図1には本発明に係る半導体集積
回路の第1の例が示される。同図に示される半導体集積
回路1Aは、大規模論理回路とメモリを搭載したシステ
ムオンチップ形態の所謂システムLSIとして構成さ
れ、特に制限されないが、半導体基板2の周囲は、ボン
ディングパッドなどの外部接続電極及び外部入出力用バ
ッファ回路配置されたI/O領域3とされ、その内側
に、ロジック部4、メモリモジュール5、ECC用メモ
リモジュール6、及びアナログモジュール7が配置され
る。ロジック部の一部にはECC制御回路8及びデータ
プロセッサ9が構成される。
【0022】尚、前記メモリモジュール5、ECC用メ
モリモジュール6、ECC制御回路8及びデータプロセ
ッサ9等は、HDL記述によって提供されるIPモジュ
ールデータを用いて論理設計されたのであっても、或は
その一部がカスタム設計されたものであってもよい。
【0023】図2には図1のECC機能部分が例示され
る。前記メモリモジュール5はデータを格納する第1メ
モリの一例である。ECC用メモリモジュール6は誤り
訂正コードとしてのECCコードを格納するメモリであ
る。メモリモジュール5及びECC用メモリモジュール
6はデータバスDBS及びアドレスバスABS等を介し
てデータプロセッサ9に接続される。ECC制御回路8
はECCコード生成回路10及び誤り訂正回路11を備
える。
【0024】前記ECCコード生成回路10はデータバ
スDBSに接続され、前記メモリモジュール5に格納す
るデータの誤り訂正コードを生成する誤り訂正コード生
成手段を構成する。前記ECC用メモリモジュール6は
前記アドレスバスABS及びデータバスDBSに接続さ
れ前記ECCコード生成回路10で生成されたECCコ
ードを格納する。前記誤り訂正回路11は、前記第EC
C用メモリモジュール6から読み出されたECCコード
に基づいてメモリモジュール5からの読み出しデータに
対する誤り訂正が可能とされる。データプロセッサ9
は、アドレスバスABS、データバスDBS及び図示を
省略するコントロールバスを介して前記メモリモジュー
ル5及びECC用メモリモジュール6に対するアクセス
制御を行なうことが可能とされる。図示は省略するが、
前記コントロールバスにはデータバス上のデータの方向
を示すリード信号及びライト信号、メモリイネーブル信
号、データストローブ信号等のストローブ信号若しくは
タイミング信号が伝達される。
【0025】システムLSIとして構成された上記半導
体集積回路1Aにおいて、データプロセッサ9がメモリ
モジュール5をライトアクセスするとき、これに並行し
てECC用メモリモジュールもライトアクセスされる。
データプロセッサ9からデータバスに供給されたデータ
に基づいてECCコード生成回路11がECCコードを
生成し、生成されたECCコードがECC用メモリモジ
ュール6に書き込まれ、データバスDBS上の書き込み
データがメモリモジュール5に書き込まれる。双方のメ
モリ5,6に対する書き込みは、データプロセッサ9に
よるウェイトサイクル挿入などのバス制御にて一緒のタ
イミングとされる。
【0026】データプロセッサ9がメモリモジュール5
をリードアクセスするとき、これに並行してECC用メ
モリモジュールもリードアクセスされる。誤り訂正回路
11は、メモリモジュール5から読み出されたデータと
ECC用メモリモジュール6から読み出されたデータに
基づいて誤り検出と必要な誤り訂正を行なって、データ
をデータバスDBSに出力する。データプロセッサ9は
誤り訂正処理動作時間分だけ遅れたタイミングでデータ
を取り込む。
【0027】システムLSIを構成する上記半導体集積
回路において、オンチップのメモリモジュール5は誤り
訂正コードによる誤り訂正が可能にされるから、その記
憶情報に対しするソフトエラー耐性を向上させることが
できる。
【0028】図3には本発明に係る半導体集積回路の第
2の例が示される。同図に示される半導体集積回路1B
は、ECC制御回路8をロジック部4とは別の領域に構
成した点が相違される。前記ロジック部4は、特に制限
されないが、カスタムロジックであっても、或はIPモ
ジュールを用いて設計された回路であってもよい。
【0029】図4には本発明に係る半導体集積回路の第
3の例が示される。同図に示される半導体集積回路1C
では、多数のメモリモジュール5A〜5Eの中の一つだ
けECCコードによる誤り訂正対象とした。アナログモ
ジュールは省略されている。上記大規模論理回路とメモ
リを搭載したシステムオンチップ形態の所謂システムL
SIにおいて、必ずしも全てのオンチップメモリモジュ
ールに対して誤り訂正機能を採用する必要はなく、シス
テム動作上、特に高い信頼性を要する一部のメモリモジ
ュール5Eに対して誤り訂正機能を採用している。
【0030】図5には本発明に係る半導体集積回路の第
4の例が示される。同図に示される半導体集積回路1D
では、多数のメモリモジュール5A〜5Eの夫々を個別
的にECCコードによる誤り訂正対象とした。メモリモ
ジュール5A〜5Eに一対一対応でECC用メモリモジ
ュール6A〜6Eと、ECC制御回路8A〜8Eを有す
る。アナログモジュールは省略されている。
【0031】図5の構成において1個当たりのメモリモ
ジュールの入出力データビット数を2とすると、その
データのハミングコードによる1ビット訂正用のECC
コードはn+2ビットとなる。図5の構成では、メモリ
モジュール毎にECCコードを生成して対応するECC
用メモリモジュールに格納するから、全部のメモリモジ
ュール5A〜5Eに対してエラー訂正精度は比較的高い
が、ECCコードは全体で5n+10ビットになる。
【0032】図6には本発明に係る半導体集積回路の第
5の例が示される。同図に示される半導体集積回路1E
では、多数のメモリモジュール5A〜5EのデータにE
CCコードを共通化した。即ち、5個のメモリモジュー
ル5A〜5Eに共通の1個のECC用メモリモジュール
6Fを採用し、1個のECC制御回路8Fを用いる。ア
ナログモジュールは省略されている。
【0033】図6の構成において1個当たりのメモリモ
ジュールの入出力データビット数を2とすると、その
データのハミングコードによる1ビット訂正用のECC
コードはn+2ビットとなる。図6の構成では、5個の
メモリモジュールのデータに対して共通のECCコード
を生成して対応するECC用メモリモジュールに格納す
るから、全部のメモリモジュール5A〜5Eに対してエ
ラー訂正精度は比較的低くなるが、ECCコードは5個
のメモリモジュールのビット幅(アクセス単位とされる
並列データビット数)の和に対するECCコード長にな
るから全体でn+5ビットで済む。
【0034】図7には複数メモリモジュールに対するE
CCコード共通化の具体例が示される。ECC制御回路
8Gを2個のメモリモジュール5A,5Bと1個のEC
C用メモリモジュール6Gに利用する。メモリモジュー
ル5A,5Bの並列データ入出力ビット数は例えば8ビ
ットであり、双方のメモリモジュール5A,5Bのデー
タに共通の1ビット誤り訂正用のECCコードは6ビッ
トであり、例えばこれに合わせてECC用メモリモジュ
ール6Gの並列データ入出力ビット数(ビット幅)は6
ビットとされる。ECC用メモリモジュール6Gの深さ
方向の容量はメモリモジュール5A,5Bの最大の容量
になる。具体的にはメモリモジュール5Bと同じ512
バイトの容量を必要とする。
【0035】各メモリモジュール5A,5B,6Gには
アドレスバスABSが共通接される。データバスのデー
タ信号線はメモリモジュール5A、5B、6Gのデータ
入出力端子に個別接続され、3個のメモリモジュール5
A、5B、6Gの並列アクセス可能にされる。例えばデ
ータバスDBSのデータ信号線DL(i)〜DL(i+
7)がメモリモジュール5Aに、データバスDBSのデ
ータ信号線DL(i+8)〜DL(i+15)がメモリ
モジュール5Bに、データバスDBSのデータ信号線D
L(i+16)〜DL(i+21)がECC用メモリモ
ジュール6Gに接続される。
【0036】ECC制御回路8Gに含まれるECCコー
ド生成回路10はメモリモジュール5A,5Bの並列ア
クセス単位のデータの結合に対して共通化されたECC
コードを生成し、また、前記誤り訂正回路11は前記メ
モリモジュール6Gから読み出されたECCコードに基
づいて2個のメモリモジュール5A,5Bから並列に読
み出されたデータを一塊として誤り訂正を行なう。メモ
リモジュール5A,5B毎にECCコードを生成する構
成を採用した場合には、ECCコードは合わせて10ビ
ット必要になる。
【0037】図8には複数メモリモジュールに対するE
CCコード共通化の更に別の具体例が示される。ECC
制御回路8Hを3個のメモリモジュール5A,5B,5
Cと1個のECC用メモリモジュール6Hに利用する。
メモリモジュール5A,5B、5Cの並列データ入出力
ビット数は夫々相違され、8ビット、16ビット、32
ビットである。3個のメモリモジュール5A,5B,5
Cの並列アクセスデータを一塊としてデータに対する1
ビット誤り訂正用のECCコードは8ビットであり、こ
れに合わせてECC用メモリモジュール6Hの並列デー
タ入出力ビット数は8ビットとされる。ECC用メモリ
モジュール6Hの深さ方向の容量はメモリモジュール5
A,5B,5Cの中の最大の深さ方向の容量に合わせて
512バイトとされる。各メモリモジュール5A,5
B,5C,6Gのアドレス入力端子はアドレスバスAB
Sに共通接され、データ入出力端子はデータバスのデー
タ信号線にメモリモジュール5A、5B、5C,6H毎
に個別接続される。メモリモジュール毎にECCコード
を生成する構成を採用した場合には、5ビット、6ビッ
ト、7ビットのECCコードを夫々用いなければならな
い。
【0038】図9には誤り訂正処理を選択可能とするE
CC機能部分を例示する。ここではECC制御回路8J
はセレクタ12とゲート回路13を有する点が図2の構
成と相違する。セレクタ12は制御信号CNTにて選択
可能な第1入力端子T1と第2入力端子を有する。即
ち、セレクタ12はメモリモジュール5から読み出され
たデータを第1入力端子T1を介してデータバスDBS
に供給する態様と、誤り訂正回路11から出力されるデ
ータを第2入力端子T2を介してデータバスDBSに供
給する態様とを制御信号CNTにて選択する。前記ゲー
ト回路13はデータバスDBSのデータをメモリモジュ
ール5のデータ入力端子に向けて供給する一方向ゲート
として機能する。
【0039】図10には図9のECC機能部分において
データプロセッサ9がメモリモジュール5をライトアク
セスするときの動作態様が例示される。書き込みデータ
はECCコード生成回路10に供給されてECCコード
が生成され、生成されたECCコードがECC用メモリ
モジュール6に書き込まれ、これに並行して書込みデー
タがゲート回路13経由でメモリモジュール5に書き込
まれる。
【0040】図11には上記ライトアクセス動作のタイ
ミングチャートが例示される。ECCコード生成回路1
0によるECCコードの生成には少なからず処理時間を
要し、データプロセッサ9はその間データバスDBS上
に書き込みデータを供給しながら、必要な期間、例えば
クロックの4サイクル期間、ライトアクセスサイクルを
維持する。ライトアクセス動作において前記制御信号C
NTはセレクタ12に対して何れの選択状態であっても
よい。データプロセッサ9によるライトアクセス動作時
において誤り訂正回路11の出力端子は高インピーダン
ス状態にされている。
【0041】図12には図9のECC機能部分において
データプロセッサ9がメモリモジュール5をリードアク
セスするときの動作態様が例示される。データプロセッ
サ9はメモリモジュール5をリードアクセスするとき、
ECCコードによる誤り訂正を行なうときは制御信号C
NTにて入力端子T2を選択する。データプロセッサ9
はメモリモジュール5をリードアクセスするときにEC
Cコードによる誤り訂正を行なわない場合は制御信号C
NTにて入力端子T1を選択する。
【0042】図13にはリードアクセス動作において誤
り訂正を行なう場合のタイミングチャートが例示され
る。誤り訂正回路による誤り処理を完了するタイミング
を待ってデータプロセッサがリードデータを取り込むこ
とができるように、リードサイクルとして例えばクロッ
ク信号の4サイクル分の期間を維持する。
【0043】図14にはリードアクセス動作において誤
り訂正を行なわない場合のタイミングチャートが例示さ
れる。誤り訂正回路による誤り処理を要しない分だけ短
い期間、例えばクロック信号の3イクル分の期間をリー
ドサイクルとする。したがって、高速リードアクセスが
必要な場合には誤り訂正を省いて必要なデータを高速に
取得することができる。
【0044】図15には前記制御信号CNTの生成論理
の一例が示される。データプロセッサ9のバス制御部に
アドレス比較器14とアドレス参照レジスタ15を追加
する。アドレス参照例レジスタ15にはECC機能を用
いるメモリアドレスエリアの情報が命令によって可変可
能に設定される。アドレス比較器14はリードアクセス
アドレスがアドレス参照レジスタ15に設定されたアド
レス範囲に入っているか否かを判定し、アドレス範囲に
入っている場合には前記制御信号CNTをハイレベル
(“H”)にして前記セレクタ12に入力端子T2を選
択させ、誤り訂正回路11による訂正処理の結果データ
をデータバスDBSに出力させる。このとき、データプ
ロセッサ9のバス制御部は4クロックサイクルでリード
サイクルを制御する。前記アドレス範囲に入っていない
と判定したときは前記制御信号CNTをローレベル
(“L”)にして前記セレクタ12に入力端子T1を選
択させ、メモリモジュール5から読み出されたデータを
そのままデータバスDBSに出力させる。このとき、デ
ータプロセッサ9のバス制御部は3クロックサイクルで
リードサイクルを制御する。
【0045】図16には前記制御信号CNTの別の生成
論理が示される。図15ではECCコードによるエラー
訂正を行なうアドレスエリアが可変にされていた。図1
6はECCコードによるエラー訂正を行なうアドレスエ
リアを固定とする例であり、データプロセッサ9のバス
制御部にデコーダ16を追加する。このデコーダ16に
はECCコードによるエラー訂正を行なうべきアドレス
エリアが論理回路によって組み込まれ、その論理回路に
よってアクセスアドレスを解読し、前記アドレスエリア
に一致する場合には前記制御信号CNTをハイレベル、
不一致の場合にはローレベルとし、それに従って前述と
同様にセレクタの選択制御とバスサイクルの制御を行な
う。
【0046】図17に例示されるように特別な論理構成
を持たずに、半導体集積回路の外部端子17から直接制
御信号CNTを入力してもよい。図17には制御信号C
NTの入力バッファは図示を省略してある。
【0047】図18には本発明に係る半導体集積回路の
設計方法が例示される。同図に示される設計方法は図4
で説明した半導体集積回路、即ち、メモリモジュールの
一部に対してECC機能を適用する半導体集積回路を対
象とする。
【0048】先ず、仕様に従って論理設計が行なわれる
(S1)。これによって、例えばレジスタトランスファ
レベルのネットリストなどを含む論理設計データ(D
a)が生成される。このとき、メモリ部を構成するどの
メモリモジュールを誤り訂正機能の対象にするかを指定
するECC適用メモリ指示情報(Db)を用意してお
く。例えば図4の例を想定すると、メモリモジュール5
A〜5Eの内、メモリモジュール5EをECC適用メモ
リとして指示する情報を用意する。
【0049】そして、論理設計データ(Da)とECC
適用メモリ指示情報(Db)等に基づいて論理合成処理
が行われる(S2)。この論理合成では、ECC機能部
分の生成のために次の処理が行われる。先ず、ECC適
用メモリ指示情報(Db)によりどのメモリモジュール
を誤り訂正機能の対象にするかを指定する第1処理(S
2−1)が行われる。前記第1処理で指定された単数又
は複数のメモリモジュールの並列データ入出力ビット数
に応じた論理規模で、誤り訂正コードを格納するECC
用メモリモジュールを論理合成する第2処理(S2−
2)と、前記第1処理で指定された単数又は複数のメモ
リモジュールの並列データ入出力ビット数に応じた論理
規模で、ECCコード生成回路を論理合成する第3処理
(S2−3)と、前記第1処理で指定された単数又は複
数のメモリモジュールの並列データ入出力ビット数に応
じた論理規模で、誤り訂正回路を論理合成する第4処理
(S2−4)が行われる。
【0050】論理合成処理S2によりゲートレベルのネ
ットリストを含む設計データ(Dc)が生成される。こ
れに基づいてレイアウト処理が行なわれ(S3)、マス
クデータ生成の為のストリームフォーマットのデータ
(Dd)が生成される。このストリームフォーマットの
データ(Dd)を用いてアートワーク処理が行われ(S
4)、マスクデータ(De)が形成され、マスクデータ
を用いてフォトマスク(M)が形成される(S5)。ウ
ェーハプロセス(S6)で前記フォトマスクを用いてシ
ステムLSIとして例えば半導体集積回路(1C)が生
成される。前記論理設計処理(S1)、論理合成処理
(S2)、レイアウト処理(S3)、及びアートワーク
処理(S4)はエンジニアリングワークステーション等
のコンピュータ装置と、そのソフトウェアである設計ツ
ールとを用いて行なうことになる。
【0051】上記設計方法により、オンチップすべき複
数個のメモリモジュールの一部に対して誤り訂正機能を
採用するとき、前記第1処理(S2−1)で誤り訂正対
象のメモリモジュールを指定するだけで、それに必要な
誤りECCコード生成回路及び誤り訂正回路の設計が自
動的に行われるから、誤り訂正機能を採用するときの設
計を効率化することができる。
【0052】上記設計方法において、図6で説明したよ
うに複数個のメモリモジュール全体に共通の誤り訂正コ
ードを採用する場合にも対応することができる。この場
合には、特に図示はしないが、前記第1処理(S2−
1)により、データバスの並列ビット数よりも並列デー
タ入出力ビット数の少ない複数個のメモリモジュールが
指定されたとき、前記第2処理(S2−2)では、第1
処理で指定された複数のメモリモジュールに対する並列
アクセス単位のデータに共通化された誤り訂正コードを
格納可能なビット数のメモリモジュールを論理合成すれ
ばよい。そして、前記第3処理(S2−3)では、第1
処理で指定された複数のメモリモジュールに対する前記
並列アクセス単位のデータに共通化されたECCコード
を生成するECCコード生成回路を論理合成すればよ
い。更に、前記第4処理(S2−4)では、前記第2処
理で論理合成されたメモリモジュールから読み出された
誤り訂正コードに基づいて第1処理で指定された複数の
メモリモジュールから並列に読み出されたデータに対す
る誤り訂正が可能な誤り訂正回路を論理号合成すればよ
い。
【0053】以上本発明者によってなされた発明を実施
形態に基づいて具体的に説明したが、本発明はそれに限
定されるものではなく、その要旨を逸脱しない範囲にお
いて種々変更可能であることは言うまでもない。
【0054】例えば、ECCコードはハミングコードに
限定されず、拡大ハミングコード等であってもよい。誤
り訂正コードにはリードソロモン符号やハフマン符号等
の符号を用いてもよい。また、ロジック部にはデータプ
ロセッサの他にシリアルインタフェース回路やタイマな
どの周辺回路を設けてもよい。
【0055】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。
【0056】すなわち、本発明に係る半導体集積回路に
よれば、大規模論理回路とメモリを搭載したシステムオ
ンチップ形態の所謂システムLSIにオンチップのメモ
リに対して誤り訂正コードによる誤り訂正が可能にされ
るから、その記憶情報に対しするソフトエラー耐性を向
上させることができる。
【0057】複数個の第1メモリの夫々に対して誤り訂
正コード格納用メモリ、誤り訂正コード生成手段及び訂
正手段を個別に配置すれば、誤り訂正符号を第1メモリ
毎に生成しなければならないから、結果として、複数個
の第1メモリ全体として必要な誤り訂正コードのビット
数は多くなる。このとき、誤り訂正は第1メモリ毎に可
能である。
【0058】複数個の第1メモリ全体に共通の誤り訂正
コードを採用すれば、複数個の第1メモリ全体として必
要な誤り訂正コードのビット数を少なくすることができ
る。この場合に誤り訂正可能なビット数は、複数個の第
1メモリ全体に対して所定のビット数に止む。
【0059】本発明に係る半導体集積回路の設計方法に
よれば、オンチップすべき複数個のメモリモジュールの
一部に対して誤り訂正機能を採用するとき、誤り訂正対
象のメモリモジュールを指定するだけで、それに必要な
誤り訂正符号の生成回路及び誤り訂正回路の設計が自動
的に行われるから、誤り訂正機能を採用するときの設計
を効率化することができる。
【図面の簡単な説明】
【図1】本発明に係る半導体集積回路の第1の例を示す
ブロック図である。
【図2】図1のECC機能部分を例示するブロック図で
ある。
【図3】本発明に係る半導体集積回路の第2の例を示す
ブロック図である。
【図4】本発明に係る半導体集積回路の第3の例を示す
ブロック図である。
【図5】本発明に係る半導体集積回路の第4の例を示す
ブロック図である。
【図6】本発明に係る半導体集積回路の第5の例を示す
ブロック図である。
【図7】複数メモリモジュールに対するECCコード共
通化の具体例を示すブロック図である。
【図8】複数メモリモジュールに対するECCコード共
通化の更に別の具体例を示すブロック図である。
【図9】誤り訂正処理を選択可能とするECC機能部分
を例示するブロック図である。
【図10】図9のECC機能部分においてデータプロセ
ッサがメモリモジュールをライトアクセスするときの動
作態様を例示するブロック図である。
【図11】図10のライトアクセス動作のタイミングチ
ャートである。
【図12】図9のECC機能部分においてデータプロセ
ッサがメモリモジュールをリードアクセスするときの動
作態様を例示するブロック図である。
【図13】図12のリードアクセス動作において誤り訂
正を行なう場合の動作タイミングチャートである。
【図14】図12のリードアクセス動作において誤り訂
正を行なわない場合の動作タイミングチャートである
【図15】制御信号CNTの生成論理の一例を示すブロ
ック図である。
【図16】制御信号CNTの別の生成論理を示すブロッ
ク図である。
【図17】半導体集積回路の外部端子から直接制御信号
CNTを入力する例を示すブロック図である。
【図18】本発明に係る半導体集積回路の設計方法を例
示するフローチャートである。
【符号の説明】
1A〜1E 半導体集積回路 2 半導体基板 4 ロジック部 5、5A〜5E メモリモジュール 6、6A〜6G ECC用メモリモジュール 8、8A〜8H、8J ECC制御回路 9 データプロセッサ 10 ECCコード生成回路 11 誤り訂正回路 ABS アドレスバス DBS データバス 12 セレクタ 13 ゲート回路 CNT 制御信号
───────────────────────────────────────────────────── フロントページの続き (72)発明者 柳沢 一正 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体グループ内 Fターム(参考) 5B018 GA02 HA15 HA35 NA01 QA16 RA04 5L106 AA01 AA02 BB12 EE02 GG01

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 データを格納する第1メモリと、前記第
    1メモリにデータバスを介して接続され前記第1メモリ
    に格納するデータの誤り訂正コードを生成する誤り訂正
    コード生成手段と、前記アドレスバス及びデータバスに
    接続され前記誤り訂正コードを格納する第2メモリと、
    前記第2メモリから読み出された誤り訂正コードに基づ
    いて第1メモリから読み出されたデータに対する誤り訂
    正が可能な誤り訂正手段と、アドレスバス及びデータバ
    スを介して前記第1メモリ及び第2メモリに対するアク
    セス制御が可能なアクセス制御手段と、を1個の半導体
    基板に有して成るものであることを特徴とする半導体集
    積回路。
  2. 【請求項2】 前記アドレスバス及びデータバスを介し
    て前記アクセス制御手段によりアクセス制御可能な第3
    メモリを更に有して成るものであることを特徴とする請
    求項1記載の半導体集積回路。
  3. 【請求項3】 前記第1メモリの読み出しデータを前記
    誤り訂正手段による訂正処理を省いてデータバスに供給
    可能とする選択手段を更に有して成るものであることを
    特徴とする請求項1又は2記載の半導体集積回路。
  4. 【請求項4】 前記アクセス制御手段は前記選択手段に
    よる動作を指定する制御信号を出力することを特徴とす
    る請求項3記載の半導体集積回路。
  5. 【請求項5】 前記第1メモリを複数個有し、複数個の
    第1メモリのアドレス入力端子は前記アドレスバスに共
    通接続され前記複数個の第1メモリのデータ入出力端子
    はデータバスに個別接続され、前記第2メモリは前記複
    数個の第1メモリに対する並列アクセス単位のデータに
    共通化された誤り訂正コードを格納し、前記誤り訂正コ
    ード生成手段は前記並列アクセス単位のデータに共通化
    された誤り訂正コードを生成し、前記訂正手段は前記第
    2メモリから読み出された誤り訂正コードに基づいて複
    数の第1メモリから並列に読み出されたデータに対する
    誤り訂正が可能であることを特徴とする請求項1記載の
    半導体集積回路。
  6. 【請求項6】 前記第1メモリ、第2メモリ、誤り訂正
    コード生成手段及び訂正手段を複数組有して成るもので
    あることを特徴とする請求項1記載の半導体集積回路。
  7. 【請求項7】 メモリ部に対する誤り訂正機能を有する
    半導体集積回路の設計方法であって、論理設計データに
    対し、メモリ部を構成するどのメモリモジュールを誤り
    訂正機能の対象にするかを指定する第1処理と、前記第
    1処理で指定された単数又は複数のメモリモジュールの
    並列データ入出力ビット数に応じた論理規模で、誤り訂
    正コードを格納するメモリモジュールを論理合成する第
    2処理と、前記第1処理で指定された単数又は複数のメ
    モリモジュールの並列データ入出力ビット数に応じた論
    理規模で、誤り訂正コードを生成する誤り訂正コード生
    成手段を論理合成する第3処理と、前記第1処理で指定
    された単数又は複数のメモリモジュールの並列データ入
    出力ビット数に応じた論理規模で、誤り訂正を行なう誤
    り訂正手段を論理合成する第4処理と、を含むことを特
    徴とする半導体集積回路の設計方法。
  8. 【請求項8】 第1処理により、データバスの並列ビッ
    ト数よりも並列データ入出力ビット数の少ない複数個の
    メモリモジュールが指定されたとき、前記第2処理は、
    第1処理で指定された複数のメモリモジュールに対する
    並列アクセス単位のデータに共通化された誤り訂正コー
    ドを格納可能なビット数のメモリモジュールを論理合成
    し、前記第3処理は、第1処理で指定された複数のメモ
    リモジュールに対する前記並列アクセス単位のデータに
    共通化された誤り訂正コードを生成する誤り訂正コード
    生成手段を論理合成し、前記第4処理は、前記第2処理
    で論理合成されたメモリモジュールから読み出された誤
    り訂正コードに基づいて第1処理で指定された複数のメ
    モリモジュールから並列に読み出されたデータに対する
    誤り訂正が可能な誤り訂正手段を論理号合成することを
    特徴とする請求項7記載の半導体集積回路の設計方法。
JP2002144259A 2002-05-20 2002-05-20 半導体集積回路及び半導体集積回路の設計方法 Withdrawn JP2003337760A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002144259A JP2003337760A (ja) 2002-05-20 2002-05-20 半導体集積回路及び半導体集積回路の設計方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002144259A JP2003337760A (ja) 2002-05-20 2002-05-20 半導体集積回路及び半導体集積回路の設計方法

Publications (1)

Publication Number Publication Date
JP2003337760A true JP2003337760A (ja) 2003-11-28

Family

ID=29703980

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002144259A Withdrawn JP2003337760A (ja) 2002-05-20 2002-05-20 半導体集積回路及び半導体集積回路の設計方法

Country Status (1)

Country Link
JP (1) JP2003337760A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006293982A (ja) * 2005-04-11 2006-10-26 Hynix Semiconductor Inc アクセス時間が減少したフラッシュメモリ装置
US8196011B2 (en) 2006-02-15 2012-06-05 Hitachi Ulsi Systems Co., Ltd. Error detection and correction circuit and semiconductor memory
JP2014092865A (ja) * 2012-11-01 2014-05-19 Toyota Motor Corp 情報処理装置及び情報処理方法、並びに制御システム
WO2023236996A1 (zh) * 2022-06-08 2023-12-14 华为技术有限公司 内存模组和电子设备

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006293982A (ja) * 2005-04-11 2006-10-26 Hynix Semiconductor Inc アクセス時間が減少したフラッシュメモリ装置
US8196011B2 (en) 2006-02-15 2012-06-05 Hitachi Ulsi Systems Co., Ltd. Error detection and correction circuit and semiconductor memory
JP2014092865A (ja) * 2012-11-01 2014-05-19 Toyota Motor Corp 情報処理装置及び情報処理方法、並びに制御システム
US9418025B2 (en) 2012-11-01 2016-08-16 Toyota Jidosha Kabushiki Kaisha Information processing device, information processing method, and control system
WO2023236996A1 (zh) * 2022-06-08 2023-12-14 华为技术有限公司 内存模组和电子设备

Similar Documents

Publication Publication Date Title
KR101093857B1 (ko) 공통 프레임에서 공유 에러 비트 코드와 함께 데이터 및 데이터 마스크 비트들을 전송하기 위한 시스템, 방법 및 장치
US7257762B2 (en) Memory interface with write buffer and encoder
US7984363B2 (en) Integrated circuit device including a circuit to generate error correction code for correcting error bit for each of memory circuits
US20050229080A1 (en) Semiconductor memory device equipped with error correction circuit
JP2004234545A (ja) 制御回路及びメモリコントローラ
US5379304A (en) Method and structure for providing error correction code and parity for each byte on SIMM's
US11809712B2 (en) Memory system with threaded transaction support
US20130132797A1 (en) Control method for a semiconductor memory device
CA2172812C (en) Method for combining a plurality of independently operating circuits within a single package
JP2009301415A (ja) メモリモジュール制御方法及びメモリモジュール並びにデータ転送装置
JP2003337760A (ja) 半導体集積回路及び半導体集積回路の設計方法
JPH04213734A (ja) 半導体集積回路
JP2004246754A (ja) 半導体記憶装置およびその制御装置
US20150106678A1 (en) Semiconductor device and semiconductor system including the same
WO2012046343A1 (ja) メモリモジュール冗長化方法、記憶処理装置、及びデータ処理装置
JP5176646B2 (ja) 誤り訂正機能確認回路及び誤り訂正機能確認方法とそのコンピュータプログラム、並びに記憶装置
JPH07129427A (ja) Eccコードによるデータの比較チェック方法
CN106201336B (zh) 具有回写缓存器的设备及其相关方法
US7317629B2 (en) Semiconductor memory device with simplified data control signals
TW407283B (en) Embedded memory device and its burn-in method
US20240220356A1 (en) Parity protected memory blocks merged with error correction code (ecc) protected blocks in a codeword for increased memory utilization
JP3112020B2 (ja) ダイナミックram制御回路
JP3098363B2 (ja) 記憶装置
JP2005044386A (ja) 半導体記憶装置及びマイクロコンピュータ
JP5344634B2 (ja) 半導体記憶装置およびその制御方法

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20050802