beagle bone black 中的 SYS_BOOT 寄存器是什么? SYS_BOOT[4:0] , SYS_BOOT[15:0] , SYS_BOOT[15:14] 寄存器的意义是什么?
What are SYS_BOOT registers in beagle bone black ? What is the significance of SYS_BOOT[4:0] , SYS_BOOT[15:0] , SYS_BOOT[15:14] registers?
我对这些寄存器有一点了解,它们在启动期间从 sys_pin 电压打开或重置时获取值,当按下或释放 S2 键时值会发生变化。我基本上有两个问题。
- 值是如何存储的(它是否维护像SYS_BOOT[15:0] SYS_BOOT[15:1][=29=这样的数组][15:2] ....)
- 系统还会读取存储在 SYS_BOOT[4:0] 中的值,并根据它创建启动设备列表。现在启动设备列表是什么 ??
请帮我解释清楚。
Beaglebone的AM335x芯片上的Boot ROM内存中包含一小段bootloader代码,以下简称ROM代码。上电或复位后,此 ROM 代码开始执行并检查 16 个 SYSBOOT 引脚 [0:15] 的状态。这些引脚实际上是处理器数据表中的 LCD_DATA0 - LCD_DATA15 引脚。前 5 个 SYSBOOT 引脚确定引导设备的顺序(从哪个设备开始引导),而其余引脚有其自己的含义。有关完整详细信息,请参阅 AM335x TRM https://mythopoeic.org/BBB-PRU/am335x_techref.pdf 中的 Table 26-7。下面,您可以看到前 5 个 SYSBOOT 引脚 (SYSBOOT[4:0]) 的每种组合的启动顺序(启动设备列表)。
由于这些引脚也用于连接 LCD,因此它们仅在 ROM 代码执行期间用作 SYSBOOT 引脚,通常为 pulled-up/down,其中一些可以 set/reset 使用 switches/buttons(即Beaglebone Black 上的按钮如何从外部 SD 卡而不是内部 eMMC 启动)。
ROM 代码维护可用引导设备列表(可通过前 5 个 SYSBOOT 引脚配置)并尝试从列表中的第一个设备引导。如果引导失败,它会尝试下一个,依此类推。这是 ROM 代码的启动顺序。
我对这些寄存器有一点了解,它们在启动期间从 sys_pin 电压打开或重置时获取值,当按下或释放 S2 键时值会发生变化。我基本上有两个问题。
- 值是如何存储的(它是否维护像SYS_BOOT[15:0] SYS_BOOT[15:1][=29=这样的数组][15:2] ....)
- 系统还会读取存储在 SYS_BOOT[4:0] 中的值,并根据它创建启动设备列表。现在启动设备列表是什么 ??
请帮我解释清楚。
Beaglebone的AM335x芯片上的Boot ROM内存中包含一小段bootloader代码,以下简称ROM代码。上电或复位后,此 ROM 代码开始执行并检查 16 个 SYSBOOT 引脚 [0:15] 的状态。这些引脚实际上是处理器数据表中的 LCD_DATA0 - LCD_DATA15 引脚。前 5 个 SYSBOOT 引脚确定引导设备的顺序(从哪个设备开始引导),而其余引脚有其自己的含义。有关完整详细信息,请参阅 AM335x TRM https://mythopoeic.org/BBB-PRU/am335x_techref.pdf 中的 Table 26-7。下面,您可以看到前 5 个 SYSBOOT 引脚 (SYSBOOT[4:0]) 的每种组合的启动顺序(启动设备列表)。