Pull to refresh
344
46
Юрий Панчул / Yuri Panchul @YuriPanchul

Проектировщик CPU, GPU, сетевых микросхем

Send message
Вы смешиваете 16-битные proprietary микроконтроллеры Microchip с их-же 32-битными микроконтроллерами на основе лицензируемых ядер MIPS.

PIC32MZ EF — это не PIC16F884A. Это микроконтроллер на основе 32-битного ядра MIPS M5150 (развития предшествующих MIPS microAptiv UP / MIPS M14Kc), которые не только находятся в одном классе я микроконтроллерными ядрами ARM Cortex M3 / M4, но и превосходят их по ряду параметров (наличие кэшей, лучшая производительность).

*** К чему вся эта «фундаментальность», если она не приносит денег (а если она не приносит денег, значит она никому не нужна, никто её не покупает). ***

Затем, что сейчас в России становится на ноги индустрия разработки и собственных современных микросхем (см. напр. http://elvees.ru/home/index.php?id=17&tx_ttnews%5Btt_news%5D=766&cHash=89a2b4a4dba86aa5dac54e69ffa45d7a, и для таких проектов нужно понимание и низкоуровневого программирования, и разработки SoC (а у ARM нет эквивалента пакета MIPSfpga — см. коммент выше), поэтому ARM объективно хуже для изучения разработки хардверной части в университете.

*** Зато те, кто программировал на C# и Java в свободное от учебы время уехали по разным Америкам почти сразу.К чему вся эта «фундаментальность», если она не приносит денег (а если она не приносит денег, значит она никому не нужна, никто её не покупает).***

Я работаю в Калифорнии 25 лет и могу вам сказать, что квалифицированный разработчик микросхем и систем на кристалле на уровне Verilog (RTL designer — Register Transfer Level) зарабатывает как правило больше, чем C# и Java программисты. Кроме этого, когда вокруг сотни тысяч людей программируют вебсайты, это не так интересно, а разработка специализированных SoC — это нечто другое.

*** Чем обусловлен выбор места проведения курса? ***

Инициативой вуза, который старается создать у себя центр таких технологий + личные контакты.

В данном случае курс платный, так как трудно было найти спонсора бесплатного курса. В России спонсоров находить проще — есть как российские коммерческие компании разрабатывающие чипы, так и международные компании, получающие доход с российского рынка.
*** Зачем нужны SoC c софт процессорами? ***

Потому что современные микроконтроллеры, такие как Microchip PIC32MZ, STM32 и другие тоже разрабатываются на основе синтезированного soft core (т.е. ядра написанного на Verilog). Разница между микроконтроллером выпущенным на фабрике и системой, реализованной в плисе — это в основном разница в маршруте разработки:

Verilog -> Synopsys Design Compiler -> Synopsys IC Compiler -> GDSII -> фабрика -> микроконтроллер
(или соответствующий маршрут от Cadence)

Verilog -> синтез, размещение, трассировка в Altera Quartus II или Xilinx Vivado -> конфигурация ПЛИС / FPGA

При этом для выпуска коммерческого чипа по первому маршруту требуется начальная плата миллион долларов, а по второму маршруту — студенческая плата за сто долларов.

Ясно, что учить студентов проектировать SoC (одновременно с их программированием) стоит по второму маршруту.

Специализированные SoC сейчас проектируют не только крупные компании типа Qualcomm, но и даже стартапы — для проектов в Internet of Things.
Да, все материалы мы выложим, но большую часть слайдов можно уже сейчас загрузить с

https://community.imgtec.com/university/resources/

http://silicon-russia.com/public_materials/2015_11_14_mipsfpga_related_presentations/

и (более старые) http://panchul.com/dropbox/
*** Пользователям давно уже по барабану, что там под капотом — 8 битный микроконтроллер или MiniATX компьютер на Windows 10. Пользователю главное, чтобы машина работала, робот сам шагал, а злые птички запускались из рогатки. За это платят деньги. ***

Это так, только если вы гововорите о высокоуровневом программировании.

Большая часть семинара — не о программировании (ARM или MIPS), а о разработке системы на кристалле, т.е. главным пунктом является день 4 с MIPSfpga, где интегрируется микропроцессорное ядро на верилоге с памятью и устройствами ввода-вывода, после чего эта система синтезируется для реализации в ПЛИС / FPGA.

Введеление в Verilog и программирование на ассемблере делаются сначала, чтобы часть с MIPSfpga могли сделать даже люди с нуля, а часть с PIC32MZ вводится в конце, так как PIC32MZ EC использует ровно то же самое процессорное ядро MIPS micrpAptiv UP (а PIC32MZ EF — MIPS M5150), что и MIPSfpga, т.е. слушатель получает возможность сравнить систему изнутри и снаружи, в виде готового микроконтроллера.

У ARM точного аналога MIPSfpga вообше нет, так как пакет от ARM под названием Design Start содержит ядро ARM Cortex M0 в obfuscated нечитаемом виде, его нельзя менять, добавлять в него новые инструкции, смотреть как изменения в железе влияют на производительность.

Конечная цель семинаров — чтобы в России образовалось больше команд типа ELVEES-NeoTek и Байкал Электроникс, которые бы разрабатывали чипы встроенных специализированных процессоров.

См. пресс-релиз от ЭЛВИС-НеоТек:

elvees.ru/home/index.php?id=17&tx_ttnews%5Btt_news%5D=766&cHash=89a2b4a4dba86aa5dac54e69ffa45d7a

«ЭЛВИС-НеоТек», проектная компания РОСНАНО, входящая в группу компаний «ЭЛВИС», и компания Imagination Technologies передали в производство семантический процессор ELISE (ELVEES Image Semantic Engine) – мультиплатформенную систему-на-кристалле (СнК) нового поколения, разработанную по технологическому процессу 28 нм, которая предназначена для создания систем для быстрорастущих мировых рынков видеоаналитики: умные города, ритейл, интернет вещей, дополненная реальность, мультимедиа и т.д.

На основе чипа ELISE могут создаваться IP-камеры с функциями видеоаналитики на борту, мультимедийные устройства и мобильные гаджеты, системы помощи водителю (ADAS), устройства связи и навигации, роботы.

Для СнК ELISE компания «ЭЛВИС-НеоТек» приобрела права на использование широкой линейки IP-модулей и платформ Imagination:


Высокопроизводительный двухъядерный процессор MIPS Warrior P5607, а также процессор MIPS InterAptiv, позволяющий работать с несколькими потоками, и энергоэффективный процессор MIPS M5150, которые обеспечивают значительное повышение скорости работы приложений видеоаналитики и обработки звука, требующих большой вычислительной мощности.


Большая часть семинара — не о программировании (ARM или MIPS), а о разработке системы на кристалле, т.е. главным пунктом является день 4 с MIPSfpga, где интегрируется микропроцессорное ядро на верилоге с памятью и устройствами ввода-вывода, после чего эта система синтезируется для реализации в ПЛИС / FPGA.

Введение в Verilog и программирование на ассемблере делаются сначала, чтобы часть с MIPSfpga могли сделать даже люди с нуля, а часть с PIC32MZ вводится в конце, так как PIC32MZ EC использует ровно то же самое процессорное ядро MIPS micrpAptiv UP (а PIC32MZ EF — MIPS M5150), что и MIPSfpga, т.е. слушатель получает возможность сравнить систему изнутри и снаружи, в виде готового микроконтроллера.

У ARM точного аналога MIPSfpga вообше нет, так как пакет от ARM под названием Design Start содержит ядро ARM Cortex M0 в obfuscated нечитаемом виде, его нельзя менять, добавлять в него новые инструкции, смотреть как изменения в железе влияют на производительность.

Конечная цель семинаров — чтобы в России образовалось больше команд типа ELVEES-NeoTek и Байкал Электроникс, которые бы разрабатывали чипы встроенных специализированных процессоров.

См. пресс-релиз от ЭЛВИС-НеоТек:

elvees.ru/home/index.php?id=17&tx_ttnews%5Btt_news%5D=766&cHash=89a2b4a4dba86aa5dac54e69ffa45d7a

«ЭЛВИС-НеоТек», проектная компания РОСНАНО, входящая в группу компаний «ЭЛВИС», и компания Imagination Technologies передали в производство семантический процессор ELISE (ELVEES Image Semantic Engine) – мультиплатформенную систему-на-кристалле (СнК) нового поколения, разработанную по технологическому процессу 28 нм, которая предназначена для создания систем для быстрорастущих мировых рынков видеоаналитики: умные города, ритейл, интернет вещей, дополненная реальность, мультимедиа и т.д.

На основе чипа ELISE могут создаваться IP-камеры с функциями видеоаналитики на борту, мультимедийные устройства и мобильные гаджеты, системы помощи водителю (ADAS), устройства связи и навигации, роботы.

Для СнК ELISE компания «ЭЛВИС-НеоТек» приобрела права на использование широкой линейки IP-модулей и платформ Imagination:


Высокопроизводительный двухъядерный процессор MIPS Warrior P5607, а также процессор MIPS InterAptiv, позволяющий работать с несколькими потоками, и энергоэффективный процессор MIPS M5150, которые обеспечивают значительное повышение скорости работы приложений видеоаналитики и обработки звука, требующих большой вычислительной мощности.



*** Большая часть того, что вы предлагаете, дается в университетской программе, даже в средненьком вузе.
html-теги ***

В последнее время ситуация в России улучшилась, но даже 5 лет назад во многих программах были дыры, например были программы с цифровой схемотехникой, но без использования Verilog или VHDL, или скажем с архитектурой (ассемблером), но без микроахитектуры (структуры конвейера). В Украине и Казахстане эти дыры тоже сейчас постепенно закрывают.
*** а вот ограничение кругозора одним MIPS — надругательство над студентом ***

Никто ничего не ограничивает — студенту нужно владеть несколькими архитектурами. Это вы хотите всех заставить изучать только то, что используете вы лично.

*** писать ещё один курс на основе STM32 — уже моветон, их столько написано...(в том числе и на Хабре) ***

Приведите ссылку на курс на основе STM32, в котором разбирается не только как подсоедить какой-нибудь SPI, но и работу микроконтроллера с RTOS и эффекты конвейера на производительность.

*** а вот не зная STM, но зная кэши от PIC32, до «кэша» в виде «зелени» доберется он не скоро… ***

Работа кэша процессора — необходимый элемент образования инженера.

И если вы считаете, что якобы на PIC32 работы нет, то почему семинары Microchip Technology в Питере собирают кучу народа?

Как всегда под такой статьей первый коммент — от поклонника ARM и STM32 который кипит праведным негодованием, что MIPS и PIC32MZ вообще смеют существовать.

Прежле всего, если вам хочется курса на основе STM32 — напишите его сами и опубликуйте пост на Хабре.

Далее, в STM32 F4 / ARM Cortex M4, которые по классу соответствуют MIPS M5150 в PIC32MZ EF,
в STM32 F4 / ARM Cortex M4 нет кэшей, нет хардверной виртуализации и ниже производительность. А вот в MIPS M5150 в PIC32MZ EF кэши и хардверная виртуализация есть. И TLB MMU.

Кэши студентам учить надо или не надо?
Приведите пример программы, которая «не действует по шаблонам». Все программы — это цепочки из команд процессора типа типа add r1, r2, r3 или там beq r4, r5, label или lw r5, 10 (r4). Просто у одних шаблон большой, а у других — поменьше.
Это наивный аргумент. Когда нейросети реализуются на компьютере общего назначения, пишется программа на Си, которая транслируется в команды процессора и в конечном итоге нейросеть — это тоже последовательность инструкций типа add r1, r2, r3 или там beq r4, r5, label, работабщего на процессоре общего назначения — конечном автомате.

Даже когда вы реализуете нейросеть не на фон-нейманновском процессоре, а на ПЛИС/FPGA, где все паралелльно — это все равно не поможет — это тоже конечный автомат.

Попытки каким-то образом навалить побольше одеял на голую истину, что нет никаких фактов в пользу возможности возникновения сознания в конечном автомате — это не способствует просветлению.

Кстати, вы в курсе, что в 1980-е тоже были нейросети? Я аккурат в то время был студентом ИИ группы в МФТИ и нейросети как раз входили в локальную моду (потом правда о них забыли на 20 лет, а сейчас снова вспомнили).
Платы с STM32 безусловно очень дешевы и для рынка «самоделкиных» против них идти трудно. Но рынок образовательных программ для университетов — это не то же самое, что и рынка «самоделкиных». Например, покажите мне аналог курса Connected MCU, не на на основе Microchip PIC32MZ EF, а на основе STM32. Курс Connected MCU (см. https://habrahabr.ru/post/282001/ ) создан для обучения программированию микроконтроллеров и содержит не только традиционное мигание лампочками и соединения с простой периферией, но и материалы про RTOS, элементы микроархитектуры встроенного процессора и лабы по наблюдению поведения кэшей.
Если никто еще не понял, что такое сознание, то как вы можете утверждать, что это не часть человеческого интеллекта? Может это его центр, назаменимая часть.
Конечно сложнее. Квантовая механика атомов сложнее чем правила конструирования конечных автоматов на уровне регистровых передач.

Но сложность к делу не относится. Существует какая-нибудь хрень, которую ученые еще просто не нашли, и которая и объясняет сознание.
Это очень интересно. А можете показать пример использования Matlab/Simulink для роботов?
Спасибо. Ну как контроллер с RTOS и SPI, I2C и DMA плата Digilent chipKIT Wi-FIRE лучше всего в списке. Но есть в робототехнике всякие не-real-time задачи сложного семантического распознавания образов, которые можно было бы решать на более высокопроизводительном встроенном компьютере типа MIPS Creator ci20? Типа чтобы сделать связку из Digilent chipKIT Wi-FIRE и MIPS Creator ci20?

Information

Rating
133-rd
Location
Sunnyvale, California, США
Date of birth
Registered
Activity