Что такое регистры SYS_BOOT черного цвета? Какое значение имеют регистры SYS_BOOT [4: 0], SYS_BOOT [15: 0], SYS_BOOT [15:14]? - PullRequest
0 голосов
/ 06 ноября 2019

У меня есть небольшое представление об этих регистрах, они получают значения при включении или сбрасывают напряжение sys_pin во время загрузки, значения меняются, когда клавиша S2 нажата или отпущена. У меня есть два вопроса в принципе.

  1. Как хранятся значения (поддерживает ли он массив, такой как SYS_BOOT [15: 0] SYS_BOOT [15: 1] SYS_BOOT [15: 2] ....)
  2. Система также считывает значение, хранящееся в SYS_BOOT [4: 0], и в зависимости от этого создает список загрузочных устройств. Теперь что такое список загрузочных устройств ??

Пожалуйста, помогите мне с ясным и простым объяснением.

1 Ответ

0 голосов
/ 11 ноября 2019

Память загрузочного ПЗУ на микросхеме AM335x от Beaglebone содержит небольшой код загрузчика, который в дальнейшем называется кодом ПЗУ. После включения или сброса этот код ПЗУ начинает выполнение и проверяет состояние 16 выводов SYSBOOT [0:15]. Эти контакты на самом деле являются выводами LCD_DATA0 - LCD_DATA15 в спецификации процессора. Первые 5 контактов SYSBOOT определяют порядок загрузочных устройств (с какого устройства загружаться первым), в то время как остальные контакты имеют свое собственное значение. Для получения полной информации см. Таблицу 26-7 в AM335x TRM https://mythopoeic.org/BBB-PRU/am335x_techref.pdf. Ниже вы можете увидеть последовательность загрузки (список загрузочных устройств) для каждой комбинации первых 5 контактов SYSBOOT (SYSBOOT [4: 0]),enter image description here Поскольку эти контакты также используются для сопряжения с ЖК-дисплеем, они функционируют как контакты SYSBOOT только во время выполнения кода ПЗУ и, как правило, поднимаются / опускаются, а некоторые из них можно установить / сбросить с помощьюпереключатели / кнопки (именно так работает кнопка на Beaglebone Black для загрузки с внешней SD-карты вместо внутренней eMMC). Код ПЗУ поддерживает список доступных загрузочных устройств (настраивается с помощью первых 5 контактов SYSBOOT) и пытается выполнить загрузку с первого устройства из списка. Если загрузка не удалась, он пытается следующий и так далее. Вот последовательность загрузки кода ПЗУ. enter image description here

...