为什么PXIe-8840QC在启动PharLap实时系统有时会挂起

更新 Jul 19, 2024

适用于

硬件

  • PXIe-8840

软件

  • LabVIEW Real-Time Module

问题详述

我的 PXIe-8840QC在启动 Phar Lap 实时系统时,有时候会出现无法启动的情况,并呈现挂起的状态。有时候则会出现 MDI 错误。我该如何解决这一问题
MDI Error.pngIssue.png

解决方案

这是因为您的 PXIe-8840QC 在 BIOS (2.1.10f0 版本)中 Advanced>System Profile Configuration>System Profile 选项启用了 Performance Optimized, 从而使得 Hyper-Threading 和 C-STATE 是启用的状态,这有一定的几率触发控制器 CPU i7-5700EQ 的错误。
可以通过在 BIOS 中将设置更改为 OS Defined 修复这个问题
BIOS System Profile.png
 
 

相关信息

NI 强烈建议在使用确定性的实时系统关闭 Hyper-Threading 和 C-STATE,是因为
  • Hyper-Threading 将允许每个核心有多个线程。换句话说,OS 将看到1个物理核心有 2 个线程(逻辑核心),而不是1个核心有1个线程。RTOS 任务调度程序将根据优先级将任务分配给每个线程。如果每个核心有两个线程,任务调度程序只会将任务分配给两个线程,但底层硬件只有 1 个核心可以处理。这会影响 RT 系统的确定性并影响系统抖动。
  • C-State 允许 CPU 根据负载进入低功耗状态以节省电量,但​​问题是一旦核心进入低功耗状态,它将需要一些时间来唤醒并准备好处理任务。这种影响会影响系统抖动。更糟糕的是,如果系统是多核的,并且一些核心进入低功耗状态,而一些核心没有,则会导致分配给低功耗核心的任务出现额外的延迟。