JP2006065457A - インタフェース回路生成装置およびインタフェース回路 - Google Patents

インタフェース回路生成装置およびインタフェース回路 Download PDF

Info

Publication number
JP2006065457A
JP2006065457A JP2004245043A JP2004245043A JP2006065457A JP 2006065457 A JP2006065457 A JP 2006065457A JP 2004245043 A JP2004245043 A JP 2004245043A JP 2004245043 A JP2004245043 A JP 2004245043A JP 2006065457 A JP2006065457 A JP 2006065457A
Authority
JP
Japan
Prior art keywords
interface circuit
circuit
group
buses
definition file
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
JP2004245043A
Other languages
English (en)
Inventor
Kazumichi Kawasome
一路 川染
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2004245043A priority Critical patent/JP2006065457A/ja
Publication of JP2006065457A publication Critical patent/JP2006065457A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

【課題】デッドロックを回避でき、各種の優先順位方式による調停を実現できるインタフェース回路を容易に設計すること。
【解決手段】複数のバスとの間のインタフェース回路であるハブ1についての論理表現を作成するインタフェース回路生成装置において、複数のバスの各々に対応したポートをグループとして定義する定義ファイルを備えており、定義ファイルを用い、一のバスに対応したグループから他のバスに対応したグループへのアクセスが同時に発生した場合に優先順位の低いグループのアクセス要求についてはリトライを返信する回路の論理表現を作成するものである。
【選択図】図1

Description

本発明は、所定の項目を入力することでシミュレーションおよび論理合成可能な論理表現を生成するインタフェース回路生成装置、および所定の機能を有するモジュール間を接続するためのインタフェース回路に関する。
近年、半導体プロセスの進化に伴い、1チップに集積できる機能が増えている。従来、この各機能を処理するモジュール(以下「IP(Intellectual Property)」と言う。)間を接続するためのオンチップバスおよびハブは人手で設計されている。しかし、IPの増加、IPの外部調達(I/F(インタフェース)の多様化)、IP間でのデータ転送の効率化の必要性により、人手で設計していたのでは効率がよくない。そこで、オンチップバスのインタフェースを標準化して、IPとのインタフェース回路を自動的に生成する技術が開示されている(例えば、特許文献1参照。)。
特開平7−334564号公報
しかしながら、IPとのインタフェース回路を自動的に生成する技術を用いても、バスそのものを生成するわけではないので、IPを選択する機構や調停方法やデッドロック回避のための機構は別に用意しなければならないという問題が生じる。
本発明はこのような課題を解決するために成されたものである。すなわち、本発明は、複数のバスとの間のインタフェース回路についての論理表現を作成するインタフェース回路生成装置において、複数のバスの各々に対応したポートをグループとして定義する定義ファイルを備えており、この定義ファイルを用い、一のバスに対応したグループから他のバスに対応したグループへのアクセスが同時に発生した場合に優先順位の低いグループのアクセス要求についてはリトライを返信する回路の論理表現を作成するものである。
また、本発明は、複数のバスとの間のインタフェース回路において、複数のバスの各々に対応したポートをグループとして、複数のバスのうち一のバスに対応したグループから他のバスに対応したグループへのアクセスが同時に発生した場合、優先順位の低いグループのアクセス要求についてはリトライを返信する回路を備えるものである。
このような本発明では、インタフェース回路の生成において、複数のバスの各々に対応したポートをグループとして定義しているため、一のバスに対応したグループから他のバスに対応したグループへのアクセスが同時に発生した場合には優先順位の低いグループのアクセス要求についてリトライを返信する回路を構成でき、デッドロックを防止できるようになる。
また、本発明は、一つのターゲットポートに対して複数のマスターポートからの要求がある場合の調停を行う調停回路を備えたインタフェース回路についての論理表現を作成するインタフェース回路生成装置において、複数のマスターポートについての優先順位を決定する定義ファイルを備えており、この定義ファイルを用い、優先順位に基づく順番で複数のマスターポートのうち一つを選択してターゲットポートとの接続を行う回路の論理表現を作成するものである。
また、本発明は、一つのターゲットポートに対して複数のマスターポートからの要求がある場合の調停を行う調停回路を備えたインタフェース回路において、調停回路が、複数のマスターポートについて定義された優先順位に基づく順番で複数のマスターポートのうち一つを選択してターゲットポートとの接続を行うものである。
このような本発明では、インタフェース回路の生成において、複数のマスターポートについての優先順位を決定する定義ファイルを備えているため、調停回路によって、複数のマスターポートについて定義された優先順位に基づく順番で複数のマスターポートのうち一つを選択してターゲットポートとの接続を行うことができるようになる。
したがって、本発明によれば、デッドロックを回避でき、各種の優先順位方式による調停を実現できるインタフェース回路を容易に設計でき、集積回路設計の効率化を図ることが可能となる。
以下、本発明の実施の形態を図に基づき説明する。図1は、本実施形態に係るインタフェース回路を備えたハブを説明する模式図である。すなわち、ハブ1は、複数のIP間を接続するための回路であり、例えば1チップ内に収納したり、ボード上に実装することで実現されている。このハブ1には、CPUやDMA、BUS/IF(インタフェース)、その他の処理機能を有するものがIPとして接続されており、各IPから他のIPへのデータ転送やアドレス制御等を行っている。
ハブ1内には、各IPと対応してインタフェース変換回路11と、バッファ/データ幅変換回路12とが設けられ、各IPに対応したインタフェース変換回路11およびバッファ/データ幅変換回路12がターゲット選択機構13およびマスター調停機構14を介して接続された構成となっている。
本実施形態では、このようなハブ1内の回路における論理表現を生成するインタフェース回路生成装置において、IP間のデータ転送におけるデッドロックを回避したり、効率の良い調停を行うことができる回路の設計およびこれを用いたインタフェース回路に特徴を有してる。
本実施形態のインタフェース回路生成装置はワークステーション等のコンピュータで実行されるソフトウェアによって実現されており、必要な構成としては、以下の項目を入力することにより、シミュレーションおよび論理合成可能なRTL(Register Transfer Level)またはネットリスト記述等の論理表現を生成することが可能となる。
(1)IPのインタフェース仕様
(2)IPがマスター機能を持つかどうか
(3)マスターとなるIPとターゲットとなるIP間の接続情報
(4)ターゲットとなるIPがマスターとなるIPを選択する時の調停方式
(5)IPのアドレス幅とデータ幅
(6)データバッファの深さ
(7)IPのクロックとハブのクロックが同期か非同期か
(8)デッドロック回避のためのグルーピング
ここで、インタフェース回路におけるデッドロックについて説明する。図2はデッドロックを説明する模式図で、(a)は複数のバス間におけるデッドロック、(b)はデータストリームタイプのモジュールでのデッドロックを示している。
すなわち、複数の外部バス(PCI/CPUバスなど)とのインタフェースを持ち、外部バスに対してマスター(イニシエーター)およびスレーブ(ターゲット)になるようなシステムでは、デッドロックの配慮が必要となる。例えば、図2(a)に示すバスブリッジでは、双方のバスから相手側のバスへのアクセスが同時に発生した場合、お互い相手側のバスが空くのを延々と待ち続ける、いわゆるデッドロック状態に陥る。このような状態に陥ると、システムがフリーズしてしまい、リセットするしか解消する方法がない。
また、図2(b)に示すように、データストリームタイプのモジュール(FIFOや画像圧縮伸長モジュールなど)でも、1次バスから画像圧縮モジュールへのデータ入力および画像圧縮モジュールから1次バスへのデータ出力において、HUB-BUS I/Fと1次バスとの間でデータ入出力のタイミングが合致してしまうとデッドロック状態に陥ることがある。
いずれのデッドロック状態でも、各モジュールがトランザクションの相手が転送可能になるのを待ち続けることで発生する。したがって、各モジュールがトランザクションの相手が転送可能になるのを待ち続けるのではなく、トランザクションをやり直す(リトライする)ことによって、デッドロック状態を回避することができる。
そこで、本実施形態では、デッドロックを回避するためのインターロック機構をサポートしている。具体的には、ハブの論理表現を作成する際に用いる定義ファイルに、マスターポートとターゲットポートのグループ(例えば、PRMグループ(PRM_MとPRM_T)、およびSECグループ(SEC_MとSEC_T))を指定しておき、グループからもう一方へのグループへのアクセスが同時に発生した場合は、優先順位の低いグループのアクセス要求に対してリトライを返すよう回路設計する。このようなインターロック機構を設けることによりデッドロックを回避することが可能となる。
図3は、デッドロック回避のための定義ファイルの例を示す図である。この例では、マスターポートおよびターゲットポートのグループとしてPRMグループとSECグループを定義し、そのうちマスターポートはPRM_MおよびSEC_M、ターゲットポートはPRM_TおよびSEC_Tとして定義している。
この定義ファイルにおいて、InterLock=>[[PRM_T,PRM_M],[SEC_T,SEC_M]];で、PRM_TとPRM_Mとが同一グループ、SEC_TとSEM_Mとが同一グループに属することを示し、PRM_のグループからSEC_のグループへのアクセスとSEC_のグループからPRM_のグループへのアクセスが同時に発生した場合に、SEC_のグループからのアクセスに対してリトライを返すようになる(定義文の左に記述されているグループの方が優先順位が高い)。
図4は、デッドロック回避を説明する図である。ここでは1次バスから2次バスおよび2次バスから1次バスの両方にデータ転送要求があった場合、図3に示す定義ファイルによって優先順位の低いグループのへリトライを返信している。つまり、図3に示す定義ファイルでは、1次バスから2次バスへのデータ転送(PRMグループ)の優先順位より2次バスから1次バスへのデータ転送(SECグループ)の優先順位の方が低いため、優先順位の低いグループのアクセス要求についてはリトライを返信している。これにより、HUBは1次バスから2次バスへのアクセス要求について処理し、これが終わった後に2次バス側から送られるリトライによって2次バス側からのアクセス要求を処理できるようになる。したがって、両バスからのアクセス要求が衝突せず、デッドロック状態に陥ることを回避できるようになる。
次に、調停(アービトレーション)について説明する。一つのターゲットポートに対して複数のマスターポートからの要求がある場合、これらマスターポートからの要求を調停する必要が生じる。本実施形態に係るハブ(HUB)では、基本的なアービトレーション方式として、固定優先順位方式とラウンドロビン方式があり、これらの方式はターゲットポートごとに個別に定義ファイルにて設定することができる。また、固定優先順位方式およびラウンドロビン方式を階層的に組み合わせることによって、より柔軟な調停を行うことが可能となる。
<固定優先順方式>
固定優先順位方式では、定義ファイルで指定された順に優先順位が決定される。このため、固定優先順位方式は、最も単純な方式で、回路規模が小さく、ゲート遅延も少ないことから、優先順位が問題にならないようなターゲットポートの調停に向いている。
<ラウンドロビン方式>
ラウンドロビン方式は、一度選択されたマスターの優先順位が次からは最も低い優先順位になるような調停方式である。図5は、ラウンドロビン方式の例を示す模式図である。ここでは3つのマスターポートM1〜M3からの要求があった場合の優先順位の巡回例であり、マスターポートM1→マスターポートM2→マスターポートM3→マスターポートM1→…の順で優先順位が巡回している。
ラウンドロビン方式は、すべてのマスターポートからの要求に対して公平に調停を行うので、同時に複数のマスターポートからの要求が来ることが予想されるターゲットポートの調停に向いている。その一方、固定優先順位方式よりも回路規模が大きくなる。
<階層化されたアービトレーション>
本実施形態では、プリエンプティブ(固定優先順位)方式とラウンドロビン方式とを階層的に組み合わせるようにしている。図6は、固定優先順位方式とラウンドロビン方式とを階層的に組み合わせた定義ファイルの例および調停回路の例を示している。
ここでは4つのマスターポートM1〜M4と1つのターゲットポートT1とが定義されている。また、調停回路では、マスターポートM1、M2についてラウンドロビン方式での優先順位決定、マスターポートM3、M4についてラウンドロビン方式での優先順位決定、これらM1、M2のうちラウンドロビン方式で決定されたいずれかのマスターポートと、M3、M4のうちラウンドロビン方式で決定されたいずれかのマスターポートとで、プリエンプティブ(固定優先順位)方式による決定される。
つまり、マスターポートM1とM2とでラウンドロビン方式により優先されるいずれかのマスターポートを決定し、マスターポートM3とM4とでラウンドロビン方式により優先されるいずれかもマスターポートを決定する。そして、両ラウンドロビン方式で決定された2つのマスターポートのうちプリエンプティブ(固定優先順位)によって1つのマスターポートを決定し、最終的に決定されたマスターポートを制御回路へ与えている。
このようなラウンドロビン方式とプリエンプティブ方式との階層的な組み合わせによって回路規模を大きくすることなく柔軟な調停を行うことが可能となる。
本実施形態に係るインタフェース回路を備えたハブを説明する模式図である。 デッドロックを説明する模式図である。 デッドロック回避のための定義ファイルの例を示す図である。 デッドロック回避を説明する図である。 ラウンドロビン方式の例を示す模式図である。 固定優先順位方式とラウンドロビン方式とを階層的に組み合わせた定義ファイルの例および調停回路の例を示す図である。
符号の説明
1…ハブ、11…インタフェース変換回路、12…バッファ/データ幅変換回路、13…ターゲット選択機構、14…マスター調停機構

Claims (8)

  1. 複数のバスとの間のインタフェース回路についての論理表現を作成するインタフェース回路生成装置において、
    前記複数のバスの各々に対応したポートをグループとして定義する定義ファイルを備えており、
    前記定義ファイルを用い、一のバスに対応したグループから他のバスに対応したグループへのアクセスが同時に発生した場合に優先順位の低いグループのアクセス要求についてはリトライを返信する回路の論理表現を作成する
    ことを特徴とするインタフェース回路生成装置。
  2. 一つのターゲットポートに対して複数のマスターポートからの要求がある場合の調停を行う調停回路を備えたインタフェース回路についての論理表現を作成するインタフェース回路生成装置において、
    前記複数のマスターポートについての優先順位を決定する定義ファイルを備えており、
    前記定義ファイルを用い、前記優先順位に基づく順番で前記複数のマスターポートのうち一つを選択して前記ターゲットポートとの接続を行う回路の論理表現を作成する
    ことを特徴とするインタフェース回路生成装置。
  3. 前記定義ファイルの優先順位は固定順位となっている
    ことを特徴とする請求項2記載のインタフェース回路生成装置。
  4. 前記定義ファイルの優先順位は巡回順位となっている
    ことを特徴とする請求項2記載のインタフェース回路生成装置。
  5. 複数のバスとの間のインタフェース回路において、
    前記複数のバスの各々に対応したポートをグループとして、前記複数のバスのうち一のバスに対応したグループから他のバスに対応したグループへのアクセスが同時に発生した場合、優先順位の低いグループのアクセス要求についてはリトライを返信する回路を備える
    ことを特徴とするインタフェース回路。
  6. 一つのターゲットポートに対して複数のマスターポートからの要求がある場合の調停を行う調停回路を備えたインタフェース回路において、
    前記調停回路は、前記複数のマスターポートについて定義された優先順位に基づく順番で前記複数のマスターポートのうち一つを選択して前記ターゲットポートとの接続を行う
    ことを特徴とするインタフェース回路。
  7. 前記優先順位は固定順位となっている
    ことを特徴とする請求項6記載のインタフェース回路。
  8. 前記優先順位は巡回順位となっている
    ことを特徴とする請求項6記載のインタフェース回路。
JP2004245043A 2004-08-25 2004-08-25 インタフェース回路生成装置およびインタフェース回路 Pending JP2006065457A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004245043A JP2006065457A (ja) 2004-08-25 2004-08-25 インタフェース回路生成装置およびインタフェース回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004245043A JP2006065457A (ja) 2004-08-25 2004-08-25 インタフェース回路生成装置およびインタフェース回路

Publications (1)

Publication Number Publication Date
JP2006065457A true JP2006065457A (ja) 2006-03-09

Family

ID=36111926

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004245043A Pending JP2006065457A (ja) 2004-08-25 2004-08-25 インタフェース回路生成装置およびインタフェース回路

Country Status (1)

Country Link
JP (1) JP2006065457A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1895430A1 (en) 2006-08-18 2008-03-05 Fujitsu Ltd. Arbiter, crossbar, request selection method and information processing device
JP2008129904A (ja) * 2006-11-22 2008-06-05 Nec Electronics Corp バス中継装置及びバス制御システム
JP2012164316A (ja) * 2011-02-08 2012-08-30 Maxeler Technologies Ltd ハードウェアストリームプロセッサデザインを生成するための方法、装置およびソフトウェアコード
US9122831B2 (en) 2012-05-21 2015-09-01 Mitsubishi Electric Corporation LSI designing apparatus, LSI designing method, and program

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0689257A (ja) * 1992-09-08 1994-03-29 Fuji Xerox Co Ltd バスブリッジの調停装置
JPH09130404A (ja) * 1995-08-31 1997-05-16 At & T Corp パケット交換装置
JPH09305415A (ja) * 1996-05-15 1997-11-28 Fuji Xerox Co Ltd 実時間処理管理装置
JP2002304367A (ja) * 2001-04-03 2002-10-18 Sony Corp アービター装置及び方法
JP2003256358A (ja) * 2002-02-28 2003-09-12 Sony Corp アービタ装置及び方法、並びに、リソース共有システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0689257A (ja) * 1992-09-08 1994-03-29 Fuji Xerox Co Ltd バスブリッジの調停装置
JPH09130404A (ja) * 1995-08-31 1997-05-16 At & T Corp パケット交換装置
JPH09305415A (ja) * 1996-05-15 1997-11-28 Fuji Xerox Co Ltd 実時間処理管理装置
JP2002304367A (ja) * 2001-04-03 2002-10-18 Sony Corp アービター装置及び方法
JP2003256358A (ja) * 2002-02-28 2003-09-12 Sony Corp アービタ装置及び方法、並びに、リソース共有システム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1895430A1 (en) 2006-08-18 2008-03-05 Fujitsu Ltd. Arbiter, crossbar, request selection method and information processing device
US7830902B2 (en) 2006-08-18 2010-11-09 Fujitsu Limited Arbiter, crossbar, request selection method and information processing device
JP2008129904A (ja) * 2006-11-22 2008-06-05 Nec Electronics Corp バス中継装置及びバス制御システム
US8041868B2 (en) 2006-11-22 2011-10-18 Renesas Electronics Corporation Bus relay device and bus control system including bus masters, interconnect section, and bridge section
JP2012164316A (ja) * 2011-02-08 2012-08-30 Maxeler Technologies Ltd ハードウェアストリームプロセッサデザインを生成するための方法、装置およびソフトウェアコード
US9122831B2 (en) 2012-05-21 2015-09-01 Mitsubishi Electric Corporation LSI designing apparatus, LSI designing method, and program

Similar Documents

Publication Publication Date Title
KR100306636B1 (ko) Pci-isa인터럽트프로토콜컨버터및선택메카니즘
US8286025B1 (en) Selection of port adapters for clock crossing boundaries
US20050091432A1 (en) Flexible matrix fabric design framework for multiple requestors and targets in system-on-chip designs
US20060206645A1 (en) Performing arbitration in a data processing apparatus
JP7461380B2 (ja) ヘテロジニアスプログラマブルデバイスのためのハードウェアソフトウェア設計時のフロー収束
US10783295B1 (en) Netlist partitioning for designs targeting a data processing engine array
JP2001515248A (ja) 集積回路デバイス、技術依存型設計仕様を生成する方法及び機械可読媒体
JPH05197674A (ja) マルチプロセッサシステム用アービトレーション装置および同方法
CN106681816A (zh) PCIe中断方法和系统
US10853541B1 (en) Data processing engine (DPE) array global mapping
US7426709B1 (en) Auto-generation and placement of arbitration logic in a multi-master multi-slave embedded system
CN113874867A (zh) 用于异构可编程设备的高级综合硬件-软件设计流程
CN113826068A (zh) 异构可编程设备的硬件-软件设计流程
US20040068603A1 (en) Reordering of requests between an initiator and the request queue of a bus controller
JP2007094591A (ja) シミュレーション装置及びシミュレーション方法
JP2006343942A (ja) バスシステム設計方法と装置
US10839121B1 (en) Data processing engine (DPE) array detailed mapping
JP2006065457A (ja) インタフェース回路生成装置およびインタフェース回路
JP2002149591A (ja) プロセッサ・ローカル・バス・システムでのバス最適化の方法および装置
US7987437B2 (en) Structure for piggybacking multiple data tenures on a single data bus grant to achieve higher bus utilization
CN112134814B (zh) 一种板级互联网络结构及通信方法
CN114928657A (zh) 到多协议片上系统中的互连的连通性的合成的系统和方法
JP2006236395A (ja) コンピュータ用バスインタフェース
US7353484B1 (en) Methods and apparatus for variable latency support
US20080052490A1 (en) Computational resource array

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070719

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20091009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100415

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110322

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110518

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111004