DDR内存访问API文档

概述

通过MCU对DDR4和DDR5内存SPD的读写操作接口,使用JSON格式进行请求。

支持的操作

  • 读取(read)
  • 写入(write)
  • 写保护(srswp, crswp)

字段说明

字段名字段类型必填适用操作字段说明
typestring所有操作DDR内存类型,可选值:ddr4ddr5
cmdstring所有操作操作类型,可选值:readwritesrswpcrswp
addrstring否(读写时必填)readwrite操作的字节地址,以十六进制表示(如 "0x00"
valuestring是(write 时必填)writesrswp要写入的数据,以十六进制字符串表示,多个字节可连续拼接(如 "AB12CD"
numberstring否(推荐填写)read要读取的字节数量,若为空则默认为 1

1. 读取

向指定的字节地址读取数据,起始地址0x00,则从0x00开始读取三个字节。

请求示例:

{
  "type": "ddr5",
  "cmd": "read",
  "addr": "0x00",
  "value": "",
  "number": "3"  
}

响应示例:

AB12CD

2. 写入

向指定的字节地址写入数据,起始地址0x00,写入值AB12CD,则从0x00开始写入三个字节。

请求示例:

{
  "type": "ddr5",
  "cmd": "write",
  "addr": "0x00",
  "value": "AB12CD",
  "number": ""
}

响应示例:

无响应

3. 设置写保护

DDR5请求示例:

{
  "type": "ddr5",
  "cmd": "srswp",
  "addr": "",
  "value": "2233",  //设置写保护(两组二位16进制值,转换为二进制对应Block位`15 ~ 0`
  "number": ""
}

DDR4请求示例:

{
  "type": "ddr4",
  "cmd": "srswp",
  "addr": "",
  "value": "0F",  //设置写保护(二位16进制值,转换为二进制对应Block位`3 ~ 0`
  "number": ""
}

响应示例:

OK

4. 解除写保护

  • 默认解除所有Block写保护。

请求示例:

{
  "type": "ddr5",
  "cmd": "crswp",
  "addr": "",
  "value": "",
  "number": ""
}

响应示例:

OK