Вторым источником доходов MIPS Technologies (помимо лицензирования ядер), является лицензирование архитектуры MIPS - т.е. лицензирование другим компаниям права создавать альтернативные дизайны процессоров с архитектурой / системой команд MIPS, но с их собственной микроархитектурой - дизайном конвейера и т.д. Таким компаниям MIPS Technologies также предоставляет тесты, которые проверяют, что задизайненный таким образом процессор - это действительно MIPS. В число лицензиатов MIPS-архитектуры с их собственными дизайнами ядер входят производители сетевого оборудования Cavium, NetLogic, Broadcom, китайское правительство (ICT), китайская компания Ingenic и некоторые другие компании.
Роутеры стали делать раньше смартфонов, когда безраздельно правили MIPS. Сегодня MIPS умерло, было попилено и распродано по частям. Большую часть купил некий консорциум Bridge Crossing (на самом деле прикрытие ARM). По факту — MIPS больше нет, его купили ARM.
На ARM тоже есть у какой-то скотины патент, поэтом тоже нужно отчехлять. Кстати, на MIPS'ы у той же скотины патент. А раз отчехлять нужно одному и тому же лицу, то разница в выборе только в предпочтениях. Почему то большинство предпочитают ARM для смартов.
Наверное спецификации на протухшие мипсы никому даром не нужны. А за актуальные придется «отчехлять» (как мне понравилось это слово — спасибо Эдди за него). А если все равно придется «отчехлять», то почему бы не «отчехлять» за что то по актуальней?!
15 ноября 2013г. компания Microchip зарелизила свой новый контроллер PIC32MZ построенный на ядре MIPS microAptive. Есть MMU и External Bus Interface. Можно портировать Линух и пр. и пользоваться в за недорого.
Ну, я себя аналитеГом не считаю. Я задал вопрос — цель сего чипа? Ты в качестве аргумента привел ссылку на недавно выпущенный чип с протухшим нутром. Так объясни, зачем он нужен?! Кому в здравом смысле это штука нужна, если есть дешевые и более производительные ARM?!
Я про PowerPC ничего не говорил. Кстати, вроде IBM собирается разрешить лицензировать архитектуру PowerPC сторонним разработчикам. Так что может быть скоро будет наплыв ПК с PowerPC. А может и не будет...
Патенты вряд ли кто продаст. ARM сама из кожи вон вылезла, что бы скупить патенты MIPS. Хотя бы лицензию на производство процессоров приобретите, и прикручивайте туда плюшки обеих платформ. Сделайте гибрид ARM/MIPS/PowerPC/x86/amd64 и завоюйте рынок вытеснив всех остальных.
Ingenic JZ4760 к примеру. 600МГц, второе ядро - по сути DSP для видео(де)кодирования, без MMU, + 2д видеоядро, XBurst - корнями из MIPSI/MIPSII с расширенным набором инструкций (само ядро 2005 года). Соперник примерно того же возраста - MT6516 на ARM926EJ-S 416 МГц (ядро разработки 2008 года). Инженик по ощущениям намного шустрее соображает. Загадка?
Время 8-битных микроконтроллеров заканчиватеся, на смену понемногу приходят 32-битные. Ну собстно это замена для них. Использовать для встраиваемых применений, качество и надежность на уровне. Расскажите мне какой АРМ имеет по две области бутлоадера и флеша как в новом PIC32MZ? Это очень важно для удаленного обновления прошивки.
А ты не бери соперника «того же возраста». Бери самые актуальные решения от каждой архитектуры.
Что бы хоть сколько-нибудь уравнять шансы, возьми самые актуальные решения от каждой архитектуры в одном ценовом диапазоне. Вот только в связи с массовостью выпуска чипов на ARM, их цена и так не высока (если судить по ценам на девайсы с ARM).
Быть может в будущем, с ростом чипов MIPS... Но ниша у них однозначно другая. Я полностью согласен с pitman, в том, что новые чипы MIPS смогут занять достойное место в виде микроконтроллеров.
Но в любом случае это никак не выходит за рамки вопроса сабжа треда. На смартах нишу уже заняли ARM, и вряд ли их кто то сможет потеснить в ближайшее время (хотя intel вроде пытается). Ну а что будет в будущем — увидим.
Но пока что на смартах — ARM. А на MIPS всего несколько мобильных устройств, они жутко тормозят и под них очень мало нормального ПО. Загадка?
RISC как RISC. Не надо путать фичи процессоров и SoC'ов.
Просто SoC'и на мипсах делают роутерные, а на армах - мультимедийные. А бывает и наоборот. И еще как бывает!
дык он там такой же битовый как в мипсе. Ну ничем они в этом плане не отличаются, кроме самих инструкций, то есть их кодов. ну разве что количеством регистров, того, что у мипса есть регистр с нулем, того, что инструкция, следующая за переходом в мипсе скорее всего будет выполнена (не уверен - ставь nop :))
Нету у них таких мажорных отличий. MIPS более зрелый, но унаследовал много странного. Но в общем то же самое.
Оба статических, оба низкопотребляющих при одних и тех же техпроцессах. Кора MIPS меньше и может быть сделана по более слаюому техпроцессу, более дешевой, если энергопотребление не важно. В Арме переизголялись с разными instruction set в разных режимах именно из-за RISC'овости - не захотели плодить уродцев типа x86. На самом деле MIPS интереснее с Power сравнивать,
потому как родственники. И да, Power тоже RISC.
У всех RISC есть один недостаток, он пристутствует у них всех и отсутствует у x86 - малое количество инструкций на мегагерц. Вспомним падение DEC Alpha (AXP). Вот как только в арме победят это недостаток - сразу можно будет сказать все, не RISC. А пока я повода это говорить не вижу.
Нет. В арме есть микрокодовые инструкции, которые декодируются в несколько тактов, а MIPS - честный, классический RISC с примитивным декодером (т.е. на этапе декодирования читается содержимое регистров).
Нету у них таких мажорных отличий.
Ты thumb видел вообще? RISC-ом это можно назвать только по очень сильной пьяни. x86 тогда тоже RISC.
У всех RISC есть один недостаток, он пристутствует у них всех и отсутствует у x86 - малое количество инструкций на мегагерц.
Что за бред? Высокий ILP в современных x86 за счет OoO и большого числа functional units достигается. На уровне чистого RISC-ядра (uops).
Декодируются инструкции всегда одинаково что на ARM, что на MIPS.
Фетчи из памяти на обеих архитектурах выполняются непредсказуемое время. Операции переходов - тоже. Другой разницы нет. Thumb - урезанный instruction set, сделанный как костыль из-за того, что ARMv4/5 - cache-hungry, неэффективны при использовании кэша. Меньший размер кода инструкций давал прирост к производительности несмотря на то, что такой код выполняется медленнее. Советую на эту тему почитать рассылки maemo за 2005-2006-е годы, там есть подробные обсуждения. Thumb - неполноценный instruction set, он не содержит всех необходимых инструкций. Он в той же степени RISC, что и ARM instruction set, хотя и убог. Thumb2 был сделан для контроллеров, когда ARM захотел иметь разные корки для мелкоконтроллеров и процессоров. Thumb2 дает более плотный код, который более удобен для чтения без кэша. Он убог и страшен, но дело свое делает. Основная убогость - переменный размер инструкций, что усложняет декодер. Так же медленный при исполнении как и thumb. Единственное положительное качество - код занимает меньше места, но на больших армах его совсем не пользуют. Некторые продолжают использовать thumb interworking по привычке, но я никого реально использующих thumb2 на armv7a не видел. На armv7a так же нет смысла использовать и thumb, так как тех проблем, которые были на v4/v5 там нет.
Декодируются инструкции всегда одинаково что на ARM, что на MIPS.
Нет.
Декодер MIPS, как я уже говорил, тривиальный и не делает ничего кроме извлечения регистров. Декодер ARM сложнее и может из одной инструкции высрать в pipeline несколько микроинструкций.
А ты не бери соперника «того же возраста». Бери самые актуальные решения от каждой архитектуры.
С какой радости? И да, ядро от ingenic на 3 года старше ARM926EJ-S (не говоря о том, что базируется на ядре образца 90-го года), при этом - производительность на такт такая же если не выше.
Я полностью согласен с pitman, в том, что новые чипы MIPS смогут занять достойное место в виде микроконтроллеров.
Только почему-то на мипс архитектуре полноценные процессоры идут (от роутеров до суперкомпьютеров), а арм - бодается в сфере МК и мобильников.
Но пока что на смартах — ARM. А на MIPS всего несколько мобильных устройств, они жутко тормозят и под них очень мало нормального ПО. Загадка?
Девайсы на мипс работают вполне себе шустро. Быстрее аналогичных в данной категории на армах. Насчет ПО - печаль, да, хотя уже пару лет как NDK под мипс на андроиде искаропки, потихоньку насбирают софта.
Декодер у арма ничем не сложнее, и нету там никаких микрокодов.
Нету у арма никаких инструкций, которые бы этого заслуживают.
Иначе не было бы этих костылей с cpx, vfp, neon и прочего.
Посмотри на динозавров (Power, MIPS) и на ARM. Они делают все то же самое, одинаковым образом. Везде есть небольшие отклонения от канонического RISC, но нет таких, чтобы они потеряли право называться RISC'ами. Вся конкуренция там не архитектурная, а идет за счет обвесов и нашлепок.
Что за бред? Высокий ILP в современных x86 за счет OoO и большого числа functional units достигается. На уровне чистого RISC-ядра (uops).
Ну вот и нет ни одного RISC'а, который бы делал так же.
Вот прикинь, AXP на 500 мегагерц из-за разности архитектур с
x86 работало в 5 раз медленнее, жрало в 4 раза больше памяти (дорогой памяти) и хавало столько же электричества, сколько
x86 тех лет на 500 мегагерц. Ну и это стало ее фатальным недостатком. 100%-й RISC это не всегда добро, даже 64-битный.
Сейчас RISC может всех зарулить только количеством ядер и способностью жрать меньше электричества на сравнимых с x86 задачах. ARM специализируется именно на этом.
MIPS и Power делали ставку на мощные системы, MIPS32 ушел весь на контроллеры (хотя оно вполне тянуло мощу на компах типа DECstation 500/200, который стоит у меня дома), MIPOS64 мало кто живым видел кроме как SGI (не досталось мне в своё время), но там были проблемы похлеще - 3D-акселерированная графика работала медленнее, чем софтовый рендер из-за тормозной шины. Power тормозили с определением, Freescale торгует своей особой Power-based архитектурой, но там очень дорогие и нишевые решения :( в результате, с отказом Apple от Power, Power исчез почти совсем, есть небольшое количество клиентов IBM, и всё. Так и получилось, что из живых RISC только ARM и остался.
Угу, в общем-то да. Армы правда ударились в суперскалярность с внеочередным исполнением - в итоге получился почти х86 (по производительности, а также потреблению - А15 таки жрут неприлично много), но арм.
Ну вот и нет ни одного RISC'а, который бы делал так же.
Ты бредишь. Смотри на Power6, там этих юнитов как дураков на митинге.
Сейчас RISC может всех зарулить только количеством ядер и способностью жрать меньше электричества на сравнимых с x86 задачах.
x86 - это RISC, обвязанный жирным декодером для легаси-инструкций. Если убрать декодер и кодировать сразу в uops, скорость будет не меньше. 80% инструкций и так однозначно в одну uop раскрываются. Ты, похоже, вообще ни хрена в архитектуре CPU не понимаешь.
Че? Cortex-A15 это вполне себе armv7. Не такое оно и OoO - там три целочисленных юнита и один плавучий. В x86 запросто в два раза больще юнитов может быть.
Ну это только те, которые Cortex-A, потому как ARMv5te, типа ARM926EJ-S, на которых моё развитие остановилось, таки просто fetch/decode/execute. С Cortex-A пока на нужном уровне поработать не дали. Ща накачу и пойду наверстывать упущенное.