独自のARMベースのプロセッサを設計するにはどうすればよいですか?


37

独自のARMベースのCPUをどのように設計するかについて、いくつか質問がありますか?

  • どのようにしてARMライセンスから始めて、ボードにはんだ付けする準備ができたパッケージになりますか?
  • ARMから何が得られますか(アーキテクチャライセンス(Qualcomm Snapdragonスタイル)およびコアライセンス(TI OMAPスタイル)-提供する複数のライセンスオプションがあると確信しています)。
  • ARMから「何か」を取得したら、どのツールを続行する必要がありますか?
  • ファブに何を送るのですか?
  • 特定のファウンダリーのみがシリコンウェーハにARMコアをエッチングすることが許可されていると思います。私は正しいですか?
  • 学生として、これをFPGAで実行する余裕はありますか?このようなことを体験するにはどうすればいいですか?

9
明白な答えは、ARMと話すことです。
オリンラスロップ

3
見てくださいopencores.comを -完全性と機能のさまざまな状態であり、様々なプロセッサコアがたくさんあります。実際のARMコアソースを取得する限り... @OlinLathropが言うように... ARMと話してください。
akohlsmith

6
私は下票を理解していません、これは素朴な質問かもしれませんが、間違いなく正当なIMOです。
ジョンL

2
問題は、あなたの質問が、あなたが従わないワークフローに固有のものであるということです。従うことができるワークフロー-HDLでオリジナルまたは自由に利用可能なデザインを使用してFPGAをターゲットにする-は、推測によるものとは異なります。
クリスストラットン

2
Cortex-M1コアは、任意の適切可能なFPGAで実行することを意図しているように見えます。主要なFPGAベンダーはIPライセンスを所有しており、他のソフトコアと同様に設計者に提供しています。私は無料ではないと思いますが、特にアカデミックな用途のために利用可能なプログラムがありそうです。
RBerteig

回答:


68

企業が行う方法は次のとおりです。

  1. 約1,000万米ドルを調達します。
  2. ARMと交渉してライセンスを取得します。これにはおそらく少なくとも100万米ドルかかります。
  3. ARMから設計ファイルを入手します。おそらく、VHDL、Verilog、または「暗号化された」ネットリストの形式になります。
  4. 独自のロジック(周辺機器用)とARMが提供したものを組み合わせて、独自のチップを設計します。このステップには、おそらく高価なCADソフトウェアと小さな専門家チームが必要になります。少なくとも500万米ドルと数年を費やす予定です。
  5. チップ自体のために作られたマスクを入手してください。最新の半導体プロセスを使用する場合、これは約100万米ドルになります。
  6. チップ自体を作りましょう。価格はさまざまですが、50万米ドル未満である必要があります。
  7. 作成したチップをデバッグし、バグを修正してから、販売できるものが見つかるまで手順5に戻ります。

ここではどのようにあなたはそれを実行します。

  1. 地元の大学で大学院レベルのコンピューターアーキテクチャコースを受講してください。
  2. デジタルロジックなどのコースを受講してください。
  3. VHDLまたはVerilogでCPUをゼロから設計します。
  4. 別のCPUをゼロから設計します。
  5. ARM命令セットを見て、互換性のあるCPUを設計します。
  6. ARM互換CPUをFPGAで動作させます。
  7. 訴えられる場合を除き、VHDL / Verilogソースコードを配布しないでください。
  8. ARMの経験を活用して、博士号のための優れた論文を書きます。
  9. 博士号を使用して、ARM、TI、またはその他の人に就職してください。次に、企業が行う方法について、前の7つの手順を使用してプロセスを繰り返します。

わかりましたので、このリストは少し冗談ですが、基本的には正しいです。要点は、ARMに直接対処することすらしないでください。お金がない場合が多いからです。また、ARMに訴えられるようなこともしないでください。


1
+1。素晴らしい答え。私が言うつもりだったが、良い。
Rocketmagnet

1
良いコースには、さまざまな種類のCPUの基本構造と、それらすべての動作方法が含まれます。トピックには、マイクロコード、命令デコード、ALU、メモリアクセス、キャッシュ、レジスタ、パイプライン、データ

3
ARMの命令セット自体が、クローンが豊富にある他のどのCPUよりも特許性が高いという理由はありますか?確かに、特許を取得しているアーキテクチャ上の機能がありがちですが、目標が既存のコンパイラで動作するCPUを設計することである場合、命令セット自体に問題が生じますか?
-supercat

1
@supercat通常、命令自体は、アーキテクチャに関するものを組み込んでいない限り、あまり特許性がありません。MIPSはCPUでこれを行いました。そこでは、ワードアラインされていないワードをロード/保存する命令と、ビッグエンディアンとリトルエンディアンを動的に切り替えるものを特許取得しました。MIPSがMIPSクローンメーカーを訴え、MIPSが勝ったとき(2000年頃)、これは法廷で異議を申し立てられました。しかし、ほとんどの特許は建築上の問題に関するものです。残念ながら、アーキテクチャと命令セットの両方をコピーせずに、既存のコンパイラと互換性のあるCPUを作成することはできません。

1
@LordLohあなたはこれらの質問が役立つことがあります。electronics.stackexchange.com/questions/28686/... electronics.stackexchange.com/a/7051/638
W5VO

32

ARMにはUniversity DesignStartプログラムがあります。学生としてアクセスできるのは、基本的なCortex-M0マテリアルのみです。しかし、本当に興味がある場合は、教員を関与させると、さらに多くの設計資料(Verilog FPGAコード、評価IP、シミュレーションなど)にアクセスできます。


4
ありがとう:-)私はこれらのいくつかを要求するために私のアドバイザーを取得しようとします。
ローLord。

WFIW、この回答は現在時代遅れであり、Cortex-M0とCortex-M3の両方が利用可能であり、製品の一部は非学生/機関に開放されています。
ショーンフーリハネ


3

ARM Cortex-M1(おそらく最も単純なARMプロセッサ)は、FPGAのソフトプロセッサとして実装するように特別に設計された最初のARMプロセッサです。次のFPGAタイプ用に最適化されています

Actel (M1 ProASIC3 and M1 Fusion)
Altera (Cyclone-II, Stratix-III)
Xilinx (Spartan-3, Virtex-5)

ARM自体は、Altera Cyclone III用のCortex-M1開発キットを作成していますが、DigiKeyからは625ドルと少し高価です。ただし、ARM Cortex-M1 IPのすべてと、開発を行うためのライセンスを取得できます(さらに、生産に入るユーザーには1000枚のボードに対する無料のロイヤリティグラントが付与されます)。

IPを単独で取得するためのいくつかのオプションがあるかもしれません(おそらく彼らはアカデミックプログラムを持っている、誰かが大学のプログラムに言及したが、それはM0のためでした)。その後、開発ボードを個別に購入できます。

アルテラのARM Cortex-M1に関する詳細情報を以下に示します。

アクテルFPGAにARM Cortex-M1を搭載することに関する情報を次に示します。

一方、FPGA上のARM Cortexの他のバージョンにも関心があります。ザイリンクスFPGAにARM Cortex-M0を実装した人からの論文です。


デザインを変更する場合は、「適切な」32ビットマシンを作成してみてください。現在、ARMは32ビット命令を8ビットずつ読み取ります。つまり、PCは命令フェッチごとに4ずつ増加します。
アランキャンベル14年

1

ARMのDesignStartプログラムを使用して、Cortex-M3プロセッサ(および拡張可能なAHB / APBサブシステム)にアクセスできるようになりました。

Evalオプションは、FPGAターゲットを提供します(コアの難読化されたRTL、Verilogのその他すべてでシミュレーションがサポートされます)。これは現在、mbedサポートを備えたARM MPS2 + FPGAを対象としています。

Proバージョン(ライセンスに署名できる企業/大学でのみ利用可能)は製造を許可し、Verilogのプロセッサコアを含みます(これはCortex-M0とCortex-M3の両方をカバーします)。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.