docs: update PROJECT_STATUS.md with second-phase refactoring details
This commit is contained in:
@@ -85,3 +85,30 @@
|
||||
|
||||
---
|
||||
*Last Updated: 2026-05-17 00:43*
|
||||
|
||||
---
|
||||
|
||||
# DSP Bode Plot 專案進度更新 (2026-05-17 - 第二階段重構與優化)
|
||||
|
||||
## 8. 回授變數命名重構與物理意義釐清
|
||||
- **變數命名精確化**:為消除舊版回授項以 `fb_` 開頭容易讓工程師誤解為 `b` 係數的命名混淆,將 `dea/csv_processing.py` 的變數全面更名:
|
||||
- `fb_sum` $\rightarrow$ **`sum_a`** (回授 a 累加項)
|
||||
- `fb_shifted` $\rightarrow$ **`sum_a_scaled`** (已除以 $A_0$ 歸一化後的回授項)
|
||||
- `acc` 運算直接更新為直觀的 `acc = sum_b - sum_a_scaled`,完全與數學公式鏡像對齊。
|
||||
- **明確白話文檔指引**:在根目錄與 bodeplot 目錄下的 `INTEGER_FILTER_IMPLEMENTATION.md` 文件中,新增了兩項白話物理意義說明:
|
||||
1. **為什麼回授部分除以 $A_0$?**(假設 $A_0 = 1$,放大後即為 $2^{Q_a}$,除以 $A_0$ 等同於算術右移 `shift_a`,旨在消去 $Q_a$ 放大的效應以防數值爆炸)。
|
||||
2. **為什麼輸入訊號 $x$ 與前饋 $b$ 不用中間歸一化?**(說明為了防止小數精度因中間右移而被截斷丟棄,故意將高精度一路鎖在歷史狀態變數中,延遲至最終輸出時才進行一次性對齊,藉此獲得最大 SNR 與最佳效能)。
|
||||
3. **加註 Floor 模式的警告**:加註 `(無條件捨去,非常不建議)`,指引工程師優先使用 Round 補償。
|
||||
|
||||
## 9. 韌體 C 語言實作最佳化 (32-bit MCU Optimization)
|
||||
- **32位元整數重構**:為避免 64 位元除法/乘法在 32 位元微處理器(如 ARM Cortex-M 或是 RISC-V RV32I)上引發昂貴的軟體模擬消耗,將 `INTEGER_FILTER_IMPLEMENTATION.md` 中提供的 C 語言 Process 範例全部改為由 **`int32_t`** 為核心的高效能版本。
|
||||
|
||||
## 10. Vite HTTPS Proxy & SSL 完全對齊
|
||||
- **HTTPS 代理修復**:為同時支援 Web Serial API(瀏覽器實體連接埠,要求 HTTPS 協議)與 Vite 5173 的自動熱更新開發,將 `vite.config.js` 的 proxy target 更新為 **`https://127.0.0.1:8000`**,並加上 **`secure: false`**(允許繞過自簽憑證限制),徹底解決了前端對代理伺服器發送明文請求所導致的 `Failed to execute 'json' on 'Response': Unexpected end of JSON input` 報錯。
|
||||
|
||||
## 11. 目前 Git 狀態與 GitLab 同步
|
||||
- **當前分支**:`dev-v2-integretimedomain`
|
||||
- **提交與推送**:已經將最新的變數重構、32-bit C 代碼優化、Vite HTTPS Proxy 更新成功 commit 並 Push 至 GitLab 遠端儲存庫,分支版控狀態極其乾淨。
|
||||
|
||||
---
|
||||
*Last Updated: 2026-05-17 14:26*
|
||||
|
||||
Reference in New Issue
Block a user