GD32 - программа письма Ram

Пито
Ср. 04 мая 2016 г. 8:43
Привет, я попытался найти таблицу данных, но кроме маркетингового документа под названием DataSheet, я не нашел никакого.
Итак, мой Q к более счастливым пользователям GD - можно ли записать/читать в программу ОЗУ (64/128 КБ)?
П.

Rogerclark
Ср. 04 мая 2016 г., 11:05
Что вы имеете в виду под программой ram ?

Вы имеете в виду EEPROM или несколько байтов не нестабильной ОЗУ

Я сомневаюсь, что GD32 отличается от STM32 в том, как вы пишете, на самом деле, загрузчик, который записывает EEPROM, является прямой копией загрузчика STM32.

Если вы имеете в виду не нестабильный ОЗУ, я смутно вспоминаю, как смотрел на форум что -то на форуме, так как это могло быть полезно для передачи сигналов от эскиза на загрузчику, но мы никогда не использовали его для этого, и я никого не думаю иначе использует его.
Но если бы кто -нибудь знал о NV Ram, я думаю, это будет @ahull

Пито
Ср. 04 мая 2016 г. 14:37
GD - без вспышки чип.
На верхней части руки приклеивается второй чип - вспышка SPI 128KB, а серийная вспышка 8PIN связана с рукой.
При загрузке GD читает Flash SPI в оперативной памяти программы - есть 128 КБ большой «ОЗУ».
Затем он запускает программу из оперативной памяти. Следовательно, 0 штатов. И другие последствия - т.е. написание для Flash может быть медленным..

Мой Q о написании/чтении оперативной памяти программы 128 КБ (не R/W на внешний флеш -микросхема или 20 КБ ОЗУ).

Ахулл
Ср. 04 мая 2016 г. 14:43
Пито написал:GD - без вспышки чип. На верхней части руки приклеивается второй чип - вспышка SPI 128KB, а серийная вспышка 8PIN связана с рукой. При загрузке GD читает вспышку SPI в оперативную память - есть 128 КБ большой оперативной памяти. Затем он запускает программу из оперативной памяти. Следовательно, 0 штатов. И другие последствия - т.е. написание для Flash может быть медленным..
Мой Q был около 128 КБ программы ОЗУ.

Пито
Ср. 04 мая 2016 г. 14:51
Нам нужен хороший рефман для этого, я не могу найти ни одного. Написание в «Пространство программы», скорее всего, закончится написанием на внешнюю вспышку. И, может быть, и для барана. Если нет "переключателя" только для доступа к оперативной памяти .. Думая об обходе вспышки.. Было бы здорово иметь чип GD32 без флэш -чипа. Таким образом, я могу загрузить/хранить двоичные файлы с внешней SPI Fram/SRAM/MRAM или изменить программу в PROG_RAM на лете... 8-)

Werecatf
Ср. 04 мая 2016 г. 15:20
Пито написал:GD - без вспышки чип.
На верхней части руки приклеивается второй чип - вспышка SPI 128KB, а серийная вспышка 8PIN связана с рукой.
При загрузке GD читает Flash SPI в оперативной памяти программы - есть 128 КБ большой «ОЗУ».
Затем он запускает программу из оперативной памяти. Следовательно, 0 штатов.

Martinayotte
Ср. 04 мая 2016 г. 15:35
Да, это было интересно, когда он вышел:
http: // zeptobars.com/en/read/gd32f103cb ... GA-Devices

Пито
Ср. 04 мая 2016 г. 18:54
Да, мы обсудили это месяц назад в теме «Как работает чип»..

Racemaniac
Ср. 04 мая 2016 г., 19:41
Я недавно работал с некоторыми флэш -чипами, и если вспышка в GD32 - это что -то вроде другой вспышки, которую я видел до сих пор, это не будет так просто, как написание по определенному адресу памяти. Чтобы написать в раздел вспышки, вы должны сначала очистить ее (и, таким образом, это не только те биты, которые вы хотите, это должно быть хотя бы страница), а затем написать нужные данные (также обычно на странице на страницу). На чипе 4 МБ у меня есть размер страницы 256 байтов. и написание довольно медленное, так как очистка такой страницы занимает 40 мс.
Чтение, однако, быстрое :).

*редактировать*
Я только что прочитал это зеркальное для Шрама, это действительно интересно xD

Martinayotte
Ср. 04 мая 2016 г., 19:48
Даже не уверен, что механики доступны на стороне процессора, трансферы могут быть выполнены в оборудовании как для направления, так и для оперативной памяти по -прежнему рассматривались как эмулированная вспышка, совместимая с STM One, в случае F1XXX, со страницами 1 кб.

Rogerclark
Ср. 04 мая 2016 г., 21:43
@pito

Спасибо, что поучили меня.

До вашего поста я подумал. (Как я пропустил другой пост и эта ссылка на разрыв матрицы)

Я вспоминаю, как публиковал ссылку на руководство по программированию GD32 на форум, но я не знаю, содержала ли в нем информация о программе Access Ram Ram.

Пробовали ли вы провести тест, например, объявление буфера для статического шарика (который компилятор и линкера вкладывают .Родата), а затем попытка написать к нему? Я предполагаю, что программа ОЗУ должна быть защищена писать ?

Кроме того, загрузчик записывает в EEPROM, который должен копировать обратно в программу RAM.
Тем не менее, я предполагаю, что вы хотите быстрый доступ к программе ОЗУ, не ожидая, когда вспышка будет стирать и т. Д.

Редактировать.

Ссылка в оригинальном потоке была сломана, но я обнаружил, что скачал, я получил его имени файла, а затем погуглил для этого имени файла и нашел это

http: // gd32mcu.21ic.com/data/documents/ ... Env1.0.PDF

Там Руководство STM32F103 структурировано совершенно иначе, чем руководство GD32. Так что трудно сравнить регистры.

Я помню много лет назад, что на сайте русского языка была ветка, в которой изложены различия между регистрами GD32 и STM32, но я не помню, чтобы кто -то понял, что она фактически скопировала программу в Ram в Startup.
(Он также должен был скопировать после получения доступа к EEPROM сразу после его вспышки)

Редактировать.

Если вам не удастся скачать руководство, дайте мне знать, и я помесчу его на свой Google Drive, так как это гораздо больше (15 МБ), чтобы опубликовать в качестве вложения на форум

Ахулл
Ср. 04 мая 2016 г. 11:28
Что ж, я думаю, что один из подходов - написать уникальную строку для вспышки, а затем подготовить карту памяти снизу вверх, в поисках всех вхождений этой строки. Если флэш -память действительно скопирована с каким -то ОЗУ, и эта оперативная память отображается для адресации пространства, строка должна отображаться на карте памяти. Поэтому вы должны найти укус как минимум в двух местах. Однажды, где переменная, с которой вы сравниваете, чтобы выполнить свой поиск, и один раз, где появляется флэш -копия в ОЗУ. Вы также можете искать контрольную сумму строки, избегая второй копии в любом месте. Вы только тогда найдете копию, которая, по нашему мнению, будет передана от Flash в Ram. Вам, возможно, придется следить за эндсианом, так как вы не можете быть абсолютно уверены, как будет представлена ​​строка, но мое ощущение интуиции будет сохранено в байтовом порядке или в порядке обратного байта.

Rogerclark
Ср. 04 мая 2016 г., 23:49
Хорошая идея, Энди

Начните с того, что вы можете иметь что -то вроде от 0хаа до 128 байтов рядом друг с другом в качестве постоянного баффа, то если вы найдете этот шаблон только в одном месте, вы можете попробовать использовать какое -то другое значение E.g 0x55 и посмотрите, он заканчивается в том же месте, а затем попробуйте 0x12345678 и выпустите байт -заказ

Пито
Чт 5 мая 2016 г., 6:28
Он скачал прекрасно и быстро. 8 МБ рарели. Спасибо.
Я думаю, что они используют один быстрый SPI для вспышки. Реализован погрузчик прошивки, который загружает/записывает/отражает вспышку в ОЗУ. При записи на вспышку на лету вы должны сделать запись в оперативной памяти впоследствии.
Я видел где -то, когда парень писал GD «перестает работать на некоторое время писать на вспышке». Это основное различие против STM (это было до разрыва).
Отличная идея, действительно :)

GD32F103VET6 Правление