реклама на сайте
подробности

 
 
5 страниц V  < 1 2 3 4 5 >  
Reply to this topicStart new topic
> В какой моде запускать main?, Вот в чем вопрос.
aaarrr
сообщение Apr 17 2009, 23:36
Сообщение #31


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(singlskv @ Apr 18 2009, 03:31) *
И ИМХО, этого достаточно...

Не всегда, пример я приводил. 9 приоритетов лучше двух, из которых один только с одним источником.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 17 2009, 23:38
Сообщение #32


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Apr 18 2009, 03:28) *
"Просто FIQ" дает только один источник с более высоким приоритетом.
Попробую просто пояснить свою мысль...
Почти все кто переходит на АРМ с некоторым упорством достойным лучшего применеия пишут
свой обработчик IRQ(который замечу вызывается всегда)
и в этом обработчике всегда предусмотреннны все возможные фичи типа вызова вложенных прерываний итд...
только вот все эти фичи нужны в 1% проектов а пользуют их всегда...
Странная история...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 17 2009, 23:44
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(singlskv @ Apr 18 2009, 03:38) *
Почти все кто переходит на АРМ с некоторым упорством достойным лучшего применеия пишут
свой обработчик IRQ(который замечу вызывается всегда)

Еще раз: не всегда.

Цитата(singlskv @ Apr 18 2009, 03:38) *
и в этом обработчике всегда предусмотреннны все возможные фичи типа вызова вложенных прерываний итд...

Это единственная фича, для которой нужен свой обработчик.

Цитата(singlskv @ Apr 18 2009, 03:38) *
только вот все эти фичи нужны в 1% проектов а пользуют их всегда...

Ну и что? Можно подумать, что это неподъемный труд - написать/скопипастить.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 17 2009, 23:59
Сообщение #34


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Apr 18 2009, 03:44) *
Еще раз: не всегда.

Это единственная фича, для которой нужен свой обработчик.

Ну и что? Можно подумать, что это неподъемный труд - написать/скопипастить.
Труд вполне подъемный, но зачем ?
Зачем нужен весь этот лишний код в 99% проектов ?
Вот у меня под рукой есть маштабная(не маленькая) разработка на АРМ,
и вот эта фраза в коментах меня просто развеселила:
Код
#define DISABLE_NESTED_FIQ              // Запрет вложенности FIQ
#define DISABLE_NESTED_IRQ              // Запрет вложенности IRQ
                                        // Вложенность IRQ НЕОБХОДИМО запретить
                                        // для нормальной одновременной работы
                                        // моста на подчиненные сети USART
                                        // и алгоблочных запросов в подчиненную
                                        // сеть

то есть сначала долго и упорно писали весь код чтоб все работало с вложенными прерываниями
а потом оказалось что из-за не реентерабельности вложенные прерывания нужно запретить...

и при этом мой код на этой же задачке намного быстрее(а я и не пытался сделать вложенные прерывания)...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 18 2009, 00:06
Сообщение #35


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(singlskv @ Apr 18 2009, 03:59) *
Труд вполне подъемный, но зачем ?
Зачем нужен весь этот лишний код в 99% проектов ?

А зачем делать круглые глаза при виде такого решения? Я не пропагандирую повсеместное использования вложенных прерываний, но иногда они действительно нужны.
Лишний код имеет объем порядка 80 байт на источник, что, согласитесь, не повод рвать на себе волосы.

Цитата(singlskv @ Apr 18 2009, 03:59) *
сначала долго и упорно писали весь код чтоб все работало с вложенными прерываниями
а потом оказалось что из-за не реентерабельности вложенные прерывания нужно запретить...

Из-за чего? При чем тут реентерабельность вообще?
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 18 2009, 00:21
Сообщение #36


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Apr 18 2009, 04:06) *
Лишний код имеет объем порядка 80 байт на источник, что, согласитесь, не повод рвать на себе волосы.
Рвать волосы конечно не стоит, но допустим это обмен по i2c на скорости 400кбод
и проц работает на частоте 48Мгц.
400Кбод/9 = ~44Кбайт/сек (пиковая)
44Кбайт * "80 байт на источник"(только для выяснения причины)/4 = ~0.88Мбайт/сек (это только то что мы теряем на входе в прерывание)

дальше считать ?

я ни разу не понимаю почему нужно(обязательно) терять по 0,5мкс на кждый вход в прерывание...
Go to the top of the page
 
+Quote Post
defunct
сообщение Apr 18 2009, 00:33
Сообщение #37


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(aaarrr @ Apr 17 2009, 23:38) *
P.S. Пользуясь случаем, хочу послать луч ненависти инженерам фирмы Атмел за фиксированный размер приемного буфера EMAC в 128 байт.

Какая разница какой длины приемный буфер?
128 абсолютно разумное число.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 18 2009, 00:35
Сообщение #38


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(singlskv @ Apr 18 2009, 04:21) *
дальше считать ?

За идиотский TWI опять-таки скажите спасибо атмеловцам. Прерываться ради него с частотой 44кГц неразумно, как и вообще прерываться с такой частотой.

Цитата(singlskv @ Apr 18 2009, 04:21) *
я ни разу не понимаю почему нужно(обязательно) терять по 0,5мкс на кждый вход в прерывание...

Да не обязательно. Ну, дайте Вы своему TWI высший приоритет - получите нулевой оверхед. А 0.5мкс потратите там, где и так уходит 50, и добавка не покажется заметной.
Все в конечном итоге зависит от конкретной системы, нельзя утверждать, что вложенные прерывания - это абсолютное зло, так же как и нельзя утверждать и обратное.

Цитата(defunct @ Apr 18 2009, 04:33) *
128 абсолютно разумное число.

О как! И в чем же состоит абсолют, хотелось бы мне услышать?

Мне вот почему-то кажется, что изменяемый размер буфера - гораздо более гибкое решение, Вы не находите?
Go to the top of the page
 
+Quote Post
defunct
сообщение Apr 18 2009, 00:40
Сообщение #39


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(aaarrr @ Apr 18 2009, 03:35) *
О как! И в чем же состоит абсолют, хотелось бы мне услышать?

В золотой середине между 1536 и 1.
Видители когда надо принимать много и быстро, от фиксированного буфера не уйти.
Вопрос сколько его сделать?
Чем меньше тем сложнее и соответвенно медленнее с этим работать, чем больше - тем выше расход памяти.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 18 2009, 00:41
Сообщение #40


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(defunct @ Apr 18 2009, 04:33) *
Какая разница какой длины приемный буфер?

Большая, когда 100% пакетов в системе имеют фиксированный размер в 272 байта.
Go to the top of the page
 
+Quote Post
defunct
сообщение Apr 18 2009, 00:43
Сообщение #41


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(aaarrr @ Apr 18 2009, 03:41) *
Большая, когда 100% пакетов в системе имеют фиксированный размер в 272 байта.

так уж и 100%? G.711-30?
пользуйте G.711-20 и будет щастье.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 18 2009, 00:45
Сообщение #42


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(defunct @ Apr 18 2009, 04:40) *
Видители когда надо принимать много и быстро, от фиксированного буфера не уйти.

Видите ли, мне приходилось иметь дело с разными MAC'ами, и почему-то нефиксированный размер входного буфера их разработчиков не смутил.

Цитата(defunct @ Apr 18 2009, 04:43) *
так уж и 100%? G.711-30?

100%. Не угадали.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 18 2009, 00:45
Сообщение #43


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Apr 18 2009, 04:35) *
За идиотский TWI опять-таки скажите спасибо атмеловцам. Прерываться ради него с частотой 44кГц неразумно, как и вообще прерываться с такой частотой.
Уже много раз их поминал..., однако это не мешает мне работать через него с мегой на ~ 150Кбод
и 400 тоже возможно(если не делать искуственный оверхед smile.gif )
Цитата
Да не обязательно. Ну, дайте Вы своему TWI высший приоритет - получите нулевой оверхед.
Все в конечном итоге зависит от конкретной системы, нельзя утверждать, что вложенные прерывания - это абсолютное зло, так же как и нельзя утверждать и обратное.
Я и не утверждаю что это абсолютное зло, просто для меня странными выглядят попытки заставить это работать,
пользоваться этим всегда, а реально воспользоваться премуществами 1 раз в жизни...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 18 2009, 00:51
Сообщение #44


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(singlskv @ Apr 18 2009, 04:45) *
Уже много раз их поминал..., однако это не мешает мне работать через него с мегой на ~ 150Кбод
и 400 тоже возможно(если не делать искуственный оверхед smile.gif )

А мне вот наоборот приходилось снижать скорость до 20кГц, чтобы не слишком отвлекаться на прерывания от TWI.
Я уж не говорю о какой-то нездоровой прихоти инженеров Атмела, благодаря которой модуль влетает в underrun,
являясь мастером на синхронной в общем-то шине sad.gif

Цитата(singlskv @ Apr 18 2009, 04:45) *
Я и не утверждаю что это абсолютное зло, просто для меня странными выглядят попытки заставить это работать,
пользоваться этим всегда, а реально воспользоваться премуществами 1 раз в жизни...

Попытки полезны для мозга, для осознания назначения и особенностей работы различных режимов процессора, например.
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Apr 18 2009, 01:01
Сообщение #45


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



У меня USB противопоказан. Типа, опторазвязка есть. Без нее от PC стоко гадости лезет...
А программный код почти написан. Максиму, еще столько же. Итогокило 10 в бинарнике. А вот ресурсы - нехилые. Одна wallpaper полмега откушывает. Вотщас срочно скачал jpeg и пытаюсь вычленить из этой кучи файлов только то, что надо для декомпрессии.И убрать всякие преобразователи в другие форматы. Чисто волпейперы на экран выводить.

Буду в этой библиотеке непонятное менять на понятное.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post

5 страниц V  < 1 2 3 4 5 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th June 2025 - 07:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.02372 секунд с 7
ELECTRONIX ©2004-2016