Freigeben über


Implementierungsprobleme für WavePci-Geräte

Dieser Abschnitt enthält Richtlinien für das Hardware- und Softwaredesign, mit denen Audiohardwarehersteller die Leistung und Zuverlässigkeit ihrer WavePci-Geräte verbessern können. Alle diese Richtlinien gelten für Audiogeräte und Treiber, die für die Verwendung mit Microsoft Windows XP und höher entwickelt wurden, aber viele gelten auch für frühere Versionen von Windows, die auf Windows 98 Second Edition zurückgehen.

Wie in Wave Filters erläutert, stellt der Portklassensystemtreiber Portcls.sys zwei verschiedene Porttreiber für Wellenrendering- und Erfassungsgeräte bereit:

  • WaveCyclic ist weniger anspruchsvoll für Hardware und Software, aber seine Leistung wird durch den Softwareaufwand für das Kopieren von Daten zwischen Puffern eingeschränkt.

  • WavePci ist die leistungsorientierte Alternative zu WaveCyclic, erfordert jedoch eine komplexere Hardware und Treibersoftware.

Obwohl der Name WavePci ein Audiogerät impliziert, das mit dem PCI-Bus verbunden ist, besteht die Hauptanforderung für ein WavePci-Gerät darin, dass es einen Punkt-/Gather-DMA-Controller enthält, der überall im Systemspeicher auf Daten zugreifen kann:

  • Ein typisches WavePci-Gerät befindet sich in einem PCI-Bus, aber theoretisch könnte zumindest ein WavePci-Miniporttreiber für ein Gerät geschrieben werden, das sich auf einem anderen Systembus als PCI befindet (z. B. AGP).

  • Ein Wave-Gerät, das sich in einem PCI-Bus befindet, aber keine Scatter-/Gather-DMA aufweist, kann durch einen WaveCyclic-Treiber, aber nicht durch einen WavePci-Treiber dargestellt werden.

In der Vergangenheit hatten einige Anbieter Probleme bei der Implementierung voll funktionsfähiger WavePci-Geräte. Die beiden Standard Problembereiche sind:

  1. Hardwareentwurfsfehler, die die Leistung beeinträchtigen.

  2. Treiberimplementierungsfehler, die sich auf Leistung oder Zuverlässigkeit auswirken.

Diese Erfahrung wird in die folgenden Themen zusammengefasst, in denen die wichtigsten Hardware- und Softwareentwurfsprobleme für WavePci-Geräte behandelt werden:

Hardwareanforderungen für WavePci-Geräte

Leistungsprobleme für einen WavePci Miniport-Treiber

Zuverlässigkeitsprobleme für einen WavePci Miniport-Treiber