JEDEC-106 ID 编码

一、是什么?

JEDEC-106 是 JEDEC 定义的一种设备标识编码标准,用于为半导体器件分配唯一的标识符。该编码通过特定的字节序列标识制造商、设备型号、版本等信息。其核心目的是:

  1. 标识制造商:通过编码中的字段区分芯片设计或制造厂商(例如 ARM、Intel、TI 等)。

  2. 设备类型和版本:标识具体器件型号及其修订版本。

  3. 兼容性管理:帮助工具链(如调试器、烧录器)或软件识别硬件特性。

二、具体实现

Cortex-M3 中的 JEDEC-106 ID

在 ARM Cortex-M3 中,JEDEC-106 ID 位于 PPB(Private Peripheral Bus)地址范围 0xE00FF000~0xE00FFFFF 的 4KB ROM 表中。该 ROM 表是 ARM 定义的设备识别与调试信息存储区,包含以下关键信息:

  • 芯片厂商 ID(如 ARM 的厂商编码)。

  • 设备类型(如 Cortex-M3 的型号标识)。

  • 修订版本号(芯片的版本信息)。

  • 其他调试/跟踪功能支持信息

开发者或调试工具可通过读取这些寄存器获取芯片的详细规格,以适配正确的驱动、调试协议或工具链配置。

三、存在意义

  • 统一标识:避免不同厂商使用私有编码导致混乱。

  • 工具兼容性:确保调试器(如 J-Link、ST-Link)能自动识别芯片并加载对应配置。

  • 供应链管理:在生产、测试环节快速验证器件来源和型号。

四、具体位置

ARMv7-M 基础设施 ID
ARMv7-M 架构的实现需支持 SCS(系统控制空间)FPB(闪存地址重定向断点单元)DWT(数据观察点与追踪单元)ITM(指令追踪宏单元) 模块,以及一个 ROM 表(详见表 C1-3,第 C1-4 页)。其 CoreSight 架构编程模型 定义于文献 [3],每个 4KB 寄存器空间划分为以下四个部分:

  • 组件 ID(偏移地址 0xFF0 至 0xFFF)

  • 外设 ID(偏移地址 0xFD0 至 0xFEF)

  • CoreSight 管理寄存器(偏移地址 0xF00 至 0xFCF)

  • 设备专用寄存器(偏移地址 0x000 至 0xEFF)

对于 ARMv7-M 架构:

  • ROM 表 必须包含组件 ID 寄存器;

  • DWTITMFPB 和 TPIU 模块需实现 CoreSight 管理寄存器的锁定访问机制

  • 其余所有 ID 寄存器 和 管理寄存器 均为保留区域,建议遵循 CoreSight 规范或设计为 RAZ(读取为零),以确保调试工具链的通用支持。

表 B-1 组件与外设 ID 寄存器格式

地址偏移ATGDST符号名称说明 
0xFFC0x000000B10XB10xB10xB1CID3组件 ID3前导码(固定值)
0xFF80x000000050X050x050x05CID2组件 ID2前导码(固定值)
0xFF40x000000X00X100x100x10CID1组件 ID1[7:4] 位:组件类别
[3:0] 位:前导码
0xFF00x0000000D0XD0XD0xDCID0组件 ID0前导码(固定值)
0xFEC0x000000YY000PID3外设 ID3[7:4] 位:RevAnd(次版本号)
[3:0] 位:非零表示客户修改模块
0xFE80x000000YX0XB0XD0XAPID2外设 ID2[7:4] 位:主版本号
[3] 位:1 表示 JEDEC 分配 ID
[2:0] 位:JEP106 ID 编码 [6:4]
0xFE40x000000XY0XB40X180X4PID1外设 ID1[7:4] 位:JEP106 ID 编码 [3:0]
[3:0] 位:部件号 [11:8]
0xFE00x000000YY0xC40X210X40PID0外设 ID0部件号 [7:0]
0xFDC0x00000000000PID7外设 ID7保留
0xFD80x00000000000PID6外设 ID6保留
0xFD40x00000000000PID5外设 ID5保留
0xFD00x000000YX0x40X70PID4外设 ID4[7:4] 位:4KB 计数
[3:0] 位:JEP106 延续码

厂商JEP106 IDContinuation Code寄存器字段示例
ARM0x23B0 → 1 → 2PID2[2:0]=011, PID1[7:4]=1011
NXP0x000PID2[2:0]=000, PID1[7:4]=0000
STMicroelectronics0x200PID2[2:0]=000, PID1[7:4]=0010
Texas Instruments0x490PID2[2:0]=100, PID1[7:4]=1001
兆易创新0x517PID2[2:0]=101, PID1[7:4]=0001
雅特力0x3B4PID2[2:0]=011, PID1[7:4]=1011

关键术语解析

英文缩写/术语中文翻译技术说明
SCS系统控制空间System Control Space,包含 NVIC、SysTick 等关键寄存器
FPB闪存地址重定向断点单元Flash Patch and Breakpoint Unit,用于代码修补和硬件断点
DWT数据观察点与追踪单元Data Watchpoint and Trace,支持变量监控和程序流追踪
ITM指令追踪宏单元Instrumentation Trace Macrocell,用于 printf 式调试和事件记录
ROM tableROM 表存储调试组件地址映射的只读表
CoreSight compliant符合 CoreSight 规范寄存器布局需与 ARM 调试架构兼容
RAZ读取为零Read-As-Zero,未实现寄存器应返回 0
TPIU追踪端口接口单元Trace Port Interface Unit,负责将追踪数据导出到外部探头

参考:

  1. ARM® v7-M Architecture Reference Manual
  2. ARM CoreSight Architecture Specification
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值