company_banner

Intel Quark. Лучше поздно, чем никогда

    image

    Выход нового SoC процессора Intel Quark и первых систем на его базе заставили сжаться мое сердце и предаться воспоминаниям. У каждого инженера-системщика был любимый проект, даже детище, родиться которому и выйти в свет так и не было суждено по разным причинам.
    Хочу немного рассказать о своем подобном проекте и порассуждать, что было бы, если б тогда мне были доступны сегодняшние технологии типа Quark. Также хотелось бы спросить Хабросообщество: что бы вы смогли реализовать, имея выбор из сегодняшних систем. Ну а комментарии к этому посту — самое подходящее место для холивара ARM vs. x86, так как Intel вступает на опасную территорию, где давно правят контроллеры с RISC-ядрами от ARM и Atmel. Но тогда просьба сравнивать не просто железки (мегагерцы, килобайты, и милливатты), но рассматривать в комплексе с программной экосистемой и в контексте конкретного применения контроллеров.

    Итак, лет десять назад, я работал в одной маленькой психиатрической научно-исследовательской медицинской фирме, разрабатывающей сложное диагностическое оборудование. Наилучшей особенностью этой фирмы, по моему мнению, было то, что некоторым инженерам давали возможность помечтать, пофантазировать несколько месяцев, и при этом не переставали платить зарплату, несмотря на сложные экономические условия. Судя по тому, что фирма и сейчас живет и процветает, мой уход не подорвал ее способность стоять на ногах и успешно бороться за бутерброд с маслом на своем рынке с такими монстрами как GE Healthcare, Philips и Hewlett-Packard. Прежде всего, это произошло благодаря отличным и талантливым инженерам, которые остались там работать и воплощать свои фантазии.

    image

    Я поработал и системным разработчиком, и прикладным программистом чуть более трех лет, принеся свой опыт из «железочного» прошлого и много почерпнув от коллег в программировании. R&D фирмы составлял отдел системных разработчиков (6-7 человек, выполняющих дизайн электронной начинки и низкоуровневое программирование, в основном контроллеров и сигнальных процессоров), отдел прикладных программистов (10-12 человек, пишущих GUI для рабочих станций на Windows, внедряющих алгоритмы обработки данных и формирующих пользовательскую инфраструктуру), и мозг компании — отдел алгоритмистов (3-4 человека, взаимодействующих с наукой, медициной, пишущих алгоритмы на математических симуляторах – они вообще не программисты).

    Не вдаваясь в подробности обо всем широком ассортименте разрабатываемой и выпускаемой продукции (приборы для энцефалографии, полисомнографии, миографии, кардиографии, и многого другого), опишу проект, в котором я трудился и прототип нового поколения, для которого мне позволили поразрабатывать на бумаге — свою «лебединую песню» в компании. Данным проектом был комплекс для электро-энцефалографического исследования, отличительной особенностью которого было то, что блок сбора информации был автономным и компактным, сейчас его назвали бы мобильным. Для того времени это было вполне революционное решение, и даже далеко не все мировые производители медоборудования имели такой в своем арсенале. Основное преимущество состояло в том, что пациент, которому снимают электро-энцефалограмму, не привязан к рабочей станции шлейфом проводов, может свободно передвигаться или спать. Особенно востребовано такое решение среди маленьких пациентов, которых, в виду некоторых болезней, тянущиеся куда-то от головы провода приводили в непрекращающуюся истерику, что сильно осложняло обследование.

    image

    Таким образом, требования к блоку сбора первичных данных были довольно жесткие и противоречивые:
    • Минимальный вес и размер пылевлагонепронепроницаемого корпуса (без шлейфа и датчиков), в идеале до 200-250 грамм, и размером с мобильный телефон (да, телефоны в 2004-м году были побольше, чем сейчас)
    • Возможность автономной работы до нескольких часов, в идеале часов 12.
    • Постоянная беспроводная коммуникация с рабочей станцией врача-диагноста, с пропускной способностью канала передачи данных до 0.5 Мб/c, а в идеале до 2-3-х Мб/c, с расстоянием устойчивой связи до 10 м.
    • Возможность группировать устройства в одноранговую сеть, а так же безопасно и помехозащищенно управлять группами устройств, зарегистрированных в локальной сети рабочей станции.
    • Первичная цифровая обработка сигналов 19 и более каналов в режиме реального времени DSP-процессором – фильтрация, снижение шумов, сегментация и упаковка данных для передачи.
    • Возможность сохранения суточных данных мониторинга на съемный носитель, а также возможность считывания данных на станцию без разбора устройства для съема этого носителя.
    • Система управления, коммуникации, конфигурирования, передачи и хранения данных, контроля заряда, сигнализации. Тоже в реальном времени. Работа для контроллера или процессора общего назначения.
    • Ну и еще такая мелочь, как сертификация Росстандартом и разрешение Минзрава для использования в качестве медицинского оборудования.

    Как водится, первый прототип был построен на базе уже существующих решений – была использована наработанная схема на основе DSP от Analog Devices (как наиболее трудоемкая часть устройств) с DRAM, EEROM и генератором тактовых импульсов, которая и раньше использовалась в стационарных приборах, а вся остальная обвязка уже навешивалась на нее:
    • Контроллер карты памяти CF
    • Контроллер USB
    • Модуль ввода звука
    • Датчики ускорения
    • Система световой/звуковой индикации
    • Контроллер заряда
    • Bluetooth-интерфейс со своим контроллером (единственно возможное на тот момент беспроводное решение, удовлетворяющее требованиям)

    Это был монстр, во всех смыслах, на ускоренную разработку которого (с целью завоевания рынка) были брошены лучшие силы фирмы, и это заняло почти год — довести продукт до первых рабочих образцов. Но, в тоже самое время, этот первый продукт на базе прототипа «сделал маленькую революцию» в индустрии, и она обещала быть еще больше, если ли бы мы смогли спроектировать принципиально новую систему, которая не требовала бы таких неимоверных усилий по подключению всей этой периферии к DSP-процессору и управлению всей этой цветомузыкой с помощью программы, написанной на низкоуровневом языке. Да, да, все то, что делается в обычных системах с помощью драйверов, во встроенных системах управляется из основного цикла программы. Вы можете себе представить стек коммуникационных протоколов для Bluetooth, поддержка файловой системы, либо алгоритм оптимизации записи адресов flash-памяти, написанный с нуля на ассемблере, или на embedded С? Нет? Добро пожаловать в мир встроенных устройств!

    image
    (картинка взята специально от другого энцефалографа, но в целом она отражает требование отрасли)

    Стало ясно: чтобы развиваться дальше, нужен System-on-Chip в основе устройства, который бы своим CPU и интерфейсами решил все описанные задачи без экстремально трудоемкого программирования. В этот момент меня, оторвав от работы в почти законченном первом прототипе, запустили в свободное плавание: анализировать рынок, сравнивать разные решения от микроконтроллеров до готовых мини-компьютеров, и самое главное, понять, как можно переиспользовать уже существующую программную инфраструктуру, open source или проприетарную. Так как оказалось (сюрприз!), что склепать устройство в железе – дело одного месяца, а наполнить его жизнью – нужно очень много и упорно программировать. А чтобы эти ожившие устройства соединить в сеть, нужно вообще совершить чудо. В тоже самое время весь остальной отдел системных разработчиков искал в другом, более консервативном направлении, то есть, не сильно отходя от концепции «DSP с функциями управления».

    Сложно вместить в одной статье обзор, какие варианты были рассмотрены (думаю, что все возможные) и что учитывалось при выборе, так как помимо основного устройства нам требовалось заложить системную базу для других изделий, которые со временем тоже были бы перенесены на нее. Некоторые из перспективных устройств требовали наличия дисплея, что резко меняло подход, и поворачивало вектор поиска от контроллеров в сторону SoC или даже мини-компьютеров, для которых традиционно существует достаточно широкий выбор и операционных систем, программных стеков, и драйверов. Некоторые устройства были довольно просты, чтобы использовать там микроконтроллеры, но с мощной периферией, так как они должны были тоже взаимодействовать и с рабочими станциями, и с диагностическим оборудованием. Например, система стимуляции отклика у пациента, этакий набор свистоперделок световых и звуковых стимуляторов, активация которых по заданному алгоритму при определенных заболеваниях (той же эпилепсии) вызывает в мозге у пациента определенные волны, которые регистрируются энцефалографом еще до проявления приступов. Раньше для таких стимуляторов использовался дополнительный PC. С ним и производилось взаимодействие (подготовка, синхронизация) основной станции. А теперь представьте, сколько работы необходимо проделать в плане коммуникационного стека, если построить такое устройство на простом микроконтроллере.

    image
    (так выглядит фото-фоно-стимулятор на стойке, жестко привязанный к рабочей станции)

    Естественно, мои пути поиска пересеклись с аппаратными решениями на базе х86, как наиболее перспективными в плане оцененной трудоемкости на разработку софта (простите меня за этот жаргонизм). Про ARM, вернее про программную экосистему для него, в то время еще не слышали. Однако, имеющиеся индустриальные платы с пассивно охлаждающимся i486-м процессором (пассивно-охлаждаемых Pentium не существовало) были все же такими огромными и потребляли так много (до 12-15W), что об их применении не могло быть и речи.

    image

    И тут на рынке появился знаменитый XScale PXA255, SoC с 400 MHz ядром ARMv5TE от Intel (StrongARM), имеющий на борту все, что требовалось из железа и даже больше. Системные платы для него поставлялись различными производителями, а так же сопровождались базовым набором стартового софта: минималистичный Linux c BusyBox, с драйверами, IP стеком, и стеком протоколов для Bluetooth. Нам оставалось только присоединить к нему на шину наш основной модуль-поставщик данных DSP-процессора и «всего лишь» написать для него драйвер. Был ли у нас опыт написания драйверов под ARM? Нет, конечно. Ну, правда, оставалась еще одна мелочь – разобраться с новой фичей Linux ядра 2.6 — возможностью вытеснения задач для поддержания «мягкого реального времени» системы, но это было бы уже вторым этапом, так как огромное количество памяти на борту и процессорные возможности позволяли паковать данные на лету, и требования к жесткости реального времени снижались.Кроме того, мы рассматривали возможные «готовые решения» от различных Embedded-Linux вендоров до MontaVista Linux и QNX Neutrino.

    image

    Для лучшего ознакомления с программной экосистемой для XScale я срочно выехал для участия в IDF, который тогда еще проводился в Москве, и стал приставать к инженерам Intel, выясняя все возможные подробности относительно программной поддержки со стороны Intel Software Services Group. Каково же было мое разочарование, когда кроме как нескольких утилит для разработки пользовательских приложений (под Windows CE!) Intel ничего не предлагал. Ну, почти ничего. Позже, где-то глубоко в недрах тогдашнего интеловского web-сайта, который представлял из себя свалку драгоценных статей и материалов, я выудил Linux-based software kit, который был еще более ограниченным, чем то, что предлагали за деньги производители модулей – только BusyBox и кросскомпилятор. Видимо, этот кит и был ими взят за основу.

    Таким образом, я узнал, что Intel важны только ODM’ы, в частности Dell, Acer, Compaq, которые допиливали наперегонки свои PDA под Windows CE, а мелкие производители мобильного оборудования вообще не представляли интереса. Нет, конечно, с моей стороны была отчаянная попытка слепить на коленках прототип и предоставить хоть какие-то результаты, но ценовая политика относительно плат разработчика StarterKit (направленная на тех же Microsoft, Dell и прочие) просто убивала на корню всю идею.

    Тем временем отдел системных разработчиков получил первые платы с OMAP от Texas Instruments. Я уже не помню, какая точно это была серия, кажется 5912, но он содержал в себе DSP-процессор серии C55xx – один из лучших сигнальных процессоров с фиксированной точкой на рынке, и управлялся 204 MHz ядром ARM926EJ-S. Плата и StarterKit тоже были недешевые, но знаете, что растопило сердце нашего руководителя, и по совместительству председателя научного совета? Несколько тысяч долларов были с легкостью выделены за то, что с платой поставлялся Code Composer Studio for OMAP – полный программный набор для эмуляции, разработки real-time приложений для DSP и ARM-процессора на C/C++, с кучей библиотек, драйверов и блекджеком JTAG-эмулятором.

    image

    Платформа была идеальна. То, что нужно с аппаратной точки зрения: отличный DSP, экономный CPU общего назначения и куча периферии. И мечта системного программиста – полный набор для эмуляции, разработки и отладки. Работало ли это как написано в даташитах? Нет! Железо, в основном, работало, но как-то не всегда предсказуемо. Софт же (CCS) был написан китайцами по аутсорсинговому контракту, студия постоянно падала, а драйвера не работали так, как положено и их приходилось переписывать. Заняла ли в целом эта работа столько же времени, сколько выполнялась бы в случае использования XScale? Думаю, примерно, да. Но первоначальный старт был намного более стремительным и успешным с решением от TI.

    Однако, насколько мы знаем, несмотря на политику TI намного более долгосрочной поддержки своих аппаратных решений и дальнейшее развитие платформы OMAP, компания отказалась от планов сыграть решающую роль в мобильном рынке, рискуя проиграть более дешевым и менее совершенным в техническом плане платформам. Intel тоже недолго продержалась, продав XScale-бизнес компании Marvell. Что же делать небольшим компаниям, разрабатывающим свои компактные, носимые, возимые и прочие мобильные устройства? Мне думается, что если позволяет форм-фактор, то есть размеры и вес, то нужно делать максимально универсальные решения с использованием стандартных средств разработки, в том числе и открытых (а может даже и предпочтительнее).

    И я позволил себе помечтать, как бы выглядела система, имея мы в распоряжении сегодняшние аппаратные возможности, но помня о финансовых и ресурсных ограничениях небольшой фирмы. В качестве DSP несомненно взял бы процессор от TI, например, сегодняшняя серия C6204. С шиной PCI нам чип не нужен, так как она все равно не совместима с PCI-E, а вот Expandable Bus, наверное, возможно прикрутить (хотя это потребует дополнительных усилий). Да, у TI есть процессоры KeyStone с ARM-ядром, но мы это уже проходили: имея в наличие разработчиков системы и Windows-программистов приложений для рабочей станции, будет непозволительной роскошью еще набирать людей, либо заставлять системщиков писать драйвера и систему управления для ARM. Хотя, насколько я знаю, мои коллеги пошли именно по этому пути, и исключительно потому, что уже набили шишек наработали опыт программирования ARM-ядра процессора.

    image

    Далее, по моему мнению, системой должен управлять универсальный модуль с развитой периферией, для которого существуют и есть огромный выбор open source приложений и средств разработки, а программистам не нужно изучать еще одну микроархитектуру и язык ассемблера (все-таки, они не с DSP asm знаниями родились, и вышли из среды старого доброго x86). А если еще и производитель процессора добавляет свой стек инструментов, то это вообще было бы отлично. Система должна начать работать out-of-box, а разработчики коммуникационного софта писать свои слои, не дожидаясь появления железки. Вопрос разработки компонентов беспроводной связи вообще не должен возникать. SoC на x86-совместимом CPU подходил бы для этого идеально, если бы х86 были контроллерами, а они ими не были никогда. И тут появляется Intel Quark. Да, сейчас он далеко не идеальный контроллер. Да, (построенный на 32 нм) пока еще потребляет около 2W в пике производительности. Но посмотрите с другой стороны (на спецификации):

    • Есть уже Edison – Quark испеченный на 22 нм технологии. И это не новогодние бредни пьяных маркетологов, как некоторые товарищи пытались в комментах пошутить. Intel c такими анонсами не шутит, тем более его CEO, объявляя новости на Consumer Electronics Show 2014.
    • Чип поддерживает C0-C2 CPU power states, и S0, S3, S4 power states для системы. То есть он не будет потреблять 2W все время, а в основном в период упаковки и передачи данных.
    • У Intel есть roadmap для семейства контроллеров Quark (пока не опубликованный, но, как говорится, stay tuned).
    • Ядро Quark является масштабируемым, то есть него не нужно переразрабатывать заново при переносе на новую, более экономичную технологию.
    • 32-битное 400 MHz ядро с Pentium ISA, контроллер памяти DDR3 с 800 MT/s, быстрая e-SRAM память для системы, PCI Express c пропускной способностью 2.5 GT/s. При желании и энергетических возможностях на таком ядре можно даже обработку регистрируемых сигналов производить, например для логирования или сигнализации критических состояний в мобильном кардиографе.
    • Периферия: в системе есть 10/100 Ethernet, USB 2.0, Wi-Fi, контролер SD-карт, ну и самое интересное контроллер I2C и 16 GPIO портов, 6 из которых работают, даже если система спит в S3-состоянии. Просто грандиозные возможности по подключению различных датчиков и сенсоров, которых в специальных устройствах обычно в изобилии.


    image

    Конечно, есть определенная функциональная избыточность в модульном построении устройства: потребуется двойной набор DRAM и EEPROM регуляторов напряжения. Хотя надо отметить, что львиную долю места в устройстве все равно занимает не системный модуль, а батарея и аналоговый модуль с трансформаторами, многоканальными операционными усилителями и АЦП. Но взамен мы получаем практически независимые части проекта, переносимые от одного функционального устройства к другому без существенной переработки, и разрабатываемые разными командами почти асинхронно. Имея в распоряжении готовый модуль управления, в свое время, мы могли бы выпустить изделие на за год, а за каких-нибудь три-четыре месяца. Таков перспективный цикл выпуска обновленных модульных устройств.

    image
    (три модуля, из которых можно построить прототип мобильного электроэнцефалографа)

    И самое главное, Intel наконец-то сопровождает свои новые платформы набором инструментов для разработки, отладки и оптимизации. Не будем брать в расчет вариант модуля с расширенным температурным диапазоном и идущий в комплекте с ним WindRiver Linux и VxWorks. Эти наборы предполагаются для использования в индустриальном секторе, в устройствах с повышенной оказоустойчивостью, и скорее всего стоить будут немало.

    imageBoard Support Package для референсного модуля Intel Quark SoC X1000 сопровождается пропатченным для Quark Linux (Yocto), набором для отладки ядра OpenOCD с gdb или Eclipse, поддерживающих пару JTAG-железок. Насколько я знаю, пользуясь инсайдерской информацией, на Mobile World Congress ’14 в Барселоне будет представлен более широкий набор системного софта, который должен еще больше облегчить старт работы с модулем. В помощь прикладному разработчику Intel предлагает комплекты инструментов как для обычных Intel Core процессоров, так и для SoC, например Atom-based. Новая Intel System Studio 2014 (ISS) уже вышла в beta-версии и в добавок к BSP и огромному количеству open source инструментов, мы получаем кросс-компилятор C/C++, JTAG отладчик, библиотеки производительности, инструменты удаленной профилировки и проверки корректности пользовательских приложений.

    Еще пока рано о чем-либо заявлять, но мне очень хочется, чтобы в этот раз Intel не недооценила важность системного софта и прикладного инструментария для своего контроллера, и ISS полностью поддержала Quark-процессоры, как это принято для всех остальных семейств от Intel Atom до Xeon Phi. А сообществу разработчиков и энтузиастов хочется пожелать не сбрасывать со счетов первую попытку Intel войти в мир «больших» контроллеров (в мире микроконтроллеров Intel уже сделала серьёзный вклад) и успешно воплощать свои инженерные фантазии – сегодня для этого намного больше возможностей.
    Intel
    Company

    Comments 102

      +31
      Ожидал прочитать про Quark, а прочитал биографию и проблемы пользователя и очень мало про кварк :(
        +6
        Про Quark пока все сказано (или Вы что-то еще ожидали услышать о процесоре?). Осталось дело за реальными проектами. Об одном (возможном) реальном проекте я рассказал.
          +6
          Вот необходимый набор ссылок, что бы узнать все о процессоре Quark:
          Specifications
          Intel Quark Datasheet
          Intel Galileo Datasheet
          Source Level Debug using OpenOCD
            0
            В посте, где звучали шутки про «новогодние бредни пьяных маркетологов», уже было сказано, что в edison другой, годный, двухядерный 22нм quark. Что народ и смутило.
              0
              Там Atom + Quark, два процессора.
              +1
              Вот еще пара полезных ссылочек по модулю:
              Intel® Galileo Schematic
              Intel® Galileo Getting Started Guide
              +4
              На фоне обычных постов в блоге Intel этот выглядит очень необычно: просто «Моя борьба», причем в такой специфической сфере, что автору сначала приходится рассказать об области, потом о проблеме, потом как-то живописать, как трудно ее было решить раньше, а потом только хоть пару слов вставить, как бы ее легко было решить «с чем-то там новым» от Intel (в данном случае это Quark, но можно подставить любое наименование, хоть новый тип кабеля, не суть).

              Чую, не все прочитавшие прониклись глубиной темы!
                +1
                Даже я сам не проникся. Просветите, пожалуйста ))
                А вообще мои посты все необычные — несколько из них можно найти здесь, на Хабре в блоге Intel.
              0
              Я могу ошибаться, но по моему сейчас все x86 процессоры, внутри являются RISC, к тому же Intel выпускает и GPU а там тем более все RISC.
              Так что вполне ожидаемо, но холивару все равно быть!
                +6
                Не совсем: x86 процессоры в соотвествии со своей системой команд являются CISC (по крайней мере, с точки зрения нефиксированного значения длины команды), а внутри уже декодируются в микроинструкции, имеющие более строгие ограничения, но все равно не RISC в классическом понимании этого определения.
                  0
                  Ошибаетесь. Quark унутре — это чистый 486й, ни о каком RISC'е там никто и слыхом не слыхивал.
                    0
                    А вы где в «486-м» видели суперскалярность?
                      0
                      А где вы оную суперскалярность увидели в Quark'е?
                        0
                        Поищите в документе Intel ® Quark Core Internal Architecture
                          0
                          Вы сами-то пробовали искать? Попробуйте. Нет там ничего. Маркетологам аплодирую стоя. Инженерам… поменьше.

                          Да, Quark везде рекламируется как Pentium ISA, но в реальности это 486й к которому добавили несколько команд из Pentium'а.
                            +2
                            Рекламируется он как Pentium ISA compatible.
                            Суперскаляр, это когда несколько исполняющих устройств может быть задействовано одновременно — так оно и есть в Quark. То, что он вам напоминает конвеер 486-го, это еще не значит, что это i486. А еще стоит посмотреть на блок-диаграмму ядра, на его декодер и decoded instruction path. Ну и что, что одна инструкция за такт? Кроме того, Enhanced Bus Mode Operation — не было в 486.
                            В общем, резюмируя, это ни то и ни другое. Но почему это вам так мешает?

                            32-bit RISC integer core — The Intel® Quark Core performs a complete set of
                            arithmetic and logical operations on 8-, 16-, and 32-bit data types using a full width ALU and eight general purpose registers.

                            Черт. Все-таки его считают RISC-ом.
                              0
                              Рекламируется он как Pentium ISA compatible.
                              Вы что такое ISA знаете? Это набор команд. Добавить пяток инструкций (CPUID был ещё в старших 486х) — невелика проблема, а зато можно будет рекламировать это чудо как Pentium ISA compatible. Маркетологи молодцы, спору нет.
                              Суперскаляр, это когда несколько исполняющих устройств может быть задействовано одновременно — так оно и есть в Quark.
                              Есть же чёткие определения, ёлки палки: Суперскалярность — архитектура вычислительного ядра, использующая несколько декодеров команд, которые могут загружать работой множество исполнительных блоков. И кто вам сказал, что Quark имеет два декодера?
                              Ну и что, что одна инструкция за такт?
                              Одна инструкция за такт обозначает, что это не старая архитектура, а очень старая архитектура. Ни о каким μopах и речи не идёт.
                              Черт. Все-таки его считают RISC-ом.
                              Разве что маркетологи Intel. RISC'а — это вполне определённый набор дизайнерских решений, главное из которых — одинаковая длина инструкция и отдельные инструкции для доступа в память (Операции вида Read-Modify-Write («прочитать-изменить-записать») отсутствуют, Любые операции «изменить» выполняются только над содержимым регистров (т. н. архитектура load-and-store).). «Большие» Intel'овские процессоры вполне себе можно рассматривать как «классический» RISC + JIT, но Quark устроен как процессоры четвертьвековой давности

                              Но почему это вам так мешает?
                              Ну как бы используя RISC (даже «скрытый» как у Intel'а) вы можете выбирать: хотите — можете получить экономичный процессор, хотите — быстрый. Тут же мы имеем… как бы цензурно… нечто, что одновременно прожоливо и жутко медленно (медленнее современных ARM ядер, работающий на такой же частоте).

                              Возникает резонный вопрос: кому и зачем такое чудо нужно-то? Intelу Itanicа мало? Нужно на ещё одного мертворождённого уродца денег выкинуть?
                                0
                                С основной частью согласен, но
                                одинаковая длина инструкции
                                соблюдается не всегда.

                                Например, у современных ARM (начиная с v6T2) используется набор инструкций Thumb2, где инструкции бывают длиной в слово (4 байта) и полслова.

                                Правда, там с этим борется prefetch unit, разворачивающих их в инструкции, длиной в одно слово (32 бита), поступающие в нормальный трехстадийный конвейер (fetch-decode-execute).
                                ref
                                A 3-word entry Prefetch Unit (PFU). One word is fetched at a time. This can be two Thumb instructions, one word-aligned Thumb-2 instruction, or the upper/lower halfword of a halfword-aligned Thumb-2 instruction with one Thumb instruction, or the lower/upper halfword of another halfword-aligned Thumb-2 instruction. All fetch addresses from the core are word aligned. If a Thumb-2 instruction is halfword aligned, two fetches are necessary to fetch the Thumb-2 instruction. However, the 3-entry prefetch buffer ensures that a stall cycle is only necessary for the first halfword Thumb-2 instruction fetched.
                                  0
                                  RISC'а — это вполне определённый набор дизайнерских решений,

                                  Я с самого начала и сказал, что в классическом понимании определения это нe RISC. Ну считает Интел его улучшенным RISC'ом, ну и что?
                                  Вы что такое ISA знаете? Это набор команд. Добавить пяток инструкций (CPUID был ещё в старших 486х) — невелика проблема, а зато можно будет рекламировать это чудо как Pentium ISA compatible.

                                  Ну так и что, по набору команд это не Pentium?
                                  А по описанию конвеера, работы шины и режимов адресации — это не 486.
                                  Да, картинки смущают, уж очень диаграмма в мануале смахивает на ту, что была у 486, так и что? Давайте подождем больше доступной публично информации и рассмотрия ядро более подробно, если так уж хочется.
                                  Ну как бы используя RISC (даже «скрытый» как у Intel'а) вы можете выбирать: хотите — можете получить экономичный процессор, хотите — быстрый.

                                  Вот как ВЫ это будете выбирать?
                                  Есть же чёткие определения…
                                  Одна инструкция за такт обозначает, что это не старая архитектура, а очень старая архитектура. Ни о каким μopах и речи не идёт.

                                  Во-первых, производители процессоров давно уже заступают за рамки четких определений, и уже не важно, как эту архитектуру называют. Во-вторых, почкму вы решили, что речь не идет о микро операциях ("μopах")? А что на выходе декодера тогда?
                                  Возникает резонный вопрос: кому и зачем такое чудо нужно-то? Intelу Itanicа мало? Нужно на ещё одного мертворождённого уродца денег выкинуть?

                                  Прям такое ощущение, что вы восприняли это как личный вызов и так переживаете. Или вы крупный держатель акций, и переживаете за выкинутые деньги? А может выстремитесь стать пророком, предрекая судьбу как у Итаниума? Идите в аналитики, пишите статьи. Только не забывайте обосновывать свои высказывания.
                    +1
                    Не нашел информации по Edison — есть ли у него Bluetooth? И если есть, то какой? Может ли он BLE?
                      0
                      В представленном на CES варианте Edison, на сколько я знаю, Bluetooth нет. Однако, это не продакшн вариант, поэтому все может измениться к лету (когда маркетологи осознают основные области применения).
                        0
                        Нам ble очень пригодился бы. Как раз для похожего, но другого проекта (не электроэнцефалограф). То есть нужен дивайс который умеет одновременно и ble и wifi.
                          0
                          Если можете поделиться подробностями проекта (в части описания модели использования одновременно и wi-fi и BT), то вас услышат. Хотя, если честно, я никогда не встречал гаджетов, где была бы необходимость в них одновременно — тем более это интересно.
                        0
                        Синезуб будет. Какой точно не знаю. Но, по-моему, low power. Но могу ошибаться.
                        +13
                        ну я даже не знаю
                          +2
                          ну вот, пришел правообладетель торговой марки. щас деньги требовать начнет… ))
                            +7
                            мои люди свяжутся с вашими
                              0
                              Только что связались. Это точно ваши? Просили слишком мало. Пригласил их к себе, накормил обедом и дал с собой по апельсинке. Они ушли ужасно довольные.
                          +1
                          А почему ушли?
                            +4
                            Наши редакторы настоятельно не рекомендовали мне включать эту информацию в текст, так как это никому не интересно, хотя я первоначально написал :)
                            Ушел по причинам, совершенно не связанным с работой. Пришлось переехать в другой город. Иначе, с удовольствием продолжил бы работу в этой небольшой фирме.
                            После того, как потрудишься в большой корпорации, начинаешь скучать по тому, что было в маленьком коллективе:
                            — Знаешь, как всех зовут поименно, а в своем отделе и жен/детей/собак коллег;
                            — Все разговаривают на родном языке (и мат, когда он уместен, позволяется);
                            — Видишь конечный продукт, и людей, которые этим продуктом пользуются;
                            — От тебя очень многое зависит в проекте. Твое мнение важно, т.к. от этого зависят прибыли;
                            — По утрам директор компании заходит в отдел, чтобы лично со всеми поздороваться ))
                            Есть и отрицательные моменты, но о них не стану распространяться.
                              0
                              Я просто сам из Нижнего :) Предыдущий город — не Саров?
                                0
                                Нет. Но из Сарова у меня много коллег.
                            +6
                            Откликнусь на предложение похоливарить.
                            Я так и не смог понять каким образом Quark будет конкурировать с такими ARM-решениями как Raspberry Pi. ИМХО, на ARM есть всё то же самое и даже больше. Если сравнивать с RPi:
                            1) x86 = Vendor Lock-In; AMD не предлагает похожие на Quark решения. Зато решений на ARM для встроенных применений от разных вендоров великое множество.
                            2) RPi потребляет порядка 3W в пике на всю платформу (а не только на SoC)
                            — Какой вообще смысл использовать 400-МГц SoC с 2W TDP, когда тот же Intel предлагает атомы с аналогичным бюджетом по энергопотреблению. Или таким образом Intel защищает своих OEM-партнёров по Atom, предлагая широкому рынку заранее неконкурентноспособное решение?
                            3) В Quark нет варианта со встроенной графикой, предполагается что пользователи будут подключать чип от nvidia по PCI-E?
                            4) Низкая производительность. В похожем сегменте price/power ARM производители предлагают 1+ГГц суперскаляры.
                              +3
                              Я хотел, чтобы мои более осведомленные коллеги попробовали ответить, но видимо отдуваться придется мне одному. Итак:
                              1) По поводу x86 и завязки на вендора: AMD — не единственный конкурент Intel, есть еще другие вендоры (не будем их тут рекламировать), выпускающие x86 встроенные модули. Так что ни какого Vendor Lock-In не наблюдается.
                              2) RPi Кварку не сильный конкурент. Как вы будете вводить большой поток данных с модулей сбора информации (с того же DSP)? В Quark’е есть PCI-E, которая зальет данные в память на огромной скорости.
                              Еще мне коллеги подсказывают, что Galileo – полностью открытая платформа, когда как RPi – не во всех местах.
                              3) Quark позиционируется для устройств, где графика не нужна (много вы видели промышленных контроллеров со встроенной графикой)? Ежели она понадобится, то можно сделать scale-up системы до Atom’а.
                              4) Да, по гигагерцам Quark не в лидерах. Должны же быть и недостатки, верно? Однако есть и неоспоримые преимущества: например, представьте, что вы разрабатываете несколько сегментов контроллеров в вашей линейке продукции, от мощных на Intel Core до маломощных на Atom/Quark. Захотите ли вы нанимать отдельную команду для того, чтобы она переписала имеющийся софт x86 на ARM-контроллеры? А если такого софта миллионы строк? А переписать драйвера?
                                –1
                                AMD — не единственный конкурент Intel, есть еще другие вендоры (не будем их тут рекламировать), выпускающие x86 встроенные модули

                                Их не рекламировать, их закапывать пора. Страшное наследие легаси кода.
                                Как вы будете вводить большой поток данных с модулей сбора информации (с того же DSP)? В Quark’е есть PCI-E, которая зальет данные в память на огромной скорости.
                                Сейчас целая куча ARM с PCIe и прочей могучей переферией.
                                … от мощных на Intel Core до маломощных на Atom/Quark. Захотите ли вы нанимать отдельную команду для того, чтобы она переписала имеющийся софт x86 на ARM-контроллеры
                                При правильном дизайне — переписывать придется не многое — Linux тому пример — ходит даже на холодильниках от самой мелочевки до больших машин — и все на одной основной кодовой базе.
                                Если приложение заоптимизированно под конкретную архитектуру (не на уровне X86, а на уровне SSE, например, размеров кешей, итп), то на другую его сложно будет перенести. Если страшных оптимизаций нет и написано здраво — то вполне, имхо.
                                Для хитрого железа, имхо есть крайне интересные комбинации FPGA+ARM у Xilinx и Altera, которые уже не стоят, как крыло от самолета.
                                Кратко- мой резюм — лет так 5-7 тому назад — Quark был-бы самой настоящей бомбой, а сейчас увы и ах.
                                Непонятный процессор от одного (единственного) производителя, который свернул уже не один проект.
                                Впрочем, это моя имха.
                                  +3
                                  Уууу, как много голословных и громких утверждений в вашей имхе. Закопать… страшное наследие… ARM с могучей периферией…
                                  Легаси код – это то, что не убило и давало постоянно развиваться x86-й архитектуре много-много лет.
                                  Выше были упомянуты конкретные модули – никакой могучей периферии там не наблюдается. Или есть другие, сравнимые по цене модули?
                                  Линукс-ядро да, на ARM-e уже бегает шустро, а вот с программами и драйверами, даже без SSE, все не так просто. Сколько у вас за плечами портированых проектов с одной ARM-системы на другую? Пробовали перенести приложение с Freescale модуля на OMAP?
                                  Интересные комбинации FPGA+ARM, которые уже не стоят, как крыло от самолета, говорите? Поинтересуйтесь, сколько стоит одна лицензия на Altera MAX-Plus или Quartus II. А еще, сколько стоит инженер, программирующий на AHDL/VHDL. Фирма, о которой я написал, не смогла себе позволить использовать ПЛИС в своих разработках.
                                  Ну а то, что Quark был бы бомбой 5-7 лет назад, совершенно согласен.
                                    +2
                                    Легаси код – это то, что не убило и давало постоянно развиваться x86-й архитектуре много-много лет.

                                    x86 развивался много-много лет исключитально из-за господства винтела, но сделал заложником сам интел, который совершенно очевидно устаревшие архитектурные решения вынужден тянуть много лет, заворачивая их в кремний.
                                    Провал итаниума это крайне наглядно показал. Упомянутые альтернативные вендоры x86 совместимых процессоров ничем выдающимся не блещут.
                                    Сколько у вас за плечами портированых проектов с одной ARM-системы на другую?
                                    Есть немного и портированных, хотя стараюсь не промахиваться. Самый портируемый Stellaris -> NXP -> ST — как сказать — сперва было тяжело :)
                                    Пробовали перенести приложение с Freescale модуля на OMAP?
                                    Боже упаси. И дело здесь не в ядре процессора, а в перефирии, которая, применительно к обсуждаемой теме, совершенно очевидно у quark отличается от остальных x86.
                                    Поинтересуйтесь, сколько стоит одна лицензия на Altera MAX-Plus или Quartus II. А еще, сколько стоит инженер, программирующий на AHDL/VHDL.

                                    Я специализируюсь на Xilinx и сколько стою — знаю :)

                                    Удачи
                                      0
                                      x86 развивался много-много лет исключитально из-за господства винтела

                                      Это сильно! А, как вы думаете, чем (вернее, кем) было обусловлено это господство?
                                      И если не трудно, чтобы мы понимали о чем идет речь, назовите хотя бы одно устаревшие архитектурное решение, например, в процессоре Sandy Bridge.

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

                                      Как вы думаете, чем очевидно будет отличаться драйвер USB у Quark и у десктопа с Intel Core?

                                      Я специализируюсь на Xilinx и сколько стою — знаю

                                      Я в намного меньшей степени знаком с разработкой под Xilinx. Неужели дешево? ;)
                                        0
                                        А, как вы думаете, чем (вернее, кем) было обусловлено это господство?
                                        Я думаю исключительно стечением обстоятельств. Случай. Удача. Точно попали в рынок. Системы на 680x0 того времени были весьма себе не дурны, не говоря о прочих спарках, ваксах и прочих силикон-графиксах. Не выбери IBM 8086, и не открой ISA, может мы бы имели другого флагмана.
                                        И если не трудно, чтобы мы понимали о чем идет речь, назовите хотя бы одно устаревшие архитектурное решение, например, в процессоре Sandy Bridg
                                        Да пожалуйста:
                                        — замечательная 64-битная нашлепка ввиде amd64 (Спасибо компании AMD), похоронившая под собой попытку сделать новые 64 бита с чистого листа.
                                        — от щедрот в 32 битном режиме аж 8 регистров — кажется абсолютный рекорд аскетизма 32-битных процессоров. Что особо заметно, когда в 64-битном режиме можно fastcall. Конечно, все это частично компенсируется ремепингом регистров (как я понимаю, с использованием и не задействованных в 32 битке дополнительных 64 битных регистров), кешем и прочими силиконовыми штучками, но именно это я и считаю тем самым дурным наследием совместимости.

                                        Я в намного меньшей степени знаком с разработкой под Xilinx. Неужели дешево? ;)
                                        Вааще халява :)

                                        А уж коли разговор о стоимости средств разработки зашел, то не знаю как там у Alter`ы, а у Xilinx`а WebPack бесплатный, и держит все цинки. А если нужны ну совсем уж тяжелые камни, то ISE не сильно дороже фотошопа.
                                        Если к ARM (ну почти к любому — не обошлось без извращенцев, конечно) jtag обходится долларов в 15 и в крайнем случае денек ковыряния OpenOCD, то сколько стоит Jtag для Intel Core? А без него баре метал не всегда сподручно.
                                          +1
                                          Извиняюсь, пропустил один вопрос:
                                          Как вы думаете, чем очевидно будет отличаться драйвер USB у Quark и у десктопа с Intel Core?

                                          Надеюcь на десктопе увидеть USB 3.0. Так что всем.
                                          Ксло, TI и иже с ними, да и поганые китайцы в свои ARM интегрируют USB 3.0 уже даже не вчера, а Intel что показывает нам в Quark…
                                          Нет, я обожаю Intel, пишу это с компа с процессором от интел, считаю реальным флагманом индустрии, и то, что они делают в том положении, в котором оказались, с инженерной точки зрения — выше всяких похвал.
                                            –2
                                            TI и иже с ними, да и поганые китайцы в свои ARM интегрируют USB 3.0 уже даже не вчера, а Intel

                                            Расскажите мне, для чего в маломощном контроллере с низким потреблением энергии и низкой ценой USB 3.0?
                                              0
                                              Для экономии энергии? USB 3.0 устроен совершенно не так, как USB 1.x или USB 2.0. То есть там даже провода другие! И, соответственно, можно класть устройства «спать», если они сейчас не требуются, более эффективное кодирование снижает время, которое нужно держать устройство и т.д.

                                              Буквально первая же ссылка в google:
                                              low-powerdesign.com/donovansbrain/2011/03/01/power-management-in-usb-3-0/
                                                0
                                                Вы спрашивали
                                                Как вы думаете, чем очевидно будет отличаться драйвер USB у Quark и у десктопа с Intel Core?
                                                Мой ответ — да будут. И я рассказал почему. Об одном и том-же драйвере можно забыть.

                                                И USB 3.0 ни чуть не менее уместный, чем PCIe.
                                                  0
                                                  Об одном и том-же драйвере можно забыть.

                                                  Вы слегка заблуждаетесь.

                                                  И USB 3.0 ни чуть не менее уместный, чем PCIe

                                                  Аргументы у вас есть? Зачем нужен быстрый PCIe я объяснил уже.
                                                    +1
                                                    Вы слегка заблуждаетесь.

                                                    Сурсы Линукса говорят об обратном
                                                    Аргументы у вас есть? Зачем нужен быстрый PCIe я объяснил уже.

                                                    Если Вы считаете аргументом вот это:
                                                    Как вы будете вводить большой поток данных с модулей сбора информации (с того же DSP)? В Quark’е есть PCI-E, которая зальет данные в память на огромной скорости.
                                                    То мне есть что возразить по существу:
                                                    1. DSP не является модулем сбора информации, а как раз предназначен для локальной обработки больших потоков с уменьшением объема информации.
                                                    2. Ну залили в басмастере в память, дальше что? Quark успеет ее обсчитывать?
                                                    Quark ну уж точно не числодробилка. Тем более с соточной сеткой.
                                                    Те потоки, которые Вы описывали в статье — 0.5 — 3 Мб/c влезают в SPI.
                                                    А под USB 3.0 есть (будет) куча оборудования, ввиде законченых устройств. Сейчас уже затруднительно найти оборудование на USB 1.1, время летит очень быстро.
                                                      0
                                                      1. То есть, по вашему, DSP собирает большой поток информации, а выдает только байты в секунду? Я вас удивлю, на выходе DSP поток может даже увеличиваться.
                                                      2. Основное назначения модуля на Quark, как и любого другого (того же ARM-ядра в OMAP): сегментировать, сохранять, передовать пакеты данных, и побочные функции, как сигализация состояний, логи и прочее. Скорость потока данных, что я указал, определялась возможностями элементной базы. Функционально требуется больше каналов, больший динамический диапазон (то есть ПП канала). И требования постоянно растут.
                                                      Что и куда вы собрались качать через USB в автономном контроллере? По сути USB — это технологический канал, использующийся, когда контроллер подключают к PC (слить данные, залить прошивку). По сравнению с вроменем, затраченным на ручные манипуляции подключения, время передачи данных по каналу уже не играет роли, поэтому быстрый USB3.0 там не нужен.
                                                        0
                                                        То есть, по вашему, DSP собирает большой поток информации, а выдает только байты в секунду? Я вас удивлю, на выходе DSP поток может даже увеличиваться.
                                                        Вам действительно удалось меня удивить :) DSP ориентированны именно на поточную обработку больших объемов, Вы-же пытаетесь его задействовать в качестве преобразователя интерфейсов.
                                                        Про «байты в секунду» — это Ваши фантазии. Посмотрите, как строят любой современный осциллограф, например. Никто там не тащит RAW потоки в CPU. Ни в одной реальной разработке я не видел, когда имея на борту DSP или другой какой специализированный вычислитель, большие потоки тащились-бы в ЦП, тем более, в такой низкопроизводительный, как Quark, в котором, как я понимаю, SSE нет.
                                                        Функционально требуется больше каналов, больший динамический диапазон (то есть ПП канала)
                                                        Динамический диапазон и ПП канала это вообще из разных опер
                                                        По сути USB — это технологический канал, использующийся, когда контроллер подключают к PC (слить данные, залить прошивку)
                                                        Без PC никак? Флешку воткнуть нельзя? SDR какой, например, тоже нельзя? WiFi, BT, мышку в конце концов.
                                                        У Вас крайне однобокое представление о возможности применения USB, или это просто попытка оправдать применение устаревшего интерфейса?
                                                          –1
                                                          Вам действительно удалось меня удивить :)

                                                          Вам еще много удивительных вещей предстоит узнать (с вашим-то уровнем осведомленности). Пара примеров:
                                                          — Процессор в зеркальном фотоаппарате пишет на флэшку больший поток данных в RAW-формате, чем получает от АЦП матрицы.
                                                          — Простой концертный медиасервер, получая на вход два стереоканала, преобразует их в реальном времени в 5.1 и передает на оконечные устройства (в том числе и без проводов) поканально.

                                                          Динамический диапазон и ПП канала это вообще из разных опер

                                                          Динамический диапазон вводимого сигнала определяется разрядностью АЦП, а при постоянной частоте дискретизации, увеличиние разрядности ведет к увеличению требования ПП канала. Не знаю, что за оперы вы смотрите/слушаете.

                                                          Без PC никак? Флешку воткнуть нельзя? SDR какой, например, тоже нельзя? WiFi, BT, мышку в конце концов.

                                                          Для флэшки, Wi-Fi и BT в платформе предусмотрены другие интерфейсы — никому в голову не придет подсоединять их через USB (тем самым усложняя без надобности стек драйверов). А мышке USB 3.0 без надобности.
                                                          Если вы втыкаете (в тот же осциллограф) USB-флэшку, то это технологическая операция, т.е. не свзязана с работой самого осциллографа. Ну да, данные из внутреннего накопителя скинутся быстрее, но все-равно это не основная работа утройства, которая выполняется постоянно. Поэтому USB — это техканал.
                                                            +1
                                                            Вам еще много удивительных вещей предстоит узнать (с вашим-то уровнем осведомленности). Пара примеров:
                                                            — Процессор в зеркальном фотоаппарате пишет на флэшку больший поток данных в RAW-формате, чем получает от АЦП матрицы.
                                                            Да, пишет еще EXIF. Если Вы не в курсе, Баеровская интерполяция, которая могла-бы потенциально увеличить поток, в случае RAW не осуществляется. Хотя какое отношение имеет запись RAW на флеш к DSP подключенному через PCIe — но понятно.
                                                            А раз уж заговорили о фотоаппаратах, то имеет смысл упомянуть, что тот-же Canon отказался от применения в своих изделиях x86 совместимых SOC, и перешел на ARM. Видимо его не сильно волнует вопрос о переносимости бинарников без перекомпиляции на десктоп.
                                                            — Простой концертный медиасервер, получая на вход два стереоканала, преобразует их в реальном времени в 5.1 и передает на оконечные устройства (в том числе и без проводов) поканально
                                                            Интересно, а сложный «концертный медиасервер» так-же себя ведет? Вы часом, не путаете медиасервер с процессором? И что, Вы будете утверждать, что в нем поток гонится через ЦП при наличии DSP? Расскажите подробнее, плз, в области про-аудио нам есть что обсудить :)
                                                            Динамический диапазон вводимого сигнала определяется разрядностью АЦП
                                                            Динамический диапазон вводимого сигнала не определяется разрядностью ADC (HINT 1-bit Delta-Sigma, где на 1-битном конверторе получается весьма не 6db ДД)
                                                            Что Вы там говорили про уровень осведомленности? Или от Вашего ника пишут уже маркетологи?
                                                            а при постоянной частоте дискретизации,
                                                            Не многовато новых требований на ходу появляется?
                                                            Для флэшки, Wi-Fi и BT в платформе предусмотрены другие интерфейсы — никому в голову не придет подсоединять их через USB (тем самым усложняя без надобности стек драйверов).
                                                            Рассказываю, на рынке реально есть много устройств, где USB вообще на разъем не выведен, а используется в качестве внутреннего интерконнекта.
                                                            Если вы втыкаете (в тот же осциллограф) USB-флэшку, то это технологическая операция, т.е. не свзязана с работой самого осциллографа.
                                                            А если USB-flash втыкается в фотоаппарат, где сохраняются на нее упомянутые RAW, уже связана?
                                                              0
                                                              Значит так, с потоками информации с выхода DSP больше, чем на входе, думаю, разобрались. Рад, что заполнились белые пятна в вашем кругозоре.
                                                              Про динамический диапазон дальше не вижу смысла обсуждать — я вас просто не понимаю.
                                                              Рассказывать мне, что есть на рынке какие-то устройства не нужно, просто не утруждайтесь — без конкретных примеров все-равно не интересно читать.
                                                              И да, USB для фотоаппарата тоже является технологическим каналом (сюрприз!), для скачивания фотографий (хотя есть еще два способа это сделать, и беспроводной побеждает).
                                                              Ок, так уж и быть, приведу один пример, где USB — основной канал связи, и без 3.0 основной функционал будет ущербен: внешний диск с USB-интерфейсом. Да та же USB-флешка. Для нее USB тоже основной канал.
                                                              За сим откланиваюсь.
                                                                0
                                                                Значит так, с потоками информации с выхода DSP больше, чем на входе, думаю, разобрались.
                                                                Это в примере с EXIF? Так его не DSP генерирует. Где в приведенных Вами примерах DSP увеличивает поток, передаваемый CPU?
                                                                Рад, что заполнились белые пятна в вашем кругозоре.
                                                                Про динамический диапазон дальше не вижу смысла обсуждать — я вас просто не понимаю.
                                                                Вы не меня не понимаете, а элементарных основ ЦОС, терминами которого пытаетесь оперировать. А про «белые пятна», извините, не после Ваших перлов.
                                                                Рассказывать мне, что есть на рынке какие-то устройства не нужно, просто не утруждайтесь — без конкретных примеров все-равно не интересно читать.

                                                                Хотите примеров — пожалуйста. Вот Asus RT-N53 использует для wifi BCM43236, который цепляется через USB. И таких вариантов цепляния WIFI весьма много и у Linksys. Впрочем, вайфаем использование USB в качестве внутреннего интерконнекта не ограничивается, так-же много где через внутреннее USB цепляется 3G и GPS.
                                                                И да, USB для фотоаппарата тоже является технологическим каналом (сюрприз!), для скачивания фотографий (хотя есть еще два способа это сделать, и беспроводной побеждает).
                                                                А если для записи? А если ремоут подключается через USB, а если LiveView? Так что сюрприз не состоялся. Или для оправдания применения очевидно устаревших интерфейсов будем навязывать разработчикам, какие интерфейсы им использовать, как технологические, а какие, как функциональные? И из чего следует, что технологические должны быть устаревшими?

                                                                И что там со стоимостью JTAG для Core I?
                                                                  0
                                                                  Я вам привел примеры, когда на выходе DSP поток такой же как на входе, или больше. Т.е. причина, по которой нужна быстрая шина в процессор общего назначения. Вы можете не соглашаться, но это ничего не меняет.
                                                                  Ваш бред про разные оперы ДД и ПП, даже коментировать не хочется. Просто вот так — получите ответ в своем же стиле. И, да, перечитайте на досуге учебники, по предмету, который вы упомянули.
                                                                  Прекрасный пример про Asus RT-N53, просто отличный. Подскажите, там есть возможность радиомодуль к какому либо еще инрефейсу процессора подключить, чтоб до 300 Mbit пропускал? По-моему нет. Вот и ответ. USB 3.0 нужен, если больше не чем прокачать такой поток. А если есть (PCI-E)? Тогда зачем USB 3.0?
                                                                  А что у нас USB 2.0 перестал пропускать поток для LiveView?
                                                                  Для технологическог интерфейса USB 2.0 не устаревший, а достаточный.
                                                                  Я не знаю, что со стоимостью JTAG для Core, для Quark я привел ссылки.
                                                                    0
                                                                    Ваш бред про разные оперы ДД и ПП, даже коментировать не хочется
                                                                    Давайте не будем передергивать Ваше вот:
                                                                    Динамический диапазон вводимого сигнала определяется разрядностью АЦП
                                                                    Расскажите про динамический диапазон 1-bit ADC тем, кто слушает SACD например, они крайне удивятся, что ДД определяется разрядностью ADC.
                                                                    Я вам привел примеры, когда на выходе DSP поток такой же как на входе, или больше.

                                                                    Вы не привели никаких примеров по теме DSP. Фотоаппарат в режиме записи RAW, DSP не является. Совершенно очевидно, что в том-же DIGIC (любом, современном) поток с матрицы идет через lvds и, соответственно, dma в память, и никакие блоки DSP в режиме RAW не задействуются, по причине ненужности. И уж точно никаким PCIe там и не пахнет.
                                                                    Т.е. причина, по которой нужна быстрая шина в процессор общего назначения.
                                                                    Только вот в качестве быстрой шины, Вы упорно настаиваете на PCIe, а вот USB 3.0 отметаете напрочь. Ваши мифические «данные в память на огромной скорости» не найдут отклика со стороны весьма посредственного по своим вычислительным возможностям CPU Quark.
                                                                    USB 3.0 нужен, если больше не чем прокачать такой поток. А если есть (PCI-E)? Тогда зачем USB 3.0?

                                                                    Бывают устройства с таким интерфейсом. А еще бывает нужно несколько устройств подключить одновременно. Цены на PCIe HUB`ы порядково выше, чем на USB. Да и с доступностью разница очевидна.
                                                                    А что у нас USB 2.0 перестал пропускать поток для LiveView?
                                                                    Вы настаивали на том, что USB чисто технологический и-фейс, я привел Вам пример, когда он функциональный.
                                                                      0
                                                                      Вот пример, вполне функциональный:
                                                                      image
                                                                      К устройству подключается USB WiFi через который гонится картинка или данные с мобильного устройства. Функциональный? Да. Нужны большие обьемы и скорость? да.
                                                                        0
                                                                        Спасибо за пример. Конечно, найдется полно применений, когда USB 3.0 будет нужен. Но тут я хотел бы упомянуть два момента:
                                                                        1. USB — это все-таки внешний интерфейс. И его иногда используют для связи между чипами в одном устройстве, как я думаю, только из-за того, что других быстрых интерфейсов нет. Была бы возможность, сажали бы устройство на шыну и адресовали нанные напрямую — это же намного удобнее.
                                                                        2. Как внешний быстрый интерфейс USB несомненно имеет применение, как в вашем примере, да везде, где нужно, например, прогнаять видео (та же веб-камера), если только там уже нет HDMI. Однако, в контроллерах, для которых позиционируется Quark (уж точно не видео обрабатывать), USB не является основным, т.е. работающим постоянно интерфейсом, а используется как дополнительный канал, если необходимо подключить девайс к PC, или к нему флэшку.
                                                                        Поэтому обвинения в том, что Интел ставить старые как говно мамонта устаревшие интерфейсы несколько некорректны.
                                                                          0
                                                                          Блин, только очепяток… Прошу прощения, пишу с нерусской клавиатуры.
                                                                            0
                                                                            USB — это все-таки внешний интерфейс. И его иногда используют для связи между чипами в одном устройстве, как я думаю, только из-за того, что других быстрых интерфейсов нет. Была бы возможность, сажали бы устройство на шыну и адресовали нанные напрямую — это же намного удобнее.

                                                                            Ну не скажите. Вот такой USB-WiFi стоит действительно копейки — меньше доллара, потому что производиться огромными количествами, поддерживается кучей операционок, и так далее. Не работает этот, всегда можно найти другой за тот же доллар.
                                                                            А с другим интерфейсом модуль — сразу и стоит минимум $10, а средне $20, и багов в нем куча, и выбор из 5 вариантов доступных всего.
                                                                              0
                                                                              Согласен, цена может сыграть роль. Но давайте остановимся на вашем примере. Неужели такой USB-WiFi за доллар имеет спецификацию USB 3.0? В большинстве случаев нет. То есть там и 2.0 хватает, даже если USB канал является основным.

                                                                              Если же взять утстройства, где требуется пропускная способность 5 Gb/s или даже 10 Gb/s как у USB3.1 (и Wi-Fi тоже толстый), думаете в них устанавливают USB-WiFi модули за доллар?
                                                                                0
                                                                                Ну вот тут надо смотреть, может быть модули со скоростью, которая превысит пределы USB 2 будут дешевле с интерфейсом PCI.
                                                                                Я вообще мимо проходил и пример привел, я ни в коем случае не участвую в вашем споре :)
                                                                                  0
                                                                                  Наоборот, спасибо за участие и хороший пример.
                                                                          0
                                                                          Вы не привели никаких примеров по теме DSP. Фотоаппарат в режиме записи RAW, DSP не является.

                                                                          Я их вам таки привел. Вы упорно не хотели верить, что на выходе DSP бывает поток данных такой же или больше, чем на входе. Я вам показал, что бывает. Но вы зачем-то, как типичный тролль, начали цепляться за незначимые детали — типа пахнет PCI в фотоаппарате или нет.
                                                                          Бывают устройства с таким интерфейсом. А еще бывает нужно несколько устройств подключить одновременно. Цены на PCIe HUB`ы порядково выше, чем на USB. Да и с доступностью разница очевидна.

                                                                          Я ни где не спорил с этим. Бывают разные устройства. Где я говорил, что Quark подойдет для любого из них? «Весьма посредственный по своим вычислительным возможностям CPU Quark» найдет свое применение, где требуется регистрация, хранение и передача данных. Таких применений — вагон и маленькая тележка.
                                                                          Вы настаивали на том, что USB чисто технологический и-фейс, я привел Вам пример, когда он функциональный.

                                                                          Ничего подобного. Если внимательно прочитаете, я сказал, что в каких-то устройствах USB — основной канал передачи данных (Web-камера, внешний HDD) — там USB 3.0 желателен, но в контроллерах, которые работают автономно, USB является техканалом, так как через него данные не гоняются в штатном режиме. Если есть PCI-E, то, тем более, использовать USB 3.0 для соединения внутренних устройств бесмысленно. В таких устройствах, где требуется такая скорость, стоимость 1 доллар или 10 не имеет значения. А имеют значения накладные расходы для передачи данных — и с USB они буду выше.
                                                  0
                                                  Я думаю исключительно стечением обстоятельств. Случай. Удача.

                                                  Действительно удача, что подавляюще большинство разработчиков ПО уперлось рогом и ни в какую не захотело разрабатывать/портировать свой x86 код на другие платформы.

                                                  замечательная 64-битная нашлепка ввиде amd64 (Спасибо компании AMD), похоронившая под собой попытку сделать новые 64 бита с чистого листа.


                                                  Мне кажется вам нужно немного обновить знания о текущей архитектуре x86. Вот тут хороший материал с картинками, и не на сайте Интела. Даю подачу: 64-битность архитектуры — нативная. Более того, регистры 256-битные, в кол-ве 16 штук. А в блоках аллоцирования их еще больше, что невилирует их недостаток. Такой же ширины и кольцевая шина.

                                                  Еще раз, я не очень в курсе редств разработки от Xilinx, но что-то сомневаюсь, что в бесплатных версиях вы сможете найти библиотеку PCI-E. Иначе, они бы точно похоронили Altera'у.
                                                    +1
                                                    Действительно удача, что подавляюще большинство разработчиков ПО уперлось рогом и ни в какую не захотело разрабатывать/портировать свой x86 код на другие платформы.
                                                    Например gcc да и все GNU и BSD — так уперлись, что тащут за собой старые бекенды и никак не хотят портироваться.
                                                    А «уперлись» разработчики в то, что продается и проще.
                                                    И что такого эти разработчики наразрабатывали именно под x86, а не под винды? Многое, что реально осталось от «наразработанного», как правило, кросс.
                                                    Или Вы думаете, что когда (если) M$ реально будет тащить винды на армах — разработчики бастовать начнут — верните x86?
                                                    OS/2 проиграла NT, хотя была значительно круче. Начиная от реализации TCP стека, и заканчивая стабильностью работы. Где DB2, а где Оракл, хотя кто-бы мог подумать… (к слову и те и другие — кросс.)
                                                    Думаю, что это фундаментальный закон развития — побеждает не лучший, а достаточно хороший в моменте. Вон, например, скорпионы оказались на столько хороши, что уже миллионы лет не меняются, но и прогресса нет. (К Интелу это никаким боком не относится :) )
                                                    Вот тут хороший материал с картинками, и не на сайте Интела.
                                                    Кто хостит картинки — меня не трогает — у меня нет никаких предрассудков к сайту интела (ну кроме его вырвиглазности и невозможности что-либо найти, но это на вкус и цвет...). а я, собственно, об этом и говорил — именно из-за совместимости со старым кодом, компилятор вынужден работать с усеченной абстракцией процессора, что потом компенсируется подпорами в силиконе. Какого не сделали доступными хотя-бы 16 целочисленных регистров в 32 битке? Только совместимость. И Вы говорите, что это не груз совместимости?
                                                    Когда уже выкосят поддержку A20? Или это тоже не костыли?
                                                    32 битный код легко поддается ручной оптимизации, а все, что касается SSE ну ни в какую — быстр падлюка, и не ускоришь его никак. Что говорит о том, что без груза старых абстракций лучше.

                                                    я не очень в курсе редств разработки от Xilinx, но что-то сомневаюсь, что в бесплатных версиях вы сможете найти библиотеку PCI-E. Иначе, они бы точно похоронили Altera'у.


                                                    Да дался Вам этот PCIe :) Нечего на него реально цеплять. Нужны интерфейсы GbE или какие другие — проще их сделать прямо в FPGA. Кроме того, сейчас почти все быстрые сериальные в виде хардблоков. Впрочем, Альтера может закапываться :)
                                                    На самом деле ситуация и ранее была не совсем такая как в прайсах — когда мне нужно было лецензионно чистое IP под PCIe — я нашел вариант демоборды с лицензией на 1 проект долларов за 400 с доставкой. И это было еще во времена Spartan3A. Сейчас все брендовые тулзы сильно просели в цене — денег на этом много не собрать, а реальные бабки в поставках силикона. Тот-же ISE (правда залоченный на кристалл) можно взять чуть дороже штуки.

                                                    А что там у нас с ценой на Jtag для Core?
                                                      0
                                                      Такую длинную тираду не надо было приводить. Ни кто-не спорит, что были технически более совершенные OS и успешные на рынке. Но ни о какой монополии или главенстве речи не идет — это рынок, он выбирает, что лучше/дешевле — именно в соотношении.
                                                      Про груз совместимости там вообще ни чего не понял — извините.
                                                      Легаси, например в виде поддержки x87 и декодера всех предыдуших команд есть, но на кристалле этот функционал занимает ничтожно малое место, потребляет мало энергии, поэтму это не аргументы. Ну а то, что вам не хватает регистров — это вы мыслите понятиями ARMа, а в x86 их не хватает примерно настолько, на сколько не хватает регистров ROB, Reservation Station, Line Buffer, а так же исполнительных портов и количества ALU юнитв — короче все сбалансировано, более-менее.
                                                      Про дешевые тулы для FPGA не убедили, так как в отвязке от функционала. Нужно рассматривать конкретный пример — чип, с N кол-вом вентилей, возможноть имплементировать определенные IP блоки, максимальная тактовая частота — и потом смотреть, сколько это стоит. И стоить это будет дорого, в случае PCI-E. Иначе, все голословно.
                                                      Я не в курсе про JTAG для Core, но вот для Quark можно посмотреть здесь и здесь. Цены не велики.
                                                        0
                                                        А для Quark у нас, внезапно, ARM JTAG рекомендуется?
                                                          0
                                                          Видимо совместим (железо).
                                                            0
                                                            А можно подтверждение по каким-нибудь официальным мануалам?
                                                              0
                                                              Модели указаны во в этом документе.
                                                          +1
                                                          Не совсем понятна мысль про то что архитектура компенсирует нехватку регистров. В x86 в случае нехватки регистров для размещения всех живых объектов на регистрах кодогенератор вставляет работу со стеком. Т.е. возникает register spilling и появляются дополнительные операции работы с памятью. Т.е. есть приложения, для которых 32-битные версии заметно проигрывают по производительности 64-битным именно из-за того что в 64 битных меньше работы со стеком (больше доступных регистров). Понятно, что «железо» не может решить эту проблему, хотя она действительно кажется грузом совместимости.
                                                      –2
                                                      Да всё уже — в 2014 году удача отошла от Intel`а.
                                                      IBM (звезда пленительного счастья со своими гос-контрактами) сегодня порвала все свои давние и тесные связи с Intel.
                                                      См. пост и комменты к нему: «IBM прощается с x86 серверами, вся линейка продана Lenovo».

                                                      Видимо теперь Intel`а настигнет сплошное невезение, а как итог в недалёком будущем полный капец:(

                                                      А Intel Quark — это по-видимому может стать первым самым неудачным чипом Intel`а — в который вбухано много денег, а он оказался никому не нужён.
                                                      Вообще странный продукт этот Intel Quark — он вроде бы лезет в область дешёвых и маломощных контроллеров, и при этом силится иметь мощь и возможности настольных компьютеров конца 1990-х годов — и зачем оно такое чудо нужно в носимой электронике?
                                                        0
                                                        IBM сегодня порвала все свои давние и тесные связи с Intel.

                                                        Да ладно! Прям все-все?

                                                        Кстати, когда Lenovo купила ноутбучный бизнес у IBM, у первой дела пошли в гору, и ноутбуки стали намного лучше продаваться… Может и серверным бизнесом так произойдет?

                                                        Видимо теперь Intel`а настигнет сплошное невезение, а как итог в недалёком будущем полный капец:(

                                                        Вы тоже по совместительству пророк, или аналитик?

                                                        А Intel Quark — это по-видимому может стать первым самым неудачным чипом Intel`а — в который вбухано много денег, а он оказался никому не нужён.

                                                        А сколько денег, не подскажите, а то я тут точную сумму ни как не могу найти.
                                                          0
                                                          Да всё просто:)
                                                          Это моё частное (для вас малозначимое) мнение.
                                                          Но, через некоторое время, мы всё обязательно увидим.

                                                          >Да ладно! Прям все-все?
                                                          А зачем им теперь Intel?
                                                          Они теперь прямые конкуренты для Intel (безо всяких оговорок).
                                                          IBM уже активизировалась в продвижении на рынок свои Power-чипы — см.:
                                                          1. «IBM заручилась поддержкой Google, NVIDIA и другими для противостояния с Intel».
                                                          2. «IBM лицензирует процессоры Power».
                                                          Техпроцессы по производству чипов IBM уже давно развивала в сотрудничестве с AMD — см.: «IBM — старый новый партнер AMD в разработке техпроцессов».
                                                          А самое интересное, что IBM возглавляет созданный ею альянс чипмейкеров Common Platform, который объединяет всех основных конкурентов Intel: IBM, Samsung, GlobalFoundries, а с недавнего времени ещё и UMC — см.: «UMC будет разрабатывать 10-нанометровый техпроцесс вместе с IBM».

                                                          > Кстати, когда Lenovo купила ноутбучный бизнес у IBM, у первой дела пошли в гору, и ноутбуки стали намного лучше продаваться… Может и серверным бизнесом так произойдет?
                                                          Нет с серверным бизнесом у Lenovo так не прокатит:)

                                                          Во-первых серверный бизнес это особая стезя — тут надо гнать не дешёвый ширпотреб (как это умеет делать в Lenovo — все знают как они понизили качество линейки ноутбуков ThinkPad), а качественное оборудование (чего в Lenovo делать не умеют и не хотят). Поэтому за качественными серверами теперь все заказчики пойдут на поклон к HP, Dell и той-же IBM.

                                                          Во-вторых в 2005 году IBM продав бизнес ПК не стала конкурентом Lenovo и всячески им помогала сохранить и развить этот бизнес (например поставляя ПК Lenovo по своим IBM`вским гос-контрактам). А теперь ситуация значительно изменилась и IBM теперь является прямым конкурентом для Lenovo на серверном рынке, и они теперь будут делать всё возможное что бы по своим гос-контрактам поставлять свои родные сервера IBM Power Systems на своих Power-чипах!
                                                            0
                                                            Меня просто слегка удивила та безаппеляционность, с которой вы выдается желаемое за действительное.
                                                            IBM и раньше была конкурентом Intel на серверном рынке, что не мешало ей получать неплохой куш с x86 линейки. Ну не потянули они конкуренцию с HP и Dell, поэтому и избавляются. А у Intel там где просядет с IBM, поднимется с Lenovo, при этом сотрудничество еще долго продолжится с обоими.

                                                            Про победное шествие PowerPC я бы не стал делать таких сверхоптимистичных прогнозов. Я не специалист в серверном рынке, и прогнозов не даю, но вот как пример, в одном европейском ядерном центре, где я недавно побывал, наряду с BlueGene/Q, устанавливают еще два суперкомпьютера на Ivi Bridge-EP — такова политика диверсификации в дата центре. И это распространено везде.
                                                              0
                                                              Да ну перестаньте вы, как это они не потянули конкуренцию с HP и Dell:))))
                                                              Честное слово — это просто смешно.

                                                              Дело в том что конкуренция на рынке дешёвых x86-серверов требует всё более агрессивного снижения издержек — что приводит к снижении качества техники (на что IBM пойти никак не может — блюдёт авторитет своей марки).

                                                              Да и из-за конкуренции на этом рынке постоянно сокращается маржа — в частности из-за таких агрессивных игроков как CISCO и SGI — готовых работать на минимальной марже — см.: «Продажи серверов Cisco выросли», и ещё: «SGI расширила облачные продажи».
                                                              И опять же у IBM есть определённые бизнес-правила выработанные десятилетиями — при марже ниже определённого уровня они просто сворачиваются и уходят с данного рынка, — вкладывая деньги в более высокомаржинальные рынки.
                                                                0
                                                                А вы найдите распределение долей серверного рынка по компаниям за прошлый год, и там же по х86 серверам, и станет не так уже смешно. Серверы на Xeon ни разу не дешевые (вы их с Avaton не путайте).
                                                                IBM может иметь какие угодно бизнес-правила, но на рынке остается тот, кто предлагает лучшее соотношение price/value proposition. Тянуть две различных платформы сереверов IBM не в состоянии (да, именно из-за конкуренции и множества желающих производить серевера на x86) и решила сосредоточиться на своем основном бизнесе — это нормально и ожидаемо. Но причем тут удача Intel'а я так и не понял.
                                                                  0
                                                                  При чём тут удача:)
                                                                  Да первый мой коммент в этой ветке был в ответ на фразу Uint32:
                                                                  >Я думаю исключительно стечением обстоятельств. Случай. Удача. Точно попали в рынок. Системы на 680x0 того времени были весьма себе не дурны, не говоря о прочих спарках, ваксах и прочих силикон-графиксах. Не выбери IBM 8086, и не открой ISA, может мы бы имели другого флагмана.

                                                                  Я считаю, что он прав: Intel стала «Царём горы» на ПК`ном рынке во многом благодаря IBM`у, ну а теперь Intel уже не нужна IBM`у, и даже более того — во многом мешает им вести свой серверный бизнес.

                                                                  Поэтому благосклонность старого компьютерного «Царя зверей» (IBM) уже отошла от Intel и мало того «Лев» проснулся, чтобы навести свой порядок в саванне — и теперь Intel`у есть чего побаиваться.
                                                                    0
                                                                    Ну то есть вы считаете, что Intel все это время была «Царем горы» на ПК потому, что IBM держала x86 серверный бизнес? А теперь все пропало (гипс снимают, клиент уезжает)?
                                                                    Вы сломали все ALU в моей голове.
                                                                      0
                                                                      И еще, про прекращение всех связей с Intel. Вот тут почитайте, в тексте новости и комменты.
                                                                      IBM will continue to develop its Windows and Linux software portfolio for the x86 platform. It will also continue to sell several systems based on x86 processors through its PureApplication and PureData appliances, high-margin products that also include IBM software.

                                                                      I should clarify that the PureData and PureApplication System lines include both x86 and Power (AIX- Unix) based options. PureData System For Analytics powered by Netezza, for example, is a Linux-based system based on x86. Oracle, too, is all but out of the x86 server business, yet its Exadata and Exalytics «engineered systems» are based on x86. The real value and margin in both the IBM and Oracle appliances is in the prepackaged software bundle.


                                                                      С Ораклом у IBM был всегда вкусный кусочек пирога, и никому его отдавать она не собирается.
                                                0
                                                Захотите ли вы нанимать отдельную команду для того, чтобы она переписала имеющийся софт x86 на ARM-контроллеры? А если такого софта миллионы строк?

                                                На ассемблере/интринсиках? Зависящего от модели памяти?
                                                А иначе что там переписывать?

                                                Кстати забавно что периферия в edison висит на AMBA-шине.
                                                  0
                                                  Ну да, достаточно, чтобы код был написан на C, и он сразу же становится портируемым на любую архитертуру
                                                    0
                                                    Так вы определитесь, вам нужно на любую или ARM?
                                                    Если код не написан конкретно под особенности MSVC, проблем быть не должно.
                                                    ARM таргет не сильно отличается от IA-32. Невыровненные обращения к памяти имеются, порядок little-endian. Отличия лишь в модели памяти и атомарных инструкциях. CAS vs LLSC

                                                    Чем больше платформ с различными компиляторами могут собрать и запустить ваш код, тем меньше в нём проблем и тёмных мест.
                                                    В текущей кодбазе, с которой я работаю, поддерживаются 5 CPU платформ и 6 различных компиляторов.
                                                      0
                                                      Все зависит от сложности кода, используемых библиотек, и, да, оптимизации под платформу (ее всегда делают на контроллерах) — правда?
                                                      Знаю несколько проектов (промышленных), где код, разработанный с одним компилятором пару лет не могли «вычистить», чтобы собрать другим, под ту же платфому.

                                                      А так да, «Hello World» легко скомпилировать под огромное количество платформ.
                                                      Есть еще задача: запустить его, не перекомилируя, на скалируемых платформах (большие контроллеры -> малые контроллеры). Это получится только на x86.
                                                        0
                                                        Поддержка железа и оптимизация — это как раз моя работа.
                                                        А код-база, поверьте, не маленькая.
                                                        Вас не смущает что linux-дистрибутивы со многими гигабайтами исходного кода выпускаются на множестве платформ?

                                                        Знаю несколько проектов (промышленных), где код, разработанный с одним компилятором пару лет не могли «вычистить»

                                                        Гнать взашей всех причастных

                                                        запустить его, не перекомилируя, на скалируемых платформах

                                                        Что, вы на Quark запустите SSE и хотя бы CMOV без фоллбека? «Большие» контроллеры это какие?
                                                          0
                                                          Вас не смущает что linux-дистрибутивы со многими гигабайтами исходного кода выпускаются на множестве платформ?

                                                          Как раз нет. Они всегда и изначально для этого задумывались (ядро, по крайней мере). И то, до недавнего времени хорошо поддерживалась только пара архитектур. Теперь добавилась еще и ARM (с помощью производителей ARM-based чипов)

                                                          Что, вы на Quark запустите SSE и хотя бы CMOV без фоллбека? «Большие» контроллеры это какие?

                                                          Нет конечно, SSE там не будет. Но есть подозрение, что и в «больших» контроллерах (на Intel Core/Xeon) этих инструкций тоже нет.
                                                            +1
                                                            Вас не смущает что linux-дистрибутивы со многими гигабайтами исходного кода выпускаются на множестве платформ?

                                                            Они всегда и изначально для этого задумывались (ядро, по крайней мере)

                                                            Все с точностью до «наоборот»
                                                            Linux изначально проектировался только под i386
                                                              0
                                                              Ну конечно, а когда в ядро добавлялась поддержка других архитектур, его интерфейсы ни разу не переписывались… ага.
                                                                0
                                                                Вообще, на всякий случай, напомню, что в Linux вообще нет стабильного API, и это позиция Торвальдса.
                                                                По поводу того, под какие архитектуры изначально проектировался Linux, Вы можете убедится по ссылке, которую я приводил выше. Думаю, что авторитета Торвальдса в этом вопросе достаточно.
                                                                  0
                                                                  О чем мы спорим? Мое утверждение, которое вызвало вопросы, в том, что Linux-ядро так разрабатывается, чтобы поддерживать разные платформы. Я выбрал выражение «изначално так задумывалось». Ну ладно, не изначально, но позже — все-равно оно разрабатывается с учетом многоплатформенности. И не надо Товальса тут цетировать, чтобы понять это. А почему многоплатформенность Linux-ядра была упомянута как пример написания многоплатформенных проектов? Я понятия не имею. Обычно проекты так не пишут. Очень часто они существуют только на одной платформе, в виду особенности рынка, пользовательской базы. А потом раз, и появляются новые рыночные обстоятельства. И возникает задача портирования на другие платформы. Мое мнение было таково, что это не просто сделать (а зачастую, проще переписать проект с нуля). При этом, при сохранении x86 системы команд (как пример, портирование проекта с десктопа на embedded) сделать это проще.
                                                              0
                                                              Ядро — это иголка в стоге сена.

                                                              Теперь добавилась еще и ARM

                                                              Теперь? А раньше не было что-ли? Загляните в arch/arm. «Теперь» появились «десктопные» дистрибутивы.

                                                              Но есть подозрение, что и в «больших» контроллерах (на Intel Core/Xeon) этих инструкций тоже нет.

                                                              Куда они пропали?
                                                                0
                                                                Теперь? А раньше не было что-ли?

                                                                Я имел ввиду добавились к хорошо поддерживаемым. Производители ARM-чипов вложили много сил в улучшение поддержки, не так давно. Тоже самое делал Intel, но слегка пораньше (и до сих пор продолжает делать)

                                                                Куда они пропали?

                                                                Их не использовали. Но я не говорю обо всех, конечно.
                                                +1
                                                2) Какие dsp вы имеете ввиду? Я встречался только с премиальными fpga с pcie в качестве dsp. Но это совсем другой сегмент, там обычно xeon в роли host процессора.
                                                3) Промышленные контроллерами я занимался на прошлой работе. Там совершенно другой софтверный стек с программированием через scada систему.
                                                Графика нужна не везде, но примеров где нужна тоже достаточно.

                                                Думаю получится как с intel-фонами. Да, работают. Но смысла переходить с arm -никакого. Особенно пока цену не опустили до уровня mediatek.
                                                  0
                                                  1) Те, которые я знаю ( TMS320C66x ), сами имют на борту ARM-ядра. Но так же знаю, что PLX продвигает свою имплементацию и другим производителяи. Думается, это вопрос недалекого будущего.
                                                  2) Ну, видимо, кто-то пересматривает подходы к софтверным стекам для скалирующихся контроллеров.

                                                  C Intel чипами для телефонов действительно, пока не выходит. С таблетками/планшетами чуть получше.
                                                  Если требуется именно переходить с ARM-а, то наверное смысла нет, а вот когда предстоит выбирать ARM vs. x86, то есть варианты. Мы их и рассматриваем в данном блоге.
                                                  +2
                                                  Вы можете себе представить стек коммуникационных протоколов для Bluetooth, поддержка файловой системы, либо алгоритм оптимизации записи адресов flash-памяти, написанный с нуля на ассемблере, или на embedded С?
                                                  Я — могу :-)
                                                    0
                                                    Было сложно?
                                                      0
                                                      Представить, или написать код? image
                                                        0
                                                        Написать, конечно )
                                                        Сам через это проходил (стек протоколов Bluetooth по железячной спецификации).
                                                    0
                                                    Вы ещё MIPS забыли он тоже себя, так же как и ARM, хорошо себя чувствует на рынке.
                                                      0
                                                      Возможно. Но я в MIPSax ну совсем не силен.
                                                        0
                                                        Кстати, полез проверил.
                                                        В оборудовании Brocade (самый крупный производитель SAN оборудования) используется архитектура PowerPC, это не MIPS но тоже RISC. И я сильно сомневаюсь, что когда либо они перейдут на x86 или ARM.
                                                        –1
                                                        Отвратительно он себя чуствует. Не живёт, а выживает. Остался фактически только в роутерах (хотя там он прописался прочно, да) и в каких-то чисто китайских разработках.
                                                          0
                                                          Здрасте, вы наверно плохо ориентируетесь в рынке.
                                                          Broadcom, Atheros (который недавно был куплен Qualcomm-ом), Cisco, Linksys, Ralink и MikroTik это вряд ли как вы выразились «каких-то чисто китайских разработках».
                                                            0
                                                            Чисто китайские разработки — это всякие Yeeloongи. А всё, что вы перечислили — это как раз «роутеры» (в широком смысле — сетевое оборудование). Или Ralink уже начал SOC'и для автомобилей или там телефонов на MIPS'е делать? Как-то не слыхал.

                                                      Only users with full accounts can post comments. Log in, please.