Paměťová sběrnice, paměťový řadič, interní sběrnice čipu
Napsal: pát 23. lis 2007, 21:48
Vezmu to ve stručnosti. Hodně lidí zaměňuje některé pojmy, což způsobuje guláš v diskusích, dále se stále častěji v diskusích objevují různá dogmata, která jsou sice zažitá, ale na kterých je minimum pravdy. Pokusím se ve stručnosti vysvětlit alespoň to základní:
sběrnice grafického čipu
obvykle se za hraniční hodnoty považuje:
pro 128bit čip - min. 95-100 mm²
pro 256bit čip - min. 190-200 mm²
pro 512bit čip - min. cca 400 mm²
několik čísel:
64bit čipy:
GT218 (GeForce G210): 57 mm²
RV810 (Radeon HD5400): 59 mm²
RV620 (Radeon HD34x0?): 67 mm²
G72 (GeForce 7300): 77 mm²
RV615 (Radeon HD2400): 82 mm²
RV505 (Radeon X1300LE/CE): cca 85 mm²
G98 (GeForce 8400): 86 mm²
NV44/44a (GeForce 6200/6500/7100): 110 mm²
128bit čipy:
RV515 (Radeon X1300): 100 mm²
GT216 (GeForce GT220): 100 mm²
Xenos (xbox360, 65nm verze): 100 mm² (odhad)
RV830 (Radeon HD5500): 104 mm²
G86 (GeForce 8500): 117 mm²
RV635 (Radeon HD3650): 120 mm²
G73 (GeForce 7600): 127 mm²
GT215 (GeForce GT240): 139 mm²
RV740 (Radeon HD5700): 140 mm²
G96 (GeForce 9500): 144 mm²
RV530 (Radeon X1600): 150 mm²
RV630 (Radeon HD2600): 150 mm²
NV43 (GeForce 6600): 150 mm²
RV410 (Radeon X700): 156 mm²
MCP7A (GeForce 9300m/9400m): 160 mm²
G84 (GeForce 8600): 169 mm²
RV840 (Radeon HD5700): 170 mm²
Xenos (Xbox360, 90nm verze): cca 186 mm²
192bit čipy:
GF106 (GeForce GTS455): 238 mm²
256bit čipy:
Parhelia: 180 mm²
G94b (GeForce 9600GT): 190 mm²
RV670 (Radeon HD38x0): 192 mm²
G71 (GeForce 7900GTX): 196 mm²
NV42 (GeForce 6800GS): 213 mm²
R300 (Radeon 9700): 218 mm²
G94 (GeForce 9600GT): 225 mm²
RV570 (Radeon X1950PRO): 230 mm²
R430 (Radeon X800XL): 240 mm²
RV770 (Radeon HD4800): 256 mm²
G92b (GeForce GTS250): 264 mm²
R420 (Radeon X800XT): 281 mm²
RV790 (Radeon HD4890): 282 mm²
NV40 (GeForce 6800Ultra): 287 mm²
R520 (Radeon X1800): 288 mm²
RV870 (Radeon HD5800): 331 mm²
G92 (GeForce 8800GT): 334 mm²
G70 (GeForce 7800GTX): 334 mm²
R580 (Radeon X1900XT): 342 mm²
GF104 (GeForce GTX460): 367 mm²
384bit čipy:
G80 (GeForce 8800GTX): 484 mm²
GF100 (GeForce GTX480): 530 mm²
512bit čipy:
R600 (Radeon HD2900): 420 mm²
G200b (GeForce GTX285): 480 mm²
G200 (GeForce GTX280): 576 mm²
pro zajímavost: Ageia PhysX PPU: 182 mm²
---
Nejmenší 256bit čip je Matrox Parhelia - 180mm² - je to dáno poměrně primitivní formou 256bit sběrnice. Uvádí se, že se sice skládala ze 64bit kanálů, ale ty nebyly tak samostatné, jako u dnešních čipů.
Propustnost paměťové sběrnice je vcelku klíčová pro výkon - pokud čip jen většinu výpočetního času pročeká, než se načtou/zapíšou data z/do paměti, je mu výkon k ničemu, protože je limitovaný šířkou sběrnice. Pokud je naopak propustnost sběrnice výrazně vyšší, než jakou dokáže čip vytížit, pak nemá její další rozšiřování smysl.
Šířka sběrnice hraje stejně důležitou roli, jako propustnost pamětí. 500MHz paměti na 256bit sběrnici budou mít stejnou datovou propustnost jako 1000MHz paměti na 128bit sběrnici. Samozřejmě pokud zanedbáme rozdíly v latencích a četnostech přístupu (obvykle jednotky procent).
Datová propustnost (GB/s) = frekvence sběrnice (MHz) * šířka sběrnice (bit) * data rate (2 pro DDR) / 8000
sběrnice grafického čipu
- sběrnice uvnitř čipu (např. RingBus u ATi)
- spojuje jednotlivé části čipu, mezi kterými přnáší dle potřeby data (řadič PCIe, výpočetní jednotky, paměťový řadič...)
- její propustnost se pozitivně projevuje např. při použití FP16 HDR renderingu, který pracuje s velkými datovými objemy
- tato sběrnice je obvykle SDR (single-data rate); interní DDR sběrnice se nerozšířila z důvodu problematičnosti její realizace
- sběrnice spojující grafický čip a paměťové moduly na grafické kartě
- nebývá "celistvá", ale obvykle se skládá z několika kanálů (např. čtyř 64-bitových = 256bitová paměťová sběrnice)
- čím jsou kanály "užší", tím více operací (čtení/zápisů) může být naráz s pamětí prováděno
- limitem pro šířku paměťové sběrnice je velikost grafického jádra (toho křemíkového čtverečku = die) - je totiž třeba, aby jeho plocha byla dostatečně velká, aby bylo možné spodní plochou čipu takto širokou sběrnici "vyvést" do balení/package čipu (tj ta zelená placička) a tudy skrz PCB (samotnou kartu) do pamětí (černých čtverečků kolem grafického čipu)
obvykle se za hraniční hodnoty považuje:
pro 128bit čip - min. 95-100 mm²
pro 256bit čip - min. 190-200 mm²
pro 512bit čip - min. cca 400 mm²
několik čísel:
64bit čipy:
GT218 (GeForce G210): 57 mm²
RV810 (Radeon HD5400): 59 mm²
RV620 (Radeon HD34x0?): 67 mm²
G72 (GeForce 7300): 77 mm²
RV615 (Radeon HD2400): 82 mm²
RV505 (Radeon X1300LE/CE): cca 85 mm²
G98 (GeForce 8400): 86 mm²
NV44/44a (GeForce 6200/6500/7100): 110 mm²
128bit čipy:
RV515 (Radeon X1300): 100 mm²
GT216 (GeForce GT220): 100 mm²
Xenos (xbox360, 65nm verze): 100 mm² (odhad)
RV830 (Radeon HD5500): 104 mm²
G86 (GeForce 8500): 117 mm²
RV635 (Radeon HD3650): 120 mm²
G73 (GeForce 7600): 127 mm²
GT215 (GeForce GT240): 139 mm²
RV740 (Radeon HD5700): 140 mm²
G96 (GeForce 9500): 144 mm²
RV530 (Radeon X1600): 150 mm²
RV630 (Radeon HD2600): 150 mm²
NV43 (GeForce 6600): 150 mm²
RV410 (Radeon X700): 156 mm²
MCP7A (GeForce 9300m/9400m): 160 mm²
G84 (GeForce 8600): 169 mm²
RV840 (Radeon HD5700): 170 mm²
Xenos (Xbox360, 90nm verze): cca 186 mm²
192bit čipy:
GF106 (GeForce GTS455): 238 mm²
256bit čipy:
Parhelia: 180 mm²
G94b (GeForce 9600GT): 190 mm²
RV670 (Radeon HD38x0): 192 mm²
G71 (GeForce 7900GTX): 196 mm²
NV42 (GeForce 6800GS): 213 mm²
R300 (Radeon 9700): 218 mm²
G94 (GeForce 9600GT): 225 mm²
RV570 (Radeon X1950PRO): 230 mm²
R430 (Radeon X800XL): 240 mm²
RV770 (Radeon HD4800): 256 mm²
G92b (GeForce GTS250): 264 mm²
R420 (Radeon X800XT): 281 mm²
RV790 (Radeon HD4890): 282 mm²
NV40 (GeForce 6800Ultra): 287 mm²
R520 (Radeon X1800): 288 mm²
RV870 (Radeon HD5800): 331 mm²
G92 (GeForce 8800GT): 334 mm²
G70 (GeForce 7800GTX): 334 mm²
R580 (Radeon X1900XT): 342 mm²
GF104 (GeForce GTX460): 367 mm²
384bit čipy:
G80 (GeForce 8800GTX): 484 mm²
GF100 (GeForce GTX480): 530 mm²
512bit čipy:
R600 (Radeon HD2900): 420 mm²
G200b (GeForce GTX285): 480 mm²
G200 (GeForce GTX280): 576 mm²
pro zajímavost: Ageia PhysX PPU: 182 mm²
---
Nejmenší 256bit čip je Matrox Parhelia - 180mm² - je to dáno poměrně primitivní formou 256bit sběrnice. Uvádí se, že se sice skládala ze 64bit kanálů, ale ty nebyly tak samostatné, jako u dnešních čipů.
Propustnost paměťové sběrnice je vcelku klíčová pro výkon - pokud čip jen většinu výpočetního času pročeká, než se načtou/zapíšou data z/do paměti, je mu výkon k ničemu, protože je limitovaný šířkou sběrnice. Pokud je naopak propustnost sběrnice výrazně vyšší, než jakou dokáže čip vytížit, pak nemá její další rozšiřování smysl.
Šířka sběrnice hraje stejně důležitou roli, jako propustnost pamětí. 500MHz paměti na 256bit sběrnici budou mít stejnou datovou propustnost jako 1000MHz paměti na 128bit sběrnici. Samozřejmě pokud zanedbáme rozdíly v latencích a četnostech přístupu (obvykle jednotky procent).
Datová propustnost (GB/s) = frekvence sběrnice (MHz) * šířka sběrnice (bit) * data rate (2 pro DDR) / 8000
