【ARM64 ATF 系列 3.2 -- soc strap pin 介绍】

文章目录

strap pin 介绍

在系统级芯片(SoC)设计中,“strap pin”(或称为"strap")是一种特殊类型的引脚,它用于在SoC的启动或复位阶段设置特定的硬件配置或模式。这些设置通常是非易失性的,可以在SoC的后续操作期间保持不变。Strap pins通常由外部电阻、跳线或开关设置,以便在SoC上电前选定特定的配置选项。

Strap pins对于ARM架构的SoC同样适用。在ARM基础的SoC中,strap pins可能用于控制以下方面:

  1. 引导模式(Boot Mode)

    • 决定SoC在上电后从哪个源加载启动代码,例如,可以从内部ROM、SPI闪存、NAND/NOR闪存、网络或其他外部存储介质引导。
    boot method strap pin value vector address description
    ROM 00 0 默认启动方式
    ROM 01 0
    QSPI 10 0x7800_0000
    SRAM 11 0x8000_0000 向量表地址与与 SRAM 地址一样

    从上表中可以看到配置不同strap bin 启动方式是不一样的,通常还以添加一个安全启动,比如通过烧写某个efuse bit 之后系统只能从rom启动,且启动的时候必须经过安全流程,涉及加解密钥。

  2. 内存配置(Memory Configuration)

    • 设置系统内存的大小、类型和配置,例如,DDR类型、总线宽度或内存映射。
  3. 接口模式(Interface Mode)

    • 选择不同的通信接口和协议,例如USB、Ethernet、PCIe等是否激活,以及它们的操作模式。
  4. 时钟源选择(Clock Source Selection)

    • 决定系统时钟源是使用外部晶振、内部振荡器还是通过PLL进行配置。
  5. 操作参数(Operating Parameters)

    • 设置电源序列、电压参数等关键操作条件。
  6. 调试选项(Debug Options)

    • 使能或禁用调试端口,如JTAG或其他专有接口,以及其它与安全相关的设置。
  7. 其他特定功能(Miscellaneous Functions)

    • 针对特定用途或应用的配置,如视频输出模式、性能调整等。

猜你喜欢

转载自blog.csdn.net/sinat_32960911/article/details/134808618
soc