docs: 更新 PRD 至 v2.2 — 新增 Kneron 硬體規格與路線圖

- 新增 B3.7 硬體支援路線圖(Kneron Dongle → Arduino/KNEO Pi → 開放)
- 新增 B3.8 硬體技術規格(KL720/KL730 晶片規格、Kneron PLUS SDK、Toolchain、KneronDFUT)
- 新增 A6.3 TOP 3 痛點深度解析(部署後監控、模型漂移偵測、主動學習閉環)
- 更新產品定位為 Kneron 晶片深度整合策略
- 更新 B4.3 燒錄協定為具體 Kneron PLUS SDK API
- 新增 C3 Kneron 硬體與 SDK 參考來源

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
jim800121chen 2026-02-13 01:06:11 +08:00
parent b34c23d184
commit 1902cd0f84

View File

@ -8,7 +8,7 @@
|------|------|
| 文件名稱 | 邊緣 AI 開發平台 PRD |
| 產品名稱 | (暫未定名,以下稱「本平台」) |
| 版本 | v2.0 |
| 版本 | v2.2 |
| 日期 | 2026-02-11 |
| 狀態 | 初稿 |
@ -31,6 +31,8 @@
- [B1. 產品定位與目標](#b1-產品定位與目標)
- [B2. MVP 核心流程設計](#b2-mvp-核心流程設計)
- [B3. 系統架構設計](#b3-系統架構設計)
- [B3.7 硬體支援路線圖](#b37-硬體支援路線圖)
- [B3.8 硬體技術規格](#b38-硬體技術規格)
- [B4. MVP 功能規格](#b4-mvp-功能規格)
- [B5. 功能路線圖Post-MVP](#b5-功能路線圖post-mvp)
- [B6. 商業模式與策略](#b6-商業模式與策略)
@ -609,7 +611,7 @@ UI 標示為「Connect using WebUSB」但實際使用 **Web Serial API**
> **三步驟將預訓練 AI 模型部署到任何邊緣裝置,並即時驗證推論效果。**
- **簡單**:選模型 → 燒錄 → 看結果,三步完成
- **開放**不鎖定特定硬體廠商,支援多種開發板
- **開放**初期以 Kneron 晶片為核心,未來擴展至多廠商硬體
- **即時**:燒錄完成後立即在裝置上執行推論,結果即時回傳前端顯示
- **本地化**:透過本地端 Backend Server 操作裝置,穩定、安全、不受瀏覽器限制
@ -618,7 +620,7 @@ UI 標示為「Connect using WebUSB」但實際使用 **Web Serial API**
| 策略 | 對比競品的差異 |
|------|--------------|
| **本地端 Server 架構** | SenseCraft 受 Web Serial API 瀏覽器限制EI daemon 安裝痛苦。本平台使用單一執行檔,零依賴安裝 |
| **硬體中立** | SenseCraft 鎖定 Seeed 硬體。本平台設計裝置通訊抽象層,插件式擴充 |
| **Kneron 晶片深度整合 → 逐步開放** | MVP 以 Kneron Dongle 為首要支援硬體,深度整合 Kneron 工具鏈;透過抽象層設計,未來擴展至其他廠商晶片 |
| **預訓練模型優先** | EI 強調從零訓練的完整流程。本平台 MVP 聚焦「選模型→部署→驗證」的最短路徑 |
| **即時推論視覺化** | 將裝置端推論結果即時串流到前端,提供直觀的效果驗證體驗 |
@ -757,7 +759,7 @@ UI 標示為「Connect using WebUSB」但實際使用 **Web Serial API**
### B2.5 使用者旅程圖
```
使用者情境:開發者想在 ESP32-S3 上部署一個人臉偵測模型
使用者情境:開發者想用 Kneron Dongle 部署一個人臉偵測模型
時間軸 ──────────────────────────────────────────────────►
@ -767,14 +769,14 @@ UI 標示為「Connect using WebUSB」但實際使用 **Web Serial API**
本地 Server ───── ───── ─────
│ │ │ │
▼ ▼ ▼ ▼
執行安裝檔 開啟瀏覽器 裝置自動偵測 結果即時顯示
執行安裝檔 開啟瀏覽器 Dongle 自動偵測 結果即時顯示
(1 分鐘) 瀏覽模型庫 點擊「燒錄」 「偵測到人臉
篩選:偵測 進度 10%→100% 信心 92%」
啟動 Server 選:人臉偵測 裝置重啟
啟動 Server 選:人臉偵測 裝置就緒
(自動) 查看詳情+相容性 調整 Threshold
點「部署」 查看 FPS
◄── 約 1 分鐘 ──► ◄── 約 1 分鐘 ──► ◄── 約 2 分鐘 ──► ◄── 持續 ──►
◄── 約 1 分鐘 ──► ◄── 約 1 分鐘 ──► ◄── 約 1 分鐘 ──► ◄── 持續 ──►
情緒曲線:
😐 安裝 😊 找到模型 😊 一鍵搞定 🎉 成功了!
@ -871,13 +873,14 @@ ws://localhost:PORT/ws/devices/events → 裝置插拔事件
┌─────────────┼─────────────┐
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ Driver A │ │ Driver B │ │ Driver C │
│ ESP32 │ │ Grove AI │ │ (擴充) │
│ │ │ V2 │ │ │
│ esptool │ │ Xmodem │ │ ... │
│ 115200 │ │ 921600 │ │ │
└─────────┘ └─────────┘ └─────────┘
┌───────────┐ ┌───────────┐ ┌─────────┐
│ Driver A │ │ Driver B │ │ Driver C │
│ Kneron │ │ Kneron │ │ (未來 │
│ Dongle │ │ Arduino / │ │ 擴充) │
│ (MVP) │ │ KNEO Pi │ │ │
│ │ │ (Phase 1) │ │ 非 Kneron│
│ Kneron SDK │ │ Kneron SDK │ │ 晶片 │
└───────────┘ └───────────┘ └─────────┘
```
每個 Driver 實作統一介面:
@ -917,6 +920,120 @@ interface DeviceDriver {
| 離線操作 | ✅ 完全離線 | ✅ 相同能力 |
| 高鮑率穩定 | ✅ 原生串列埠 | ✅ 相同能力 |
### B3.7 硬體支援路線圖
```
MVP Phase 1 Phase 2+
────────────── ────────────── ──────────────
Kneron Dongle Arduino 開發板 非 Kneron 晶片
(USB AI 加速棒) (Kneron 晶片) ──────────────
────────────── ● ESP32-S3
● 首要支援硬體 ● KNEO Pi ● Arduino (非 Kneron)
● USB 連接 ● 其他 Kneron ● NVIDIA Jetson
● Kneron NPU 推論 晶片開發板 ● 其他廠商
● Kneron SDK 整合 ● 透過 Driver 插件擴充
```
**分階段策略:**
| 階段 | 支援硬體 | 說明 |
|------|---------|------|
| **MVP** | Kneron Dongle | USB AI 推論加速棒,插上即用。深度整合 Kneron SDK實現模型部署與即時推論 |
| **Phase 1** | Arduino 開發板Kneron 晶片)/ KNEO Pi | 擴展到同為 Kneron 晶片的其他載體,共用 Kneron SDK 工具鏈 |
| **Phase 2+** | 不限於 Kneron 晶片 | 透過 Driver 抽象層擴充至 ESP32、NVIDIA Jetson 等其他廠商硬體 |
**設計原則:** MVP 階段深度整合 Kneron 生態,但 Driver 抽象層從第一天就設計好,確保未來擴展硬體支援時不需重構核心架構。
### B3.8 硬體技術規格
#### Kneron KL720 USB DongleMVP 目標硬體)
| 規格項目 | 內容 |
|---------|------|
| **晶片型號** | Kneron KL720 AI SoC |
| **NPU** | 700 MHz1.4 TOPSINT8能效 0.9 TOPS/W |
| **DSP** | Cadence Tensilica VP6 DSP @ 500 MHzNPU 協處理器) |
| **CPU** | Arm Cortex-M4 @ 400 MHz系統控制 |
| **記憶體** | 128 MB LPDDR4搭配 Winbond 1Gb LPDDR3 DRAM die |
| **儲存** | SPI Flash + NAND Flash容量依模組配置 |
| **USB 介面** | USB 3.0Device mode+ USB 2.0;主機端透過 USB 連接 |
| **其他介面** | MIPI-CSI-2攝影機輸入、SPI、SDIO、UART、I2C、GPIO |
| **影像輸入** | 支援 MIPI-CSI 攝影機模組(晶片層級) |
| **功耗** | 約 1.2 WNPU 全速推論時) |
| **主機通訊** | 透過 libusb USB bulk transfer |
| **韌體架構** | 雙核 RTOSSCPU系統控制+ NCPUNPU 推論) |
| **韌體更新** | KneronDFUT 工具(支援 SCPU/NCPU firmware + NEF 模型燒錄) |
| **模型格式** | Kneron NEFNeural Efficient Format— 經量化與編譯的專用格式 |
| **外觀** | USB 隨身碟形式,即插即用 |
#### Kneron KL730 / KNEO PiPhase 1 目標硬體)
| 規格項目 | 內容 |
|---------|------|
| **晶片型號** | Kneron KL730 AI SoC |
| **NPU** | 第三代 KDP 系列可重配置 NPU最高 8 TOPS有效算力 4 TOPS |
| **CPU** | 四核 Arm Cortex-A55時脈待查 |
| **記憶體** | 待查(高於 KL720 的 128 MB |
| **儲存** | 4 Gb SPI-NAND Flash + micro-SD 插槽 |
| **USB 介面** | USB 2.0 + USB 3.0 |
| **網路** | Ethernet乙太網路 |
| **GPIO** | 40-pinRaspberry Pi 相容排針) |
| **攝影機** | MIPI-CSI支援最高 8MP @ 90fps 輸入、4K 60fps 處理 |
| **功耗** | 低功耗設計(具體數值待查) |
| **定位** | 開發板形式,類似 Raspberry Pi 的邊緣 AI 開發平台 |
| **SDK** | 與 KL720 共用 Kneron PLUS SDK |
#### 兩代晶片比較
| 比較項目 | KL720MVP | KL730Phase 1 |
|---------|-------------|-----------------|
| NPU 算力 | 1.4 TOPS | 8 TOPS約 5.7 倍) |
| CPU | Arm Cortex-M4微控制器 | Arm Cortex-A55 四核(應用處理器) |
| 影像處理 | 基本 | 4K 60fps、8MP 90fps |
| 連接方式 | USBDongle 形式) | USB + Ethernet + GPIO 40-pin |
| SDK 相容 | Kneron PLUS SDK | Kneron PLUS SDK相容 |
| 使用場景 | 筆電/桌機外接 AI 推論 | 獨立邊緣 AI 開發平台 |
#### Kneron 軟體工具鏈
**Kneron PLUS SDKPlatform Libraries Unified Software**
| 項目 | 說明 |
|------|------|
| **語言** | C/C++ 與 Python API |
| **通訊協定** | USB bulk transfer基於 libusb |
| **核心 API** | `kp_load_firmware()` — 上傳韌體SCPU/NCPU到裝置 |
| | `kp_load_model()` / `kp_load_model_from_file()` — 上傳 NEF 模型到裝置 |
| | `kp_load_model_from_flash()` — 從裝置 Flash 載入模型 |
| | `kp_get_model_info()` — 取得模型資訊CRC、Model ID |
| | `kp_get_system_info()` — 取得系統資訊KN number、韌體版本 |
| **加密支援** | 支援上傳加密 NEF 模型 |
| **安裝需求** | Windows: Git for Windows SDK + libusb + cmake + ZadigUSB driver |
| | Linux: 需配置 USB 權限udev rules |
| **限制** | 不支援 SELinux 環境 |
**Kneron Toolchain模型轉換工具**
| 項目 | 說明 |
|------|------|
| **工具名稱** | `ktc`Kneron Toolchain Compiler |
| **轉換流程** | ONNX → BIE量化中間格式→ NEF部署格式 |
| **支援格式** | ONNX opset 11 / 12 |
| **功能** | 模型量化INT8、模型編譯、模型最佳化 |
| **API** | Python API`ktc` 套件) |
**KneronDFUTDevice Firmware Update Tool**
| 項目 | 說明 |
|------|------|
| **功能** | 更新裝置韌體SCPU firmware + NCPU firmware及 NEF 模型 |
| **運作方式** | 透過 USB 將 `fw_scpu.bin` / `fw_ncpu.bin` 寫入裝置 Flash |
| **開機流程** | IPLROM→ SPLFlash→ SCPU firmware → NCPU firmware |
| **平台支援** | Windows、Linux含 Raspberry Pi OS |
| **替代方案** | 可透過 Kneron PLUS SDK API 程式化執行相同操作 |
> **MVP 開發影響:** 本地端 Backend Server 需整合 Kneron PLUS SDK透過 CGo 呼叫 C API 或獨立 Python subprocess實現 USB 裝置偵測、NEF 模型上傳、韌體更新、推論啟動等核心操作。
---
## B4. MVP 功能規格
@ -926,10 +1043,10 @@ interface DeviceDriver {
| 項目 | 規格 |
|------|------|
| **概述** | 提供可瀏覽、搜尋、篩選的預訓練模型庫 |
| **模型來源** | 初期可整合公開模型(如 TFLite Model Zoo、Seeed 公開模型等) |
| **模型來源** | 初期以 Kneron 模型庫(支援 Kneron NPU 的預訓練模型)為主,未來擴展其他來源 |
| **模型卡片資訊** | 名稱、縮圖、任務類型、支援硬體、模型大小、準確度、描述 |
| **篩選維度** | 任務類型 / 硬體相容性 / 模型大小 / 關鍵字搜尋 |
| **模型格式** | 依裝置而異TFLite / ONNX / 專用格式) |
| **模型格式** | Kneron NEFKneron 專用格式)為主;未來擴展支援 ONNX / TFLite 等 |
| **儲存** | 模型中繼資料可存雲端;模型檔下載到本地 Server 快取 |
### B4.2 F2 — 裝置連線與管理
@ -948,8 +1065,8 @@ interface DeviceDriver {
| 項目 | 規格 |
|------|------|
| **概述** | 將選定模型燒錄到目標裝置 |
| **燒錄協定** | 依裝置 Driver 而定Xmodem / esptool / 其他) |
| **燒錄流程** | 自動進入 bootloader → 傳輸 binary → 驗證 → 重啟 |
| **燒錄協定** | MVP 使用 Kneron PLUS SDK`kp_load_model()` 上傳 NEF 模型、`kp_load_firmware()` 更新韌體;未來依 Driver 擴充 |
| **燒錄流程** | USB 連線 → `kp_load_model_from_file(nef_path)` 傳輸 NEF → 驗證 CRC → 裝置自動重啟 |
| **進度回報** | WebSocket 即時回報百分比,前端顯示進度條 |
| **錯誤處理** | 逾時重試、傳輸錯誤偵測、使用者可讀的錯誤訊息 |
| **安全性** | 燒錄前確認模型與裝置相容;提示使用者確認覆寫 |
@ -1067,7 +1184,7 @@ Phase 3 — 進階功能(長期差異化)
| 維度 | 策略 |
|------|------|
| **硬體** | 硬體中立,透過 Driver 插件支援多廠商。初期聚焦社群主流板ESP32-S3、Grove AI V2 等) |
| **硬體** | MVP 以 Kneron Dongle 為核心 → Phase 1 擴展至 Kneron Arduino / KNEO Pi → Phase 2+ 開放非 Kneron 晶片,透過 Driver 插件支援多廠商 |
| **模型** | 開放模型市集,整合公開模型庫 + 允許社群貢獻 |
| **社群** | 開源 Driver SDK鼓勵社群貢獻硬體支援 |
| **整合** | API 優先設計,未來可整合 CI/CD、IoT 平台等 |
@ -1136,6 +1253,21 @@ Phase 3 — 進階功能(長期差異化)
| `wicg.github.io/serial/` | W3C 標準 | Web Serial API 規格 |
| `pkg.go.dev/go.bug.st/serial` | Go 套件 | Go 串列埠通訊(建議方案) |
### Kneron 硬體與 SDK 來源
| 來源 | 類型 | 說明 |
|------|------|------|
| `mouser.com/catalog/specsheets/Kneron_01292021_KL720B3421B.pdf` | Datasheet | KL720 AI SoC 初步規格書Version 0.8 |
| `mouser.com/.../Kneron_KP73B703A_M1__KL730_KNEOPi_HDK_V2_0_Spec` | Datasheet | KL730 KNEO-Pi V2.0 HDK 規格書 |
| `doc.kneron.com/docs/720_2.2.0/introduction/` | 官方文件 | KL720 SDK v2.2.x 文件中心 |
| `doc.kneron.com/docs/plus_python/api_document/V1.3.0/kp/core/` | API 文件 | Kneron PLUS Python SDK — kp.core API 參考 |
| `doc.kneron.com/docs/plus_c_api/api_reference_1.1.x/kp_core.h/` | API 文件 | Kneron PLUS C API — kp_core.h 參考 |
| `github.com/kneron/host_lib` | GitHub | Kneron USB Dongle Python 範例 |
| `kneron.com/page/soc/` | 官方頁面 | Kneron 邊緣 AI 晶片產品總覽KL520/KL720/KL730 |
| `kneron.com/news/blog/178/` | 官方部落格 | KL730 AI 晶片發佈公告 |
| `cnx-software.com/2020/09/02/kneron-kl720-arm-cortex-m4-ai-soc/` | 媒體報導 | KL720 技術規格分析CNX Software |
| `winbond.com/.../high-bandwidth-1gb-lpddr3-helps-kneron-kl720/` | 合作夥伴 | Winbond LPDDR3 搭配 KL720 資訊 |
---
*文件版本v2.0 | 日期2026-02-11 | 狀態:初稿*
*文件版本v2.2 | 日期2026-02-11 | 狀態:初稿*