NVIDIA GeForce4 (NV25/NV17/NV18/NV28)

發佈時間:2002 年 02 月
API 支援:Direct3D 8.1、OpenGL 1.4 (NV25/NV28)
API 支援:Direct3D 7.0、OpenGL 1.2 (NV17/NV18)
Shader Model 版本:Vertex Shader 1.1, Pixel Shader 1.4 (NV25/NV28)
像素渲染器 (PS):4 組/頂點渲染器 (VS):2 組/材質對應單元 (TMUs):8 組/著色輸出單元 (ROUs):4 組 (NV25/NV28)
像素管線:2 條/材質對應單元 (TMUs):4 組/著色輸出單元 (ROUs):2 組 (NV17/NV18)

fxs4004

要談 GeForce4 之前我們得先對這代 GPU 的系列編成有基本的認識,GeForce4 在個人電腦上分為 MX 與 Ti 兩條產品線,雖然都叫做 GeForce4,但實際上兩者之間大不相同,如果你以為 GeForce4 MX 與 GeForce4 Ti 之間的關係和之前 GeForce2 GTS 與 GeForce2 MX 之間的關係很像的話,那你就上了 NVIDIA 的當了。

exa8052

首先看到的是面向主流與高階市場的 GeForce4 Ti,從上面這張架構圖應該不難看出,相較於 GeForce3 來說基本上這代產品其實並沒有太大的變動,某種程度上可以看做是 GeForce3 的補完版,像是把被 ATI 超車的 DirectX 8.1 API 支援補上去了之類的改良,除此之外主要的改進有三大部分。

akt8096

第一部分是關於繪圖管線配置,GeForce4 Ti 引入了第二代的 nFiniteFX 引擎,與 GeForce3 最主要的差別在於頂點渲染器從一組增加為兩組 (實際上這最早可以追溯到一款特化過的 GeForce3 晶片,NV2A 上,這款晶片是被用於初代微軟 Xbox 遊戲機的繪圖晶片,就具備了兩組頂點渲染器),靠著更加精進的頂點渲染器,GeForce4 Ti 每秒能處理的頂點數量相較於前作而言有了大幅度的提升 (不過其實我真心不太懂下面這段技術展示到底是想表達甚麼 XD)。

第二部分則是多螢幕的支援,NVIDIA 在 GeForce4 這一世代當中引入了被稱為 nView 的多螢幕技術 (其實說穿了就是內建兩組 RAMDAC 與 TDMS 輸出)。

akt8011

第三部分則是記憶體頻寬利用方面再次獲得了改進,在 GeForce3 當中透過 Lightspeed Memory Archhitecture 來解決 GeForce2 當中記憶體頻寬嚴重不足的問題,而在 GeForce4 當中我們可以見到強化版的第二代 LMA 設計,透過演算法方面的改良,可以更進一步提高記憶體頻寬的利用效率,並加入了記憶體預充電技術,能有效降低讀取記憶體資料時的延遲。

至於系列編成的部分,GeForce4 Ti 系可分為前期、後期兩階段,前期 (2002 年 04 月起) 使用的是 NV25 核心,共有 GeForce4 Ti 4400 與 GeForce4 Ti 4600 兩個成員,這兩款的差異出現在運作時脈上,前者預設時脈為 275/550 MHz,後者則可以高達 300/650 MHz,而後來又加入了 GeForce4 Ti 4200 這款較為平價的版本,時脈更進一步下降,若搭配 128 MB 記憶體則記憶體頻寬還需要進一步砍半 (搭配 64 MB 的款式則沒砍)。

sxs6055

至於後期則是使用 NV28 核心 (2003 年 01 月起),僅有 GeForce4 Ti 4800 SE 與 GeForce4 Ti 4800 兩個版本,實際上前者就是原先的 Ti 4400 加入 AGP 8x 支援的版本,而後者則是以 Ti 4600 為基礎加入 AGP 8x 支援的版本。

ape8055

得益於時脈的提升與第二組頂點渲染器的加入,GeForce4 Ti 毫無疑問是可以完封 GeForce3 系列的,也將才登上效能王者王位幾個月的 ATI 再次踹下王座。

axs8099

接下來,在開始談 GeForce4 MX 之前,先想想聽到 GeForce4 MX 這名詞的時候,你會有甚麼樣的想像吧?

  • 簡化版、入門版的 GeForce4?
  • 當年難產而延期至今的 GeForce3 MX,所以是入門版的 GeForce3?
  • 是 GeForce3 改名而來?

一般人的想法大概不出這三種吧?特別是對於知道 GeForce2 MX 是甚麼概念的人來說,多半應該會覺得 GeForce4 MX 應該就是低階版本的 GeForce4 Ti,不過實際情況並不是這樣,簡單來說,GeForce4 MX 其實只是昇級版的 GeForce2 MX,而且從 NVIDIA 官方給的比較表你看不出這點的。

amx8855

為什麼我會這樣說呢?NVIDIA 官方在宣傳 GeForce4 系列的時候通常都是同時宣傳 Ti 系與 MX 系,而且在規格比較上只有提到 GeForce4 MX 不支援 nFiniteFX II 引擎這件事情,單看上面這張圖大概會這樣覺得;「畢竟是比較低階的版本嘛,沒有最新的 nFiniteFX II 引擎也不奇怪,那總有上一代的 nFiniteFX 引擎吧?而且還多了 VPE 這項不知道是甚麼的功能呢。」

aec8055

不過實際上 GeForce4 MX 也不包含 nFiniteFX 引擎,應該說其實從架構上就跟 GeForce4 Ti 與 GeForce3 一點也不像了,從上面這張圖可以很明顯看到,DirectX 8.0 的最核心部分-Shader Model 整個不見了,反而看起來比較像是 GeForce2 的架構,是吧?

axe1002

是時候揭曉答案了,其實 GeForce4 MX 就是拿 GeForce2 核心修改而來的版本,把原本主掌記憶體頻寬這最大瓶頸的記憶體控制器抽掉,換上 GeForce4 Ti 當中使用的 LMA II (其實有稍微降級,比 GeForce3 用的 LMA 還要略差),並把 GeForce4 Ti 新引入的 nView 雙螢幕技術與 GeForce3 開始支援多重取樣反鋸齒加進來就是 GeForce4 MX 了,從開發代號上也可以證實這件事情:GeForce4 MX 使用的是 NV17 核心,數字編號比 GeForce3 的 NV20 還要來得更小,而且 GeForce4 MX 的 DirectX API 支援能力都只到 7.0 版本。

至於系列編成的部分,GeForce4 MX 系列的成員比較多一些,同樣可分為前後兩期,前期使用的是 NV17 核心 (自 2002 年 02 月起),可分為 MX420 (預設時脈 250/166 MHz,只能搭配 SDR 記憶體)、MX440 (預設時脈 275/400 MHz)、MX440 SE (預設時脈 250/332 MHz)、MX460 (預設時脈 300/550 MHz) 四種。

ser8011

至於後期的發行情形則與 GeForce4 Ti 的情況類似,改採新增了 AGP 8x 支援能力的 NV18 核心,先後以 MX440 為基礎推出了 GeForce4 MX440 with AGP 8x (記憶體時脈從 400 MHz 提高到 500 MHz) 與 GeForce MX4000 (2013 年 12 月,預設時脈為 250/332 MHz,且記憶體頻寬只有一半,代號 NV18B) 兩款。

axp8011

而在 2004 年 NVIDIA 還曾經另外以 NV18 為基礎加上 BR02 橋接晶片後製作出稱為 NV19 的組合,並以 NVIDIA GeForce PCX4300 的名義發售 (上圖,記憶體時脈高達 666 MHz,但頻道寬度與 GeForce MX4000 一樣只有一半)。

儘管後來看起來 GeForce4 MX 的做法好像很不可思議,但實際上在當時卻沒有造成市場反應不理想,反而因為價格與 GeForce2 MX 相差無幾,卻又因為解決了記憶體頻寬問題使得效能有明顯的提升,合理的價格與充足的性能使得 GeForce4 MX 後來其實很受歡迎,在很短的時間內就成功取代了原本 GeForce2 MX 長年佔據的低價與 OEM 市場。而且 GeForce4 有一點很有趣的現象,那就是只有 GeForce4 MX 才有內建影像處理引擎 (就是剛剛提到的 VPE) 與可變長度編碼解碼器,高階的 GeForce4 Ti 反而沒有支援這些功能,於是如果只是想看影片的話,選用低階的 GeForce4 MX 表現反而會比較好。