Отговори на тема  [ 124 мнения ]  Отиди на страница 1, 2, 3, 4, 5 ... 9  Следваща
Cortex-M33 
Автор Съобщение
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Фев 16, 2018 8:07 am
Мнения: 51
Мнение Cortex-M33
Прикачени файлове:
CORTEXM3RP.jpg
CORTEXM3RP.jpg [ 939.46 KiB | Прегледано 5007 пъти ]
Някой да е попадал на малка по обем, до десетина мегабайта програма за Cortex-M33, която да може да чете hex и bin файлове?
Да ги реасемблира, да има вграден емулатор за Cortex-M33, да има прост редактор който да позволява промени в програмата и да има възможност после отново да запише протестваната и редактирана програма в hex или bin файл.
Имаше нещо подобно за Cortex-M3.
Вижте снимката в прикачения файл.


Пет Фев 16, 2018 9:13 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 12, 2004 2:38 pm
Мнения: 9103
Местоположение: Chicago, IL
Мнение Re: Cortex-M33
Просто ми стана любопитно - ако има, но е примерно 15 мегабайта какво правим тогава?


Пет Фев 16, 2018 2:05 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 5:52 pm
Мнения: 10372
Местоположение: Добрич
Мнение Re: Cortex-M33
M33 си е Thumb2, т.е. всеки ARMv7 дизасемблер би трябвало да се справи, но като гледам другите изисквания се сещам само за IDA Pro.


Пет Фев 16, 2018 5:59 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Фев 16, 2018 8:07 am
Мнения: 51
Мнение Re: Cortex-M33
Прикачени файлове:
Pic.jpg
Pic.jpg [ 635.57 KiB | Прегледано 4920 пъти ]
Tази програма за Cortex-M3 от снимката беше само 2-3 мегабайта, попаднах на нея преди 5-6 години.
Беше заедно с още една подобна програма, но за PIC микроконтролери с много странен асемблер, някакъв микс между Z80 и 6502. Поне така ми изглежда на мен. Но машинният код във Hex файла който генерираше, съответстваше на малките PIC микроконтролери.
Тогава запазих само тази за PIC микроконтролерите, тази за Cortex-M3 само я пробвах и изтрих. Бях я взел от един руски сайт, но него вече го няма. Останали са само няколко скрийншота от програмата.
И тя щеше да ми свърши работа, защото разликите между асемблера на Cortex-M3 и Cortex-M33 са само няколко инструкции (ако изключим dsp & fpu) но не мога да я открия никъде.
Тази за PIC микроконтролерите е още по малка.
Виж снимката.
Затова предполагам, че и други подобни програми няма да са много по големи като обем.


Пет Фев 16, 2018 6:03 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Фев 16, 2018 8:07 am
Мнения: 51
Мнение Re: Cortex-M33
Ако е само за дизасемблер IDA Pro върши работа, но на мен ми трябва да има и емулатор(симулатор) с възможност да се правят корекции в програмата и после да се запишат обратно в bin или hex файл.
Иначе в интернет има онлайн АRМ асемблери и дизасемлери, но нямат емулатор който да може да изпълнява кода на програмата, за да се види какво точно прави.
http://armconverter.com
http://armconverter.com/hextoarm/


Пет Фев 16, 2018 6:15 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Фев 16, 2018 8:07 am
Мнения: 51
Мнение Re: Cortex-M33
Сега пуснах IDA Pro и виждам, че има някаква опция за debugger, но изглежда ползва външна програма за тази цел.
Няма ли някоя специализирана програма за Reverse engineering за Cortex-M3?


Пет Фев 16, 2018 6:29 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 5:52 pm
Мнения: 10372
Местоположение: Добрич
Мнение Re: Cortex-M33
Garcor написа:
Няма ли някоя специализирана програма за Reverse engineering за Cortex-M3?


Може и да има, но ти си първия с такъв въпрос (обикновено М3 са заключени и няма какво да ревърсваш).
За емулатор QEMU ама едва ли ще ти свърши работа... а и емулатори по принцип не се използват, защото са без емулация на перифериите, което в общия случаи ги прави безполезни.


Пет Фев 16, 2018 7:02 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Фев 16, 2018 8:07 am
Мнения: 51
Мнение Re: Cortex-M33
Прикачени файлове:
MD.jpg
MD.jpg [ 190.49 KiB | Прегледано 4888 пъти ]
miro_atc написа:

Може и да има, но ти си първия с такъв въпрос (обикновено М3 са заключени и няма какво да ревърсваш).

Аз програмата я имам като hex файлове в около 50 версии.
В последните версии има някои инструкции които са от ARMv8-M.
По принцип зная какво точно прави програмата и имам по старата схема с Cortex-M3.
Виж снимката.
Но ми трябва подходяща програма за да я доразнищя.
:D


Пет Фев 16, 2018 8:15 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 5:52 pm
Мнения: 10372
Местоположение: Добрич
Мнение Re: Cortex-M33
Сега остана да ми кажеш че и jtag/swd са ти оставили?
и тогава няма да ти трябва емулатор ;-)


Пет Фев 16, 2018 8:30 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Фев 16, 2018 8:07 am
Мнения: 51
Мнение Re: Cortex-M33
miro_atc написа:
Сега остана да ми кажеш че и jtag/swd са ти оставили?
и тогава няма да ти трябва емулатор ;-)

Програмирам го чрез USART
Е, нямам изходните файлове които са написани на С.
Но асемблерът на Cortex-M3 до такава степен е адаптиран за удобство на С компилаторите, че не е толкова труден за разчитане.
:)
Това е схема на металдетектор работещ на принципа на индуктивния баланс.
Трябва да променя някои от параметрите му.
Прикачени файлове:
QMD.jpg
QMD.jpg [ 126.94 KiB | Прегледано 4847 пъти ]


Пет Фев 16, 2018 9:01 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 5:52 pm
Мнения: 10372
Местоположение: Добрич
Мнение Re: Cortex-M33
На снимката не се вижда какъв е чепа, но предполагам ти си го знаеш, така че може да проследиш jtag/swd пиновете дали са изведени на някой конектор или в краен случай ти да си ги изведеш.
След това ти трябва openocd или jlink или там каквото намериш. Те си имат конзола (за jlink-a и приложения), та през конзолата може да четеш/пишеш памети/регистри въобще имаш пълен достъп до проца. Може и да дебъгваш през конзолата, но по-удобно е с нормален дебъгер.
При варианта с openocd то си отваря два порта 3333 и 4444 мисля бяха, единият ти е за конзола за теб (ако искаш) другия е gdb server (remote). При jlink се пускаше jserver или нещо подобно за да ти направи gdb server. Към тоя сървър може да се закачаш с всякакви GDB базирани дебъгери. Включително и IDA-та би трябвало да го поддържа. Така че закачаш се, дебъгваш, може да слагаш брейкпоинти там където си мислиш че е интересно. Примерно някъде се зарежда константа в някой регистър, след зареждането ти може да промениш регистъра все едно че константата е била друга и да видиш нататък как ще се държи програмата. Но ти сигурно си наясно как стават тия работи ;-)


Съб Фев 17, 2018 9:16 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Сря Фев 13, 2013 2:35 pm
Мнения: 1748
Мнение Re: Cortex-M33
Добре де- какви чепове М23-33 са се появили, че не съм срещал още?


Съб Фев 17, 2018 11:35 am
Профил WWW
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Фев 16, 2018 8:07 am
Мнения: 51
Мнение Re: Cortex-M33
miro_atc написа:
На снимката не се вижда какъв е чепа, но предполагам ти си го знаеш, така че може да проследиш jtag/swd пиновете дали са изведени на някой конектор или в краен случай ти да си ги изведеш.

Не са изведени, но си прав, май най добре да ги изведа и да действам по класическия начин.


Съб Фев 17, 2018 11:53 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Сря Юли 11, 2007 9:16 am
Мнения: 1705
Мнение Re: Cortex-M33
Е можеше просто да ни пуснеш един линк до тук вместо да ни мъчиш с онази схема-тъмбнейл.


Съб Фев 17, 2018 12:23 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Фев 16, 2018 8:07 am
Мнения: 51
Мнение Re: Cortex-M33
bobihot написа:
Добре де- какви чепове М23-33 са се появили, че не съм срещал още?

Засега ги използват за IoT, но сигурно скоро ще ги пуснат и за масова употреба, защото големите производители на микроконтролери вече са купили лиценза.
Иначе документацията за ARMv8-M я има отдавна.
Arm Cortex‑M33 Processor Technical Reference Manual
https://developer.arm.com/docs/100230/0003
The ARMv8-M Baseline offers improvements over previous M-profile
architectures in the following areas:
• The optional Security Extension.
• An improved, optional, Memory Protection Unit (MPU) model.
• Alignment with ARMv8-A and ARMv8-R memory types.
• Stack pointer limit checking.
• Improved support for multi-processing.
• Better alignment with C11 and C11++ standards.
• Enhanced debug capabilities.
The ARMv8-M architecture introduces a number of new instructions to the M-profile architecture to support asset
protection. These instructions are only available to implementations that support the Security Extension'
The ARMv8-M architecture adds instructions to support:
• Improved facilitation of execute-only code generation.
• Improved code optimization.
• Exclusive memory access instructions to enhance support for multiprocessor systems.
• Semaphores and atomics (Load-Acquire/Store-Release instructions).


Съб Фев 17, 2018 12:28 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 124 мнения ]  Отиди на страница 1, 2, 3, 4, 5 ... 9  Следваща

Кой е на линия

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


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

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