JP2017523518A - クロックツリーの実現方法、システムオンチップ及びコンピュータ記憶媒体 - Google Patents

クロックツリーの実現方法、システムオンチップ及びコンピュータ記憶媒体 Download PDF

Info

Publication number
JP2017523518A
JP2017523518A JP2017503136A JP2017503136A JP2017523518A JP 2017523518 A JP2017523518 A JP 2017523518A JP 2017503136 A JP2017503136 A JP 2017503136A JP 2017503136 A JP2017503136 A JP 2017503136A JP 2017523518 A JP2017523518 A JP 2017523518A
Authority
JP
Japan
Prior art keywords
bus
bridge
configuration
frequency
protocol
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
JP2017503136A
Other languages
English (en)
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 JP2017523518A publication Critical patent/JP2017523518A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4213Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with asynchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

本発明はクロックツリーの実現方法、システムオンチップ及びコンピュータ記憶媒体を提供する。前記方法は、コアモジュール(10)と外部接続モジュール(20)を含むシステムオンチップに応用され、前記コアモジュール(10)における相互接続行列(12)は、プロトコルブリッジ(111)と周波数低下ブリッジ(112)を含むバス変換ブリッジ(11)を介して、前記外部接続モジュール(20)に接続し、プロトコルブリッジ(111)を使用してデータバスを第一構成バスに変換する(S100)ことと、周波数低下ブリッジ(112)を使用して第一構成バスを第二構成バスに変換する(S101)こととを含み、前記第一構成バスの周波数は前記プロトコルブリッジの周波数であり、前記第二構成バスの周波数は、前記外部接続モジュールの構成バスの周波数である。【選択図】図6

Description

本発明はシステムオンチップ(SoC:System−on−Chip)設計分野に関し、特にクロックツリーの実現方法、システムオンチップ及びコンピュータ記憶媒体に関する。
現在、システムオンチップ設計は、通信産業発展に関するコア技術となった。システムオンチップ設計は、性能(Performance)、電力消費(Power)、設計周期(Time−to−Market)及び面積(Area)等の要因を同時に考える必要があり、即ちPPTA基準を考える必要がある。システムオンチップ設計において、クロックツリー(Clock Tree)の生成は、上記の要因に重要な影響を与え、特に、システムオンチップの周波数が高く面積が大きい場合、これらの影響は決定的な要因となる可能性がある。
従来の技術において、物理的な容易な実現可能性に基づいてモジュールを分割される。SoCに高度なマイクロコントローラバスアーキテクチャ3.0(AMBA3.0:Advanced Microcontroller Bus Architecture3.0)が採用され、即ち、データバスが高度な拡張可能インターフェイス(AXI:Advanced eXtensible Interface)バスであり、構成バス(configuration bus)が高度な高性能バス(AHB:Advanced High performance Bus)又は高度なペリフェラルバス(APB:Advanced Peripheral Bus)である。
具体的には、システムオンチップにおいて、1つのコアモジュールを独立に設け、当該コアモジュールは、相互接続行列(Matrix)、バス変換ブリッジ(Bridge)及び分周器(即ち、クロック生成ユニット(Top CRM Unit))などを含む。相互接続行列において、データバスにAXIバスが採用され、その周波数が高く、構成バスにAHB/APBバスが採用され、その周波数が低い。さらに、AHB/APBバスは、AXIバスによってAXI−to−AHB又はAXI−to−APB変換ブリッジで実現される。コアモジュールの内部において、複数の類似の変換ブリッジにより複数の構成バスを生成し、システムオンチップの他の外部接続モジュールの構成バスにそれぞれ同期に接続する。また、コアモジュールの複数のデータバスは、他の外部接続モジュールのデータバスにそれぞれ接続する。
図1に示すように、コアモジュールの相互接続行列は、2つのAXI−to−APB変換ブリッジを介して、2つの外部接続モジュールにそれぞれ接続する。さらに、論理設計を簡略化するために、バス変換ブリッジが同期ブリッジであっても良く、即ち、AXIバス周波数により同期に周波数割り当てされてAPBバス周波数を得る。図2に示すように、コアモジュールの相互接続行列は、1つの1−to−2のAXI−to−APB変換ブリッジを介して、外部接続モジュールに接続する。このように、相互接続行列の点から、接続されたすべてのバスは同期であり、即ち、コアモジュールと接続された各知的財産(IP:Intellectual Property)機能モジュールのデータバスと構成バスは同期であり、各IP機能モジュールのデータバスと構成バスの間には同期である。図3に示すように、論理設計の点から、システムオンチップ全体のうちのすべてのバスは同期である。このように、物理的な実現の点から、クロックツリーの全チップ同期が要求される。
しかしながら、システムオンチップの周波数が大きくなり、面積が大きくなる場合、このような設計において、物理的な実現に大きい挑戦があり、クロックツリー全体が要する面積及び電力消費が大きくなるとともに、設計周期も長くなる。図1又は図2に示すシステムオンチップアーキテクチャにおける主なタイミング経路を例として、図4に示すように、インタフェース回路は、同一クロックドメインであっても良いし、クロスクロックドメインであっても良い。一方面において、同一クロックドメインのインタフェース回路(p3)について、各IP機能モジュールの構成バスが必要であり、区別しないと、これらは同じAPBクロックにおいて動作する。別の方面において、クロスクロックドメインのインタフェース回路(p2)について、バックエンド物理設計が依然として同期方式であり、即ち、同一のAXIクロックにおいて収束される。そのため、システムオンチップ全体のシステムバスは、高周波AXIクロックにおいてタイミング収束を行う。ここでいうシステムバスは、データバスと構成バス(configuration bus)を含む。
レジスタ数が多すぎて物理的な位置が分散した場合、クロックツリー遅延(latency)が非常に大きい。従って、チップ内のばらつき(OCV:On Chip Variation)が大きくなり、電力消費が大きくなり、混雑(congestion)も大きくなる。また、ツールでインタフェース回路を自由に置く場合、タイミング収束による問題をさらに引き起こす。
以上問題を解決するために、図5に示すように、同期ブリッジに代わりに非同期ブリッジを採用して、異なるプロトコルバスの間の変換を行うことができる。しかしながら、非同期ブリッジを使用する場合、異なる側面の論理及び物理的な設計問題、例えば複雑な総合(Synthesis)と静的タイミング解析(Static Timing Analysis)による問題を引き起こし、さらに、変換ブリッジの面積と電力消費も増加させる。
本発明の実施例は、データバスのグローバル同期を維持するとともに、構成バスの全体非同期とローカル同期を実現することで、システムオンチップ設計のPPTAを最適化することができるクロックツリーの実現方法、システムオンチップ及びコンピュータ記憶媒体を提供する。
本発明の実施例に係る技術案は、以下のように実現される。
本発明の実施例はクロックツリーの実現方法を提供し、コアモジュールと外部接続モジュールを含むシステムオンチップに応用され、前記コアモジュールの相互接続行列は、プロトコルブリッジと周波数低下ブリッジ(Frequency dropping bridge)を含むバス変換ブリッジを介して、前記外部接続モジュールに接続し、
前記方法は、
プロトコルブリッジを使用して、データバスを第一構成バスに変換することと、
周波数低下ブリッジを使用して、第一構成バスを第二構成バスに変換することとを含み、
前記第一構成バスの周波数は、前記プロトコルブリッジの周波数であり、前記第二構成バスの周波数は、前記外部接続モジュールの構成バスの周波数である。
1つの実施例において、前記プロトコルブリッジは、シングルステージプロトコルブリッジであり、外部接続モジュールがN個である場合、前記プロトコルブリッジは、同一周波数であるN個のシングルステージプロトコルブリッジを含み、
前記プロトコルブリッジを使用して、データバスを第一構成バスに変換することは、
同一周波数であるN個のシングルステージプロトコルブリッジを使用して、N個のデータバスをN個の第一構成バスに変換することを含み、
ここで、Nは2以上の正の整数である。
1つの実施例において、前記プロトコルブリッジは、Nステージプロトコルブリッジであり、外部接続モジュールがN個である場合、前記Nステージプロトコルブリッジは、1つのシングルステージプロトコルブリッジと1つの1−to−Nの変換ブリッジからなり、
プロトコルブリッジを使用して、データバスを第一構成バスに変換することは、
シングルステージプロトコルブリッジを使用して、1つのデータバスを1つの第一構成バスに変換してから、1−to−Nの変換ブリッジを使用して、1つの第一構成バスをN個の第一構成バスに同期に分けることを含む。
1つの実施例において、前記プロトコルブリッジは、同期ブリッジである。
1つの実施例において、前記データバスはAXIバスであり、前記第一構成バスと第二構成バスのいずれもAHBバス又はAPBバスである。
本発明の実施例はまたシステムオンチップを提供し、前記システムオンチップはコアモジュールと外部接続モジュールを含み、前記コアモジュールは、分周器、相互接続行列、バス変換ブリッジを含み、前記相互接続行列は、前記バス変換ブリッジを介して、前記外部接続モジュールに接続し、前記バス変換ブリッジはプロトコルブリッジと周波数低下ブリッジからなり、
ここで、前記プロトコルブリッジは、データバスを第一構成バスに変換するように構成され、前記第一構成バスの周波数は、前記プロトコルブリッジの周波数であり、
前記周波数低下ブリッジは、第一構成バスを第二構成バスに変換するように構成され、前記第二構成バスの周波数は、前記外部接続モジュールの構成バスの周波数である。
1つの実施例において、前記プロトコルブリッジは、シングルステージプロトコルブリッジであり、外部接続モジュールがN個である場合、前記プロトコルブリッジは、同一周波数であるN個のシングルステージプロトコルブリッジを含み、
前記同一周波数であるN個のシングルステージプロトコルブリッジは、N個のデータバスをN個の第一構成バスにそれぞれ変換するように構成される。
1つの実施例において、前記プロトコルブリッジは、Nステージプロトコルブリッジであり、外部接続モジュールがN個である場合、前記Nステージプロトコルブリッジは、1つのシングルステージプロトコルブリッジと1つの1−to−Nの変換ブリッジからなり、
ここで、前記シングルステージプロトコルブリッジは、1つのデータバスを1つの第一構成バスに変換するように構成され、
前記1−to−Nの変換ブリッジは、1つの第一構成バスをN個の第一構成バスに同期に分けるように構成される。
本発明の実施例はまたコンピュータ記憶媒体を提供し、前記コンピュータ記憶媒体にはコンピュータ実行可能な命令が記憶され、前記コンピュータ実行可能な命令は、本発明の実施例に係るクロックツリーの実現方法を実行するように構成される。
本発明の実施例が提供したクロックツリーの実現方法、システムオンチップ及びコンピュータ記憶媒体によれば、プロトコルブリッジを使用して、データバスを第一構成バスに変換し、前記第一構成バスの周波数は前記プロトコルブリッジの周波数であり、周波数低下ブリッジを使用して、第一構成バスを第二構成バスに変換し、前記第二構成バスの周波数は、前記外部接続モジュールの構成バスの周波数である。このように、データバスの全体の同期を維持するとともに、構成バスのグローバル非同期(global asynchronous)とローカル同期(locally synchronous)を実現し、システムオンチップ設計のPPTAを最適化することができ、システムオンチップの設計の柔軟性と競争力を向上させる。
従来技術に係る2つの変換ブリッジを備えるシステムオンチップアーキテクチャの図である。 従来技術に係る1つの1−to−2変換ブリッジを備えるシステムオンチップアーキテクチャの図である。 従来技術に係るクロック全同期のチップクロックの構成図である。 従来技術に係る図1又は図2に示すシステムオンチップアーキテクチャにおける主なタイミング経路図である。 従来技術に係る完全同期データバスおよび非同期構成バスを有するチップクロックの構成図である。 本発明の実施例におけるクロックツリーの実現方法のフローチャートである。 本発明の実施例におけるシステムオンチップの構成図である。 本発明の実施例における前記プロトコルブリッジがシングルステージプロトコルブリッジであり、かつ外部接続モジュールが2つである場合のシステムオンチップアーキテクチャの図である。 本発明の実施例における前記プロトコルブリッジが2ステージプロトコルブリッジであり、かつ外部接続モジュールが2つである場合のシステムオンチップアーキテクチャの図である。 本発明の実施例における図8又は図9に示すシステムオンチップアーキテクチャの主なタイミング経路図一である。 本発明の実施例における図8又は図9に示すシステムオンチップアーキテクチャの主なタイミング経路図二である。
本発明の実施例において、システムオンチップは、コアモジュールと外部接続モジュールを含み、前記コアモジュールの相互接続行列は、バス変換ブリッジを介して外部接続モジュールに連続し、前記バス変換ブリッジはプロトコルブリッジと周波数低下ブリッジ(Frequency dropping bridge)からなり、バス変換ブリッジがバス周波数の変換を行う場合、まず、プロトコルブリッジを使用して、データバスを第一構成バスに変換し、次に、周波数低下ブリッジを使用して、第一構成バスを第二構成バスに変換し、前記第一構成バスの周波数は、前記プロトコルブリッジの周波数であり、前記第二構成バスの周波数は、前記外部接続モジュールの構成バスの周波数である。
ここで、前記プロトコルブリッジは、同期ブリッジである。
なお、システムオンチップに高度なマイクロコントローラバスアーキテクチャ(AMBA:Advanced Microcontroller Bus Architecture)3.0が採用されても良く、即ち、前記データバスが高度な拡張可能インターフェイス(AXI:Advanced eXtensible Interface)バスであり、第一構成バスと第二構成バスのいずれも高度な高性能バス(AHB:Advanced High performance Bus)又は高度なペリフェラルバス(APB:Advanced Peripheral Bus)である。
以下、図面と実施例を参照して、本発明を詳しく説明する。
図6は本発明の実施例におけるクロックツリーの実現方法のフローチャートであり、コアモジュールと外部接続モジュールを含むシステムオンチップに応用され、前記コアモジュールの相互接続行列は、プロトコルブリッジと周波数低下ブリッジを含むバス変換ブリッジを介して、前記外部接続モジュールに接続し、図6に示すように、本発明の実施例におけるクロックツリーの実現方法は、以下のステップを含む。
ステップS100において、プロトコルブリッジを使用して、データバスを第一構成バスに変換し、前記第一構成バスの周波数は前記プロトコルブリッジの周波数である。
ここで、前記プロトコルブリッジは、シングルステージ(single−stage)プロトコルブリッジであっても良いし、Nステージ(N−stage)プロトコルブリッジであっても良く、ここで、Nは2以上の正の整数である。
前記プロトコルブリッジがシングルステージプロトコルブリッジであり、且つ外部接続モジュールがN個である場合、前記プロトコルブリッジは、同一周波数であるN個のシングルステージプロトコルブリッジを含み、図8に示すように、Nが2であり、前記プロトコルブリッジは、同一周波数である2つのシングルステージプロトコルブリッジを含む。前記プロトコルブリッジを使用してデータバスを第一構成バスに変換することは、同一周波数であるN個のシングルステージプロトコルブリッジを使用してN個のデータバスをN個の第一構成バスにそれぞれ変換することを含む。
前記プロトコルブリッジがNステージプロトコルブリッジであり、外部接続モジュールがN個である場合、前記Nステージプロトコルブリッジは、1つのシングルステージプロトコルブリッジと1つの1−to−N変換ブリッジからなり、図9に示すように、Nが2であり、前記Nステージプロトコルブリッジは、1つのシングルステージプロトコルブリッジと1つの1−to−2の変換ブリッジを含む。前記プロトコルブリッジを使用してデータバスを第一構成バスに変換することは、シングルステージプロトコルブリッジを使用して1つのデータバスを1つの第一構成バスに変換してから、1−to−Nの変換ブリッジを使用して1つの第一構成バスをN個の第一構成バスに同期に分けることを含む。
ステップS101において、周波数低下ブリッジを使用して第一構成バスを第二構成バスに変換し、前記第二構成バスの周波数は、前記外部接続モジュールの構成バスの周波数である。
本発明の実施例はまたコンピュータ記憶媒体を提供し、前記コンピュータ記憶媒体にはコンピュータ実行可能な命令が含まれ、前記コンピュータ実行可能な命令は、本発明の実施例におけるクロックツリーの実現方法を実行するように構成される。
図7は本発明の実施例におけるシステムオンチップの構成図であり、図7に示すように、本発明の実施例システムオンチップは、コアモジュール10と外部接続モジュール20を含み、前記コアモジュール10は、分周器13、相互接続行列12、バス変換ブリッジ11を含み、前記相互接続行列12は、前記バス変換ブリッジ11を介して各外部接続モジュール20に接続し、前記バス変換ブリッジ11は、プロトコルブリッジ111と1つ以上の周波数低下ブリッジ112からなる。
前記プロトコルブリッジ111は、データバスを第一構成バスに変換するように構成され、前記第一構成バスの周波数は前記プロトコルブリッジの周波数である。
実際の応用において、前記プロトコルブリッジ111は、1つ以上のシングルステージプロトコルブリッジからなっても良く、シングルステージプロトコルブリッジと周波数低下ブリッジ112とは、1対1で対応し、前記プロトコルブリッジは、1つのシングルステージプロトコルブリッジと1つの1−to−N変換ブリッジからなっても良く、変換ブリッジの出力ポートと周波数低下ブリッジ112とは、1対1で対応する。
前記周波数低下ブリッジ112は、第一構成バスを第二構成バスに変換するように構成され、前記第二構成バスの周波数は前記外部接続モジュールの構成バスの周波数である。
ここで、前記プロトコルブリッジ111がシングルステージプロトコルブリッジであり、外部接続モジュールがN個である場合、前記プロトコルブリッジ111は、同一周波数であるN個のシングルステージプロトコルブリッジを含み、前記同一周波数であるN個のシングルステージプロトコルブリッジは、N個のデータバスをN個の第一構成バスにそれぞれ変換し、ここで、Nは2以上の正の整数である。
例えば、図8に示す本発明の実施例に係るシステムオンチップアーキテクチャにおいて、前記プロトコルブリッジ111がシングルステージプロトコルブリッジであり、外部接続モジュールが2個である。前記データバスがAXIバスであり、前記第一構成バスと第二構成バスのいずれもAPBバスである。図8に示すように、相互接続行列において、同じ周波数である2つのシングルステージプロトコルブリッジを使用して、2つのAXIバスを2つの第一APBバスにそれぞれ変換し、2つの第一APBバスの周波数がいずれもプロトコルブリッジの周波数である。次に、周波数低下ブリッジを使用して、第一APBバスを第二APBバスに変換し、前記第二APBバスの周波数が前記外部接続モジュールの構成バスの周波数である。このように、システムオンチップの点から、データバスのグローバル同期を維持するとともに、構成バスの全体非同期とローカル同期を実現することができ、システムオンチップ設計においてPPTAの最適化を実現する。
ここで、前記プロトコルブリッジ111がNステージプロトコルブリッジであり、外部接続モジュールがN個である場合、前記Nステージプロトコルブリッジは、1つのシングルステージプロトコルブリッジと1つの1−to−N変換ブリッジからなる。
前記シングルステージプロトコルブリッジは、1つのデータバスを1つの第一構成バスに変換するように構成される。
前記1−to−N変換ブリッジは、1つの第一構成バスをN個の第一構成バスに同期に分けるように構成され、ここで、Nは2以上の正の整数である。
例えば、図9に示す本発明の実施例に係るシステムオンチップアーキテクチャにおいて、前記プロトコルブリッジ111が2ステージプロトコルブリッジであり、外部接続モジュールが2つであり、前記データバスがAXIバスであり、前記第一構成バスと第二構成バスのいずれもAPBバスである。図9に示すように、前記プロトコルブリッジ111は、1つのシングルステージプロトコルブリッジと1つの1−to−2の変換ブリッジからなる。相互接続行列において、1つのシングルステージプロトコルブリッジを使用して、1つのAXIバスを1つの第一APBバスに変換してから、1つの1−to−2変換ブリッジを使用して、1つの第一APBバスを2つの第一APBバスに同期に分け、2つの第一APBバスの周波数が共にプロトコルブリッジの周波数である。さらに、周波数低下ブリッジを使用して、第一APBバスを第二APBバスに変換し、前記第二APBバスの周波数は前記外部接続モジュールの構成バスの周波数である。このように、システムオンチップの点から、データバスのグローバル同期を維持するとともに、構成バスの全体非同期とローカル同期を実現することができ、システムオンチップ設計においてPPTAの最適化を実現する。
なお、物理的実現を容易にするために、レジスタ伝送レベル(RTL:Register Transfer Level)のコーディングする場合、コアモジュールの分周器(即ち、クロック生成ユニット)において、識別するために、各構成バスのクロックに特定に命名されたバッファをつけ、例えば、図8と図9に示すバッファTapb、Tapb1及びTapb2である。そして、周波数低下ブリッジにおいて、各構成バス(APBバス)のAPBクロックドメイン側のレジスタ情報を示す必要がある。
以下、図8又は図9に示すシステムオンチップアーキテクチャの物理的な実現プロセスを説明する。
図10は本発明の実施例に係る図8又は図9に示すシステムオンチップアーキテクチャの主なタイミング経路図であり、図10に示すように、システムオンチップ全体のデータバス(AXIバス)は依然としてグローバル同期(global synchronization)であるため、グローバル同期の必要があるレジスタ(FF)が多く、且つ位置が全チップ範囲に分散され、この場合、AXIクロックの遅延Laxiが大きく、コアモジュールにおいて、各周波数低下ブリッジは、外部接続モジュールの構成バス(例えば、APBバス)との同期関係を維持して、複数のローカル同期(Local synchronization)のAPBバスを形成する。
具体的には、構成バス(例えば、APBバス)において、各バッファTapbNに1つの独立的なAPB同期バスをそれぞれ形成する。あるローカル同期バスapbNについて、ローカル同期の必要があるレジスタの数が少なく、且つ位置が局所的に集中され、AXIバスに対して、ローカル同期バスapbNの遅延LapbNが小さく、即ち、Laxi>Lapb1であり、ここで、Nは1から使用したapbクロックドメインの数までである。
以下、ローカル同期クロックドメインapb1を例として、コアモジュールのタイミング経路においてどのようにタイミングを調節するのかについて説明する。
まず、コアモジュールのバス書き操作(bus write operation)を検討し、プロトコルの変換とクロックの周波数低減を含む。図10に示すタイミング経路p1について、前記タイミング経路p1は、AXIからAPBへの1つのクロスクロック経路である。タイミング経路p1について、マルチサイクル経路を使用して関連するタイミング制約を緩和することができるが、バスプロトコルにおいてこの部分は論理的に簡単であり、物理の位置がバックエンド実装時に比較的集中されてそのタイミングを満足しやすく、そのため依然として単一サイクル(AXIクロック周期)経路に従って制約する。
具体的には、タイミング経路p1のタイミング制約条件は以下の通りである。
時間を確立(setup)するタイミングについて、Laxi+Dck−q+Dp1+Dsetup<Paxi+Lapb1が要求される。時間を保持(hold)するタイミングについて、Laxi+Dck−q+Dp1>Lapb1+Dholdが要求される。ここで、Laxiは、AXIクロック遅延(latency of AXI clock)を示し、Lapb1は、APB1クロック遅延(latency of APB1 clock)を示し、Dck−qは、レジスタクロック側から出力側への遅延(delay of pin CK to pin Q of Flip Flop)を示し、Dp1は、経路1の組合せ論理遅延(delay of combination of Path1)を示し、Dsetupは、レジスタ確立時間(setup time of Flip Flop)を示し、Dholdは、レジスタ確立時間(hold time of Flip Flop)を示し、Paxiは、AXIクロック周期(period of AXI clock)を示す。そのため、タイミング違例が発生した場合、図10に示すポイント1の位置において、apb1クロック側に対応するクロックを遅くし、具体的には、ポイント1のレジスタクロック側の遅延を増大させ、即ちバッファT1を増加させることでタイミング調節を行う。1レベルを調整してもタイミングを満たさない場合、図11に示す主なタイミング経路を使用して、書き操作のすべてのタイミング経路が要求を満たすまで、さらに、ポイント3においてこのような調整を行う。
次に、図10に示すローカルクロックドメイン(local clock domain)apb1のタイミング経路p2とp3を検討する。前記タイミング経路p2とp3経路が同一クロックドメインに位置し、且つローカルクロックドメインapb1のクロック周波数がAXIクロック周波数より低いため、即ち、AXIクロック周波数の2分周以下であるため、クロックツリーが均衡である場合、前記タイミング経路p2とp3のタイミングを収束しやすい。
最後に、コアモジュール内のバス読み操作を検討し、図10に示すタイミング経路p4である。タイミング経路p4のタイミング制約条件が以下の通りである。
時間を確立(setup)するタイミングについて、Lapb1+Dck−q+Dp4+Dsetup<Paxi+Laxiが要求される。時間を保持(hold)するタイミングについて、Lapb1+Dck−q+Dp4>Laxi+Dholdが要求される。そのため、タイミング違例が発生する場合、ポイント2の位置において動的調整を行っても良く、具体的には、ポイント2のレジスタクロック側の遅延を減少させ、即ちapb1クロック側のクロックを適当に短縮させ、即ちバッファT2を減少させ、1レベルを調整してもタイミングを満たさない場合、図11に示す主なタイミング経路を使用して、書き操作のすべてのタイミング経路が要求を満たすまで、さらに、ポイント4とポイント5においてこのような調整を行う。
以上のように、本発明の実施例のクロックツリーの実現方法と装置を採用すると、従来の方法と比べて、同期論理設計を保持するとともに、各構成バスがクロックツリーの総合を独立に行うことができる。また、各構成バスがクロックツリーの総合を独立に行うため、比較的少ないレジスタの数および物理的な配置領域の局在化によって、クロックツリー遅延を有効に減少することができ、電力消費と面積を減少させ、混雑を低減させ、構成バスの全体非同期という効果を実現し、バスクロックツリーの面積と電力消費を有効に節約し、バックエンド物理実施の制御性を向上するとともに、設計周期を短縮させることできる。
当業者であれば、本発明の実施例は、方法、システム又はコンピュータプログラム製品を提供することができると理解すべきである。このため、本発明は、ハードウェアの実施例、ソフトウェアの実施例又はソフトウェアとハードウェア結合された実施例形態を採用することができる。さらに、本発明は、コンピュータ用プログラムコードが含まれる1つ以上のコンピュータ用記憶媒体(磁気記憶デバイス、光データ記憶デバイスを含むが、これらに限定されない)で実施されるコンピュータプログラム製品形態を採用することができる。
本発明は、本発明の実施例における方法、デバイス(システム)及びコンピュータプログラム製品のフローチャート及び/又はブロック図により記述されるものである。コンピュータプログラム命令により、フローチャート及び/又はブロック図のうちの各プロセス及び/又はブロック、フローチャート及び/又はブロック図におけるプロセス及び/又はブロックの結合を実現することができると理解すべきである。これらのコンピュータプログラム命令を汎用コンピュータ、専用コンピュータ、埋込まれた処理機又は他のプログラマブルデータ処理デバイスのプロセッサに提供して1つの機器を生成して、コンピュータ又は他のプログラマブルデータ処理デバイスのプロセッサで命令を実行して、フローチャートにおける1つ以上のプロセス及び/又はブロック図における1つ以上のブロックで指定される機能装置を生成する。
これらのコンピュータプログラム命令は、コンピュータ又は他のプログラマブルデータ処理デバイスを特定形態で動作させるコンピュータ読取可能メモリに記憶されて、当該コンピュータ読取可能メモリに記憶された命令は、命令装置を含む製品を生成する。当該命令装置は、フローチャートにおける1つ以上のプロセス及び/又はブロック図における1つ以上のブロックで指定される機能を実現する。
これらのコンピュータプログラム命令は、コンピュータ又は他のプログラマブルデータ処理デバイスにロードされて、コンピュータ又は他のプログラマブルデバイスは、一連の操作ステップを実行してコンピュータでの処理を実現し、コンピュータは他のプログラマブルデバイスにより実行される命令は、フローチャートにおける1つ以上のプロセス及び/又はブロック図における1つ以上のブロックで指定される機能のステップを実現する。
以上は、本発明の最適的な実施例に過ぎなく、本発明を制限せず、本分野の当業者に対して、本発明が各種類の変更と変化がある。本発明の主旨精神と原則以内に、いかなる改修、同等入れ替わり、改良等が、本発明の保護範囲以内に含まれるべきである。
本発明の実施例は、プロトコルブリッジを使用して、データバスを第一構成バスに変換し、前記第一構成バスの周波数は前記プロトコルブリッジの周波数であり、周波数低下ブリッジを使用して、第一構成バスを第二構成バスに変換し、前記第二構成バスの周波数は、前記外部接続モジュールの構成バスの周波数である。このように、データバスのグローバル同期を維持するとともに、構成バスのグローバル非同期とローカル同期を実現し、システムオンチップ設計のPPTAを最適化することができ、システムオンチップの設計の柔軟性と競争力を向上させる。

Claims (11)

  1. クロックツリーの実現方法であって、コアモジュールと外部接続モジュールを含むシステムオンチップに応用され、前記コアモジュールにおける相互接続行列は、プロトコルブリッジと周波数低下ブリッジを含むバス変換ブリッジを介して、前記外部接続モジュールに接続し、
    前記方法は、
    プロトコルブリッジを使用して、データバスを第一構成バスに変換することと、
    周波数低下ブリッジを使用して、第一構成バスを第二構成バスに変換することとを含み、
    前記第一構成バスの周波数は、前記プロトコルブリッジの周波数であり、前記第二構成バスの周波数は、前記外部接続モジュールの構成バスの周波数である、方法。
  2. 前記プロトコルブリッジは、シングルステージプロトコルブリッジであり、外部接続モジュールがN個である場合、前記プロトコルブリッジは、同一周波数であるN個のシングルステージプロトコルブリッジを含み、
    前記プロトコルブリッジを使用してデータバスを第一構成バスに変換することは、
    同一周波数であるN個のシングルステージプロトコルブリッジを使用して、N個のデータバスをN個の第一構成バスにそれぞれ変換することを含み、
    ここで、Nは2以上の正の整数である
    請求項1に記載の方法。
  3. 前記プロトコルブリッジは、Nステージプロトコルブリッジであり、外部接続モジュールがN個である場合、前記Nステージプロトコルブリッジは、1つのシングルステージプロトコルブリッジと1つの1−to−Nの変換ブリッジからなり、
    前記プロトコルブリッジを使用して、データバスを第一構成バスに変換することは、
    シングルステージプロトコルブリッジを使用して、1つのデータバスを1つの第一構成バスに変換してから、1−to−Nの変換ブリッジを使用して、1つの第一構成バスをN個の第一構成バスに同期に分けることを含み、
    ここで、Nは2以上の正の整数である
    請求項1に記載の方法。
  4. 前記プロトコルブリッジは、同期ブリッジである
    請求項1〜3のいずれか1項に記載の方法。
  5. 前記データバスは、高度な拡張可能インターフェイス(AXI:Advanced eXtensible Interface)バスであり、
    前記第一構成バスと第二構成バスのいずれも高度な高性能バス(AHB:Advanced High−performance Bus)又は高度なペリフェラルバス(APB:Advanced Peripheral Bus)である
    請求項1〜3のいずれか1項に記載の方法。
  6. システムオンチップであって、前記システムオンチップはコアモジュールと外部接続モジュールを含み、前記コアモジュールは分周器、相互接続行列、バス変換ブリッジを含み、前記相互接続行列は、前記バス変換ブリッジを介して、前記外部接続モジュールに接続し、前記バス変換ブリッジは、プロトコルブリッジと周波数低下ブリッジからなり、
    前記プロトコルブリッジは、データバスを第一構成バスに変換するように構成され、前記第一構成バスの周波数は、前記プロトコルブリッジの周波数であり、
    前記周波数低下ブリッジは、第一構成バスを第二構成バスに変換するように構成され、前記第二構成バスの周波数は、前記外部接続モジュールの構成バスの周波数である、システムオンチップ。
  7. 前記プロトコルブリッジは、シングルステージプロトコルブリッジであり、外部接続モジュールがN個である場合、前記プロトコルブリッジは、同一周波数であるN個のシングルステージプロトコルブリッジを含み、
    前記同一周波数であるN個のシングルステージプロトコルブリッジは、N個のデータバスをN個の第一構成バスにそれぞれ変換するように構成され、
    ここで、Nは2以上の正の整数である
    請求項6に記載のシステムオンチップ。
  8. 前記プロトコルブリッジは、Nステージプロトコルブリッジであり、外部接続モジュールがN個である場合、前記Nステージプロトコルブリッジは、1つのシングルステージプロトコルブリッジと1つの1−to−Nの変換ブリッジからなり、
    前記シングルステージプロトコルブリッジは、1つのデータバスを1つの第一構成バスに変換するように構成され、
    前記1−to−Nの変換ブリッジは、1つの第一構成バスをN個の第一構成バスに同期に分けるように構成され、
    ここで、Nは2以上の正の整数である
    請求項6に記載のシステムオンチップ。
  9. 前記プロトコルブリッジは、同期ブリッジである
    請求項6〜8のいずれか1項に記載のシステムオンチップ。
  10. 前記データバスはAXIバスであり、
    前記第一構成バスと第二構成バスのいずれもAHB又はAPBである
    請求項6〜8のいずれか1項に記載のシステムオンチップ。
  11. コンピュータ記憶媒体であって、
    請求項1〜5のいずれか1項に記載のクロックツリーの実現方法を実行するためのコンピュータ実行可能な命令が記憶されている、コンピュータ記憶媒体。
JP2017503136A 2014-07-23 2014-12-25 クロックツリーの実現方法、システムオンチップ及びコンピュータ記憶媒体 Pending JP2017523518A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410353167.6 2014-07-23
CN201410353167 2014-07-23
PCT/CN2014/095001 WO2015117524A1 (zh) 2014-07-23 2014-12-25 一种时钟树实现方法、系统芯片及计算机存储介质

Publications (1)

Publication Number Publication Date
JP2017523518A true JP2017523518A (ja) 2017-08-17

Family

ID=53777325

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017503136A Pending JP2017523518A (ja) 2014-07-23 2014-12-25 クロックツリーの実現方法、システムオンチップ及びコンピュータ記憶媒体

Country Status (5)

Country Link
US (1) US20170212861A1 (ja)
EP (1) EP3173895B1 (ja)
JP (1) JP2017523518A (ja)
KR (1) KR20170030620A (ja)
WO (1) WO2015117524A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108153699A (zh) * 2017-12-21 2018-06-12 郑州云海信息技术有限公司 一种ahb转axi协议转换控制器设计方法
US10860761B1 (en) * 2018-06-11 2020-12-08 Ansys, Inc. Systems and methods for enhanced clock tree power estimation at register transfer level

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10161973A (ja) * 1996-11-29 1998-06-19 Hitachi Ltd バス制御装置およびバスユニット
JP2001051748A (ja) * 1999-08-12 2001-02-23 Hitachi Ltd 情報処理装置
JP2002318782A (ja) * 2001-04-20 2002-10-31 Nec Corp バスシステム
JP2005078146A (ja) * 2003-08-28 2005-03-24 Matsushita Electric Ind Co Ltd バスブリッジ回路
US20060080492A1 (en) * 2004-06-02 2006-04-13 Samsung Electronics Co., Ltd. Method of and apparatus for interfacing buses operating at different speeds

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7430624B2 (en) * 2005-10-04 2008-09-30 International Business Machines Corporation High speed on-chip serial link apparatus and method
US7496779B2 (en) * 2006-06-13 2009-02-24 Via Technologies, Inc. Dynamically synchronizing a processor clock with the leading edge of a bus clock
CN101183347A (zh) * 2006-11-14 2008-05-21 智多微电子(上海)有限公司 一种自适应速率匹配总线的桥接电路
CN102207920B (zh) * 2010-03-30 2013-12-04 比亚迪股份有限公司 一种bvci总线到ahb总线的转换桥

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10161973A (ja) * 1996-11-29 1998-06-19 Hitachi Ltd バス制御装置およびバスユニット
JP2001051748A (ja) * 1999-08-12 2001-02-23 Hitachi Ltd 情報処理装置
JP2002318782A (ja) * 2001-04-20 2002-10-31 Nec Corp バスシステム
JP2005078146A (ja) * 2003-08-28 2005-03-24 Matsushita Electric Ind Co Ltd バスブリッジ回路
US20060080492A1 (en) * 2004-06-02 2006-04-13 Samsung Electronics Co., Ltd. Method of and apparatus for interfacing buses operating at different speeds

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NAM-JOON KIM, HYUK-JAE LEE: "Design of AMBA Wrappers for Multiple-Clock Operations", COMMUNICATIONS, CIRCUITS AND SYSTEMS, 2004. ICCCAS 2004. 2004 INTERNATIONAL CONFERENCE ON CHENGDU, C, JPN6018011750, 2004, US, pages 1438 - 1442 *
五月女哲夫: "AMBA3.0に追加された高性能バス用のAXI仕様−チャネル方式を導入し従来のAMBAバスから大きく変更", TECH VILLAGE, JPN6018011748, 7 August 2007 (2007-08-07), pages ●○●Column●○● AHB仕様とA *

Also Published As

Publication number Publication date
WO2015117524A1 (zh) 2015-08-13
KR20170030620A (ko) 2017-03-17
EP3173895A1 (en) 2017-05-31
US20170212861A1 (en) 2017-07-27
EP3173895A4 (en) 2017-08-30
EP3173895B1 (en) 2018-11-28

Similar Documents

Publication Publication Date Title
US10027433B2 (en) Multiple clock domains in NoC
CN107408032B (zh) 互连中的伪随机比特序列
Yakovlev et al. Advances in asynchronous logic: From principles to GALS & NoC, recent industry applications, and commercial CAD tools
US9429981B2 (en) CPU current ripple and OCV effect mitigation
US20130021072A1 (en) Dynamic Frequency Control Using Coarse Clock Gating
PD et al. A scalable network-on-chip microprocessor with 2.5 D integrated memory and accelerator
EP3283971B1 (en) Control circuits for generating output enable signals, and related systems and methods
CN104915303A (zh) 基于PXIe总线的高速数字I/O系统
CN118227527A (zh) Sdram控制器子系统的源同步分区
CN104050140B (zh) 用于混合通道停转或无锁总线架构的方法、设备、系统
JP2017523518A (ja) クロックツリーの実現方法、システムオンチップ及びコンピュータ記憶媒体
Chen et al. A 3-D CPU-FPGA-DRAM hybrid architecture for low-power computation
CN117811539A (zh) Fpga时钟无毛刺切换电路
CN104008076A (zh) 一种支持dvfs的总线数据信号传输的方法及装置
JP6256067B2 (ja) 半導体装置
US10481203B2 (en) Granular dynamic test systems and methods
TWI794949B (zh) 用於組態及狀態暫存器之獨立時脈之單晶片系統及方法
Kumar B et al. A novel utilization-aware and power-delay-aware intelligent DMA controller for video streaming used in AI applications
KR20140070041A (ko) 반도체 집적회로와 그 동작 방법
Villiger Multi-point interconnects for globally-asynchronous locally-synchronous systems
Kamal et al. A Multi-Synchronous Bi-Directional NoC (MBiNoC) architecture with dynamic self-reconfigurable channel for the GALS infrastructure
Rahmani et al. An efficient VFI-based NoC architecture using Johnson-encoded Reconfigurable FIFOs
US20130251007A1 (en) Phase Alignment Between Phase-Skewed Clock Domains
Abdelhadi et al. Two-phase asynchronous to synchronous interfaces for an open-source bundled-data flow
Herlev et al. Open core protocol (OCP) clock domain crossing interfaces

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180403

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20181030