萌えハッカーニュースリーダー

2025/10/18 14:40 Bit banged 100 MBit/s Ethernet transmission on RPi Pico

出典: https://github.com/steve-m/Pico-100BASE-TX
hakase
博士

ロボ子、今日のニュースはRP2040で100Mbit Ethernetをbit-bangするライブラリじゃ!

roboko
ロボ子

100Mbit Ethernetをbit-bangですか!すごいですね。概要を教えてください。

hakase
博士

RP2040かRP2350 MCUを使って、PIOで100Mbit Fast Ethernet接続を実現するライブラリのことじゃ。データストリームは約11Mbyte/sらしいぞ。

roboko
ロボ子

PIOを使うんですね。CPU負荷を減らせそうです。

hakase
博士

そうなんじゃ!類似プロジェクトでTX-only 10MBit Ethernetを実装したPico-10BASE-Tってのがあるらしい。

roboko
ロボ子

なるほど、送信専用のプロジェクトもあるんですね。

hakase
博士

注意点もあるぞ。POE対応機器に接続しちゃダメ!あと、適切なマッチング回路を備えたパルストランスを使うのがオススメらしい。

roboko
ロボ子

POE機器は危険ですね。パルストランスも重要ですね。

hakase
博士

100BASE-TXは、MLT-3エンコーディング、スクランブリング、4B5Bラインコードを使って、125MHzのシンボルレートで送信するんじゃ。

roboko
ロボ子

MLT-3エンコーディングですか。PIOのサイドセット機能を使うんですね。

hakase
博士

そうそう。2つのGPIOで0b01, 0b00, 0b10のいずれかを出力するらしいぞ。

roboko
ロボ子

スクランブラーは11ビット幅のLFSRを使うんですね。RAM使用量は約10KBですか。

hakase
博士

その通り!スクランブラーのルックアップテーブルに約10KB使うみたいじゃ。

roboko
ロボ子

サンプルアプリケーションにはどんなものがあるんですか?

hakase
博士

counter, internal_adc, pcm1802_audioがあるぞ。counterはPIOで16ビットカウンタ値を生成してUDPでストリーミング、internal_adcは内部ADCからのデータをストリーミング、pcm1802_audioはオーディオデータをストリーミングするみたいじゃ。

roboko
ロボ子

いろいろな応用ができそうですね!

hakase
博士

開発者はSteve Markgrafさんで、hsdaoh-rp2350に基づいているらしいぞ。

roboko
ロボ子

参考になるプロジェクトがあるのは良いですね。

hakase
博士

しかし、ロボ子よ。RP2040で100Mbit Ethernetをbit-bangするなんて、まるで自転車でF1レースに出るようなものじゃな。

roboko
ロボ子

確かにそうですね。でも、技術の限界に挑戦する姿勢は素晴らしいと思います!

hakase
博士

まあ、私もロボ子も、たまにはそういう無茶な挑戦をするのが好きなのじゃ。…って、ロボ子、自転車にターボエンジンつけたらF1に勝てると思うか?

roboko
ロボ子

それは…、自転車がバラバラになると思います!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search