列印

【FAQ】電視卡配上4GB RAM以上系統的問題

【FAQ】電視卡配上4GB RAM以上系統的問題

電視卡遇到4GB以上主記憶的系統, 到底可否支援的問題, 簡略說明一下.

首先就是電視卡在傳輸影像資料到主機板時, 因為資料量都很大, 比如軟壓卡的原始影像資料, 而且資料是即時不可能要求重傳, 不像硬碟在傳輸有問題則可以重傳, 所以電視卡會採用 DMA 的傳輸模式. 也就是資料由電視卡直接進到主機板 memory, 不需要經過 CPU 慢慢搬.

如果你的記憶體在 4GB 以下時, DMA 的定址只需要 32bit 就可以. 若記憶體為 4GB 以上時, 就需要 64bit DMA 的定址能力. 所以在你的電視卡是 32bit DMA 時, 遇到系統分配給你的目的位址在 4GB 以上, 這時候為了要傳到指定位址, 會做兩段式轉換來處理, 若轉換效率可以跟上大量的即時影音資料, 那就沒有問題, 如果跟不上就會掉資料, 發現破音, 影像掉格或者發現 CPU 資源吃很重等等各種狀況. 當然有另一種可能, 雖然系統 memory 有 4GB 以上, 但被指定傳送的目的位址在 4GB 以下, 就一次定址傳輸就好, 不用再轉換, 此時不會有問題. 最困難的地方在被分配到的位址, 並不是電視卡能決定, 而是 OS 依據實際狀況做安排.

此問題通用坊間各類 32bit DMA 電視卡

[ 本文最後由 PaoPaoDragon 於 2010-9-23 16:58 編輯 ]
E-mail Address : Pao-Pao-Dragon@hotmail.com

TOP

現在才看到版主這一篇好重要的文章。

意思難道是說:

現在市面上的電視卡…

例如leadtek的電視卡,「全部」都是32bit DMA 電視卡嗎? orz....

而這個問題只有在64bit的作業系統,而且主記憶體在4GB以上才會發生嗎?

還是說64bit DMA的電視卡將無法在32bit的作業系統上使用?

.

[ 本文最後由 kk7system 於 2010-10-3 21:43 編輯 ]

TOP

1. 是否支援 64bit DMA 是取決於晶片設計, 與 OS 及主機板的 Memory Controller 三方配合才行,Leadtek 電視卡晶片組有 NXP, Conexant, 而各家的 PCI or PCIe 也是採不同設計. 一般 Memory Controller 是在北橋, 但有些做到 CPU 裡面.

2. 只有在 4GB 以上才容易發生 (不見得一定會遇到), 但在 4GB 以下都可以直接定址到你要的位址, 所以不會發生. 而要達到真正的 4GB 以上主記憶體應用, 一般都是 64bit OS.

3. 64bit DMA 若用在 32bit OS, 只是有一半位址用不到, 使用上都OK, 而且 Driver "可能" 會因為你的系統是 32或64 做設定時的調整也說不定, 最主要是先天上晶片只有 32bit 能力, 就要 OS 和 memory controller 配合使用到超過 4GB 的位址, 手續上比較麻煩.

[ 本文最後由 PaoPaoDragon 於 2010-10-4 10:43 編輯 ]
E-mail Address : Pao-Pao-Dragon@hotmail.com

TOP