K1921ВГ015 Syntacore проблема с float

32-разрядные микроконтроллеры разработки АО "НИИЭТ"

Модераторы: ea, dav, bkolbov, Alis, pip, _sva_

RabidRabbit
Сообщения: 271
Зарегистрирован: 10 июн 2025, 12:11
Предприятие: HomeWork

Re: K1921ВГ015 Syntacore проблема с float

Сообщение RabidRabbit »

Вот это "Warn : no flash bank found for address 0x4003f000" очень странно, ибо это в принципе примерно область размещения стека и сегмент имеет единственный атрибут ALLOC. Почему оно пытается что-то туда записать, и тем более как во флэш, вообще не понятно.

На счёт "зашивки" elf - по-моему мнению, тот самый "патченный" openocd должен по адресу сам определять регионы памяти, флэш это или ОЗУ.
На счёт "зашивки" hex - после riscv64-unknown-elf-objcopy -i ihex out.elf out.hex там нет отдельных сегментов, как в elf (хотя такая возможность есть), по сути это bin (просто кусок байтов, последовательность сегментов из скрипта компоновщика), только с указанием начального адреса, где этот bin располагать. При сборке для флэша там будет 0x80000000 (или какой там в скрипте компоновщика указан), а при сборке для ОЗУ - соответственно 0x40000000.
Аватара пользователя
ejsan
Сообщения: 118
Зарегистрирован: 15 авг 2022, 21:17
Предприятие: vbrspb.ru

Re: K1921ВГ015 Syntacore проблема с float

Сообщение ejsan »

Криво-косо, но кажется удалось заставить работать виндовскую сборку клаудбировского GCC. Постепенно заменял в синтакоровской версии файлы, начиная с riscv64-unknown-elf-gcc.exe, до тех пор, пока она не заработала (если просто взять и сходу заменить папку, у меня сыпались странные ошибки). Не сомневаюсь, что, по идее, так делать нельзя, но по крайней мере теперь компилятор кушает заветную опцию «-mfix-cloudbear-0001» и не давится. :roll: Которую я забил в эклипсовском проекте в разделе GNU RISC-V cross C compiler-Miscellaneous-Other compiler flags. Если кто-то желает взглянуть на это чудище, то вот держите https://drive.google.com/file/d/1rJU_e5 ... sp=sharing
RabidRabbit
Сообщения: 271
Зарегистрирован: 10 июн 2025, 12:11
Предприятие: HomeWork

Re: K1921ВГ015 Syntacore проблема с float

Сообщение RabidRabbit »

В итоге Ваш софт собирается, прошивается и работает в любых вариантах (отладка/релиз)?
Аватара пользователя
ejsan
Сообщения: 118
Зарегистрирован: 15 авг 2022, 21:17
Предприятие: vbrspb.ru

Re: K1921ВГ015 Syntacore проблема с float

Сообщение ejsan »

Представляете, да! :lol: Но только, если шью именно elf, а не hex.
RabidRabbit
Сообщения: 271
Зарегистрирован: 10 июн 2025, 12:11
Предприятие: HomeWork

Re: K1921ВГ015 Syntacore проблема с float

Сообщение RabidRabbit »

По-моему достойный результат :)
LexaK
Сообщения: 2
Зарегистрирован: 13 апр 2025, 17:11
Предприятие: физ. лицо

Re: K1921ВГ015 Syntacore проблема с float

Сообщение LexaK »

у меня прошивка HEX стала работать, когда в параметры конвертора добавил указание сегментов:

Код: Выделить всё

.text.startup
.sdata
.text.crt
.rodata
.srodata
.tdata
.tbss
Screenshot_20251104_232605.png
Screenshot_20251104_232605.png (114.76 КБ) 2382 просмотра
RabidRabbit
Сообщения: 271
Зарегистрирован: 10 июн 2025, 12:11
Предприятие: HomeWork

Re: K1921ВГ015 Syntacore проблема с float

Сообщение RabidRabbit »

Точно ничего не забыли? А что говорит

Код: Выделить всё

risc64-unknown-elf-objdump -h out.elf
?
Аватара пользователя
ejsan
Сообщения: 118
Зарегистрирован: 15 авг 2022, 21:17
Предприятие: vbrspb.ru

Re: K1921ВГ015 Syntacore проблема с float

Сообщение ejsan »

LexaK писал(а): ↑04 ноя 2025, 23:25 у меня прошивка HEX стала работать, когда в параметры конвертора добавил указание сегментов:
Да, этот фокус у меня тоже сработал! Спасибо. :)
Ответить

Вернуться в «32-разрядные микроконтроллеры»