Prokládaná paměť - Interleaved memory

Při výpočtu , proložený paměť je design, který vyrovnává relativně pomalé rychlosti z dynamické paměti s náhodným přístupem (DRAM) nebo feritové paměti , které šíří adresy paměti rovnoměrně po celé paměťové banky . Tímto způsobem souvislá čtení a zápis do paměti postupně využívá každou paměťovou banku, což má za následek vyšší propustnost paměti v důsledku sníženého čekání na připravenost paměťových bank na operace.

Liší se od vícekanálových paměťových architektur , především proto, že prokládaná paměť nepřidává další kanály mezi hlavní paměť a řadič paměti . Je však také možné kanálové prokládání, například v procesorech i.MX 6 freescale , které umožňují prokládání mezi dvěma kanály.

Přehled

S prokládanou pamětí jsou adresy paměti postupně přidělovány každé paměti. Například v prokládaném systému se dvěma paměťovými bankami (za předpokladu paměti adresovatelné slovem ), pokud logická adresa 32 patří do banky 0, pak logická adresa 33 by patřila do banky 1, logická adresa 34 by patřila do banky 0 atd. . Prokládaná paměť se říká, že je prokládaná n-způsobem, když existuje n bank a umístění paměti i se nachází v bance i mod n .

Příklad prokládání paměti se 4 bankami. Červené banky jsou osvěžující a nelze je použít.

Interleaved memory results in contiguous reads (which are common both in multimedia and execution of programs) and contiguous writes (which are used frequently when filling storage or communication buffers) actually using each memory bank in turn, instead of using the same one frequently. To má za následek výrazně vyšší propustnost paměti, protože každá banka má minimální čekací dobu mezi čtením a zápisem.

Prokládaný DRAM

Hlavní paměť (paměť s náhodným přístupem , RAM) se obvykle skládá ze souboru paměťových čipů DRAM , kde lze několik čipů seskupit a vytvořit paměťovou banku. Potom je možné s řadičem paměti, který podporuje prokládání, rozložit tyto paměťové banky tak, aby byly paměťové banky prokládány.

Data v paměti DRAM se ukládají v jednotkách stránek. Každá banka DRAM má vyrovnávací paměť řádků, která slouží jako mezipaměť pro přístup k jakékoli stránce v bance. Před načtením stránky v bance DRAM se nejprve načte do vyrovnávací paměti řádků . Pokud je stránka okamžitě načtena z vyrovnávací paměti řádků (nebo zásahu vyrovnávací paměti řádků), má nejkratší latenci přístupu k paměti v jednom cyklu paměti. Pokud se jedná o vynechání řádkové vyrovnávací paměti, které se také říká konflikt vyrovnávací paměti řádků, je to pomalejší, protože nová stránka musí být načtena do vyrovnávací paměti řádků před načtením. K chybám vyrovnávací paměti řádků dochází, když jsou obsluhovány požadavky na přístup na různých stránkách paměti ve stejné bance. Konflikt řádkové vyrovnávací paměti způsobí značné zpoždění pro přístup do paměti. Naproti tomu přístup do paměti k různým bankám může probíhat paralelně s vysokou propustností.

V tradičním (plochém) rozvržení lze paměťovým bankám přidělit souvislý blok adres paměti, což je pro řadič paměti velmi jednoduché a poskytuje stejný výkon ve scénářích zcela náhodného přístupu ve srovnání s úrovněmi výkonu dosaženými prokládáním. Ve skutečnosti jsou však čtení paměti zřídka náhodná kvůli referenční lokalitě a optimalizace přístupu blízko u sebe poskytuje mnohem lepší výkon v prokládaných rozloženích.

Způsob adresování paměti nemá žádný vliv na dobu přístupu k místům paměti, která jsou již uložena v mezipaměti , což má dopad pouze na místa paměti, která je třeba načíst z paměti DRAM.

Dějiny

Časný výzkum prokládané paměti byl prováděn v IBM v 60. a 70. letech ve vztahu k počítači IBM 7030 Stretch , ale vývoj pokračoval po celá desetiletí a zlepšoval design, flexibilitu a výkon za účelem výroby moderních implementací.

Viz také

Reference

externí odkazy