WavePci 裝置的實作問題
本節提供音訊硬體廠商可用來改善其 WavePci 裝置效能和可靠性的硬體和軟體設計指導方針。 所有這些指導方針都適用于設計來與 Microsoft Windows XP 和更新版本搭配運作的音訊裝置和驅動程式,但許多指導方針也適用于舊版 Windows 回到 Windows 98 第二版。
如 Wave Filters中所述,埠類別系統驅動程式Portcls.sys提供兩個不同的埠驅動程式來轉譯和擷取裝置:
WaveCyclic 對硬體和軟體的需求較低,但其效能受限於在緩衝區之間複製資料的軟體額外負荷。
WavePci 是 WaveCyclic 的效能導向替代方案,但需要更複雜的硬體和驅動程式軟體。
雖然 WavePci 名稱表示插入 PCI 匯流排的音訊裝置,但事實上,WavePci 裝置的主要需求是它包含可存取系統記憶體中任何位置資料的散佈/收集 DMA 控制器:
典型的 WavePci 裝置確實位於 PCI 匯流排上,但理論上至少可以針對 (位於 PCI 以外的系統匯流排上的裝置撰寫 WavePci 迷你埠驅動程式,例如 AGP) 。
位於 PCI 匯流排但缺少散佈/收集 DMA 的波浪裝置可以由 WaveCyclic 驅動程式表示,但無法由 WavePci 驅動程式表示。
在過去,有些廠商很難實作功能完整的 WavePci 裝置。 這兩個主要問題區域包括:
降低效能的硬體設計缺陷。
影響效能或可靠性的驅動程式實作錯誤。
此體驗會深入探討下列主題,以解決 WavePci 裝置的主要硬體和軟體設計問題: