|
LPC122x это Cortex-M0 или M0+? |
|
|
3 страниц
1 2 3 >
|
 |
Ответов
(1 - 33)
|
Nov 2 2015, 21:23
|

Профессионал
    
Группа: Свой
Сообщений: 1 080
Регистрация: 16-11-04
Из: СПб
Пользователь №: 1 143

|
Цитата(GetSmart @ Nov 3 2015, 00:08)  Каким способом программно/аппаратно можно определить тип ядра? в NXP есть регистр CPUID [31:24] Implementer Implementer code: 0x41 = ARM [23:20] Variant Variant number, the r value in the rnpn product revision identifier: 0x0 = Revision 0 [19:16] Constant Constant that defines the architecture of the processor:, reads as 0xC = ARMv6-M architecture [15:4] Partno Part number of the processor: 0xC20 = Cortex-M0[3:0] Revision Revision number, the p value in the rnpn product revision identifier: 0x0 = Patch 0 для Cortex-M0+ Partno Part number of the processor 0xC60
--------------------
Марс - единственная планета, полностью населенная роботами (около 7 штук).
|
|
|
|
|
Nov 3 2015, 08:27
|
.
     
Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753

|
Если это M0, то в отличие от всех остальных M0 у LPC122x в юзер мануале есть предложение: Цитата The LPC122x have a high score of over 45 in CoreMark CPU performance benchmark testing, equivalent to 1.51/MHz Что это значит? CoreMark, судя по названию, тестирует ядро.
--------------------
Заблуждаться - Ваше законное право :-)
|
|
|
|
|
Nov 3 2015, 10:20
|

Профессионал
    
Группа: Свой
Сообщений: 1 032
Регистрация: 13-03-08
Из: Маськва
Пользователь №: 35 877

|
... а у M0-не-плюс - 2.33 по тем же заявлениям ( ссылка, оригинал сходу не нашёл). Видимо, ARM рассматривала сферический процессор в вакууме, с бесконечно быстрой шиной. Одно слово - попугаи... PS посмотреть на попугаи других процессоров можно здесь (кнопка "search")
--------------------
Тут обсуждается творческий порыв, а не соответствие каким-либо стандартам ©
|
|
|
|
|
Nov 3 2015, 12:00
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
QUOTE (esaulenka @ Nov 3 2015, 12:20)  ... а у M0-не-плюс - 2.33 по тем же заявлениям ( ссылка, оригинал сходу не нашёл). А вот так сказать "оригинал" http://www.nxp.com/documents/data_sheet/LPC122X.pdfQUOTE (ViKo @ Nov 3 2015, 13:04)  По-моему, в M0+ потребление уменьшали, а не производительность увеличивали. Это на самом деле одно и то же  - при большей производительности можно снизить тактовую или больше спать.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Nov 3 2015, 14:15
|

Универсальный солдатик
     
Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362

|
Цитата(zltigo @ Nov 3 2015, 16:58)  К чему Вы пытаетесь отрицать очевидную вещь... К тому, что главной целью было снижение энергопотребления. А остальное - средства достижения цели. Не думаю, что если взять CM4 (CM7) и заставить его дрыхнуть, и лишь иногда вскакивать и в бешеном темпе что-то делать, то он переплюнет CM0+ по энергоэффективности. Да, там что-то про двухступенчатый конвейер говорится. Ну, улучшили и производительность, спасибо. Кому нужен производительный процессор, тот найдет, что взять. А кто ищет малопотребляющий, чешет репу, чем заменить MSP430, вот ему ARM сделали подарок CM0+!
|
|
|
|
|
Nov 3 2015, 16:02
|

Универсальный солдатик
     
Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362

|
Вы таки желаете, в свойственной вам манере, оставить последнее слово за собой?  Мы о чем-то спорим? О чем, конкретно? Смотреть на производительность в единицах CoreMark или MIPS при выборе процессора CM0 или CM0+ - это надо редким педантом быть. Работает, и ладно. Вот на тактовую частоту глянул, "ага, 48 МГц, не слабо, пойдет", и достаточно.
|
|
|
|
|
Nov 3 2015, 17:12
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
QUOTE (GetSmart @ Nov 3 2015, 19:04)  В каких последовательностях инструкций это проявляется? Как минимум в тех, которые используются в тесте. Тест попугаев при всей его попугаистости, писался не с бодуна и на основе опыта предшественника Dhrystone. Исходники теста доступны для изучения http://www.eembc.org/coremark/download.php . Можете лично откомпилировать и сравнить. Если у Вас вырожденные случаи типа 99% ногодрыжества, то это не проблемы теста.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Nov 3 2015, 17:40
|
.
     
Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753

|
Цитата(zltigo @ Nov 3 2015, 21:12)  Если у Вас вырожденные случаи типа 99% ногодрыжества, то это не проблемы теста. Наоборот. При 99-процентном ногодрыжестве вопросов не возникает. У M0 большинство инструкций 1-тактовые и ускорить без суперскалярности их невозможно. STR/LDR & STM/LDM на M0+ грубо такой же длительностью как в M0, если только не пишут в fastest GPIO (регион 0xa000xxxx). То есть общая растактовка в применении к 90% существующего кода - ТАКАЯ ЖЕ как и у M0. Откуда 50% и где факт? Или неописанная особенность M0 STR/STM на нечётных по маске 0x02 адресах RAM тоже "прогибает" (участвует в учёте) относительное ускорение M0+ ? Среднестатистически таких инструкций много в среднестатистическом коде. Но 99% кода обычно исполняется из флэш. Цитата(zltigo) Факта экономии энергии за счет полуторократного повышения производительности при той-же тактовой это не изменит. Этот факт убежал вперёд паровоза. Сперва надо доказать факт "полуторократного повышения производительности". И обозначить прицеп оговорок.
Сообщение отредактировал GetSmart - Nov 4 2015, 16:20
--------------------
Заблуждаться - Ваше законное право :-)
|
|
|
|
|
Nov 3 2015, 18:21
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
QUOTE (ViKo @ Nov 3 2015, 20:12)  Я считаю, что ляпнули именно вы. По-вашему, увеличение производительности равно уменьшению потребления? Именно такую галиматью вы отстаиваете.  То что я написал совершенно не трудно прочитать в прямом изложении а не пытаться извращать написанное в меру своего, скажем так, непонимания. QUOTE (GetSmart @ Nov 3 2015, 19:40)  Этот факт убежал вперёд паровоза. Сперва надо доказать факт "полуторократного повышения производительности". И обозначить прицеп оговорок. С этим Вам жаловаться во всемирную лигу сексупльных реформ на компанию ARM, которая официально выдала эти цифры по результатам совершенно конкретных ПРИЗНАННЫХ (не Вами, конечно  ) и ОТКРЫТЫХ для изучения тестов производительности.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Nov 3 2015, 18:39
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
QUOTE (ViKo @ Nov 3 2015, 20:31)  CM0 2.33 CoreMarks/MHz CM0+ 2.46 CoreMarks/MHz
По-вашему, это в 1,5 раза? Найдете сами на сайте. В данных NXP для 0 было 1.51. Ссылку давал. QUOTE (ViKo @ Nov 3 2015, 20:31)  Так что ваше "прямое изложение" тоже слегка хромает. Не несите пургу. Речь я вел о качественных показателях которые приводят к снижению энергопотребления. Вот то, что Вас побудило к тому, что Вы назвали "спором": QUOTE Это на самом деле одно и то же sm.gif - при большей производительности можно снизить тактовую или больше спать. ... повышение производительности НЕ за счет повышения тактовой поводит и к экономмии энергии Где Вам привидились хоть какие-то цифры?
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Nov 4 2015, 15:10
|

Профессионал
    
Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718

|
Цитата Неужели производитель микроконтроллера не выдает информацию, на каком ядре тот сделан? я бы сказал, что это смена поколений на форуме... нет, это сейчас тренд такой - даже опытные товарищи не хотят ничего читать. можно использовать старую фразу, которую применяют к видеопродукции сериального типа: скатился в ...ое ...но.  Цитата LPC122x это Cortex-M0 или M0+? А ещё любят потрындеть, что трындят другие, потому сразу укажу, что говорит нам производитель сиих МК: LPC122x - M0 LPC43xx - M4F + M0 LPC11U6/LPC11E6 - M0+, остальные - M0.
|
|
|
|
|
Nov 5 2015, 10:41
|
.
     
Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753

|
По поводу "чистокровности" стартовых/большинства процессоров NXP M0 может быть погорячился. Т.к. требуется проверка у других производителей. Может эта фича самого производителя - NXP. Ещё одно отличие в растактовке M0 и M0+, кроме переходов, существует - команды MSR/MRS, которые, что очень хорошо, не связаны с обращением к шинам. В LPC122x MSR/MRS = 4 тактам. В LPC81x MSR/MRS = 3 тактам. Т.о. LPC122x = M0 без плюса. Цитата(jcxz) В M0 есть Usage-fault? Не работал с ними. Если есть - делаете обработчик этого исключения и пробуете выполнять команды поддерживаемые во всё более и более старших ядрах, пока не поймаете соответствующее исключение. Так сможете сориентироваться где вы находитесь внутри линейки Cortex-M. Вопрос не тот задал. Цель была защитить какой-то асм-исходник от изменений растактовки инструкций, например ARMv6-M для M0. Гипотетически, даже в новой ревизии камня. При этом классифицировать ядро по терминологии ARM будет даже лишним. И ответ скорее всего очевиден - написать измерялку растактовки под свои требования. Т.к. кроме ядер от ARM могут быть ещё фичи производителей. Цитата(smalcom) что говорит нам производитель сиих МК: Цель темы - объяснить отличие обозначенных отличий растактовок процессоров с ядрами M0 производителя NXP. А так же, отличие от "официальных" растактовок ARM. Это работа посложнее чтения. Так же встречал опечатку, которая по этой причине попала в название этой темы.
Сообщение отредактировал GetSmart - Nov 5 2015, 17:07
--------------------
Заблуждаться - Ваше законное право :-)
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|