论坛: 电脑门诊 标题: 警惕声卡与主板在DMA通道上冲突 复制本贴地址    
作者: qiuyuchen [qiuyuchen]       登录


  关于在WIN95中如何解决ALS007声卡不发声的问题已多次讨论过,总体来看故障主要出自WIN95不能准确识别ALS007声卡,从而加载了错误的驱动程序。解决这一问题的方法比较简单:删除WIN95中的“资源管理器”\“系统”\“设备管理”\“声音、视频和游戏控制器”下的与声卡有关的各项,然后启动“安装新硬件”并为WIN95提供正确的驱动程序。但有些用户可能会发现,如此处理之后故障依然存在、声卡仍不发声。那么,问题究竟来自何处呢?一个较少为人所知的事实是:主板与声卡在DMA通道上也会发生冲突,致使声卡无法发声。

  下面是一实例。

  一台计算机的配置为:海洋HP15主板(PCI总线)、AMD133 CPU,配有S3 64V+显示卡、ALS007声卡、同维(TW)解压卡、32MB EDO内存。在WIN 95安装完成之后,重新启动WIN 95时无声音,声卡没有正常工作。通过“控制面板”→“系统”→“设备管理”,查到产生故障的一个原因是:WIN95错误地识别了ALS007声卡类型,致使安装了错误的驱动程序。此后,在“设备管理”中,删除其中的“声音、视频和游戏控制器”下的各子项后,然后启动“控制面板”中的“添加新硬件”,在“添加新硬件向导”的提示下为其提供ALS007声卡驱动程序。安装完成之后,重新启动WIN95,系统仍无声音。再次打开“控制面板”→“系统”→“设备管理”,单击其中的“计算机”项,查看其“属性”;此时可以看到,“计算机属性”中的“中断请求(IRQ)”、“直接内存访问(DMA)”以及“输入输出(I/O)”均未显示出任何冲突迹象,声卡使用的IRQ5、DMA1以及I/O地址未被任何设备使用。至此,ALS007声卡已经正确安装、“计算机属性”中显示无任何冲突,但声卡仍然不能正常工作。

  此后,笔者通过试验发现,只要将ALS007声卡使用的DMA通道号由1改为3(不能改为2或4。DMA2或DMA4分别被软盘控制器、DMA控制器所占用),则问题便迎刃而解。但其中的道理是什么?为什么在系统显示DMA1未被任何设备占用的情况下ALS007声卡却无法使用呢?一定是某一个设备在暗中使用DMA1通道、但在“系统”中却没有显示。最后,笔者打开了位于C盘根目录下的隐含文件Detlog.txt(这是安装WIN95时WIN95用于记录其检测的硬件设备及分配资源的文件),发现在其中记录着为主板分配了DMA1,至此声卡不能使用DMA1的原因得以确认。

  现在,有不少的主板使用DMA1通道,但在WIN95中却无法查看这一信息。所以,当你的声卡(不限于ALS007声卡)不能正常工作时,除其它可能的因素外,还应该考虑声卡与主板在DMA通道是否发生了冲突。 



地主 发表时间: 03/27 22:38

回复: mcse2000 [mcse2000]   副版主   登录
最简单的就是声卡别插在中间的pci槽上!奇数的别插在中间,偶数的别插中间的两个,基本就没什么事了。

B1层 发表时间: 03/28 09:36

回复: guest_yang [guest_yang]   论坛用户   登录
我想问一下楼上的同志,为什么,能说一下原因吗\/??

B2层 发表时间: 03/29 22:04

回复: mcse2000 [mcse2000]   副版主   登录
DMA33以上的主板一般使用中间的pci槽的中断作dma通道。
类似的小技巧还有很多,比如双面DDR内存不能插满3根槽的845D主板,只能插1、3槽,单面的就没事。

B3层 发表时间: 03/30 17:51

回复: kexue [kexue]   论坛用户   登录
你说的很有道理啊

B4层 发表时间: 03/16 19:37

论坛: 电脑门诊

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号