JPWO2014080872A1 - 再構成可能な半導体装置の論理構成方法 - Google Patents
再構成可能な半導体装置の論理構成方法 Download PDFInfo
- Publication number
- JPWO2014080872A1 JPWO2014080872A1 JP2014548558A JP2014548558A JPWO2014080872A1 JP WO2014080872 A1 JPWO2014080872 A1 JP WO2014080872A1 JP 2014548558 A JP2014548558 A JP 2014548558A JP 2014548558 A JP2014548558 A JP 2014548558A JP WO2014080872 A1 JPWO2014080872 A1 JP WO2014080872A1
- Authority
- JP
- Japan
- Prior art keywords
- logic
- data
- circuit
- netlist
- truth table
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 101
- 239000004065 semiconductor Substances 0.000 title claims abstract description 37
- 238000003860 storage Methods 0.000 claims abstract description 117
- 230000004044 response Effects 0.000 claims abstract description 14
- 230000008569 process Effects 0.000 claims description 40
- 238000012545 processing Methods 0.000 claims description 38
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 239000000284 extract Substances 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 29
- 230000002457 bidirectional effect Effects 0.000 description 27
- 230000015572 biosynthetic process Effects 0.000 description 20
- 238000003786 synthesis reaction Methods 0.000 description 20
- 239000003292 glue Substances 0.000 description 19
- 230000006870 function Effects 0.000 description 13
- 239000000872 buffer Substances 0.000 description 10
- 230000010365 information processing Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 238000004088 simulation Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 238000001308 synthesis method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
- G06F30/343—Logical level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/327—Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17724—Structural details of logic blocks
- H03K19/17728—Reconfigurable logic blocks, e.g. lookup tables
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17736—Structural details of routing resources
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17748—Structural details of configuration resources
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Computer Networks & Wireless Communication (AREA)
- Logic Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
それぞれの前記記憶部は、アドレス入力に対して論理値を出力するための真理値表データをそのメモリセルに記憶し、論理回路として動作するように構成され、
前記記憶部は、入力線および出力線の対を少なくとも2のn倍(nは2以上の整数)本有し、
前記記憶部同士は、1つの記憶部からの2のn倍本の出力線が、他の2つの記憶部のn本の入力線に接続され、
前記論理構成方法は、
回路構成を記述した回路記述に基づいて、回路の接続情報を有するネットリストを生成し、
前記ネットリストから、順序回路を含んで成る論理コーンを抽出し、
前記論理コーンに対する入力線の数を2分のnで除算した数に相当する前記記憶部の段数で、前記論理コーンを構成する複数の前記記憶部のための前記真理値表データを、生成することを特徴とする再構成可能な半導体装置の論理構成方法。
2.前記ネットリストの生成は、高級言語で記述されたプログラムの中の変数ビットを、より小さいビットに型変換するステップを含む、項目1に記載の論理構成方法。
3.前記記憶部は、一辺と、前記一辺と反対側の他辺で他の記憶部に接続するとともに、複数のメモリセルユニットを有し、且つ、
前記複数のメモリセルユニットの少なくとも1つが有する複数のメモリセルは、前記一辺におけるアドレス入力に対して、前記一辺から論理値を出力するための第1真理値表データと前記他辺から論理値を出力するための第2真理値表データとを記憶し、
前記真理値表データを生成するステップは、前記第1真理値表データと、前記第2真理値表データを生成するステップを含む、項目1又は2に記載の論理構成方法。
4.前記ネットリストの生成は、高級言語で記述されたプログラムに対して、ループ展開、及び/又は、並列化処理するステップを含む、項目1〜3の何れか1項に記載の論理構成方法。
5.前記ネットリストから、スキャン化可能な順序回路データセットを抽出して、スキャン化された順序回路データセットを生成し、
前記スキャン化できる順序回路データセットから、前記複数のメモリセルユニットのうち第1セットに書き込むための第1真理値表データセットを生成し、
前記ネットリストの組合せ論理回路データセットから、前記複数のメモリセルユニットのうち第2セットに書き込むための第2真理値表データセットを生成する、項目1〜4の何れか1項に記載の論理構成方法。
6.前記半導体装置は、前記記憶部とともに、順序回路要素を有する論理部を、複数個有し、 前記論理構成方法は、
回路構成を記述した回路記述から、論理回路データ、順序回路データ、及び、前記論理回路データと順序回路データの接続情報を記述するネットリストを生成し、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データと前記順序回路データをそれぞれ前記メモリセル及び論理回路要素に割り当てる、項目1〜5の何れか1項に記載の論理構成方法。
7.前記半導体装置は、前記論理部の外部に、スイッチ要素を有し、
前記スイッチ要素に前記ネットリストの接続情報を割り当てることをさらに有する、項目6の論理構成方法。
8.前記記憶部のメモリセルは、あるアドレスで特定された入力値を、他の論理部の記憶部に出力するように構成される真理値表データを書き込むと、接続要素として動作し、
前記記憶部に前記ネットリストの接続情報を割り当てることをさらに有する、項目6又は7に記載の論理構成方法。
9.前記ネットリストを生成した後に、順序回路データを削除し、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データを前記メモリセルに割り当てた後に、前記順序回路データを論理回路要素に割り当てる、項目6〜8の何れか1項に記載の論理構成方法。
10.前記ネットリスト生成ステップは、論理回路データ、順序回路データ、及び、前記論理回路データを含む並列入力直列出力形のシフトレジスタを生成することを含む、項目6〜9の何れか1項に記載の論理構成方法。
11.前記順序回路要素は、前記記憶部から読み出したデータを保持するとともに、クロックに同期して保持したデータを出力する順序回路である、項目6〜10の何れか1項に記載の論理構成方法。
前記半導体装置は、それぞれの前記記憶部は、アドレス入力に対して論理値を出力するための真理値表データをそのメモリセルに記憶し、論理回路として動作するように構成され、
前記記憶部は、入力線および出力線の対を少なくとも2のn倍(nは2以上の整数)本有し、
前記記憶部同士は、1つの記憶部からの2のn倍本の出力線が、他の2つの記憶部のn本の入力線に接続され、
前記論理構成装置は、プロセッサを備え、
前記プロセッサは、
回路構成を記述した回路記述に基づいて、回路の接続情報を有するネットリストを生成し、
前記ネットリストから、順序回路を含んで成る論理コーンを抽出し、
前記論理コーンに対する入力線の数を2分のnで除算した数に相当する記憶部の段数で、前記論理コーンを構成する複数の前記記憶部のための前記真理値表データを、生成するように構成される、ことを特徴とする論理構成装置。
13.前記ネットリストの生成は、高級言語で記述されたプログラムの中の変数ビットを、より小さいビットに型変換することを含む、項目12に記載の論理構成装置。
14.前記記憶部は、一辺と、前記一辺と反対側の他辺で他の記憶部に接続するとともに、複数のメモリセルユニットを有し、且つ、
前記複数のメモリセルユニットの少なくとも1つが有する複数のメモリセルは、前記一辺におけるアドレス入力に対して、前記一辺から論理値を出力するための第1真理値表データと前記他辺から論理値を出力するための第2真理値表データとを記憶し、
前記真理値表データを生成することは、前記第1真理値表データと、前記第2真理値表データを生成することを含む、項目12又は13に記載の論理構成装置。
15.前記ネットリストの生成は、高級言語で記述されたプログラムに対して、ループ展開、及び/又は、並列化処理することを含む、項目12〜14の何れか1項に記載の論理構成装置。
16.前記プロセッサは、前記ネットリストから、スキャン化可能な順序回路データセットを抽出して、スキャン化された順序回路データセットを生成し、
前記スキャン化できる順序回路データセットから、前記複数のメモリセルユニットのうち第1セットに書き込むための第1真理値表データセットを生成し、
前記ネットリストの組合せ論理回路データセットから、前記複数のメモリセルユニットのうち第2セットに書き込むための第2真理値表データセットを生成するように構成される、項目12〜15の何れか1項に記載の論理構成装置。
17.前記半導体装置は、前記記憶部とともに、順序回路要素を有する論理部を、複数個有し、
前記プロセッサは、
回路構成を記述した回路記述から、論理回路データ、順序回路データ、及び、前記論理回路データと順序回路データの接続情報を記述するネットリストを生成し、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データと前記順序回路データをそれぞれ前記メモリセル及び論理回路要素に割り当てる、項目12〜16の何れか1項に記載の論理構成装置。
18.前記半導体装置は、論理部の外部に、スイッチ要素を有し、
前記スイッチ要素に前記ネットリストの接続情報を割り当てることをさらに有する、項目17の論理構成装置。
19.前記記憶部のメモリセルは、あるアドレスで特定された入力値を、他の論理部の記憶部に出力するように構成される真理値表データを書き込むと、接続要素として動作し、
前記プロセッサは、前記記憶部に前記ネットリストの接続情報を割り当てるように構成される、項目17又は18に記載の論理構成方法。
20.前記プロセッサは、
前記ネットリストを生成した後に、順序回路データを削除し、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データを前記メモリセルに割り当てた後に、前記順序回路データを論理回路要素に割り当てるように構成される、項目17〜19の何れか1項に記載の論理構成方法。
21.前記ネットリスト生成は、論理回路データ、順序回路データ、及び、前記論理回路データを含む並列入力直列出力形のシフトレジスタを生成することを含む、項目17〜20の何れか1項に記載の論理構成装置。
22.前記順序回路要素は、前記記憶部から読み出したデータを保持するとともに、クロックに同期して保持したデータを出力する順序回路である、項目17〜21の何れか1項に記載の論理構成装置。
23.データを記憶するメモリセルを複数備えた記憶部を複数有する再構成可能な半導体装置の論理構成を行うのためのプログラムであって、
前記半導体装置は、それぞれの前記記憶部は、アドレス入力に対して論理値を出力するための真理値表データをそのメモリセルに記憶し、論理回路として動作するように構成され、
前記記憶部は、入力線および出力線の対を少なくとも2のn倍(nは2以上の整数)本有し、
前記記憶部同士は、1つの記憶部からの2のn倍本の出力線が、他の2つの記憶部のn本の入力線に接続され、
前記プロセッサに、
回路構成を記述した回路記述に基づいて、回路の接続情報を有するネットリストを生成する処理、
前記ネットリストから、順序回路を含んで成る論理コーンを抽出する処理、
前記論理コーンに対する入力線の数を2分のnで除算した数に相当する前記記憶部の段数で、前記論理コーンを構成する複数の前記記憶部のための前記真理値表データを、生成する処理を実行させることを特徴とするプログラム。
24.前記ネットリストの生成は、高級言語で記述されたプログラムの中の変数ビットを、より小さいビットに型変換することを含む、項目23に記載のプログラム。
25.前記記憶部は、一辺と、前記一辺と反対側の他辺で他の記憶部に接続するとともに、複数のメモリセルユニットを有し、且つ、
前記複数のメモリセルユニットの少なくとも1つが有する複数のメモリセルは、前記一辺におけるアドレス入力に対して、前記一辺から論理値を出力するための第1真理値表データと前記他辺から論理値を出力するための第2真理値表データとを記憶し、
前記真理値表データを生成する処理は、前記第1真理値表データと、前記第2真理値表データを生成する処理を含む、項目23又は24に記載のプログラム。
26.前記ネットリストの生成は、高級言語で記述されたプログラムに対して、ループ展開、及び/又は、並列化処理することを含む、項目23〜25の何れか1項に記載のプログラム。
27.前記ネットリストから、スキャン化可能な順序回路データセットを抽出して、スキャン化された順序回路データセットを生成する処理、
前記スキャン化できる順序回路データセットから、前記複数のメモリセルユニットのうち第1セットに書き込むための第1真理値表データセットを生成する処理、
前記ネットリストの組合せ論理回路データセットから、前記複数のメモリセルユニットのうち第2セットに書き込むための第2真理値表データセットを生成する処理、を実行させる項目23〜26の何れか1項に記載のプログラム。
28.前記半導体装置は、前記記憶部とともに、順序回路要素を有する論理部を、複数個有し、
前記プロセッサに、
回路構成を記述した回路記述から、論理回路データ、順序回路データ、及び、前記論理回路データと順序回路データの接続情報を記述するネットリストを生成する処理、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データと前記順序回路データをそれぞれ前記メモリセル及び論理回路要素に割り当てる処理を実行させる、項目23〜27プログラム。
29.前記半導体装置は、論理部の外部に、スイッチ要素を有し、
前記プログラムは、前記スイッチ要素に前記ネットリストの接続情報を割り当てる処理を実行させる、項目28に記載のプログラム。
30.前記記憶部のメモリセルは、あるアドレスで特定された入力値を、他の論理部の記憶部に出力するように構成される真理値表データを書き込むと、接続要素として動作し、
前記プロセッサは、前記記憶部に前記ネットリストの接続情報を割り当てる処理を実行させる、項目28又は29に記載のプログラム。
31.前記プロセッサに、
前記ネットリストを生成した後に、順序回路データを削除し、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データを前記メモリセルに割り当てた後に、前記順序回路データを論理回路要素に割り当てる、処理を実行させる項目28〜30の何れか1項に記載の論理構成方法。
32.前記ネットリスト生成は、論理回路データ、順序回路データ、及び、前記論理回路データを含む並列入力直列出力形のシフトレジスタを生成する処理を含む、項目28〜31の何れか1項に記載のプログラム。
33.前記順序回路要素は、前記記憶部から読み出したデータを保持するとともに、クロックに同期して保持したデータを出力する順序回路である、項目23〜32の何れか1項に記載のプログラム。
34.項目23〜33の何れか1項に示すプログラムを格納する記憶媒体。
図1は、本実施形態に係る再構成可能な半導体装置の全体構成の一例を示す図である。以下、当該再構成可能な論理デバイスをMRLD(Memory based Reconfigurable Logic Device)と呼ぶ。MRLDは、FPGA同様の機能を備えているデバイスであるが、その構造が異なる。FPGAはLUTとスイッチブロック、コネクションブロックなどによって構成され、論理資源と配線資源の割合は固定である。これに対し、MRLDは、MLUTと呼ばれる論理素子、配線素子の双方として利用可能な素子を並べた構成となっている。この構成により、全体の面積における論理領域の割合を高めることができる。
図3Aは、MLUTの回路例を示す図である。図3Aに示すMLUT30は、メモリセルユニット31、アドレスデコーダ9、アドレスセレクタ11、I/O(入出力)バッファ12、及び、データセレクタ13を有する。
図3Bは、シングルポートのメモリセルの一例を示す図である。メモリセル(「記憶素子」とも言う)は、デコード信号の信号線であるワード線と、ビット線の交差点に配置される。図3Bに示される記憶素子40では、pMOS(Metal Oxide Semiconductor)トランジスタ161、162、及び、nMOSトランジスタ163、164、165、166を備える。pMOSトランジスタ161のソースと、pMOSトランジスタ162のソースとは、VDD(電源電圧端)に接続する。nMOSトランジスタ163のドレーンと、nMOSトランジスタ164のドレーンは、VSS(接地電圧端)に接続される。
図4は、2メモリセルユニット型のMLUTの一例を示す図である。図4に示すMLUT30は、矩形状であり、後述する双方向のアドレス線又はデータ線接続に限定される双方向型MLUTである。MLUTは、一辺において複数のアドレス線又は複数のデータ線で他の記憶部に接続し、及び、前記一辺と反対側の他辺において複数のアドレス線又は複数のデータ線で他の記憶部に接続するとともに、複数のメモリセルユニット31A、31Bを有する。
図6は、MLUT同士の接続が1つのアドレス又はデータ線で接続される構成例を示す図である。図6に示されるMRLD20は、MLUT同士の接続が1つのアドレス又はデータ線で接続するように構成されるMLUT30a〜30fが示される。このような構成は、隣接するMLUTが1つのAD対で接続するので、隣接するMLUTと送信するデータは、1ビットとなる。このように、隣接するMLUTと、多方向で接続し、伝送ビット幅が1ビットであるMLUTを「多方向型MLUT」と呼ぶ。特許文献4の図31A〜図31Dでは、“be_adder”等単純な回路構成をMRLDで実現する場合に、MLUTの使用数が最も少なくなることが開示される。
多方向型MLUTでは、1つのMLUTが所望の論理コーンを構成可能である場合、接続要素として使用されるMLUTが減り、結果としてMLUT使用数が減る。しかしながら、複数のMLUTに論理コーンが渡る場合、MLUT間のデータ伝送幅が1ビットであるので、MLUT同士の接続において、データの行き分れが生じて、接続要素として使用されるメモリ領域が増える。このように、所望の論理コーンを構成するために、複数のMLUTが必要になり、各MLUTに、論理回路が分割して構成される場合を、「MLUT分割(「クラスタリング」ともいう)」と呼ぶ。また、C言語等の高位言語ではビット数は複数ビットになる。C言語等でコーディングした機能を、「多方向型MLUT」で実現する場合、複数のビットをビット分割して演算し、演算後のデータを合成するなどのデータの流れが生じるので、接続要素として使用するMLUTが増えて、MLUT使用数は増えてしまう。
図9は、MLUT間の接続が複数のアドレス又はデータ線で接続される構成例を示す図である。図9に示すMLUT30A〜30Eは、データの出力端にあるFF(図3Aで説明したI/Oバッファ)を有している。図2に示される論理部アレイ60では、MLUT30Aは、隣接する他のMLUT30B〜30Eと2本のペアを構成するアドレス線又はデータ線で接続されており、つまり、MLUT同士の接続が複数ペアのアドレス又はデータ線で接続するように構成される。このような構成は、隣接するMLUTが複数のAD対で接続することになるので、隣接するMLUTと送信するデータは、複数ビット(図2の例では、4ビット)となる。
以下では、論理コーンに対して必要になる双方向型MLUTの決定方法について、n値という定義を用いて説明する。図10は、n値を説明する図であり、図9で説明したMLUT30A及び30Cを用いてn値を説明する。隣接するMLUT30A及び30Cに向かい合う1辺から出るアドレス線又はデータ線の数1030を「n値」と定義する。図1の多方向型MLUTでは、隣接するMLUTの分だけ辺があるので、1辺から出るアドレス線又はデータ線は「1」であり、n値は「1」である。図4及び図5の4ビット長型MLUTは、矩形であるが、複数ビット伝送を要件としているので、1辺からでるアドレス線又はデータ線は「4」であり、n値は「4」である。双方向型MLUTでは、隣接するMLUTとの関係で、データ伝送量がn値の半分となり、且つ、信号パスが1段ずれるので、最長信号パスを実現するには信号パスを(n値/2)で割った段数だけ必要である。なお、「段数」とは、回路において、接続する素子の数を示す。MLUTの「段数」も、通常の回路の段数のように、接続するMLUTの数を示す。しかし、図9に示されるように、MLUTは、前段にそれぞれ接続する2つのMLUT、後段にそれぞれ接続する2つのMLUTがあるので、直線的な接続ではなく、左右、上下などの方向に接続するMLUTの数を示す。これらの具体的な構成については、図11Bで説明する。
MLUT論理段数は、以下の式で示される。
式1: MLUT論理段数 = m/(n値/2)
なお、ここでmは、信号バスであり、論理コーンにする入力信号線を示す。
図10に示す例では、n値は「4」であるが、隣接するMLUTは、一方向に2つあるので、(n値/2)は「2」となる。C言語の論理演算が、8ビットで演算されており、論理コーンの入力信号線mが8本であった場合、MLUT論理段数は、「8/(4/2)=4」となる。つまり、8ビット演算をMLUTで行う場合、4つの段数を構成するMLUTが必要になる。
式2:C3=G3+G2・P3+P2・P3・G1+P1・P2・P3・G0+P3・P2・P1・P0・(C−1)
図12〜図14は、双方向型MLUT分割の例を示す図である。図12は、右方向へのデータ接続を示すMLUTの図である。図12の1040は、8ビットの入力に対して必要なMLUT論理段数を示す。図12に示されるように、論理コーンを構成する組み合わせ回路を、MLUT論理段数で分割することによりMLUT分割が出来る。MLUT分割された組み合わせ回路に対して、入力の全ての組み合わせ(n値の場合は2nになる)に対して論理演算を実施し、その真理値データを求めることができる。
また、C言語からの直接真理値データを求める論理構成手法について述べる。C言語でのint演算では、例えば、16ビットである。そのため、16ビットに相当するレジスタを生成して、そのレジスタに保持されるビット値の演算により組み合わせ回路を実現する。16ビットのn値を持つMLUTがあればその結果を真理値データにして動作を構成できるが、n値を16とするMLUTは、16本のアドレスを用いて、2の16乗のメモリセルが必要になるので、MLUTのような構成ユニットとして使用する場合、未使用メモリ領域が多くなり現実的でない。そこで、ビットを分割してMLUTにあった演算手法に記述変換をする。n値が4のMLUTであれば、16ビットを4分割したC言語記述をする。このようなことはC言語記述では一般的である。例えば、32ビット演算はflotを使い記述するが、intを使い記述することはある。
MRLDの論理構成を行うには、抽象的な回路の動作に関するハードウェア記述言語からネットリストを生成し、それを、実際のデジタル回路に割り当てる(以下「論理合成」と言う)論理構成方法が必要である。なお、「ネットリスト」とは、電子回路における端子間の接続情報のデータのことである。電子回路の分野では、各端子間を結んだ信号線や端子間のつながりを指して「ネット」と呼んでいる。MRLDの機能搭載例として、論理合成された回路群を選択して入力ピンから逐次配置する方法が考えられる。しかし、配置についてはその後の回路の配置エリアを確保して配置しなければならない。
本実施形態に係る論理構成方法は、回路構成を記述した回路記述(HDLなど)から、論理回路データ、順序回路データ、及び、前記論理回路データと順序回路データの接続情報を記述するネットリストを生成し、生成したネットリストから、前記接続情報に従って、前記論理回路データと前記順序回路データをそれぞれ前記メモリセル及び論理回路要素に割り当てる。
input SET, RST, clk,d;
output q,q(-);
wire SET,RST,clk,d;
wire n1o, n2o, n3o, n4o;
nand n1(n1o,SET,n4o,n2o);
nand n2(n2o,RST,n1o,clk);
nand n3(n3o,n4o,n2o,clk);
nand n4(n4o,d,RST,n3o);
nand n5(q,SET,n2o,q(-));
nand n6(q(-),RST,n3o,q);
endmodule
NAND(VDD:3, A:1, B:2, Y:4, GND:0)
⇒* A CMOS NAND gate
MP3 4 1 3 3 CMOSP W=28.0U L=2.0U AS=252P
AD=252P
MP4 4 2 3 3 CMOSP W=28.0U L=2.0U AS=252P
AD=252P
MN1 4 1 5 0 CMOSN W=10.0U L=2.0U AS=90P AD=90P
MN2 5 2 0 0 CMOSN W=10.0U L=2.0U AS=90P AD=90P
.MODEL CMOSN NMOS(〜)
.MODEL CMOSN PMOS(〜)
図26は、C言語等の高級言語に基づいて、ネットリストを生成する処理の一例を示す。双方向型MLUTは、複数のアドレス入力を有するが、C言語などの高級言語の場合、32ビットの演算処理などがあり、それらをMLUTのアドレス入力数にビット分割する必要がある。
図27には、生成されたネットリストで示されるグルーロジック1000AとFFの概略を示す。論理回路には組合せ回路と順序回路があるが、組合せ論理回路はグルー・ロジックと言う。図28は、スキャン化された順序回路データセットと分けたグルーロジックから論理コーンを抽出する処理を示すフローチャートである。
MRLDでの論理又は接続動作の説明を以下にする。なお、説明としては多方向MLUTの例で行う。
A.論理要素
図30は、論理要素として動作するMLUTの一例を示す図である。図30では、説明を簡単にするために、アドレスセレクタ、データセレクタ、及びI/Oバッファの記載は、省略される。図30に示すMLUT30a、30bは、4つの論理用アドレス入力LA線A0〜A3と、4つの論理動作用データ線D0〜D3と、4×16=64個の記憶素子40と、アドレスデコーダ9とをそれぞれ有する。論理動作用データ線D0〜D3は、24個の記憶素子40をそれぞれ直列に接続する。アドレスデコーダ9は、論理用アドレス入力LA線A0〜A3に入力される信号に基づき、16本のワード線のいずれかに接続される4つの記憶素子を選択するように構成される。この4つの記憶素子はそれぞれ、論理動作用データ線D0〜D3に接続され、記憶素子に記憶されるデータを論理動作用データ線D0〜D3に出力する。例えば、論理用アドレス入力LA線A0〜A3に適当な信号が入力される場合は、4つの記憶素子40a、40b、40c、及び40dを選択するように構成することができる。ここで、記憶素子40aは、論理動作用データ線D0に接続され、記憶素子40bは、論理動作用データ線D1に接続され、記憶素子40cは、論理動作用データ線D2に接続され、記憶素子40dは、論理動作用データ線D3に接続される。そして、論理動作用データ線D0〜D3には、記憶素子40a〜40dに記憶される信号が出力される。このように、MLUT30a、30bは、論理用アドレス入力LA線A0〜A3から論理用アドレス入力LAを受け取り、その論理用アドレス入力LAによってアドレスデコーダ9が選択する4つの記憶素子40に記憶される値を、論理動作用データ線D0〜D3に論理動作用データとしてそれぞれ出力する。なお、MLUT30aの論理用アドレス入力LA線A2は、隣接するMLUT30bの論理動作用データ線D0と接続しており、MLUT30aは、MLUT30bから出力される論理動作用データを、論理用アドレス入力LAとして受け取る。また、MLUT30aの論理動作用データ線D2は、MLUT30bの論理用アドレス入力LA線A0と接続しており、MLUT30aが出力する論理動作用データは、MLUT30bで論理用アドレス入力LAとして受け取られる。例えば、MLUT30aの論理動作用データ線D2は、MLUT30aの論理用アドレス入力LA線A0〜A3に入力される信号に基づき、論理動作用データ線D2に接続される16個の記憶素子のいずれか1つに記憶される信号をMLUT30bの論理用アドレス入力LA線A0に出力する。同様に、MLUT30bの論理動作用データ線D0は、MLUT30bの論理用アドレス入力LA線A0〜A3に入力される信号に基づき、論理動作用データ線D0に接続される16個の記憶素子のいずれか1つに記憶される信号をMLUT30aの論理用アドレス入力LA線A2に出力する。このように、MRLD同士の連結は、1対のアドレス線とデータ線とを用いる。
図33は、接続要素として動作するMLUTの一例を示す図である。図33では、接続要素としてのMLUTは、論理用アドレス入力LA線A0の信号を論理動作用データ線D1に出力し、論理用アドレス入力LA線A1の信号を論理動作用データ線D2に出力し、論理用アドレス入力LA線A2の信号を論理動作用データ線D3に出力するように動作する。接続要素としてのMLUTはさらに、論理用アドレス入力LA線A3の信号を論理動作用データ線D0に出力するように動作する。
図36は、1つのMLUTが、論理要素及び接続要素として動作する一例を示す図である。図36に示す例では、論理用アドレス入力LA線A0及びA1を2入力NOR回路171の入力とし、2入力NOR回路171の出力と、論理用アドレス入力LA線A2とを2入力NAND回路172の入力とし、2入力NAND回路172の出力を論理動作用データ線D0に出力する論理回路を構成する。また同時に、論理用アドレス入力LA線A3の信号を論理動作用データ線D2に出力する接続要素を構成する。
30 MLUT
60 論理部アレイ
100 再構成可能な半導体装置
Claims (34)
- データを記憶するメモリセルを複数備えた記憶部を複数有する半導体装置の論理構成方法であって、
それぞれの前記記憶部は、アドレス入力に対して論理値を出力するための真理値表データをそのメモリセルに記憶し、論理回路として動作するように構成され、
前記記憶部は、入力線および出力線の対を少なくとも2のn倍(nは2以上の整数)本有し、
前記記憶部同士は、1つの記憶部からの2のn倍本の出力線が、他の2つの記憶部のn本の入力線に接続され、
前記論理構成方法は、
回路構成を記述した回路記述に基づいて、回路の接続情報を有するネットリストを生成し、
前記ネットリストから、順序回路を含んで成る論理コーンを抽出し、
前記論理コーンに対する入力線の数を2分のnで除算した数に相当する前記記憶部の段数で、前記論理コーンを構成する複数の前記記憶部のための前記真理値表データを、生成することを特徴とする再構成可能な半導体装置の論理構成方法。 - 前記ネットリストの生成は、高級言語で記述されたプログラムの中の変数ビットを、より小さいビットに型変換するステップを含む、請求項1に記載の論理構成方法。
- 前記記憶部は、一辺と、前記一辺と反対側の他辺で他の記憶部に接続するとともに、複数のメモリセルユニットを有し、且つ、
前記複数のメモリセルユニットの少なくとも1つが有する複数のメモリセルは、前記一辺におけるアドレス入力に対して、前記一辺から論理値を出力するための第1真理値表データと前記他辺から論理値を出力するための第2真理値表データとを記憶し、
前記真理値表データを生成するステップは、前記第1真理値表データと、前記第2真理値表データを生成するステップを含む、請求項1又は2に記載の論理構成方法。 - 前記ネットリストの生成は、高級言語で記述されたプログラムに対して、ループ展開、及び/又は、並列化処理するステップを含む、請求項1〜3の何れか1項に記載の論理構成方法。
- 前記ネットリストから、スキャン化可能な順序回路データセットを抽出して、スキャン化された順序回路データセットを生成し、
前記スキャン化できる順序回路データセットから、前記複数のメモリセルユニットのうち第1セットに書き込むための第1真理値表データセットを生成し、
前記ネットリストの組合せ論理回路データセットから、前記複数のメモリセルユニットのうち第2セットに書き込むための第2真理値表データセットを生成する、請求項1〜4の何れか1項に記載の論理構成方法。 - 前記半導体装置は、前記記憶部とともに、順序回路要素を有する論理部を、複数個有し、 前記論理構成方法は、
回路構成を記述した回路記述から、論理回路データ、順序回路データ、及び、前記論理回路データと順序回路データの接続情報を記述するネットリストを生成し、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データと前記順序回路データをそれぞれ前記メモリセル及び論理回路要素に割り当てる、請求項1〜5の何れか1項に記載の論理構成方法。
これにより、端子に基づく結線で配置配線するのではなく、論理回路及び順序回路の接続情報などのデバイスレベルで配置配線することで、デバイスによる回路の簡略化や回路ブロックの再構成が容易にすることができる。 - 前記半導体装置は、前記論理部の外部に、スイッチ要素を有し、
前記スイッチ要素に前記ネットリストの接続情報を割り当てることをさらに有する、請求項6の論理構成方法。 - 前記記憶部のメモリセルは、あるアドレスで特定された入力値を、他の論理部の記憶部に出力するように構成される真理値表データを書き込むと、接続要素として動作し、
前記記憶部に前記ネットリストの接続情報を割り当てることをさらに有する、請求項6又は7に記載の論理構成方法。 - 前記ネットリストを生成した後に、順序回路データを削除し、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データを前記メモリセルに割り当てた後に、前記順序回路データを論理回路要素に割り当てる、請求項6〜8の何れか1項に記載の論理構成方法。 - 前記ネットリスト生成ステップは、論理回路データ、順序回路データ、及び、前記論理回路データを含む並列入力直列出力形のシフトレジスタを生成することを含む、請求項6〜9の何れか1項に記載の論理構成方法。
- 前記順序回路要素は、前記記憶部から読み出したデータを保持するとともに、クロックに同期して保持したデータを出力する順序回路である、請求項6〜10の何れか1項に記載の論理構成方法。
- データを記憶するメモリセルを複数備えた記憶部を複数有する半導体装置の論理構成を行う論理構成装置であって、
前記半導体装置は、それぞれの前記記憶部は、アドレス入力に対して論理値を出力するための真理値表データをそのメモリセルに記憶し、論理回路として動作するように構成され、
前記記憶部は、入力線および出力線の対を少なくとも2のn倍(nは2以上の整数)本有し、
前記記憶部同士は、1つの記憶部からの2のn倍本の出力線が、他の2つの記憶部のn本の入力線に接続され、
前記論理構成装置は、プロセッサを備え、
前記プロセッサは、
回路構成を記述した回路記述に基づいて、回路の接続情報を有するネットリストを生成し、
前記ネットリストから、順序回路を含んで成る論理コーンを抽出し、
前記論理コーンに対する入力線の数を2分のnで除算した数に相当する記憶部の段数で、前記論理コーンを構成する複数の前記記憶部のための前記真理値表データを、生成するように構成される、ことを特徴とする論理構成装置。 - 前記ネットリストの生成は、高級言語で記述されたプログラムの中の変数ビットを、より小さいビットに型変換することを含む、請求項12に記載の論理構成装置。
- 前記記憶部は、一辺と、前記一辺と反対側の他辺で他の記憶部に接続するとともに、複数のメモリセルユニットを有し、且つ、
前記複数のメモリセルユニットの少なくとも1つが有する複数のメモリセルは、前記一辺におけるアドレス入力に対して、前記一辺から論理値を出力するための第1真理値表データと前記他辺から論理値を出力するための第2真理値表データとを記憶し、
前記真理値表データを生成することは、前記第1真理値表データと、前記第2真理値表データを生成することを含む、請求項12又は13に記載の論理構成装置。 - 前記ネットリストの生成は、高級言語で記述されたプログラムに対して、ループ展開、及び/又は、並列化処理することを含む、請求項12〜14の何れか1項に記載の論理構成装置。
- 前記プロセッサは、前記ネットリストから、スキャン化可能な順序回路データセットを抽出して、スキャン化された順序回路データセットを生成し、
前記スキャン化できる順序回路データセットから、前記複数のメモリセルユニットのうち第1セットに書き込むための第1真理値表データセットを生成し、
前記ネットリストの組合せ論理回路データセットから、前記複数のメモリセルユニットのうち第2セットに書き込むための第2真理値表データセットを生成するように構成される、請求項12〜15の何れか1項に記載の論理構成装置。 - 前記半導体装置は、前記記憶部とともに、順序回路要素を有する論理部を、複数個有し、
前記プロセッサは、
回路構成を記述した回路記述から、論理回路データ、順序回路データ、及び、前記論理回路データと順序回路データの接続情報を記述するネットリストを生成し、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データと前記順序回路データをそれぞれ前記メモリセル及び論理回路要素に割り当てる、請求項12〜16の何れか1項に記載の論理構成装置。 - 前記半導体装置は、論理部の外部に、スイッチ要素を有し、
前記スイッチ要素に前記ネットリストの接続情報を割り当てることをさらに有する、請求項17の論理構成装置。 - 前記記憶部のメモリセルは、あるアドレスで特定された入力値を、他の論理部の記憶部に出力するように構成される真理値表データを書き込むと、接続要素として動作し、
前記プロセッサは、前記記憶部に前記ネットリストの接続情報を割り当てるように構成される、請求項17又は18に記載の論理構成方法。 - 前記プロセッサは、
前記ネットリストを生成した後に、順序回路データを削除し、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データを前記メモリセルに割り当てた後に、前記順序回路データを論理回路要素に割り当てるように構成される、請求項17〜19の何れか1項に記載の論理構成方法。 - 前記ネットリスト生成は、論理回路データ、順序回路データ、及び、前記論理回路データを含む並列入力直列出力形のシフトレジスタを生成することを含む、請求項17〜20の何れか1項に記載の論理構成装置。
- 前記順序回路要素は、前記記憶部から読み出したデータを保持するとともに、クロックに同期して保持したデータを出力する順序回路である、請求項17〜21の何れか1項に記載の論理構成装置。
- データを記憶するメモリセルを複数備えた記憶部を複数有する半導体装置の論理構成を行うのためのプログラムであって、
前記半導体装置は、それぞれの前記記憶部は、アドレス入力に対して論理値を出力するための真理値表データをそのメモリセルに記憶し、論理回路として動作するように構成され、
前記記憶部は、入力線および出力線の対を少なくとも2のn倍(nは2以上の整数)本有し、
前記記憶部同士は、1つの記憶部からの2のn倍本の出力線が、他の2つの記憶部のn本の入力線に接続され、
前記プロセッサに、
回路構成を記述した回路記述に基づいて、回路の接続情報を有するネットリストを生成する処理、
前記ネットリストから、順序回路を含んで成る論理コーンを抽出する処理、
前記論理コーンに対する入力線の数を2分のnで除算した数に相当する前記記憶部の段数で、前記論理コーンを構成する複数の前記記憶部のための前記真理値表データを、生成する処理を実行させることを特徴とするプログラム。 - 前記ネットリストの生成は、高級言語で記述されたプログラムの中の変数ビットを、より小さいビットに型変換することを含む、請求項23に記載のプログラム。
- 前記記憶部は、一辺と、前記一辺と反対側の他辺で他の記憶部に接続するとともに、複数のメモリセルユニットを有し、且つ、
前記複数のメモリセルユニットの少なくとも1つが有する複数のメモリセルは、前記一辺におけるアドレス入力に対して、前記一辺から論理値を出力するための第1真理値表データと前記他辺から論理値を出力するための第2真理値表データとを記憶し、
前記真理値表データを生成する処理は、前記第1真理値表データと、前記第2真理値表データを生成する処理を含む、請求項23又は24に記載のプログラム。 - 前記ネットリストの生成は、高級言語で記述されたプログラムに対して、ループ展開、及び/又は、並列化処理することを含む、請求項23〜25の何れか1項に記載のプログラム。
- 前記ネットリストから、スキャン化可能な順序回路データセットを抽出して、スキャン化された順序回路データセットを生成する処理、
前記スキャン化できる順序回路データセットから、前記複数のメモリセルユニットのうち第1セットに書き込むための第1真理値表データセットを生成する処理、
前記ネットリストの組合せ論理回路データセットから、前記複数のメモリセルユニットのうち第2セットに書き込むための第2真理値表データセットを生成する処理、を実行させる請求項23〜26の何れか1項に記載のプログラム。 - 前記半導体装置は、前記記憶部とともに、順序回路要素を有する論理部を、複数個有し、
前記プロセッサに、
回路構成を記述した回路記述から、論理回路データ、順序回路データ、及び、前記論理回路データと順序回路データの接続情報を記述するネットリストを生成する処理、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データと前記順序回路データをそれぞれ前記メモリセル及び論理回路要素に割り当てる処理を実行させる、請求項23〜27プログラム。 - 前記半導体装置は、論理部の外部に、スイッチ要素を有し、
前記プログラムは、前記スイッチ要素に前記ネットリストの接続情報を割り当てる処理を実行させる、請求項28に記載のプログラム。 - 前記記憶部のメモリセルは、あるアドレスで特定された入力値を、他の論理部の記憶部に出力するように構成される真理値表データを書き込むと、接続要素として動作し、
前記プロセッサは、前記記憶部に前記ネットリストの接続情報を割り当てる処理を実行させる、請求項28又は29に記載のプログラム。 - 前記プロセッサに、
前記ネットリストを生成した後に、順序回路データを削除し、
前記生成したネットリストから、前記接続情報に従って、前記論理回路データを前記メモリセルに割り当てた後に、前記順序回路データを論理回路要素に割り当てる、処理を実行させる請求項28〜30の何れか1項に記載の論理構成方法。 - 前記ネットリスト生成は、論理回路データ、順序回路データ、及び、前記論理回路データを含む並列入力直列出力形のシフトレジスタを生成する処理を含む、請求項28〜31の何れか1項に記載のプログラム。
- 前記順序回路要素は、前記記憶部から読み出したデータを保持するとともに、クロックに同期して保持したデータを出力する順序回路である、請求項23〜32の何れか1項に記載のプログラム。
- 請求項23〜33の何れか1項に示すプログラムを格納する記憶媒体。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012253780 | 2012-11-20 | ||
JP2012253780 | 2012-11-20 | ||
JP2013117418 | 2013-06-04 | ||
JP2013117418 | 2013-06-04 | ||
PCT/JP2013/081087 WO2014080872A2 (ja) | 2012-11-20 | 2013-11-19 | 再構成可能な半導体装置の論理構成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2014080872A1 true JPWO2014080872A1 (ja) | 2017-01-05 |
JP6250548B2 JP6250548B2 (ja) | 2017-12-20 |
Family
ID=50776645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014548558A Expired - Fee Related JP6250548B2 (ja) | 2012-11-20 | 2013-11-19 | 再構成可能な半導体装置の論理構成方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9514259B2 (ja) |
JP (1) | JP6250548B2 (ja) |
WO (1) | WO2014080872A2 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6564186B2 (ja) * | 2012-10-28 | 2019-08-21 | 太陽誘電株式会社 | 再構成可能な半導体装置 |
CN105191139B (zh) * | 2013-04-02 | 2018-12-07 | 太阳诱电株式会社 | 可重构逻辑器件 |
US9923561B2 (en) * | 2014-10-22 | 2018-03-20 | Taiyo Yuden Co., Ltd. | Reconfigurable device |
US9954533B2 (en) * | 2014-12-16 | 2018-04-24 | Samsung Electronics Co., Ltd. | DRAM-based reconfigurable logic |
CN104530024B (zh) | 2015-02-04 | 2017-08-08 | 上海迪赛诺药业有限公司 | 1‑(β‑D‑吡喃葡糖基)‑4‑甲基‑3‑[5‑(4‑氟苯基)‑2‑噻吩基甲基]苯的晶型及其制备方法 |
JP6856032B2 (ja) * | 2016-01-20 | 2021-04-07 | 日本電気株式会社 | 再構成可能回路、再構成可能回路システム、および再構成可能回路の動作方法 |
JP6407181B2 (ja) * | 2016-03-04 | 2018-10-17 | 三菱電機株式会社 | 設計支援装置、設計支援方法及び設計支援プログラム |
US10430534B2 (en) * | 2016-11-30 | 2019-10-01 | Numem Inc. | Resistance-based memory compiler |
US10489338B1 (en) * | 2018-09-05 | 2019-11-26 | Quanta Computer Inc. | Method and system for streamlined server design |
WO2021060059A1 (ja) * | 2019-09-27 | 2021-04-01 | 太陽誘電株式会社 | 生成装置、生成方法およびプログラム |
CN114519321B (zh) * | 2020-11-18 | 2024-08-09 | 上海复旦微电子集团股份有限公司 | 查找表电路及其配置方法 |
TWI792754B (zh) | 2021-12-09 | 2023-02-11 | 力晶積成電子製造股份有限公司 | 具有高資料頻寬的記憶體裝置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004246402A (ja) * | 2003-02-10 | 2004-09-02 | Matsushita Electric Ind Co Ltd | 論理回路最適化方法、論理回路最適化装置、及び、論理回路合成装置 |
WO2004088500A1 (ja) * | 2003-03-31 | 2004-10-14 | Kitakyushu Foundation For The Advancement Of Industry Science And Technology | プログラマブル論理デバイス |
JP2005165502A (ja) * | 2003-12-01 | 2005-06-23 | Kitakyushu Foundation For The Advancement Of Industry Science & Technology | Lut符号化方法及びlut符号化装置並びにlutカスケード論理回路 |
WO2007060738A1 (ja) * | 2005-11-28 | 2007-05-31 | Taiyo Yuden Co., Ltd. | 半導体装置 |
JP2010239325A (ja) * | 2009-03-30 | 2010-10-21 | Hiroshima Ichi | 半導体装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6138266A (en) * | 1997-06-16 | 2000-10-24 | Tharas Systems Inc. | Functional verification of integrated circuit designs |
US6150838A (en) | 1999-02-25 | 2000-11-21 | Xilinx, Inc. | FPGA configurable logic block with multi-purpose logic/memory circuit |
US7509618B1 (en) * | 2004-05-12 | 2009-03-24 | Altera Corporation | Method and apparatus for facilitating an adaptive electronic design automation tool |
CN104617944B (zh) | 2010-06-24 | 2018-03-16 | 太阳诱电株式会社 | 半导体装置 |
JP5678609B2 (ja) * | 2010-11-26 | 2015-03-04 | セイコーエプソン株式会社 | 誤相関判定方法及び誤相関判定装置 |
-
2013
- 2013-11-19 WO PCT/JP2013/081087 patent/WO2014080872A2/ja active Application Filing
- 2013-11-19 US US14/443,635 patent/US9514259B2/en active Active
- 2013-11-19 JP JP2014548558A patent/JP6250548B2/ja not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004246402A (ja) * | 2003-02-10 | 2004-09-02 | Matsushita Electric Ind Co Ltd | 論理回路最適化方法、論理回路最適化装置、及び、論理回路合成装置 |
WO2004088500A1 (ja) * | 2003-03-31 | 2004-10-14 | Kitakyushu Foundation For The Advancement Of Industry Science And Technology | プログラマブル論理デバイス |
JP2005165502A (ja) * | 2003-12-01 | 2005-06-23 | Kitakyushu Foundation For The Advancement Of Industry Science & Technology | Lut符号化方法及びlut符号化装置並びにlutカスケード論理回路 |
WO2007060738A1 (ja) * | 2005-11-28 | 2007-05-31 | Taiyo Yuden Co., Ltd. | 半導体装置 |
JP2010239325A (ja) * | 2009-03-30 | 2010-10-21 | Hiroshima Ichi | 半導体装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2014080872A3 (ja) | 2014-07-17 |
WO2014080872A2 (ja) | 2014-05-30 |
US9514259B2 (en) | 2016-12-06 |
JP6250548B2 (ja) | 2017-12-20 |
US20150286762A1 (en) | 2015-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6250548B2 (ja) | 再構成可能な半導体装置の論理構成方法 | |
US7667486B2 (en) | Non-sequentially configurable IC | |
US7109752B1 (en) | Configurable circuits, IC's, and systems | |
US6130551A (en) | Synthesis-friendly FPGA architecture with variable length and variable timing interconnect | |
JP6564186B2 (ja) | 再構成可能な半導体装置 | |
US7587537B1 (en) | Serializer-deserializer circuits formed from input-output circuit registers | |
US7157933B1 (en) | Configurable circuits, IC's, and systems | |
US7616027B2 (en) | Configurable circuits, IC's and systems | |
US7872496B2 (en) | Method of mapping a user design defined for a user design cycle to an IC with multiple sub-cycle reconfigurable circuits | |
US8138788B2 (en) | Reconfigurable device | |
EP1603240A2 (en) | Switch methodology for mask-programmable logic devices | |
US7126373B1 (en) | Configurable logic circuits with commutative properties | |
US7408382B2 (en) | Configurable circuits, IC's, and systems | |
JP2017038247A (ja) | 再構成可能な半導体装置 | |
JP5890733B2 (ja) | 再構成可能な半導体装置の配置配線方法、そのプログラム、及び配置配線装置 | |
Tian et al. | A field programmable transistor array featuring single-cycle partial/full dynamic reconfiguration | |
JPWO2014163099A1 (ja) | 再構成可能な論理デバイス | |
US6051031A (en) | Module-based logic architecture and design flow for VLSI implementation | |
US8159266B1 (en) | Metal configurable integrated circuits | |
US7800404B2 (en) | Field programmable application specific integrated circuit with programmable logic array and method of designing and programming the programmable logic array | |
US7071731B1 (en) | Programmable Logic with Pipelined Memory Operation | |
Růžička et al. | Technology Mapping for PAIG Optimised Polymorphic Circuits | |
WO2018207801A1 (ja) | プログラム可能なデバイス、その論理構成方法、及びそのプログラム | |
WO2019107234A1 (ja) | 設計支援システム、設計支援方法およびプログラム記録媒体 | |
JP2002016489A (ja) | プログラマブル論理回路装置、及び情報処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170920 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171017 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20171108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171122 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6250548 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |