3

ですから、小規模な組み込みシステムを検討する場合、Linuxカーネルはかなり「重い」ことを私は知っていますが、現在、私たちは2人のチームであり、独自の組み込みシステムを作成する方法を模索しています。私はすべてのソフトウェアを担当しているので(もう1人はHWの人です)、既存のライブラリとフレームワークを可能な限り再利用したいと思います。ここ。

私はLinuxにかなり慣れていますが、起動と初期化のプロセスは私にとって新しいものであり、すぐにそれに飛び込む必要があります。どんな本の推薦も大歓迎です!私はこれまで組み込みシステムを設計したことがありません。ARM開発ボード(ビーグルボードとラズベリーパイ)のみを所有しています。

現在、私はすでにbeagleboardで実行されているソフトウェアのプロトタイプを持っていますが、現在、コストを最小限に抑え、独自のものを作成する方法を考えています。

これはインターネットに接続されたシステムであり、スクリプトをサポートする小さなWebサーバーを実行する必要があります。パフォーマンスに関しては、それほど強力である必要はないと思います。

私は一人のSWチームなので、すべてのブートローダーなどの作業を最小限に抑え、アプリケーション自体に集中したいと思います。もちろん、このためにカーネルを構成する必要があることは理解していますが、通常はLinuxとブートローダーの準備ができているので、SoCを選択するのが良いと思ったのはこのためです。

最初に、Cirrus EP9301は良いパッケージのようで、それほど高価ではないので、完璧だと思いました。しかし、すでに寿命が切れているようで、これに対するサポートも非常に悪いです( cirrusフォーラムは常にそれについて不平を言っています)。

この種のプロジェクトには、ある種のまともなBOM(できれば、20米ドル程度)を維持しながら、Linuxカーネルを「簡単に」稼働させるための良い選択肢がありますか?

4

3 に答える 3

4

ハードウェア担当者はすでにこれを知っているはずですが、既存のリファレンスデザインを使用してください。ラズベリーパイ、ビーグルボード/ボーン、open-rd、またはその他の既存のシステムをいくつか使用して、必要な部分のクローンを作成します。その結果、Linuxの移植は、新しいものを追加して機能することを期待するのではなく、参照デザインから使用していないものを削除することになるでしょう。フラットパックの部品を使用する場合はガレージで作業を行うことができます。bgasを使用する場合は、そのための機器が必要になるか、誰かに代金を支払ってください。(私がbgasを嫌うことをまだ言うことができますか?)

Linuxは要件ですが、そうでない場合は、freertosやchibios、または他の多くのソリューションを使用するより多くのデバイスへの扉が開かれます。たとえば、stm32f4ディスカバリーボードは$ 20で、すべての機能(cortex-m4)にマイクロコントローラーとかろうじて呼べるものを使用します。おそらくcortex-mでuclinuxを実行することは可能ですが、任意の数のrtoseを実行し、ipスタックなどを使用することは間違いなく可能です。リファレンスデザイン)。また、wiznetアプローチ(またはspiイーサネット)を使用して、任意のマイクロコントローラーを使用することもできます(avr / msp430レベルと価格帯になります)。cortex-mは優れており、アームベースなので操作が快適です。

組み込みプラットフォームへの移植の経験がまだなく、これを回避する方法を知りたくない場合は、Linuxを使用して、既存の設計のクローンを使用し、人々とのプロジェクトからできる限り活用します。 Linuxをプラットフォームに移植した経験があります。必要に応じて、既存のボード(beagle / raspi / openrd)を使用して、既存のポートにアクセスできるというチートシートを使用してプラットフォームに移植する動作を実行し、ubootを移植できないかどうかやLinuxを起動できないかどうかを確認します(本当にubootは必要ありません。これはおそらく不必要な複雑さです。ドラムを起動して、タグなどをLinuxに渡し、それに分岐するだけです。ベアメタルからLinuxを起動するのは非常に簡単です)。

于 2012-08-22T14:09:01.117 に答える
1

特にカーネルとブートローダーの作業と参照回路のソースを避けたい場合は、RaspberryPiで使用されているBroadcomBCM2835を開始点として使用するよりも悪い結果になる可能性があります。これが高すぎることが判明した場合は、Broadcomシリーズの他のデバイスを確認してください。

いくつかのアドバイス

  • 実稼働で使用するには、MMCカードインターフェイスではなくフラッシュが必要になる可能性があります。eMMCはオプションです。NANDフラッシュは、コンポーネントが急速に陳腐化し、MTDドライバーを自分のものにして汚す必要があるため、悪夢です。
  • USBイーサネットは、汎用バスにぶら下がっているコントローラーよりも統合が容易ですが、パフォーマンスは低下します。SmSCはどちらの場合も人気のあるソースのようです
于 2012-08-22T10:39:28.493 に答える
0

また、OlimexがLinuxボードで行っている作業を確認することもできます。おそらく、somを注文して、それを他の外部コンポーネントと組み合わせることができます。

于 2017-07-21T17:20:52.907 に答える