1 ポイント 投稿者 GN⁺ 22 시간 전 | 1件のコメント | WhatsAppで共有
  • ESP32-S31は最大320MHzで動作するデュアルコア32ビットRISC-Vマイクロコントローラで、マルチプロトコル接続と豊富なHMIが求められる高度なIoTアプリケーションを対象とする
  • 接続性は、2.4GHz Wi-Fi 6、IEEE 802.15.4ベースのThread・Zigbee、Bluetooth 5.4 LEとBluetooth Classic、1000Mbps Ethernet MACをあわせて提供する構成
  • システム・メモリは、60 GPIO、MMU、6.86 CoreMark/MHz、512KB SRAM、250MHz 8ビットDDR PSRAM接続、flash・PSRAMへの同時アクセス、高速Octal SPIモード互換の専用SPIインターフェースを備える
  • HMI・オーディオは、DVPカメラ、パラレルRGB/I8080/MOTO6800 LCD、JPEGコーデック・PPA・2D-DMA、最大14チャネルのタッチ、LC3ベースのLE AudioとデュアルI2SのハードウェアBluetoothオーディオ同期を組み合わせた構成
  • セキュリティ・ソフトウェアは、TRNG、RAMベースのPUF、secure boot、flash・PSRAM暗号化、AES/RSA/ECDSA/ECCアクセラレータ、TEE/APMを提供し、ESP-IDF、ESP-Matter、ESP-BLE-AUDIO、ESP-GMF、ESP Private Agentsとの連携が予定されている

概要

  • ESP32-S31は高性能なデュアルコア32ビットRISC-Vマイクロコントローラで、最大320MHzで動作し、包括的なマルチプロトコル接続と豊富なヒューマンマシンインターフェースを必要とする高度なIoTアプリケーションを対象とする
  • 60個のGPIOにより、複数の無線プロトコル、さまざまなディスプレイインターフェース、幅広い周辺機器を統合する複雑な設計に柔軟性を提供する
  • エッジAIや機械学習ワークロードに適しており、ニューラルネットワーク推論、高度な信号処理、コンピュータビジョン、インテリジェントオーディオアプリケーションを、組み込みプラットフォームの効率性の範囲内で扱う方向性となっている

接続性と処理性能

  • 2.4GHz Wi-Fi 6(802.11ax)は、伝送効率の向上と消費電力の削減を目的としており、バッテリー駆動および常時接続デバイスに適した選択肢
  • IEEE 802.15.4はThreadとZigbeeプロトコルを可能にし、Bluetooth 5.4 LEはLE Audio、Direction Finding、Bluetooth Mesh 1.1をサポートする
  • Bluetooth Classic(BR/EDR)は、既存のオーディオ機器や低遅延HMIアプリケーションとの互換性を担い、1000Mbps Ethernet MACは安定した高帯域幅の有線接続を提供する
  • システムはMMUをサポートするデュアルコア32ビットRISC-Vアーキテクチャで、6.86 CoreMark/MHzの処理性能と60個のGPIOを提供する
  • 一方のコアは128ビットデータパスとSIMD命令を備え、高速な並列処理をサポートする
  • メモリは、512KB SRAM、250MHz 8ビットDDR PSRAM接続、flashとPSRAMへの同時アクセス、高速Octal SPIモード互換の専用SPIインターフェースによる外部メモリ拡張で構成される

HMIとオーディオ

  • カメラ入力は8〜16ビットDVPカメラインターフェースを使用し、LCDは8〜24ビットのパラレルRGB、I8080、MOTO6800をサポートする
  • RGB565、YUV422、YUV420、YUV411間の変換をサポートし、JPEGコーデック、PPA、2D-DMAハードウェアアクセラレータによって画像処理とディスプレイ更新の効率を高める
  • 最大14個の静電容量式タッチ検出チャネルを提供し、スマートディスプレイ、ビデオドアベル、マルチメディアパネル、タッチ・ビジュアル・オーディオ統合アプリケーションに適した構成
  • Bluetooth 5.4 LE Audioは、LC3コーデックとマルチストリームオーディオに基づく高品質・低消費電力のストリーミングをサポートする
  • Bluetooth Classicは、ヘッドホン、スピーカー、自動車システムとの互換性を担い、デュアルI2SコントローラはハードウェアレベルのBluetoothオーディオ同期によって高精度なタイミングと低遅延を提供する

セキュリティ

  • ハードウェアベースのセキュリティ機能は、厳格な業界要件を持つアプリケーションを対象としている
  • TRNGとRAMベースのPUF機能を統合し、鍵生成とデバイスセキュリティの基盤を提供する
  • secure boot、flashおよびPSRAM暗号化、AES-128/256・RSA・ECDSA・ECC暗号アクセラレータをサポートする
  • ECDSAベースのデジタル署名周辺回路は、ソフトウェアアクセスから秘密鍵を保護し、TEEとAPMは安全なマルチアプリケーション展開のためのソフトウェア分離を可能にする

ソフトウェアと製品リソース

  • ESP32-S31は、EspressifのオープンソースIoT開発フレームワーク ESP-IDF、Matterデバイス向けの ESP-Matter、ESP-BLE-AUDIO、マルチメディアアプリケーション向けの ESP-GMF を通じてサポートされる予定
  • ESP Private Agents プラットフォームおよび汎用LLMと直接連携し、AIエージェントを実行したり相互作用したりするクライアントデバイスを構築できる方向性
  • 製品リソースには、ESP32-S31 SoC、ESP32-S31-WROOM-3モジュール、ESP32-S31-Korvo-1およびESP32-S31-Function-Coreboard-1開発キットが挙げられている

1件のコメント

 
Hacker Newsのコメント
  • Espressif は本当に勢いがあって、CPU に SIMD 命令 まで入っている
    組み込みシステムにおいて RISC-V コアには大きな意味がある。というのも、SoC 向けのコンパイルが、半分壊れた独占的なツールチェーンや SDK をダウンロードする作業ではなく、rustup target add riscv32imac-unknown-none-elf の1行にかなり近づいたからだ
    モダンな Rust 組み込み開発を始めるなら、https://kerkour.com/introduction-to-embedded-development-wit...https://kerkour.com/rust-esp32-pentest を見るとよい

    • SIMD 命令はあるようだが、ハードウェア浮動小数点はなさそうだ。CORDIC モジュールの説明も固定小数点演算を示しており、浮動小数点への言及がないこととも一致する
      CAN-FD と Motor PWM モジュールは歓迎だが、ADC 変換時間がどこにも見当たらない。モーター制御では 1µs 未満の変換時間 が必要で、自分は約15年間それを先送りにして、去年ようやく固定小数点から浮動小数点に移行した
    • それでも Wi-Fi、イーサネット、USB のような IP ブロック が必要になった瞬間に、また振り出しに戻る
    • アーキテクチャ対象名の imac が何を意味するのか気になる
    • ESP32 で想像していたプロジェクトを本当に全部作れるように、ハードウェアプロジェクト向けの Claude Code のようなものが必要だ
      3D プリント、部品の自動調達、カスタムソフトウェアの作成、もしかするとロボットアームまで含めて、机の上のきれいな箱に郵便受けのように部品を入れるだけで済む物がほしい。PROFIT
    • こういうデバイスで Rust を使ってみようと思ったことはあるが、これまで見た RISC-V 系は ARM と RISC-V が混在しているように見えて奇妙だった
  • 何でもかんでも ESP32 と呼ぶのはやめてほしい。ESP8266 と ESP8285 から ESP32 に移行したのは理にかなっていたが、今では機能もアーキテクチャも異なるバージョンが10種以上ある
    Raspberry Pi Pico(RP2030/RP2350)のスレッドでも、単一基板コンピュータのほうと混同する人が毎回のように現れるのと似ている
    ESP32 と聞くと、今でも普通は ESP32 Classic、たいていは WROOM-32E をまず思い浮かべる

    • マイクロコントローラ製品ファミリがどう構成されているかを根本的に誤解しているように見える
      機能の違う「バージョン」が10個以上あるわけではない。バージョンという言い方には、時間とともに漸進的に発展していくものを、モジュールを付け外しして台無しにしているというニュアンスが強い
      実際には、同じ SDK、設計思想、価格体系、サプライチェーン、サポートチャネルを共有する 4〜5本の製品ライン があるということだ。製品を設計するエンジニアリングチームにとって、それぞれが非常に重要だ。趣味で学ぶ人だけの話ではないが、そうした人たちへのサポートもかなりしっかりしていると思う
      そのラインの中には実際にバージョンがある。たとえば現在は主に S、C、H、P ラインがあり、ESP32-S2 は新規設計にはもはや推奨されず、ESP32-S3 を使うべきだ
      結局これを理解する基準は、「ESP32 という名前の付いたチップを PCB に載せて、同じ SDK でプログラミングできるか」だ
      RP2XXX マイクロコントローラシリーズも同じだ。マイクロコントローラと単一基板コンピュータの違いを混同するなら、その場に向いていないのかもしれない
      もっと大きく言えば、こういうものに出会ったときに「自分はすでに理解していて他人が間違っている」という前提から始めないほうが、より早く学べる。心を開いてたくさん質問するほうがよく、今は独学者にとって黄金時代だが、それは謙虚な好奇心を長く持ち続ける人にだけ当てはまる
    • STM32、EFM32、GD32 などと同じ 命名体系
    • ESP-IDF 互換性 を示す名前だ
    • 他の製品ファミリも似たようなものだ。STM32 があり、その下には入門向けの STM32C0 から STM32MP2 のような完全な Linux チップまで、その中間に多くの選択肢がある
    • 面白いことに、Pico という開発ボードとそのチップである RP2040 を今まさに混同していた
  • WLED で趣味の LED アートプロジェクト を作っているが、WLED は ESP32 プラットフォーム上にのみ構築されている。本当に楽しくて、こうした小さなボードの性能とオープンソースコミュニティには今でも驚かされる
    お気に入りのコントローラプラットフォームは QuinLED ラインだ。電源分配、電圧レギュレータ、太い銅配線、設定可能なデータライン抵抗、スマート補助ハードウェアのサポートがあり、コントローラ1台あたり30〜50ドル程度と手頃だ。quinled.info
    <https://kno.wled.ge/> は WLED のホームページで、個人的には史上最も気の利いた URL の1つだと思う

    • どんなハードウェアを使っているのか気になる。どの LED やマトリクスを買っているのか、QuinLED コントローラはどのモデルを使っているのか知りたい。最近 HUB75 ディスプレイでかなり楽しんでいるので、他の選択肢やプロジェクトも見てみたい
    • LED プロジェクトはよくやるが、単に WS2812 を使っている。コントローラが必要な理由は何だろう。高輝度だからだろうか?
    • cr.yp.to/ もかなり良い URL で、しかもずっと昔からある
  • データシートを見ると BitScrambler ペリフェラル があり、柔軟性の面で Raspberry Pi Pico の PIO にかなり似ているように見える

    ビット単位の演算は CPU をかなり消費しがちであり、DMA はもともとそうした処理を CPU からオフロードするために設計されているため、ESP32-S31 は BitScrambler という専用ペリフェラルを2つ統合しています。これらのモジュールは、メモリとペリフェラルの間の転送中にデータ形式を変換するよう設計されています。1つの BitScrambler はメモリからペリフェラルへ、またはメモリからメモリへの転送を処理し、もう1つはペリフェラルからメモリへの転送専用です。BitScrambler は前述のビット単位演算を処理できますが、実際にはさらに高度な変換も実行できる、柔軟でプログラム可能なステートマシンです。
    Pi Pico の PIO と同じくらい便利であることを期待している

  • 仕様は良さそうで、好みのEspressifフォームファクタであるWROOMモジュールや小型の開発ボードで出てくるまでどれくらいかかるのか気になる。価格も気になるが、これまでは似た価格帯で世代が進むごとにずっと多くのものを提供してきたので印象的だった
    比較的高速なRISC-VコアとSIMDに期待するなら、すでに入手可能なP4も見る価値がある。クロックはやや速いが、無線はない: https://products.espressif.com/#/product-comparison?names=ES...
    DSP機能と内蔵画像処理を活用して大量のピクセルデータを処理する面白い作業例もあり、S31でも同様に動きそうだ: https://www.reddit.com/r/WLED/comments/1ry2jd7/wledmmp4_with...

    • 価格が比較的近いまま維持されるなら、コストパフォーマンスはものすごいことになりそう。古いESP32で最適化の問題のせいで先送りしていた別のサイドプロジェクトに戻るために、今やっているサイドプロジェクトをまた先送りしないといけないかもしれない
    • すでにESP32-S31-WROOM-3と、それをベースにした開発ボード2種、ESP32-S31-Function-CoreBoard-1 と ESP32-S31-Korvo-1 が発売されている。どちらもEspressif公式のAliexpressストアで入手できる
  • 2か月前の発表時の以前の議論: https://news.ycombinator.com/item?id=47561678

  • 同じ部品にWi‑Fiと有線イーサネットが再び入ったのは良い
    ただし、P4デュアルコアRISC-VラインにあったMIPIサポートは失われた

    • 両方とも同じチップに入っていたら本当に良かったのに
    • こういうチップで有線イーサネットが技術的にどう動作するのか気になる。専用GPIOピンを8本使うような形なのだろうか?
  • こういう小さなデバイスは本当に面白い。いつか始めたいサイドプロジェクトが1つあって、SoCを32個、あるいはコア数がもっと多い少数のSoCを配置し、PCB配線でイーサネットハブに接続したうえで、複数のボードをつなげられるように1つ以上の上位ネットワークポートを残すというものだ
    各コアには90度LEDホルダーを通して、ボード前面の赤いLEDを点灯させるつもりだ
    そういうボード16枚を束ねて、小さなConnection Machineキューブを作ってみたい
    ただ、非常に非力なサーバー512台のクラスターを何に使うのかは自分でもよく分からない。たぶん、不合理なほど多くのノードを管理する方法を学ぶためだろう

    • ずっとn-cubeマシンを作ってみたかった。個人的にはRP2350のほうが好みで、チップ間のPIO↔PIOで何ができるかを考えるのにもかなり興味がある
      中心的な目標は、使いやすさと性能のバランスを取りながら、これをどうプログラミングするかを見つけることだ
      PSRAM結合部のようなアイデアも良い。すべてのコアがPSRAMを1つずつ持ちつつ、隣同士で所有権を交換できるようにするのだ
      ESP32でやった場合、無線周波数帯域で何が起きるのかも気になっていた。狭い空間でデバイス512台が互いに叫び合うようなものだから
  • ESP32ライン全体でRISC-V採用が増えているのは歓迎したい。以前のXtensaベース部品も悪くなかったが、RISC-Vならツール、コンパイラ対応、長期的なエコシステムがよりすっきりしたものになるはずだ

  • 楽器を少しかじるので、オーディオ出力に関心がある
    マイクロコントローラでのBluetoothオーディオ出力は、今どんな状況なのだろう。低遅延かつ高品質な出力は可能だろうか?

    • Bluetoothオーディオの低遅延はコーデック次第で、最良のコーデックはたいてい独自仕様だ
      こういうハードウェアで無線を使いつつ本気で遅延を減らしたいなら、ESP32をもう1つ使って、両者の間で直接ビットストリームを送る方法がある
    • Espressif製品はBluetoothオーディオに理想的ではない。Bluetoothオーディオでまだ主流のClassic Bluetooth対応が安定しておらず、最近のモデルでは完全に省かれていることも多い
    • なぜ無線を使いたいのか少し気になる。自分の知る限りBluetoothオーディオはひどいので、音楽用途には使いたくない。素直に有線にしたほうがよく、無線空間はすでに十分混み合っている
    • 本格的な音楽用途では、オーディオ再生からMIDI入力までWindowsのBluetoothが惨事だという意見には同意したい
      数年前、高級WindowsノートPCで移動中の趣味用DAW作曲環境を組もうとした。ノートPCからヘッドホンやイヤホンへの実際のBTオーディオ遅延だけでも使いものにならず、別途BT MIDIコントローラ入力の遅延も使いものにならなかった。両方を重ねると総遅延は笑ってしまうほどだった
      当時この問題は広く知られ、大いに嘆かれていた。一部の技術ブログやMSFTブログを含め、ドライバ、ファームウェア、シリコンなどスタックのあらゆる層に問題があり、エンドツーエンドの混乱を解消する作業が進行中だと述べていた
      オンラインで言及されていた実用的なWindows向け解決策は、特定の非Bluetooth無線デバイスを使うことだけだった。ノートPCに専用USBドングルを挿し、特定の1機種を選ぶか、すべてのデバイスに対応する受信ドングルを選ぶ必要があるのでは、ただケーブルを使うより魅力が薄い
      その後も年に1回くらいは調べ直しているが、意味のある進展の報告はまだ見ておらず、進行中の取り組みに関する議論もむしろ減っている。非常にがっかりだ。BTオーディオ品質の面でも大きく改善しているようには見えない
      音質低下を避けるには、独自BTコーデックに対応した特定のデバイスを選ぶか、非BT無線ドングルのハードウェアに切り替える必要がある。音質改善の話自体はあるものの、BTオーディオ標準でより良い最低限の音質が義務化される兆しはまだはっきりしない
      Windows構成における標準BTデバイスのデフォルト遅延や品質、入力・出力のいずれかの改善について何か情報があるなら、ぜひ聞きたい