Перейти к содержанию
    

Китайский Zynq? (нет второго ядра ARM)

16 часов назад, Dimidrol сказал:

Думаю, следует поделится некоторой информацией в продолжение данной темы. Редко, но у нас начали появляться новые платы с обрубленным вторым ядром.

Спасибо, информация интересная!

На этих платах описываемый 7 бит в FUSE_CNTL действительно установлен? На платах с двумя и одним ядром стоят чипы из одной партии (LOT ID)?

Насколько я понимаю, стандартного партномера для 045 без второго ядра нет существует?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

27 минут назад, Flood сказал:

Спасибо, информация интересная!

На этих платах описываемый 7 бит в FUSE_CNTL действительно установлен? На платах с двумя и одним ядром стоят чипы из одной партии (LOT ID)?

Насколько я понимаю, стандартного партномера для 045 без второго ядра нет существует?

Да, где ядра нет, там выставлена единица. Причем есть экземпляр с единственным выставленным битом, и это бит 7. И да, одноядерных 045 с завода не выпускают. Партии по закупке разные, не думаю что LOT ID совпадает.

Но! Важная информация. Ядро само по себе не лочится. Если убрать несколько проверок в коде загрузчика и в драйверах BSP, то программа на втором ядре все-равно выполняется. Т.е. самое неприятное после выставления бита, это то, что в SDK не будет возможности отладки данного ядра, т.к. судя по всему дебагер делает собственную проверку на одноядерность, вычитывая значение вышеуказанного регистра на ходу.

И как предположение, возможно таким образом можно использовать кристаллы, официально выпущенные с одним ядром, как двухядерные. Но это еще предстоит узнать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 10/1/2020 at 1:56 PM, Dimidrol said:

Да, где ядра нет, там выставлена единица. Причем есть экземпляр с единственным выставленным битом, и это бит 7. И да, одноядерных 045 с завода не выпускают. Партии по закупке разные, не думаю что LOT ID совпадает.

Но! Важная информация. Ядро само по себе не лочится. Если убрать несколько проверок в коде загрузчика и в драйверах BSP, то программа на втором ядре все-равно выполняется. Т.е. самое неприятное после выставления бита, это то, что в SDK не будет возможности отладки данного ядра, т.к. судя по всему дебагер делает собственную проверку на одноядерность, вычитывая значение вышеуказанного регистра на ходу.

Получили подобную проблему в половине экземпляров опытной партии. Такое ощущение, что FUSE_CNTL записан рандомным числом: уникальным для каждой из плат. Сравнение рабочих и нерабочих плат по AR65240 не показывает какой-либо разницы. 

Не поделитесь патчами FSBL и BSP, отключающими проверку FUSE_CNTL? Работает ли при этом Linux?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...