首页
社区
课程
招聘
[求助]PCI支持热插拔吗
发表于: 2013-9-6 10:09 16043

[求助]PCI支持热插拔吗

2013-9-6 10:09
16043
公司做串口卡的,每一片都需要测试,现在测试一片关一次机开机一次,测试10000片关1万次开1万次,非常浪费时间,请教能不能写个驱动实现像USB一样,插上去发现设备,这样就不用再关机了。
求教

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (18)
雪    币: 220
活跃值: (117)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
wdm规范是可以的吧?
不过得看是否有通知的IRP了...
2013-9-6 10:16
0
雪    币: 608
活跃值: (648)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
PCI规范不支持热插拔
再有你们公司做的卡难道是手工焊接的?
如果要是打样测试结果稳定以后就可以走批量SMT了吧,机器批量贴片焊接的次品率可是很低的。
2013-9-6 11:02
0
雪    币: 32
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
膜拜,没想到在这里和SMT不搭边的地方居然你知道SMT三个字,我是搞SMT的。

是批量走SMT可是会有不良,不然芯片本身就是坏的,测试的目的是保证出货100%,还有我们老板买的芯片是旧的
2013-9-6 14:57
0
雪    币: 32
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
PCI规范 貌似必须BIOS通电检查PCI,难道就没有解决的办法吗
2013-9-6 14:58
0
雪    币: 608
活跃值: (648)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
最蛋疼的问题莫过于拆机芯片,这个质量真的很难保证...
二手芯片的话,属于什么类的?一般的芯片厂商不都有专用的测试仪么,先拿测试仪通过然后再上机啊。
2013-9-6 15:07
0
雪    币: 32
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
我们做串口卡的,只需要将串口的RX TX接在一起然后用串口发送数据和接受数据,如果接收的数据和发送的数据一致那就说明此卡OK。这个我可以实现,卡就卡在怎么让电脑不重新启动插上一个卡,然后测试。

  如果实现了不重新启动,那么测试的效率将是重新启动测试的10倍以上
2013-9-6 16:15
0
雪    币: 32
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
我也有试过在计算机不关机的时候插PCI的卡,根本就没有,重启以后就有了
2013-9-6 16:17
0
雪    币: 608
活跃值: (648)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
给你个思路:在没有操作系统的情况下测试
大致思路是:写一段汇编程序,不依赖操作系统的,这段代码写到硬盘的MBR里,代码通过int 1Ah遍历所有 PCI设备,找到你的卡的IO Port,然后发送测试数据 所有操作只依赖BIOS中断,这样 你就可以节约下操作系统引导的那段时间了
2013-9-6 16:23
0
雪    币: 306
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
这个高端点,要自己改系统了?
或是改个系统 的引导,有DOS源码吗,有微系统源码吗,改下就OK?
2013-9-6 16:26
0
雪    币: 220
活跃值: (117)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
11
刚看了下 pci是bios加电时候检查的.并不是轮询的.所以目前的操作系统.暂时只能重启
2013-9-6 17:20
0
雪    币: 32
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
目前是纯DOS测试的,纯DOS下有个AUTOEXEC.BAT往里面写测试的软件名称,自动测试,和楼上说的差不多,但是这样我一个小时也就测150片,效率不高,如果在WINDOWS下能发现,我写个软件遍历端口,然后发送数据和接受,效率是相当可观的,大概在600片,也就一插2秒内搞定拔掉再插,相当快。
2013-9-6 17:33
0
雪    币: 32
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
按照 遗失灵魂 的说法的话,想要实现需要在驱动层调用bios来实现,驱动还懂点,可是bios调用就不知道了。
2013-9-6 17:35
0
雪    币: 302
活跃值: (410)
能力值: ( LV12,RANK:410 )
在线值:
发帖
回帖
粉丝
14
PCI不可以,但PCIe是支持热拔插的,建议你做个PCIe的卡
2013-9-8 16:16
0
雪    币: 32
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
定死的PCI,属于客户要求的产品,不能改的

PCI-E也有做,不过经过我试验好像也不支持热插拔,我试过拔下来后在插上去发现不到卡,做过扫描新硬件,也找不到,重启计算机就又发现了。搞不清楚什么原因。
2013-9-9 15:26
0
雪    币: 286
活跃值: (67)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
xjj
16
用2台机器做,做好时间差,一台测试,另一台开机,然后测试第二台机器时第一台拔卡重启,如此循环,,虽然效率不是你要的那么高,但至少比你现在的要高一些。

PCI,是肯定不支持热插拔的,因为,我热插拔搞烧过,直接冒烟了。。。
2013-9-9 16:29
0
雪    币: 302
活跃值: (410)
能力值: ( LV12,RANK:410 )
在线值:
发帖
回帖
粉丝
17
PCIe绝对支持热拔插,我们做的卡一直都用热拔插,你的不可以是设计有问题,看到金手指上有根线短一小截吧---这个就是用于热拔插的。
2013-9-10 00:38
0
雪    币: 213
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
说说我的思路,具体我也没弄过,细节你得自己查。
1、计算机(就说PC吧!)能够在开机时发现硬件,是因为它有个自检。如果你想动态地发现系统的硬件变化,就是要随时能够执行这个自检。
2、其实计算机在启动状态下的每个元器件都是在电路上的,有的处于线路断开状态,有的处于线路闭合状态。处于线路闭合状态的,就能工作。这个我想稍懂点电路的都明白是什么意思。
3、一个卡在没插到槽上之前,槽这部分的电路明显是断开的,一旦插上,就形成了闭合电路。这时卡就能融入计算机整体,开始工作了。你只要能够判断这个电路的连通与否,就掌握了动态自检的时机,进而就是启动自检程序的问题了。

原理就是这么多。不过要实现可不简单了。我也就能说这么多,再往下我也不会了。不过基于这个原理,根本不用考虑什么PCI与否,任何PC的硬件都有电路规范的,这个首先要对电路编程,这个可比驱动还低,然后才是调用自检程序。
2013-9-11 09:15
0
雪    币: 16
活跃值: (18)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
pci是否支持还真不记得了,不过pcie肯定支持
2013-9-11 09:25
0
游客
登录 | 注册 方可回帖
返回
//