Article View: demon.tech.pc
Article #22908Re: PCI sound card for MSDOS 6 or Opendos 7 ?
From: Iain Paton
Date: Wed, 03 May 2000 00:00
Date: Wed, 03 May 2000 00:00
55 lines
3069 bytes
3069 bytes
Graham Murray <newspost@gmurray.org.uk> wrote in message news:m2ln1tbfnx.fsf@barnowl.demon.co.uk... > Why? Hardware limitation. > Once the PCI bus and the devices have been initialised (which > should be a one-off process at boot time), in what way do applications > have to communicate differently? > Surely in both cases, internal > registers in the card are mapped to I/O address space, Maybe, it's not outwith the realms of possibility that you could use PCI configuration space for this. Would be somewhat clumsy, but would be a *totally* different way of communicating with the card. > an interrupt > handler is required, Yup. > and DMA (when used) is just a combination of I/O > register access and interrupt handling. Here's at least one of your problems. PCI can't do DMA for several reasons: 1. The PCI connector doesn't have the signals available. 2. DMA from the 8237 which is hosted on the ISA bus gives you a real problem with latency issues. i.e. memory is controlled by the host-to-pci bridge, so you have to go from memory -> host-pci-bridge -> pci bus -> pci-isa-bridge -> dma controller -> pci-isa-bridge -> pci based device. The double round trip thru the pci-isa-bridge is horrible as it has the lowest priority on the pci bus. PCI devices can quite happily do bus mastering to achieve the same effect but the setup for this is quite different and doesn't involve the 8237. Hence old code that expects an ISA soundcard can't cope. There have been several schemes to try to get round this, some use NMI service routines to provide 'virtual' DMA emulation which usually requires the CPU to be in V8086 mode and can sometimes screw up other things that need V8086 mode (like EMM386). Another approach is the SB-Link header you see on some motherboards. I've never seen or heard of a sound card that uses this connector, so don't ask for details. > In both cases the application > just needs to know the base I/O address and IRQ used by the card. Not if the software relies on some of the features of ISA that simply aren't available on PCI. I --
Technical Details
Message-ID:
<8epqrs$bpa$1@sphere.demon.co.uk>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<7dnrgsc2311feuus98lov79820lmiluhge@4ax.com> <craNGIAJ$fD5EwVS@zenn.demon.co.uk> <m2ln1tbfnx.fsf@barnowl.demon.co.uk>Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 1036bc,341f5b98cc286b50 X-Google-Attributes: gid1036bc,public From: "Iain Paton" <go.away@dev.null.com> Subject: Re: PCI sound card for MSDOS 6 or Opendos 7 ? Date: 2000/05/03 Message-ID: <8epqrs$bpa$1@sphere.demon.co.uk> X-Deja-AN: 618795079 X-NNTP-Posting-Host: sphere.demon.co.uk:158.152.8.91 References: <7dnrgsc2311feuus98lov79820lmiluhge@4ax.com> <craNGIAJ$fD5EwVS@zenn.demon.co.uk> <m2ln1tbfnx.fsf@barnowl.demon.co.uk> X-Priority: 3 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 X-Complaints-To: abuse@demon.net X-Trace: news.demon.co.uk 957378255 nnrp-14:29551 NO-IDENT sphere.demon.co.uk:158.152.8.91 Organization: Home of the Heretic X-MSMail-Priority: Normal Newsgroups: demon.tech.pc