JP2003534596A - プログラマブルシングルチップデバイス及び関連する開発環境 - Google Patents
プログラマブルシングルチップデバイス及び関連する開発環境Info
- Publication number
- JP2003534596A JP2003534596A JP2001587206A JP2001587206A JP2003534596A JP 2003534596 A JP2003534596 A JP 2003534596A JP 2001587206 A JP2001587206 A JP 2001587206A JP 2001587206 A JP2001587206 A JP 2001587206A JP 2003534596 A JP2003534596 A JP 2003534596A
- Authority
- JP
- Japan
- Prior art keywords
- development environment
- dsp
- chip device
- risc
- common
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Logic Circuits (AREA)
- Microcomputers (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Stored Programmes (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
(57)【要約】 (修正有)
プログラマブルゲートアレイ(PGA)セクションと、DSPコアと、RISCコアとを備えているプログラマブルシングルチップデバイス。このデバイスは、処理要件がフロントエンド、高反復性、低数値敏捷性、及び「広域」ローディングと、ミドルエンド、中程度の反復性、及び高数値精度ローディングと、バックエンド、低反復性、及び高条件ローディングとに分割さているような高帯域幅アルゴリズムの少量乃至中量規模のインプリメンテーションを、プロトタイプで製造し、生産配備するのに理想的であり、カスタムASIC、ジョイントFPGA/DSP/RISC(又はFPGAへの直接コンパイル)ソリューションに内在する相応の問題を伴わない。
Description
【0001】
本発明は、プログラマブルシングルチップデバイスに関連し、特に、例えば、
第三世代携帯電話、ワイヤレス情報デバイス、デジタルテレビ、やブルートース
(Bluetooth)等のワイヤレスLANに関連するような高帯域幅信号処
理の可能なプログラマブルシングルチップデバイスに関する。シングルチップデ
バイスとは、単一の半導体基板上で実施されるデバイスである。加えて、本発明
は、こうしたデバイスの開発環境に関する。
第三世代携帯電話、ワイヤレス情報デバイス、デジタルテレビ、やブルートース
(Bluetooth)等のワイヤレスLANに関連するような高帯域幅信号処
理の可能なプログラマブルシングルチップデバイスに関する。シングルチップデ
バイスとは、単一の半導体基板上で実施されるデバイスである。加えて、本発明
は、こうしたデバイスの開発環境に関する。
【0002】
従来の線形デジタル信号プロセッサ(DSP)は、少数の高精度データパスを
有する。このタイプのプロセッサは、低帯域幅信号の処理(音声、低容量デジタ
ルラジオ等)では優れた機能を示すが、第三世代携帯電話、デジタルテレビ、又
はワイヤレスローカルエリアネットワーク等の高帯域幅信号を取り上げて考察し
てみると、上手く機能していない。こうしたシステムでは、変調及び復調と、チ
ャネルデコーディングと、ある程度の範囲でのソースコーディング及びデコーデ
ィング(複雑なビデオ圧縮が使用される場合等)とのタスクグループによって、
非常に短い線形周期のローディングが課される。こうしたグループは、本質的に
並列又は「広域」アルゴリズム(FFT、IFFT、Viterbi、フィルト
レーションによるデジタル選別ダウンコンバート、デスプレッディング等)の採
用を必要とし、こうした「広域」アルゴリズムは、従来の線形DSPが提供する
「狭域」並列上では十分にマッピングされない。最終的に、ソフトウェアインプ
リメンテーションでの広く知られた利点が得られるのであれば、DSP基板上で
の非常に短い周期のローディングを課す必要があり、実際には、最新世代のアル
ゴリズムでは、最速のDSPでも速度が十分ではない。アルゴリズムの複雑性が
ムーアの法則のそれよりも速い速度で増大しつつあることは、例えば、ワイヤレ
ス通信分野では広く認められている事実である。
有する。このタイプのプロセッサは、低帯域幅信号の処理(音声、低容量デジタ
ルラジオ等)では優れた機能を示すが、第三世代携帯電話、デジタルテレビ、又
はワイヤレスローカルエリアネットワーク等の高帯域幅信号を取り上げて考察し
てみると、上手く機能していない。こうしたシステムでは、変調及び復調と、チ
ャネルデコーディングと、ある程度の範囲でのソースコーディング及びデコーデ
ィング(複雑なビデオ圧縮が使用される場合等)とのタスクグループによって、
非常に短い線形周期のローディングが課される。こうしたグループは、本質的に
並列又は「広域」アルゴリズム(FFT、IFFT、Viterbi、フィルト
レーションによるデジタル選別ダウンコンバート、デスプレッディング等)の採
用を必要とし、こうした「広域」アルゴリズムは、従来の線形DSPが提供する
「狭域」並列上では十分にマッピングされない。最終的に、ソフトウェアインプ
リメンテーションでの広く知られた利点が得られるのであれば、DSP基板上で
の非常に短い周期のローディングを課す必要があり、実際には、最新世代のアル
ゴリズムでは、最速のDSPでも速度が十分ではない。アルゴリズムの複雑性が
ムーアの法則のそれよりも速い速度で増大しつつあることは、例えば、ワイヤレ
ス通信分野では広く認められている事実である。
【0003】
DSPに代わるものでは、何らかの形態のカスタムゲートインプリメンテーシ
ョンを使用し、「広域」アルゴリズムの少なくともサブセットを実施し、多数の
データパスを並列で実行する機会を与え、これにより、実際のデバイスが全体的
にかなり低い速度でクロックされるのを可能にする。しかしながら、浮動小数点
データパスの実施は、ゲート及びHDL(ハードウェア記述言語)の複雑性の点
で、高価になる傾向がある。メモリセルの合成も、非効率的である。更に、条件
付きコード(例えば、IF x DO y ELSE DO zの形態)に対処
する必要のある制御論理の問題も存在する。固定小数点、高反復性、低条件性か
ら、浮動小数点、低反復性、高条件性までのアルゴリズムのスペクトラムを詳し
く考察すると、多目的処理エンジンを実施し、これに命令とデータを供給するこ
とは、並列データパスを「ハードコーディング」するよりも効率的になる。 したがって、ほとんどの通信及び放送システムにおいては、通常、従来のDS
Pが(カスタムゲートセクションと共に)保有されており、線形依存性が強く、
その故に、並列で実行できないような精密な算術機能を実現している。リソース
の管理や高速入出力を支援するために、DSPセクションは、DSP BIOS
、VxWorks、OSE等、何らかの形態のリアルタイムオペレーティングシ
ステムを実行する場合が多い。
ョンを使用し、「広域」アルゴリズムの少なくともサブセットを実施し、多数の
データパスを並列で実行する機会を与え、これにより、実際のデバイスが全体的
にかなり低い速度でクロックされるのを可能にする。しかしながら、浮動小数点
データパスの実施は、ゲート及びHDL(ハードウェア記述言語)の複雑性の点
で、高価になる傾向がある。メモリセルの合成も、非効率的である。更に、条件
付きコード(例えば、IF x DO y ELSE DO zの形態)に対処
する必要のある制御論理の問題も存在する。固定小数点、高反復性、低条件性か
ら、浮動小数点、低反復性、高条件性までのアルゴリズムのスペクトラムを詳し
く考察すると、多目的処理エンジンを実施し、これに命令とデータを供給するこ
とは、並列データパスを「ハードコーディング」するよりも効率的になる。 したがって、ほとんどの通信及び放送システムにおいては、通常、従来のDS
Pが(カスタムゲートセクションと共に)保有されており、線形依存性が強く、
その故に、並列で実行できないような精密な算術機能を実現している。リソース
の管理や高速入出力を支援するために、DSPセクションは、DSP BIOS
、VxWorks、OSE等、何らかの形態のリアルタイムオペレーティングシ
ステムを実行する場合が多い。
【0004】
最後に、尺度のもう一つの極点において、非常に長い周期のタスク(ヒューマ
ンマシンインタフェース(HMI)コントロール又はプロトコル状態マシントラ
バース)が存在し、これらのタスクは、DSPで処理することが可能だが、通常
は、セパレートマイクロコントローラ(常にではないが、一般に、こうしたマイ
クロコントローラはRISCベースであるので、以降、これをRISCコアコン
ポーネントと呼ぶ)による方が上手く実行される。このマイクロコントローラに
割り当てられるタスクは、条件性に富む傾向があり、本来的に並列性が低い(つ
まり、こうしたタスクは、分割できない多数の実行スレッドを含む場合がある)
。更に、これらのタスクは、一般に、(高条件性のため)予測できないロードを
有する。HMIやペリフェラルアクセスを支援するために、RISCコントロー
ラは、何らかの形態の組み込みオペレーティングシステム(EmOS)を実行す
る場合が多い(例えば、Windows(登録商標) CE、EPOC−32、
PalmOS等)。上述の分類が、図1に示されている。 最終的には、デジタルテレビ受信機、ワイヤレスLANモデム、その他といっ
たような上述のタイプで要求の多いアプリケーション分野は、カスタムHDLセ
クション、DSPセクション、及びRISCマイクロコントローラセクションに
関するシステム要件を有する傾向にある。これらは、一般には、何らかの形態の
共用バスを介して共通に接続される。もう一つの重要なコンポーネントは、メモ
リであり、DSPと、RISCと、FPGAのゲート設定のためのコードを含ん
でおり(但し、ゲート設定は内部メモリ上)、システム用の作業ストアを提供す
る(データ入出力が集中した際の時間分散処理を可能にする入出力バッファリン
グを含む)。
ンマシンインタフェース(HMI)コントロール又はプロトコル状態マシントラ
バース)が存在し、これらのタスクは、DSPで処理することが可能だが、通常
は、セパレートマイクロコントローラ(常にではないが、一般に、こうしたマイ
クロコントローラはRISCベースであるので、以降、これをRISCコアコン
ポーネントと呼ぶ)による方が上手く実行される。このマイクロコントローラに
割り当てられるタスクは、条件性に富む傾向があり、本来的に並列性が低い(つ
まり、こうしたタスクは、分割できない多数の実行スレッドを含む場合がある)
。更に、これらのタスクは、一般に、(高条件性のため)予測できないロードを
有する。HMIやペリフェラルアクセスを支援するために、RISCコントロー
ラは、何らかの形態の組み込みオペレーティングシステム(EmOS)を実行す
る場合が多い(例えば、Windows(登録商標) CE、EPOC−32、
PalmOS等)。上述の分類が、図1に示されている。 最終的には、デジタルテレビ受信機、ワイヤレスLANモデム、その他といっ
たような上述のタイプで要求の多いアプリケーション分野は、カスタムHDLセ
クション、DSPセクション、及びRISCマイクロコントローラセクションに
関するシステム要件を有する傾向にある。これらは、一般には、何らかの形態の
共用バスを介して共通に接続される。もう一つの重要なコンポーネントは、メモ
リであり、DSPと、RISCと、FPGAのゲート設定のためのコードを含ん
でおり(但し、ゲート設定は内部メモリ上)、システム用の作業ストアを提供す
る(データ入出力が集中した際の時間分散処理を可能にする入出力バッファリン
グを含む)。
【0005】
非常に大きな生産量(通常、1,000,000ユニット超)の場合、こうし
たアーキテクチャは、従来、ASIC(特定用途向け集積回路)にマッピングさ
れ、そこには、HDL専用モジュールがオンチップアクセラレータとして組み込
まれ、通常は内部バスを介してアクセスされ、DSPコアとRISCコアが、適
切なオンチップメモリや入出力モジュールと共に組み込まれる。 しかしながら、カスタムASICが費用効率上優れている際の生産量とりも少
ない生産量では(ASICが最終目標工程である場合のプロトタイプ工程を含む
)、妥当なタイムフレーム内で「広域」アルゴリズムを実施する唯一の方法は、
フィールドプログラマブルゲートアレイ即ちFPGAを、(1又は複数の)ボー
ドレベルバスで共通接続されている別個のDSPコンポーネントと別個のRIS
Cコンポーネントとに連結して使用することである。しかしながら、これは、後
で説明するように、中程度の量までであっても、費用効率的に縮小拡大自在では
なく、全体的に複雑なシステム設計に帰結する。通常の(以前に説明したような
)高帯域幅用途向けの小量ボードの高レベル構成の表示は、図2に示されている
。
たアーキテクチャは、従来、ASIC(特定用途向け集積回路)にマッピングさ
れ、そこには、HDL専用モジュールがオンチップアクセラレータとして組み込
まれ、通常は内部バスを介してアクセスされ、DSPコアとRISCコアが、適
切なオンチップメモリや入出力モジュールと共に組み込まれる。 しかしながら、カスタムASICが費用効率上優れている際の生産量とりも少
ない生産量では(ASICが最終目標工程である場合のプロトタイプ工程を含む
)、妥当なタイムフレーム内で「広域」アルゴリズムを実施する唯一の方法は、
フィールドプログラマブルゲートアレイ即ちFPGAを、(1又は複数の)ボー
ドレベルバスで共通接続されている別個のDSPコンポーネントと別個のRIS
Cコンポーネントとに連結して使用することである。しかしながら、これは、後
で説明するように、中程度の量までであっても、費用効率的に縮小拡大自在では
なく、全体的に複雑なシステム設計に帰結する。通常の(以前に説明したような
)高帯域幅用途向けの小量ボードの高レベル構成の表示は、図2に示されている
。
【0006】
したがって、高帯域幅製品の少量乃至中量生産では、現在の開発パラダイムは
、図2に示すシステムカードのようになり、次の通り、多数の欠点を有する。 ・(最悪の場合)三つの独立した別個の計算要素(FPGA、DSP、及びR
ISC)を、外部メモリと併せて含むので、システムの全体的なコストが高い。 ・共用バスが各計算要素の外部にあるので、全体的な速度が制約され、大きな
EMC問題に遭遇する潜在的可能性もある。 ・これらのプロセス要素間でのデータの授受が、それぞれにおいて明確に管理
されなければならないので、開発サイクルの時間が長くなる(例えば、FPGA
が有する何らかのベンダ供給通信HDLマクロ、DSP用に選択したRTOSが
供給する通信機能、RISC用に選択したEmOSが供給する通信機能などを使
用することで)。
、図2に示すシステムカードのようになり、次の通り、多数の欠点を有する。 ・(最悪の場合)三つの独立した別個の計算要素(FPGA、DSP、及びR
ISC)を、外部メモリと併せて含むので、システムの全体的なコストが高い。 ・共用バスが各計算要素の外部にあるので、全体的な速度が制約され、大きな
EMC問題に遭遇する潜在的可能性もある。 ・これらのプロセス要素間でのデータの授受が、それぞれにおいて明確に管理
されなければならないので、開発サイクルの時間が長くなる(例えば、FPGA
が有する何らかのベンダ供給通信HDLマクロ、DSP用に選択したRTOSが
供給する通信機能、RISC用に選択したEmOSが供給する通信機能などを使
用することで)。
【0007】
・様々なベンダの開発環境をそれぞれに関して使用する必要があり、こうした
環境は、通常、直接的な方法では相互運用できないということから、様々な処理
要素間でのアルゴリズムの移動性と、システムの「シミュレート可能性」が、同
様に減少する。 ・別個のデバイスの数から、システムボードの消費電力が大きくなろう。 ・各デバイスが共通の入力電圧を有する可能性は低いので、システムボードは
、複雑な電源安定化要件を有するであろう。 ・システムボードが相当の大きさになり、このことは、特定の空間制約のある
用途での有用性を制限するであろう。 ・システムボードを現場で修正するのが容易ではない−これは、例えば、FP
GAのためにダウンロードしたアルゴリズムが、デバイスの内部不揮発性RAM
へのアップロードを可能にするのに、(通常は外部の)プログラミングツールを
必要とするからである。 ・設計が成功したとしても、ASICへの移行が容易ではなく、これは、多数
の異なるベンダからの設計ツールが、論理的な相互接続を関連付けるのに利用さ
れる多数の異なる「バーチャルマシン」と共に使用されるからである。
環境は、通常、直接的な方法では相互運用できないということから、様々な処理
要素間でのアルゴリズムの移動性と、システムの「シミュレート可能性」が、同
様に減少する。 ・別個のデバイスの数から、システムボードの消費電力が大きくなろう。 ・各デバイスが共通の入力電圧を有する可能性は低いので、システムボードは
、複雑な電源安定化要件を有するであろう。 ・システムボードが相当の大きさになり、このことは、特定の空間制約のある
用途での有用性を制限するであろう。 ・システムボードを現場で修正するのが容易ではない−これは、例えば、FP
GAのためにダウンロードしたアルゴリズムが、デバイスの内部不揮発性RAM
へのアップロードを可能にするのに、(通常は外部の)プログラミングツールを
必要とするからである。 ・設計が成功したとしても、ASICへの移行が容易ではなく、これは、多数
の異なるベンダからの設計ツールが、論理的な相互接続を関連付けるのに利用さ
れる多数の異なる「バーチャルマシン」と共に使用されるからである。
【0008】
【発明の概要】
本発明によれば、プログラマブルゲートアレイ(PGA)セクションと、DS
Pコアと、RISCコアとを備えるプログラマブルシングルチップデバイスが提
供される。 本発明は、処理要件が(a)高反復性、低数値敏捷性、「広域」ローディング
と、(b)中程度の反復性、高数値精度ローディングと、(c)低反復性、高条
件ローディングに分割されているような高帯域幅アルゴリズムの少量乃至中量規
模のインプリメンテーションを、プロトタイプで製造し、作業配備するのに理想
的であり、カスタムASIC、ジョイントFPGA/DSP/RISC(又はF
PGAへの直接コンパイル)ソリューションに内在する相応の問題を伴わない。 現在まで、プログラマブルシングルチップデバイス上でPGAセクションと、
DSPコアと、RISCコアとを組み合わせる可能性は、認識されていない。こ
のことの主要な理由は、PGA設計と、DSPコア設計と、RISCコア設計と
が、それぞれ、全く異なる企業によって尊ばれる別個の技術的な規範を有するこ
とである。更に、PGA、DSP、及びRISC設計者は、通常、適用用可能な
通信応用技術の知識を有しておらず、しかも、この知識がなければ、本発明を思
い付く動機及びスキルが完全に欠如していることになる。本発明の概念に対する
別の実際的な障壁は、この発明の実施可の可能性が、有効で統合的な開発環境及
びランタイムバーチャルマシンの存在にかかっているということである(下記参
照)。しかし現在まで、これらは、利用できていなかった。したがって、実践上
の現実問題として、三種類の計算エンティティのすべてを、シングルチップデバ
イスに統合することは、どの企業の開発路線上にも存在していなかった。
Pコアと、RISCコアとを備えるプログラマブルシングルチップデバイスが提
供される。 本発明は、処理要件が(a)高反復性、低数値敏捷性、「広域」ローディング
と、(b)中程度の反復性、高数値精度ローディングと、(c)低反復性、高条
件ローディングに分割されているような高帯域幅アルゴリズムの少量乃至中量規
模のインプリメンテーションを、プロトタイプで製造し、作業配備するのに理想
的であり、カスタムASIC、ジョイントFPGA/DSP/RISC(又はF
PGAへの直接コンパイル)ソリューションに内在する相応の問題を伴わない。 現在まで、プログラマブルシングルチップデバイス上でPGAセクションと、
DSPコアと、RISCコアとを組み合わせる可能性は、認識されていない。こ
のことの主要な理由は、PGA設計と、DSPコア設計と、RISCコア設計と
が、それぞれ、全く異なる企業によって尊ばれる別個の技術的な規範を有するこ
とである。更に、PGA、DSP、及びRISC設計者は、通常、適用用可能な
通信応用技術の知識を有しておらず、しかも、この知識がなければ、本発明を思
い付く動機及びスキルが完全に欠如していることになる。本発明の概念に対する
別の実際的な障壁は、この発明の実施可の可能性が、有効で統合的な開発環境及
びランタイムバーチャルマシンの存在にかかっているということである(下記参
照)。しかし現在まで、これらは、利用できていなかった。したがって、実践上
の現実問題として、三種類の計算エンティティのすべてを、シングルチップデバ
イスに統合することは、どの企業の開発路線上にも存在していなかった。
【0009】
好ましくは、このシングルチップデバイスは、更に、ゲート設定とDSP及び
RISCソフトウェアのためのFLASHストアと、DSP及びRISCデバイ
スが稼働している時の作業ストア及びプログラムストア用のRAMと、デバイス
が外界とのデータのやり取り(例えば、ADCから又はDACへ等)を行うこと
が可能な高速DMA制御入出力ポート(パラレル及びシリアル)とを備えている
。 好適な一実施形態において、様々な計算要素は、共通のデータ/アドレスバス
のほか、多数の専用バスを使用することで、相互にデータを授受することができ
る。 三種類の計算要素全体で使用するものとして、共通バーチャルマシン(VM)
プラットフォームが含まれていて、これは、データ転送用の共通APIと、並列
信号送信と、ペリフェラル及びバス競合制御と、その他とを提供する。 別の態様において、このシングルチップデバイスの開発環境が提供され、この
環境には、HDLのためのコンパイラ(PGAセクション用)と、DSP及びR
ISCコア両方のためのアセンブラと、同じくDSP及びRISCコアのための
適切な高レベルコンパイラ(C++、C等)とが備わっている。この開発環境は
、「高レベル」ゲート記述開発言語(Handel−C等)の使用をサポートす
ることもできる。
RISCソフトウェアのためのFLASHストアと、DSP及びRISCデバイ
スが稼働している時の作業ストア及びプログラムストア用のRAMと、デバイス
が外界とのデータのやり取り(例えば、ADCから又はDACへ等)を行うこと
が可能な高速DMA制御入出力ポート(パラレル及びシリアル)とを備えている
。 好適な一実施形態において、様々な計算要素は、共通のデータ/アドレスバス
のほか、多数の専用バスを使用することで、相互にデータを授受することができ
る。 三種類の計算要素全体で使用するものとして、共通バーチャルマシン(VM)
プラットフォームが含まれていて、これは、データ転送用の共通APIと、並列
信号送信と、ペリフェラル及びバス競合制御と、その他とを提供する。 別の態様において、このシングルチップデバイスの開発環境が提供され、この
環境には、HDLのためのコンパイラ(PGAセクション用)と、DSP及びR
ISCコア両方のためのアセンブラと、同じくDSP及びRISCコアのための
適切な高レベルコンパイラ(C++、C等)とが備わっている。この開発環境は
、「高レベル」ゲート記述開発言語(Handel−C等)の使用をサポートす
ることもできる。
【0010】
この開発環境には、直接的な設計の検証を可能にするシステムスパニングシミ
ュレーションとタイミングツールとのセットを含まれていて、、更に、バーチャ
ルマシンレイヤで直接的には提供されない共通の有効な機能を実現するライブラ
リセットも含まれている。この開発環境は、更に、このシングルチップデバイス
にアップロードされるコンパイル済みトータルシステム記述(TSD、例えば、
DSPコアとRISCコア用のマシンコードや任意の適切なルックアップテーブ
ルその他を伴ってPGA用のJDECヒューズマップで構成される)を有効にす
るためにドライバコード(及び適切なハードウェア(JTAGカード等))を含
んでいる。ASICへの自動移行は、コンパイル済みのトータルシステム記述を
使用して達成することができる。この開発環境には、更に、リアルタイムソース
レベルデバッガを実行する能力が含まれている。独自のアーキテクチャのため、
ユーザは、対象のモジュールがPGA、DSP、及びRISC計算基板のどれで
実行されるかに関係なく、システム記述の任意の個所にブレークポイントを設定
することができる。共通バーチャルマシンは、三種類の計算要素それぞれの開発
の用に供し、これらの要素間でのアルゴリズムの移動を可能にする。
ュレーションとタイミングツールとのセットを含まれていて、、更に、バーチャ
ルマシンレイヤで直接的には提供されない共通の有効な機能を実現するライブラ
リセットも含まれている。この開発環境は、更に、このシングルチップデバイス
にアップロードされるコンパイル済みトータルシステム記述(TSD、例えば、
DSPコアとRISCコア用のマシンコードや任意の適切なルックアップテーブ
ルその他を伴ってPGA用のJDECヒューズマップで構成される)を有効にす
るためにドライバコード(及び適切なハードウェア(JTAGカード等))を含
んでいる。ASICへの自動移行は、コンパイル済みのトータルシステム記述を
使用して達成することができる。この開発環境には、更に、リアルタイムソース
レベルデバッガを実行する能力が含まれている。独自のアーキテクチャのため、
ユーザは、対象のモジュールがPGA、DSP、及びRISC計算基板のどれで
実行されるかに関係なく、システム記述の任意の個所にブレークポイントを設定
することができる。共通バーチャルマシンは、三種類の計算要素それぞれの開発
の用に供し、これらの要素間でのアルゴリズムの移動を可能にする。
【0011】
【発明の実施の形態】
添付図を参照して本発明を説明する。
本発明について、英国のRadioScape Limitedの実施を参考
に説明する。 RadioScapeのシステムは、便宜上、最適並列処理基板(OPPS)
と呼ばれるものであり、次の三種類の主要素を備える。 1.プログラマブルゲートアレイ(PGA)セクションと、DSPコアと、R
ISCコアとを含み、更に、ゲート設定とDSP及びRISCソフトウェアのた
めのFLASHストアと、DSP及びRISCデバイスが稼働している時の作業
ストア及びプログラムストア用のRAMと、デバイスが外界とのデータのやり取
り(例えば、ADCから又はDACへ等)を行うことが可能な高速DMA制御入
出力ポート(パラレル及びシリアル)をも一緒に含んでいる一般的なプログラマ
ブルシングルチップデバイスであり、好適な一実施形態において、様々な計算要
素は、共通のデータ/アドレスバスのほか、多数の専用バスを使用することで、
相互にデータを授受することができる。
に説明する。 RadioScapeのシステムは、便宜上、最適並列処理基板(OPPS)
と呼ばれるものであり、次の三種類の主要素を備える。 1.プログラマブルゲートアレイ(PGA)セクションと、DSPコアと、R
ISCコアとを含み、更に、ゲート設定とDSP及びRISCソフトウェアのた
めのFLASHストアと、DSP及びRISCデバイスが稼働している時の作業
ストア及びプログラムストア用のRAMと、デバイスが外界とのデータのやり取
り(例えば、ADCから又はDACへ等)を行うことが可能な高速DMA制御入
出力ポート(パラレル及びシリアル)をも一緒に含んでいる一般的なプログラマ
ブルシングルチップデバイスであり、好適な一実施形態において、様々な計算要
素は、共通のデータ/アドレスバスのほか、多数の専用バスを使用することで、
相互にデータを授受することができる。
【0012】
2.データ転送用の共通APIと、並列信号送信と、ペリフェラル及びバス競
合制御と、その他とを提供するようにした三種類の計算要素全体で使用する共通
バーチャルマシン(VM)プラットフォームであり、この共通VMレイヤにより
、モジュールは、更に、どの計算要素が現に基板として使用されいるのかに関係
なく、入出力及び並行処理要件を表現させることが(インタフェースレベルで)
可能になる。好適な一実施形態において、このVMレイヤは、PCT/GB01
/00273において説明される通信バーチャルマシンレイヤである。「バーチ
ャルマシン」は、通常、本発明に関連する特定のアプリケーションセットを実施
するのに理想的なマシンの機能及びインタフェースを定義する。通常、このバー
チャルマシンは、使用するアプリケーションに関し、処理中のタスク向けに最適
化された理想的なマシンを提示し、実際のハードウェアの異常動作と欠陥を隠す
。この「バーチャルマシン」は、更に、通信プロセスをモデル化又は表現化する
ための一つ以上の状態マシンを管理及び又は維持する。この「バーチャルマシン
レイヤ」は、現実のマシンの理想的なマシン状態を作り出すようなソフトウェア
である。このレイヤは、通常、それぞれに実現されるマシンタイプについて異な
る形で実施されるが、全プラットフォームで、高いレベルのソフトウェアに対し
て共通のインタフェースを提供する。「バーチャルマシンレイヤ」は、通常、一
部のタスク又はタスクのセットを実行するのに、一つ以上のAPI(アプリケー
ションプログラムインタフェース)のセットを提供し、更に、VMレイヤを使用
する要素間で割り当てられ、共有されることが不可欠であるクリティカルなリソ
ースを所有するようなソフトウェアのレイヤを指している。注意すべき点として
、この共通のスパニングVMレイヤは、特定のRTOS/EmOSの追加使用を
できなくすることではなく、これにより、単純に、アプリケーションのモジュー
ルが、利用する計算要素に関係なく、シームレスに相互通信できるような共通の
データと制御プレーンとが提供される。
合制御と、その他とを提供するようにした三種類の計算要素全体で使用する共通
バーチャルマシン(VM)プラットフォームであり、この共通VMレイヤにより
、モジュールは、更に、どの計算要素が現に基板として使用されいるのかに関係
なく、入出力及び並行処理要件を表現させることが(インタフェースレベルで)
可能になる。好適な一実施形態において、このVMレイヤは、PCT/GB01
/00273において説明される通信バーチャルマシンレイヤである。「バーチ
ャルマシン」は、通常、本発明に関連する特定のアプリケーションセットを実施
するのに理想的なマシンの機能及びインタフェースを定義する。通常、このバー
チャルマシンは、使用するアプリケーションに関し、処理中のタスク向けに最適
化された理想的なマシンを提示し、実際のハードウェアの異常動作と欠陥を隠す
。この「バーチャルマシン」は、更に、通信プロセスをモデル化又は表現化する
ための一つ以上の状態マシンを管理及び又は維持する。この「バーチャルマシン
レイヤ」は、現実のマシンの理想的なマシン状態を作り出すようなソフトウェア
である。このレイヤは、通常、それぞれに実現されるマシンタイプについて異な
る形で実施されるが、全プラットフォームで、高いレベルのソフトウェアに対し
て共通のインタフェースを提供する。「バーチャルマシンレイヤ」は、通常、一
部のタスク又はタスクのセットを実行するのに、一つ以上のAPI(アプリケー
ションプログラムインタフェース)のセットを提供し、更に、VMレイヤを使用
する要素間で割り当てられ、共有されることが不可欠であるクリティカルなリソ
ースを所有するようなソフトウェアのレイヤを指している。注意すべき点として
、この共通のスパニングVMレイヤは、特定のRTOS/EmOSの追加使用を
できなくすることではなく、これにより、単純に、アプリケーションのモジュー
ルが、利用する計算要素に関係なく、シームレスに相互通信できるような共通の
データと制御プレーンとが提供される。
【0013】
3.HDLのためのコンパイラ(PGAセクション用)と、DSP及びRIS
Cコア両方のためのアセンブラと、同じくDSPコア及びRISCコアのための
適切な高レベルコンパイラ(C++、C等)とを備えるようにしたデバイス用の
単一の開発環境を有し、この開発環境は、「高レベル」ゲート記述開発言語(H
andel−C等)の使用を(オプションとして)サポートすることもできる。
この開発環境は、直接的な設計の検証を可能にするような数学モデリングシステ
ムスパニングシミュレーションとタイミングツールとのセットを含んでおり、更
に、バーチャルマシンレイヤで直接的には提供されない共通の有効な機能を実施
するようなライブラリのセットを含んでいてもよい。この開発環境は、更に、上
記(1)で説明したデバイスにアップロードされるコンパイル済みトータルシス
テム記述(TSD、例えば、DSPコア及びRISCコア用のマシンコードや任
意の適切なルックアップテーブルその他を伴ってPGA用のJDECヒューズマ
ップで構成される)を有効にするためにドライバコード(及び適切なハードウェ
ア(JTAGカード等))を含んでいる。この開発環境には、更に、リアルタイ
ムソースレベルデバッガを実行する能力が含まれており、ここでもデバイスへの
適切な接続用ハードウェアが使用され、更に独自のアーキテクチャ故に、ユーザ
は、対象のモジュールがPGA、DSP、及びRISC計算基板のどれで実行さ
れるのかに関係なく、システム記述の任意の個所にブレークポイントを設定する
ことができる。
Cコア両方のためのアセンブラと、同じくDSPコア及びRISCコアのための
適切な高レベルコンパイラ(C++、C等)とを備えるようにしたデバイス用の
単一の開発環境を有し、この開発環境は、「高レベル」ゲート記述開発言語(H
andel−C等)の使用を(オプションとして)サポートすることもできる。
この開発環境は、直接的な設計の検証を可能にするような数学モデリングシステ
ムスパニングシミュレーションとタイミングツールとのセットを含んでおり、更
に、バーチャルマシンレイヤで直接的には提供されない共通の有効な機能を実施
するようなライブラリのセットを含んでいてもよい。この開発環境は、更に、上
記(1)で説明したデバイスにアップロードされるコンパイル済みトータルシス
テム記述(TSD、例えば、DSPコア及びRISCコア用のマシンコードや任
意の適切なルックアップテーブルその他を伴ってPGA用のJDECヒューズマ
ップで構成される)を有効にするためにドライバコード(及び適切なハードウェ
ア(JTAGカード等))を含んでいる。この開発環境には、更に、リアルタイ
ムソースレベルデバッガを実行する能力が含まれており、ここでもデバイスへの
適切な接続用ハードウェアが使用され、更に独自のアーキテクチャ故に、ユーザ
は、対象のモジュールがPGA、DSP、及びRISC計算基板のどれで実行さ
れるのかに関係なく、システム記述の任意の個所にブレークポイントを設定する
ことができる。
【0014】
このシングルチップデバイスの実施の図式による表示は、図3に示されている
。この開発環境に関しては、図4に概略が示されている。 RadioscapeのOPPSのインプリメンテーションは、以下で説明す
るように、システムボード手法と比較して、高帯域幅アプリケーションの少量乃
至中量規模の実施で大きな利点をもたらす。 ・一般的なケースでは、シングルチップとして動作するので、システム全体の
コストが低く、必要な外部コンポーネントがほとんどない。更に、少量乃至中量
の数のデバイスを必要とするような高帯域幅用途が多数存在するので、(例えば
、新しいデジタル規格に関連する新興市場)、チップベンダは、デバイスの全体
的な生産量を非常に大きく維持できて、コストが更に低下する。 ・計算要素間の相互通信に内部のメイン共有バスを使用し、併せて追加的な専
用バスを選択的に使用することで、潜在的なデータ交換速度が大幅に上昇し、一
方でEMCが低下する。 ・三種類の計算要素が共通の「バーチャルマシン」を共用することから、結局
、計算要素間のデータの授受が、ユーザの視点から見て同一のプリミティブを通
じて達成されて、これにより、開発サイクルの時間が大幅に短縮される。
。この開発環境に関しては、図4に概略が示されている。 RadioscapeのOPPSのインプリメンテーションは、以下で説明す
るように、システムボード手法と比較して、高帯域幅アプリケーションの少量乃
至中量規模の実施で大きな利点をもたらす。 ・一般的なケースでは、シングルチップとして動作するので、システム全体の
コストが低く、必要な外部コンポーネントがほとんどない。更に、少量乃至中量
の数のデバイスを必要とするような高帯域幅用途が多数存在するので、(例えば
、新しいデジタル規格に関連する新興市場)、チップベンダは、デバイスの全体
的な生産量を非常に大きく維持できて、コストが更に低下する。 ・計算要素間の相互通信に内部のメイン共有バスを使用し、併せて追加的な専
用バスを選択的に使用することで、潜在的なデータ交換速度が大幅に上昇し、一
方でEMCが低下する。 ・三種類の計算要素が共通の「バーチャルマシン」を共用することから、結局
、計算要素間のデータの授受が、ユーザの視点から見て同一のプリミティブを通
じて達成されて、これにより、開発サイクルの時間が大幅に短縮される。
【0015】
・単一の開発環境と、共通のモジュールAPIとが使用されているということ
から、様々な処理要素間でのアルゴリズムの移動性、及びシステムの「シミュレ
ート可能性」が、大幅に強化される。 ・デバイスのすべてのコアが(低い)内部電圧で作動し、共用外部メモリバス
により容量性負荷が課されないので、デバイスの消費電力が大幅に低下する。 ・このチップは単一の入力電圧によるので、電源安定化要件が簡略化される。 ・この単一のデバイスは、非常に小さく、様々なコンパクトパッケージタイプ
(マイクロBGA等)で提供することが可能であり、スペースの少ない設計での
採用が容易になる(携帯電話等)。 ・このデバイス(各計算要素のための不揮発性環境設定ストアを含む)は、単
一のチップパッケージ(或いはプログラム用のROMが追加されたパッケージ)
に設けられているので、サードパーティのデベロッパは、様々な用途向けのカス
タムパートとして、(適切にプログラムして)容易に再販売できる。例えば、企
業は、このデバイス用のDVB(デジタルテレビ)デコーダの開発が可能であり
、その後、事前にプログラムされたデバイスを(データシートと共に)通常の形
でカタログ部品として販売用に提供できる。 ・このデバイスは、すべての不揮発性要素に内部的にアクセスできるので、現
場に生産配備された後でも、直接的な修正が容易にできる。そのため、(例えば
)新たに改良されたイコライザモジュールを携帯電話に「放送を介して」ダウン
ロードすることが可能であり、このモジュールがデバイスのPGA計算要素で実
行される場合でも、これが可能となる。
から、様々な処理要素間でのアルゴリズムの移動性、及びシステムの「シミュレ
ート可能性」が、大幅に強化される。 ・デバイスのすべてのコアが(低い)内部電圧で作動し、共用外部メモリバス
により容量性負荷が課されないので、デバイスの消費電力が大幅に低下する。 ・このチップは単一の入力電圧によるので、電源安定化要件が簡略化される。 ・この単一のデバイスは、非常に小さく、様々なコンパクトパッケージタイプ
(マイクロBGA等)で提供することが可能であり、スペースの少ない設計での
採用が容易になる(携帯電話等)。 ・このデバイス(各計算要素のための不揮発性環境設定ストアを含む)は、単
一のチップパッケージ(或いはプログラム用のROMが追加されたパッケージ)
に設けられているので、サードパーティのデベロッパは、様々な用途向けのカス
タムパートとして、(適切にプログラムして)容易に再販売できる。例えば、企
業は、このデバイス用のDVB(デジタルテレビ)デコーダの開発が可能であり
、その後、事前にプログラムされたデバイスを(データシートと共に)通常の形
でカタログ部品として販売用に提供できる。 ・このデバイスは、すべての不揮発性要素に内部的にアクセスできるので、現
場に生産配備された後でも、直接的な修正が容易にできる。そのため、(例えば
)新たに改良されたイコライザモジュールを携帯電話に「放送を介して」ダウン
ロードすることが可能であり、このモジュールがデバイスのPGA計算要素で実
行される場合でも、これが可能となる。
【0016】
・単一のバーチャルマシンと単一の開発環境を使用するので、仮にも、特定の
設計が好評であることが分かったような場合には、ASICインプリメンテーシ
ョンへの直接的な移行が可能である。実際、OPPSチップのベンダは、この大
きな長所を活用して、設計ツールで完全なシステム記述の行えるような迅速処理
のカスタムサービス(当然ながら、様々な計算要素間の複雑なタイミング関係を
すべて伴う)を提供し、これを使用して適切なASICの(理想的には自動的な
)生産を推進することができる。一実施形態において、ASICは、TSDから
自動的に提供される。ベンダは、(迅速で骨の折れないASIC移行という点で
)独自の強力な利点を顧客に提供することになろう。更に、ASICへの転換の
プロセスは、(ベンダがDSP及びRISCに関して互換性のあるコアを利用可
能で、HDLが固定されたシリコンにコンパイルされ、目的の用途で使用されて
いないオリジナルOPPSプラットフォームの要素が対象外であると仮定した場
合)大部分又は全体を自動化できるので、更なる利点である信頼性が生じ、結果
物としてのASICは、システムボードからASICへの移行において持ち込ま
れるバグを取り除くために様々な「スピン」を通過していくような通常のプロセ
スとは対照的に、最初のイテレーションにおいて正確に動作する。 したがって、このアプローチは、少量乃至中量規模の場合に非常に魅力がある
ことは明らかであり、実際に、量的に可能である場合には、システム設計からA
SICへの転換を大幅に促進する。しかしながら、大量である場合でも、固定A
SIC手法に比べ、OPPSプラットフォームが多数の利点を提供することは、
言及に値する。
設計が好評であることが分かったような場合には、ASICインプリメンテーシ
ョンへの直接的な移行が可能である。実際、OPPSチップのベンダは、この大
きな長所を活用して、設計ツールで完全なシステム記述の行えるような迅速処理
のカスタムサービス(当然ながら、様々な計算要素間の複雑なタイミング関係を
すべて伴う)を提供し、これを使用して適切なASICの(理想的には自動的な
)生産を推進することができる。一実施形態において、ASICは、TSDから
自動的に提供される。ベンダは、(迅速で骨の折れないASIC移行という点で
)独自の強力な利点を顧客に提供することになろう。更に、ASICへの転換の
プロセスは、(ベンダがDSP及びRISCに関して互換性のあるコアを利用可
能で、HDLが固定されたシリコンにコンパイルされ、目的の用途で使用されて
いないオリジナルOPPSプラットフォームの要素が対象外であると仮定した場
合)大部分又は全体を自動化できるので、更なる利点である信頼性が生じ、結果
物としてのASICは、システムボードからASICへの移行において持ち込ま
れるバグを取り除くために様々な「スピン」を通過していくような通常のプロセ
スとは対照的に、最初のイテレーションにおいて正確に動作する。 したがって、このアプローチは、少量乃至中量規模の場合に非常に魅力がある
ことは明らかであり、実際に、量的に可能である場合には、システム設計からA
SICへの転換を大幅に促進する。しかしながら、大量である場合でも、固定A
SIC手法に比べ、OPPSプラットフォームが多数の利点を提供することは、
言及に値する。
【0017】
・対象となる論理コンポーネントがカスタムゲート計算基板内で実施されてい
る場合でも、生産配備済みデバイスを再プログラムできる能力(例えば、新しい
イコライザを通信システム内で、「放送を介して」ダウンロードすること)によ
ってもたらされる柔軟性は、多くの用途での、再プログラム可能なデバイスによ
ってのみ提供可能な大きな利点を意味する。 ・(例えば、RISCデバイスに関するHMIコードのみを変更することで)
特定のOEM生産配備に際してアプリケーションプログラム済みデバイスを「チ
ューニング」すべく、新しいコードを迅速に生成する能力は、大きな潜在的利点
を意味する。 つまり、OPPSは、現代の高帯域幅放送及び通信タスクのために最適化され
たハードウェアプラットフォームを意味し、そこでは、高並行性、高精度数値計
算、及びHMI対話の必要性が、単一のハードウェア基板によって満たされる。
これにより、OPPSベンダは、製造量を最適化し、コストを押し下げつつ、共
通の開発環境下で、付随するあらゆる生産性の利点と共に、自分のIPを単なる
「システムボード」としてではなく(ASICのスピンに関する経費なしで)カ
タログ部品チップとして販売できることを知っている状態で、アプリケーション
デベロッパがソフトウェアのみのアプリケーションを共通のVMに対して書き込
むことを可能にし、更に、彼らは、もしも、後で量的に可能になった場合には、
直接的で、迅速で、信頼性の高い(理想的には自動化された)ASICへのルー
トを確保しているということを承知のうえで、安心していられる。
る場合でも、生産配備済みデバイスを再プログラムできる能力(例えば、新しい
イコライザを通信システム内で、「放送を介して」ダウンロードすること)によ
ってもたらされる柔軟性は、多くの用途での、再プログラム可能なデバイスによ
ってのみ提供可能な大きな利点を意味する。 ・(例えば、RISCデバイスに関するHMIコードのみを変更することで)
特定のOEM生産配備に際してアプリケーションプログラム済みデバイスを「チ
ューニング」すべく、新しいコードを迅速に生成する能力は、大きな潜在的利点
を意味する。 つまり、OPPSは、現代の高帯域幅放送及び通信タスクのために最適化され
たハードウェアプラットフォームを意味し、そこでは、高並行性、高精度数値計
算、及びHMI対話の必要性が、単一のハードウェア基板によって満たされる。
これにより、OPPSベンダは、製造量を最適化し、コストを押し下げつつ、共
通の開発環境下で、付随するあらゆる生産性の利点と共に、自分のIPを単なる
「システムボード」としてではなく(ASICのスピンに関する経費なしで)カ
タログ部品チップとして販売できることを知っている状態で、アプリケーション
デベロッパがソフトウェアのみのアプリケーションを共通のVMに対して書き込
むことを可能にし、更に、彼らは、もしも、後で量的に可能になった場合には、
直接的で、迅速で、信頼性の高い(理想的には自動化された)ASICへのルー
トを確保しているということを承知のうえで、安心していられる。
【0018】
OPPSプラットフォームには、様々な種類のバージョンが想定されており、
マイクロコントローラの省略、多数の並列DSPコアの使用、その他が考えられ
ている。したがって、別の態様において、本発明は、次の計算要素、つまりプロ
グラマブルゲートアレイと少なくとも一つのDSPコアとを備えているプログラ
マブルシングルチップデバイスをカバーする。 「FLASH」メモリに言及した個所では、他のタイプの不揮発性ストアを使
用することもできる。 アップロードしたシステム記述の「読み出し保護」を行う能力が提供可能であ
り、−その結果、出荷される「アプリケーションカスタマイズ」チップは、権利
侵害を許さないようになる。 このデバイスは、必要であれば、DSP及びRISCプログラムストアに、外
部FLASH、固定ROM、又はその他のストアを使用することができる。必要
に応じて、外部メモリアクセスバスをサポートすることも可能である。
マイクロコントローラの省略、多数の並列DSPコアの使用、その他が考えられ
ている。したがって、別の態様において、本発明は、次の計算要素、つまりプロ
グラマブルゲートアレイと少なくとも一つのDSPコアとを備えているプログラ
マブルシングルチップデバイスをカバーする。 「FLASH」メモリに言及した個所では、他のタイプの不揮発性ストアを使
用することもできる。 アップロードしたシステム記述の「読み出し保護」を行う能力が提供可能であ
り、−その結果、出荷される「アプリケーションカスタマイズ」チップは、権利
侵害を許さないようになる。 このデバイスは、必要であれば、DSP及びRISCプログラムストアに、外
部FLASH、固定ROM、又はその他のストアを使用することができる。必要
に応じて、外部メモリアクセスバスをサポートすることも可能である。
【0019】
【図1】
従来技術−基板処理の選択を制約する可変要素を示す図である。
1 反復性
2 カスタムロジック
3 条件
4 精度
【図2】
従来技術−通常の小量高帯域幅システムカードを示す図である。
1 共有メモリバス
【図3】
本発明によるプログラマブルシングルチップデバイスを示す図である。
1 (複数の)共有メモリバス
2 プログラミングポート
3 デバッグポート
4 共通VM
5 DSPコア
6 RISC mCコア
7 シングルチップダイ
【図4】
本発明による開発環境の概略図である。
1 相互接続仕様
2 PLD用HDL
3 DSP用ASM/C/C++コード
4 マイクロコントローラ用ASM/C/C++コード
5 状態マシン仕様
6 共通統合開発環境
7 アップロードされたイメージ
8 OPPSプロトタイプボード
9 トータルシステム記述
10 パフォーマンスマップ(MIPS、メモリ、その他)
11 バーチャルマシンコンポーネントリスト
Claims (13)
- 【請求項1】 少なくとも以下の計算要素、即ちプログラマブルゲートアレ
イセクションと、DSPコアと、RISCコアとを備えるプログラマブルシング
ルチップデバイス。 - 【請求項2】 ゲート構成とDSP及びRISCソフトウェアとのためのF
LASHストアと、DSP及びRISCデバイスが稼働している時の作業ストア
及びプログラムストアのためのRAMと、DMA制御入出力ポートとを更に備え
る、請求項1記載のシングルチップデバイス。 - 【請求項3】 前記計算要素が、共通データ/アドレスバスに加えて、多数
の専用バスを使用して、相互にデータを伝達することができる、前記請求項のい
ずれか一項に記載のシングルチップデバイス。 - 【請求項4】 前記三種の計算要素のそれぞれで使用される共通バーチャル
マシンプラットフォームが設けられている、前記請求項のいずれか一項に記載の
シングルチップデバイス。 - 【請求項5】 共通バーチャルマシンプラットフォームが、データ転送と、
並行信号方式と、ペリフェラル及びバス競合制御とのうち一つ以上に関する共通
APIを提供する、請求項4のシングルチップデバイス。 - 【請求項6】 (a)プログラマブルゲートアレイセクションに関するHD
Lのためのコンパイラと、(b)DSP及びRISCコア両方のためのアセンブ
ラと、(c)DSP及びRISCコアのための高レベルコンパイラとのうちの一
つ以上を備える環境である、請求項1乃至5において定義されるシングルチップ
デバイス用の開発環境。 - 【請求項7】 前記三種の計算要素のすべてに共通バーチャルマシンが設け
られている、請求項6記載の開発環境。 - 【請求項8】 一つ以上の計算要素でのアルゴリズムの移動性が、共通バー
チャルネットワークを使用して達成可能である、請求項7記載の開発環境。 - 【請求項9】 構成の検証を可能にするシミュレーション及びタイミングツ
ールのセットを更に備える、請求項6乃至8記載の開発環境。 - 【請求項10】 コンパイル済みトータルシステム記述をシングルチップデ
バイスにアップロードすることを可能にするドライバコードを更に備える、請求
項6乃至9記載の開発環境。 - 【請求項11】 前記シングルチップデバイスが、少数乃至中程度の数のデ
バイスが必要な高帯域幅用途において使用される任意のチップデバイスであり得
る、請求項6乃至10記載の開発環境。 - 【請求項12】 前記シングルチップデバイスが、以下の組のデバイスタイ
プの一つ、即ちデジタルテレビ受信機と、ワイヤレスLANモデムと、第三世代
携帯電話と、ワイヤレス情報デバイスとのうちの一つに属する、請求項11記載
の開発環境。 - 【請求項13】 ASICへの自動移行が、コンパイル済みトータルシステ
ム記述を用いて達成可能である、請求項6乃至12記載の開発環境。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0012773.8 | 2000-05-25 | ||
GBGB0012773.8A GB0012773D0 (en) | 2000-05-25 | 2000-05-25 | Programmable single-chip device and related development environment |
PCT/GB2001/002363 WO2001090882A2 (en) | 2000-05-25 | 2001-05-25 | Programmable single-chip device and related development environment |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003534596A true JP2003534596A (ja) | 2003-11-18 |
Family
ID=9892385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001587206A Withdrawn JP2003534596A (ja) | 2000-05-25 | 2001-05-25 | プログラマブルシングルチップデバイス及び関連する開発環境 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20040015341A1 (ja) |
EP (1) | EP1290546B1 (ja) |
JP (1) | JP2003534596A (ja) |
AT (1) | ATE273537T1 (ja) |
DE (1) | DE60104848T2 (ja) |
GB (2) | GB0012773D0 (ja) |
WO (1) | WO2001090882A2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008513832A (ja) * | 2004-09-16 | 2008-05-01 | ジュ・サムヨン | Mp3およびカラオケ機器用中央処理装置 |
CN111936984A (zh) * | 2018-04-03 | 2020-11-13 | 赛灵思公司 | 设备中的数据处理引擎布置 |
JP2021520549A (ja) * | 2018-04-03 | 2021-08-19 | ザイリンクス インコーポレイテッドXilinx Incorporated | システムオンチップインターフェースアーキテクチャ |
JP2021532430A (ja) * | 2018-04-03 | 2021-11-25 | ザイリンクス インコーポレイテッドXilinx Incorporated | データ処理エンジンアレイを有するデバイス |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6983442B1 (en) * | 2002-08-26 | 2006-01-03 | Altera Corporation | Method for constructing an integrated circuit device having fixed and programmable logic portions and programmable logic architecture for use therewith |
JP4219706B2 (ja) * | 2003-02-27 | 2009-02-04 | パナソニック株式会社 | システムlsi設計支援装置及び設計支援方法 |
TWI279718B (en) * | 2004-07-01 | 2007-04-21 | Winity Technology Inc | Architecture and method of a cellular phone embedded system |
EP1794883B2 (en) † | 2004-09-27 | 2018-03-21 | Unitron | Electronic filter device for the reception of tv-signals |
US7447874B1 (en) * | 2005-10-18 | 2008-11-04 | Qlogic, Corporation | Method and system for designing a flexible hardware state machine |
US20110106522A1 (en) * | 2009-11-05 | 2011-05-05 | Chinya Gautham N | virtual platform for prototyping system-on-chip designs |
CN108121687A (zh) * | 2016-11-28 | 2018-06-05 | 沈阳新松机器人自动化股份有限公司 | 核心板以及板卡 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69031257T2 (de) * | 1989-09-21 | 1998-02-12 | Texas Instruments Inc | Integrierte Schaltung mit einem eingebetteten digitalen Signalprozessor |
EP0843254A3 (en) * | 1990-01-18 | 1999-08-18 | National Semiconductor Corporation | Integrated digital signal processor/general purpose CPU with shared internal memory |
US6052773A (en) * | 1995-02-10 | 2000-04-18 | Massachusetts Institute Of Technology | DPGA-coupled microprocessors |
US5712628A (en) * | 1995-08-31 | 1998-01-27 | Northrop Grumman Corporation | Digitally programmable radio modules for transponder systems |
GB9607528D0 (en) * | 1996-04-11 | 1996-06-12 | Int Computers Ltd | Integrated circuit processor |
US6144327A (en) * | 1996-08-15 | 2000-11-07 | Intellectual Property Development Associates Of Connecticut, Inc. | Programmably interconnected programmable devices |
DE19647181A1 (de) * | 1996-11-14 | 1998-05-20 | Siemens Ag | Zur Abarbeitung von Softwareprogrammen ausgelegte integrierte Schaltung |
EP0918280B1 (en) * | 1997-11-19 | 2004-03-24 | IMEC vzw | System and method for context switching on predetermined interruption points |
DE19819505A1 (de) * | 1998-04-30 | 1999-11-04 | Alcatel Sa | Integrierte Schaltung |
US5999990A (en) * | 1998-05-18 | 1999-12-07 | Motorola, Inc. | Communicator having reconfigurable resources |
US6192290B1 (en) * | 1998-05-21 | 2001-02-20 | Lucent Technologies Inc. | System and method of manufacturing semicustom integrated circuits using reticle primitives from a library and interconnect reticles |
US6658564B1 (en) * | 1998-11-20 | 2003-12-02 | Altera Corporation | Reconfigurable programmable logic device computer system |
-
2000
- 2000-05-25 GB GBGB0012773.8A patent/GB0012773D0/en not_active Ceased
-
2001
- 2001-05-25 EP EP01931962A patent/EP1290546B1/en not_active Expired - Lifetime
- 2001-05-25 DE DE60104848T patent/DE60104848T2/de not_active Expired - Fee Related
- 2001-05-25 JP JP2001587206A patent/JP2003534596A/ja not_active Withdrawn
- 2001-05-25 US US10/296,602 patent/US20040015341A1/en not_active Abandoned
- 2001-05-25 GB GB0112851A patent/GB2367166B/en not_active Revoked
- 2001-05-25 AT AT01931962T patent/ATE273537T1/de not_active IP Right Cessation
- 2001-05-25 WO PCT/GB2001/002363 patent/WO2001090882A2/en active IP Right Grant
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008513832A (ja) * | 2004-09-16 | 2008-05-01 | ジュ・サムヨン | Mp3およびカラオケ機器用中央処理装置 |
CN111936984A (zh) * | 2018-04-03 | 2020-11-13 | 赛灵思公司 | 设备中的数据处理引擎布置 |
JP2021520549A (ja) * | 2018-04-03 | 2021-08-19 | ザイリンクス インコーポレイテッドXilinx Incorporated | システムオンチップインターフェースアーキテクチャ |
JP2021520550A (ja) * | 2018-04-03 | 2021-08-19 | ザイリンクス インコーポレイテッドXilinx Incorporated | デバイスにおけるデータ処理エンジン構成 |
JP2021532430A (ja) * | 2018-04-03 | 2021-11-25 | ザイリンクス インコーポレイテッドXilinx Incorporated | データ処理エンジンアレイを有するデバイス |
JP7274500B2 (ja) | 2018-04-03 | 2023-05-16 | ザイリンクス インコーポレイテッド | システムオンチップインターフェースアーキテクチャ |
JP7398384B2 (ja) | 2018-04-03 | 2023-12-14 | ザイリンクス インコーポレイテッド | デバイスにおけるデータ処理エンジン構成 |
US11972132B2 (en) | 2018-04-03 | 2024-04-30 | Xilinx, Inc. | Data processing engine arrangement in a device |
Also Published As
Publication number | Publication date |
---|---|
GB0112851D0 (en) | 2001-07-18 |
DE60104848D1 (de) | 2004-09-16 |
ATE273537T1 (de) | 2004-08-15 |
DE60104848T2 (de) | 2005-08-11 |
GB0012773D0 (en) | 2000-07-19 |
US20040015341A1 (en) | 2004-01-22 |
WO2001090882A2 (en) | 2001-11-29 |
WO2001090882A3 (en) | 2002-06-06 |
GB2367166B (en) | 2003-11-26 |
EP1290546B1 (en) | 2004-08-11 |
GB2367166A (en) | 2002-03-27 |
EP1290546A2 (en) | 2003-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7200735B2 (en) | High-performance hybrid processor with configurable execution units | |
Ramacher | Software-defined radio prospects for multistandard mobile phones | |
Lyonnard et al. | Automatic generation of application-specific architectures for heterogeneous multiprocessor system-on-chip | |
Master | The next big leap in reconfigurable systems | |
US6230307B1 (en) | System and method for programming the hardware of field programmable gate arrays (FPGAs) and related reconfiguration resources as if they were software by creating hardware objects | |
US7895416B2 (en) | Reconfigurable integrated circuit | |
Majer et al. | The Erlangen Slot Machine: A dynamically reconfigurable FPGA-based computer | |
US20060026578A1 (en) | Programmable processor architecture hirarchical compilation | |
US7360068B2 (en) | Reconfigurable signal processing IC with an embedded flash memory device | |
Glossner et al. | The sandbridge sb3011 platform | |
Al Kadi et al. | Dynamic and partial reconfiguration of Zynq 7000 under Linux | |
JPH10507013A (ja) | 特定用途向けプロセッサおよびその設計方法 | |
JP2003534596A (ja) | プログラマブルシングルチップデバイス及び関連する開発環境 | |
Ramacher et al. | Architecture and implementation of a Software-Defined Radio baseband processor | |
Desoli et al. | An outlook on the evolution of mobile terminals: from monolithic to modular multiradio, multiapplication platforms | |
Becker et al. | Scalable processor instruction set extension | |
Bluethgen et al. | A programmable baseband platform for software-defined radio | |
Leijten et al. | AVISPA: A massively parallel reconfigurable accelerator | |
Koch et al. | Modeling and synthesis of hardware-software morphing | |
Revés et al. | FPGA's middleware for software defined radio applications | |
Göhringer et al. | Adaptive Multiprocessor System-on-Chip Architecture: New Degrees of Freedom in System Design and Runtime Support | |
Fons et al. | Deployment of run-time reconfigurable hardware coprocessors into compute-intensive embedded applications | |
US20240028556A1 (en) | Reconfigurable neural engine with extensible instruction set architecture | |
Neuendorffer | FPGA platforms for embedded systems | |
Essig et al. | On-demand instantiation of co-processors on dynamically reconfigurable FPGAs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080522 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20100214 |