文章目录
strap pin 介绍
在系统级芯片(SoC)设计中,“strap pin”(或称为"strap")是一种特殊类型的引脚,它用于在SoC的启动或复位阶段设置特定的硬件配置或模式。这些设置通常是非易失性的,可以在SoC的后续操作期间保持不变。Strap pins通常由外部电阻、跳线或开关设置,以便在SoC上电前选定特定的配置选项。
Strap pins对于ARM架构的SoC同样适用。在ARM基础的SoC中,strap pins可能用于控制以下方面:
-
引导模式(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启动,且启动的时候必须经过安全流程,涉及加解密钥。
-
内存配置(Memory Configuration)
- 设置系统内存的大小、类型和配置,例如,DDR类型、总线宽度或内存映射。
-
接口模式(Interface Mode)
- 选择不同的通信接口和协议,例如USB、Ethernet、PCIe等是否激活,以及它们的操作模式。
-
时钟源选择(Clock Source Selection)
- 决定系统时钟源是使用外部晶振、内部振荡器还是通过PLL进行配置。
-
操作参数(Operating Parameters)
- 设置电源序列、电压参数等关键操作条件。
-
调试选项(Debug Options)
- 使能或禁用调试端口,如JTAG或其他专有接口,以及其它与安全相关的设置。
-
其他特定功能(Miscellaneous Functions)
- 针对特定用途或应用的配置,如视频输出模式、性能调整等。