Почему мк не делают многоядерными (n-ое количество программируемых по отдельности кристаллов в один корпус), ведь это даст больше производительности при неизменной тактовой частоте? ESP32 сделали почти двухядерным (1 ядро программируемое,2 отвечает за WiFi Bluetooth и т.д.), а почему не делают полностью многоядерные мк? Не то чтобы мне ардуины не хватало, просто интересно.
Делают, но обычно это уже Application Processor / SoC. Для мелочи в этом нет никакого смысла, а если нужна большая параллельность - добро пожаловать в мир FPGA.
Простите! А Вы какие-нибудь книжки читать пробовали? И кто активирует (включает) эти самые ядра? Вы сами на системном уровне что-то делали? Ну и как?
Я,похоже, не правильно понял понятие многоядерности. Я под многоядерностью понимал некоторое количество мк(ядер) в одном корпусе, которые независимо от друг друга исполняют свои программы (или части если программа "распараллеливаеться") и если необходимо обмениваются информацией. Если что не так поправьте.
...Простите, но доступ... допустим к памяти каждого из ядер Вы делали (понятное дело ПДП)?. А если на каждое ядро приходиться по своей памяти... то это специфические изделия. Ну прям как в одном системном блоке несколько самостоятетьных и независимых друг от друга компьютеров.
Как я понял: 1) многоядерные мк существуют 2) эти мк имеют общую память на все ядра 3) штука очень сложная и понять как с ними работать без практики нереально и не нужно—вряд ли когда-либо придётся их использовать 4) если необходимо больше производительности проще взять более мощный мк (если такой имеется,а если нет, то поставить на каждый датчик по мк и на нем приводить данные к такому виду чтобы главный мк начинал их сразу обрабатывать)
Пример Parallax Propeller. 8ми ядерные мк. Ограничены в периферии, исполняют программу из внешней памяти. Якобы все ядра работают параллельно...
Ну и эти паралаксы вроде как не плохи для работы с аудио и видео. Ну и опять же это специфические микроконтроллеры и вряд ли их можно ставить повсеместно.