|
|
  |
Cortex-M7, Не угнаться. |
|
|
|
Mar 29 2015, 09:49
|
Частый гость
 
Группа: Участник
Сообщений: 177
Регистрация: 24-03-07
Пользователь №: 26 471

|
Писать на сях - всё равно что пользоваться русским через гуглопереводчик. Есть единый язык, ассемблер. Глянул документик, ну нормально, для 2000 года вообще фантастика. Тогда ещё слова "микроконтроллер" не существовало. В реальности F4 уже давно зарулил всё это. За счёт влияния на флаги и условного исполнения, F4 вообще незарулен. Там много вкусностей. Хотя странно конечно... Кортексу понадобилось 15 лет, что бы повторить математический успех DSP двухтысячных?
|
|
|
|
|
Mar 29 2015, 10:37
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(LWW @ Mar 29 2015, 12:49)  Писать на сях - всё равно что пользоваться русским через гуглопереводчик. Есть единый язык, ассемблер. Вы бы постеснялись высказывать такие заявления... Не надо путать систему команд, язык ассемблера, архитектуру ядра, надежность, быстродействие, русский язык и 137 метров кабеля. Без обид: система команд cortex задумана как самая оптимальная для ЯВУ типа Си; архитектура cortex задумана как дружественная для rtos. В задачах "ШИМ" и "CAN" гораздо удобнее пользоваться Си. Вы операционками не пробовали заняться, чтоб "выдавить" по максимуму из архитектуру и системы команд? В рамках топика "Cortex-M7" глупо обсуждать asm, т.к. и размера памяти, и быстродействия у МК будет огромное количество, - а забить мегабайты asm-кодом не реально) Надежность программы целиком зависит от программиста. CAN одинаково будет работать на 137 метрах как в программе на asm, так и на Си. Разве нет? Кста: программу для Cortex-M можно целиком написать на Си без единой asm-строчки (включая startup).
|
|
|
|
|
Mar 29 2015, 10:47
|
Частый гость
 
Группа: Участник
Сообщений: 177
Регистрация: 24-03-07
Пользователь №: 26 471

|
p.s. если кто не знал, то вот и вот. Всего инструкций, как минимум: 116 - ядро 88 - DSP 36 - мат. сопроцессор Но многие из них расширяются, в итоге иинструкций становится тысячи. Есть инструкции, работающие с 3 и 4 регистрами одновременно. Мало? Плохой ассемблер  В M7 ещё ожидаются улучшения сопроцессора, по поводу двойной точки. Ждёмс, ещё не выложили.. p.p.s. как замутить ассемблерный проект - тык.
|
|
|
|
|
Mar 29 2015, 18:09
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Да Фигня это все С, ассемблер. Вот релейная логика - это тема... Все равно ваш процессор в итоге переключающиеся транзисторы, так зачем он нужен? Есть единый - схема....
Упираться сейчас в ассемблер, уже не можно, эта мода прошла где то в 90 годы прошлого века, если не ошибаюсь...
Программа на С пишется быстрее и с меньшими трудозатратами, значит более трудный проект будет написан быстрее или с меньшим число ошибок. Что в итоге влияет на цену, и как не странно качество продукта. Потому что хорошо понятно написанный код с продуманной архитектурой может в принципе не иметь ошибок кроме системных. А последние в удобно читаемом коде правятся опять же быстрее и лучше. В итоге конечный пользователь получает хороший продукт и в срок, а не пойми что, что гномы ковали в пещере год, а потом еще 3 отлаживали....
Потому вести проект на ассемблере сейчас - это вредительство и саботаж! И если в 90 еще кто-то как-то еще выступал, то сейчас это однозначно!
|
|
|
|
|
Mar 30 2015, 10:13
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(Golikov A. @ Mar 29 2015, 21:09)  Упираться сейчас в ассемблер, уже не можно, эта мода прошла где то в 90 годы прошлого века, если не ошибаюсь...
Программа на С пишется быстрее и с меньшими трудозатратами, значит более трудный проект будет написан быстрее или с меньшим число ошибок. Что в итоге влияет на цену, и как не странно качество продукта. Потому что хорошо понятно написанный код с продуманной архитектурой может в принципе не иметь ошибок кроме системных. А последние в удобно читаемом коде правятся опять же быстрее и лучше. В итоге конечный пользователь получает хороший продукт и в срок, а не пойми что, что гномы ковали в пещере год, а потом еще 3 отлаживали.... Ой ну вот развели... Сам сначала начинал на асме писать, асм вообще был самый путевый еще у деков , потом уж у авр, но стали расти требования к ПО, и уже писать на асме графику или сложные протоколы стало проблематично, поэтому перешел на си, о чем нисколько не жалею... Меня другое раздражает в нынешних программерах, особенно в инетных, помню, лет 8 назад, чтоб проверить почту, загружал 50-70 кило кода и все работало прекрасно, скорости хватало, кэша в тамошнем браузере тоже, теперь - это кошмар, по нескольку мегабайт грузит как правило совсем ненужного кода и скриптов, в обычном ПО, то же самое, проги занимают мегабайы и гигабайты, тормозят, глючат, хотя по функционалу вообще не очень, что и изменилось, требуются всякие фреймворки пачками... Сорри за оффтоп, но может мне объяснить тут кто популярно без кучи терминов, в чем вообще разница простого визуального программирования на сях или дельфи, с теперешним новомодным дотнетом и всякими шарпами??? Сразу скажу, я по большей части эмбеддер, но иногда приходится писать на си для винды, поэтому и хочется узнать ответ на данный вопрос.
|
|
|
|
|
Mar 30 2015, 11:16
|

Гуру
     
Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237

|
Цитата(mantech @ Mar 30 2015, 13:13)  Сорри за оффтоп, но может мне объяснить тут кто популярно без кучи терминов, в чем вообще разница простого визуального программирования на сях или дельфи, с теперешним новомодным дотнетом и всякими шарпами??? Сразу скажу, я по большей части эмбеддер, но иногда приходится писать на си для винды, поэтому и хочется узнать ответ на данный вопрос. В двух словах дело в том, что в области программирования идет ... построение коммунизма!  При этом операционная система играет роль государства, а различные программы, запускаемые в ее среде, играют роль граждан. Процесс построения коммунизма состоит в том, что, государство в виде операционной системы экспроприирует все большую часть собственности и свобод граждан, запрещая им держать в личной собственности то одно, то другое, заставляя пользоваться общественными/казенными услугами. Личные автомобили и скот было запрещено иметь еще во времена DOS, когда доступ к диску можно было получить лишь по прерыванию 21h. Начиная с Windows NT/2000, был запрещен прямой доступ к любому железу. А сейчас полным ходом идет экспроприация того самого визуального интерфейса связи с пользователем. Т.е. это именно та политика, чтобы раскулачить разных сей и дельфей, чтобы им было не повадно пользоваться собственными библиотеками классов типа MFC, VCL, QT и т.п. И хотя декретом этого запретить пока еще нельзя, операционные системы быстро обрастают недокументированными особенностями, за которыми частные производители GUI-библиотек вовремя отследить не поспевают, а потому и допускают массу глюков. Наглядная тому аналогия - глюки браузеров при показе страниц, несмотря на то, что HTML/DOM хорошо стандартизован и на несколько порядков (!) проще, чем интерфейс связи с операционной системой. На очереди стоит запрет для пользовательских программ исполнять код процессора. Для этого и подготавливают почву дотнеты и шарпы.
|
|
|
|
|
Mar 30 2015, 11:36
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(mantech @ Mar 30 2015, 13:13)  Сорри за оффтоп, но может мне объяснить тут кто популярно без кучи терминов, в чем вообще разница простого визуального программирования на сях или дельфи, с теперешним новомодным дотнетом и всякими шарпами??? Сразу скажу, я по большей части эмбеддер, но иногда приходится писать на си для винды, поэтому и хочется узнать ответ на данный вопрос. Эт потому что игнорируете интернет и нас хотите убедить что его нет.  А приложения между тем уходят в облака. У какого фреймворка лучше поддержка облаков и WEB интерфейсов то и выигрывает. Нынче если не умеешь программировать WEB приложения, то считай уже и не программист. А еще мобильные платформы есть. Тут, кстати, дельфи вполне достойно смотрится.
|
|
|
|
|
Mar 30 2015, 11:39
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Ну если не упираться в то что нам запрещают, есть много что нам дают.
Общее стремление развитого мира повышать производительность труда быстрее повышения размера зарплат.
Наглядно на любителях ассемблера, вопрос: А чего в машинных кодах то не фигачим? Зачем нам компиляторы и прочая байда? Почему ушли от машинных кодов в мнемонику? Ответ легче читать и понятнее что написал, правильно? То есть легче находить ошибки, и код становиться качественнее.
Дальше пошли языки классом выше, мы потеряли возможность четко управлять в какой из регистров кладутся данные, зато появилась возможности делать циклы 1 записью а не несколькими проверками и не надо следить за тем какие регистры заняты.
Дальше ООП, создание объектов и методов доступа. Тем самым мы потеряли возможность управлять потрохами модуля напрямую, а только через методы. Зато новое повышение качества, пример: Представьте себе модуль который отображает текст и считает его длину? Метод добавления текста в него сам изменяет счетчик длинны, в итоге вы просто кидаете текст, и не можете забыть обновить счетчик. И никогда текст и его длинна не разойдутся.
Итого каждое следующее развитие языка что-то ограничивает, чтобы повысить контроль над надежностью и улучшить качество общего кода.
С# - имеет автоматический сборщик мусора, больше не надо заботиться чтобы количество delete совпадало с количеством new - очень удобно. Много удобных типов, самописание типов. Int.Parse(....) - разбор строки в число. А как бонус идет то что программа компилируется не в машинные коды, а в промежуточный язык, в итоге программа становиться процесоро-независимым, на любом проце поднимите фреймворк, и запускай программы.
|
|
|
|
|
Mar 30 2015, 13:30
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(Golikov A. @ Mar 30 2015, 14:39)  С# - имеет автоматический сборщик мусора, больше не надо заботиться чтобы количество delete совпадало с количеством new - очень удобно. Много удобных типов, самописание типов. Int.Parse(....) - разбор строки в число. А как бонус идет то что программа компилируется не в машинные коды, а в промежуточный язык, в итоге программа становиться процесоро-независимым, на любом проце поднимите фреймворк, и запускай программы. А оно нам надо "в итоге программа становиться процесоро-независимым"? Я так понял, что Cortex победил. И уже вперед лет этак на 10 можно не беспокоиться о процессорной независимости. Она не нужна. В этом смысле я понимаю тех кто решил работать с ассемблером на Cortex. Почему бы и не использовать, если платформа все равно не измениться в обозримом будущем. Ну потратит год на перенос TCP стека на ассемблер, но зато юзать его будет 10 лет, а стек будет знать как свои пять пальцев. И что интересно, выложит его в свободный доступ и раскрутит как самый быстрый в мире. И ведь мало кто осилит такой стек портировать, все будут покупать тех. поддержку у автора.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|