10

OSなしで使えるTCP/IPスタックを探しています。私たちの顧客は割り込みに「嫌悪感」を持っており、私たちが構築している組み込みボード上に実際の OS を望んでいません。50 ~ 100 MHz の Arm しか使用しないため、できるだけ多くの機能を FPGA に移行することが望ましいです。そして、GPL ライセンスのものは、このクライアントには受け入れられないと確信しています。(それに関連する法的な泥沼のため。彼らは、ソフトウェアが完成したら、ソフトウェアに対する完全な無制限の権利を期待しています。)

4

7 に答える 7

18

uIP (マイクロ IP) とlwIP (軽量 IP) はどちらも考慮に値する候補です。両方のスタックの元の開発者である Adam Dunkel 氏によると、2 つの主な違いの 1 つは、「lwIP は uIP よりも大きいが、スループットが優れている」ことです。どちらのスタックも変更された BSD ライセンスを採用しており、商用製品で使用されています。

于 2010-07-12T20:57:40.223 に答える
2

これは必ずしもあなたが望むようにあなたの質問に答えるわけではありません(私のdiatribeはおそらく長すぎるのでコメントセクションにはありません)。しかし、それでも役立つかもしれないと思います。

いくつかのポイント。割り込みのメリットとコストについてクライアントを再教育する必要があると思います。割り込みはデバイス制御を処理する非常に効率的な方法であり、コーディングに細心の注意を払わない限り、パフォーマンスを割り込み駆動型でないコードと一致させることはほとんどありません。

第二に、GPLソフトウェアを使用すると、ソフトウェアに対する完全な無制限の権利与えられ、他の人を制限することはできなくなります。もしあなたが彼らが他人を制限たいのなら、私は彼らが他人の労働を何の恩返しもなしに使う権利を持っているべきだと彼らが考える理由を尋ねるでしょう。

GPLよりも寛容なライセンスの下でTCPスタックを見つけることができるかもしれません(彼らがそれを効果的にクローズソースすることを可能にします)。FPGA用のCコンパイラを使用している場合は、簡単な説明から非常に寛容なライセンスを持つuIPを調べることができます。

Copyright(c)2001-2006、AdamDunkelsおよびSwedishInstitute of Computer Science

全著作権所有。

次の条件が満たされている場合、変更の有無にかかわらず、ソース形式およびバイナリ形式での再配布および使用が許可されます。

  1. ソースコードの再配布では、上記の著作権表示、この条件のリスト、および次の免責事項を保持する必要があります。

  2. バイナリ形式での再配布では、上記の著作権表示、この条件のリスト、および以下の免責事項を、配布に付属するドキュメントやその他の資料に複製する必要があります。

  3. 著者の名前は、書面による事前の特別な許可なしに、このソフトウェアから派生した製品を推奨または宣伝するために使用することはできません。

このソフトウェアは、作者によって「現状有姿」で提供され、商品性および特定目的への適合性の黙示の保証を含むがこれに限定されない、明示または黙示の保証は否認されます。いかなる場合も、作者は、直接的、間接的、偶発的、特別、例示的、または結果的な損害(代替の商品またはサービスの調達、使用、データ、または利益の損失、または事業の中断を含むがこれらに限定されない)に対して責任を負わないものとします。 )ただし、契約、無過失責任、または不法行為(過失またはその他を含む)にかかわらず、このような損害の可能性について知らされていたとしても、このソフトウェアの使用から生じた責任の理論。

それだけです。「GPLの下でリリースする必要があります」またはその他のウイルス条項はありません。唯一の帰属は、著作権表示が含まれていることです。

于 2010-07-12T13:26:23.657 に答える
1

現在、OS なしで 50MHz の ARM Cortex-M3 で lwIP ライブラリを使用しています。これは、Luminary Micro (現在は TI) の Stellaris シリアルからイーサネットへのリファレンス デザイン キット ( http://www.luminarymicro.com/products/rdk-s2e.html )に基づくプロジェクトです。

このキットにはソース コードと回路図が含まれており、一部の製品を開発するための強固な基盤を提供してくれます。

私は TI や Luminary とは何の関係もありませんが、非常に満足している顧客です。

于 2010-07-16T07:34:23.853 に答える
1

Texas Instruments 16 ビット DSP の「ベア メタル」にイーサネット + TCP スタックを作成しました。バイト幅のアドレス指定がないことは、かなり厄介でした。一部のデータ構造は、ワードごとに 2 バイトのデータをパックして格納しますが、他のデータ構造はワードごとに 1 バイトを格納します (C コンパイラでは、'char' と 'int' は両方とも符号付き 16 ビット型です)。イーサネットまたは TCP コードはいずれも割り込みを使用しません。両方とも、通常は毎秒約 100 回循環する「できるだけ頻繁に呼び出す」ルーチンで処理されます。パフォーマンスはそれほど高くありませんが、一般的には十分です。おそらく、私のスタックの最大の弱点は、順不同のパケットを処理しないことです (順不同で到着したパケットは無視されます。期待されるパケットが到着した後に再送信されることを願っています)。あなたが求めていることは確かに実行可能ですが、そうではありません」

ところで、私の TCP スタックはポート 23 でかなり興味深い「エコー サーバー」をサポートしています。任意の数の telnet クライアントがポート 23 に接続でき、クライアントが送信するデータは何でも返されます。このサーバーはデータをエコーするだけですが、ドキュメントなどを完全にステートレスに送信するように適応させることができます。誰もそのようなものを見たことがありますか?

于 2011-02-01T17:19:38.033 に答える
0

Simulink Embedded Coder を使用して実装できます。その後、必要に応じて、生成されたコードを変更できます。(もちろん、上記の解決策のいずれかなどの別のオプションがある場合はお勧めしません。)

于 2015-08-10T15:24:20.970 に答える
0

Freescale のFNETには、MCU 向けのかなり新しいオープン ソース TCP/IP スタックがあることに注意してください。これは LGPL/GPLv3 ライセンスであり、他の BSD ライセンスのものとは異なります。そのため、元の投稿者のプロジェクトには適していない可能性がありますが、他のユーザーには関連している可能性があります。現在、Kinetis (Cortex-M4) がサポートされているプラ​​ットフォームとしていくつかの ColdFire パーツと共にリストされています。

于 2012-02-29T05:31:16.787 に答える
0

さて、私は FNET を調べた結果、この投稿に出くわしました。古いものですが、回答がありません。2 セントを追加します... Micromonitor は、スタンドアロンで実行すると TFTP クライアント/サーバーをサポートするブート モニターです。 、DHCP クライアント、ping クライアント/サーバー、およびシンプルな UDP ベースのコマンド ライン インターフェイスです。これには、ブートモニターが使用する基盤となるイーサネット ドライバーに LWIP を直接フックできるデモ アプリケーションが含まれています。これにより、デモをほとんど変更することなく、任意のマイクロモニター ポートで使用できます。

割り込みもGPLもありません...ただのポーリングループです。サンプル アプリケーションには、いくつかの異なるフックアップ (LWIP、LUA、PICO-C、BWBASIC など) が含まれています。デモには、HTTP サーバー (uMon の TFS ファイル システムにフックするため、html 基本ファイルを作成するだけです)、UDP ベースのコマンド サーバー、telnet クライアント、および http-get クライアントが含まれています。ほとんどのデモは、LWIP に付属するデモの拡張です。

それをチェックしてください... http://www.umonfw.com

于 2013-04-17T13:50:57.583 に答える