在普通电脑中用得正常的PCI板卡,在某些工控机上无法识别。这种认不到卡的情况,怎么解决呢?让我们来看下可能造成的原因:

  1. 有些工控机的PCI总线没有IDSEL信号;
  2. PCI板卡被认错ID;
  3. PCI信号线路PCB设计不规范;

针对以上3种原因,我们逐项解决:

  • 一、工控机PCI总线没有IDSEL信号

对于没有IDSEL 信号的工控PCI 插槽,可以根据PCI 协议,将PCI 设备上的IDSEL 信号接在 AD线上,固定为设备X 。

以常见的PCI桥芯片CH365为例,具体操作为

a、将CH365 的IDSEL(P75)与PCI 金手指上的IDSEL信号(P99,A面)断开,

b、将CH365 的IDSEL(P75)与PCI 金手指的AD19 (P30,B面)相连,或与CH365 的AD19(P2)相连。

这样会被系统认为PCI设备3,如果设备3有冲突,可以换成 AD18(CH365的P3)-- 设备2 、AD17(CH365的P4)--  设备1等。

  • 二、PCI板卡被认错ID

PCI板卡的ID由系统自动识别, 如被认成0000等会导致板卡无法识别,这种情况下,建议板卡只焊接PCI桥芯片,后端器件暂时都不焊,插入板卡看下,以排除其他器件上电先跑、如导致D0-D7下拉启用外部设置ID而导致的板卡ID被认错的情况。

  • 三、PCI信号线路PCB设计问题

在像PCI这样的高频环境中,传送线在信号线上驱动电压变化时会出现阻抗,信号线的宽度和到接地的距离都会影响其阻抗,所以在设计PCB时需要参考PCI总线规范,特别要注意考虑信号阻抗匹配。以下供设计PCB时作为参考:

  1. 对于32位PCI总线的所有信号,其最大电路长度限定在1.5英寸(约38mm)以内。建议在设计PCB时,PCI信号线的长度都小于35mm,尽量走弧线或者45度线,避免走直角或者锐角走线,并且尽量将走线布在元件面,而在PCB背面保留大面积的接地覆铜,以降低传送线的阻抗。
  2. PCI总线的CLK信号线的长度要求是2.5英寸(约63mm)左右,并且只能与卡上的一个负载连接。建议CLK信号线的长度尽量保持在50mm~65mm之间,并且不宜靠近其它信号线,为减少周边信号线的干扰,在CLK两侧及PCB背面布置接地线或者覆铜。
  3. 在设计PCB时,应该在芯片的每对电源引脚附近放置一个容量为0.1uF左右的独石或者高频瓷片电容。
  4. 与PCI插槽连接的电源线引脚可以自由选择,但数量不宜少于4对,当板卡的电源消耗较大时,可以多增加几对电源线,通过多点接触提供稳定的大电流。
  5. 由于PCB过孔(VIA)电阻较大并且容易受温度影响而不稳定,为了减少其消耗的电压降,建议过孔使用大过孔、双过孔或者使用双回路电源(两条电源路径)。

布线示意图如下:

Android开发ic卡读取 读取ic卡失败怎么回事_信号线

 

以上是各种对PCI板卡在个别工控机上无法使用的三种异常情况解析,希望能解决您所遇到的问题。