JP2015502660A - システムオンチップ内のメモリ回路および論理回路のレイアウト - Google Patents

システムオンチップ内のメモリ回路および論理回路のレイアウト Download PDF

Info

Publication number
JP2015502660A
JP2015502660A JP2014542589A JP2014542589A JP2015502660A JP 2015502660 A JP2015502660 A JP 2015502660A JP 2014542589 A JP2014542589 A JP 2014542589A JP 2014542589 A JP2014542589 A JP 2014542589A JP 2015502660 A JP2015502660 A JP 2015502660A
Authority
JP
Japan
Prior art keywords
memory
circuits
circuit
logic
data
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
Application number
JP2014542589A
Other languages
English (en)
Other versions
JP6257044B2 (ja
JP2015502660A5 (ja
Inventor
ホルト、ジョセフ
メイダー、ロイ
グレイナー、ブランドン
ビー. アンダーソン、スコット
ビー. アンダーソン、スコット
Original Assignee
マーベル ワールド トレード リミテッド
マーベル ワールド トレード リミテッド
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 マーベル ワールド トレード リミテッド, マーベル ワールド トレード リミテッド filed Critical マーベル ワールド トレード リミテッド
Publication of JP2015502660A publication Critical patent/JP2015502660A/ja
Publication of JP2015502660A5 publication Critical patent/JP2015502660A5/ja
Application granted granted Critical
Publication of JP6257044B2 publication Critical patent/JP6257044B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/06Arrangements for interconnecting storage elements electrically, e.g. by wiring
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/02System on chip [SoC] design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/0203Particular design considerations for integrated circuits
    • H01L27/0207Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/04Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body
    • H01L27/10Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration
    • H01L27/105Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration including field-effect components

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Architecture (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Static Random-Access Memory (AREA)

Abstract

複数のメモリ回路および複数の論理回路を備える集積回路を提供する。複数のメモリ回路は、複数行および複数列に沿って、ダイ上に配置されている。各メモリ回路は、複数のメモリセルを備える。複数の論理回路は、複数行および複数列に沿った複数のメモリ回路の間に、ダイ上に配置される。複数の論理回路は、メモリ回路の1または複数と通信するよう構成される。【選択図】図6

Description

関連出願の相互参照
本出願は、2012年11月19日に出願された米国特許出願第13/680,530号、および2011年11月22日に出願された米国仮特許出願第61/563,001号の優先権を主張する。上記出願の全開示は、参照により本明細書に組み込まれる。
本開示は、一般に、集積回路(IC)に関し、より詳しくは、システムオンチップ(SOC)におけるメモリおよび論理回路のためのレイアウトに関する。
本明細書で提供する背景技術の説明は、開示の背景を一般に提示する目的のためのものである。ここに名前を挙げた発明者らの作業について、ある程度、その作業は、本背景技術セクションで説明し、ならびに出願時点での先行技術として適格でない可能性のある説明の態様は、明示も黙示も問わず、本開示に対する先行技術として認められない。
典型的に、システムオンチップ(SOC)は、データを処理するためのプロセッサおよびメモリを備える。SOCを使用して、多くのデバイス内でデータを処理することができる。例えば、SOCを使用して、ハードディスクドライブ(HDD)、光学ディスクドライブ、および固体ディスクを含むストレージデバイス内で、データを処理することができる。さらに、SOCを使用して、スマートフォン、ルータ、ネットワークスイッチなどを含む通信デバイス内で、データを処理することができる。
図1を参照すると、HDD100は、ハードディスク制御器(HDC)SOC102、複数の読み取り/書き込みヘッド104、および磁気媒体106を備える。HDC SOC102は、HDD100の動作を制御する。読み取り/書き込みヘッド104は、磁気媒体106上のデータを読み取り/書き込みする。HDC SOC102は、プロセッサ108、メモリ110、および読み取り/書き込みチャネルモジュール(一般に、読み取りチャネルモジュールと呼ばれる)112を備える。プロセッサ108は、HDD100と関連したデータを処理する。プロセッサ108は、メモリ110を使用して、データを処理する。読み取りチャネルモジュール112は、読み取り/書き込みヘッド104を使用して、磁気媒体106上でデータを読み取りおよび書き込みする。読み取りチャネルモジュール112は、磁気媒体106上に書き込むべきデータを符号化ならびに変調することができ、および磁気媒体106から読み取ったデータを復調ならびに復号化することができる。読み取りチャネルモジュール112はまた、読み取ったデータの誤り訂正を行うことができる。
図2を参照すると、通信デバイス200は、通信デバイス200の動作を制御するSOC202を備える。通信デバイス200はまた、通信デバイス200が、無線通信デバイスである場合、1または複数のアンテナ204を備えてもよい。SOC202は、プロセッサ206、メモリ208、および通信モジュール210を備える。プロセッサ206は、通信デバイス200と関連したデータを処理する。プロセッサ206は、メモリ208を使用して、データを処理する。通信モジュール210は、データを送信するための送信器モジュール212、およびデータを受信するための受信器モジュール214を備える。通信モジュール210は、送信すべきデータを符号化ならびに変調することができ、および受信したデータを復調ならびに復号化することができる。通信モジュール210はまた、受信したデータの誤り訂正を行うことができる。
集積回路は、複数のメモリ回路および複数の論理回路を備える。複数のメモリ回路は、複数行および複数列に沿って、ダイ上に配置されている。各メモリ回路は、複数のメモリセルを備える。複数の論理回路は、複数行および複数列に沿った複数のメモリ回路の間に、ダイ上に配置される。複数の論理回路は、1または複数のメモリ回路と通信するよう構成される。
他の特徴では、複数行および複数列は、ダイの周辺部から離れた領域に配置される。
他の特徴では、メモリセルは、ラッチベースのランダムアクセスメモリセルを含む。
他の特徴では、論理回路は、組合せ論理回路および順序論理回路の少なくとも一方を含む。
他の特徴では、メモリ回路は、所定のメモリ容量を有する。
他の特徴では、複数のメモリ回路の少なくとも1つは、複数のメモリ回路うちの他のものとは異なるメモリ容量を有する。
他の特徴では、少なくとも1つの論理回路は、ストレージデバイスの読み取り動作もしくは書き込み動作中に、信号を処理するよう構成される。ここで、ストレージデバイスには、ハードディスクドライブ、光学ディスクドライブ、または固体ディスクなどがあり、1または複数のメモリ回路での処理によって生成されたデータを格納する。
他の特徴では、少なくとも1つの論理回路は、通信デバイスの送信動作もしくは受信動作中に、信号を処理するよう構成され、1または複数のメモリ回路での処理によって生成されたデータを格納する。
他の特徴では、論理回路のうち第1の論理回路は、(i)メモリ回路のうち第1のメモリ回路から第1のデータを読み出し、(ii)第1のデータを処理することによって第2のデータを生成し、(iii)メモリ回路のうち第2のメモリ回路に第2のデータを格納するよう構成される。論理回路のうち第2の論理回路は、(i)メモリ回路のうち第2のメモリ回路から第2のデータを読み出し、(ii)第2のデータを処理することによって第3のデータを生成し、(iii)メモリ回路のうち第1のメモリ回路に第3のデータを格納するよう構成される。論理回路のうち第1の論理回路は、第3のデータを処理するよう構成される。
さらに他の特徴では、システムは、入力モジュールおよび処理モジュールを備える。入力モジュールは、(i)ダイ上に配置されるメモリ回路および論理回路のリスト、(ii)メモリ回路および論理回路の入力信号および出力信号のタイミング、(iii)ダイの領域、を含むデータを受信するよう構成される。処理モジュールは、データを処理し、複数のメモリ回路と通信するよう構成された複数の論理回路の領域が、複数のメモリ回路の領域の、所定のパーセンテージより大きいかまたは等しいかを決定し、複数のメモリ回路の領域の、所定のパーセンテージより大きいかまたは等しい複数の論理回路の領域に応じて、ダイの領域上に配列型レイアウトで、メモリ回路および論理回路を配置するよう構成される。
他の特徴では、処理モジュールは、配列型レイアウトの行および列の間隔を含むパラメータを決定するよう構成される。
他の特徴では、処理モジュールは、メモリ回路および論理回路の入力信号および出力信号のタイミングに従って、配列型レイアウトで論理回路を分散するよう構成される。
他の特徴では、処理モジュールは、メモリ回路および論理回路の接続に従って、配列型レイアウトで論理回路を分散するよう構成される。
さらに他の特徴では、本方法は、(i)ダイ上に配置されるメモリ回路および論理回路のリスト、(ii)メモリ回路および論理回路の入力信号および出力信号のタイミング、(iii)ダイの領域、を含むデータを受信することを備える。さらに、本方法は、データを処理すること、および複数のメモリ回路と通信するよう構成された複数の論理回路の領域が、複数のメモリ回路の領域の、所定のパーセンテージより大きいかまたは等しいかを決定することを備える。さらに、本方法は、複数のメモリ回路の領域の、所定のパーセンテージより大きいかまたは等しい複数の論理回路の領域に応じて、ダイの領域上に配列型レイアウトで、メモリ回路および論理回路を配置することを備える。
他の特徴では、本方法は、さらに、配列型レイアウトの行および列の間隔を含むパラメータを決定することを備える。
他の特徴では、本方法は、さらに、メモリ回路および論理回路の入力信号および出力信号のタイミングに従って、配列型レイアウトで論理回路を分散することを備える。
他の特徴では、本方法は、さらに、メモリ回路および論理回路の接続に従って、配列型レイアウトで論理回路を分散することを備える。
本開示のさらなる適用範囲は、詳細な説明、特許請求の範囲および図面から明らかになるであろう。詳細な説明および具体例は、例示目的のみを意図しており、本開示の範囲を限定することを意図していない。
本開示は、詳細な説明および添付図面からより完全に理解されるであろう、
ハードディスクドライブ(HDD)の機能ブロック図である。
通信デバイスの機能ブロック図である。
図1に示したHDDの読み取りチャネルモジュールまたは図2に示した通信デバイスの通信モジュールの機能ブロック図である。
メモリ回路および構成可能論理ブロック(CLB)のレイアウトを含むシステムオンチップ(SOC)を示す図であり、メモリ回路は、レイアウトの周辺部に沿って配置され、CLBは、レイアウトの中心部に配置される。
メモリ回路およびCLBのレイアウトを含むSOCを示す図であり、メモリ回路の第1および第2のセットは、それぞれ、レイアウトの周辺部および中心部に沿って配置され、CLBのレイアウトは、メモリ回路の第1および第2のセットの間に配置される。
配列内に配置されたメモリ回路およびCLBのレイアウトを含むSOCを示す図である。
図6のレイアウトの実行可能性およびパラメータを決定するレイアウトデバイスの機能ブロック図である。
図6のレイアウトの実行可能性およびパラメータを決定する方法のフローチャートである。
メモリおよび論理回路(例えば、読み取りチャネルモジュール112または通信モジュール210の論理回路)は、さまざまな方法でダイ上に配置することができる。例えば、第1の配置では、メモリ回路は、ダイの周辺部に沿って配置することができ、論理回路は、ダイの中心部に配置することができる。第2の配置では、メモリ回路の第1の部分は、周辺部に沿って配置することができ、メモリ回路の第2の部分は、中心部に配置することができ、論理回路は、第1および第2の部分の間に配置することができる。
本開示は、配列スタイルレイアウトで、ダイ上にメモリ回路および論理回路を配置することに関する。配列スタイルレイアウトでメモリ回路および論理回路を配置することで、いくつかの利点がもたらされる。例えば、配列スタイルレイアウトは、第1および第2の配置よりも効率的にダイ領域を使用する。すなわち、配列スタイルレイアウトを使用する場合、第1または第2の配置を使用する場合より多くのメモリ回路および論理回路を、所与のダイ領域上に配置することができる。言い換えると、所与の数のメモリ回路および論理回路に対し、配列スタイルレイアウトを使用すると、第1または第2の配置よりもダイの使用が少なくなる。さらに、メモリ回路と論理回路との間の通信は、配列スタイルレイアウトを使用した場合、第1または第2の配置を使用した場合よりも高速にすることができる。
図3を参照すると、読み取りチャネルモジュール112または通信モジュール210は、複数のメモリ回路300−1、300−2、300−3(集合的メモリ回路300)、および複数の構成可能論理ブロック(CLB)302−1、302−2、302−3(集合的CLB302)を使用して、SOCで実現することができる。各CLB302は、組合せ論理回路および/または順序論理回路を含むことができる。各CLB302は、1または複数の異なる動作を行うよう構成することができる。各メモリ回路300は、複数のメモリセルを備えてもよい。例えば、各メモリ回路300は、ラッチベースのランダムアクセスメモリ(LBRAM)の複数のメモリセルを含んでもよい。各メモリ回路300は、(数KB、MB、またはGBのオーダで)所定のメモリ容量を有することができる。メモリ回路300のいくつかは、残りのメモリ回路300とは異なるメモリ容量を有してもよい。メモリ回路300およびCLB302がそれぞれ3つのみを示してあるが、N個のメモリ回路300およびN個のCLB302を使用することができ、ここで、Nは、1より大きい整数である。
1つのCLB302は、1または複数のメモリ回路300と通信することができる。1つのCLB302は、1または複数のCLB302と通信することができる。1つのメモリ回路300は、1または複数のメモリ回路300と通信することができる。第1のCLB302が処理したデータは、第1のメモリ回路300に格納することができ、第2のCLB302が処理したデータは、第2のメモリ回路300に格納することができる。さらに、第1のCLB302は、第2のメモリ回路300に格納されたデータを処理することができる。したがって、(例えば、繰り返し処理を使用して)誤りを訂正する場合、第1のCLB302は、第2のCLB302が処理したデータを更新することができ、第1のCLB302が更新したデータは、再び、第2のCLB302および/または第3のCLB302が処理することができる。
図4を参照すると、メモリ回路300およびCLB302のレイアウト402を備えるSOC400が示される。SOC400は追加のコンポーネントを備えてもよい。例えば、SOC400は、SOC400に関するデータを処理するためのプロセッサ404ならびに追加メモリ406、SOC400の外部のコンポーネントと通信するための通信モジュール408、およびSOC400の1または複数のコンポーネントの電力消費を管理するための電力管理モジュール410を備えてもよい。
レイアウト402では、メモリ回路300は、レイアウト402の周辺部に沿って(すなわち、SOC400の周辺部に並列に)配置され、CLB302は、レイアウト402の中心部に配置される。したがって、メモリ回路300は、CLB302を取り囲む。CLB302とメモリ回路300との間の信号経路は、2つのCLB302の間の信号経路より長くすることができる。それに応じて、CLB−メモリ回路間通信は、CLB−CLB間通信よりも遅くなる可能性がある。したがって、メモリ集約型処理(例えば、誤り訂正に含まれる繰り返し処理)の速度は、許容できなくなる可能性がある。さらに、レイアウト402が十分利用されない傾向があり、したがって、ダイ領域が無駄になる傾向がある。
あるいは、図示しないが、メモリ回路300およびCLB302の位置は、反転することができる。すなわち、CLB302は、レイアウト402の周辺部に沿って配置することができ、メモリ回路300は、レイアウト402の中心部に配置することができる。したがって、CLB302は、メモリ回路300を取り囲む。そのような配置では、CLB−メモリ回路間通信の速度は、レイアウト402に比べて向上する可能性があるが、CLB−CLB間通信の速度は、レイアウト402に比べて低下する可能性がある。
図5を参照すると、メモリ回路300およびCLB302のレイアウト502を備えるSOC500が示される。SOC500は、レイアウト402を除くSOC400の1または複数のコンポーネントを含むことができる。レイアウト502では、第1の複数のメモリ回路300が、SOC500の周辺部に沿って配置され、第2の複数のメモリ回路300が、レイアウト502の中心部に配置される。CLB302は、第1の複数のメモリ回路300と、第2の複数のメモリ回路300との間に配置される。第2の複数のメモリ回路300は、第1の複数のメモリ回路300とは異なる種類のメモリを使用してもよい。しかしながら、レイアウト502は、レイアウト402に比べて、CLB−メモリ回路間通信の速度を大幅に向上しない可能性がある。
図6を参照すると、メモリ回路300およびCLB302のレイアウト602を備えるSOC600が示される。SOC600は、レイアウト402を除くSOC400の1または複数のコンポーネントを含むことができる。レイアウト602では、メモリ回路300は、SOC600の周辺部に沿って配置されない。代わりに、メモリ回路300は、複数の行列に沿った配列で配置される。行列は、SOC600の側面に並列である。CLB302は、メモリ回路300の間で、さらに、行列に沿った配列で、配置される。配列は、SOC600の周辺部から離れた領域に設置される。
それに応じて、第1のCLB302は、行に沿った2つのメモリ回路300の間に配置することができ、第2のCLB302は、列に沿った2つのメモリ回路300の間に配置することができる。第3のCLB302は、長方形の対角線の交点に配置することができ、長方形の4つの頂点は、第1の列(または、第1の行)に沿って設置された2つの隣接するメモリ回路300と、第2の列(または、第2の行)に沿った2つの隣接するメモリ回路300とであり、ここで、第1の列(または、第1の行)は、第2の列(または、第2の行)に隣接する。
CLB302は、CLB302とメモリ回路300との間の信号経路が、以下に説明するレイアウトデバイスを使用して最適化されるよう配置することができる。それに応じて、レイアウト602は、レイアウト402および502に比べて、CLB−メモリ回路間通信の速度を大幅に向上する。さらに、レイアウト602は、レイアウト402および502より効率的に、SOC600のダイ領域を使用する。それに応じて、レイアウト602は、所与のダイ領域に対して、レイアウト402および502より多くの数のCLB302および/またはメモリ回路300を使用することができる。あるいは、所与の数のCLB302およびメモリ回路300に対して、レイアウト602は、レイアウト402および502より占有するダイ領域が少ない。したがって、所与の数のCLB302およびメモリ回路300に対して、レイアウト602を使用するSOC600のダイのサイズは、レイアウト402および502をそれぞれ使用するSOC400および500より小さくすることができる。
図7を参照すると、レイアウトデバイス700は、入力モジュール702、処理モジュール704、および出力モジュール706を備える。レイアウトデバイス700は、レイアウト602が、所与の回路設計またはその一部分に使用することができるかどうかを決定し(すなわち、レイアウト602の実行可能性を決定し)、行/列間隔および行と列の数を含む、レイアウト602のパラメータを決定する。
以下に説明するように、入力モジュール702は、複数の入力を受信する。処理モジュール704は、複数の入力を処理し、レイアウト602の実行可能性およびパラメータを決定するソフトウェアプログラムを実行する。出力モジュール706は、レイアウト602の実現可能性およびパラメータを含む処理の結果を出力する。
図8を参照すると、レイアウト602の実行可能性およびパラメータを決定する方法800を示す。802で、制御部は、回路相互接続(例えば、ネットリスト)、タイミング制約(例えば、クロック定義など)、およびダイ領域を含む複数の入力を受信する。804で、制御部は、各メモリ回路300と通信する、および互いに通信する、CLB302の数を決定する。806で、制御部は、メモリ回路300のグループと通信するCLB302の領域を決定する。808で、制御部は、複数のメモリ回路300と通信するCLB302の領域が、CLB302が通信するメモリ回路300の領域(例えば、所与のパーセンテージ)と比較可能であるかを決定する。
810では、制御部は、CLB302の領域がメモリ回路300の領域と比較可能ではない場合、配列スタイルレイアウトが、CLB302およびメモリ回路300に対して実行可能でないと決定する。812では、CLB302の領域が、メモリ回路300の領域と比較可能である場合、制御部は、配列スタイルレイアウトが、CLB302およびメモリ回路300に対して実行可能であると決定し、配列スタイルレイアウトのためのパラメータを決定する。配列スタイルレイアウトのためのパラメータは、行/列間隔、およびメモリ回路300周辺のCLB302のグルーピング、分布、ならびに位置などを含む。
814で、制御部は、第1に、タイミング制約に基づいて、第2に、CLB302とメモリ回路300との間の相互接続に基づいて、メモリ回路300の周りにCLB302を分散する。例えば、メモリ回路300のグループと通信するCLB302のグループでは、CLB302が、緩和タイミング要件を有する信号経路(すなわち、比較的長い信号経路)を使用する場合、制御部は、CLB302を、グループ内の残りのCLB302よりも、CLB302のグループおよび/またはメモリ回路300のグループから離して配置することができる。
一実装態様において、入力は、回路接続情報(例えば、典型的には、Verilogでのネットリスト)、タイミング制約(例えば、クロック定義、遅延など)などを含むことができる。入力はまた、回路に対するタイミングモジュール(例えば、ライブラリファイル、Spiceデータなど)を含んでもよい。入力はまた、領域がタイミングモジュールに含まれない場合、(例えば、Milkwayデータベースを使用して)回路に対する物理的情報を含んでもよい。
静的タイミング解析(STA)環境では、ソフトウェアプログラムは、各メモリ回路300と通信するCLB302の領域および数を決定する。特に、ソフトウェアプログラムは、各メモリ回路300への有効なタイミング経路を用いて、CLB302の集合を生成する。集合は、タイミングスラック閾値および推移パイプライン深さ(すなわち、タイミング経路のレベルの数)によって動作する。さらに、ソフトウェアプログラムは、メモリ回路およびCLB集合の交差部を取得する。
ソフトウェアプログラムは、異なる基準を使用して、CLB302およびメモリ回路300の配列スタイルレイアウトが有益であるかを決定し、配列のパラメータを決定することができる。例えば、第1の基準は、CLB領域の最大交差部と、交差するメモリ領域との比率とすることができる。第2の基準は、CLB交差部の絶対領域および交差するメモリの絶対領域とすることができる。ソフトウェアプログラムは、CLB相互接続の密度(すなわち、共通のCLB302と通信するCLB302の数)を決定することができる。各タイミング開始点(典型的には、CLB302におけるフリッププロップ)に対して、ソフトウェアプログラムは、閾値未満のスラックを有する開始点からのタイミング経路の集合を生成することができ、タイミング経路に含まれるすべてのCLBファンアウトを格納することができる。ソフトウェアプログラムは、集合の交差部を検出し、CLB相互接続比率を決定することができる。第3の基準は、STA駆動の、交差するCLBの絶対サイズとすることができる。これらの基準は、メモリ回路300間およびCLB302間の交差結合した、タイミング駆動の相互接続の量の測定値である。これらの値は、CLB302およびメモリ回路300の配列スタイルレイアウトが有益であるかを決定し、配列のパラメータ(例えば、行/列間隔など)を決定するために使用される。
それに応じて、ソフトウェアプログラムは、コンポーネント間の相互接続およびコンポーネント間の信号経路のタイミングを考慮に入れて、解析を実行する。解析に基づいて、ソフトウェアプログラムは、回路のリストおよび配列内にコンポーネントを配置するためのパラメータ(例えば、配列内に回路を配置するための位置)をもたらすユーザの代わりに、配列内にコンポーネントを配置する実現可能性に関するデータおよび配列に対するパラメータ(例えば、配列内のコンポーネントの位置、間隔など)を生成する。
上記説明は単に、本質的に例示のためのものであり、本開示、用途、または使用法を限定することを意図しない。本開示の広範な教示は、さまざまな形式で実現することができる。したがって、本開示は、特定の実施例を含むが、本開示の本当の観点は、他の変形例が、図面、明細書、および特許請求の範囲の研究により明らかになるため、限定されるべきではない。明瞭にする目的ために、同じ参照番号を、同様の要素を識別するために、図面内で使用する。本明細書で使用される場合、A、B、およびCの少なくとも1つ、というフレーズは、非排他的論理ORを使用する論理(AまたはBまたはC)を意味すると解釈されるべきである。本方法における1または複数のステップは、本開示の原理を変更することなく、異なる順序で(または、同時に)実行することができることを理解すべきである。
本明細書で使用される場合、モジュールという用語は、特定用途向け集積回路(ASIC)離散的回路、集積回路、組合せ論理回路、フィールド・プログラマブル・ゲートアレイ(FPGA)、コードを実行するプロセッサ(共有、専用、またはグループ)、説明した機能を提供する他の適切なハードウェアコンポーネント、またはシステムオンチップなどにおける上記の一部もしくはすべての組み合わせ、の一部もしくはそれらを含むことを意味することができる。モジュールという用語は、プロセッサによって実行されるコードを格納するメモリ(共有、専用、またはグループ)を含むことができる。
コードという用語は、上記で使用する場合、ソフトウェア、ファームウェア、ならびに/もしくはマイクロコードを含むことができ、プログラム、ルーチン、関数、クラス、ならびに/もしくはオブジェクトを意味することができる。共有という用語は、上記で使用する場合、複数のモジュールからのコードの一部またはすべてを、単一の(共有された)プロセッサを使用して実行することができることを意味する。さらに、複数のモジュールからのコードの一部またはすべては、単一の(共有された)メモリで格納してもよい。グループという用語は、上記で使用する場合、単一のモジュールからのコードの一部またはすべてを、プロセッサのグループを使用して実行することができることを意味する。さらに、単一のモジュールからのコードの一部またはすべては、メモリのグループを使用して格納してもよい。
本明細書で説明した装置および方法は、1または複数のプロセッサによって実行される1または複数のコンピュータプログラムにより、部分的または完全に実現することができる。コンピュータプログラムは、少なくとも1つの非一時的有形コンピュータ可読媒体に格納されたプロセッサ実行可能命令を含む。コンピュータプログラムはまた、格納されたデータを含む、およびまたは格納されたデータに依存する可能性がある。非一時的有形コンピュータ可読媒体の非限定の例には、不揮発性メモリ、揮発性メモリ、磁気ストレージ、および光学ストレージがある。
本明細書で説明した装置および方法は、1または複数のプロセッサによって実行される1または複数のコンピュータプログラムにより、部分的または完全に実現することができる。コンピュータプログラムは、少なくとも1つの非一時的有形コンピュータ可読媒体に格納されたプロセッサ実行可能命令を含む。コンピュータプログラムはまた、格納されたデータを含む、およびまたは格納されたデータに依存する可能性がある。非一時的有形コンピュータ可読媒体の非限定の例には、不揮発性メモリ、揮発性メモリ、磁気ストレージ、および光学ストレージがある。
本発明の例を下記の各項目として示す。
[項目1]
複数行および複数列に沿ってダイ上に配置された複数のメモリ回路と、
前記複数行および前記複数列に沿った前記複数のメモリ回路の間に、前記ダイ上に配置される複数の論理回路と
を備え、
各メモリ回路は、複数のメモリセルを含み、
前記複数の論理回路は、前記複数のメモリ回路の1または複数と通信する、集積回路。
[項目2]
前記複数行および前記複数列が、前記ダイの周辺部から離れた領域に配置される、項目1に記載の集積回路。
[項目3]
前記複数のメモリセルが、ラッチベースのランダムアクセスメモリセルを含む、項目1に記載の集積回路。
[項目4]
前記複数の論理回路が、組合せ論理回路および順序論理回路の少なくとも一方を含む、項目1に記載の集積回路。
[項目5]
前記複数のメモリ回路が、所定のメモリ容量を有する、項目1に記載の集積回路。
[項目6]
前記複数のメモリ回路の少なくとも1つが、前記複数のメモリ回路のうちの他のものとは異なるメモリ容量を有する、項目1に記載の集積回路。
[項目7]
前記複数の論理回路の少なくとも1つが、
ストレージデバイスの読み込み動作もしくは書き込み動作中に、信号を処理し、前記ストレージデバイスは、ハードディスクドライブ、光学ディスクドライブ、または固体ディスクを含み、前記処理によって生成されたデータを前記複数のメモリ回路の1または複数に格納する、項目1に記載の集積回路。
[項目8]
前記複数の論理回路の少なくとも1つが、
通信デバイスの送信動作または受信動作中に信号を処理し、
前記処理によって生成されたデータを前記複数のメモリ回路の1または複数に格納する、項目1に記載の集積回路。
[項目9]
前記複数の論理回路のうち第1の論理回路は、(i)前記複数のメモリ回路のうち第1のメモリ回路からの第1のデータを読み出し、(ii)前記第1のデータを処理することによって第2のデータを生成し、(iii)前記複数のメモリ回路のうち第2のメモリ回路に前記第2のデータを格納し、前記複数の論理回路のうち第2の論理回路は、(i)前記複数のメモリ回路のうち前記第2のメモリ回路からの前記第2のデータを読み出し、(ii)前記第2のデータを処理することによって第3のデータを生成し、(iii)前記複数のメモリ回路のうち前記第1のメモリ回路に前記第3のデータを格納し、
前記複数の論理回路のうち前記第1の論理回路が、前記第3のデータを処理する、項目1に記載の集積回路。
[項目10]
(i)ダイ上に配置されるメモリ回路および論理回路のリスト、(ii)前記メモリ回路および前記論理回路の入力信号および出力信号のタイミング、及び(iii)前記ダイの領域、を含むデータを受信する入力モジュールと、
処理モジュールと
を備え、前記処理モジュールが、
前記データを処理し、
複数の前記メモリ回路と通信する複数の前記論理回路の領域が、前記複数の前記メモリ回路の領域の、所定のパーセンテージより大きいかまたは等しいかを決定し、前記複数の前記論理回路の前記領域が、前記複数の前記メモリ回路の前記領域の、前記所定のパーセンテージより大きいかまたは等しいことに応じて、前記ダイの前記領域上に配列型レイアウトで、前記メモリ回路および前記論理回路を配置する、システム。
[項目11]
前記処理モジュールが、前記配列型レイアウトの行および列の間隔を含むパラメータを決定する、項目10に記載のシステム。
[項目12]
前記処理モジュールが、前記メモリ回路および前記論理回路の入力信号および出力信号の前記タイミングに従って、前記配列型レイアウトで前記論理回路を分散する、項目10に記載のシステム。
[項目13]
前記処理モジュールは、前記メモリ回路および前記論理回路の接続に従って、前記配列型レイアウトで前記論理回路を分散する、項目10に記載のシステム。
[項目14]
(i)ダイ上に配置されるメモリ回路および論理回路のリスト、(ii)前記メモリ回路および前記論理回路の入力信号および出力信号のタイミング、及び(iii)前記ダイの領域、を含むデータを受信するステップと、
前記データを処理するステップと、
複数の前記メモリ回路と通信する複数の前記論理回路の領域が、前記複数の前記メモリ回路の領域の、所定のパーセンテージより大きいかまたは等しいかを決定するステップと、
前記複数の前記論理回路の前記領域が、前記複数の前記メモリ回路の前記領域の、前記所定のパーセンテージより大きいかまたは等しいことに応じて、前記ダイの前記領域上に配列型レイアウトで、前記メモリ回路および前記論理回路を配置するステップと
を備える、方法。
[項目15]
前記配列型レイアウトの行および列の間隔を含むパラメータを決定するステップをさらに備える、項目14に記載の方法。
[項目16]
前記メモリ回路および前記論理回路の入力信号および出力信号の前記タイミングに従って、前記配列型レイアウトで前記論理回路を分散するステップをさらに備える、項目14に記載の方法。
[項目17]
前記メモリ回路および前記論理回路の接続に従って、前記配列型レイアウトで前記論理回路を分散するステップをさらに備える、項目14に記載の方法。

Claims (17)

  1. 複数行および複数列に沿ってダイ上に配置された複数のメモリ回路と、
    前記複数行および前記複数列に沿った前記複数のメモリ回路の間に、前記ダイ上に配置される複数の論理回路と
    を備え、
    各メモリ回路は、複数のメモリセルを含み、
    前記複数の論理回路は、前記複数のメモリ回路の1または複数と通信する、集積回路。
  2. 前記複数行および前記複数列が、前記ダイの周辺部から離れた領域に配置される、請求項1に記載の集積回路。
  3. 前記複数のメモリセルが、ラッチベースのランダムアクセスメモリセルを含む、請求項1に記載の集積回路。
  4. 前記複数の論理回路が、組合せ論理回路および順序論理回路の少なくとも一方を含む、請求項1に記載の集積回路。
  5. 前記複数のメモリ回路が、所定のメモリ容量を有する、請求項1に記載の集積回路。
  6. 前記複数のメモリ回路の少なくとも1つが、前記複数のメモリ回路のうちの他のものとは異なるメモリ容量を有する、請求項1に記載の集積回路。
  7. 前記複数の論理回路の少なくとも1つが、
    ストレージデバイスの読み込み動作もしくは書き込み動作中に、信号を処理し、前記ストレージデバイスは、ハードディスクドライブ、光学ディスクドライブ、または固体ディスクを含み、前記処理によって生成されたデータを前記複数のメモリ回路の1または複数に格納する、請求項1に記載の集積回路。
  8. 前記複数の論理回路の少なくとも1つが、
    通信デバイスの送信動作または受信動作中に信号を処理し、
    前記処理によって生成されたデータを前記複数のメモリ回路の1または複数に格納する、請求項1に記載の集積回路。
  9. 前記複数の論理回路のうち第1の論理回路は、(i)前記複数のメモリ回路のうち第1のメモリ回路からの第1のデータを読み出し、(ii)前記第1のデータを処理することによって第2のデータを生成し、(iii)前記複数のメモリ回路のうち第2のメモリ回路に前記第2のデータを格納し、前記複数の論理回路のうち第2の論理回路は、(i)前記複数のメモリ回路のうち前記第2のメモリ回路からの前記第2のデータを読み出し、(ii)前記第2のデータを処理することによって第3のデータを生成し、(iii)前記複数のメモリ回路のうち前記第1のメモリ回路に前記第3のデータを格納し、
    前記複数の論理回路のうち前記第1の論理回路が、前記第3のデータを処理する、請求項1に記載の集積回路。
  10. (i)ダイ上に配置されるメモリ回路および論理回路のリスト、(ii)前記メモリ回路および前記論理回路の入力信号および出力信号のタイミング、及び(iii)前記ダイの領域、を含むデータを受信する入力モジュールと、
    処理モジュールと
    を備え、前記処理モジュールが、
    前記データを処理し、
    複数の前記メモリ回路と通信する複数の前記論理回路の領域が、前記複数の前記メモリ回路の領域の、所定のパーセンテージより大きいかまたは等しいかを決定し、前記複数の前記論理回路の領域が、前記複数の前記メモリ回路の前記領域の、前記所定のパーセンテージより大きいかまたは等しいことに応じて、前記ダイの前記領域上に配列型レイアウトで、前記メモリ回路および前記論理回路を配置する、システム。
  11. 前記処理モジュールが、前記配列型レイアウトの行および列の間隔を含むパラメータを決定する、請求項10に記載のシステム。
  12. 前記処理モジュールが、前記メモリ回路および前記論理回路の入力信号および出力信号の前記タイミングに従って、前記配列型レイアウトで前記論理回路を分散する、請求項10に記載のシステム。
  13. 前記処理モジュールは、前記メモリ回路および前記論理回路の接続に従って、前記配列型レイアウトで前記論理回路を分散する、請求項10に記載のシステム。
  14. (i)ダイ上に配置されるメモリ回路および論理回路のリスト、(ii)前記メモリ回路および前記論理回路の入力信号および出力信号のタイミング、及び(iii)前記ダイの領域、を含むデータを受信するステップと、
    前記データを処理するステップと、
    複数の前記メモリ回路と通信する複数の前記論理回路の領域が、前記複数の前記メモリ回路の領域の、所定のパーセンテージより大きいかまたは等しいかを決定するステップと、
    前記複数の前記論理回路の前記領域が、前記複数の前記メモリ回路の前記領域の、前記所定のパーセンテージより大きいかまたは等しいことに応じて、前記ダイの前記領域上に配列型レイアウトで、前記メモリ回路および前記論理回路を配置するステップと
    を備える、方法。
  15. 前記配列型レイアウトの行および列の間隔を含むパラメータを決定するステップをさらに備える、請求項14に記載の方法。
  16. 前記メモリ回路および前記論理回路の入力信号および出力信号の前記タイミングに従って、前記配列型レイアウトで前記論理回路を分散するステップをさらに備える、請求項14に記載の方法。
  17. 前記メモリ回路および前記論理回路の接続に従って、前記配列型レイアウトで前記論理回路を分散するステップをさらに備える、請求項14に記載の方法。
JP2014542589A 2011-11-22 2012-11-21 システムオンチップ内のメモリ回路および論理回路のレイアウト Expired - Fee Related JP6257044B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161563001P 2011-11-22 2011-11-22
US61/563,001 2011-11-22
US13/680,530 US8902625B2 (en) 2011-11-22 2012-11-19 Layouts for memory and logic circuits in a system-on-chip
US13/680,530 2012-11-19
PCT/US2012/066236 WO2013078294A2 (en) 2011-11-22 2012-11-21 Layouts for memory and logic circuits in a system-on-chip

Publications (3)

Publication Number Publication Date
JP2015502660A true JP2015502660A (ja) 2015-01-22
JP2015502660A5 JP2015502660A5 (ja) 2016-01-07
JP6257044B2 JP6257044B2 (ja) 2018-01-10

Family

ID=48426797

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014542589A Expired - Fee Related JP6257044B2 (ja) 2011-11-22 2012-11-21 システムオンチップ内のメモリ回路および論理回路のレイアウト

Country Status (5)

Country Link
US (1) US8902625B2 (ja)
JP (1) JP6257044B2 (ja)
CN (1) CN103946848B (ja)
TW (1) TWI616764B (ja)
WO (1) WO2013078294A2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5956964B2 (ja) * 2013-08-30 2016-07-27 株式会社東芝 半導体装置
TWI576852B (zh) * 2015-06-30 2017-04-01 宏碁股份有限公司 電子裝置及其固態硬碟的電源管理方法
CN105319964B (zh) * 2015-09-29 2018-06-22 上海新跃仪表厂 基于配置文件的运载火箭测试发射流程生成方法及系统
US11392748B2 (en) * 2018-09-28 2022-07-19 Taiwan Semiconductor Manufacturing Company, Ltd. Integrated circuit design using fuzzy machine learning
BR112023000949A2 (pt) * 2020-07-31 2023-02-07 Qualcomm Inc Sistemas e métodos para multiplexação de energia adaptativa

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003023083A (ja) * 2001-05-06 2003-01-24 Altera Corp Ip機能ブロックのフレキシブルな配置のためのpldアーキテクチャ
JP2003037173A (ja) * 2001-07-23 2003-02-07 Niigata Seimitsu Kk アナログ・デジタル混載集積回路
JP2006099719A (ja) * 2004-08-30 2006-04-13 Sanyo Electric Co Ltd 処理装置
JP2006156929A (ja) * 2004-04-19 2006-06-15 Fujitsu Ltd 半導体集積回路及びその設計方法
JP2006323643A (ja) * 2005-05-19 2006-11-30 Nec Electronics Corp 半導体集積回路のフロアプラン設計プログラム、フロアプラン設計装置、および設計方法
JP2006324471A (ja) * 2005-05-19 2006-11-30 Toshiba Corp 半導体集積回路装置
JP2010055740A (ja) * 2008-08-27 2010-03-11 Panasonic Corp 分散ブロックram
JP2010073868A (ja) * 2008-09-18 2010-04-02 Renesas Technology Corp 半導体装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW231343B (ja) * 1992-03-17 1994-10-01 Hitachi Seisakusyo Kk
US5657284A (en) * 1995-09-19 1997-08-12 Micron Technology, Inc. Apparatus and method for testing for defects between memory cells in packaged semiconductor memory devices
US5767565A (en) 1996-07-22 1998-06-16 Alliance Semiconductor Corporation Semiconductor devices having cooperative mode option at assembly stage and method thereof
US5892703A (en) 1997-06-13 1999-04-06 Micron Technology, Inc, Memory architecture and decoder addressing
TW525184B (en) * 2001-08-17 2003-03-21 High Connector Density Inc Stackable modules with clustered connections
US6717430B2 (en) * 2002-02-13 2004-04-06 Motorola, Inc. Integrated circuit testing with a visual indicator
US6687147B2 (en) * 2002-04-02 2004-02-03 Hewlett-Packard Development Company, L.P. Cubic memory array with diagonal select lines
TW594991B (en) * 2003-04-29 2004-06-21 Faraday Tech Corp Integrated circuit with one metal layer for programming functionality of a logic operation module
US20050044320A1 (en) * 2003-08-19 2005-02-24 Sun Microsystems, Inc. Cache bank interface unit
US8463996B2 (en) * 2003-08-19 2013-06-11 Oracle America, Inc. Multi-core multi-thread processor crossbar architecture
US20060143384A1 (en) * 2004-12-27 2006-06-29 Hughes Christopher J System and method for non-uniform cache in a multi-core processor
US7353162B2 (en) * 2005-02-11 2008-04-01 S2C, Inc. Scalable reconfigurable prototyping system and method
TW200743976A (en) * 2006-05-19 2007-12-01 Nat Applied Res Lab Nat Chip Implementation Ct Multi-project System-on-Chip platform and the design method thereof
KR101297754B1 (ko) 2006-07-11 2013-08-26 삼성전자주식회사 메모리 컴파일링 시스템 및 컴파일링 방법
JP4951786B2 (ja) * 2007-05-10 2012-06-13 ルネサスエレクトロニクス株式会社 半導体記憶装置
JP5528662B2 (ja) * 2007-09-18 2014-06-25 ソニー株式会社 半導体集積回路
US8102663B2 (en) * 2007-09-28 2012-01-24 Oracle America, Inc. Proximity communication package for processor, cache and memory
CN101320707B (zh) * 2008-05-19 2010-06-09 深圳市国微电子股份有限公司 结构化专用集成电路设置和生产方法
US7800936B2 (en) 2008-07-07 2010-09-21 Lsi Logic Corporation Latch-based random access memory
KR101047059B1 (ko) 2009-10-30 2011-07-06 주식회사 하이닉스반도체 반도체 메모리 장치

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003023083A (ja) * 2001-05-06 2003-01-24 Altera Corp Ip機能ブロックのフレキシブルな配置のためのpldアーキテクチャ
JP2003037173A (ja) * 2001-07-23 2003-02-07 Niigata Seimitsu Kk アナログ・デジタル混載集積回路
JP2006156929A (ja) * 2004-04-19 2006-06-15 Fujitsu Ltd 半導体集積回路及びその設計方法
JP2006099719A (ja) * 2004-08-30 2006-04-13 Sanyo Electric Co Ltd 処理装置
JP2006323643A (ja) * 2005-05-19 2006-11-30 Nec Electronics Corp 半導体集積回路のフロアプラン設計プログラム、フロアプラン設計装置、および設計方法
JP2006324471A (ja) * 2005-05-19 2006-11-30 Toshiba Corp 半導体集積回路装置
JP2010055740A (ja) * 2008-08-27 2010-03-11 Panasonic Corp 分散ブロックram
JP2010073868A (ja) * 2008-09-18 2010-04-02 Renesas Technology Corp 半導体装置

Also Published As

Publication number Publication date
JP6257044B2 (ja) 2018-01-10
US20130128648A1 (en) 2013-05-23
WO2013078294A4 (en) 2013-09-06
WO2013078294A2 (en) 2013-05-30
WO2013078294A3 (en) 2013-07-18
CN103946848B (zh) 2017-04-12
TWI616764B (zh) 2018-03-01
US8902625B2 (en) 2014-12-02
TW201324221A (zh) 2013-06-16
CN103946848A (zh) 2014-07-23

Similar Documents

Publication Publication Date Title
US10746796B2 (en) System and method for testing and configuration of an FPGA
US10515135B1 (en) Data format suitable for fast massively parallel general matrix multiplication in a programmable IC
JP6257044B2 (ja) システムオンチップ内のメモリ回路および論理回路のレイアウト
KR102453193B1 (ko) 영역-특정 메모리 액세스 스케줄링을 가진 메모리 시스템
TW201723865A (zh) 加速器控制器及方法
US8476926B1 (en) Method and apparatus for implementing periphery devices on a programmable circuit using partial reconfiguration
US9292640B1 (en) Method and system for dynamic selection of a memory read port
US20140379307A1 (en) Method and Apparatus for Implementing a System-Level Design Tool for Design Planning and Architecture Exploration
CN106933510B (zh) 一种存储控制器
US9773083B1 (en) Post-placement and pre-routing processing of critical paths in a circuit design
KR101681862B1 (ko) 스캔 셀 파티션에 기반을 둔 x-filling 및 저전력 스캔 셀 재배열 장치 및 방법
Zhu et al. Partial-DNA cyclic memory for bio-inspired electronic cell
JP2015502660A5 (ja)
KR102381862B1 (ko) 데이터 통신 장치
US9503096B1 (en) Multiple-layer configuration storage for runtime reconfigurable systems
US9235675B2 (en) Multidimensional monte-carlo simulation for yield prediction
US20180076803A1 (en) Clock-distribution device of ic and method for arranging clock-distribution device
US10430539B1 (en) Method and apparatus for enhancing performance by moving or adding a pipelined register stage in a cascaded chain
US9130561B1 (en) Configuring a programmable logic device using a configuration bit stream without phantom bits
US10572621B1 (en) Physical synthesis within placement
US10162924B1 (en) Method and apparatus for performing large scale consensus based clustering
US10387594B1 (en) Increasing available flip-flop count for placement of a circuit design in programmable logic and circuitry therefor
WO2017118417A1 (en) Multiple-layer configuration storage for runtime reconfigurable systems
KR102484499B1 (ko) 메모리 디바이스
US9355198B1 (en) Method and apparatus for performing late binding of control status registers in a design compilation flow

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151109

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170302

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171023

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: 20171107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171201

R150 Certificate of patent or registration of utility model

Ref document number: 6257044

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees