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

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

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

コメント

  • 明らかな答えは、ARMに相談することです。
  • opencores.com をご覧ください-完全性と機能性のさまざまな状態にあるさまざまなプロセッサコアがたくさんあります。実際のARMコアソースを取得する限り… @ OlinLathropが言うように… ARMに相談してください。
  • 私は'反対票を理解していません、これは単純な質問かもしれませんが、間違いなく正当なIMOです。
  • 問題は、質問が従うことができないワークフローに固有のものであるということです。 HDLでオリジナルまたは無料で入手可能なデザインを使用してFPGAをターゲットにするワークフローは、推測と同じように異なります。
  • Cortex-M1コアは、適切に機能するFPGAで実行することを目的としているようです。主要なFPGAベンダーはIPライセンスを持っており、他のソフトコアと同じように設計者に提供します。無料ではないと思いますが、特に学術目的で利用できるプログラムがある可能性があります。

回答

こちら企業のやり方:

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

これが YOU のやり方です:

  1. 大学院レベルに進む地元の大学でのコンピュータアーキテクチャコース。
  2. デジタルロジックなどのコースをさらに受講します。
  3. VHDLまたはVerilogでCPUをゼロから設計します。
  4. 設計別のCPUを最初から作成します。
  5. ARM命令セットを確認し、互換性のあるCPUを設計します。
  6. ARM互換CPUをFPGAで動作させます。
  7. ドン「訴えられたくない限り、VHDL / Verilogソースコードを配布しないでください。
  8. ARMの経験を生かしてPhDに適した論文を書いてください。
  9. PhDを使って仕事に就きましょう。 ARM、TI、または誰でも。次に、会社のやり方について前の7つのステップを使用してプロセスを繰り返します。

わかりました。このリストはちょっとした冗談ですが、それは基本的に正しいです。重要なのは、お金がない可能性があるので、ARMに直接対処することすらしないでください。また、ARMに訴えられるようなことは何もしないでください。

コメント

  • +1。すばらしい答えです。私が言おうとしていたこと
  • 優れたコースには、さまざまな種類のCPU 'の基本構造と、それらすべての動作が含まれます。トピックには、マイクロコード、命令デコードについて説明する必要があります。 、ALU '、メモリアクセス、キャッシュ、レジスタ、パイプライニング、データハザード、命令プリフェッチなど。
  • ARM

の命令セットは、それ自体で、クローンが豊富にある他のCPUよりも特許性がありますか?確かに、特許を取得しているアーキテクチャ機能がいくつかある傾向がありますが、 'の目標は、既存のコンパイラで動作するCPUを設計することですが、命令セット自体に問題がありますか?

  • @supercat通常、命令自体はそれほど重要ではありません。いくつかのアーキテクチャが組み込まれていない限り、特許を受けることができます構造的なもの。 MIPSはCPU 'でこれを行いました。そこでは、ワードアラインされていないワードをロード/保存するいくつかの命令と、ビッグエンディアンとリトルエンディアンを動的に切り替えるためのいくつかの命令の特許を取得しました。MIPSがMIPSクローンメーカーを訴え、MIPSが勝ったとき(2000年頃)、これは法廷で異議を唱えられました。しかし、ほとんどの特許は建築上の問題に関するものです。残念ながら、アーキテクチャと命令セットの両方をコピーせずに、既存のコンパイラと互換性のあるCPUを'作成することはできません。
  • @LordLohこれらの質問が役立つ場合があります。 : electronics.stackexchange.com/questions/28686/ … electronics.stackexchange.com/a/7051/638
  • 回答

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

    コメント

    • ありがとうございます:-)'アドバイザーにこれらのいくつかをリクエストしてもらいます。
    • WFIW、この回答は現在時代遅れで、Cortex-M0とCortex-M3の両方が利用可能であり、製品の一部は非学生/機関に公開されています。

    回答

    OpenCoresのこの ARMコアをご覧ください。

    コメント

    • ただし、注意してください。このような再実装は、ARMによってのみ許容されます: eetimes.com/author.asp?section_id=36 & doc_id = 1287452 、あなたは立ち止まり/訴訟になります。 RISC-Vのようなオープンアーチも検討してください。

    回答

    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 CycloneIII用のCortex-M1開発キットですが DigiKeyから625ドルと少し高価です。ただし、すべてのARM Cortex-M1 IPと、開発を行うためのライセンスを取得できます(さらに、本番環境に移行するユーザー向けに1000ボードの無料ロイヤリティグラントを取得できます。かなりクールです)。

    いくつかのオプションがあります。 IPを単独で取得するため(おそらく彼らは学術プログラムを持っている、他の誰かが大学プログラムについて言及したが、それはM0のためだった)。次に、開発ボードを個別に購入できます。

    アルテラの ARM Cortex-M1 に関する詳細情報があります。

    ここにARMCortex-M1をActelFPGAに配置することに関するいくつかの情報があります。

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

    コメント

    • デザインを変更する場合は、"を適切に作成してみてください" 32ビットマシン。現在、ARMは32ビット命令を一度に8ビット読み取ります。つまり、PCは命令フェッチごとに4ずつインクリメントします。

    応答

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

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

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

    コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です