<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум Guardant &mdash; Разделение RAM-ключа для нескольких микропрограмм]]></title>
	<link rel="self" href="https://forum.guardant.ru/feed/atom/topic/583" />
	<updated>2015-10-15T08:24:27Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.guardant.ru/topic/583/</id>
		<entry>
			<title type="html"><![CDATA[Re: Разделение RAM-ключа для нескольких микропрограмм]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/2908/#p2908" />
			<content type="html"><![CDATA[<p>Здравствуйте!<br />Да, гарантирует сохранность. Соответственно, как и для любой оперативной памяти, до сброса питания ключа (переподключения).</p>]]></content>
			<author>
				<name><![CDATA[Станислав Петрушевский]]></name>
				<uri>https://forum.guardant.ru/user/818/</uri>
			</author>
			<updated>2015-10-15T08:24:27Z</updated>
			<id>https://forum.guardant.ru/post/2908/#p2908</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Разделение RAM-ключа для нескольких микропрограмм]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/2898/#p2898" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>1. 0x200</p></blockquote></div><p>И для стартового адреса RAM и для размера RAM?</p><p>А если я использую для разных микропрограмм разные, не пересекающиеся, области RAM, гарантирует ли это сохранность абсолютно всех NO_INIT-переменных и буферов ввода\вывода?</p>]]></content>
			<author>
				<name><![CDATA[dayznse]]></name>
				<uri>https://forum.guardant.ru/user/809/</uri>
			</author>
			<updated>2015-10-10T20:43:32Z</updated>
			<id>https://forum.guardant.ru/post/2898/#p2898</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Разделение RAM-ключа для нескольких микропрограмм]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/2896/#p2896" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>dayznse пишет:</cite><blockquote><p>Если я использую несколько микропрограмм в одном ключе (например 4 программы для ключа с 128кБ), то как быть с RAM-ключа: следует его делать общим для всех четырех программ или разделить на несколько частей, задавая соответствующие значения в makefile?</p></blockquote></div><p>В зависимости от решаемой задачи.&nbsp; Использование общего RAM без целей сохранения данных между вызовами предпочтительнее.</p>]]></content>
			<author>
				<name><![CDATA[Станислав Петрушевский]]></name>
				<uri>https://forum.guardant.ru/user/818/</uri>
			</author>
			<updated>2015-10-09T09:55:28Z</updated>
			<id>https://forum.guardant.ru/post/2896/#p2896</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Разделение RAM-ключа для нескольких микропрограмм]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/2892/#p2892" />
			<content type="html"><![CDATA[<p>Здравствуйте!</p><p>1. 0x200</p><p>2. Не всегда.<br />В случае если все четыре программы будут иметь одинаковые области глобальных данных, размеров стека, входных и выходных буферов, можно добиться одинакового распределения памяти, но linker это не гарантирует. (необходимо проверять по asm файлу)</p><p>Закомментируйте&nbsp; строчку “call %YAGARTO_MAKE% clean_temp” в build.bat. <br />В начале .out/SAMPLE2.asm вы увидите распределение данных по памяти.<br />Примечание. <br />Стартовый адрес&nbsp; RAM памяти в *.asm 0x10003000 эквивалентен адресу 0x40003000 из makefile (для совместимости makefile&nbsp; с более ранним моделями GuardantCode)</p><p>3. Имена буферов ввода-вывода могут быть любыми. Одинаковые имена в разных микропрограммах не гарантируют одно и того же их адреса. </p><p>4. Кстати, по какому адресу располагаются буферы ввода-вывода? Вначале зарезервированной RAM? Не всегда.&nbsp; <br />Сначала идет буфер ввода, а за ним буфер вывода? Да.</p>]]></content>
			<author>
				<name><![CDATA[Станислав Петрушевский]]></name>
				<uri>https://forum.guardant.ru/user/818/</uri>
			</author>
			<updated>2015-10-09T09:46:15Z</updated>
			<id>https://forum.guardant.ru/post/2892/#p2892</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Разделение RAM-ключа для нескольких микропрограмм]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/2879/#p2879" />
			<content type="html"><![CDATA[<p>Здравствуйте!<br />Мы переадресовали Ваши вопросы нашим разработчикам. Ответ будет до конца этой недели.</p>]]></content>
			<author>
				<name><![CDATA[Станислав Петрушевский]]></name>
				<uri>https://forum.guardant.ru/user/818/</uri>
			</author>
			<updated>2015-10-06T12:02:02Z</updated>
			<id>https://forum.guardant.ru/post/2879/#p2879</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Разделение RAM-ключа для нескольких микропрограмм]]></title>
			<link rel="alternate" href="https://forum.guardant.ru/post/2878/#p2878" />
			<content type="html"><![CDATA[<p>Если я использую несколько микропрограмм в одном ключе (например 4 программы для ключа с 128кБ), то как быть с RAM-ключа: следует его делать общим для всех четырех программ или разделить на несколько частей, задавая соответствующие значения в makefile?</p><p>Отсюда возникают следующие вопросы:<br />1) Если я разделяю RAM на части, то каким должно быть выравнивание памяти?<br />2) Если я использую общую RAM на все четыре программы, то доступны ли значения NO_INIT-переменных, созданных одной программой в другой; т.е. может ли программа номер 2 изменить (случайно или намеренно) данные, расположенные по адресу NO_INIT-переменной, которая описана и создавалась в программе номер 1?<br />3) Могут ли совпадать имена буферов ввода-вывода для всех программ, записанных в ключ, или же обязательно должны различаться? Если я использую общую RAM, то все буферы будут создаваться по одному и то му адресу и &quot;перетирать&quot; друг друга?<br />4) Кстати, по какому адресу располагаются буферы ввода-вывода? Вначале зарезервированной RAM? Сначала идет буфер ввода, а за ним буфер вывода?</p>]]></content>
			<author>
				<name><![CDATA[dayznse]]></name>
				<uri>https://forum.guardant.ru/user/809/</uri>
			</author>
			<updated>2015-10-05T22:41:35Z</updated>
			<id>https://forum.guardant.ru/post/2878/#p2878</id>
		</entry>
</feed>
