发信人: squallsun(cloud)
整理人: lizhiyongziji(2002-04-02 12:09:01), 站内信件
|
GeForce 4产品主要基于两种芯片--NV17和NV25:
GeForce 4 Ti4600 - NV25 300 MHz核心,128 MB 325(650) MHz 128-bit DDR显存
GeForce 4 Ti4400 - NV25 275 MHz核心,128 MB 275(550) MHz 128-bit DDR显存
估计还会推出基于NV25核心的其它产品
GeForce 4 MX460 - 300 MHz核心,64 MB 275(550) MHz 128-bit DDR显存
GeForce 4 MX440 - 270 MHz核心,64 MB 200(400) MHz 128-bit DDR显存
GeForce 4 MX420 - 200 MHz核心,64 MB 166 MHz 128-bit SDR显存
注意:
GeForce 3产品线将会很快被GeForce 4产品线所取代
NV17现在不将来也不会支持pixel shader和vertex shader
NV17具有MPEG2硬件解码和动态电源管理系统,但是NV25并不支持这些
NV17只有两条像素管线,NV25具有4条像素管线
NV25具有一个超标量体系结构(双)T&L单元,NV17只有一个
NV17和NV25采用了相似的内存控制器(NV17采用了2x通道,NV25采用了4x通道)
两款芯片采用了同样的提高内存带宽利用率的技术(Z缓冲压缩和快速Z清除、MSAA、HSR)
NV17整合了两个LCD控制器
两款新的核心都具有独立的RAMDAC、CRTC控制器,并且整合了TV-Out和DVI接口控制器
在NV25发布的同时,Nvidia采用了如下图所示的怪兽做了演示,来证明NV25利用vertex shader和per-pixel在实现光照、动画和毛发效果的优势:
NV25芯片
上图所示的就是NV25主要功能示意图,它相对于NV20有如下特点:
2具有两个独立的CRTC控制器
芯片内整合两个350 MHz RAMDAC
整合TV-Out控制器
整合TDMS转换器(用于DVI接口)
整合了两个vertex shader解释和执行单元。NVidia宣称这样的设计可以使得新的GPU在处理复杂包涵几何体的场景的时候速度有明显的提高。但是两个vertex shader单元不同同时处理不同的代码,但是它们可以共同协作提高vertex shader的工作效率。
改进的像素渲染管线对于pixel shaders v1.3规范提供硬件上的支持
NVIDIA还宣称新的GPU在MSAA模式下的工作效率会更高,当然在2x AA和Quincunx AA模式下的性能依然会有轻微的下降。新的GPU中中对于Quincunx AA进行了改进(主要是更改了采样点的位置)。
改进了独立缓存系统(几何缓村、帧缓存和Z缓存)
改进了无损压缩技术(1:4)和快速Z清除(fast Z clear)
改进了隐面消除算法(Z Cull HSR)
NV25相对于NV20有了不小的改进,虽然架构上并没有非常大的变动,但是足以使得Nvidia的产品具有更高的性能和竞争力。回头看看Nvidia的一路的足迹,TNT和TNT2、GF256和GF2、GF3和GF4,每一次的产品都有不小的进步。
规格特点
在正式介绍它们的规格之前,我们重申两个观点:
图形处理器的性能同它们的驱动程序息息相关。关于这一点略有经验的用户应该都有体会,对于家用显卡来说,芯片的功能和性能都在于驱动程序对于目前的两个API(OpenGL和D3D)的支持。下列表中的很多功能都依赖于驱动程序的支持。
Direct3D和OpenGL的参数非常的不同,所以考察一款显示核心应该从这两个方面入手。
下面的表格所罗列出来的就是Geforce3 Ti500、ATI RADEON 8500和NV25(GeForce 4 Ti 4600)的主要规格:
GeForce3 Ti 500 RADEON 8500 GeForce 4 Ti 4600/4400
芯片、版本、驱动程序版本
芯片 NV20 R200 NV25
版本 A5 A23 A03
驱动程序版本 27.30 6.018 27.30
主要规格
像素管线 4 4 4
材质单元 2 2 2
单流程可处理材质 4 6 4
核心 240 275 300 (275)
生产工艺 0.15 0.15 0.15
像素填充率(百万像素) 960 1100 1200 (1100)
材质填充率(百万材质) 1920 2200 2400
RAMDAC, MHz 350 400 (+ external 240) 350*2
显存规格
显存频率(MHz) 250 275 325 (275)
显存总线(bit) 128 (DDR) 128 (DDR) 128 (DDR)
显存容量(MB) 64 64 128
显存速度(ns) 3.8 3.6 2.8 (3.6)
API
OpenGL版本 1.3 1.3 1.3
DirectX版本 8.1 8.1 8.1
GDI+ 加速 Yes Yes Yes
像素管线
Pixel shader规格版本 1.0, 1.1 1.0..1.4 1.0..1.3
Range of calculated color values -1.0..+1.0 -8.0..+8.0 -1.0..+1.0
Texture fetch stages 4 8 4
Blend stages 8 8 8
Multisampling 2,3,4 samples No 2,3,4 samples
Clipping planes 0 6 0
Vertex shader
Vertex shader规格版本 1.0, 1.1 1.0, 1.1 1.0, 1.1
Vertex streams 16 8 16
Constants for vertex shader 96 192 96
Matrices for HW blending 4 4 4
Indexed blending No Up to 57 matrices No
Light sources 8 8 8
N-Patches No Yes No
RT-Patches No No No
Primitives 1048575 65536 1048575
顶点 1048575 16777215 1048575
其它功能
Pure Device Yes Yes Yes
Sprite缩放级别 64 256 8192
3D材质 Yes (with anisotropy) Yes (without MIPMAP) Yes (with anisotropy)
反射贴图 Yes (with anisotropy) Yes (without MIPMAP) Yes (with anisotropy)
各向异性过滤 Yes Yes Yes
各向异性层次 2,3,4 bi/trilinear sampling 2,3 bilinear sampling in a line 2,3,4 bi/trilinear sampling
雾化(Fog) FOGVERTEX FOGRANGE FOGTABLE FOGVERTEX FOGRANGE FOGVERTEX FOGRANGE FOGTABLE
帧缓存
渲染缓冲格式 A8R8G8B8 X8R8G8B8 R5G6B5 X1R5G5B5 A8R8G8B8 X8R8G8B8 R5G6B5 A1R5G5B5 A4R4G4B4 R3G3B2 A8R8G8B8 X8R8G8B8 R5G6B5 X1R5G5B5
Z-buffer格式 D32 D24S8 D16 D24X8 D32 D24S8 D16 D24X8 D32 D24S8 D16 D24X8
材质格式
最大材质尺寸 4096x4096(8192) 2048x2048(2048) 4096x4096(8192)
2D材质格式 A8R8G8B8 X8R8G8B8 R5G6B5 X1R5G5B5 A1R5G5B5 A4R4G4B4 P8 V8U8 L6V5U5 X8L8V8U8 DXT1 DXT2 DXT3 DXT4 DXT5 D24S8 D16 D24X8 A8R8G8B8 X8R8G8B8 R5G6B5 X1R5G5B5 A1R5G5B5 A4R4G4B4 R3G3B2 L8 A8L8 V8U8 L6V5U5 X8L8V8U8 Q8W8V8U8 V16U16 W11V11U10 DXT1 DXT2 DXT3 DXT4 DXT5 A8R8G8B8 X8R8G8B8 R5G6B5 X1R5G5B5 A1R5G5B5 A4R4G4B4 P8 V8U8 L6V5U5 X8L8V8U8 DXT1 DXT2 DXT3 DXT4 DXT5 D24S8 D16 D24X8
3D材质格式 A8R8G8B8 X8R8G8B8 R5G6B5 X1R5G5B5 A1R5G5B5 A4R4G4B4 P8 A8R8G8B8 X8R8G8B8 R5G6B5 X1R5G5B5 A1R5G5B5 A4R4G4B4 R3G3B2 L8 A8L8 Q8W8V8U8 W11V11U10 DXT1 DXT2 DXT3 DXT4 DXT5 A8R8G8B8 X8R8G8B8 R5G6B5 X1R5G5B5 A1R5G5B5 A4R4G4B4 P8
注释:
GeForce4 Ti4600的核心频率和显存频率都高于RADEON 8500,GeForce4 Ti4400具有同RADEON 8500同样的核心频率和显存频率
在NVIDIA的最新产品中整合了两个350MHzRAMDAC开始支持双显示器
NV25 RAMDAC的频率只有350MHz,相对于R200的400MHz RAMDAC低了50MHz
在架构上NV25依然同NV20和R200非常的相似,4条双材质单元像素处理管线。不过R200单流程中最高可以处理6个材质,而NV25最高只能处理4个,不过目前还没有一个应用程序支持这种特性,据说下一个版本的Doom支持这样的特性。
NVIDIA并没有对于1.4版本的pixel shader提供支持
所有的图形芯片的都整合了8级流水管线,完全支持DirectX 8.1
现在的NV25的驱动程序最大支持vertex shader常数(constants for vertex shaders)值为96,这远远低于R200的192,这样看来NV25似乎除了增加了第二T&L单元之外,并没有明显的改变
NV25显存的频率终于达到甚至超过了R200的水平,额定访问时间也是一样的。但是,这并不意味这R200和NV20/NV25在内存运算中会具有更高的效率。究竟谁的效率更高,在后面的测试中我们会给大家结果
所有的显卡都有支持DirectX 8.1和OpenGL 1.3的驱动程序。一般的认为ATI的OpenGL驱动程序的效率低于NVIDIA,当然之间的性能差别很小。
出于某些原因,现在的NV20和NV25的驱动显示并不支持clipping planes,不过在我们的测试中显示这些功能都能正确的工作。
NV25没有对于N-Patches提供硬件水平的支持
NV20和NV25的驱动程序不支持平滑表面的硬件铺嵌(基于RT-Patches的HOS)。当一款显卡不对于N-Patches提供硬件级别的支持,API就会试着使用RT-Patches来模拟--当然这会使得N-Patches运算非常的慢。NVIDIA因此屏蔽了RT-Patches,使得支持N-Patches不会太慢
NV25不支持索引矩阵混合
多级采样模式依然同NV20一样
NV25/NV20的各向异性处理方法同R200不同,它们的方法各有千秋
NV25的pixel shader值依然在 -1.0到1.0之间,并没有因为R200支持更高的精度而有所改变
所有的显卡都支持标准的材质格式,R200支持一些额外的的材质格式,比如精度更高的V16U16, W11V11U10;NV25和NV20为了实现Depth Buffer Shadows算法,也开始支持D32、D24S8、D16、D24X8等格式,另外nvidia还通过了驱动程序对于一些非标准材质提供 了支持
NV25不支持压缩3D材质,这是这款芯片的主要缺点,或许这个缺点可以通过升级驱动程序来弥补。Nvidia的OpenGL驱动程序支持自己专门的3D材质压缩格式
NV25支持所有类型的雾化效果,这一点同NV20是一样的
下面的列表是NV25所支持的全部的OpenGL扩展函数:
GL_VENDOR: NVIDIA Corporation
GL_RENDERER: GeForce4 Ti 4400/AGP/SSE2
GL_VERSION: 1.3.1
GL_EXTENSIONS:
GL_ARB_imaging
GL_ARB_multisample
GL_ARB_multitexture
GL_ARB_texture_border_clamp
GL_ARB_texture_compression
GL_ARB_texture_cube_map
GL_ARB_texture_env_add
GL_ARB_texture_env_combine
GL_ARB_texture_env_dot3
GL_ARB_transpose_matrix
GL_S3_s3tc
GL_EXT_abgr
GL_EXT_bgra
GL_EXT_blend_color
GL_EXT_blend_minmax
GL_EXT_blend_subtract
GL_EXT_compiled_vertex_array
GL_EXT_draw_range_elements
GL_EXT_fog_coord
GL_EXT_multi_draw_arrays
GL_EXT_packed_pixels
GL_EXT_paletted_texture
GL_EXT_point_parameters
GL_EXT_rescale_normal
GL_EXT_secondary_color
GL_EXT_separate_specular_color
GL_EXT_shared_texture_palette
GL_EXT_stencil_wrap
GL_EXT_texture3D
GL_EXT_texture_compression_s3tc
GL_EXT_texture_edge_clamp
GL_EXT_texture_env_add
GL_EXT_texture_env_combine
GL_EXT_texture_env_dot3
GL_EXT_texture_cube_map
GL_EXT_texture_filter_anisotropic
GL_EXT_texture_lod
GL_EXT_texture_lod_bias
GL_EXT_texture_object
GL_EXT_vertex_array
GL_EXT_vertex_weighting
GL_HP_occlusion_test
GL_IBM_texture_mirrored_repeat
GL_KTX_buffer_region
GL_NV_blend_square
GL_NV_copy_depth_to_color
GL_NV_evaluators
GL_NV_fence
GL_NV_fog_distance
GL_NV_light_max_exponent
GL_NV_multisample_filter_hint
GL_NV_occlusion_query
GL_NV_packed_depth_stencil
GL_NV_point_sprite
GL_NV_register_combiners
GL_NV_register_combiners2
GL_NV_texgen_reflection
GL_NV_texture_compression_vtc
GL_NV_texture_env_combine4
GL_NV_texture_rectangle
GL_NV_texture_shader
GL_NV_texture_shader2
GL_NV_texture_shader3
GL_NV_vertex_array_range
GL_NV_vertex_array_range2
GL_NV_vertex_program
GL_NV_vertex_program1_1
GL_SGIS_generate_mipmap
GL_SGIS_multitexture
GL_SGIS_texture_lod
GL_SGIX_depth_texture
GL_SGIX_shadow
GL_WIN_swap_hint
WGL_EXT_swap_control
下面的列表则是R200所支持的全部函数:
GL_VENDOR: ATI Technologies Inc.
GL_RENDERER: Radeon 8500 DDR x86/SSE2
GL_VERSION: 1.3.2475 WinXP Release
GL_EXTENSIONS:
GL_ARB_multitexture
GL_ARB_texture_border_clamp
GL_ARB_texture_compression
GL_ARB_texture_cube_map
GL_ARB_texture_env_add
GL_ARB_texture_env_combine
GL_ARB_texture_env_crossbar
GL_ARB_texture_env_dot3
GL_ARB_transpose_matrix
GL_ARB_vertex_blend
GL_ARB_window_pos
GL_S3_s3tc
GL_ATI_element_array
GL_ATI_envmap_bumpmap
GL_ATI_fragment_shader
GL_ATI_map_object_buffer
GL_ATI_pn_triangles
GL_ATI_texture_mirror_once
GL_ATI_vertex_array_object
GL_ATI_vertex_streams
GL_ATIX_texture_env_combine3
GL_ATIX_texture_env_route
GL_ATIX_vertex_shader_output_point_size
GL_EXT_abgr
GL_EXT_bgra
GL_EXT_blend_color
GL_EXT_blend_func_separate
GL_EXT_blend_minmax
GL_EXT_blend_subtract
GL_EXT_clip_volume_hint
GL_EXT_compiled_vertex_array
GL_EXT_draw_range_elements
GL_EXT_fog_coord
GL_EXT_packed_pixels
GL_EXT_point_parameters
GL_ARB_point_parameters
GL_EXT_rescale_normal
GL_EXT_secondary_color
GL_EXT_separate_specular_color
GL_EXT_stencil_wrap
GL_EXT_texgen_reflection
GL_EXT_texture_env_add
GL_EXT_texture3D
GL_EXT_texture_compression_s3tc
GL_EXT_texture_cube_map
GL_EXT_texture_edge_clamp
GL_EXT_texture_env_combine
GL_EXT_texture_env_dot3
GL_EXT_texture_lod_bias
GL_EXT_texture_filter_anisotropic
GL_EXT_texture_object
GL_EXT_vertex_array
GL_EXT_vertex_shader
GL_KTX_buffer_region
GL_NV_texgen_reflection
GL_NV_blend_square
GL_SGI_texture_edge_clamp
GL_SGIS_texture_border_clamp
GL_SGIS_texture_lod
GL_SGIS_generate_mipmap
GL_SGIS_multitexture
GL_WIN_swap_hint
WGL_EXT_extensions_string
WGL_EXT_swap_control
实际上我本不应该把硬件的东西放到这个版的,但看到现在有些杂志说PC已经不行了,显卡没用了,特别是Microsoft已经放弃了windows作为游戏平台
且不说winXP特别加入了对游戏的支持,光是API上,MS会让OperGL从容的超过Direct X吗?
---- Power Guard
Final Heaven
My Final Heaven |
|