реклама на сайте
подробности

 
 
> Работа с внешней памятью
Ry-Sasha
сообщение Jun 1 2009, 10:51
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 2-03-06
Пользователь №: 14 888



Есть такая задумка: использовать программу на кристале в качестве бутлоадера, а основную программу хранить во внешней флеши.
Собственно вопрос: если подключить флешь как внешнюю память и использовать аппаратные возможности работы 51-го ядра с внешней памятью, будет ли в неё произведена запись, а точнее не будут ли маленькими для записи временные задержки, и какую конкретно энергонезависимую память для этого лучше использовать
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 17)
Палыч
сообщение Jun 1 2009, 11:18
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



МК51 расчитан на работу с внешним ОЗУ. Чтение - пройдёт, запись - нет
Go to the top of the page
 
+Quote Post
Ry-Sasha
сообщение Jun 1 2009, 11:38
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 2-03-06
Пользователь №: 14 888



Если к примеру выход WR микроконтроллера подключить к ПЗУ и писать в адреса ОЗУ за пределами кристалла, разве не будет запись?
Меня больше интересует вложится ли во временные интервалы, и есть ли эненгонезависимая память с такими короткими интервалами записи, чтобы запись всё-же произошла
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jun 1 2009, 11:47
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Ry-Sasha @ Jun 1 2009, 14:38) *
Если к примеру выход WR микроконтроллера подключить к ПЗУ и писать в адреса ОЗУ за пределами кристалла, разве не будет запись?
В ОЗУ запись, конечно, будет. А, вот, ПЗУ с такой быстрой записью Вы ненайдёте. Чем Вас внутренняя flash не устроила? Как вариант - поставить статическое ОЗУ с батарейным питанием (аккумулятором) для поддержания информации при отключении устройства от питающего напряжения.

Вариант 2
Внешнее ПЗУ (flash). При записи в него выдерживать тайминги бутлоадером, записанным во внутреннюю flash
Go to the top of the page
 
+Quote Post
Ry-Sasha
сообщение Jun 1 2009, 11:48
Сообщение #5


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 2-03-06
Пользователь №: 14 888



Спасибо, но лучше програмно записывать буду, просто хотел себе жизнь облегчить, а может использовать схемные решения? Возможно ли создать цепь задержки и что из этого будет?
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jun 1 2009, 11:51
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Ry-Sasha @ Jun 1 2009, 14:48) *
Возможно ли создать цепь задержки и что из этого будет?
Посмотрите время выполнения команды MOVX и сравните со временем записи во flash.
Go to the top of the page
 
+Quote Post
Ry-Sasha
сообщение Jun 1 2009, 12:04
Сообщение #7


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 2-03-06
Пользователь №: 14 888



Под цепью задержки я подразумевал коденсатор и триггер, которые будут удерживать разрешение записи нужный интервал времени, или какое-либо другое чисто схемное решение
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jun 1 2009, 12:06
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Чем будете тормозить МК на время выполнения МОVX?
Go to the top of the page
 
+Quote Post
Ry-Sasha
сообщение Jun 1 2009, 12:15
Сообщение #9


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 2-03-06
Пользователь №: 14 888



А зачем его тормозить, пусть он себе WR отпускает. Есть же к примеру регистр с защелкой, и на выходе сигнал всё равно остаётся (это к примеру, схемное решение я как раз и прошу подсказать)
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jun 1 2009, 12:20
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Ry-Sasha @ Jun 1 2009, 15:15) *
А зачем его тормозить, пусть он себе WR отпускает.
Следующая за MOVX команда откуда будет браться? Если всё это во внутреннем flash, то зачем городить этот "огород"? Если во внешнем, то как это будет работать: МК желает взять следующую команду, а ПЗУ занято записью...
Go to the top of the page
 
+Quote Post
Ry-Sasha
сообщение Jun 1 2009, 12:37
Сообщение #11


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 2-03-06
Пользователь №: 14 888



Так в первом посте- бутлоадер на кристале, следовательно и следующая - с кристала
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jun 1 2009, 12:44
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Ry-Sasha @ Jun 1 2009, 15:37) *
Так в первом посте- бутлоадер на кристале, следовательно и следующая - с кристала
Тогда, зачем нужно вся эта "городушка" с задержками? Линии (шины) работы с внешней памятью, как правило, совмещены с параллельными портами. Формируй себе сигналы нужной последовательности и длительности программно - и все дела...
Go to the top of the page
 
+Quote Post
Ry-Sasha
сообщение Jun 1 2009, 12:49
Сообщение #13


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 2-03-06
Пользователь №: 14 888



Я конечно извиняюсь, может Вы не поняли сути, но я пытаюсь реализовать бутлоадер в том случае, в котором на кристале память программ перезаписать нет возможности.

Так я в пятом посте и писал - програмно, потом подумал, может ещё есть варианты
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jun 1 2009, 13:03
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Ry-Sasha @ Jun 1 2009, 15:49) *
я пытаюсь реализовать бутлоадер в том случае, в котором на кристале память программ перезаписать нет возможности
Применение внешней памяти для этого, имхо, не лучшее решение. Можно предложить:
1. Поменять МК на другой, имеющий функции самопрограммирования
2. Поставить рядом "мелкий" МК - прошивальщик (бутлоадер) МК, примененного Вами
Go to the top of the page
 
+Quote Post
Ry-Sasha
сообщение Jun 1 2009, 13:06
Сообщение #15


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 2-03-06
Пользователь №: 14 888



Кстати, я считаю, что человек должен знать все способы решения проблемы, пусть даже абсурдные, может в другой ситуации как раз то. что сейчас кажется абсурдным может быть идеальным решением.
В любом случае спасибо за советы.
Go to the top of the page
 
+Quote Post
редактор
сообщение Jul 3 2009, 07:29
Сообщение #16


Местный
***

Группа: Участник
Сообщений: 356
Регистрация: 9-06-07
Пользователь №: 28 315



Подобную задачу решали лет 8-10 назад
Ставили ПЗУ с загрузчиком на младшие 8К памяти
На старшие 8К ставили ОЗУ.
С компьютера грузили программу в ОЗУ и затем оттуда ее выполняли. Использовалось данное решение на макете для отладки программ,
поскольку флашки были труднодоступны а возиться с УФ долго, эмулятор же не обеспечивал быстродействия DALASSa.
Насчет энергонезависимой памяти смотрите в сторону FRAM, достаточно шустрые.
Если совсем извращаться, то можно хранить программу в ПЗУ с последовательным доступом, а при загрузке загонять ее во внешнее ОЗУ.
НО это если с FRAM не получиться


--------------------
Хорошую систему делают из стандартных блоков нестандартно мыслящие инженеры.
Go to the top of the page
 
+Quote Post
pvlad
сообщение Aug 26 2009, 10:21
Сообщение #17





Группа: Участник
Сообщений: 9
Регистрация: 21-11-07
Пользователь №: 32 567



Цитата(редактор @ Jul 3 2009, 11:29) *
Подобную задачу решали лет 8-10 назад
Ставили ПЗУ с загрузчиком на младшие 8К памяти
На старшие 8К ставили ОЗУ.
С компьютера грузили программу в ОЗУ и затем оттуда ее выполняли. Использовалось данное решение на макете для отладки программ,
поскольку флашки были труднодоступны а возиться с УФ долго, эмулятор же не обеспечивал быстродействия DALASSa.
Насчет энергонезависимой памяти смотрите в сторону FRAM, достаточно шустрые.
Если совсем извращаться, то можно хранить программу в ПЗУ с последовательным доступом, а при загрузке загонять ее во внешнее ОЗУ.
НО это если с FRAM не получиться


По такому принципу можно и сейчас делать проекты, если:
1. Проект очень большой, особенно много текстовой или графической информации. Никакая внутренняя Флеш это "не потянет". Приходится постоянно, для исполнения, подгружать блоки в ОЗУ, которое выполняет роль внешнего ПЗУ.
2. Разработчик хочет максимально закрыть проект от копирования, но остается потребность делать частые обновления. Сам клиент находится далеко и приходится высылать ему НЕХ-файлы. Загрузчик во внутренней Флеш закрывается битамы защиты кристалла, а высылаемый НЕХ-файл тоже зашифрован, и алгоритм дешифрации знает загрузчик. В свое время, это спасло нашу молодую фирму (группу разработчиков и программистов), которая отпочковалась от "монстра". Последний захватил все права на производство изделия и стремился любой ценой завладеть программным обеспечением, хотя договор на разработку был заключен с нами.
Недостаток портов компенсируется расширителями портов. Сейчас это не проблема. А внешнюю флешку можно применить любую - хватило бы способностей ее "охомутать".


--------------------
Если ты чего-то не знаешь, то это не значит, что этого не может быть!
Go to the top of the page
 
+Quote Post
MaslovVG
сообщение Aug 26 2009, 11:18
Сообщение #18


Профессионал
*****

Группа: Свой
Сообщений: 1 210
Регистрация: 24-01-05
Из: Россия Волгодонск
Пользователь №: 2 134



Цитата(Палыч @ Jun 1 2009, 15:51) *
Посмотрите время выполнения команды MOVX и сравните со временем записи во flash.

Для записи во флеш вовсе не требуется выдеживать большие длительности сигналов записи. Необходимо просто выдеживать соответствующии паузы между пересылками во флешь пакетов данных. А скорость обмена данными кристалов флеш с процессором не уступает SRAM. Несколько лет назад делал блок памяти в котором флешь и статическое озу висело на одной шине и все работало на скорости 20Мгц.
Кроме того существует быстрая энергонезависимая память например FRAM ф. RAMTRON.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th July 2025 - 01:18
Рейтинг@Mail.ru


Страница сгенерированна за 0.01497 секунд с 7
ELECTRONIX ©2004-2016