Открыть главное меню

IRAM: различия между версиями

 
 
(не показаны 3 промежуточные версии 2 участников)
Строка 1:Строка 1:
== Определение ==
+
'''IRAM''' ({{lang-en|Integrated Random Access Memory}}) — оперативная память, встроенная в [[Neptune]]. Обычно под [[IRAM]] понимают встроенную оперативную память, доступную [[MCU]], хотя это определение в равной мере относится к памяти, видимой [[DSP]]. Тем не менее, будем рассматривать именно память, доступную MCU. <metadesc>IRAM (англ. Integrated Random Access Memory) — оперативная память, встроенная в Neptune. Обычно под IRAM понимают встроенную оперативную память, доступную MCU, хотя это определение в равной мере относится к памяти, видимой DSP. Тем не менее, будем рассматривать именно память, доступную MCU.</metadesc>
IRAM - Integrated Random Access Memory - оперативная память, встроенная в [[Neptune]]. Обычно под [[iram]] понимают встроенную оперативную память, видимую [[MCU]], хотя это определение в равной мере относится к памяти, видимой [[DSP]]. Тем не менее, будем рассматривать именно память, доступную MCU.
 
  
 
== Расположение ==
 
== Расположение ==
Строка 12:Строка 11:
 
|-
 
|-
 
| [[ULS]]
 
| [[ULS]]
| Не имеют [[iram]]
+
| Не имеют [[IRAM]]
 
|-
 
|-
 
| [[LTE]]
 
| [[LTE]]
Строка 23:Строка 22:
  
 
== Особенности ==
 
== Особенности ==
* Размерность доступа - байт, полуслово, слово
+
* Размерность доступа байт, полуслово, слово;
* Время доступа - 1 машинный такт [[MCU]], независимо от размерности
+
* Время доступа 1 машинный такт [[MCU]], независимо от размерности.
  
 
== Применение ==
 
== Применение ==
[[iram]] используется:
+
[[IRAM]] используется:
* [[irom]] для хранения глобальных переменных, стеков, процедур обработки исключений
+
* [[IROM]] для хранения глобальных переменных, стеков, процедур обработки исключений;
* [[Boot loader]] для хранения глобальных переменных, стека и выполнения части собственных процедур и [[RAMDLD]]
+
* [[Boot loader]] для хранения глобальных переменных, стека и выполнения части собственных процедур и [[RAMDLD]];
* [[RAMDLD]] для хранения собственного кода, стека и глобальных переменных
+
* [[RAMDLD]] для хранения собственного кода, стека и глобальных переменных;
* [[Прошивка|Прошивкой]] для хранения стека, части глобальных переменных, выполнения микроядра, критичных по времени процедур и процедур работы с флеш-памятью
+
* [[Прошивка|Прошивкой]] для хранения стека, части глобальных переменных, выполнения микроядра, критичных по времени процедур и процедур работы с флеш-памятью.

Текущая версия на 04:12, 9 апреля 2019

IRAM (англ. Integrated Random Access Memory) — оперативная память, встроенная в Neptune. Обычно под IRAM понимают встроенную оперативную память, доступную MCU, хотя это определение в равной мере относится к памяти, видимой DSP. Тем не менее, будем рассматривать именно память, доступную MCU.

Расположение

Модель NeptuneДиапазон адресов
LT0x01FC0000-0x02000000, возможно, 0xFFFC0000-0x00000000
ULSНе имеют IRAM
LTE0x03FC0000-0x04000000, 0xFFFC0000-0x00000000
LTE20x03F80000-0x04000000, 0xFFF80000-0x00000000

Особенности

  • Размерность доступа — байт, полуслово, слово;
  • Время доступа — 1 машинный такт MCU, независимо от размерности.

Применение

IRAM используется:

  • IROM для хранения глобальных переменных, стеков, процедур обработки исключений;
  • Boot loader для хранения глобальных переменных, стека и выполнения части собственных процедур и RAMDLD;
  • RAMDLD для хранения собственного кода, стека и глобальных переменных;
  • Прошивкой для хранения стека, части глобальных переменных, выполнения микроядра, критичных по времени процедур и процедур работы с флеш-памятью.