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

vap

Участник
  • Постов

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

  • Посещение

Репутация

0 Обычный

Информация о vap

  • Звание
    Участник
    Участник

Информация

  • Город
    Array

Посетители профиля

1 599 просмотров профиля
  1. Оживлю-ка я тему. А теперь? Или, может, есть потенциальные клиенты, и тогда вопрос - кто-нибудь уже имеет опыт заказа печатных плат, находясь в Армении, и покупки комплектующих? У кого, через какую транспортную компанию доставка, есть ли нюансы с оплатой и таможней?
  2. Ну инсайд-то и у меня есть, но к нему обращаться можно только за консультацией, а у меня тупо нет времени во всем разобраться. Про PowerPC я ничего не знаю, и поэтому самые просты вещи занимают уйму времени. На ARM1176 в свое время я гораздо более вычурную штуку сделал за короткий срок, но с ARM я был знаком. Тут нужен человек, знакомый с PowerPC и способный с пониманием происходящего ковырять стартапный код. Причем из-за жутко тесных сроков человек должен быть уже опытный. Если есть ощущение, что справитесь - пишите на email, договоримся.
  3. Ну так это же не PCI-ная сетевуха, оно прямо в чипе процессора все расположено, и вроде как просто работает как Debug Access Point (не знаю, как правильно в PPC-шной терминологии). Ну то есть можно ядро остановить, бряку поставить, регистры посмотреть.
  4. Так там аппаратный модуль, который по получении специальных ethernet-пакетов к шине лазает и к ядру процессора. Ну то есть, софта на таргете никакого не нужно, все в железе, прямо от отпускания резета.
  5. Да, EDCL это умеет. Но как именно с этим работать - надо разбираться. IDE нету, SDK в прямом виде нету, но есть вот это: https://github.com/RC-MODULE/rumboot https://github.com/RC-MODULE/rumboot-tools https://github.com/RC-MODULE/u-boot https://github.com/RC-MODULE/u-boot/blob/rcm-develop/configs/mb115-01_defconfig
  6. Нужно поднять FreeRTOS на PowerPC PPC470S. Сроки сжатые, по деньгам - не 20 тысяч, но все-таки хотелось бы не 200, поэтому ищем спеца, который уже хорошо знаком с PowerPC и для которого это не будет мегапроектом, требующим уймы времени. Компилятор - GCC, системная библиотека - NewLib. Это важно, так как в горах нашего прикладного кода мы в куче мест на это закладывались. Процессор двухъядерный, поэтому либо одно ядро остановлено, либо на каждом ядре свой экземпляр freertos-а. Нужно, чтобы работала плавучка. Надо поднять все - от включения питания до полностью проинициализированных тактирования, контроллера прерываний, кэшей, распределения памяти, etc. Это подъемно, обвязка в чипе не монстроидальная. Критерий приемки работы - честно без срезания углов работающие две нитки, в каждой - hello world в цикле с разными периодами, работает плавучка в обеих нитях, все это собирается с помощью gcc (тулчайн - с вас, или дам наивно собранный мной с помощью crosstool-ng), есть линкер-скрипт, честно работает malloc (), проинициализировано все нужное. Также в состав работы входит объяснение всего сделанного мне, чтобы я мог потом с этим работать, а также некоторый объем консультаций после завершения проекта. На целевой плате нет JTAG, но есть (пока не проверенный) EDCL. Если с EDCL не получится, то работу все равно надо сделать, в этом случае предоставлю способ заливки бинарника во флэш напрямую, с прямым подключением к флэшке с процессором в сбросе. Если нет возможности сделать все целиком, но вы хорошо знаете PowerPC, то возможно взаимодействие в виде хорошо оплачиваемых консультаций. Располагаемся в Санкт-Петербурге на юге города. Пишите на [email protected], меня зовут Андрей Васильев.
  7. Вот как раз пару дней назад получил от них ответ, что оно конечно есть, все с ним хорошо, но цена от полумиллиона и поставки не ранее конца 2019 года, и только если наберется заказчиков хотя бы на 20 штук :) Так-то оно было бы для нас идеально. И ПЛИС есть на борту для наших интерфейсов, и ОЗУ хватает, и процессор достаточный, и МКИО две штуки. Спасибо, похоже, что 1892ВМ12АТ - ровно то что нужно. А что там с программированием? Это же просто MIPS? Или они на DSP-ядрах мучились? Нам-то MIPS-овского ядра с FPU DP и на 100МГц вполне хватит. Только с памятью что-то надо будет придумать - 4 микросхемы 1657РУ1У что ли ставить... И с ROM пока непонятно. И с приемниками по UART-ам непонятно как связываться - видимо, нужно ПЛИС какой-то радстойкий искать... Хорошо что для всего устройства целиком и в полностью радстойком исполнении времени еще достаточно, за полгода такое было бы никак не поднять.
  8. Пятивольтовые они... И если входы ИН13У2 могут принимать сигнал от трехвольтовой логики, то выходы - пятивольтовые, т.е. требуют либо пятивольтовотолерантности от верхнего уровня, либо согласования уровней. Спасибо за наводку. Однократная встроенная память - это конечно жестко, но если припрет - можно и внешний чип поставить. Вижу, что вы глубоко в теме. Понимаю, что бесцеремонно с моей стороны закидывать такими вопросами, но, может, навскидку посоветуете что-то радстойкое, доставаемое и хотя бы относительно технологически-несложное для вычислителя? Требуется плавучка двойной точности и частота где-то от 80 мегагерц (или, если без плавучки, то мегагерц на 400-500), и чтобы ОЗУ либо на чипе полмегабайта-мегабайт, либо статика одним чипом подключалась.
  9. Спасибо за наводку. Сам я сейчас присматриваюсь к связке 1895ВА1АТ + 5559ИН73Т + ТИЛ6В. Вроде бы во всех трех местах подтвердили доступность. 1896ВЕ1Т видел, но все равно через какое-то время радстойкость потребуется, и придется с него уходить опять-таки на 1895ВА1АТ или что-то подобное, поэтому решил сразу не привыкать к хорошему. Про USB-МКО уже посоветовали. Вообще, с тестированием придется что-то думать, я пока не разобрался, как это будет выглядеть.
  10. Там вот такое написано: The section definitions within the OVERLAY construct are identical to those within the general SECTIONS construct (see SECTIONS), except that no addresses and no memory regions may be defined for sections within an OVERLAY. No memory regions - значит, VMA изменить не получится, если я правильно понял. Но я в этом всем плаваю, так что еще остается надежда, что есть какой-то очевидный способ, которого я просто не вижу :) ДОПОЛНЕНИЕ: Вроде бы получилось. Последний абзац раздела ld-шной доки про оверлеи натолкнул на мысль. Еще надо проверять, но в map-файле все выглядит красиво, и вдобавок запускается минимальный пример. Что сделал: .text 0x100000 : AT ( _edata ) { ... } .bss _edata ( NOLOAD ) : { ... } _edata - это символ, которому присвоен location counter после конца .data, а 0x100000 - это адрес того блока памяти, куда при старте копируется .text и из которого работает. В map-файле получилось вот что: 0x00000000c0000490 _edata = . ... .text 0x0000000000100000 0x7b58 load address 0x00000000c0000490 ... .bss 0x00000000c0000490 0x128 load address 0x000000017ff00920 ... 0xC0000000 - это физический адрес основного блока памяти, из которого стартуем и где остается .data Похоже, ld-шные ограничения не сработали, так как одна из перекрывшихся по LMA секций оказалась NOLOAD (и чего я мучился - оно с самого начала могло так заработать...). Синтаксис еще покручу - это только затравка, некрасивый, но приведший к результату пример. Как минимум вместо 0x100000 сделаю нормальное назначение VMA в привычном синтаксисе. Надеюсь, я по запарке не пропустил чего-то важного - например, не залил при проверке какой-то другой бинарник :)
  11. Коллеги, здравствуйте Прошу помощи от гуру, хорошо разбирающихся в GNU ld. Поднимаю сейчас компиляцию нашей софтины под странную платформу. Ее особенность - все исполнение идет из RAM, причем RAM там разделено на 4 куска по полмегабайта, и 3 из 4 кусков поддерживают доступ только двойными словами: при попытке обратиться как к байту или как к полуслову вылетает data abort. Если быть точным, это не платформа странная, а я от нее хочу странного - пытаюсь заиспользовать память DSP-шных ядер для чего-то полезного, ибо сами эти ядра нам не нужны. Первого полумегабайта нам совсем не хватает под все наши нужды, поэтому сделал следующее: 1. У нас довольно много данных в .bss, к которым идет обращение только словами, и я их вынес в отдельную секцию, назвал которую .bss32bit (и размещаю ее в той части памяти, которая чисто 32-битная) 2. Код собираю в 32-битном режиме ARM, а не в Thumb, и разместил его тоже в чисто-32-битном блоке В итоге, вроде бы все прекрасно - под .data и .bss в первом блоке места достаточно, и остается еще прилично места под кучу. Но тут вылезает еще одно неудобство: простым образом при старте можно загрузить снаружи бинарник только в первый блок, и соответственно, хочется стартовать оттуда, в startup-е перемещая .text куда нужно и очищая оба .bss-а как обычно. Этакое исполнение из flash-а наоборот - не .data перемещается, а .text. Реализовал это все, и даже все работает - после старта .text копируется во второй блок, .bss очищается, .bss32bit тоже очищается, передается управление на main, и дальше все работает. Но после перемещения .text место из-под него в первом блоке уже свободно, и хотелось бы переиспользовать его под .bss (сейчас там располагается куча, но .bss у нас тоже большой). Пытаюсь понять про оверлеи в доке ld, но там указано, что для секций внутри оверлея нельзя указать LMA и/или VMA, они указываются только для самой оверлейной области. Понимаю, что можно решить задачу грубой силой - .text при линковке вообще выносить в отдельный файл и при старте стартапным кодом сразу грузить его снаружи прямо в нужную память. Но очень уж не хочется такого монстра в стартапном коде городить... Может быть, кто-то может подсказать какой-то трюк, который все-таки позволит слинковать .bss в ту же память, которая была LMA .text-а?
  12. За наводку на Элкус большое спасибо. Очень в тему.
  13. Здравствуйте, коллеги. В ближайшее время нам светит перспектива добавления в наше устройство возможности отдавать данные в манчестерский канал по ГОСТ Р 52070-2003. Сам я почитал про него, штука в некотором смысле красивая, но наверняка там есть куча подводных камней, неочевидных для новичка в этой теме. Нужен консультант, который все расскажет, объяснит на пальцах и проведет нас мимо всех граблей. А может, даже и возьмет на себя соответствующий кусок проекта. Надо будет поучаствовать в разработке и железа (начиная с выбора элементной базы), и софта. И тестировать это как-то надо - подозреваю, организация тестирования будет как бы не самой большой частью проекта. Территориально Санкт-Петербург, но работа тут будет скорее полностью удаленная. Сроки сжатые, сами мы в перманентном аврале, поэтому требуется активность и инициатива. По деньгам - мы не жадные, оскорбительно малых сумм не будет. Пишите на [email protected]
×
×
  • Создать...