|
ARM начинающим |
|
|
|
Oct 12 2005, 23:09
|
Группа: Новичок
Сообщений: 2
Регистрация: 19-06-05
Пользователь №: 6 134

|
Мужики. Подскажите плз куда можно почитать по ARM новичку. Я AVR худо-бедно освоил. А вот что такое ARM слабо представляю. Проги писал на асме. Сишник не знаю.
Заранее благодарен.
|
|
|
|
|
 |
Ответов
|
Oct 19 2005, 12:46
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(Andy Mozzhevilov @ Oct 19 2005, 15:33) Точно также, как и вашу асмовскую функцию. Только memcpy это точно все корректно отыграет, пусть даже создав менее оптимальный код, копирующий байтами, а не словами. А использование вашей функции с невыровненными адресами приведет к непредсказуемым эффектам. А кто ее будет так использовать? Ежели это моя функция, то вызывать её буду только я и правильно. Цитата Например, в IAR memcpy написана нак inline функция в string.h Код #pragma inline void *memcpy(void *s1, const void *s2, size_t n) /* Copied from memcpy.c */ { /* copy char s2[n] to s1[n] in any order */ char *su1 = (char *)s1; const char *su2 = (const char *)s2; for (; 0 < n; ++su1, ++su2, --n) *su1 = *su2; return (s1); } Ужасно! Всегда считал IAR кривым компилером. Цитата Вы серьезно полагаете, что квалификация программиста тем выше, чем более низкоуровненый язык он использует? Нет, я считаю, что квалификация программиста тем ниже, чем более низкоуровневый язык он не способен понять.
|
|
|
|
|
Oct 20 2005, 03:39
|

Знающий
   
Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206

|
Цитата(aaarrr @ Oct 19 2005, 17:46) Цитата(Andy Mozzhevilov @ Oct 19 2005, 15:33) Точно также, как и вашу асмовскую функцию. Только memcpy это точно все корректно отыграет, пусть даже создав менее оптимальный код, копирующий байтами, а не словами. А использование вашей функции с невыровненными адресами приведет к непредсказуемым эффектам. А кто ее будет так использовать? Ежели это моя функция, то вызывать её буду только я и правильно. Почему вы тогда считаете, что вы вправе помнить о том, что свою асмовскую функцию можете вызывать только с определенным выравниванием, а я не вправе помнить, что при отсутствии выравнивания код для сишной функции будет менее оптимальным? Цитата Цитата Цитата Например, в IAR memcpy написана нак inline функция в string.h Ужасно! Всегда считал IAR кривым компилером. IAR очень приличный компилятор. Если специально не пытаться залезть в бутылочное горло, пытаясь доказать неэффективность. Цитата Вы серьезно полагаете, что квалификация программиста тем выше, чем более низкоуровненый язык он использует? Нет, я считаю, что квалификация программиста тем ниже, чем более низкоуровневый язык он не способен понять. Понимать язык и уметь свободно на нем общаться - 2 большие разницы. Вы изначально высказали мнение, что проекты для мелких микроконтроллеров должны писаться на асм: Цитата(aaarrr) Интересно, а на LPC2101 тоже на C будем писать? Цитата(aaarrr) Может быть и прекрасно, да только уж на мелких восьмибитниках ASM сам доктор прописал использовать C чем я совершенно не согласен, настаивая на том, что целесообразно на асм писать только действительно критические места. Знание асма необходимо, это я не отрицаю, но я утверждаю, что в большинстве случаев достаточно понимать асм, а не свободно общаться на нем. На данный момент мой опыт насчитывает работу как минимум с 7 различными семействами процессоров, не считая писишного x86. С 4 из них я работал довольно плотно. В том числе много проектов приходится сопровождать. Все написано на Ц, за исключением критических мест, которых очень не много. Как вы считаете, насколько хорошо можно сопровождать проект, написанный на асм, если на данный момент этот процессор активно не используется? Например, x51 мы не закладываем в новые разработки уже лет 5, а проекты сопровождать нужно. Каждый раз вспоминать асм и копаться в неструктурированном коде? Ради чего, мифического увеличения производительности и уменьшения объема кода на 30%-50%?
--------------------
Пасу котов...
|
|
|
|
|
Oct 20 2005, 04:02
|
Группа: Новичок
Сообщений: 9
Регистрация: 10-02-05
Пользователь №: 2 543

|
Цитата(Andy Mozzhevilov @ Oct 20 2005, 09:39) Например, x51 мы не закладываем в новые разработки уже лет 5, а проекты сопровождать нужно. Каждый раз вспоминать асм и копаться в неструктурированном коде? Ради чего, мифического увеличения производительности и уменьшения объема кода на 30%-50%? А что такие проекты уже не структуируются средствами АСМ и не документируются по процедурно? Сейчас такие средства появляются как графические ассемблеры - это вообще лучший выход из ситуации. А ради чего, вопрос риторический. Следую вашей логике можно как и в мире CPU платить огромные деньги за 30% прибавку производительности, что бы писать на ЯВУ всем и как угодно, затем еще на 10% что бы писать было быстро и каждый год по 5% что бы еще быстрее. С некоторой стороны этот принцип оправдывается получением сверхприбыли, но сущесвтует момент времени до которого потребитель согласен терепеть постоянный отъем заработанных средств  . Что говорить что подобный путь развития ЭКСТЕНСИВЕН. ;(
|
|
|
|
|
Oct 20 2005, 05:22
|

Знающий
   
Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206

|
Цитата(AlexeyAS @ Oct 20 2005, 09:02) Цитата(Andy Mozzhevilov @ Oct 20 2005, 09:39) Например, x51 мы не закладываем в новые разработки уже лет 5, а проекты сопровождать нужно. Каждый раз вспоминать асм и копаться в неструктурированном коде? Ради чего, мифического увеличения производительности и уменьшения объема кода на 30%-50%? А что такие проекты уже не структуируются средствами АСМ и не документируются по процедурно? Это можно сделать, но фактически нужно будет работать компилятором с ЯВУ в уме. Это не интересно. При большом проекте все равно придется выработать определенные правила, как то - способы передачи аргументов функциям и способы возврата результатов, соглашения по использованию регистров в вызывающей и вызываемой функциях. Для мелких архитектур, типа х51 размещение локальных переменных функций в памяти - вообще задача не тривиальная, если ее делать руками. Ну и т.п. А потом ради чего? Ради мифических 30% размера кода/производительности? Так оно и на Ц с некоторым запасом. Цитата Сейчас такие средства появляются как графические ассемблеры - это вообще лучший выход из ситуации. Это сейчас, а я говорю про 5 лет назад. Да и мое имхо, все эти вижал-средства для embedded больше игрушки. Попытка ввести в embedded то, что сейчас есть на ПК. Программирование контроллеров при помощи мыши. Фигня - не верю. Цитата А ради чего, вопрос риторический. Следую вашей логике можно как и в мире CPU платить огромные деньги за 30% прибавку производительности, что бы писать на ЯВУ всем и как угодно, затем еще на 10% что бы писать было быстро и каждый год по 5% что бы еще быстрее. Вопрос очень даже практический. Если программа занимает 1К на асме, и 1.5К на Ц при доступной памяти 2К, то 0.5К оверхеда Ц бесплатно. Только не надо мне петь про тот граничный случай, когда на асме влазит в 1 кристалл, а на Ц нужно брать более старший и платить на с50 больше. Если это даже так, то в наших, российских условиях, где преобладает мелкотиражное производтство, это мало кого волнует. Гораздо больше волнует выскочить на рынок быстрее, а там других расходов немерянно. Те же испытания на ЭМС сделать, метрологию, в коммандировки слетать по 3000р за номер/сутки - и c50 за контроллер покажутся вам каплей в морe, если до этого действительно дойдет. Цитата С некоторой стороны этот принцип оправдывается получением сверхприбыли, но сущесвтует момент времени до которого потребитель согласен терепеть постоянный отъем заработанных средств  . Что говорить что подобный путь развития ЭКСТЕНСИВЕН. ;( Их еще надо начать заработывать на этом проекте, а потом, если уж это будет настолько критично, можно и вылизать программу хоть на асм и снизить производтственные затраты. Но это будет оправдываться действительно при очешь больших тиражах, что для россии все же редкость.
--------------------
Пасу котов...
|
|
|
|
Сообщений в этой теме
=NIK= ARM начинающим Oct 12 2005, 23:09 iit Цитата(=NIK= @ Oct 13 2005, 02:09)Мужики. Под... Oct 13 2005, 02:35 vzyk В ARM'е всё по проще. Там нет ни каких разделе... Oct 13 2005, 18:52 dch Цитата(vzyk @ Oct 13 2005, 21:52)Только на С.... Oct 13 2005, 20:40 iit Цитата(vzyk @ Oct 13 2005, 21:52)Канечно, ник... Oct 14 2005, 01:51 aaarrr ЦитатаКанечно, никто в ASM зесь не програмирует... Oct 13 2005, 21:15 Andy Mozzhevilov Цитата(aaarrr @ Oct 14 2005, 02:15)ЦитатаКане... Oct 14 2005, 03:36  Karl Хочу написать проект на SAM7S64. До этого работал ... Oct 14 2005, 05:59   sergik_vrn Цитата(Karl @ Oct 14 2005, 09:59)Хочу написат... Oct 14 2005, 06:03   vzn Цитата(Karl @ Oct 14 2005, 08:59)Хочу написат... Oct 14 2005, 07:24 Stanislav Цитата(aaarrr @ Oct 14 2005, 00:15)ЦитатаКане... Oct 15 2005, 21:20 aaarrr ЦитатаИ что, для этого есть необходимость, действи... Oct 14 2005, 14:24 sergeeff Да прямо сам Atmel продает отладочную систему под ... Oct 15 2005, 11:17 Andy Mozzhevilov Цитата(aaarrr @ Oct 14 2005, 19:24)ЦитатаИ чт... Oct 17 2005, 03:29 Dot Цитата(=NIK= @ Oct 13 2005, 02:09)А вот что т... Oct 15 2005, 14:15 =NIK= Вот по делу разговор пошол
Может есть какая-нибу... Oct 15 2005, 20:50  Dot Цитата(=NIK= @ Oct 15 2005, 23:50)Ну чтобы на... Oct 16 2005, 07:08 slabnoff ЦитатаКстати, где-то тут выкладывали ее принтабель... Oct 16 2005, 09:15 aaarrr Цитата(Andy Mozzhevilov @ Oct 17 2005, 06:29)... Oct 17 2005, 07:25 Andy Mozzhevilov Цитата(aaarrr @ Oct 17 2005, 12:25)Цитата(And... Oct 17 2005, 07:32 aaarrr Цитата(Andy Mozzhevilov @ Oct 17 2005, 10:32)... Oct 17 2005, 08:38 Andy Mozzhevilov Цитата(aaarrr @ Oct 17 2005, 13:38)Цитата(And... Oct 17 2005, 08:59  NickS Цитата(Andy Mozzhevilov @ Oct 17 2005, 11:59)... Oct 17 2005, 11:02   Andy Mozzhevilov Цитата(NickS @ Oct 17 2005, 16:02)Цитата(Andy... Oct 17 2005, 11:10    NickS Цитата(Andy Mozzhevilov @ Oct 17 2005, 14:10)... Oct 17 2005, 23:49     Andy Mozzhevilov Цитата(NickS @ Oct 18 2005, 04:49)Судя по все... Oct 18 2005, 05:39      NickS Я и не ожидал большого эфекта от функций вычислени... Oct 18 2005, 07:26       dxp Цитата(NickS @ Oct 18 2005, 13:26)Я и не ожид... Oct 18 2005, 09:15        NickS Цитата(dxp @ Oct 18 2005, 12:15)Цитата(NickS ... Oct 18 2005, 11:25         Andy Mozzhevilov Цитата(NickS @ Oct 18 2005, 16:25)Эти функции... Oct 18 2005, 12:00 jasper Интересно, а про ARM-ы книжки на русском в природе... Oct 17 2005, 09:06 aaarrr Цитата(Andy Mozzhevilov @ Oct 17 2005, 11:59)... Oct 17 2005, 09:16 Andy Mozzhevilov Цитата(aaarrr @ Oct 17 2005, 14:16)Цитата(And... Oct 17 2005, 09:31 aaarrr Цитата(Andy Mozzhevilov @ Oct 17 2005, 12:31)... Oct 17 2005, 10:52 Andy Mozzhevilov Цитата(aaarrr @ Oct 17 2005, 15:52)Цитата(And... Oct 17 2005, 11:07 aaarrr Цитата(Andy Mozzhevilov @ Oct 17 2005, 14:07)... Oct 17 2005, 11:19 Andy Mozzhevilov Цитата(aaarrr @ Oct 17 2005, 16:19)Цитата(And... Oct 17 2005, 12:08  Vic1 Цитата(Andy Mozzhevilov @ Oct 17 2005, 17:08)... Oct 17 2005, 13:06 aaarrr Цитата(Andy Mozzhevilov @ Oct 17 2005, 15:08)... Oct 17 2005, 13:09 Andy Mozzhevilov Цитата(aaarrr @ Oct 17 2005, 18:09)Цитата(And... Oct 17 2005, 14:52 aaarrr Цитата(Vic1 @ Oct 17 2005, 16:06)Еще одна лож... Oct 17 2005, 13:14 Vic1 Цитата(aaarrr @ Oct 17 2005, 18:14)Цитата(Vic... Oct 17 2005, 13:28 aaarrr Цитата(Vic1 @ Oct 17 2005, 16:28)1) длина мас... Oct 17 2005, 13:34 Vic1 Цитата(aaarrr @ Oct 17 2005, 18:34)Так речь н... Oct 17 2005, 13:50 aaarrr Цитата(Vic1 @ Oct 17 2005, 16:50)Цитата(aaarr... Oct 17 2005, 14:25 Andy Mozzhevilov Цитата(aaarrr @ Oct 17 2005, 19:25)Не понимаю... Oct 17 2005, 14:39 Vic1 Тогда еще раз условия задачи: процессор - ?, разме... Oct 17 2005, 14:38 aaarrr Цитата(Andy Mozzhevilov @ Oct 17 2005, 17:39)... Oct 17 2005, 14:48 Vic1 Цитата(aaarrr @ Oct 17 2005, 19:48)Цитата(And... Oct 17 2005, 15:28 aaarrr Цитата(Vic1 @ Oct 17 2005, 17:38)Тогда еще ра... Oct 17 2005, 15:27 Andy Mozzhevilov Цитата(aaarrr @ Oct 17 2005, 20:27)Цитата(Vic... Oct 18 2005, 03:11 Vic1 Хм, издержки реального времени (почти одновременны... Oct 17 2005, 15:31 aaarrr Цитата(Vic1 @ Oct 17 2005, 18:28)Опять слишко... Oct 17 2005, 15:40 Vic1 Прерываюсь на какое-то время. Пора домой Oct 17 2005, 15:44 Dot Ничего себе -- " ARM начинающим"!
... Oct 17 2005, 16:55 Andy Mozzhevilov Цитата(Dot @ Oct 17 2005, 21:55)Ничего себе... Oct 18 2005, 03:21 aaarrr Цитата(Dot @ Oct 17 2005, 19:55)Поменяли комп... Oct 17 2005, 23:40 sergeeff Вроде как подобные споры - дела давно прошедших дн... Oct 18 2005, 05:44 aaarrr Цитата(Andy Mozzhevilov @ Oct 18 2005, 06:11)... Oct 18 2005, 12:29 Vic1 To aaarrr
Весь день I-neta не было (и IARa в то... Oct 18 2005, 15:48 aaarrr Круто, только write-back не учитывается и выход кр... Oct 18 2005, 16:41 Vic1 To aaarrr
Больше сооптимизировать не удалось... Oct 19 2005, 09:55  iosifk Цитата(Vic1 @ Oct 19 2005, 12:55)To aaarrr
... Oct 19 2005, 10:32 VladislavS То же от IAR. Оценивать хорошо это или плохо не бу... Oct 18 2005, 17:32 iit А что, писание на асме это "западло"?
Я ... Oct 19 2005, 05:34  Andy Mozzhevilov Цитата(iit @ Oct 19 2005, 10:34)А что, писани... Oct 19 2005, 10:37   NickS Цитата(Andy Mozzhevilov @ Oct 19 2005, 13:37)... Oct 19 2005, 15:22    Andy Mozzhevilov Цитата(NickS @ Oct 19 2005, 20:22)Цитата(Andy... Oct 20 2005, 04:59    dxp Цитата(NickS @ Oct 19 2005, 21:22)Как я замеч... Oct 20 2005, 06:22 Andy Mozzhevilov Цитата(VladislavS @ Oct 18 2005, 22:32)То же ... Oct 19 2005, 10:49  VladislavS Цитата(Andy Mozzhevilov @ Oct 19 2005, 13:49)... Oct 20 2005, 04:14   Andy Mozzhevilov Цитата(VladislavS @ Oct 20 2005, 09:14)Цитата... Oct 20 2005, 05:03    VladislavS Цитата(Andy Mozzhevilov @ Oct 20 2005, 08:03)... Oct 20 2005, 05:47 Vic1 Quote - это лист содержания описания компилятора (... Oct 19 2005, 10:39 aaarrr Цитата(Vic1 @ Oct 19 2005, 12:55)To aaarrr
Б... Oct 19 2005, 12:08 Andy Mozzhevilov Цитата(aaarrr @ Oct 19 2005, 17:08)Цитата(Vic... Oct 19 2005, 12:33 Vic1 To [/B]aaarrr[B]
ЦитатаДа, memcpy умнее написана, ... Oct 19 2005, 12:31 Ken@t Ваш креатив - образчик мысли, слога,
До Вас такого... Oct 19 2005, 13:41  AlexeyAS ЦитатаНи кто не сопротивляется по поводу иногда ма... Oct 20 2005, 03:51    AlexeyAS ЦитатаА что такие проекты уже не структуируются ср... Oct 20 2005, 08:34     Andy Mozzhevilov Цитата(AlexeyAS @ Oct 20 2005, 13:34)Цитата
Э... Oct 20 2005, 09:30      AlexeyAS Цитата(Andy Mozzhevilov @ Oct 20 2005, 15:30)... Oct 20 2005, 10:45       Andy Mozzhevilov Цитата(AlexeyAS @ Oct 20 2005, 15:45)ЦитатаМа... Oct 20 2005, 11:09        AlexeyAS ЦитатаИ в Ц макросы - зло, если их использовать вм... Oct 21 2005, 02:37 Vic1 Хм, а в обратную сторону (повышения уровня)? Разве... Oct 19 2005, 12:52 Vic1 Добавление к квалификации и молодежного сленга ... Oct 19 2005, 13:16 aaarrr Цитата(Vic1 @ Oct 19 2005, 16:16)Добавление к... Oct 19 2005, 14:28 Vic1 Добавление к теме о квалификации (и против молодеж... Oct 19 2005, 14:37 aaarrr Цитата(Vic1 @ Oct 19 2005, 17:37)Добавление к... Oct 19 2005, 14:56 Vic1 Цитата(aaarrr @ Oct 19 2005, 19:56)Цитата(Vic... Oct 20 2005, 03:36 IgorKossak Возвращаясь к теме, вот на мой взгляд неплохой сай... Oct 20 2005, 07:18 slabnoff 2 dxp - Полностью поддерживаю!
Немного о свое... Oct 20 2005, 08:20 AlexeyAS ЦитатаГоду в 1998 начал применять в своих разработ... Oct 20 2005, 09:48  Andy Mozzhevilov Сейчас я уже дома, сыт и доволен, поэтому могу нес... Oct 20 2005, 15:12 Vic1 То AlexeyAS
Ну уж про Algoritm Bilder - это совс... Oct 20 2005, 11:47 AlexeyAS ЦитатаТо AlexeyAS
Ну уж про Algoritm Bilder - эт... Oct 21 2005, 02:46
2 страниц
1 2 >
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|