Перейти к содержанию
    

KiV

Свой
  • Постов

    181
  • Зарегистрирован

  • Посещение

Весь контент KiV


  1. Именно так и реализовано. Проблема в разрешении коллизий при включении/выключении.
  2. Вот это и портит всю картину. Если-бы всё было включено постоянно - не было-бы никаких проблем. Изначально всё и работало как мастер-слэйв - причем кто первый включился, тот и мастер. Но потом кто-то выдернул разъем мастера...
  3. Так может кто предложить как реализовать в моей ситуации?
  4. Mutex хорош, когда надо разделить ресурс между двумя процессами на одном кристалле, а как выдать один мьютекс на двух отдельных кристаллах в двух программах? У меня действительно ошибочный алгоритм, поэтому и задал вопрос.
  5. Именно так!!! Я никак не могу придумать этот самый алгоритм :( Постоянно получаются гонки/дедлоки/etc... Поэтому и задал вопрос - возможно кто-то уже реализовывал подобное. Что такое mutex, semaphore, event group я знаю. У меня в алгоритме постоянно или гонки или еще какая бяка выскакивает и портит обмен :(
  6. Мне необходимо синхронизировать два "мастера" на одном аппаратном интерфейсе. Сигналы занятости интерфейса каждый процессор выдает другому по отдельному порту ввода/вывода.
  7. Флаги в FreeRTOS

    Именно так, все задачи разблокируются. Это поведение описано в "FreeRTOS Reference Manual" и в "Mastering the FreeRTOS Real Time Kernel" в разделе "Event Groups". Оба документа есть на официальном сайте.
  8. Возможно я не совсем ясно описал проблему. Дело в том, что интерфейс исполнительного устройства есть и не может быть изменен. Там уровни сигналов TTL и что-то типа синхронного SPI с сигналами тактирования, данных, выбора, разрешения и загрузки. Причем сигналы должны выдаваться в определенной витиеватой последовательности. Если использоватть CAN, RS-485 или что другое - нужно будет городить преобразователь на дополнительном процессоре из этого интерфейса в понятный внешнему устройству. Это невозможно по причине физических и финансовых ограничений. Кроме того, я вроде разместил сообщение в теме FreeRTOS, задав вопрос именно о том, как решить проблему программно, средствами FreeRTOS.
  9. Спасибо конечно, но: Это во-первых. А во-вторых мне придется ещё пару процессоров поставить, чтобы в десяти сантиметрах от основных процессоров декодировать CAN в подобие SPI обратно для исполнительного устройства.
  10. Имеется два ARM с FreeRTOS внутри (прошивки каждого выполняют полностью идентичные функции) и один аппаратный канал связи с внешним устройством, который разделяют оба процессора (канал - только выходные сигналы). Имеется также по одному выходу и, соответственно, входу на другом процессоре для индикации занятости (1) и освобождения (0) канала. Время обмена по каналу ~ 5 мс. Время цикла обработки данных процессором - 20 мс +-1 мс. Т.е.каждый процессор должен 5 мс работать с каналом, потом на 15 мс освободить канал и занимается своими делами. В это время канал может использовать второй процессор. Но есть один нюанс - любой процессор может быть включен или выключен в произвольный момент. При этом работающий процесор должен продолжать работать штатно а вновь подключенный - засинхронизироваться с уже работающим. Что-то совсем запутался с приоритетами и семафорами - совсем лыжи не едут. Может кто-то подскажет правильный алгоритм для такой конфигурации?
  11. Cortex-M7

    Не путайте площади пентиумов и меги - это вещи несколько разные! Тут уже Xenia приводила ссылку на вскрытый кристалл меги - посмотрите. И обратите внимание на "поясок" по периметру кристалла - это выходные драйвера и площадки для разварки. И их никак не уменьшить, ибо траверсы, привариваемые к кисталлу до нанометров не уменьшить, и драйвера, работающие при 5 Вольтах с соответсвующими токами тоже не сделать меньше. И в данном кристалле отношение пощади ядра к площади падов примено 2 к 1 и это я не учитываю еще края на резку кристаллов. Что получаем в результате: 1) Даже если уменьшить ядро до нуля, площадь уменьшится только в 3 раза! 2) А теперь представьте, что само ядро на той фотке умньшилось по площади в 100 раз... и потом представьте, как разместить те-же самые площадки по периметру этого ядра. Т.е. в лучшем случае раза в два уменьшим кристалл. 3) А теперь добавим в цену таких кристаллов подорожавший весьма существенно техпроцесс, разработку нового кристалла под этот техпроцесс, разработку фотошаблонов для него - а они после 180 нм стоят очень дорого, а после 90 нм - просто бешено. И где дешевизна будет? :) Заставляет например это: Поскольку для ОЗУ понадобится загрузчик с внешней памяти и доп. периферия, доп. выводы и т.д. то это уже не будет мега8 По моему оновная проблема - помехи. У выводных копрусов очень длинные связи до развязывающих конденсаторов на плате. Соответственно начинают влиять индуктивности выводов. Во всяких компьютерных CPU/GPU даже прямо на корпусе размещают фильтрующие емкости. И плюс по сигнальным цепям тоже проще с BGA работать становиться.
  12. Cortex-M7

    [sarcasm] Угу и конвейеры в ARM и прочие архитектуры суют просто так, для развлечения. и цена на чипы совсем не зависит от технологии... особенно цена разработки и запуска в производство. и Интел просто не хочет повышать частоты в своих супермелких технологических нормах... и, кстати, ЭСЛ чипы по нормам 0,8 микрон не работают на 500 МГц [sarcasm off] А реально и без сарказма если - то никто не будет покупать 100 МГц AVR Mega999 с техпроцессом 65 нм в 5-10 раз дороже обычной mega88. Все купят ARM на те же частоты но 90 нм, с конвейером и тактами ожидания флэши... за цену старой mega88 и 32 битной архитектурой Реалии таковы, что одним только технологическим уменьшением норм не добиться соответствующего ускорения процессора. Меняются и архитектуры, и куча всего, чего мы просто не знаем Ага. 116. МегаГерц. Тактовой частоты... интерфейса !!! А то, что после подачи адреса, данные появяться только через 5 (ПЯТЬ!!!) тактов этой самой частоты Вы не посмотрели? (MAX 10 User Flash Memory User Guide, Figure 4-8) Ну вот теперь попробуйте 116 МГц разделить на 5. И с какой частотой там флешь работает? Да нет практически флеши с частотами выше 20-30 МГц (ну кроме уникальной от Renesas, скорее всего обложенной патентами со всех сторон) и это не зависит от технологических норм. Даже отдельные микросхемы NOR Flash за 30 МГц не выходят. Там другие проблемы появляются - нельзя слишком быстро включить транзистор с помощью заряда в плавающем затворе. Плюс к тому далее этот сигнал надо распознать и аналоговым компаратором вычислить ноль или единица была в затворе. А это процесс не быстрый. Аналогично работают и все SDRAM, только там не плавающий затвор, а конденсатор. И скорости выборки SDRAM за последние лет двадцать хорошо если в 5-7 раз выросли. Чего не скажешь о скорости внешних интерфейсов - там ГигаГерцы рулят - аналогично Altera у себя скромно скромно так скорость интерфейса написала :) А у ренесасовских чипов с быстрой флэш еще вопрос какое потребление и что еще там у этой памяти ради быстродействия пожертвовано - я с ними увы никогда не сталкивался.
  13. Cortex-M7

    RZ/A1H весьма интересный камень, но вот по ссылке выше прочитал в табличке один интересный момент: "SD host interface × 2 channels (must obtain SD card license)" Это КАК??? Т.е. для использования интерфейса к SD карточке надо покупать лицензию? А как в всеми любимых STM32 реализован интерфейс SDIO? Почему STM лицензию не требуют? Плюс куча блоков на камне под nda только доступна. Так что видимо камень совсем не "народный" получается. :(
  14. Смысл всегда есть. Конкретно в этом случае - прекрасная иллюстрация для начинающих о стиле, хотелках и прочая... PS. И да, заказчиков, которые говорят что 500 руб в час - "ооочень высокая зарплата" я сразу спрашиваю, будут ли они отдельно оплачивать за меня налоги? и накладные? и желательно со 100% предоплатой по этим пунктам :). Вот тут такой "заказчик" начинает "прозревать", "удивляться" и даже "негодовать" по поводу налогового законодательства, вообще законов этой страны (или любой другой, неважно), бюрократии и т.д. и т.п. Далее закономерно следует "заманчивое предложение" сделать без договора, неофициально и "как-то вот так...", "чтоб подешевле...". Что делать с подобными заказами каждый решает сам, но результат подобных "работ" заранее предсказуем.
  15. Странно что ругается. Я ставлю галку "Autorun Batсh File" при генерации компонента - Allegro сам запускается, рисует все что надо и сам в конце закрывается. Компонент получается со всеми нужными атрибутами. Не знаю в чем может быть дело.
  16. Версия 2015.06 - все нормально, RefDes есть. Может слои отключены или еще что?
  17. 2015 - это не номер версии. Это год ревизии стандарта IPC-7351B, согласно которому вычисляются компоненты. На сайте у них расписано. Но вот что я абсолютно не могу понять в этой программе, так это то, как они вычисляют размеры площадок. Вот для номинальных размеров сейчас посчитала длину площадки 1,81 мм. А старая версия выдавала 1,8 мм. И что? По старому стандарту корпус TO-252 не станет? Или держаться не будет :) ? Но при этом есть еще минимальная и максимальная версия площадок, которая отличается от 1,81 более чем на 20%! Вот что может решить 10 микрон на двух миллиметрах, т.е. 0,5%??? Такое впечатление (даже уверенность) что просто клепают новые версии стандартов (и программ) чтобы срубить нового бабла со старых клиентов :D
  18. Возможно вот (источник): EFM32 is a mixed-signal microcontroller focusing on supporting ultra low power battery operated solutions. To run from small cell batteries, EFM32 MCUs incorporates low power peripheral technology, fast response time, low latency, and autonomous operation (i.e. the CPU does not run while the peripherals communicate). Только это совсем не STM32, хотя тоже ARM Cortex.
  19. Небось в хост машине драйвер устройства не стоит? Тогда эту проблему (сообщение выше) можно решить только многократными перезагрузками виртуалки, хоста, устройства и т.д. как и пишет система: пробуйте позже до изнеможения. А если серьезно, то это проблема конкретной виртуалки - VirtualBox а не USB устройства. Она захватывает на себя (неизвестное хосту) устройство но внутрь гостевой системы почему-то не отдает, или отдает не сразу. Помогают только упорные повторные попытки. Или попробовать поставить драйвер устройства на хост-системе, если таковой существует.
  20. +1000! И помехоустойчивость зависит в первую очередь от схемотехнических решений, во вторую - от разводки конкретной печатной платы, далее от конструктивного исполнения устройства и только потом от примененной комплектации. А "помехоустойчивость" програмы в моем понимании - бред. Для программ есть другой критерий - надежность. Т.е. возможность программы восстанавливать свою работоспособность после сбоев (и программных и аппаратных), возможность диагностировать ошибки и т.п. Это просто реклама :) Надо ведь как-то им свои изделия выделять из общей массы. Кто-то напирает на низкое потребление, кто-то на производительность, а кто-то на цену ... Естественно у разных производителей есть различные хитрые "фишки" на кристалле для повышения тех или иных потребительских качеств. Но нужно самому реально оценивать их полезность и значимость для конкретной задачи. Я не имею ничего против процессоров NEC - просто привык реально оценивать важность и необходимость рекламируемых возможностей кристалла для своих задач. Ну обычно процессоры с внешней шиной всегда более подвержены помехам при прочих равных условиях чем однокристалка - по плате куча дорожек идет к внешней памяти. Соответственно и помехи на них наводятся в любом случае бОльшие, чем на дорожки внутри чипа.
  21. По вашим ссылкам есть цены для 100-1000шт. Так еще выше я приводил цены на единичные AT91SAM7X256: А теперь сравним с диджикеевскими 1000 шт. по ссылке - $7.41996. Которых к тому-же нет на складе Можно, почему такие сомнения? Потому что пока их привезут из амЭрыки - цена вырастет процентов на 30 минимум и времени это займет... +100 ! Только одно дополнение - финансовое состояние конторы также стоит учитывать, т.к. закладывать в новый проект изделие от фирмы, которая может загнуться... :01:
  22. А как на диджикее посмотреть нормальные цены? И можно-ли по этим ценам что-то купить?
  23. Вот из новостей на их сайте: Пятая новость (на сегодня), считая сверху страницы :) Ну так еще привели-бы цену у дяди Васи на базаре :) - Диджикей не самый дешевый продавец Все познается в сравнении. Вот из диджикей цены на единичные образцы: LM3S8933-IQC50 $14.24 AT91SAM7X256 $12.47 Два контроллера с одинаковым количеством ног, размером Flash, RAM и примерно одинаковой периферией. Цены практически сравнимы, а с учетом того, что ко второму надо будет докупить внешний Ethernet PHY (посмотрите их цены на диджикей), плюс его развести на плате... выигрыш в цене на стороне первого. PS. Кстати, второй контроллер я покупал по цене порядка $7 в розницу, так что диджикей идет лесом PPS. А последние серии Stellaris с проектными нормами 0,13 мкм будут еще дешевле, судя по заявлениям TI.
  24. Делает TMS470 аж с 1995 года :). Весьма навороченные и малоглючные кристаллы для своего времени. Больше двух десятков моделей в семействе. Правда разработаны были по заказам автопрома, соответственно в свободном доступе появились только в 2005 (видимо десятилетний контракт закончился). В настоящее время снова исчезли из свободных поставок и с сайта - остались только автомобильные версии и только для крупных производителей под заказ. Используют. И еще как! Только те конторы, которые их используют не сильно на форумах тусуются, тем более русскоязычных :) Вернее было-бы сказать, что данное семейство на просторах ex-СССР и у мелких производителей непопулярно
×
×
  • Создать...