|
|
 |
Ответов
(1 - 64)
|
Sep 17 2015, 11:38
|
Участник

Группа: Участник
Сообщений: 71
Регистрация: 28-07-14
Пользователь №: 82 391

|
Спасибо! А что бы посоветовали, Cortex A7 как я понял с большим кол-вом мануалов из за использования в Rospberri Pi или все же Cortex А9, так как с ним в ближайшем будущем придется работать.
|
|
|
|
|
Sep 17 2015, 12:07
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(SII @ Sep 17 2015, 13:39)  Смотря на каком уровне писать. Если прикладные программы под Линух/Андроид, то разницы нет. А вот если драйверы железа, физически находящегося на кристалле процессора, то разница, конечно, вполне может быть. Ну и, наконец, у каждого ядра -- свои собственные аппаратные глюки. Прикладные программисты с этим сталкиваются редко, но системщикам необходимо учитывать и обходить их тем или иным способом. Драйверы чего вы хотите писать? Контроллера прерываний, кэш памяти, SMP, или системы критических исключений?? Сомневаюсь. В лучшем случае будете дорабатывать или напишите драйвер какого-либо периферийного устройства, в этом случае вам хоть А5, А7 или 9 без разницы.
Сообщение отредактировал mantech - Sep 17 2015, 12:08
|
|
|
|
|
Sep 17 2015, 12:18
|
Участник

Группа: Участник
Сообщений: 71
Регистрация: 28-07-14
Пользователь №: 82 391

|
В основном работа с портами, UART, I2C, SPi, USB, SPort, Ethernet и другие, можно сказать общение с периферией, другими процессорами, использование GPIO под свои нужды. В общем все что раньше проделывалось на DSP BlackFin.
|
|
|
|
|
Sep 17 2015, 12:30
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(4uLABEK @ Sep 17 2015, 15:18)  В основном работа с портами, UART, I2C, SPi, USB, SPort, Ethernet и другие, можно сказать общение с периферией, другими процессорами, использование GPIO под свои нужды. В общем все что раньше проделывалось на DSP BlackFin. Интересно, как вы себе это представляете? Только мне кажется, что вы не очень-то понимаете, во что ввязываетесь? Если что, процессоры такого класса - довольно сложные звери, причём зачастую без доступной документации. Запустить такой процессор с нуля - это уже серьёзное начинание. Поэтому обычно на нём запускают уже кем-то портированный загрузчик и линукс. Кстати, линуксовая система - это тоже тот ещё зверь. Далее вам остаётся надеяться, что драйверы для нужной вам периферии уже написаны, в противном случае нужно будет ещё и осваивать ремесло линуксового драйверописания.
|
|
|
|
|
Sep 17 2015, 12:31
|

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

|
QUOTE (4uLABEK @ Sep 17 2015, 15:18)  В основном работа с портами, UART, I2C, SPi, USB, SPort, Ethernet Пустые слова. С "портами" можно работать по разному, например, открываете сокет и работаете с Ethernet/IP/UDP/TCP... Чем не работа? И ни какой связи с железом. Чистая приладуха. QUOTE В общем все что раньше проделывалось на DSP BlackFin. А тут кто-то должен знать, что Вы проделывали с BlackFin? Например, тот-же линукс на нем и вперед.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Sep 17 2015, 12:52
|
Участник

Группа: Участник
Сообщений: 71
Регистрация: 28-07-14
Пользователь №: 82 391

|
Должно же быть общение, чтобы выдать команду по SPI например или принять. Или по флагу, включить светодиод. Разве такие действия будет трудно выполнить на таком "звере"?
|
|
|
|
|
Sep 17 2015, 13:02
|
Участник

Группа: Участник
Сообщений: 71
Регистрация: 28-07-14
Пользователь №: 82 391

|
Хорошо, как я понял, если А9 в дальнейшем, значит А9 и надо брать. Так как все действия будут происходить на голом железе. И переход с А7 на А9 может натолкнуть на различного рода трудности?
|
|
|
|
|
Sep 17 2015, 13:05
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(4uLABEK @ Sep 17 2015, 16:02)  Хорошо, как я понял, если А9 в дальнейшем, значит А9 и надо брать. Так как все действия будут происходить на голом железе. Ну что же, удачи. Потом не говорите, что вас не предупреждали. Цитата(4uLABEK @ Sep 17 2015, 16:02)  И переход с А7 на А9 может натолкнуть на различного рода трудности? Если вы справитесь с титаническим трудом запуска A7 на голом железе, то вам не составит труда проделать всё то же самое снова с A9. Так что не волнуйтесь.
|
|
|
|
|
Sep 17 2015, 13:10
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Цитата Должно же быть общение, чтобы выдать команду по SPI например или принять. Или по флагу, включить светодиод. Разве такие действия будет трудно выполнить на таком "звере"? Цитата Трудно. тут надо пояснить выдать то не трудно, это все будет какая-либо запись в адрес памяти. А вот сделать все остальное что предшествует этой записи будет очень трудно. Настроить клоки, включить периферию, и т.д. И трудность эта объясняется тем что документация на такие процы очень порезана, даже опуская что сами процы сложные, так еще и что дергать непонятно. Обычно на такого рода проце есть линукс, а из линукса шевелить ногами и SPI - это уже драйвер нужен. Если он есть - хорошо, все просто, а если нет то пипец... Баре-метал возможен, но многое вы будите узнавать экспериментально, а до чего то даже не догадаетесь... Цитата И переход с А7 на А9 может натолкнуть на различного рода трудности? Более того даже при переходе с одного А9 на другой А9, у вас будут теже трудности. Ну попробуйте в STM любом передать что-то по SPI не заглядывая в документацию...
|
|
|
|
|
Sep 17 2015, 13:27
|
Участник

Группа: Участник
Сообщений: 71
Регистрация: 28-07-14
Пользователь №: 82 391

|
Даа.. не обнадеживающе все как-то звучит.. Запись в память, чтение из памяти. Согласен, без документации нормальной где нет временных диаграмм ничего не получится. Присматриваюсь к RK3066 может кто имел дело?
|
|
|
|
|
Sep 17 2015, 13:55
|
Участник

Группа: Участник
Сообщений: 71
Регистрация: 28-07-14
Пользователь №: 82 391

|
Да как раз его сейчас изучаю.. По документации у них все норм, есть клоки на каждый интерфейс, надеюсь документация полная. Если брать такую шляпу Marsboard RK3066 я не прогадаю?
|
|
|
|
|
Sep 17 2015, 14:38
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(4uLABEK @ Sep 17 2015, 16:55)  Да как раз его сейчас изучаю.. По документации у них все норм, есть клоки на каждый интерфейс, надеюсь документация полная. Не спешите. Есть ещё документация на процессор Cortex-A9. Вроде бы там нужно настраивать MMU и кэши, что довольно весело. С контроллером прерываний нужно бодаться. Ну и так далее. Цитата(Golikov A. @ Sep 17 2015, 16:54)  manch или как-то так, под все общее неодобрение запускал что-то на голом железе из тяжелых. Вроде хвастал что запустил Ага. Вот тут.
|
|
|
|
|
Sep 17 2015, 17:34
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 13-07-10
Из: Солнечногорск-7
Пользователь №: 58 414

|
Цитата(4uLABEK @ Sep 17 2015, 16:02)  Хорошо, как я понял, если А9 в дальнейшем, значит А9 и надо брать. Так как все действия будут происходить на голом железе. Если Вы собираетесь работать на голом железе, то надо не просто А9 брать, а именно тот, на котором и собираетесь работать, поскольку один А9 от другого А9 (другой фирмы) может отличаться кардинально. У них будет совпадать только собственно процессорная часть (грубо говоря, система команд, MMU и кэши), вся периферия может быть абсолютно иной.
|
|
|
|
|
Sep 17 2015, 18:42
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(Golikov A. @ Sep 17 2015, 16:54)  manch или как-то так, под все общее неодобрение запускал что-то на голом железе из тяжелых. Вроде хвастал что запустил Если это меня имеют ввиду, то запустил, причем уже давно Если хотите пройти мой путь, то начните с самого простого и главного - выберите чип с максимальной документацией и САМОЕ главное - чтоб для него был хоть самый минимальный SDK. Как тот, кто все это осиливал скажу, без этого чип вам не поднять! Затем выберите среду разработки. В моем случае - это был ИАР, мне нравится его иде и компилятор, поэтому и сижу на нем уже лет 10, но это добавило мне порцию геморроя в виде портирования того, что нарыл в инете, писанного под гцц, на иар... Еще один очень важный шаг - формирование имиджа для загрузки в чип, т.к. он без внутреннего флеша. Затем попробуйте сделать пробный проект - помигать диодом, если получится, вы прошли 30 % пути...
Сообщение отредактировал mantech - Sep 17 2015, 18:43
|
|
|
|
|
Sep 17 2015, 19:06
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(Golikov A. @ Sep 17 2015, 21:50)  теперь вы нам немой укор. Я прощаю Пускай спрашивает, задает вопросы... Помогу, если со временем не слишком напряг будет, но работу за него делать не буду, пускай учится сам головой думать, раз уж влез в неблагодарное дело  ЗЫ. Сначала пусть хоть камень правильно выберет, а там посмотрим... Цитата(Golikov A. @ Sep 17 2015, 21:50)  линукс ставить надо было.. Если без хохмы - то не надо, своя ось намного проще, легче ставить установщикам на производстве, не дает всяким любителям чего-то "подкрутить или перенастроить", запускать игрушки, чаты и пр. хрень вместе с рабочей программой, всегда можно что-нить дописать или ввести новые функции... Так что очень доволен что не пощел по "мейнстриму"
Сообщение отредактировал mantech - Sep 17 2015, 19:07
|
|
|
|
|
Sep 18 2015, 05:28
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(scifi @ Sep 17 2015, 19:37)  Вроде бы тут кто-то OMAP от техасских инструментов запускал на голом железе. Или это был i.MX от фрискейла... В общем, что-то такое. Кстати, гугл говорит, что для этого рокчипа есть мануал. Скачайте, полистайте, чтобы получить какое-то представление о масштабе бедствия. Я запускал  OMAP L-137 Сперва запустил на голом, потом ещё портировал на него uCOS. И портировал USB-стек. Всё - ручками, внимательно вчитываясь в доки: и запуск ядер (через PRU-ядро), и инит кучи периферии, и взаимодействие ядер, и MPU и даже MMU (хотелось кеш данных включить) на ARM9-ядре - всё сам по pdf-кам. Никакими UBoot-ами не пользовался, даже не глядел в них. Раз только попытался глянул в реализацию USB-стека в линухе для этого МК (в примерах для L-137 к сожалению не было примера stand-alone стека, предлагалось только пользоваться какой-то закрытой операционкой в бинарниках или линухом), но понял что в этом лесу я буду разбираться дольше, чем портирую готовый USB-стек из примеров для LPC17xx переписав уровень абстрагирования от периферии (HAL). И библиотеками никакими не пользовался - брал даташит на периферию, описывал структурами регистры периферии и писал драйвер. Ничего сверхъестественного или невозможного нет, первый старт с поддержкой минимальной периферии, GPIO, тактирования, отладочного вывода в UART - примерно через месяц-полтора насколько помню. Самое титаническое, что там есть - это объём доков, раз в несколько больше чем на среднем Cortex-M. Особенно на всякую сложную периферию типа USB, EDMA, MMU. Как правило она там навороченная, так что и описания объёмные. Всякие UART, SPI, I2C, ... - по сложности мало отличаются от МК класса на ядре Cortex-M. Ну McASP правда посложнее немного. Да - и более-менее глубокая оптимизация под ядро C674x тоже время заняла порядочно. Всё остальное - ерунда, если есть опыт в освоении многих других МК. Месяца 2-3 - и будете хорошо ориентироваться в этом МК. Самое главное, как тут уже упоминали - наличие подробных доков. Если таковых нет - за дело лучше не браться. PS: Скоро кажись в LPC4370 буду вползать  Думаю на первоначальное освоение хватит месяца.
|
|
|
|
|
Sep 18 2015, 07:48
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(jcxz @ Sep 18 2015, 08:28)  и MPU и даже MMU (хотелось кеш данных включить) на ARM9-ядре - всё сам по pdf-кам. Мсье знает толк в извращениях Зачем, когда есть готовые процедуры инициализации, только немного поискать... Цитата(jcxz @ Sep 18 2015, 08:28)  Кстати, гугл говорит, что для этого рокчипа есть мануал. В принципе, базовые сведения есть, хотя скудноваты. Усб, похоже, несовместимый с ehci, да и sdk нет, придется выколупывать из bsp линухи... Вообщем, я б не взялся - долго и муторно. По мне все-равно лучше мх или ситары нет...
|
|
|
|
|
Sep 18 2015, 08:09
|
Знающий
   
Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960

|
Цитата(mantech @ Sep 18 2015, 10:48)  По мне все-равно лучше мх или ситары нет... Насчет "лучше" утверждение спорное. По качеству документации и поддержки - да. По степени интеграции тот же A20 рвет imx как тузик грелку. И ценовой фактор в нынешнее кризисное время со счета не сбросить. imx весьма небюджетен.
|
|
|
|
|
Sep 18 2015, 13:54
|
Участник

Группа: Участник
Сообщений: 71
Регистрация: 28-07-14
Пользователь №: 82 391

|
К моему удивлению наткнулся на довольно таки дешевую.. нужную вещь.. DE0-Nano-SoC. По альтере явно будет вся документация. Просто изначально цена отпугивала. Может кто знает где купить в России без особой наценки? а то через терасик 99$ + доставка 50$) за доставку жалко отдавать)
|
|
|
|
|
Sep 18 2015, 14:22
|
Участник

Группа: Участник
Сообщений: 71
Регистрация: 28-07-14
Пользователь №: 82 391

|
Да, сами) я сам думаю.. во что я ввязался..
|
|
|
|
|
Sep 19 2015, 15:21
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(zltigo @ Sep 19 2015, 15:45)  Мануалы от ARM есть первоисточник и этим все сказано. Производители конкретных чипов уже только их сокращают, нередко до этй самой "полная фуфлень". Но не наоборот. Знаете, можно читать одну и ту же информацию или в виде "сухих юридических выкладок" в каком-нибудь официальном издании, написаных в "казенном" стиле, а можно их-же, но в переработанном виде, после осмысления каким-либо человеком, который применил все эти выкладки в виде реальной программы и затем, описал все это "своим языком". Я предпочитаю последнее.
|
|
|
|
|
Sep 19 2015, 17:02
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(aaarrr @ Sep 19 2015, 18:24)  Да ладно, нормальный там стиль, уж точно не "фуфлень". По крайней мере, даже мыслей не возникало читать такие же описания у атмела и прочих после изучения родной документации. Под "нормальным" я понимаю тогда, когда есть не просто перечисление регистров с кучей параметров, а еще и наличие примеров инициализации для самых распространенных применений, например, инициализация кэша или контроллера прерываний с объяснением команд. Вот такой докой будет приятно пользоваться
Сообщение отредактировал mantech - Sep 19 2015, 17:02
|
|
|
|
|
Sep 19 2015, 18:05
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Цитата Ещё и ПЛИС в эту кучу? Будете сами на верилоге ваять uart, spi, gpio и всё такое прочее? Я вас умоляю, хватит потешать честной народ. 1. Это ваще не очень сложно, но в отличии от процов без документов у вас периферия будет ваша и описанная вами, и в том количество что вам надо. 2. Процы в этих соках не голые, много нужной периферии имеют на борту, и конечно если даже описания не хватит, то точно есть примеры использования. Вообще конечно странно вы проц выбираете, по названию, а не по необходимым свойствам. Но СОКи эти прятная штука, вообще проц + ПЛИС супер связка, а тут еще и шина проца в ПЛИС выведена, хорошая штука. Нам арм А не нужен, потому ставим внешние Мки к ПЛИС, а так я бы точно такие собирал, правда от ксалинкса, но это уже детали...
|
|
|
|
|
Sep 19 2015, 19:03
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(jcxz @ Sep 18 2015, 08:28)  Всё остальное - ерунда, если есть опыт в освоении многих других МК. Месяца 2-3 - и будете хорошо ориентироваться в этом МК. Самое главное, как тут уже упоминали - наличие подробных доков. Если таковых нет - за дело лучше не браться. PS: Скоро кажись в LPC4370 буду вползать  Думаю на первоначальное освоение хватит месяца. Вот что-то не верю. Покажите плату, дивайс или что вы там сделали с фоткой и доказательствами что это заработало. Цикл освоения SoC-а такого уровня не менее года по моим прикидкам. Если вы действительно разрабатываете весь дивайс сами.
|
|
|
|
|
Sep 19 2015, 21:02
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(AlexandrY @ Sep 19 2015, 22:03)  Цикл освоения SoC-а такого уровня не менее года по моим прикидкам. Если вы действительно разрабатываете весь дивайс сами. Год - то конечно многовато, я думаю, у меня ушло 8 месяцев, примерно, да и то, первые 2 сам тупил сильно, т.к. было непонятно, как в камень залить свой бинарник, потом пошло гораздо веселее  Цитата(krux @ Sep 19 2015, 22:08)  перепилить под себя вендорский BSP? долго ли умеючи... Так говорит тот, кто ни разу этого не делал. Ибо не надо путать BSP и SDK, в первом только настройка девайсов на базовый режим работы и их клоков...
|
|
|
|
|
Sep 21 2015, 08:25
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(AlexandrY @ Sep 20 2015, 01:03)  Вот что-то не верю. Покажите плату, дивайс или что вы там сделали с фоткой и доказательствами что это заработало. Цикл освоения SoC-а такого уровня не менее года по моим прикидкам. Если вы действительно разрабатываете весь дивайс сами. Вопрос веры и религии - это личное дело каждого. SoC-и я не осваивал, могу говорить только про то, что делал. Конечно под "освоением" я понимаю не то, что сел и N-месяцев изучаешь МК от корки до корки целиком. Это глупость, имхо. Изучение всегда веду по мере необходимости. Первый этап: освоение базы (ядро (если нужно и только нужные изначально его возможности), система тактирования, GPIO, управление питанием (если нужно), системная конфигурация, контроллер прерываний), таймеры, внешняя память (если надо), натягивание ОС (если нужно) и т.д. По завершению этого этапа, получаю базис ПО, позволяющий управлять тактированием ядра и отдельных частей, управлять пинами GPIO (мой API), имеющий отладочный вывод в UART (со всем API). Всё это стараюсь сделать (насколько возможно) под свой стиль API, который у меня примерно одинаков во всех проектах на МК от MSP430 до M4 и L-137. На этом считаю базовое освоение оконченным и приступаю к реализации функционала необходимого по проекту. В процессе этого конечно тоже продолжаю осваивать необходимую периферию. Ненужную периферию не изучаю. Постоянно в процессе доизучиваю более глубоко то что было по-быстрому пройдено на первом этапе и переписываю. MMU кстати вообще я изучил уже в конце всего проекта, через два года после начала, когда уже весь прикладной функционал был давно реализован и отлажен. Первый этап на L137 у меня длился примерно 1.5месяца. Довольно долго. На МК на M-ядрах обычно меньше: 2-3 недели.
|
|
|
|
|
Sep 21 2015, 08:49
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(jcxz @ Sep 21 2015, 11:25)  Вопрос веры и религии - это личное дело каждого. Вообще-то я интересовался, что конкретно вы изучили и что в результате сделали. Утомляют знаете ли эти анонимные специалисты, которые все могут, но не имеют ничего показать. А пока даже упомянутая вами последовательность изучения вызывает вопросы. Если MMU отложили на конец, то значит все время до этого неправильно инициализировали DMA и работали не на максимальной производительности. Так зачем вообще тогда выбрали производительную архитектуру. Все то же можно было сделать и на Arduino. Вопрос не в религии, а в репутации. Вы ж понимаете.
|
|
|
|
|
Sep 21 2015, 10:44
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(AlexandrY @ Sep 21 2015, 14:49)  Вообще-то я интересовался, что конкретно вы изучили и что в результате сделали. Утомляют знаете ли эти анонимные специалисты, которые все могут, но не имеют ничего показать. Я уже тут вроде где-то описывал - повторяться неохота. Кратко говоря: кардиограф на 24 канала по 8кГц каждый (ADS1298) (только не надо меня спрашивать - зачем так много каналов и так много кГц - это было требование заказчика, в прикладную область я не вникал, для этого в проекте были профессора медицины) с кучей разной ЦОС (разные фильтры, FFT и спец.алгоритмы). Причём ЦОС предполагалось перетащить с готовой работающей на PC модели, соответственно - не оптимизированной под DSP и вся в double. Приём потока с 3-х 8-канальных АЦП висящих на McASP+EDMA (с передачей одного из каналов на аудио-ЦАП на этом-же McASP), обработка, передача потока обработанных данных, а также вычисленных характеристик на USB клиенту. Цитата(AlexandrY @ Sep 21 2015, 14:49)  А пока даже упомянутая вами последовательность изучения вызывает вопросы. Если MMU отложили на конец, то значит все время до этого неправильно инициализировали DMA и работали не на максимальной производительности. Так зачем вообще тогда выбрали производительную архитектуру. Все то же можно было сделать и на Arduino. Ну-ну на дуине поток в > 192kS/s с кучей ЦОС на double???  Такое думаю даже ни один M4F, гордо называемый маркетологами "DSP", не потянет. Если Вы про EDMA3, то он работает независимо от MMU. Если про другие DMA - я их не использовал. Да, работал не на максимальной производительности. После утаптывания PC-шного алгоритма под DSP, оказалось, что DSP и ARM-ядра каждое загружены не более чем на 10% на 300МГц тактовой. Так что оно особо и не нужно было. Но потом заказчик озвучил, что хочет продолжить проект и добавить кое-какой обработки, вот под это дело я авансом решил ещё немного разгрузить ARM9-ядро и включить кеш данных (что давно хотел, но руки не доходили). Вот и прописал инит MMU. Цитата(Golikov A. @ Sep 21 2015, 15:11)  А DMA в этих процах без MMU не обходится? Конечно обходится. Если речь про EDMA3, так это вообще там часть периферии не относящейся к конкретному ядру. С ним может хоть DSP хоть ARM работать, а можно вообще - одним каналом рулить ARM, другим - DSP. А вот MMU - относится только к ARM-ядру. У DSP своё кеширование, а виртуализации памяти вообще нет (насколько я помню). Есть правда ещё какое-то IDMA, но это только уже в DSP-ядре и его я не использовал и не разбирался.
|
|
|
|
|
Sep 25 2015, 19:07
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(jcxz @ Sep 25 2015, 12:17)  С allwinner не работал. Вот честно не понимаю людей, нафига ломать мозги об недокументированные чипы? Ну выйдет на 5-10 процентов дешевле ваша железка, и что? Вы ж не в стопятьсотраз повторяете китайский планшет или медиаприставку, а делаете довольно недешевое оборудование, раз уж необходим мощный проц, поэтому какой смысл тут экономить?? К тому же, какой EOL у этих рокчипов и виннеров?? Когда в первый раз "увлекся" данными чипами, года 2 назад, в тренде были А10 и А13, интересно, они еще выпускаются или уже "канули в лету"?
Сообщение отредактировал mantech - Sep 25 2015, 19:10
|
|
|
|
|
Sep 29 2015, 18:45
|
Местный
  
Группа: Участник
Сообщений: 225
Регистрация: 15-11-09
Из: Москва
Пользователь №: 53 634

|
Цитата(AlexandrY @ Sep 21 2015, 11:49)  Вообще-то я интересовался, что конкретно вы изучили и что в результате сделали. Утомляют знаете ли эти анонимные специалисты, которые все могут, но не имеют ничего показать.
А пока даже упомянутая вами последовательность изучения вызывает вопросы. Если MMU отложили на конец, то значит все время до этого неправильно инициализировали DMA и работали не на максимальной производительности. Так зачем вообще тогда выбрали производительную архитектуру. Все то же можно было сделать и на Arduino.
Вопрос не в религии, а в репутации. Вы ж понимаете. Под последовательностью подпишусь. http://eastar.ru/products/hardware/uhp-200/TI AM3352 (Cortex-8) Собственный загрузчик. Собственная сетевая ось. По теме топика. Cortex-9 сам поддерживает когерентность кешей при DMA. Не хватает на восьмом этой фичи. Седьмой это умеет?
--------------------
|
|
|
|
|
Sep 29 2015, 20:34
|

Профессионал
    
Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634

|
Цитата Cortex-9 сам поддерживает когерентность кешей при DMA. Не стоит обобщать... Пример из моей вселенной: Renesas R7S721020 (RZ1AL): Цитата This product incorporates the ARM single-core Cortex-A9 MPCore, where the IP version is r3p0. Когерентность ручками, через CP15... Может быть, Вы не включили Data Cache? И write back режим? Или скажите тогда, КАК ЭТО СДЕЛАТЬ! Очень не хватает...
Сообщение отредактировал Genadi Zawidowski - Sep 29 2015, 20:41
|
|
|
|
|
Sep 30 2015, 06:31
|
Местный
  
Группа: Участник
Сообщений: 225
Регистрация: 15-11-09
Из: Москва
Пользователь №: 53 634

|
Цитата(Genadi Zawidowski @ Sep 29 2015, 23:34)  Не стоит обобщать... Пример из моей вселенной: Renesas R7S721020 (RZ1AL):
Когерентность ручками, через CP15... Может быть, Вы не включили Data Cache? И write back режим? Или скажите тогда, КАК ЭТО СДЕЛАТЬ! Очень не хватает... C Cortex-9 не работал, только с 8. Приведу первоисточник. http://infocenter.arm.com/help/index.jsp?t...228a/index.htmlI/O coherent systems (e.g. Cortex-A9 with ACP) implement a hardware mechanism where accesses to shared DMA memory regions are routed to the cache controller which will invalidate (for DMA reads) or cleans (for DMA writes) the relevant cache lines.Пока просто держим DMA данные в некешируемых областях и планируем перейти на принцип flush/invalidation через CP15. .
--------------------
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|