我们在多核Intel Haswell cpus上运行Wind River实时Linux。内核已应用实时补丁。
我们必须在定制PCI板上定期(每250us)编程FPGA寄存器。我们使用KLM驱动程序实现了这一目标。
我们发现,周期性地,FPGA写入比平常花费大约100us,即存在周期性延迟“尖峰”。尖峰的周期是1秒。换句话说,每秒一次FPGA写入比平时花费大约100us。这些较长的写入对我们来说是一个问题,因为我们可能会错过时间期限。
哪种系统活动可能会导致驱动程序延迟进行FPGA写操作?
我如何确定原因?