JP3011300B2 - 半導体記憶装置 - Google Patents

半導体記憶装置

Info

Publication number
JP3011300B2
JP3011300B2 JP4008618A JP861892A JP3011300B2 JP 3011300 B2 JP3011300 B2 JP 3011300B2 JP 4008618 A JP4008618 A JP 4008618A JP 861892 A JP861892 A JP 861892A JP 3011300 B2 JP3011300 B2 JP 3011300B2
Authority
JP
Japan
Prior art keywords
binary data
data
circuit
bit
redundant
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
JP4008618A
Other languages
English (en)
Other versions
JPH0546361A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP4008618A priority Critical patent/JP3011300B2/ja
Priority to US07/832,570 priority patent/US5323347A/en
Priority to DE4204448A priority patent/DE4204448C2/de
Publication of JPH0546361A publication Critical patent/JPH0546361A/ja
Application granted granted Critical
Publication of JP3011300B2 publication Critical patent/JP3011300B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/501Half or full adders, i.e. basic adder cells for one denomination
    • G06F7/503Half or full adders, i.e. basic adder cells for one denomination using carry switching, i.e. the incoming carry being connected directly, or only via an inverter, to the carry output under control of a carry propagate signal
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/02Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Dram (AREA)
  • Complex Calculations (AREA)
  • Microcomputers (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は半導体記憶装置に関
し、特に通常2進数データおよび冗長2進数データを記
憶する半導体記憶装置に関する。
【0002】
【従来の技術】近年、半導体技術の進歩は目覚ましく、
多くの回路素子を1つのチップ上に集積化することが可
能になってきた。また、処理速度をさらに高速化すると
いう要求も多く、特に算術演算を高速に処理したいとい
う要求が強くなっている。そして、算術演算を高速に処
理するための方法として、冗長2進数を用いた演算回路
の利用が注目を集めている。
【0003】ここで、各桁が0および1の2数で表わさ
れる一般的な2進数を通常2進数と呼ぶ。これに対し
て、各桁が1,0および−1の3数で表わされる2進数
を冗長2進数と呼ぶ。nビットの2進数は一般にxn
n-1 …x1 と表現される。ここでは、符号なし2進表示
による2進数を[xn n-1 …x12 と表記し、2の
補数表示による2進数を[xn n-1 …x1C2と表記
する。この場合、xn ,xn-1 ,…,x1 の各々は0ま
たは1を表わしている。また、冗長2進数を[xn ,x
n-1 ,…x1SD2 と表記する。この場合、xn ,x
n-1 ,…,x1 の各々は1,0または−1を表わす。
【0004】通常2進表現では、10進数の“3”は
[011]2 と表わされる。一方、冗長2進表現では、
10進数の“3”は[0,1,1]SD2 または[1,
0,−1]SD2 と表わされる。このように、冗長2進表
現では、1つの数を複数の方法で表わすことができる。
【0005】通常2進数と冗長2進数との間の相互変換
については、たとえば、高木,安浦,矢島:“冗長2進
加算木を用いたVLSI向き高速乗算器”,電子通信学
会論文誌´83/6 Vol.J66−D No.6,
pp.683−690に説明されている。
【0006】通常2進表現は、冗長2進表現の1つと一
致している。たとえば、冗長2進表現の[011]2
冗長2進表現の[0,1,1]SD2 に一致している。し
たがって、通常2進数を冗長2進数へ変換する際には、
何も処理を行なう必要がない。
【0007】一方、冗長2進数から通常2進数への変換
は、2つの2進数の減算により行なうことができる。一
方の2進数は、冗長2進数の“1”の桁に対応するビッ
トを“1”に設定しかつ残りのビットを“0”に設定す
ることにより得られる。他方の2進数は、冗長2進数の
“−1”の桁に対応するビットを“1”に設定しかつ残
りのビットを“0”に設定することにより得られる。一
方の2進数から他方の2進数を減算すると、2の補数表
示による通常2進数が得られる。
【0008】たとえば、冗長2進数[1,0,−1]
SD2 は、次のようにして通常2進数[011]C2に変換
される。
【0009】 [1,0,−1]SD2 =[100]2 −[001]2 =[011]C2 2つの通常2進数の減算は、2の補数表示による2進数
を用いた加算により行なわれる。したがって、冗長2進
数から通常2進数への変換は主として加算回路を用いて
行なわれる。
【0010】通常2進数を用いた演算では、桁上げ信号
の伝搬による遅延が生じるため、データのビット長が長
くなるほど演算時間が長くなる。これに対して、冗長2
進数表現では1つの数を複数の形で表現できるので、桁
上げの回数を減少させることが可能となる。冗長2進数
を用いた加算および乗算については、上記の電子通信学
会論文誌に説明されている。
【0011】ここでは、簡単な加算の例を説明する。た
とえば、3+1=4という加算を通常2進数を用いて行
なうと、図7に示されるように、最下位ビットから第2
ビットへ桁上げが生じ、さらに第2ビットから第3ビッ
トへ桁上げが生じる。これに対して、図8に示されるよ
うに、10進数の“3”を冗長2進数の[1,0,−
1]SD2 で表わし、10進数の“1”を冗長2進数の
[0,0,1]SD2 で表わす。このような冗長2進数を
用いた加算では、桁上げが生じない。したがって、冗長
2進数を用いると、高速な演算が可能となる。
【0012】冗長2進数を利用する演算回路では回路素
子の数が多くなるが、最近の半導体技術の進歩により回
路素子の数が多いことは何ら問題ではなくなっている。
そのため、冗長2進数を利用する高速性能を有する演算
回路が半導体集積回路装置内に組み込まれるようになっ
てきた。たとえば、Yamashita et al., “A 200MHz16-b
it BiCMOS Signal Processor” ,1989 ISSCC DIGEST OF
TECHNICAL PAPERS,pp.172-173およびEdamatsu et al.,
“A 33MFLOPS Floating Point Processor using Redund
ant Binary Representation ”,1988 ISSCC DIGEST OF
TECHNICAL PAPERS,pp.152-153 に冗長2進数を利用した
演算回路が開示されている。
【0013】
【発明が解決しようとする課題】上記のように、冗長2
進数を利用した高速な演算回路が開発されている。しか
しながら、多くのデータ処理システムでは、通常2進数
データが用いられる。そのため、冗長2進数を利用する
演算回路を他のシステムと接続するためには、冗長2進
数と通常2進数との間で相互変換が必要となる。そのた
めには、上記のように通常2進数の加算回路が必要とな
り、変換のために演算時間が増加する。
【0014】特に、通常のマイクロプロセッサでは、多
数のデータに関して算術演算処理および論理演算処理が
行なわれる。算術演算処理は冗長2進数データを用いて
行なうことができるが、論理演算処理は冗長2進数デー
タを用いて行なうことはできない。
【0015】図9に、一般的なマイクロプロセッサの主
として実行部を示す。マイクロプロセッサ300は、レ
ジスタファイル回路(RF)310および演算処理回路
(ALU)320を含む。このマイクロプロセッサ30
0には主記憶装置200が接続される。マイクロプロセ
ッサ300は1つのLSIにより形成され、主記憶装置
200は別のLSIにより形成される。主記憶装置20
0には通常2進数データが記憶されている。演算処理回
路320は、算術演算処理、論理演算処理等の演算処理
を行なう。レジスタファイル回路310は、通常RAM
(RandomAccess Memory)からな
り、主記憶装置200に記憶されるデータのうち演算処
理回路320の処理に必要なデータを記憶する。
【0016】ここで、演算処理回路320として、冗長
2進数を利用する演算および冗長2進数と通常2進数と
の間の相互変換が可能な演算回路を用いた場合を想定
し、その場合における動作を説明する。
【0017】まず、演算処理回路320の演算処理に必
要な通常2進数データが主記憶装置200からレジスタ
ファイル回路310に転送され、そこに記憶される。た
とえば、2数を加算する命令を実行するときには、2つ
の通常2進数データが主記憶装置200からレジスタフ
ァイル回路310に転送される。
【0018】次に、演算処理回路320はその2つのデ
ータの加算処理を実行する。通常2進数データは冗長2
進数データとみなすこともできるので、この場合、演算
処理回路320は冗長2進数を利用した演算を実行す
る。それにより、演算時間が短縮される。その演算結果
は冗長2進数データとなる。
【0019】通常、レジスタファイル回路310は冗長
2進数データを記憶することはできない。そのため、演
算処理回路320は、冗長2進数データを通常2進数デ
ータに変換する。その変換された通常2進数データがレ
ジスタファイル回路310に記憶される。この場合、演
算処理回路320は、演算処理に加えて変換処理を行な
う必要があるので、結局実行時間は長くなる。
【0020】また、レジスタファイル回路310が冗長
2進数データを記憶することができると仮定すると、演
算結果は冗長2進数の形でレジスタファイル回路310
に記憶される。次にその演算結果を利用する命令が算術
演算の命令であれば、その冗長2進数データを用いてそ
の演算を実行することができる。
【0021】しかし、次にその演算結果を利用する命令
が論理演算の命令であれば、その冗長2進数データを通
常2進数データに変換する必要がある。その場合、演算
処理回路320が変換処理を行なわなければならず、結
局実行時間が増加する。
【0022】さらに、たとえ論理演算の命令がまったく
存在しないとしても、レジスタファイル回路310に記
憶された冗長2進数データは最終的には主記憶装置20
0に保存される。主記憶装置200は、システム内で他
の回路とも接続されるので、データを必ず通常2進数の
形で記憶する必要がある。したがって、レジスタファイ
ル回路310に記憶された冗長2進数データは、演算処
理回路320により通常2進数データに変換された後
に、主記憶装置200に転送される。
【0023】このように、冗長2進数データを通常2進
数データに変換するために余分な時間がかかり、実行速
度が遅くなる。そのため、マイクロプロセッサに冗長2
進数を利用する演算回路を組み込むことは実際には行な
われていない。
【0024】しかし、算術演算を冗長2進数で実行する
ことによりマイクロプロセッサをさらに高速化したいと
いう要求は非常に多い。
【0025】この発明の目的は、冗長2進数データから
通常2進数データへの変換により生じる実行時間の増加
をなくし、高速な演算処理を可能にすることである。
【0026】
【課題を解決するための手段】この発明に係る半導体記
憶装置は、冗長2進数データを通常2進数データに変換
する機能を有する半導体記憶装置であって、外部から書
込まれる複数ビット数の通常または冗長2進数データを
受取り、かつ読出した複数ビット数の通常または冗長2
進数データを外部へ出力する読出/書込回路と、書込ま
れる2進数データのビット数にそれぞれ対応して設けら
れた複数のメモリ回路とを備えている。複数のメモリ回
路の各々は、読出/書込回路によって受取られた、通常
2進数データの対応するビット、または冗長2進数デー
タの対応するビットを構成するデータビットを記憶する
第1のメモリセルと、読出/書込回路によって受取られ
た、冗長2進数データの対応するビットを構成するサイ
ンビットを記憶する第2のメモリセルと、第1のメモリ
セルからデータビットを、かつ第2のメモリセルからサ
インビットを受取り、所定の演算を行なう変換回路とを
含んでいる。複数のメモリ回路の複数の変換回路が全体
として、受取ったそれぞれのデータビットおよびサイン
ビットに基づいて、書込まれた冗長2進数データを通常
2進数データに変換し、複数の変換回路の各々は、変換
された通常2進数データの対応するビットを記憶する。
複数のメモリ回路の各々はさらに、通常2進数データの
読出時には、対応する変換回路に記憶されているビット
を読出/書込回路に出力し、冗長2進数データの読出時
には、第1のメモリセルに記憶されているデータビット
を読出/書込回路に出力するように切換わる選択回路を
含み、第2のメモリセルに記憶されているサインビット
は読出/書込回路に与えられるように結合されている。
【0027】
【作用】この発明にかかる半導体記憶装置において、書
込手段により記憶手段のメモリセルに冗長2進数データ
が書込まれると、その冗長2進数データは変換手段によ
り通常2進数データに変換される。冗長2進数データが
必要なときには、メモリセルに記憶された冗長2進数デ
ータが選択手段により選択され、その選択された冗長2
進数データが読出手段により読出される。通常2進数デ
ータが必要なときには、変換手段により変換された通常
2進数データが選択手段により選択され、その選択され
た通常2進数データが読出手段により読出される。
【0028】書込手段により記憶手段のメモリセルに通
常2進数データが書込まれた場合には、その通常2進数
データはそのままの形で冗長2進数データとみなすこと
ができる。この場合、メモリセルに記憶されたデータと
変換手段により変換されたデータとは同じ形になってい
る。
【0029】このように、記憶手段に冗長2進数データ
および通常2進数データのいずれが書込まれていても、
必要に応じて、そのデータを冗長2進数データの形で読
出すこともできかつ通常2進数データの形で読出すこと
もできる。
【0030】
【実施例】以下、この発明の実施例を図面を用いて詳細
に説明する。
【0031】図1は、この発明の実施例による半導体記
憶装置の構成を示すブロック図である。
【0032】半導体記憶装置1は、複数行および複数列
に配列された複数のメモリ回路10、読出/書込回路2
0およびデコーダ・制御回路30を含む。メモリ回路1
0の各列に対応して第1および第2のビット線BL1,
BL2が設けられ、メモリ回路10の各行に対応してワ
ード線WLが設けられる。第1および第2のビット線B
L1,BL2は読出/書込回路20に接続される。各ワ
ード線WLはデコーダ・制御回路30に接続される。メ
モリ回路10の列の数は記憶されるデータDのビット数
に対応する。したがって、メモリ回路10の列の数がn
であるときには、メモリ回路10の各行にnビットのデ
ータが記憶される。
【0033】各メモリ回路10は、対応するワード線W
Lおよび対応する第1および第2のビット線BL1,B
L2に接続されている。各行の各メモリ回路10から出
力される桁上げ信号CRは上位ビットのメモリ回路10
に与えられる。なお、最右列の各メモリ回路10には下
位からの桁上げ入力として" 1" が与えられている。
【0034】読出/書込回路20には外部から通常2進
数データDまたは冗長2進数データDが与えられる。ま
た、読出/書込回路20から半導体記憶装置1の外部に
通常2進数データDまたは冗長2進数データDが出力さ
れる。読出/書込回路20には外部から選択信号SEL
および読出/書込信号RWが与えられる。選択信号SE
Lは、すべてのメモリ回路10にも与えられる。デコー
ダ・制御回路30には、外部からアドレス信号ADが与
えられる。
【0035】図2に、各メモリ回路10の構成が示され
る。メモリ回路10は、データビットメモリセル11、
サインビットメモリセル12、変換回路13および選択
回路14を含む。データビットメモリセル11およびサ
インビットメモリセル12の各々は、1ビットのデータ
を記憶する。
【0036】データビットメモリセル11の入力端子は
対応する第1のビット線BL1に接続されている。デー
タビットメモリセル11の制御端子は対応するワード線
WLに接続されている。サインビットメモリセル12の
入力端子は対応する第2のビット線BL2に接続されて
いる。サインビットメモリセル12の制御端子は対応す
るワード線WLに接続されている。データビットメモリ
セル11の出力端子は変換回路13の一方の入力端子B
および選択回路14の一方の入力端子aに接続されてい
る。サインビットメモリセル12の出力端子は変換回路
13の他方の入力端子Aおよび対応する第2のビット線
BL2に接続されている。
【0037】変換回路13の出力端子Sは選択回路14
の他方の入力端子bに接続されている。選択回路14の
制御端子は対応するワード線WLに接続されている。選
択回路14の出力端子は対応する第1のビット線BL1
に接続されている。選択回路14のセレクト端子saに
は選択信号SELが与えられる。変換回路13は、下位
ビットに対応するメモリ回路内の変換回路から桁上げ入
力端子CIを介して桁上げ信号CRを受け、上位ビット
に対応するメモリ回路内の変換回路に桁上げ出力端子C
Oを介して桁上げ信号CRを与える。
【0038】冗長2進数データは図3に示されるように
サインビットおよびデータビットからなる。冗長2進数
の“−1”はサインビット“1”とデータビット“1”
で表わされる。冗長2進数の“1”はサインビット
“0”およびデータビット“1”で表わされる。冗長2
進数の“0”はデータビット“0”で表わされる。この
場合、データビットが“0”であればサインビットの値
にかかわらず、そのビットは冗長2進数の“0”である
と認識される。
【0039】通常2進数データの各ビットは第1のビッ
ト線BL1に与えられる。冗長2進数データの各桁のデ
ータビットは第1のビット線BL1に与えられ、冗長2
進数データの各桁のサインビットは第2のビット線BL
2に与えられる。データビットメモリセル11は、通常
2進数データの各ビットまたは冗長2進数データの各桁
のデータビットを記憶する。サインビットメモリセル1
2は、冗長2進数データの各桁のサインビットを記憶す
る。データビットメモリセル11に通常2進数データの
各ビットが与えられたときには、サインビットメモリセ
ル12には“0”が与えられる。
【0040】変換回路13は、主として全加算器を含
み、桁上げ信号CR、データビットおよびサインビット
に基づいて、外部からの命令なしに冗長2進数データを
通常2進数データに自動的に変換する。図1に示される
1行に相当する複数の変換回路13が、n桁の冗長2進
数データを上述した方法で通常2進数データに変換す
る。すなわち、1行に相当するn個の変換回路13は、
与えられた冗長2進数データから2種類の通常2進数デ
ータを作成し、それらの通常2進数データを全加算器で
加算することにより、与えられた冗長2進数データを通
常2進数データに変換する。
【0041】図4に、変換回路13の詳細な構成を示
す。変換回路13は、インバータ13aと、ANDゲー
ト13bと、NANDゲート13cと、論理回路13d
とを備えている。
【0042】入力端子Aには、図2のサインビットメモ
リセル12からサインビットが入力され、NANDゲー
ト13cの一方入力に与えられるとともに、インバータ
13aによって反転されてANDゲート13bの一方入
力に与えられる。
【0043】入力端子Bには、図2のデータビットメモ
リセル11からデータビットが入力され、ANDゲート
13bの他方入力およびNANDゲート13cの他方入
力に与えられる。
【0044】ANDゲート13bの出力は、論理回路1
3dの一方の入力A′に与えられ、NANDゲート13
cの出力は、論理回路13dの他方の入力B′に与えら
れる。
【0045】論理回路13dは、NチャネルMOSトラ
ンジスタT1〜T6およびインバータG1〜G7を含
む。桁上げ入力端子CIは下位ビットに対応するメモリ
回路10内の論理回路13dから桁上げ信号CRを受取
る。出力端子Sからは、変換結果である通常2進数の対
応する桁のビットが出力される。桁上げ出力端子COか
らは、上位ビットに対応するメモリ回路10内の論理回
路13dに与えられるべき桁上げ信号CRが出力され
る。
【0046】図10は、図4の論理回路13dの論理値
表を示す図である。以下に、冗長2進数[1,0,−
1]を通常2進数[0,1,1]に変換する場合の変換
回路13の動作を図10の論理値表を参照して説明す
る。
【0047】まず、冗長2進数の最下位ビット" −1"
の場合、図3の表に従ってデータビット" 1" およびサ
インビット" 1" が図4の変換回路13の2つの入力
A,Bに与えられる。この場合、ANDゲート13bお
よびNANDゲート13cの出力はそれぞれ" 0" ,"
0" となる。また、図1に示すように下位からの桁上げ
入力" 1" があり、したがって図4の論理回路13dの
入力A′,B′,CIは、それぞれ" 0" ," 0" ,"
1" となる。
【0048】図10の論理値表を参照すると、上記入力
に対する出力CO,Sはそれぞれ"0" ," 1" とな
る。すなわち、対応する最下位桁の出力通常2進数ビッ
トSは" 1" となり、上位への桁上げ出力COは" 0"
となる。
【0049】次に、冗長2進数の中央桁のビット" 0"
の場合、図3の表に従って、たとえばデータビット"
0" およびサインビット" 0" が図4の変換回路13の
2つの入力A,Bに与えられる。この場合、ANDゲー
ト13bおよびNANDゲート13cの出力はそれぞ
れ" 0" ," 1" となる。また、上述のように最下位桁
からの桁上げ入力CIは" 0" であり、したがって図4
の論理回路13dの入力A′,B′,CIは、それぞ
れ、" 0" ," 1" ," 0" となる。
【0050】ここで、図10の論理値表を参照すると、
上記入力に対する出力CO,Sはそれぞれ、" 0" ,"
1" となる。すなわち、対応する中央桁の出力通常2進
数ビットSは" 1" となり、上位への桁上げ出力CO
は" 0" となる。
【0051】次に、冗長2進数の最上位ビット" 1" の
場合、図3の表に従って、データビット" 1" およびサ
インビット" 0" が図4の変換回路13の2つの入力
A,Bに与えられる。この場合、ANDゲート13bお
よびNANDゲート13cの出力はそれぞれ" 1" ,"
1" となる。また、上述のように、中央桁からの桁上げ
入力CIは" 0" であり、したがって図4の論理回路1
3dの入力A′,B′,CIは、それぞれ、" 1" ,"
1" ," 0" となる。
【0052】ここで、図10の論理値表を参照すると、
上記入力に対する出力CO,Sはそれぞれ、" 1" ,"
0" となる。すなわち、対応する最上位桁の出力通常2
進数ビットSは" 0" となり、" 1" の桁上げ出力CO
はどこにも接続されない。
【0053】したがって冗長2進数[1,0,−1]
は、各桁毎に、図4の変換回路13によって変換され
て、[0,1,1]という正しい通常2進数の変換結果
を得ることができる。
【0054】図5に、選択回路14の構成を示す。選択
回路14は、インバータG8,ANDゲートG9,G1
0およびORゲートG11を含む。入力端子aはデータ
ビットメモリセル11の出力を受け、入力端子bは変換
回路13の出力を受ける。セレクト端子saは選択信号
SELを受ける。出力端子oはビット線BL1に接続さ
れる。図5においては、制御端子は省略されている。
【0055】選択信号SELが“1”のとき、入力端子
aに与えられる信号が出力端子oから出力される。選択
信号SELが“0”のとき、入力端子bに与えられる信
号が出力端子oから出力される。
【0056】次に、図1および図2を参照しながら、こ
の実施例の半導体記憶装置1の動作を説明する。
【0057】読出/書込信号RWにより、データの読出
動作または書込動作が選択される。冗長2進数データの
書込時には、外部からnビットの冗長2進数データDが
読出/書込回路20に入力される。読出/書込回路20
はその冗長2進数データの各桁のデータビットを第1の
ビット線BL1に与え、冗長2進数データの各桁のサイ
ンビットを第2のビット線BL2に与える。
【0058】一方、デコーダ・制御回路30は、外部か
ら与えられるアドレス信号ADに応答して、複数のワー
ド線WLのうち1つを選択する。それにより、選択され
たワード線WLに接続されるn個のメモリ回路10が選
択される。その結果、選択された各メモリ回路10内の
データビットメモリセル11およびサインビットメモリ
セル12が活性状態になる(図2参照)。それにより、
対応する第1のビット線BL1上のデータビットがデー
タビットメモリセル11に書込まれるとともに、そのデ
ータビットがデータビットメモリセル11から出力され
る。また、対応する第2のビット線BL2上のサインビ
ットがサインビットメモリセル12に書込まれるととも
に、そのサインビットがサインビットメモリセル12か
ら出力される。
【0059】選択された1行に相当する変換回路13が
データビットおよびサインビットに基づいて冗長2進数
データを通常2進数データに変換する。各変換回路13
は変換された通常2進数データの対応するビットを保持
するとともにそれを選択回路14に出力する。
【0060】上記のようにして、選択された1行のメモ
リ回路10内のデータビットメモリセル11およびサイ
ンビットメモリセル12に冗長2進数データが記憶さ
れ、選択された1行のメモリ回路10内の変換回路13
に通常2進数データが記憶される。
【0061】通常2進数データの書込時にも、同様の動
作が行なわれる。この場合、各メモリ回路10のデータ
ビットメモリセル11には通常2進数データの1ビット
が書込まれ、サインビットメモリセル12には“0”が
書込まれる。通常2進数データはそのままの形で冗長2
進数データになるので、通常2進数データから冗長2進
数データへの変換のために特別な処理や変換時間は必要
ない。
【0062】データの読出時には、読出/書込信号によ
り読出動作が選択される。デコーダ・制御回路30は、
外部から与えられるアドレス信号ADに応答して複数の
ワード線WLのうち1つを選択する。それにより、選択
されたワード線WLに接続されるn個のメモリ回路10
が選択される。その結果、選択された各メモリ回路10
内のデータビットメモリセル11、サインビットメモリ
セル12および選択回路14が活性状態になる。外部か
ら与えられる選択信号SELにより通常2進数データま
たは冗長2進数データが選択される。
【0063】通常2進数データの読出時には、選択回路
14が変換回路13の出力を対応する第1のビット線B
L1に与える。その結果、複数の第1のビット線BL1
上に通常2進数データが読出される。読出/書込回路2
0は、複数の第1のビット線BL1上の通常2進数デー
タを半導体記憶装置1の外部に出力する。
【0064】冗長2進数データの読出時には、選択回路
14がデータビットメモリセル11の出力を対応する第
1のビット線BL1に与える。また、サインビットメモ
リセル12の出力が対応する第2のビット線BL2に与
えられる。その結果、複数の第1および第2のビット線
BL1,BL2上に冗長2進数データが読出される。読
出/書込回路20は、複数の第1および第2のビット線
BL1,BL2上の冗長2進数データを半導体記憶装置
1の外部に出力する。
【0065】このように、上記実施例の半導体記憶装置
においては、外部から通常2進数データおよび冗長2進
数データのいずれが与えられても、そのデータは通常2
進数データおよび冗長2進数データの形で記憶される。
したがって、必要に応じて、記憶されたデータを通常2
進数データの形で読出すこともできかつ冗長2進数デー
タの形で読出すこともできる。
【0066】図6は、上記実施例の半導体記憶装置を用
いたマイクロプロセッサの構成を示すブロック図であ
る。マイクロプロセッサ100は第1の演算処理回路1
10、第2の演算処理回路120、レジスタファイル回
路130、コントローラ140および入出力インターフ
ェース回路150を含む。第1の演算処理回路110、
第2の演算処理回路120、レジスタファイル回路13
0および入出力インターフェース150は第1のデータ
バスDB1に接続されている。第2の演算処理回路12
0およびレジスタファイル回路130は第2のデータバ
スDB2にも接続されている。第1のデータバスDB1
は通常2進数データのためのデータバスであり、第2の
データバスDB2は冗長2進数データのためのデータバ
スである。入出力インターフェース回路150には主記
憶装置200が接続されている。
【0067】第1の演算処理回路110は通常2進数デ
ータを用いて論理演算を実行する。第2の演算処理回路
120は冗長2進数データを用いて算術演算を実行す
る。レジスタファイル回路130として、上記実施例の
半導体記憶装置1が用いられる。コントローラ140
は、このマイクロプロセッサ100の各回路の動作を制
御する。入出力インターフェース回路150は、このマ
イクロプロセッサ100の内部の各回路と外部装置との
間のインターフェース制御を行なう。
【0068】次に、図6のマイクロプロセッサ100の
動作を説明する。コントローラ140の指示により主記
憶装置200に記憶される通常2進数データのうち必要
な通常2進数データが入出力インターフェース回路15
0に取込まれる。その通常2進数データは、コントロー
ラ140の制御により第1のデータバスDB1を介して
レジスタファイル回路130に転送される。レジスタフ
ァイル回路130には、データが通常2進数データの形
および冗長2進数データの形で記憶される。
【0069】論理演算の実行時には、必要とする通常2
進数データがレジスタファイル回路130から第1のデ
ータバスDB1を介して第1の演算処理回路110に転
送される。第1の演算処理回路110から演算結果とし
て出力された通常2進数データは第1のデータバスDB
1を介してレジスタファイル回路130に転送される。
【0070】算術演算の実行時には、必要とする冗長2
進数データがレジスタファイル回路130から第2のデ
ータバスDB2を介して第2の演算処理回路120に転
送される。第2の演算処理回路120から演算結果とし
て出力された冗長2進数データは、第2のデータバスD
B2を介してレジスタファイル回路130に転送され
る。レジスタファイル回路130は、その冗長2進数デ
ータを通常2進数データに変換し、それらの冗長2進数
データおよび通常2進数データを記憶する。
【0071】レジスタファイル回路130に記憶された
通常2進数データは、必要に応じて、第1のデータバス
DB1および入出力インターフェース回路150を介し
て外部の主記憶装置200に転送される。上記の転送制
御は、コントローラ140が行なう。
【0072】通常2進数データは冗長2進数データとみ
なすこともできるので、第2の演算処理回路120は、
主記憶装置200から入出力インターフェース回路15
0および第1のデータバスDB1を介して直接通常2進
数データを受けとり、その通常2進数データを用いて算
術演算を実行することもできる。
【0073】図6のマイクロプロセッサ100において
は、第1および第2の演算処理回路110,120が通
常2進数データと冗長2進数データとの間の相互変換を
行なうことなく、第2の演算処理回路120が冗長2進
数データを用いた算術演算を実行することができるの
で、実行速度の高速化が図られる。
【0074】
【発明の効果】以上のようにこの発明によれば、データ
の書込時に、そのデータが通常2進数および冗長2進数
の両方の形で記憶されるので、データの読出時に、必要
な形のデータをただちに読出すことができる。したがっ
て、このデータを利用する他の回路において通常2進数
データと冗長2進数データとの間の相互変換の処理を行
なう必要がない。その結果、この発明に係る半導体記憶
装置を用いれば高速処理が可能な半導体集積回路装置を
得ることができる。
【図面の簡単な説明】
【図1】 この発明の実施例による半導体記憶装置の構
成を示すブロック図である。
【図2】 同実施例の半導体記憶装置に含まれるメモリ
回路の構成を示すブロック図である。
【図3】 冗長2進数データの表現方法の一例を示す図
である。
【図4】 変換回路の構成を示す回路図である。
【図5】 選択回路の構成を示す回路図である。
【図6】 同実施例の半導体記憶装置を利用したマイク
ロプロセッサの構成を示すブロック図である。
【図7】 通常2進数を用いた加算の一例を示す図であ
る。
【図8】 冗長2進数を用いた加算の一例を示す図であ
る。
【図9】 従来のマイクロプロセッサの実行部の構成を
示すブロック図である。
【図10】 図4の変換回路を構成する論理回路の論理
値表を示す図である。
【符号の説明】
1 半導体記憶装置、10 メモリ回路、11 データ
ビットメモリセル、12 サインビットメモリセル、1
3 変換回路、13a インバータ、13bANDゲー
ト、13c NANDゲート、13d 論理回路、14
選択回路、20 読出/書込回路、30 デコーダ・
制御回路、BL1 第1のビット線、BL2 第2のビ
ット線、WL ワード線。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 冗長2進数データを通常2進数データに
    変換する機能を有する半導体記憶装置であって、 外部から書込まれる複数ビット数の通常または冗長2進
    数データを受取り、かつ読出した複数ビット数の通常ま
    たは冗長2進数データを外部へ出力する読出/書込回路
    (20)と、 書込まれる2進数データの前記ビット数にそれぞれ対応
    して設けられた複数のメモリ回路(10)とを備え、 前記複数のメモリ回路(10)の各々は、 前記読出/書込回路(20)によって受取られた、通常
    2進数データの対応するビット、または冗長2進数デー
    タの対応するビットを構成するデータビットを記憶する
    第1のメモリセル(11)と、 前記読出/書込回路(20)によって受取られた、冗長
    2進数データの対応するビットを構成するサインビット
    を記憶する第2のメモリセル(12)と、 前記第1のメモリセルから前記データビットを、かつ前
    記第2のメモリセルから前記サインビットを受取り、所
    定の演算を行なう変換回路(13)とを含み、 前記複数のメモリ回路の複数の前記変換回路が全体とし
    て、前記受取ったそれぞれのデータビットおよびサイン
    ビットに基づいて、前記書込まれた冗長2進数データを
    通常2進数データに変換し、前記複数の変換回路の各々
    は、変換された通常2進数データの対応するビットを記
    憶し、 前記複数のメモリ回路の各々はさらに、 通常2進数データの読出時には、対応する前記変換回路
    に記憶されているビットを前記読出/書込回路に出力
    し、冗長2進数データの読出時には、前記第1のメモリ
    セルに記憶されているデータビットを前記読出/書込回
    路に出力するように切換わる選択回路(14)を含み、 前記第2のメモリセルに記憶されているサインビットは
    前記読出/書込回路に与えられるように結合されてい
    る、半導体記憶装置。
JP4008618A 1991-02-19 1992-01-21 半導体記憶装置 Expired - Lifetime JP3011300B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP4008618A JP3011300B2 (ja) 1991-02-19 1992-01-21 半導体記憶装置
US07/832,570 US5323347A (en) 1991-02-19 1992-02-07 Semiconductor memory device storing two types of binary number data and method of operating the same
DE4204448A DE4204448C2 (de) 1991-02-19 1992-02-14 Halbleiterspeichereinrichtung zum Speichern von zwei Arten binärer Zahlen, Verwendung einer Halbleiterspeichereinrichtung und Betriebsverfahren dafür

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP3-24732 1991-02-19
JP2473291 1991-02-19
JP4008618A JP3011300B2 (ja) 1991-02-19 1992-01-21 半導体記憶装置

Publications (2)

Publication Number Publication Date
JPH0546361A JPH0546361A (ja) 1993-02-26
JP3011300B2 true JP3011300B2 (ja) 2000-02-21

Family

ID=26343177

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4008618A Expired - Lifetime JP3011300B2 (ja) 1991-02-19 1992-01-21 半導体記憶装置

Country Status (3)

Country Link
US (1) US5323347A (ja)
JP (1) JP3011300B2 (ja)
DE (1) DE4204448C2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101264761B1 (ko) * 2004-02-10 2013-05-15 가부시키가이샤 한도오따이 에네루기 켄큐쇼 비휘발성 메모리와 그것을 내장하는 ic 카드, id 카드 및 id 태그

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4878192A (en) * 1986-07-11 1989-10-31 Matsushita Electric Industrial Co. Ltd. Arithmetic processor and divider using redundant signed digit arithmetic
US4864528A (en) * 1986-07-18 1989-09-05 Matsushita Electric Industrial Co., Ltd. Arithmetic processor and multiplier using redundant signed digit arithmetic
JPH07101552B2 (ja) * 1988-01-08 1995-11-01 日本電気株式会社 メモリ集積回路
JP2605792B2 (ja) * 1988-04-05 1997-04-30 松下電器産業株式会社 演算処理装置
JPH0716163B2 (ja) * 1988-12-02 1995-02-22 三菱電機株式会社 冗長2進d/a変換器およびそれを用いた冗長2進信号処理装置
US4970690A (en) * 1989-07-31 1990-11-13 Atari Games Corporation Memory cell arrangement supporting bit-serial arithmetic
US5150321A (en) * 1990-12-24 1992-09-22 Allied-Signal Inc. Apparatus for performing serial binary multiplication

Also Published As

Publication number Publication date
DE4204448A1 (de) 1992-08-20
DE4204448C2 (de) 1996-01-25
US5323347A (en) 1994-06-21
JPH0546361A (ja) 1993-02-26

Similar Documents

Publication Publication Date Title
US4654781A (en) Byte addressable memory for variable length instructions and data
JPH081615B2 (ja) 予備機構を有するメモリ・システム
US4833602A (en) Signal generator using modulo means
CN111459552B (zh) 一种内存中并行化计算的方法及装置
US5299145A (en) Adder for reducing carry processing
JP3011300B2 (ja) 半導体記憶装置
US5748555A (en) Memory address preview control circuit
JPS6128198B2 (ja)
JPH0413735B2 (ja)
US7002860B2 (en) Multilevel register-file bit-read method and apparatus
US5877972A (en) High speed incrementer with array method
US20230420035A1 (en) In-memory computing circuit and method, and semiconductor memory
US20230153067A1 (en) In-memory computing method and circuit, semiconductor memory, and memory structure
KR100290545B1 (ko) 메모리어레이,메모리소자및정보처리방법
JP3174160B2 (ja) アドレス変換バッファ
US6507531B1 (en) Cache column multiplexing using redundant form addresses
JP3537266B2 (ja) デジタル演算集積回路
JP2969825B2 (ja) デュアルポートメモリ
JP2616714B2 (ja) 半導体記憶装置
JP2788765B2 (ja) 半導体記憶装置
JP2693629B2 (ja) レジスタファイル
CN113391788A (zh) 存储器内算术处理器及存储器内算术处理方法
JP3451640B2 (ja) Simd計算機
JPH06324862A (ja) 演算用記憶装置
JPH04293121A (ja) 加算回路

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19970819