Отговори на тема  [ 7 мнения ] 
GD32 Flash 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 5:52 pm
Мнения: 10356
Местоположение: Добрич
Мнение GD32 Flash
Случайно някой да има информация каква точно боза са сътворили тия гадове с вътрешния флаш?
И особено дали има някакво лечение или каузата е обречена?

Единственото което намирам като информация е на китайски от други китайчета, които са си направили труда да изпилят един чеп и според тях "вътрешният" флаш е всъщност външен SPI флаш на отделен кристал. От там и достъпът до него на моменти е фантастично бърз... Те са рязали F1, ние бъзикаме F4 но резултатите са още по-фантастични :-(


Вто Мар 14, 2023 9:17 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: GD32 Flash
https://github.com/CommunityGD32Cores

_________________
main[-1u]={1};


Сря Мар 15, 2023 12:33 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 5:52 pm
Мнения: 10356
Местоположение: Добрич
Мнение Re: GD32 Flash
Ние кода си го имаме вече... Идеята е да се смени само проца, т.е. вместо с STM платките да се насищат с GD. Или обратно, в зависимост какво е налично в момента.

Проблемът е, че проектът е към 800К, а при тия гадове само първите 512К от флаша са бързи. Целият може да се ползва за код, обаче казват:

Код:
The region of the MCU executing instructions without waiting time is up to 512K bytes (in
case that Flash size equal to 512K, all memory is no waiting time). A long delay when
CPU fetches the instructions out of the range


Ние това го видяхме още в началото, обаче никъде няма документирано какво точно се разбира под "long delay". И тъй като досега не сме имали ядове с бързодействието на проца, решихме че някой друг wait state от време на време изобщо няма да се усети. Да, обаче се оказа че се усеща и се усеща зверски. На практика cpu usage-a се умножи по 10.
В idle режим това не е фатално. Вместо 0.1 - 0.2% става 1-2% CPU usage, голям праз. При някои операции с ST имаме 1-5% cpu usage, при GD отива на 10-50%. И това да кажем се търпи. Обаче когато при ST имаме 10% или повече при GD става страшно... Работи, но се влачи като народна песен.
Демек очаквахме бавният флаш да има някакъв ефект, но не сме предполагали че ще е чак толкова драматичен. То като няма точна спецификация кое как се случва не знаеш какво да очакваш. Даже първоначално си мислехме да не би нещо да не сме подкарали както трябва, да сме го пуснали на по-ниска честота, нещо някоя периферия да прави мизерии и т.н. Затова почнахме да правим различни тестове. Което още повече ни обърка, защото примерно правиш цикъл само с един NOP и той работи без забележки както в бързия, така и в бавния флаш. Разгъваш цикъла, т.е. слагам 1000 NOP-a последователно и бум. В бавния флаш изпълнението става пълна трагедия. По 10-12 клока на NOP. Та почваш да се чудиш дали има някакъв кеш, щото краткия цикъл си работи. Или просто работи на парчета и като минеш границата на две парчета увисва докато презареди и т.н. Другото объркващо е, че като се ползва за данни "бавната" половина се държи сякаш има само 1WS, докато бързата е с 2WS. От една страна е логично - бързата половина е оптимизирана за код, пък другата е за данни. Но пък не се вързва с теорията за малкия кеш, освен ако кеша не е само за инструкции. Не се вързва и с теорията за парчетата, щото за 1 клок нищо не може да се презареди.
Изобщо пълна магия е какво са направили и как са го направили. По-скоро въпросът беше дали ние можем да направим нещо, евентуално да разместваме код или нещо друго, така че да замажем някак си положението. Но след всички тестове решихме да не се занимаваме с глупости. Просто тия гадове очевидно могат да се ползват, но само ако кода се събира в рамките на бързата част. Всичко друго е лотария. Освен ако не се намери точна информация как работи флаша. Но според ако имаше начин тоя флаш да се използва за код те щяха да го кажат в документацията. Фактът, че не дават никаква информация и се измъкват с лафа "long delay", според мен означава, че няма смисъл да си губим времето.


Сря Мар 15, 2023 9:47 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: GD32 Flash
гита ... Maximilian Gerhardt ( работи за PlatformIO ) .. пича е точен и 90% познава ора от GD
обясни му ... навярно ще намери инфо
https://github.com/maxgerhardt

_________________
main[-1u]={1};


Сря Мар 15, 2023 11:24 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Сря Фев 13, 2013 2:35 pm
Мнения: 1748
Мнение Re: GD32 Flash
Moжеш ли да ги адресираш програмните модули? Които се изпълняват рядко- инициализаци, някои проверки, рядко ползвани променливи - отзад?
И каква е тази голяма програма? Купих си и аз с дисплей китчета и не съм ги пробвал още...
Имат в същият корпус и RISK V


Пон Мар 20, 2023 2:47 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 5:52 pm
Мнения: 10356
Местоположение: Добрич
Мнение Re: GD32 Flash
На теория можем всичко ;-)
На практика... е проблем. Първо наистина става дума за много код. Тия 800К са това, което остава, но има много условни компилации, т.е. неща които не се компилират. Други се компилират, но се разкарват от линкера тъй като не се ползват и т.н.
Засега проблемът е докладван на началството, ако то каже да действаме. По принцип гадовете имат и чеп с 1MB в който ще се съберем, има и други китайци, ST също предлагат нови чепове. Не е като да сме на живот и смърт. По-скоро идеята да имаме алтернативен доставчик беше много примамлива.


Пон Мар 20, 2023 5:06 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Сря Фев 13, 2013 2:35 pm
Мнения: 1748
Мнение Re: GD32 Flash
Да - и на мен това ми харесва, че поне на Ф103 има към над 5 производителя на аналози в корпуса и възможности.


Вто Мар 21, 2023 11:29 pm
Профил WWW
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 7 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 3 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни