Контроллер памяти: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[отпатрулированная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Это заготовка статьи о компьютерной технике на базе en:~ http://en.wikipedia.org/?oldid=434611773
 
м подстановка даты в шаблон:В планах
 
(не показаны 24 промежуточные версии 13 участников)
Строка 1: Строка 1:
'''Контроллер памяти''' — цифровая схема, управляющая потоком данных к и от [[ОЗУ|оперативной памяти]]. Может представлять собой отдельную микросхему или быть интегрирована в более сложную микросхему, например, в [[северный мост]], микропроцессор или [[Система на кристалле|систему на кристалле]].
'''Контроллер оперативной памяти''' — [[цифровая схема]], управляющая потоками данных между вычислительной системой и [[ОЗУ|оперативной памятью]]. Может представлять собой отдельную [[Микросхема|микросхему]] или быть интегрирована в более сложную микросхему, например, в состав [[Северный мост (компьютер)|северного моста]], микропроцессор или [[Система на кристалле|систему на кристалле]].


== Примеры и использование ==
Компьютеры, использующие микропроцессоры Intel традиционно имели контроллер памяти, встроенный в чипсет (северный мост), но многие современные процессоры, такие как [[Digital Equipment Corporation|DEC]]/[[Compaq]] [[Alpha 21364]], [[AMD]] [[Athlon 64]] и [[Opteron]], [[IBM]] [[POWER5]], [[Sun Microsystems]] [[UltraSPARC T1]] и процессоры [[Intel]] [[Core i7]] имеют интегрированный контроллер памяти, расположенный на том же кристалле, для уменьшения задержки доступа в память. Хотя интеграция увеличивает производительность системы, происходит привязка микропроцессора к какому-то одному типу памяти, не позволяющая сочетать процессоры и память разных поколений. Для использования новых типов памяти требуется выпуск новых процессоров и изменение их разъема (например, после появления [[DDR2 SDRAM]], AMD выпустила процессоры Athlon 64, использовавшие новый сокет [[Socket AM2]]).
Компьютеры, использующие микропроцессоры Intel до 2009 года<ref>[http://www.ixbt.com/mainboard/i58x-chipset.shtml Чипсет Intel X58 под процессоры микроархитектуры Nehalem] {{Wayback|url=http://www.ixbt.com/mainboard/i58x-chipset.shtml |date=20170805221148 }}, IXBT, 1 декабря 2008{{ref-ru}}</ref><ref name=ixbt_imc_2009>{{Cite web |url=http://www.ixbt.com/cpu/intel-ci7-mem.shtml |title=Особенности контроллера памяти в процессорах для LGA1366<!-- Заголовок добавлен ботом --> |access-date=2017-08-05 |archive-date=2017-08-06 |archive-url=https://web.archive.org/web/20170806020116/http://www.ixbt.com/cpu/intel-ci7-mem.shtml |deadlink=no }}</ref> традиционно имели контроллер памяти, встроенный в чипсет ([[Северный мост (компьютер)|северный мост]], MCH), но многие процессоры, такие как [[Digital Equipment Corporation|DEC]]/[[Compaq]] [[Alpha 21364]], [[AMD]] [[Athlon 64]] и [[Opteron]], [[IBM]] [[POWER5]], [[Sun Microsystems]] [[UltraSPARC T1]] и процессоры [[Intel Core i7]]<ref name=ixbt_imc_2009/> имеют интегрированный контроллер памяти, расположенный на том же кристалле, для уменьшения задержки доступа в память. Хотя интеграция увеличивает производительность системы, происходит привязка микропроцессора к какому-то одному типу памяти, не позволяющая сочетать процессоры и память разных поколений. Для использования новых типов памяти требуется выпуск новых процессоров и изменение их разъёма. Например, после появления [[DDR2 SDRAM]], AMD выпустила процессоры Athlon 64, использовавшие новый сокет [[Socket AM2]].


Интеграция контроллера памяти с процессором не является новой технологией, так, еще в 1990х DEC [[Alpha 21066]] и HP [[PA-7300LC]] использовали встроенные контроллеры для снижения стоимости системы.
Интеграция контроллера памяти с процессором не является новой технологией, так, ещё в 1990-х [[DEC Alpha]] 21066 и [[HP Inc.|HP]] {{iw|PA-7300LC}} использовали встроенные контроллеры для снижения стоимости системы.


== Задачи ==
== Задачи ==
Контроллер памяти содержит логические цепи, необходимые для проведения операций чтения и записи в [[DRAM]], а также для обновления хранимых в DRAM данных. Без периодических обновлений чипы памяти DRAM теряют информацию, так как разряжаются [[ток утечки|токами утечки]] [[конденсатор]]ы, хранящие биты. Типичное время надежного хранения информации составляет доли секунды, но не менее 64 миллисекунд согласно стандартам [[JEDEC]]. На более длительных периодах времени информация сохраняется лишь частично.
Контроллер памяти содержит логические цепи, необходимые для проведения операций чтения и записи в [[DRAM]], с соблюдением [[Тайминги (оперативная память)|всех необходимых задержек]], например, между чтением и записью. Поток входящих запросов преобразуется в последовательности DRAM команд, при этом отслеживаются различные конфликты по банкам, шинам и каналам. Для увеличения производительности входящие запросы могут буферизоваться и переупорядочиваться<ref name="mc-dram-onur2013.l2t1"/>.


Также контроллер памяти выполняет периодическое {{нп5|Memory refresh|обновление хранимых в DRAM данных|en|Memory refresh}}. Без периодических обновлений чипы памяти DRAM постепенно теряли бы информацию, так как разряжаются [[ток утечки|токами утечки]] [[Электрический конденсатор|конденсаторы]], хранящие биты. Типичное время надежного хранения информации составляет доли секунды, но не менее 64 миллисекунд (согласно стандартам [[JEDEC]] для [[DDR2 SDRAM]] и более новым). На более длительных периодах времени информация сохраняется лишь частично. При повышенной температуре (более 85 °C) может потребоваться более частое обновление памяти<ref name="mc-dram-onur2013.l1t1">{{cite web|url=https://users.ece.cmu.edu/~omutlu/pub/onur-ACACES2013-Lecture1-dram-basics-and-scaling-afterlecture.pdf|title=Scalable Many-Core Memory Systems Lecture 1, Topic 1: DRAM Basics and DRAM Scaling|author=Onur Mutlu|date=2013-07-16|publisher=HiPEAC ACACES Summer School|lang=en|accessdate=2017-08-05|archive-date=2015-03-25|archive-url=https://web.archive.org/web/20150325213115/http://users.ece.cmu.edu/~omutlu/pub/onur-ACACES2013-Lecture1-dram-basics-and-scaling-afterlecture.pdf|deadlink=no}}</ref><ref name="mc-dram-onur2013.l2t1">{{cite web|url=https://users.ece.cmu.edu/~omutlu/pub/onur-ACACES2013-Lecture2-dram-basics-and-scaling-afterlecture.pdf|title=Scalable Many-Core Memory Systems Lecture 2, Topic 1: DRAM Basics and DRAM Scaling|author=Onur Mutlu|date=2013-07-16|publisher=HiPEAC ACACES Summer School|lang=en|accessdate=2017-08-05|archive-date=2015-03-25|archive-url=https://web.archive.org/web/20150325190019/http://users.ece.cmu.edu/~omutlu/pub/onur-ACACES2013-Lecture2-dram-basics-and-scaling-afterlecture.pdf|deadlink=no}}</ref>.
<!-- Reading and writing to DRAM is performed by selecting the row and column data addresses of the DRAM as the inputs to the [[multiplexer]] circuit, where the [[demultiplexer]] on the DRAM uses the converted inputs to select the correct memory location and return the data, which is then passed back through a multiplexer to consolidate the data in order to reduce the required bus width for the operation. -->

<!--
Кроме этого контроллер памяти может управлять режимами питания чипов памяти<ref name="mc-dram-onur2013.l2t1"/>.
Bus width is the number of parallel lines available to communicate with the memory cell. Memory controllers' bus widths range from [[8-bit]] in earlier systems, to 512-bit in more complicated systems and video cards (typically implemented as four [[64-bit]] simultaneous memory controllers operating in parallel, though some are designed to operate in «gang mode» where two 64-bit memory controllers can be used to access a [[128-bit]] memory device). -->
<!-- == Память DDR ==
Память DDR ('''Double Data Rate''') DDR memory controllers are used to drive [[DDR SDRAM]], where data is transferred on the rising and falling access of the memory clock of the system. DDR memory controllers are significantly more complicated than Single Data Rate controllers, but allow for twice the data to be transferred without increasing the clock rate or increasing the bus width to the memory cell. -->


== Многоканальная память ==
== Многоканальная память ==
{{main|Многоканальная архитектура памяти}}
{{main|Двухканальный режим|Трёхканальный режим}}
{{план|дата=2024-04-07}}
<!-- '''[[Dual Channel]]''' memory controllers are memory controllers where the DRAM devices are separated on to two different buses to allow two memory controllers to access them in parallel. This doubles the theoretical amount of bandwidth of the bus. In theory, more channels can be built (a channel for every DRAM cell would be the ideal solution), but due to wire count, [[Crosstalk (electronics)|line capacitance]], and the need for parallel access lines to have identical lengths, more channels are very difficult to add. -->


== Полностью буферизованная память FB-DIMM ==
== Полностью буферизованная память FB-DIMM ==
{{main|FB-DIMM}}
{{main|FB-DIMM}}
{{план|дата=2024-04-07}}

== См. также ==
* [[Иерархия памяти]]
* [[Блок управления памятью]]
* [[Менеджер памяти]]
* [[Менеджер виртуальной памяти]]
* [[Микроконтроллер]]


== Примечания ==
== Примечания ==
Строка 26: Строка 33:
{{compu-hardware-stub}}
{{compu-hardware-stub}}


[[Категория:Запоминающие устройства]]
[[Категория:Управление памятью]]

[[de:Speichercontroller]]
[[fr:Contrôleur mémoire]]
[[ko:메모리 컨트롤러]]
[[hu:Memóriavezérlő]]
[[ja:メモリコントローラ]]
[[ro:Controler de memorie]]
[[es:Controlador de memoria]]

Текущая версия от 13:21, 7 апреля 2024

Контроллер оперативной памяти — цифровая схема, управляющая потоками данных между вычислительной системой и оперативной памятью. Может представлять собой отдельную микросхему или быть интегрирована в более сложную микросхему, например, в состав северного моста, микропроцессор или систему на кристалле.

Примеры и использование

[править | править код]

Компьютеры, использующие микропроцессоры Intel до 2009 года[1][2] традиционно имели контроллер памяти, встроенный в чипсет (северный мост, MCH), но многие процессоры, такие как DEC/Compaq Alpha 21364, AMD Athlon 64 и Opteron, IBM POWER5, Sun Microsystems UltraSPARC T1 и процессоры Intel Core i7[2] имеют интегрированный контроллер памяти, расположенный на том же кристалле, для уменьшения задержки доступа в память. Хотя интеграция увеличивает производительность системы, происходит привязка микропроцессора к какому-то одному типу памяти, не позволяющая сочетать процессоры и память разных поколений. Для использования новых типов памяти требуется выпуск новых процессоров и изменение их разъёма. Например, после появления DDR2 SDRAM, AMD выпустила процессоры Athlon 64, использовавшие новый сокет Socket AM2.

Интеграция контроллера памяти с процессором не является новой технологией, так, ещё в 1990-х DEC Alpha 21066 и HP PA-7300LC[англ.] использовали встроенные контроллеры для снижения стоимости системы.

Контроллер памяти содержит логические цепи, необходимые для проведения операций чтения и записи в DRAM, с соблюдением всех необходимых задержек, например, между чтением и записью. Поток входящих запросов преобразуется в последовательности DRAM команд, при этом отслеживаются различные конфликты по банкам, шинам и каналам. Для увеличения производительности входящие запросы могут буферизоваться и переупорядочиваться[3].

Также контроллер памяти выполняет периодическое обновление хранимых в DRAM данных[англ.]. Без периодических обновлений чипы памяти DRAM постепенно теряли бы информацию, так как разряжаются токами утечки конденсаторы, хранящие биты. Типичное время надежного хранения информации составляет доли секунды, но не менее 64 миллисекунд (согласно стандартам JEDEC для DDR2 SDRAM и более новым). На более длительных периодах времени информация сохраняется лишь частично. При повышенной температуре (более 85 °C) может потребоваться более частое обновление памяти[4][3].

Кроме этого контроллер памяти может управлять режимами питания чипов памяти[3].

Многоканальная память

[править | править код]

Полностью буферизованная память FB-DIMM

[править | править код]

Примечания

[править | править код]
  1. Чипсет Intel X58 под процессоры микроархитектуры Nehalem Архивная копия от 5 августа 2017 на Wayback Machine, IXBT, 1 декабря 2008 (рус.)
  2. 1 2 Особенности контроллера памяти в процессорах для LGA1366. Дата обращения: 5 августа 2017. Архивировано 6 августа 2017 года.
  3. 1 2 3 Onur Mutlu. Scalable Many-Core Memory Systems Lecture 2, Topic 1: DRAM Basics and DRAM Scaling (англ.). HiPEAC ACACES Summer School (16 июля 2013). Дата обращения: 5 августа 2017. Архивировано 25 марта 2015 года.
  4. Onur Mutlu. Scalable Many-Core Memory Systems Lecture 1, Topic 1: DRAM Basics and DRAM Scaling (англ.). HiPEAC ACACES Summer School (16 июля 2013). Дата обращения: 5 августа 2017. Архивировано 25 марта 2015 года.