Pull to refresh

Comments 57

Какая чушь… Jetson такой быстрый и холодный только из-за ARM? А что если заменить ARM ядра на x86 типа atom? Он перестанет быть таким быстрым?

Почему будущее за ARM, а не за RISC-V?

А как-же серверы на базе RISC?

Высокая цена CISC? В сравнении с чем?

И главный вопрос: Почему в в своих устройствах используете сильно устаревшее ядро Cortex A8?
Почему будущее за ARM, а не за RISC-V?

За ARM не будущее, а настоящее. Из embedded-плафторм, он, скорее всего, поддерживается лучше всех.


сильно устаревшее ядро Cortex A8?

Возможно потому что TI AM335x. Для многих задач (особенно "послать SNMP TRAP по срабатыванию датчика") больше и не надо, а процессор стоит смешные копейки (~4$/1ku), дешевле некоторых микроконтроллеров.

Из embedded-плафторм, он, скорее всего, поддерживается лучше всех

Что по вашему является embedded-плафтормой?

Компьютер, специализированный под решение конкретной производственной задачи.

Вам не кажется, что это узкое понимания термина embedded?
Встраиваемые(embedded) системы используются не только на производстве, но и на транспорте, в медицине, в авиации и т.д. Задачи там решаются достаточно серьезные, поэтому без x86 пока ещё сложно обойтись, так поддержка со стороны участников рынка велика.

Это в любом случае демагогия. х86 тоже может быть embedded-платформой, промышленных ПК на них порядком много.


Недостаток х86 "в чистом потребительском виде" — в отстутствии периферии. Если человек ее сам разрабатывает — то флаг ему в руки, он и процессор может любой брать. А если нужно несколько CAN-шин, RS-485, Ethernet, прочего барахла и чтобы еще работало с предсказуемыми задержками — то проще взять SOC на ARM, где вся периферия аккуратно на одном кристалле. Решение на последнем получится проще и компактнее.

Это в любом случае демагогия.

Громко сказано.
Вся периферия так или иначе будет/может располагаться на плате с SOC и упаковываться в корпус. Допустим Baytrail является SOC и имеет CAN, и UARTы, хотя во многих случаях гораздо выгоднее применить дискретное решения, используя шину для расширения типа PCIe.
UFO just landed and posted this here
Упрощает работу программиста, пишущего компилятор.
Разве современные процессоры не являются гибридами RISK и CISC?
Так и есть: x86 оброс регистрами общего назначения (их стало 16), внутри x86 RISC, ARM обрастает новыми наборами инструкция (уже RISC), появились инструкции переменной длинны (Thumb-2, SVE MOVPRFX).
Благодарю за быстрый ответ.
Подскажите профану — если Apple переведёт свои Маки на ARM, то получается, что разработчикам придётся существенно переписывать все имеющиеся программы? Или наладить совместимость архитектур не настолько сложно?

Самые большие проблемы при миграции софта — endianness и размер указателей. У ARM64 и то и другое совпадает с AMD x86_64, а у ARM32 — с Intel x86. Поэтому сильно больших проблем быть не должно, но нужно перекомпилировать весь софт.


Еще есть проблемы JIT-компиляторов, они, по понятным причинам, должны быть переписаны с нуля, но для ARM работа началась порядком давно

Тем более, что на многие грабли уже наступлено при разработке iOS.
Теоретически не сложно — а на практике есть нюансы…

Разработчикам для MacOS будет не в первый раз. Apple уже дважды меняли координально процессорную архитектуру.


Один раз — очень-очень давно, во времена Mac OS 8 или 9, перешли с 68xxx-какой-то там на PowerPC. При переходе все старые программы остались работоспособными через программный эмулятор прежней архитектуры. (Но работали заметно медленнее конечно).


Второй раз — уже не так сильно давно, уже в "современной истории" на Mac OS X, когда они перешли с PowerPC на x86. Опять-же, в программной эмуляции почти все PowerPC приложения вполне себе запускались еще как минимум несколько лет после смены архитектуры (после чего поддержку PowerPC эмуляции дропнули).


Так что технически нет никакх ограничений сделать и третий прыжек, с x86 (_64) на ARM.

P.S. Но к слову сказать, x86 пожалуй хуже всего будет поддаваться прграммной эмуляции, из-за невероятного "багажа мусора" что накопила архитектура x86. Но и тут Apple немного упростили себе жизнь тем, что уже сейчас прекратили поддержку всего что не 64-бита, так что если они и будут эмулировать x86 — им прийдется эмулировать только 64-битный режим и 64-битные инструкции, а весь этот CISC бардак тянущийся со времен 8008 — уже можно будет забыть.

ARM это экономично и современно

UNO-1251G — крохотных компьютер… на базе 32-битного процессора Cortex A8 под управлением Linux или Windows CE.

С современностью уже понятно, а насчёт экономичности хотелось бы сравнение ARM и RISC-V.
И ещё — получить подробную документацию по ARM (по моему мнению) очень сложно. Если Вы закончите курсы в холдинге ARM за десятки тысяч, то у Вас будет шанс на время быть в курсе технологий, но через пол-года введут инструкции, к примеру, по работе с нейропроцессором, и всё сначала.
Advantech — авторитетная фирма, хотелось бы, чтобы в один прекрасный день она всё-таки, хотя бы в плане эксперимента, что-то бы разработала на открытой архитектуре RISC-V, чтобы не быть нам вместе зависимыми от ARM.
Вот и средства для этого уже есть, например: www.sifive.com
И нейроморфные чипы тоже бы применить… И это — не дань моде, а если Advantech занимается средствами промышленной автоматизации, то в некоторых случаях такой чип мог бы выдать величину управляющего воздействия за микросекунды на основе вектора входных данных от датчиков.

Будущее за ARM

Все эти байки про RISC-овость и фиксированную длину комманд немного веселят.

В частности пишу про 32-bit. Допустим нам надо сделать длинный переход или вызвать дальнюю функцию. Что делает ARM — в команде прописано короткое смещение, по которому лежит адрес перехода, надо его сначала прочитать. Итого 8 байт и две операции. Спрашивается — чем это отличается от комманды дальнего перехода x86, в которой адрес сразу прописан в команде и занимает суммарно 5 байт?

Или надо прочитать константу в регистр. В самой команде под это отведено всего 16 бит, в результате опять либо читается константа по ссылке, либо выполняются две команды, вставляющие по очереди младшие 16 бит и затем старшие 16 бит отдельно.
Опять 8 байт, а x86 уместится в пять.

А как только ввели THUMB… здравствуй переменная длина комманд.

Основное достоинство ARM — относительно простое ядро и как следствие низкое энергопотребление. Будут усложнять ядро и гнаться за x86 — потеряют свой главный козырь.
Разница в производительности в две операции или одну операцию будет зависеть от предсказателей перехода, а в случае CISC ещё от внутреннего RISC-байткода.
Поэтому длинной инструкций не сильно корректно сравнивать.
Основное достоинство ARM — относительно простое ядро и как следствие низкое энергопотребление. Будут усложнять ядро и гнаться за x86 — потеряют свой главный козырь.

оно уже как бы давно не совсем простое: en.wikipedia.org/wiki/Apple_A10X
* Три вида набора инструкций
* Аппаратные декодеры/энкодеры
* Ну и в рамках SoC ещё ваго и маленькая тележка всего

А энергопотребление всё равно ниже в пересчёте на попугая. Дело в видимо не в простоте.
оно уже как бы давно не совсем простое: en.wikipedia.org/wiki/Apple_A10X
* Три вида набора инструкций
RISC (англ. reduced instruction set computer) — противоположная концепция проектирования процессоров. В RISC команды максимально упрощены и имеют более строгий формат и фиксированную длину.
Т.е. оно уже не reduced и не fixed length. Логичный вопрос — что в ARM осталось от RISC.
Они всё ещё проще и некоторые вещи, которые для CISC в одну инструкцию, для ARM всё ещё в две, как вы сами и написали.

Задачи для современного пользовательского процессора одинаковы и наиболее эффективное их выполнение предполагает разные подходы к исполнению инструкций. Эдакий виртуальный процессор. И CISC и RISC движутся в этом направлении, просто с разных сторон.
Ожидал увидеть сравнение промышленного контроллера и персонального компьютера, а также объяснение, почему использование дохленького ARM-процессора в PLC предпочтительней, чем 16-ядерная числодробилка вроде Risen.
А прочитал какой-то рекламный буклетик.
А тут все просто. С момента выпуска по настоящему AMD малопотребляющего процессора Geode LX 800 TDP=3.8W прошло уже 15 лет. И только сейчас AMD готовит к выпуску похожий по TDP процессор. То что выпускало Intel в массы не пошло.
Из-за малых размеров PLC возникают сложности с охлаждением, поэтому приходится использовать соответствующий ARM c низким TDP. Хотя BECKHOFF уже выпустил на Ryzen PLC.
использование дохленького ARM-процессора в PLC предпочтительней, чем 16-ядерная числодробилка вроде Risen.

А вот не скажите.
Японцы в Omron NJ/NX серию intel Core i7 впихнули и радуются.
Там Вам и OPC UA встроенный, и разделение коммуникаций по ядрам, и позиционирование по 16 осям, и SQL драйвера напрямую в БД. Хорошо!

Мне статья не понравилась. Вначале, очевидные вещи о CISC и RISC. Для кого они? Менеджеру, это не нужно, а любой ИТ-шник это знает с первого курса ВУЗ-а. Т.е. плохая рекламная статья.
Я не против ARM, и тех, кто продвигает сервера на их основе. Даже наоборот, скоро запущу несколько серверов в бой, будут работать в кластерах параллельно с x86 серверами, очень хочется сравнить по показателям производительности/цены. Хочется посмотреть как будет жить на них Java, на большем количестве ядер. На сколько хорош RHEL, bare metal и kvm. Да, забудем про ESX, нет его пока.

> Хочется посмотреть как будет жить на них Java, на большем количестве ядер.

Можно вот послушать про это из первых уст www.youtube.com/watch?v=IUW1NF3pFB4

Или (уже 2020) завести себе m6g инстанс на AWS, и попробовать.
Был же у Интела и свой RISC i860, и микроконтроллеры 8051, 80186. Почему они забросили это направление?
MCS51 вполне жива. А с RISC банально сразу не получилось, а потом поздно было. Ну и выбор Гуглом и Эпплом ARM'а всех остальных оставил далеко в хвосте.
UFO just landed and posted this here
И именно на замену своим i960/i860.
C x86 всё ясно — «дорогонах».
Но почему ARM, а не MIPS?
MIPS как-то бледно выглядит с деловой точки зрения. И очень жаль.
Не могли бы вы расшифровать?
ARM Holdings сменила владельца в 2016-м, сумма сделки чуть больше 30 миллиардов долларов.
MIPS Technologies за семь лет меняла владельцев три раза. Первый раз за сто миллионов, второй раз за 65, третий — неизвестно, купил стартап, специализирующийся на AI, из которого довольно скоро ушел CEO.

Arm себя дискредитировала в свете потакания USA в ее недобросовестной конкуренции с Huawei. Сейчас наблюдаются тенденции поиска замены ARM на MIPS, PPC, RISC V. Из всех перечисленных ARM для современных SoC наиболее закрытая попробуйте например сделать низкоуровневую оптимизацию для open cl кода для Mali Gxx или хотябы найти вменяюмую документацию на ее ISA сравните errata на современные ядра для разных архитектур.
Единственная причина доминирования ARM на рынке это встроенная в ядра arm начиная с arm5 java машина. Большинство Arm SoC на рынке так себе, шины так себе (но особенно я не люблю поделки от Ti) чипы от Nvidia не плохи и hisi верхняя линейка норм у atmel самая лучшая документация. Но закрытость софта и документации на компоненты SoC сильно ухудшает качество и увеличивает время разработки сложных, высоконагруженных систем.
Я говорю с высоты 20летнего опыта embedded разработки arch/bsp/kernel/user space (68k, ppc, mips,arm куча микроконтроллеров. Армов разных производителей штук 10, hi3559av100,nvidia tegra k1/tx1/tx2/nano,ti dm368,dm365,dm320… freescale/nxp ls1021a/,atmel sama d5/d3)
Однако если сравнивать с х86 то на тех же задачах устройство на ARM для режима 24х7 имеет в 10раз меньше проблем, потребляет в 2 раза меньше энергии и весит в 2-4 раза меньше и может иметь промышленный диапазон рабочих температур в отличии от x86. А если говорить о надежных рад стойких девайсах для космоса или экстремальных температурах то только PPC на iso.

Это все здорово, но я про техническую составляющую ничего не писал. Ну, разве что сожалел о доминировании ARM. А с деловой точки зрения, тайваньцев (вроде бы) из Advantech вряд ли так уж огорчают проблемы Huawei, и коробочки штамповать им надо сейчас, не дожидаясь, пока тенденции поиска приведут к поиску, а поиск приведет к успеху. И коробочки у них не для космоса.
Единственная причина доминирования ARM на рынке это встроенная в ядра arm начиная с arm5 java машина.

Согласно этому тексту
https://en.wikipedia.org/wiki/Jazelle#Successor:_ThumbEE
и Jazelle и ThumbEE технология объявлены устаревшими. Значит более никакого ускорения байткода.
А Oracle еще и денежки стремился взять дополнительные за JVM на ARM.

Это уже сейчас не важно. Данное конкурентное преемущество позволило arm в оптимальный момент времени стать самым популярным SoC для смартфонов… чистая стратегическая победа архитектуры.

Лично для меня-то уход Эппла с PPC на x64 был большим огорчением, например.
UFO just landed and posted this here
CHUD очень нравился. Не в практических целях, как произведение искусства :-) И на руках оказалось много устаревшего железа :-) С элитарностью у Эппла как раз все хорошо было с конца девяностых на любой платформе.

И пришли почти туда же что забавно. По крайней мере air разогревается до 90 градусов при долгой загрузки CPU из-за очень слабой системы охлаждения. Понятно конечно что его покупают не для того чтобы сильно нагружать CPU, да и такой тонкий корпус не позволяет сделать многого.

поиска замены ARM на MIPS, PPC, RISC V.

Конечно, если не надо платить роялти за процессор — почему бы и не использовать RISC-V.


встроенная в ядра arm начиная с arm5 java машина

И много сейчас ARMожелезок реально используют жазель? Особенно в ARM Cortex M, где ее нет ну вообще. В эмбеддеде вообще как-то С/С++ встречается куда чаще жабы


например сделать низкоуровневую оптимизацию для open cl кода для Mali Gxx

Справедливости ради стоит отметить, что Mali Gxx — это не часть процессора, а отдельная периферия на шине, которая может быть, а может не быть. У ST стоит Vivante, у TI — PowerVR. С документацией и API видоускорителей плохо везде. Совсем везде и совсем у всех


Но закрытость софта и документации на компоненты SoC сильно ухудшает качество и увеличивает время разработки сложных, высоконагруженных систем.

А что, на Intel документация стала публичной?


я не люблю поделки от Ti

Э, в современных ситарах задокументированно все, кроме купленных на стороне компонентов (читай видеокарта). Почитайте TRM на AM6548. Дочитав до конца, можно постареть

15-20k страниц Обычный объем для UM документации на средненький современный SoC. Надеюсь у ребят стало меньше ошибок в документации. Посмотрел по диагонали по прежнему по уровню еще далеко до документации от INTELL, IBM, ATMEL, AN… но безусловно по объему стало лучше, а вот структура хуже, надеюсь что хоть работает ближе к написанному...

Просто для для сравнения чтобы была понятна весовая категория у hi3559av100 далеко не полная документация занимает. порядка 600MiB в архиве.

Именно поэтому мы, скорее всего, никогда не увидим смартфонов на X86 процессорах.
Как это? Уже видели десятки моделей с ними. Вот, пожалуйста. И это не считая устройств на чипах от Spreadtrum и Rockchip с «атомным» ядром.

Вроде Интел продал своё подразделение которое разрабатывало микросхемы для работы с сотовой сетью чуть ли не Apple? А без встроенного 3/4/5 g в Soc как-то печально по нынешним временам

Продал как раз потому, что не мог гарантировать разработку 5G-части в приемлемый срок и, в итоге, бросил самостоятельную разработку мобильных чипов.
Вендоры будут ставить внешнее отлаженное решение. Что плохого?
Вендоры будут ставить внешнее отлаженное решение. Что плохого?

Ну обычно дешевле в производстве и места занимает меньше если нужно на плату всего одну микросхему распаять вместо двух. А купить IP блок и встроить в процессор конечно можно, но это уже не так просто и дешево сделать, как если бы этот IP блок разрабатывали люди из того же Intel.


Ну и у кого купить у Apple или у Qualcomm, оба крупные игроки на мобильном рынке, даже если и продадут то мягко говоря не дешево/

"Будущее за ARM"
Кхм… А как же RISC-V? То что ARM контролируется одной компанией и т.д. — это неважно (сарказм). Свобода RISC-V это плюс и, возможно, фактор для победы этой архитектуры над ARM.

о что ARM контролируется одной компанией и т.д. — это неважно (сарказм). Свобода RISC-V это плюс

Ну как Вам сказать…
Будет как с Linux. Каждый дистрибутив, кто во что горазд репозиториев налепит. Вроде бы свобода, вродебы качество, а в промышленности в каждый сраный китайский или немецкий HMI или пром. ПК пихается Windows Embedded…
Linux стал на что-то приличное похож, когда в него всякими разными путями Intel денег вбухал. Как раз с целью хотя бы слегка победить этот distributive hell.
Sign up to leave a comment.