|
100 байт не хватает |
|
|
|
Dec 25 2008, 20:25
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
В общем, называется "приплыли", допрограммировались - бутлодырь перестал вмещаться в размер бутсекции, т.е. в 2k. Последним делом добавлено нечто такое: Код void Bus_transmit_packet(uint8 aStatus) { uint16 vCrc;
Bus_transmit_byte(Slp_packet_end); Bus_transmit_byte(Slp_packet_end); Bus_transmit_byte(Slp_sysdev_program | Slp_response_mask); // vCrc = vxl_get_crc16(Vxl_crc_ccitt_initial_value, Slp_sysdev_program | Slp_response_mask); Bus_staff_n_transmit_byte(aStatus); vCrc = vxl_get_crc16(0x7976, aStatus); Bus_staff_n_transmit_byte(vCrc >> 8); Bus_staff_n_transmit_byte(vCrc & 0xFF); Bus_transmit_byte(Slp_packet_end); } Что занимает примерно 60 байт. Предварительное заполнение массива и передача массива хоть и напрашивалась явно, но почти ничего не изменила или даже хуже. Однако, где бы наскрести еще сотню байт ? (таблица векторов еще не затронута, как и секции инициализации/финализации) Поделитесь, pls, примером оптимизации - сам я боюсь все порушить и грохнуть что-либо нужное. M88, GCC(WinAVR-20060421), cкрипты линкера от WinAVR-20081205
Сообщение отредактировал Огурцов - Dec 25 2008, 20:26
|
|
|
|
|
 |
Ответов
|
Dec 27 2008, 21:43
|
Гуру
     
Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521

|
Вот все мы не без изъяна. У каждого из нас есть свои ограничения. Иногда, возможно даже чеще чем надо, не хватает силы воли для получения новых знаний (я о себе к примеру). А иногда, входишь в "транс" и за неделю проделываешь работу, которую откладывал больше года.  Давайте вспомним, что до Нового Года остался совсем пустяк и простим друг другу свои мелкие недостатки. Я, к сожалению, совсем что-то не чувствую приближения праздника в этом году. Может виноват в этом Step 7. Скорей бы его в топку и назад к компилятору С.
|
|
|
|
|
Dec 27 2008, 23:01
|

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

|
Цитата(SasaVitebsk @ Dec 28 2008, 00:43)  Давайте вспомним, что до Нового Года остался совсем пустяк и простим друг другу свои мелкие недостатки. Согласен  . Цитата(Огурцов @ Dec 28 2008, 01:56)  Это уже весь бред ? Или еще будет ? А, так Вы это бредили  ! То-то я смотрю что-то про красное в крапинку начали нести... Хорошо, что предупредили, не сразу понял  .
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Dec 28 2008, 09:13
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Цитата(zltigo @ Dec 27 2008, 23:01)  А, так Вы это бредили  ! То-то я смотрю что-то про красное в крапинку начали нести... Хорошо, что предупредили, не сразу понял  . Я так понимаю, судя по продолжающемуся хамству, оригинальный код вы уже разместили в ~1.7k на GCC или ~1.1 на IAR, да ? Так и где же он ? Цитата(Petka @ Dec 28 2008, 08:19)  Попробуйте вместо буржуевского AES использовать отечественный стандарт шифрования ГОСТ. С тем же успехом можно было использовать любой другой. Но у задачи есть еще одно существенное ограничение - минимально количество телодвижений. Исходный вариант в этом смысле был очень неплох. Да в общем-то и сейчас альтернатив не вижу. Цитата(defunct @ Dec 27 2008, 22:57)  У AVRки всего 10K перезаписей. Поэтому 56-бит неломаемо. С параметрами #if KEY_COUNT == 1 #define KEYBITS 128 //!< Use AES128. #define ROUNDS 10 //!< Number of rounds. #define KEYLENGTH 16 //!< Key length in number of bytes. у меня что-то не сложилось. Да и в общем-то весь выигрышь лишь в длинне ключа - 16 байт и, кажется, размере ОЗУ, которого и так вполне хватает. Алгоритм, заточенный под конкретно 56 бит, я еще и не искал. С ним, вероятно, могло бы быть гораздо лучше.
|
|
|
|
|
Dec 28 2008, 10:57
|

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

|
Цитата(Огурцов @ Dec 28 2008, 12:13)  Я так понимаю, судя по продолжающемуся хамству.... Судя по повышению требований со 100 байт прописанных в заголовке до 900 ничего другого, кроме огульного обвиненя, теперь уже в хамстве у Вас не осталось. Напомню историю вопроса 1. Пролетели на 100 байт. С кем не бывает. 2. Вы начали пустопорожние общие разговоры об оптимизации 3. Я совершенно справедливо предположив, что ничего умнее, чем взять каой-нибудь писанный левой ногой исходник из интернета не сделано, выразился в духе, что зажать его на 100 байт без проблем. 4. С Вашей стороны начались рассказы о крутых профессионалах, от одного только имени (что-то вроде истинного имени Будды) которых лично я должен если не рассыпаться в прах, то как мимимум, покрыться красными полосками и удалиться в монастырь на покаяние. 5. Вами был выложен, как и предполагалось, писанный левой ногой исходник из интернету. 6. Естественно, он (точнее даже один из его кусков - других не касался) был соверженно спокойно сокращен на 250 байт... Что даже с учетом какого-нибудь другого генерящего менее компактный код компилятора просимые первоначально 100 байт обеспечивает наверняка. 7. Тут Вы начали совсем уж глупые разговоры о том, что это был "не тот" исходник а "тот" исходник он такооой исходник, что просто всем исходникам исходник и что-бы только приблизится к "тому" шедевру нужно зажать "этот" исходник вдвое. 8. Потом, вообще, зачем-то рассказали нам всем, как Вам нравится работать кассиром.... Короче,если-бы Вы дейсвительно, как Вам говорили несколько человек, выложили свой не влезающий на тот момент в 2K исходник, то возможно и был-бы повод для обсуждения. А так, так  . Хотя нет, небольшая польза есть, если у кого были иллюзии, что в Интернете, пусть даже у "профессионалов" именитой фирмы, можно найти реально приличные исходники  , то, надеюсь, они хоть слегка развеялись. Цитата(Petka @ Dec 28 2008, 13:19)  Очень спорно. ИМХО ГОСТ компактнее получится. Если приведёте свою оптимальную реализацию (на Си, и лучше оптимизированную для winavr) DES . Ну сишные DES более, чем доступны, а "своими" и уж тем боле под AVR не занимался, ГОСТ реализация как-то на глаза не попадалась, но явно должна где-нибудь лежать. Для начала можете сравнить их и не в оптимизированном виде. По идее, когда-то давно использовал некий более простой, нежели DES (но его уровня) алгоритм - могу,когда вернусь домой, поискать в своих архивах.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Dec 28 2008, 12:29
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Цитата(zltigo @ Dec 28 2008, 10:57)  Судя по повышению требований со 100 байт прописанных в заголовке до 900 ничего другого, кроме огульного обвиненя, теперь уже в хамстве у Вас не осталось. Нет, еще есть вариант - в глупости. 100 нехватало мне. А 900 нехватает вам, чтобы иметь право хотя бы встать в один ряд с тем профи. Насколько потребовалось бы ужать еще, чтобы сметь писать оскорбления в его адрес, я даже не говорю. Но вы ж этого все равно не понимаете. Так что одно из двух. Или и то и другое вместе. Цитата(zltigo @ Dec 28 2008, 10:57)  2. Вы начали пустопорожние общие разговоры Знаете, я вас персонально в этот топик не приглашал. Более того, еще раз настоятельно требую покинуть его и почистить за собой все ваши посты, потому как они целиком и полностью являются офф-топиком, постоянно провоцируют и оскорбляют других участников форума. Цитата(zltigo @ Dec 28 2008, 10:57)  8. Потом, вообще, зачем-то рассказали нам всем, как Вам нравится работать кассиром.... Резонно. Затем же, зачем и вы рассказали про свою жену, которая прилетела из риги.
|
|
|
|
Сообщений в этой теме
Огурцов 100 байт не хватает Dec 25 2008, 20:25 rezident Хоть и , но нелишне напомнить История одного бай... Dec 25 2008, 20:28 Огурцов Помню.
Фишка еще в том, что простое увеличение пам... Dec 25 2008, 20:34  ReAl Цитата(Огурцов @ Dec 25 2008, 22:34) Фишк... Dec 25 2008, 22:12   Огурцов Цитата(ReAl @ Dec 25 2008, 22:12) А почем... Dec 26 2008, 06:39 zltigo Цитата(rezident @ Dec 25 2008, 23:28) Хот... Dec 26 2008, 10:58  Огурцов Цитата(zltigo @ Dec 26 2008, 10:58) Да не... Dec 26 2008, 15:07   zltigo Цитата(Огурцов @ Dec 26 2008, 18:07) Ну з... Dec 26 2008, 16:06    singlskv Цитата(zltigo @ Dec 26 2008, 19:06) Решит... Dec 26 2008, 16:59     Огурцов Вообще, меня не уполномачивали публиковать исходни... Dec 26 2008, 17:40      zltigo Цитата(Огурцов @ Dec 26 2008, 20:40) Смия... Dec 26 2008, 17:54       Огурцов Цитата(zltigo @ Dec 26 2008, 17:54) И опя... Dec 26 2008, 18:11        zltigo Цитата(Огурцов @ Dec 26 2008, 21:11) Поче... Dec 26 2008, 18:22         Огурцов Цитата(zltigo @ Dec 26 2008, 18:22) Либо ... Dec 26 2008, 18:28          zltigo Цитата(Огурцов @ Dec 26 2008, 21:28) То ч... Dec 26 2008, 18:45          aesok Цитата(Огурцов @ Dec 26 2008, 21:28) Могу... Dec 26 2008, 18:45      singlskv Цитата(Огурцов @ Dec 26 2008, 20:40) Вооб... Dec 26 2008, 19:00       Огурцов http://www.atmel.com/dyn/resources/prod_documents/... Dec 26 2008, 19:27        zltigo Цитата(Огурцов @ Dec 26 2008, 22:12) http... Dec 26 2008, 19:29         Огурцов Дада, сделайте из этого 1.5-1.7 килобайта, чтобы о... Dec 26 2008, 19:57          zltigo Цитата(Огурцов @ Dec 26 2008, 22:57) Дада... Dec 26 2008, 21:45           Огурцов Цитата(zltigo @ Dec 26 2008, 21:45) Треп ... Dec 27 2008, 06:21            zltigo Цитата(Огурцов @ Dec 27 2008, 09:21) он в... Dec 27 2008, 10:37             Petka Цитата(zltigo @ Dec 27 2008, 13:37) Сейча... Dec 27 2008, 12:33              zltigo Цитата(Petka @ Dec 27 2008, 15:33) Оффтоп... Dec 27 2008, 13:17              Огурцов Цитата(Petka @ Dec 27 2008, 12:33) Которы... Dec 27 2008, 20:23               zltigo Цитата(Огурцов @ Dec 27 2008, 23:23) разд... Dec 27 2008, 22:49 SasaVitebsk Недавно в IAR выдушил 400 байт. Возможно мои реком... Dec 25 2008, 22:17 ReAl Тьху, у меги88 и 168 одинаковые размеры бут-секции... Dec 25 2008, 22:30 Огурцов Цитата(ReAl @ Dec 25 2008, 22:30) 2а) В G... Dec 26 2008, 07:02  aesok Цитата(Огурцов @ Dec 26 2008, 10:02) Как ... Dec 26 2008, 07:13   Огурцов Цитата(aesok @ Dec 26 2008, 07:13) Для эт... Dec 31 2008, 07:40    ReAl Цитата(Огурцов @ Dec 31 2008, 09:40) Пыта... Dec 31 2008, 08:27    _Pasha Цитата(Огурцов @ Dec 31 2008, 11:40) Если... Dec 31 2008, 11:11     Огурцов Цепляет, он там косвенно, через полдюжины #include... Dec 31 2008, 16:55 aesok Bus_transmit_byte и Bus_staff_n_transmit_byte это ... Dec 26 2008, 07:02 Огурцов Цитата(aesok @ Dec 26 2008, 07:02) avr-gc... Dec 26 2008, 07:17  Огурцов Добавил фичи, теперь не хватает 98 байт. Почти уга... Dec 26 2008, 10:06 _Pasha Цитата(rezident @ Dec 26 2008, 00:28) Ист... Dec 26 2008, 10:39 ReAl Цитата(_Pasha @ Dec 26 2008, 12:39) Опция... Dec 26 2008, 14:02 Diz Посмотрите, есть ли у в строке для компилятора клю... Dec 26 2008, 13:09 SasaVitebsk Спасибо. Поизучаем. Dec 26 2008, 23:20 zltigo Цитата(SasaVitebsk @ Dec 27 2008, 02:20) ... Dec 27 2008, 00:23 GetSmart Огурцов, из чистого любопытства спрашиваю, почему ... Dec 27 2008, 06:33 Огурцов Цитата(GetSmart @ Dec 27 2008, 06:33) Огу... Dec 27 2008, 06:46    Petka Цитата(zltigo @ Dec 28 2008, 13:57) Ну си... Dec 28 2008, 11:04     zltigo Цитата(Petka @ Dec 28 2008, 14:04) в неоп... Dec 28 2008, 11:09      Petka Цитата(zltigo @ Dec 28 2008, 14:09) Тогда... Dec 28 2008, 11:16       zltigo Цитата(Petka @ Dec 28 2008, 14:16) хотя-б... Dec 28 2008, 11:20     zltigo Цитата(Огурцов @ Dec 28 2008, 15:29) почи... Dec 28 2008, 14:15      Petka Цитата(zltigo @ Dec 28 2008, 17:15) Сколь... Dec 28 2008, 15:59       zltigo Цитата(Petka @ Dec 28 2008, 18:59) XTEA 9... Dec 28 2008, 16:05        Petka RE: 100 байт не хватает Dec 28 2008, 16:35         zltigo Цитата(Petka @ Dec 28 2008, 19:35) за что... Dec 28 2008, 16:39          Petka Цитата(zltigo @ Dec 28 2008, 19:39) 31 ве... Dec 28 2008, 17:19           zltigo Цитата(Petka @ Dec 28 2008, 20:19) IARом ... Dec 29 2008, 11:06            Petka Цитата(zltigo @ Dec 29 2008, 14:06) Что-т... Dec 29 2008, 13:39            singlskv Цитата(zltigo @ Dec 29 2008, 14:06) А вот... Dec 29 2008, 17:45      Огурцов Цитата(zltigo @ Dec 28 2008, 14:15) Уже о... Dec 28 2008, 16:01 defunct Огурцов:
A. Нет смысла переходить на инструмент, ... Dec 27 2008, 21:48 Огурцов Цитата(defunct @ Dec 27 2008, 21:48) asm ... Dec 27 2008, 22:04  defunct Цитата(Огурцов @ Dec 28 2008, 00:04) Если... Dec 27 2008, 22:14   Огурцов Цитата(defunct @ Dec 27 2008, 22:14) Что ... Dec 27 2008, 22:32    defunct Цитата(Огурцов @ Dec 28 2008, 00:32) Како... Dec 27 2008, 22:41     Огурцов Цитата(defunct @ Dec 27 2008, 22:41) DES ... Dec 27 2008, 22:56      defunct Цитата(Огурцов @ Dec 28 2008, 00:56) #def... Dec 27 2008, 22:57 Petka Ещё как идея: Попробуйте вместо буржуевского AES и... Dec 28 2008, 08:19 zltigo Цитата(Petka @ Dec 28 2008, 11:19) Наскол... Dec 28 2008, 08:53  Petka Цитата(zltigo @ Dec 28 2008, 11:53) Он от... Dec 28 2008, 09:34   zltigo Цитата(Petka @ Dec 28 2008, 12:34) Из 32б... Dec 28 2008, 10:10    Petka Цитата(zltigo @ Dec 28 2008, 13:10) ... П... Dec 28 2008, 10:19 _Pasha C vs ASM (AVR):
Вчера переписал на одном девайсе п... Dec 30 2008, 09:48 singlskv Цитата(_Pasha @ Dec 30 2008, 12:48) C vs ... Dec 30 2008, 10:25 Rst7 Цитатав С оверхед жуткий из-за приведения всего к ... Dec 30 2008, 11:13 singlskv Цитата(Rst7 @ Dec 30 2008, 14:13) Где?IAR... Dec 30 2008, 12:19  aesok Цитата(singlskv @ Dec 30 2008, 15:19) gcc... Dec 30 2008, 13:26   singlskv Цитата(aesok @ Dec 30 2008, 16:26) Дело н... Dec 30 2008, 13:49    aesok Цитата(singlskv @ Dec 30 2008, 16:49) про... Dec 30 2008, 14:35     singlskv Цитата(aesok @ Dec 30 2008, 17:35) Так ка... Dec 30 2008, 15:06 _Pasha Цитата(Rst7 @ Dec 30 2008, 15:13) Где?
Вы... Dec 30 2008, 12:24 Rst7 ЦитатаIAR в таких случаях действительно оптимизиру... Dec 30 2008, 13:17
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|