Pull to refresh

Comments 18

На сколько в среднем падает производительность в lockstep при работе из какой-нибудь общей (разделяемой) памяти?

Хороший вопрос.
Проверить это проблематично, так как в спеке на SoC FC7300F8MDT не указаны регистры и битовые поля для отключения lockstep режима.

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

А в случае использования задержки (временного сдвига) тоже не падает? Получается проверочный модуль хранит все изменения на этот временной сдвиг и сравнивает результат первого и второго?

Да, как на блок-схеме в статье - буферы на требуемое кол-во тактов для входных/выходных сигналов ядра. Обратите внимание на этот момент: сравниваются не внутренние состояния ядер, а их внешние сигналы, они куда более обозримы/легкодоступны. Сами ядра рассматриваются как "чёрные ящики", которые стартуют из одинаковых внутренних состояний (обеспечивается общим сбросом), далее в них подаётся одна и та же последовательность сигналов, а они должны выдавать одинаковые реакции на неё. Если в какой-то момент сбивается внутреннее состояние, рано или поздно это выходит наружу.

Мне кажется, надо три ядра, иначе будет как с часами: если у вас есть часы, вы можете узнать, который час, но если у вас двое часов, то вы никогда не будете уверены в результате

Забавно, как в примере указывается семейство MPC57x, а в ссылке на чип - SPC58

(первый - еще со времен Freescale, второй - уже NXP)

И от PowerPC NXP тоже уже отказались, их заменил ARM S32G.

Еще крупный известный индустриально-автомобильный локстеп чип - Tricore TCxxx

И от PowerPC NXP тоже уже отказались, их заменил ARM S32G.

Почему они так поступили?

мое понимание - издержки от поддержки PowerPC слишком высоки. NXP сфокусировалось на интеграции IP компонентов, и по сути отдали полностью разработку непосредственно ядра ARM.

PowerPC, судя по всему, остался только в радстойких процах

А SPC58NN84E7RMHBR сейчас где-н используется?
Но же e200z4 (PowerPC) и не радиационно стойкий.

а, ошибочка, SPC вообще у ST (причем до этого у них не было PowerPC, насколько я помню).
на сайте статус Active, значит, рекомендован к использованию
как минимум в BDC BMW используется.

Существуют ли российские микроконтроллеры с функцией lockstep?

Миландр К1986ВК01. Согласно документации, два ядра ARM Cortex M4F могли работать либо независимо (DualCore), либо в режиме LockStep (вроде, настаивалось boot-опциями).

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

Миландру запретили производить МК с ядрами ARM.

Пусть тогда разрабатывают MCU c RISC-V как Микрон (K1948BK018 )

Миландру запретили производить МК с ядрами ARM.

А НПЦ ЭЛВИС не запрещали ARM ядра встраивать? У них же ELIoT с двумя ARM Cortex-M33.

Есть ещё Техасский инструментальный завод, и их серия TMS570, тоже умеет lock-step

Техасский инструментальный завод

А STMicroelectronics получается Полупроводники и Микроэлектроника им. Томсона. (ПиМ им. Томсона).

Sign up to leave a comment.

Articles