docs: Sync CN and EN docs missing the translation label

This commit is contained in:
Shen Mengjing
2026-05-11 14:08:45 +08:00
parent 6d4c1899c5
commit 1e71307770
18 changed files with 70 additions and 19 deletions
@@ -412,7 +412,7 @@ IDF FreeRTOS 中,特定核进入和退出临界区的过程如下:
- 核寄存器的当前状态保存到要切出的任务栈中
- 核寄存器的先前保存状态从要切入的任务栈中加载
然而,IDF FreeRTOS 为核的浮点运算单元 (FPU) 寄存器实现了延迟上下文切换。换句话说,当在特定核上(如核 0)发生上下文切换时,核的 FPU 寄存器状态不会立即保存到要被切出的任务的堆栈中(如任务 A)。FPU 的寄存器在发生以下情况前将保持不变:
然而,IDF FreeRTOS 为核的浮点运算单元 (FPU) 寄存器实现了惰性上下文切换。换句话说,当在特定核上(如核 0)发生上下文切换时,核的 FPU 寄存器状态不会立即保存到要被切出的任务的堆栈中(如任务 A)。FPU 的寄存器在发生以下情况前将保持不变:
- 另一个任务(如任务 B)在同一核上运行并使用 FPU,这将触发异常,将 FPU 寄存器保存到任务 A 的堆栈中。
- 任务 A 重新调度到同一核并继续执行。在这种情况下,不需要保存和恢复 FPU 的寄存器。
@@ -429,7 +429,42 @@ IDF FreeRTOS 中,特定核进入和退出临界区的过程如下:
.. note::
具有 FPU 的 ESP 芯片不支持双精度浮点运算 ``double`` 的硬件加速。``double`` 通过软件实现,因此比起 ``float`` 类型,``double`` 操作可能消耗更多 CPU 时间。
包含 FPU 的乐鑫芯片不支持双精度浮点运算 ``double`` 的硬件加速。``double`` 通过软件实现,因此针对 ``float`` 类型的行为限制不适用于 ``double``。请注意,由于缺少硬件加速,``double`` 运算与 ``float`` 相比可能会消耗更多的 CPU 时间。
.. only:: SOC_CPU_HAS_PIE
使用 PIE/AI 协处理器
^^^^^^^^^^^^^^^^^^^^
与浮点运算单元 (FPU) 类似,IDF FreeRTOS 在 PIE 协处理器上也采用了 **惰性上下文切换** 策略。在上下文切换时,PIE 寄存器保持不变,直到某个任务执行 PIE 指令时才进行处理。一旦有任务使用了 PIE 协处理器,该任务将被 **固定到当前核心**。
.. only:: esp32s31
.. note::
在 ESP32-S31 上,PIE 协处理器 **仅在核心 1 上可用**。如果任务在核心 0 上运行时执行了 PIE 指令,IDF FreeRTOS 会将该任务迁移至核心 1 并将其固定。此迁移会 **覆盖** 任何现有的核心亲和性设置。
由于存在这种迁移机制,任务 **不得** 在临界区或 ISR 例程中使用 PIE 协处理器,否则将导致运行时中止。
.. only:: SOC_CPU_HAS_HWLOOP
使用硬件循环 (HWLP)
^^^^^^^^^^^^^^^^^^^
在 IDF FreeRTOS 中,硬件循环 (HWLP) 单元的处理方式与其他协处理器不同:它 **不** 使用惰性上下文切换。
当使用 HWLP 的任务发生上下文切换时,HWLP 寄存器会在中断入口路径中立即保存。之后,如果同一任务被切换回来,所有 HWLP 寄存器会立即恢复。
在实践中,这意味着任何曾经使用过 HWLP 的任务,在每次上下文切出和切入时都会产生额外的开销。
.. only:: SOC_CPU_HAS_DSP
使用 DSP 协处理器
^^^^^^^^^^^^^^^^^
在包含 DSP 协处理器的目标芯片上,上下文切换遵循与 FPU 相同的延迟方案:只有在同一核心上的另一个任务使用了该协处理器,或者该任务被切换到另一个核心时,协处理器的状态才会被保存。当任务使用 DSP 协处理器时,IDF FreeRTOS 会自动 **将该任务固定至其当前运行的核心**。DSP 协处理器不得在中断上下文中使用。
.. -------------------------------------------------- Single Core -----------------------------------------------------