JPWO2015141153A1 - プログラマブル論理集積回路 - Google Patents

プログラマブル論理集積回路 Download PDF

Info

Publication number
JPWO2015141153A1
JPWO2015141153A1 JP2016508494A JP2016508494A JPWO2015141153A1 JP WO2015141153 A1 JPWO2015141153 A1 JP WO2015141153A1 JP 2016508494 A JP2016508494 A JP 2016508494A JP 2016508494 A JP2016508494 A JP 2016508494A JP WO2015141153 A1 JPWO2015141153 A1 JP WO2015141153A1
Authority
JP
Japan
Prior art keywords
wiring
block
state
integrated circuit
programmable logic
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
JP2016508494A
Other languages
English (en)
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.)
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
Publication of JPWO2015141153A1 publication Critical patent/JPWO2015141153A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/86Masking faults in memories by using spares or by reconfiguring in serial access memories, e.g. shift registers, CCDs, bubble memories
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1733Controllable logic circuits
    • H03K19/1735Controllable logic circuits by wiring, e.g. uncommitted logic arrays
    • H03K19/1736Controllable logic circuits by wiring, e.g. uncommitted logic arrays in which the wiring can be modified
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/1776Structural details of configuration resources for memories

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

プログラマブル論理集積回路において、不良素子の発生に備えてスペア回路を設けると、回路構成に無駄が生じてしまう。本発明に係るプログラマブル論理集積回路は、複数のロジックブロックと、行配線と列配線の接続をスイッチ用不揮発性スイッチ素子により切り換えるスイッチブロックと、入出力配線を上記スイッチブロックと接続するシフタブロックとを有し、上記シフタブロックは、冗長配線を含み、上記冗長配線及び上記行配線を構成する各配線の接続を制御するシフト用不揮発性スイッチ素子を備える。

Description

本発明は、プログラマブル論理集積回路に関し、特に、抵抗変化素子を用いたプログラマブル論理集積回路に関する。
プログラマブル論理集積回路は、内部の設定情報を書き換えることにより、様々な論理回路を再構成可能であるという特徴をもつ。そのため、試作品の作成や、画像処理や通信などの広い分野で利用されている。
特許文献1はプログラマブル論理集積回路に関するものであり、抵抗変化素子を用いて、メモリセルとスイッチ部分を置き換えることを提案している。特許文献1に記載のプログラマブル論理集積回路は、チップ面積や消費電力の低減が期待できることから有望な技術である。
特許文献2や特許文献3はプログラマブル論理集積回路に関するものであり、スペア回路を形成しておき、不良回路が発生した場合には、不良回路をスペア回路に置き換えることを提案している。
非特許文献1はプログラマブル論理集積回路に関するものであり、不良素子の位置の情報に基づき、構成データを計算し、不良個所を回避することを提案している。非特許文献1のプログラマブル論理集積回路は、チップ面積のオーバーヘッドなしに、チップの歩留りを向上できるため、有力である。
特開2005−101535号公報 米国特許第4899067号明細書 特開平6−216757号公報
W. H. Mangione-Smith, J. Lach, and M. Potkonjak, "Low Overhead Fault-Tolerant FPGA Systems", IEEE Transactions on Very Large Scale Integration (VLSI) Systems, vol. 6, no. 2, pp.212-221, June 1998
しかしながら、上述した先行技術文献が提案するプログラマブル論理集積回路には、以下のような課題がある。
特許文献2や特許文献3では、プログラマブル論理集積回路に不良がない場合には、スペア回路は利用されず、チップ面積、遅延時間、消費電力のオーバーヘッドが生じる。一方、不良素子の発生によりプログラマブル論理集積回路の品質のばらつきが生じたとしても、スペア回路を有効に利用してより多様な論理を実現することをユーザが望んだ場合、その要望に応えられるプログラマブル論理集積回路を提供できることが望ましい。
非特許文献1のプログラマブル論理集積回路は、リソースの使用率が高くなり利用している配線が混雑してきた場合に、不良素子を回避して構成データを作成できなくなる懸念がある。その場合、チップ毎の不良素子の位置のばらつきに応じて、構成データを作成できるチップと、構成データを作成できないチップが生じてしまう。つまり、プログラマブル論理集積回路の品質を保つことが困難になる可能性がある。
本発明の目的は、プログラマブル論理集積回路において、不良素子の発生に備えてスペア回路を設けると、回路構成に無駄が生じてしまう、という課題を解決するプログラマブル論理集積回路を提供することにある。
上記目的を達成するため、本発明に係るプログラマブル論理集積回路は、複数のロジックブロックと、行配線と列配線の接続をスイッチ用不揮発性スイッチ素子により切り換えるスイッチブロックと、入出力配線を上記スイッチブロックと接続するシフタブロックとを有し、
上記シフタブロックは、冗長配線を含み、上記冗長配線及び上記行配線を構成する各配線の接続を制御するシフト用不揮発性スイッチ素子を備える。
本発明によれば、不良素子が発生した場合であっても所望の動作を実現できると共に、回路構成を有効に使用することができる。
本発明の第1実施形態によるプログラマブル論理集積回路の構成を示すブロック図である。 本発明の第1実施形態によるプログラマブル論理集積回路を構成するコネクションブロックの構成の一例を示す回路図である。 本発明の第1実施形態によるプログラマブル論理集積回路を構成するスイッチブロックの構成の一例を示す回路図である。 本発明の第1実施形態によるプログラマブル論理集積回路を構成するシフタブロックの構成の一例を示す回路図である。 本発明の第1実施形態によるプログラマブル論理集積回路の第1のモードにおいて、不良素子がない状況の設定データと抵抗変化素子の関係を示す回路図である。 本発明の第1実施形態によるプログラマブル論理集積回路の第1のモードにおいて、不良素子がある状況の設定データと抵抗変化素子の関係を示す回路図である。 本発明の第1実施形態によるプログラマブル論理集積回路の第2のモードにおける、設定データと抵抗変化素子の関係を示す回路図である。 本発明の第1実施形態によるプログラマブル論理集積回路のシフタブロックの別の一例を示す回路図である。 本発明の第2実施形態によるプログラマブル論理集積回路の構成を示すブロック図である。 関連するプログラマブル論理集積回路の構成を概略的に示すブロック図である。
本発明の好ましい実施形態について説明する前に、関連するプログラマブル論理集積回路について、図面を参照しながら説明する。関連技術のプログラマブル論理集積回路は図10に示すように、ロジックブロック11と、スイッチブロック12と、コネクションブロック13と、配線、若しくはトラック14と、I/O(Input/Output)ブロック15と、を有する。図10は、ロジックブロック11の数が3×3の場合を示している。ロジックブロック11は、論理演算を行う。スイッチブロック12は、配線14間の接続を行う。コネクションブロック13は、配線14とロジックブロック11の接続を行う。I/Oブロック15は、外部との接続を行う。ロジックブロック11の論理、スイッチブロック12やコネクションブロック13の接続関係は、設定情報として、スタティックランダムアクセスメモリ(SRAM)等のメモリセルに記憶される。メモリセルに構成データを書き込むことを、プログラムと呼ぶ。通常、メモリセルはシリアルに接続され、順次データが書き込まれる。
関連技術のプログラマブル論理集積回路では、メモリセルをプログラムすることにより、多様な回路機能を実現している。また、構成データを書き換えることにより回路機能の変更を実現している。本発明はプログラマブル論理集積回路において、回路使用の自由度を向上させ、回路機能変更の可能性を向上させるものである。以下、本発明の好ましい実施形態について説明する。
〔第1実施形態〕
本発明の第1実施形態によるプログラマブル論理集積回路について、説明する。図1は、本発明の第1実施形態におけるプログラマブル論理集積回路の構成を示すブロック図である。図2は、図1のコネクションブロックの一例を示す回路図である。図3は、図1のスイッチブロックの一例を示す回路図である。図4は、図1のシフタブロックの一例を示す回路図である。
本実施形態によるプログラマブル論理集積回路は図1に示すように、複数のロジックブロック1と、行配線と列配線の接続をスイッチ用不揮発性スイッチ素子により切り換えるスイッチブロック2と、を有する。さらに、本実施形態によるプログラマブル論理集積回路は、入出力配線を上記スイッチブロック2と接続するシフタブロック6を有する。さらに、上記シフタブロック6は、冗長配線を含み、冗長配線及び行配線を構成する各配線の接続を制御するシフト用不揮発性スイッチ素子を備えることを特徴とする。さらに本実施形態によるプログラマブル論理集積回路は図1に示すように、コネクションブロック3と、配線、若しくはトラックと、I/O(Input/Output)ブロック5と、を有する。配線、若しくはトラックを、以下では配線4を例に説明する。スイッチブロック2では、行配線と列配線との接続状態が、その交差した位置のスイッチ用不揮発性スイッチ素子をオン状態にすることで接続状態に設定でき、オフ状態にすることで非接続状態に設定できる。スイッチブロック2のスイッチ用不揮発性スイッチ素子の一例として、以下では抵抗変化素子を用いた場合で説明するが、本発明はこれに限られるものではない。シフタブロック6のシフト用不揮発性スイッチ素子の一例として、以下では抵抗変化素子を用いた場合で説明するが、本発明はこれに限られるものではない。
図1では、ロジックブロック1が3×3のマトリックス状に配置されている場合を例示している。配線4は、ロジックブロック1を囲うように配置されている。図1では、行方向の配線数は4であり、列方向の配線数は3である。行方向と列方向の配線が交差する位置に、スイッチブロック2が配置されている。スイッチブロック2は、上下に3つの配線、左右に4つの配線に接続されている。左右の4つの配線のうち、1つはスペアの配線である。行方向、若しくは列方向の配線上に、コネクションブロック3が配置されている。シフタブロック6は、行方向に走る配線4の両端に配置されている。ロジックブロック1は、論理演算を行う。スイッチブロック2は、配線4間の接続を行う。コネクションブロック3は、配線4とロジックブロック1の接続を行う。I/Oブロック5は、外部との接続を行う。シフタブロック6は、配線4間の接続を行う。関連技術のプログラマブル論理集積回路とは、シフタブロック6と、スペアの配線とをさらに有する点が本実施形態のプログラマブル論理集積回路は異なる。
図2は、図1のコネクションブロック3の構成の一例を示すもので、配線H11、H12、H13、H04、V1と、抵抗変化素子R11、R12、R13、R14と、を含む。ここで、配線H04はスペアの配線であり、抵抗変化素子R14はスペアの抵抗変化素子である。図2のコネクションブロック3は、4つの配線から1つのロジックブロック1の入力ポートへの接続を行う際、又は1つのロジックブロック1の出力ポートから4つの配線のうち選択された配線への接続を行う際に、用いることができる。
抵抗変化素子は、フェーズチェンジランダムアクセスメモリ(PRAM)、レジスタンスランダムアクセスメモリ(ReRAM)、コンダクティブブリッジランダムアクセスメモリ(CBRAM)などのメモリ素子が利用できる。抵抗変化素子は、低抵抗状態、高抵抗状態の2つのいずれかの状態をとる。ここで、低抵抗状態をオン状態と定義する。また、高抵抗状態をオフ状態と定義する。さらに、抵抗変化素子の状態を、プログラムデータと対応付ける。低抵抗状態を、データ1の状態と定義する。高抵抗状態を、データ0の状態と定義する。抵抗変化素子がオン状態の時、電圧レベルで与えられる信号は抵抗変化素子を通過する。一方、抵抗変化素子がオフ状態の時、信号は抵抗変化素子によって遮断され、通過しない。
図3は図1のスイッチブロック2の構成の一例を示すもので、配線H11、H12、H13、H04、V2、V3、V4と、抵抗変化素子R21、R22、R23、R24、R31、R32、R33、R34、R41、R42、R43、R44と、を含む。ここで、配線H04はスペアの配線であり、抵抗変化素子R24、R34、R44はスペアの抵抗変化素子である。行方向に延伸した配線と、列方向に延伸した配線とは、その交差した位置の抵抗変化素子をオン状態にすることで接続状態に設定でき、オフ状態にすることで非接続状態に設定できる。
図4は図1のシフタブロック6の構成の一例を示すもので、配線H01、H02、H03、H04、H11、H12、H13と、抵抗変化素子R01、R02、R03、R01S、R02S、R03Sと、を含む。ここで、配線H04はスペアの配線である。
シフタブロック6は図4に示すように、抵抗網RN1、RN2、RN3を含む。抵抗網RN1は、配線H01と、配線H11と、配線H12と、配線H01と配線H11の間に形成される抵抗変化素子R01と、配線H01と配線H12の間に形成される抵抗変化素子R01Sと、を含む。抵抗網RN2は、配線H02と、配線H12と、配線H13と、配線H02と配線H12の間に形成される抵抗変化素子R02と、配線H02と配線H13の間に形成される抵抗変化素子R02Sと、を含む。抵抗網RN3は、配線H03と、配線H13と、配線H04と、配線H03と配線H13の間に形成される抵抗変化素子R03と、配線H03と配線H04の間に形成される抵抗変化素子R03Sと、を含む。
次に、本実施形態のプログラマブル論理集積回路の動作について説明する。第1実施形態におけるプログラマブル論理集積回路は2つのモードを有し、それぞれのモードにおいて、不良素子が存在する状況と不良素子が存在しない状況の合計4つの状況があり得る。第1のモードは、スペアの回路を不良素子の救済のみに利用するモードである。第2のモードは、スペアの回路を不良素子の救済のみならず、回路の柔軟性を高めるために利用するモードである。
図5は、本発明の第1実施形態における第1のモードにおいて、不良素子がない状況の設定データと抵抗変化素子の関係を示す回路図である。図5は、図1に示したプログラマブル論理集積回路の一部であり、行方向に延伸した配線上のコネクションブロック3と、スイッチブロック2と、2つのシフタブロックと、を示している。2つのシフタブロックは、第1のシフタブロック6と第2のシフタブロック6である。
第1のモードにおいて、論理合成、及び配置配線の結果、設定データが出力される。図5に抵抗変化素子Rxyに対応した設定データDxyを示した。ここで、xは0以上5以下、yは1以上3以下の整数である。第1のモードでは、第1のシフタブロックの抵抗変化素子R01S、R02S、R03Sをデータ0に対応した状態、つまり、オフ状態にプログラムする。また、第2のシフタブロックの抵抗変化素子R51S、R52S、R53Sをデータ0に対応した、つまり、オフ状態にプログラムする。また、スペア配線H04上の抵抗変化素子R14、R24、R34、R44をデータ0に対応した状態、つまり、オフ状態にプログラムする。以上のように抵抗変化素子を設定することで、スペア回路は利用せずに、所望の論理を実現することができる。
図6は、本発明の第1実施形態における第1のモードにおいて、不良素子が存在した状況の設定データと抵抗変化素子の関係を示す回路図である。図6は、図1に示したプログラマブル論理集積回路の一部であり、行方向に延伸した配線上のコネクションブロック3と、スイッチブロック2と、2つのシフタブロックを示している。2つのシフタブロックは、第1のシフタブロック6と第2のシフタブロック6である。図5と同じ論理を実現するように、論理合成、及び配置配線を行った結果、図5と同じ設定データが出力された場合について説明する。
図5の上から2行目の配線H12上の抵抗変化素子R22が不良であった場合を例にとって説明する。第1のシフタブロック6の第1抵抗網の抵抗変化素子R01をD01のデータに対応した状態にプログラムし、第1抵抗網の抵抗変化素子R01Sをデータ”0”に対応した状態、つまり、オフ状態にプログラムする。
さらに、第1のシフタブロック6の第2抵抗網の抵抗変化素子R02をデータ”0”に対応した状態、つまり、オフ状態にプログラムし、第2抵抗網の抵抗変化素子R02SをデータD02に対応した状態にプログラムする。
さらに、第1のシフタブロック6の第3抵抗網の抵抗変化素子R03をデータ”0”に対応した状態、つまり、オフ状態にプログラムし、第3抵抗網の抵抗変化素子R03SをデータD03に対応した状態にプログラムする。
さらに、第2のシフタブロック6の第1抵抗網の抵抗変化素子R51をD51のデータに対応した状態にプログラムし、第1抵抗網の抵抗変化素子R51Sをデータ”0”に対応した状態、つまり、オフ状態にプログラムする。
第2のシフタブロック6の第2抵抗網の抵抗変化素子R52をデータ”0”に対応した状態、つまり、オフ状態にプログラムし、第2抵抗網の抵抗変化素子R52SをデータD52に対応した状態にプログラムする。
第2のシフタブロック6の第3抵抗網の抵抗変化素子R53をデータ”0”に対応した状態、つまり、オフ状態にプログラムし、第3抵抗網の抵抗変化素子R03SをデータD53に対応した状態にプログラムする。
さらに、配線H11に接続された抵抗変化素子Rx1(R11、R21、R31、R41)を、データDx1(D11、D21、D31、D4)に対応した状態にプログラムする。配線H12に接続された抵抗変化素子Rx2(R12、R22、R32、R42)を、データ”0”に対応した状態、つまり、オフ状態にプログラムする。配線H13に接続された抵抗変化素子Rx3(R13、R23、R33、R43)を、データDx2(D12、D22、D32、D42)に対応した状態にプログラムする。配線H04に接続された抵抗変化素子Rx4(R14、R24、R34、R44)を、データDx3(D13、D23、D33、D43)に対応した状態にプログラムする。ここで、xは1以上4以下の整数である。
図5の上から2行目の配線H12上の抵抗変化素子R22が不良であった場合には、不良素子の接続した配線H12を上記プログラムによって切り離す。さらに、配線H12に接続された抵抗変化素子Rx2、配線H13に接続された抵抗変化素子Rx3、配線H04に接続された抵抗変化素子Rx4の設定データを上記プログラムによって、シフトする。このように、不良素子の接続した配線を切り離し、設定データをシフトすることで、不良素子を回避して所望の論理を実現することができる。
図7は、本発明の第1実施形態における第2のモードにおいて、設定データと抵抗変化素子の関係を示す回路図である。図7は、図2に示したプログラマブル論理集積回路の一部であり、行方向に延伸した配線上のコネクションブロック3と、スイッチブロック2と、2つのシフタブロックを示している。2つのシフタブロックは、第1のシフタブロック6と第2のシフタブロック6である。第2のモードは不良素子がない場合、シフタブロック、スペアの配線、及びスペアの抵抗変化素子を考慮して、配置配線を行い、より多様な論理を実現するモードである。尚、不良素子がある場合は不良素子のアドレス情報に基づき、不良素子を避けるように配置配線を行う。図7では、抵抗変化素子Rxyに対応した設定データDxyを示している。ここで、xは0以上5以下、yは1以上4以下の整数である。また、図7では、第1のシフタブロック6の抵抗変化素子R0ySに対応した設定データD0ySを示している。また、図7では、第2のシフタブロック6の抵抗変化素子R5ySに対応した設定データD5ySを示している。
回路の柔軟性を高める例として、配線リソースの競合を避けるためにシフタブロックを利用する例について、説明する。たとえば、配置配線のある段階で、配線H12が第1の信号を伝搬するために予約されたとする。このとき、たとえば第2の信号を配線H02から抵抗変化素子R02とR12とを介して配線V1へ伝搬させたい場合に、配線H12の配線リソースの競合が生じる。シフタブロックを利用できる第2のモードにおいては、第2の信号を配線H02から抵抗変化素子R02SとR13とを介して配線V1へ伝搬させることができるので、配線リソースの競合を解消することができる。以上のようにスペア回路を利用することで、配線リソースの競合を低減し、より多様な回路を実現できる。
尚、第1のモード、及び第2のモードを選択するために、プログラマブル論理集積回路に設定用のピンを設けてもよい。若しくは、プログラマブル論理集積回路に設定用のレジスタを設けてもよい。
尚、第1実施形態におけるプログラマブル論理集積回路は、シフタブロックを行方向に延伸した配線の両端に配置したが、配線の両端でなく、配線に対し周期的に配置してもよい。また、列方向に延伸した配線上に、シフタブロックを配置してもよい。
尚、図4のシフタブロック6の代わりに、図8に示す巡回型のシフタ回路を用いてもよい。図8に示す巡回型のシフタ回路は、図4のシフタブロック6と比較して、抵抗変化素子R04、抵抗変化素子R04S、及び巡回用の配線H0が追加されている点が、異なる。図8に示すシフタ回路によれば、信号を配線H04から抵抗変化素子R04S及び巡回用の配線H0を介して配線H11へ伝搬させることができる。
以上のように、本実施形態によれば、シフタブロック6(6、6)とスペア回路を用いて、不良素子を回避し、所望の論理回路を実現できる。さらに、第1のモードにおいて、プログラマブル論理集積回路の品質を一定に保つことができる。さらに、第2のモードにおいては、プログラマブル論理集積回路の品質がばらつくものの、より多様な回路を実現することができる。
〔第2実施形態〕
次に、本発明の第2実施形態によるプログラマブル論理集積回路について、説明する。図9は、本発明の第2実施形態によるプログラマブル論理集積回路の構成の一部を示すブロック図である。
本実施形態によるプログラマブル論理集積回路は、第1実施形態によるプログラマブル論理集積回路と同様に、スイッチブロック2、コネクションブロック3、及びシフタブロック6を有する。図9は、図1に示したプログラマブル論理集積回路の一部であり、行方向に延伸した配線上のコネクションブロック3と、スイッチブロック2と、シフタブロック6と、を示している。さらに本実施形態によるプログラマブル論理集積回路は図9に示すように、X側デコーダ9、X側ドライバ7、Y側デコーダ10、及びY側ドライバ8を有する。X側デコーダ9は行方向に延伸し、列方向に延伸したX選択線X1、X2、X3、X4を駆動する。X側ドライバ7は行方向に延伸し、列方向に延伸したXドライバ線XD0、XD1を駆動する。Y側デコーダ10は列方向に延伸し、行方向に延伸したY選択線Y1O、Y1E、Y2O、Y2E、Y3O、Y3E、Y4O、Y4Eを駆動する。Y側ドライバ8は列方向に延伸し、行方向に延伸したYドライバ線YD0を駆動する。
さらに本実施形態によるプログラマブル論理集積回路は図9に示すように、トランジスタTYyEを有する。yを1以上3以下の整数として、トランジスタTYyEは、そのソースを配線H0yに接続され、そのドレインをXドライバ線XD0に接続され、そのゲートをY選択線YyEに接続されている。
さらに本実施形態によるプログラマブル論理集積回路は図9に示すように、トランジスタTYyОを有する。yを1以上3以下の整数として、トランジスタTYyОは、そのソースを配線H1yに接続され、そのドレインをXドライバ線XD1に接続され、そのゲートをY選択線YyOに接続されている。図9ではyが4の場合、すなわちトランジスタTY4Оは、そのソースを配線H04に接続され、そのドレインをXドライバ線XD1に接続され、そのゲートをY選択線Y4Oに接続されている。
シフタブロック6の左右外側に位置するトランジスタ(TYyE、TYyО)で、Y選択線YyEとYyOを入れ替えることにより、シフタブロック6内の抵抗変化素子へのアクセスを実現している。
さらに本実施形態によるプログラマブル論理集積回路は図9に示すように、トランジスタTXxを有する。xを1以上4以下の整数として、トランジスタTXxは、そのソースを配線Vxに接続され、そのドレインをYドライバ線YD0に接続され、そのゲートをX選択線Xxに接続される。コネクションブロック3、スイッチブロック2内の抵抗変化素子へのアクセスは、トランジスタTYyOとTXxを利用して実現している。
抵抗変化素子の読み出しは、その両端に読み出し電圧Vrを印加し、抵抗変化素子に流れる電流をセンスすることで、抵抗変化素子の状態を判別できる。抵抗変化素子のデータ0のプログラムは、その両端にプログラム電圧−Vpを印加することで、オフ状態にできる。抵抗変化素子のデータ1のプログラムは、その両端にプログラム電圧+Vpを印加することで、オン状態にできる。
スタンバイ状態について説明する。スタンバイ状態においては、すべてのX選択線、Y選択線はLowレベルに駆動される。すべてのX側ドライバ7、Y側ドライバ8はLowレベルに駆動される。
シフタブロック6内の抵抗変化素子の読み出し動作について、説明する。抵抗変化素子R02からの読み出しを例にとって説明する。スタンバイ状態に続き、読み出し動作が始まると、Y選択線Y2E、Y2OはHighレベルに駆動され、Xドライバ線XD0、XD1は、一方がLowレベル、他方がVrの電圧に駆動される。トランジスタTY2E、TY2Oがオン状態となる。その他のXドライバ線、Yドライバ線はフローティングに設定される。抵抗変化素子R02を流れる読み出し電流Irをセンスすることで、データを判別することができる。
シフタブロック6内の抵抗変化素子のプログラム動作について、説明する。抵抗変化素子R02からの書き込みを例にとって、説明する。スタンバイ状態に続き、書き込み動作が始まると、すべてのX選択線、Y選択線はHighレベルに駆動される。すべてのXドライバ、YドライバはVp/2レベルに駆動される。次に、Y選択線Y2E、Y2Oは、Highレベルに駆動され、それ以外のY選択線、X選択線はLowレベルに駆動される。Xドライバ線XD0、XD1は、書き込みデータに応じて、一方がLowレベル、他方がVpの電圧に駆動される。トランジスタTY2E、TY2Oがオン状態となる。その他のXドライバ線、Yドライバ線は、フローティングに設定される。抵抗変化素子R02に印加された電圧により、所望のデータをプログラムすることができる。
コネクションブロック3、又はスイッチブロック2内の抵抗変化素子の読み出し動作について、説明する。抵抗変化素子R12からの読み出しを例にとって、説明する。スタンバイ状態に続き、読み出し動作が始まると、Y選択線Y2OはHighレベルに駆動され、X選択線X1はHighレベルに駆動され、Xドライバ線XD1と、Yドライバ線YD0は、一方がLowレベル、他方がVrの電圧に駆動される。トランジスタTY2O、TX1がオン状態となる。その他のXドライバ線、Yドライバ線はフローティングに設定される。抵抗変化素子R12に流れる読み出し電流Irをセンスすることで、データを判別することができる。
コネクションブロック3、又はスイッチブロック2内の抵抗変化素子のプログラム動作について、説明する。抵抗変化素子R12からの書き込みを例にとって説明する。スタンバイ状態に続き、書き込み動作が始まると、すべてのX選択線、Y選択線はHighレベルに駆動される。すべてのXドライバ、YドライバはVp/2レベルに駆動される。Y選択線Y2OはHighレベルに駆動され、X選択線X1はHighレベルに駆動され、それ以外のY選択線、X選択線はLowレベルに駆動される。Xドライバ線XD1と、Yドライバ線YD0は、書き込みデータに応じて、一方がLowレベル、他方がVpの電圧に駆動される。トランジスタTY2O、TX1がオン状態となる。その他のXドライバ線、Yドライバ線はフローティングに設定される。抵抗変化素子R12に印加された電圧により、所望のデータをプログラムすることができる。
尚、X側デコーダ9、X側ドライバ7、Y側デコーダ10、及びY側ドライバ8は不良素子のアドレス情報に応じて、本発明の第1実施形態で示したように、書き込むデータをシフトするように構成してもよい。
以上のように、本実施形態によれば、シフタブロック6、コネクションブロック3、スイッチブロック2の抵抗変化素子を所望の状態にプログラムすることができるので、不良素子を回避し、所望の論理回路を実現できる。
以上、本発明の好ましい実施形態を説明したが、本発明はこれに限定されるものではない。請求の範囲に記載した発明の範囲内で、種々の変形が可能であり、それらも本発明の範囲に含まれることはいうまでもない。
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)複数のロジックブロックと、
行配線と列配線の接続をスイッチ用不揮発性スイッチ素子により切り換えるスイッチブロックと、
入出力配線を前記スイッチブロックと接続するシフタブロックとを有し、
前記シフタブロックは、冗長配線を含み、
前記冗長配線及び前記行配線を構成する各配線の接続を制御するシフト用不揮発性スイッチ素子を備える、プログラマブル論理集積回路。
(付記2)第1配線と、第2配線と、第3配線と、前記第1配線と前記第2配線の間に形成された第1の抵抗変化素子と、前記第1配線と前記第3配線の間に形成された第2の抵抗変化素子とを少なくとも含む抵抗網を備えたプログラマブル論理集積回路であって、
前記抵抗網の第1の利用状態では、前記第1の抵抗変化素子は第1のデータに対応した状態にプログラムされ、前記第2の抵抗変化素子はオフ状態にプログラムされ、
前記抵抗網の第2の利用状態では、前記第1の抵抗変化素子はオフ状態にプログラムされ、前記第2の抵抗変化素子を第1のデータに対応した状態にプログラムされる、プログラマブル論理集積回路。
(付記3)第3の抵抗変化素子と、前記第1配線を含む複数の配線のうち、お互いに隣接していない配線同士を前記第3の抵抗変化素子を介して接続する巡回用の第4配線とをさらに含む、付記2に記載のプログラマブル論理集積回路。
(付記4)Nを整数とし、N個の前記抵抗網が隣接して配置されたシフタブロックを含み、
iを1以上N−1以下の整数として、i番目の抵抗網の第3配線と、i+1番目の抵抗網の第2配線が共通の配線であり、
jを1以上N以下のある整数として、
iがjより小さい場合、
i番目の抵抗網は前記第1の利用状態であり、i番目の抵抗網の第1の抵抗変化素子を第iのデータに対応した状態にプログラムされ、i番目の抵抗網の第2の抵抗変化素子をオフ状態にプログラムされ、
iがjと等しい、若しくは大きい場合、
i番目の抵抗網は前記第2の利用状態であり、i番目の第1の抵抗変化素子をオフ状態にプログラムされ、i番目の第2の抵抗変化素子を第iのデータに対応した状態にプログラムされことを特徴とするシフタブロックを含む、付記2又は付記3に記載のプログラマブル論理集積回路。
(付記5)複数のトラックと、前記複数のトラックの接続関係を規定するスイッチブロックと、論理演算を行うロジックブロックと、前記複数のトラックと前記ロジックブロックの接続関係を規定するコネクションブロックとをさらに含み、
前記シフタブロックの第1配線、第2配線、第3配線は前記トラックに接続され、
前記シフタブロックのi番目の抵抗網の第2配線と接続された第iのトラックにおいて、iがjより小さい場合、
第iのトラックに接続された前記コネクションブロック又は前記スイッチブロックの抵抗変化素子セットを第iのデータセットに対応した状態にプログラムされる、付記4に記載のプログラマブル論理集積回路。
(付記6)複数のトラックと、前記複数のトラックの接続関係を規定するスイッチブロックと、論理演算を行うロジックブロックと、前記複数のトラックと前記ロジックブロックの接続関係を規定するコネクションブロックとをさらに含み、
前記シフタブロックの第1配線、第2配線、及び第3配線は前記トラックに接続され、
前記シフタブロックのi番目の抵抗網の第2配線と接続された第iのトラックにおいて、iがjと等しい場合、
第iのトラックに接続された前記コネクションブロック又は前記スイッチブロックの抵抗変化素子セットをオフ状態にプログラムされる、付記4に記載のプログラマブル論理集積回路。
(付記7)複数のトラックと、前記複数のトラックの接続関係を規定するスイッチブロックと、論理演算を行うロジックブロックと、前記複数のトラックと前記ロジックブロックの接続関係を規定するコネクションブロックとをさらに含み、
前記シフタブロックの第1配線、第2配線、第3配線は前記トラックに接続され、
前記シフタブロックのi番目の抵抗網の第2配線と接続された第iのトラックにおいて、iがjより大きい場合、
第i+1のトラックに接続された前記コネクションブロック又は前記スイッチブロックの抵抗変化素子セットを第iのデータセットに対応した状態にプログラムされる、付記4に記載のプログラマブル論理集積回路。
(付記8)前記抵抗網の第1配線上の第1のトランジスタと、前記抵抗網の第2配線上の第2のトランジスタと、前記抵抗網の第3配線上の第3のトランジスタとを備え、
前記第1のトランジスタと前記第2のトランジスタがオン状態、前記第3のトランジスタがオフ状態に設定されて、前記第1の抵抗変化素子のデータを書き換え、
前記第1のトランジスタと前記第3のトランジスタがオン状態、前記第2のトランジスタがオフ状態に設定されて、前記第2の抵抗変化素子のデータを書き換える、付記2乃至付記7のいずれか一つに記載のプログラマブル論理集積回路。
(付記9)第1のモードと第2のモードを備え、
前記第1のモードは、
シフタブロックに接続された利用可能な配線数をNとして、所望の回路を実現するための論理合成及び配置配線を行い、さらに、不良素子のアドレス情報に応じて、jの値を決定し、
前記第2のモードは、
シフタブロックに接続された利用可能な配線数をN+1として、所望の回路を実現するための論理合成及び配置配線を行う、付記2乃至付記8のいずれか一つに記載のプログラマブル論理集積回路。
(付記10)
前記論理合成及び前記配置配線を、不良素子のアドレス情報を考慮して行う、付記9に記載のプログラマブル論理集積回路。
(付記11)前記第1のモードと前記第2のモードは、
モード設定用の外部ピンの設定値の値、若しくはモード設定用のレジスタの値によってモードが決定される、付記9又は付記10に記載のプログラマブル論理集積回路。
この出願は、2014年3月17日に出願された日本出願特願2014−53302号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
1 ロジックブロック
2 スイッチブロック
3 コネクションブロック
4 配線
5 I/Oブロック
6、6、6 シフタブロック
7 X側ドライバ
8 Y側ドライバ
9 X側デコーダ
10 Y側デコーダ

Claims (10)

  1. 複数のロジックブロックと、
    行配線と列配線の接続をスイッチ用不揮発性スイッチ素子により切り換えるスイッチブロックと、
    入出力配線を前記スイッチブロックと接続するシフタブロックとを有し、
    前記シフタブロックは、冗長配線を含み、
    前記冗長配線及び前記行配線を構成する各配線の接続を制御するシフト用不揮発性スイッチ素子を備える、
    プログラマブル論理集積回路。
  2. 第1配線と、第2配線と、第3配線と、前記第1配線と前記第2配線の間に形成された第1の抵抗変化素子と、前記第1配線と前記第3配線の間に形成された第2の抵抗変化素子とを少なくとも含む抵抗網を備えたプログラマブル論理集積回路であって、
    前記抵抗網の第1の利用状態では、前記第1の抵抗変化素子は第1のデータに対応した状態にプログラムされ、前記第2の抵抗変化素子はオフ状態にプログラムされ、
    前記抵抗網の第2の利用状態では、前記第1の抵抗変化素子はオフ状態にプログラムされ、前記第2の抵抗変化素子を第1のデータに対応した状態にプログラムされる、
    プログラマブル論理集積回路。
  3. Nを整数とし、N個の前記抵抗網が隣接して配置されたシフタブロックを含み、
    iを1以上N−1以下の整数として、i番目の抵抗網の第3配線と、i+1番目の抵抗網の第2配線が共通の配線であり、
    jを1以上N以下のある整数として、
    iがjより小さい場合、
    i番目の抵抗網は前記第1の利用状態であり、i番目の抵抗網の第1の抵抗変化素子を第iのデータに対応した状態にプログラムされ、i番目の抵抗網の第2の抵抗変化素子をオフ状態にプログラムされ、
    iがjと等しい、若しくは大きい場合、
    i番目の抵抗網は前記第2の利用状態であり、i番目の第1の抵抗変化素子をオフ状態にプログラムされ、i番目の第2の抵抗変化素子を第iのデータに対応した状態にプログラムされことを特徴とするシフタブロックを含む、請求項2に記載のプログラマブル論理集積回路。
  4. 複数のトラックと、前記複数のトラックの接続関係を規定するスイッチブロックと、論理演算を行うロジックブロックと、前記複数のトラックと前記ロジックブロックの接続関係を規定するコネクションブロックとをさらに含み、
    前記シフタブロックの第1配線、第2配線、第3配線は前記トラックに接続され、
    前記シフタブロックのi番目の抵抗網の第2配線と接続された第iのトラックにおいて、iがjより小さい場合、
    第iのトラックに接続された前記コネクションブロック又は前記スイッチブロックの抵抗変化素子セットを第iのデータセットに対応した状態にプログラムされる、請求項3に記載のプログラマブル論理集積回路。
  5. 複数のトラックと、前記複数のトラックの接続関係を規定するスイッチブロックと、論理演算を行うロジックブロックと、前記複数のトラックと前記ロジックブロックの接続関係を規定するコネクションブロックとをさらに含み、
    前記シフタブロックの第1配線、第2配線、及び第3配線は前記トラックに接続され、
    前記シフタブロックのi番目の抵抗網の第2配線と接続された第iのトラックにおいて、iがjと等しい場合、
    第iのトラックに接続された前記コネクションブロック又は前記スイッチブロックの抵抗変化素子セットをオフ状態にプログラムされる、請求項3に記載のプログラマブル論理集積回路。
  6. 複数のトラックと、前記複数のトラックの接続関係を規定するスイッチブロックと、論理演算を行うロジックブロックと、前記複数のトラックと前記ロジックブロックの接続関係を規定するコネクションブロックとをさらに含み、
    前記シフタブロックの第1配線、第2配線、第3配線は前記トラックに接続され、
    前記シフタブロックのi番目の抵抗網の第2配線と接続された第iのトラックにおいて、iがjより大きい場合、
    第i+1のトラックに接続された前記コネクションブロック又は前記スイッチブロックの抵抗変化素子セットを第iのデータセットに対応した状態にプログラムされる、請求項3に記載のプログラマブル論理集積回路。
  7. 前記抵抗網の第1配線上の第1のトランジスタと、前記抵抗網の第2配線上の第2のトランジスタと、前記抵抗網の第3配線上の第3のトランジスタとを備え、
    前記第1のトランジスタと前記第2のトランジスタがオン状態、前記第3のトランジスタがオフ状態に設定されて、前記第1の抵抗変化素子のデータを書き換え、
    前記第1のトランジスタと前記第3のトランジスタがオン状態、前記第2のトランジスタがオフ状態に設定されて、前記第2の抵抗変化素子のデータを書き換える、請求項2乃至請求項6のいずれか一項に記載のプログラマブル論理集積回路。
  8. 第1のモードと第2のモードを備え、
    前記第1のモードは、
    シフタブロックに接続された利用可能な配線数をNとして、所望の回路を実現するための論理合成及び配置配線を行い、さらに、不良素子のアドレス情報に応じて、jの値を決定し、
    前記第2のモードは、
    シフタブロックに接続された利用可能な配線数をN+1として、所望の回路を実現するための論理合成及び配置配線を行う、請求項2乃至請求項7のいずれか一項に記載のプログラマブル論理集積回路。
  9. 前記論理合成及び前記配置配線を、不良素子のアドレス情報を考慮して行う、請求項8に記載のプログラマブル論理集積回路。
  10. 前記第1のモードと前記第2のモードは、
    モード設定用の外部ピンの設定値の値、若しくはモード設定用のレジスタの値によってモードが決定される、請求項8又は請求項9に記載のプログラマブル論理集積回路。
JP2016508494A 2014-03-17 2015-02-27 プログラマブル論理集積回路 Pending JPWO2015141153A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014053302 2014-03-17
JP2014053302 2014-03-17
PCT/JP2015/001049 WO2015141153A1 (ja) 2014-03-17 2015-02-27 プログラマブル論理集積回路

Publications (1)

Publication Number Publication Date
JPWO2015141153A1 true JPWO2015141153A1 (ja) 2017-04-06

Family

ID=54144144

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016508494A Pending JPWO2015141153A1 (ja) 2014-03-17 2015-02-27 プログラマブル論理集積回路

Country Status (3)

Country Link
US (1) US9692422B2 (ja)
JP (1) JPWO2015141153A1 (ja)
WO (1) WO2015141153A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4919780A (ja) * 1972-06-14 1974-02-21
JPH04146664A (ja) * 1990-10-08 1992-05-20 Kawasaki Steel Corp 集積回路
JP2002009156A (ja) * 2000-06-16 2002-01-11 Hitachi Ltd 論理モジュール及び論理エミュレーション方法
JP2004214619A (ja) * 2002-12-02 2004-07-29 Marvell World Trade Ltd 自己訂正可能な半導体及びその動作方法
WO2007032184A1 (ja) * 2005-08-23 2007-03-22 Nec Corporation 半導体装置、半導体チップ、チップ間配線のテスト方法、および、チップ間配線切り替え方法
WO2013136798A1 (ja) * 2012-03-16 2013-09-19 日本電気株式会社 抵抗変化素子、その抵抗変化素子を有する半導体装置、その半導体装置の製造方法およびその抵抗変化素子を用いたプログラミング方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4899067A (en) 1988-07-22 1990-02-06 Altera Corporation Programmable logic devices with spare circuits for use in replacing defective circuits
US5434514A (en) 1992-11-19 1995-07-18 Altera Corporation Programmable logic devices with spare circuits for replacement of defects
US6201404B1 (en) * 1998-07-14 2001-03-13 Altera Corporation Programmable logic device with redundant circuitry
US6965249B2 (en) * 2001-10-15 2005-11-15 Altera Corporation Programmable logic device with redundant circuitry
US7499315B2 (en) * 2003-06-11 2009-03-03 Ovonyx, Inc. Programmable matrix array with chalcogenide material
JP4356542B2 (ja) 2003-08-27 2009-11-04 日本電気株式会社 半導体装置
US7365355B2 (en) * 2004-11-08 2008-04-29 Ovonyx, Inc. Programmable matrix array with phase-change material
US7772872B2 (en) * 2008-09-08 2010-08-10 Altera Corporation Multi-row block supporting row level redundancy in a PLD

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4919780A (ja) * 1972-06-14 1974-02-21
JPH04146664A (ja) * 1990-10-08 1992-05-20 Kawasaki Steel Corp 集積回路
JP2002009156A (ja) * 2000-06-16 2002-01-11 Hitachi Ltd 論理モジュール及び論理エミュレーション方法
JP2004214619A (ja) * 2002-12-02 2004-07-29 Marvell World Trade Ltd 自己訂正可能な半導体及びその動作方法
WO2007032184A1 (ja) * 2005-08-23 2007-03-22 Nec Corporation 半導体装置、半導体チップ、チップ間配線のテスト方法、および、チップ間配線切り替え方法
WO2013136798A1 (ja) * 2012-03-16 2013-09-19 日本電気株式会社 抵抗変化素子、その抵抗変化素子を有する半導体装置、その半導体装置の製造方法およびその抵抗変化素子を用いたプログラミング方法

Also Published As

Publication number Publication date
US20170070228A1 (en) 2017-03-09
US9692422B2 (en) 2017-06-27
WO2015141153A1 (ja) 2015-09-24

Similar Documents

Publication Publication Date Title
US10020054B2 (en) Memristor-based processor integrating computing and memory and method for using the processor
US8456892B2 (en) Semiconductor integrated circuit
US20110141831A1 (en) Read buffering systems for accessing multiple layers of memory in integrated circuits
CN1716180A (zh) 半导体器件
CN108139978A (zh) 具有高速缓存的存储器模块操作的存储器系统
US9646686B2 (en) Reconfigurable circuit including row address replacement circuit for replacing defective address
US8054699B2 (en) Semiconductor memory device having a double branching bidirectional buffer
US7898895B2 (en) Semiconductor device
WO2015141153A1 (ja) プログラマブル論理集積回路
US20200295764A1 (en) Reconfigurable circuit and the method for using the same
WO2007094133A1 (ja) 強誘電体キャパシタを用いた演算処理回路および演算方法
JP2018120992A (ja) 集積回路および電子機器
US8760943B2 (en) Semiconductor apparatus
US20080117710A1 (en) Look-up table cascade circuit, look-up table cascade array circuit and a pipeline control method thereof
WO2003073429A1 (fr) Memoire a semi-conducteurs non volatile
EP3073378B1 (en) Processing apparatus and control method thereof
JP6795103B2 (ja) 不揮発性抵抗スイッチを用いる再構成可能回路
JP2011160211A (ja) 半導体集積回路、半導体集積回路の構成変更方法
JP4621424B2 (ja) プログラマブル論理回路およびプログラマブル論理回路の配線構造
Du Nguyen et al. Interconnect networks for resistive computing architectures
JP2003007079A (ja) 半導体集積回路
JPWO2018051946A1 (ja) 集積回路
CN110572149B (zh) 一种Toffoli门电路及其操作方法
JP5365638B2 (ja) 半導体プログラマブルデバイス及び半導体プログラマブルデバイスにおける信号転送方法
JP2008097735A (ja) メモリ回路及び半導体装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180821

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181017

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20181106