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:
parent
b34c23d184
commit
1902cd0f84
@ -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 Dongle(MVP 目標硬體)
|
||||
|
||||
| 規格項目 | 內容 |
|
||||
|---------|------|
|
||||
| **晶片型號** | Kneron KL720 AI SoC |
|
||||
| **NPU** | 700 MHz,1.4 TOPS(INT8);能效 0.9 TOPS/W |
|
||||
| **DSP** | Cadence Tensilica VP6 DSP @ 500 MHz(NPU 協處理器) |
|
||||
| **CPU** | Arm Cortex-M4 @ 400 MHz(系統控制) |
|
||||
| **記憶體** | 128 MB LPDDR4(搭配 Winbond 1Gb LPDDR3 DRAM die) |
|
||||
| **儲存** | SPI Flash + NAND Flash(容量依模組配置) |
|
||||
| **USB 介面** | USB 3.0(Device mode)+ USB 2.0;主機端透過 USB 連接 |
|
||||
| **其他介面** | MIPI-CSI-2(攝影機輸入)、SPI、SDIO、UART、I2C、GPIO |
|
||||
| **影像輸入** | 支援 MIPI-CSI 攝影機模組(晶片層級) |
|
||||
| **功耗** | 約 1.2 W(NPU 全速推論時) |
|
||||
| **主機通訊** | 透過 libusb USB bulk transfer |
|
||||
| **韌體架構** | 雙核 RTOS:SCPU(系統控制)+ NCPU(NPU 推論) |
|
||||
| **韌體更新** | KneronDFUT 工具(支援 SCPU/NCPU firmware + NEF 模型燒錄) |
|
||||
| **模型格式** | Kneron NEF(Neural Efficient Format)— 經量化與編譯的專用格式 |
|
||||
| **外觀** | USB 隨身碟形式,即插即用 |
|
||||
|
||||
#### Kneron KL730 / KNEO Pi(Phase 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-pin(Raspberry Pi 相容排針) |
|
||||
| **攝影機** | MIPI-CSI,支援最高 8MP @ 90fps 輸入、4K 60fps 處理 |
|
||||
| **功耗** | 低功耗設計(具體數值待查) |
|
||||
| **定位** | 開發板形式,類似 Raspberry Pi 的邊緣 AI 開發平台 |
|
||||
| **SDK** | 與 KL720 共用 Kneron PLUS SDK |
|
||||
|
||||
#### 兩代晶片比較
|
||||
|
||||
| 比較項目 | KL720(MVP) | KL730(Phase 1) |
|
||||
|---------|-------------|-----------------|
|
||||
| NPU 算力 | 1.4 TOPS | 8 TOPS(約 5.7 倍) |
|
||||
| CPU | Arm Cortex-M4(微控制器) | Arm Cortex-A55 四核(應用處理器) |
|
||||
| 影像處理 | 基本 | 4K 60fps、8MP 90fps |
|
||||
| 連接方式 | USB(Dongle 形式) | USB + Ethernet + GPIO 40-pin |
|
||||
| SDK 相容 | Kneron PLUS SDK | Kneron PLUS SDK(相容) |
|
||||
| 使用場景 | 筆電/桌機外接 AI 推論 | 獨立邊緣 AI 開發平台 |
|
||||
|
||||
#### Kneron 軟體工具鏈
|
||||
|
||||
**Kneron PLUS SDK(Platform 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 + Zadig(USB driver) |
|
||||
| | Linux: 需配置 USB 權限(udev rules) |
|
||||
| **限制** | 不支援 SELinux 環境 |
|
||||
|
||||
**Kneron Toolchain(模型轉換工具):**
|
||||
|
||||
| 項目 | 說明 |
|
||||
|------|------|
|
||||
| **工具名稱** | `ktc`(Kneron Toolchain Compiler) |
|
||||
| **轉換流程** | ONNX → BIE(量化中間格式)→ NEF(部署格式) |
|
||||
| **支援格式** | ONNX opset 11 / 12 |
|
||||
| **功能** | 模型量化(INT8)、模型編譯、模型最佳化 |
|
||||
| **API** | Python API(`ktc` 套件) |
|
||||
|
||||
**KneronDFUT(Device Firmware Update Tool):**
|
||||
|
||||
| 項目 | 說明 |
|
||||
|------|------|
|
||||
| **功能** | 更新裝置韌體(SCPU firmware + NCPU firmware)及 NEF 模型 |
|
||||
| **運作方式** | 透過 USB 將 `fw_scpu.bin` / `fw_ncpu.bin` 寫入裝置 Flash |
|
||||
| **開機流程** | IPL(ROM)→ SPL(Flash)→ 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 NEF(Kneron 專用格式)為主;未來擴展支援 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 | 狀態:初稿*
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user