Это моё личное предвзятое мнение. Любое совпадение с реальностью является случайным и непреднамеренным.
-
- Этот ваш кортекс придумали ламиры не осилившие ассемблера x51! - fk0(30.04.2015 01:24)
- __flash мешает, когда у вас standalone AVR и вы пытаетесь всю логику программы реализовывать. А если у него вся затея - ножкой хитро подрыгать, то __flash и не потребуется. Гарвард дает детерминизм, чего кортексам явно не хватает. - LightElf(29.04.2015 14:38)
- Блин, О5-25, делаются раздельные банки ОЗУ для кода и данных с раздельными шинами - и здравствуй детерминизм. В AVR без __flash и таблицу констант не обработать, не дублируя в ОЗУ, чистый гарвард фтопку. - =AlexD=(29.04.2015 14:43)
- Что мешает ЦП положить таблицу констант сразу в ОЗУ данных этого AVR? - LightElf(29.04.2015 14:53)
- К примеру, таблица имеет размер с половину ПЗУ и 5 раз ОЗУ. Кто виноват? Что делать? - SciFi(29.04.2015 14:54)
- С чего вы взяли, что таблица не помещающаяся в ОЗУ данных поместится в ОЗУ команд? - LightElf(29.04.2015 14:57)
- Да ладно, не важно. Я просто ещё раз говорю, что нафиг они сделали проц, который не совместим со стандартным Си? Собственно, поэтому я его никогда и не трогал. - SciFi(29.04.2015 15:02)
- Коллеги, кто на примере кода пояснил эту несовместимость? Не дайте умереть неучем. - Evgeny_CD(29.04.2015 15:05)
- откуда тогда костыли с аттрибутом flash ? - Mahagam(29.04.2015 15:29)
- Буду благодарен, если поясните. - Evgeny_CD(29.04.2015 15:30)
- кратко, у авр указатель на рам и указатель на флеш не совсем равнозначны. доступ к _данным_ во флешке идёт через отдельную команду LPM, посему просто скормить функции указатель невозможно, функция должна знать это указатель на флеш или на раму. Mahagam(20 знак., 29.04.2015 15:38)
- Ну и чо? Полюбому, указатель и сегмент памяти определять, что она рид-онли, хотябы. Вон, расово-верный МИПС и то требует. - mse homjak(27.04.2018 18:38)
- Некропостинг, однако. Суть в том, что у фон Неймана достаточно передать в функцию указатель на объект. У гарварда нужно еще передать тип этого указателя (указывает он в пространство данных или в пространство кода, патамучта работа с этими LightElf(248 знак., 27.04.2018 22:44)
- Вам-то какая разница? Вы определили указатель на тип данных и не парьтесь, чо куда впиндюрит компилер. Бдь, я прям вспоминаю молодость и эпические срачи "Це вс АСМ". Да, в АСМ это имеет значение, какими инструкциями ковырять датые. А в Це, чего mse homjak(99 знак., 28.04.2018 09:27 - 09:44)
- Вы уже заипали с вашими гарвардами. Это отговорка для лохов. Есличо, CM3 тоже гарвард, в то же время всё там нормально с единым адресным пространством. Ящетаю, гарвард давно пора сжечь на костре. - SciFi(27.04.2018 22:47)
- В 32-х битах все сильно проще. Можно часть указателя использовать для выбора адресного пространства (что собственно и сделано в Cortex-m). 8-битнику сложнее. - LightElf(28.04.2018 00:36)
- Ага, поэтому засунули бит адреса в опкод. Гениально :-) - SciFi(28.04.2018 09:49)
- В 32-х битах все сильно проще. Можно часть указателя использовать для выбора адресного пространства (что собственно и сделано в Cortex-m). 8-битнику сложнее. - LightElf(28.04.2018 00:36)
- Некропостинг, однако. Суть в том, что у фон Неймана достаточно передать в функцию указатель на объект. У гарварда нужно еще передать тип этого указателя (указывает он в пространство данных или в пространство кода, патамучта работа с этими LightElf(248 знак., 27.04.2018 22:44)
- а IAR придумала костыль для костылей - __generic - Vit(30.04.2015 07:26)
- Не "не совсем равнозначны", а совсем не равнозначны. Чистый гарвард: есть адресное пространство команд и есть адресное пространство данных. Каковые между собой не пересекаются совсем. Адрес команды 0x1234 и адрес данных 0x1234 - абсолютно разные LightElf(228 знак., 29.04.2015 17:27)
- Спасибо! - Evgeny_CD(29.04.2015 17:37)
- Спасибо! - Evgeny_CD(29.04.2015 15:50)
- Ну и чо? Полюбому, указатель и сегмент памяти определять, что она рид-онли, хотябы. Вон, расово-верный МИПС и то требует. - mse homjak(27.04.2018 18:38)
- кратко, у авр указатель на рам и указатель на флеш не совсем равнозначны. доступ к _данным_ во флешке идёт через отдельную команду LPM, посему просто скормить функции указатель невозможно, функция должна знать это указатель на флеш или на раму. Mahagam(20 знак., 29.04.2015 15:38)
- Буду благодарен, если поясните. - Evgeny_CD(29.04.2015 15:30)
- откуда тогда костыли с аттрибутом flash ? - Mahagam(29.04.2015 15:29)
- Коллеги, кто на примере кода пояснил эту несовместимость? Не дайте умереть неучем. - Evgeny_CD(29.04.2015 15:05)
- Да ладно, не важно. Я просто ещё раз говорю, что нафиг они сделали проц, который не совместим со стандартным Си? Собственно, поэтому я его никогда и не трогал. - SciFi(29.04.2015 15:02)
- аха, смешно, и эти люди предлагают быстро шевелить лапками, цЫрк - =AlexD=(29.04.2015 14:55)
- С чего вы взяли, что таблица не помещающаяся в ОЗУ данных поместится в ОЗУ команд? - LightElf(29.04.2015 14:57)
- К примеру, таблица имеет размер с половину ПЗУ и 5 раз ОЗУ. Кто виноват? Что делать? - SciFi(29.04.2015 14:54)
- +100500. Эти фанаты атымеля каждый раз поднимают гарвард на флаг: мы тут самые правильные! Не хотят признать сами себе, что атымел их поимел. Такую подлянку подсунули - вредители, адназначна. SciFi(84 знак., 29.04.2015 14:47)
- С учётом того, что у них получилось очень походе на СМ-2М (ну или DEC) лучше бы писали, что специально для Паскаля. Или бейсик :) symbions(228 знак., 05.06.2015 11:37)
- Что мешает ЦП положить таблицу констант сразу в ОЗУ данных этого AVR? - LightElf(29.04.2015 14:53)
- М3 вполне себе гарвардский - шины раздельные. - Evgeny_CD(29.04.2015 14:42)
- Блин, О5-25, делаются раздельные банки ОЗУ для кода и данных с раздельными шинами - и здравствуй детерминизм. В AVR без __flash и таблицу констант не обработать, не дублируя в ОЗУ, чистый гарвард фтопку. - =AlexD=(29.04.2015 14:43)
- Отсутствие нормальных средств разработки для одновременной разработки независимого кода для нескольких ядер - это не проблема идеи многоядерности. - Evgeny_CD(29.04.2015 14:32)
- Блин, да тупо открой десяток IDE в которых по десяток точек останова и поотлаживайся /ща мы со всей этой х-нёй попытаемся взлететь/, не говоря уж за то, что ширпотребовские отладчики такое не очень поддерживают. - =AlexD=(29.04.2015 14:37)
- Отучись от пошаговой отладки. Во-первых. Во-вторых -- разделяй и властвуй. По другому большую систему не построишь. Каждый CPU решает свои задачи и может быть отлажен отдельно. Конечно, это ведёт за собой какую-то форму test driven development. - fk0(30.04.2015 01:26)
- 1) мы оба знаем, что 100500 окон не помогут, 2) у меня в этой части пока нет законченной идеи. - Evgeny_CD(29.04.2015 14:40)
- 2) скажем так, тут требуется гораздо больше работы над отладочной средой, чем для банальной двухмикроконтроллерной системы. Как минимум отладчик должен понимать, что загружает и запускает код не он, но он должен уметь автоматически подхватывать =AlexD=(66 знак., 30.04.2015 07:26)
- да я просто слегка похлебал lpc, и меня это заметно утомило, поэтому я злой, а на идею увеличить гимор в разы впадаю в эпилептический припадок - =AlexD=(29.04.2015 14:52)
- Но человечество невиновато в косяках тех, кого уже, можно сказать, нет больше с нами. - Evgeny_CD(29.04.2015 15:00)
- При современном состоянии эрратогенерации, нет надежды на лучший результат. - =AlexD=(29.04.2015 15:02)
- Но человечество невиновато в косяках тех, кого уже, можно сказать, нет больше с нами. - Evgeny_CD(29.04.2015 15:00)
- Блин, да тупо открой десяток IDE в которых по десяток точек останова и поотлаживайся /ща мы со всей этой х-нёй попытаемся взлететь/, не говоря уж за то, что ширпотребовские отладчики такое не очень поддерживают. - =AlexD=(29.04.2015 14:37)
- Блок нормальной CPLD в жирном CPU гораздо полезнее десятка сопроцессоров. - =AlexD=(29.04.2015 14:29)
- Процесс отладки заиграет новыми красками. - LightElf(29.04.2015 14:55)
- :) зато веселье будет качественным! - Evgeny_CD(29.04.2015 14:59)
- Да, но: 1) требования к скилам разработчика резко растут 2) нет GCC для большинства плисов одновременно, 3) в мире цплд все закопирайчено - умаешься платить лицензионные платежи. - Evgeny_CD(29.04.2015 14:36)
- Процесс отладки заиграет новыми красками. - LightElf(29.04.2015 14:55)