PIO和DMA,兩種方式的比較:
1.速度上,PIO方式相對較慢些,需要等待狀態變化,每次重新下命令,特別是在命令比較多的時候,比較費時。
2.使用資源上,DMA方式需要大量的Memory資源,CORB和RIRB都是要128byte對齊的。
所以BIOS中一般採用PIO 的方式配置Audio Codec,driver一般採用DMA的方式。
Driver:
1.目前MicroSoft的Windows系統(Windows 2000,XP,Vista)中都集成有UAA (Universal Audio Architecture)driver,
提供基本的音頻處理能力,包含Audio path的解析和優化,輸入輸出功能的配置(依照Verb Table的信息)等等,
UAA 1.1在Windows Vista集成,按照HD Audio spec實現的統一的Audio driver,Audio Codec廠商提供的Driver主要是一些圖形界面的配置,聲音效果,自動探測和功能轉換等功能。
2.在Linux系統則主要用ALSA(Advanced Linux Sound Architecture)driver。
另外MicroSoft有自己定義一些額外的要求,對於Verb Table:Pin Config