龙 芯 CPU DDR3 布 线 设 计 指 导 及 软 件 调 试 说 明 产 品 型 号 : 龙 芯 3A 2013 年 1 月 龙 芯 中 科 技 术 有 限 公 司
阅 读 指 南 本 手 册 是 龙 芯 3A 3B 及 2G 芯 片 的 内 存 软 硬 件 设 计 指 导, 分 为 两 部 分, 第 一 部 分 为 硬 件 设 计 的 指 导 及 布 线 约 束 文 件, 第 二 部 分 为 软 件 调 试 说 明, 适 用 于 针 对 龙 芯 3A 3B 及 2G 处 理 器 的 主 板 设 计 Page 2 of 20
修 订 历 史 文 档 编 号 : 文 档 更 新 记 录 文 档 名 : 龙 芯 CPU DDR3 布 线 设 计 版 本 号 V1.3 指 导 及 软 件 调 试 说 明 创 建 人 : 符 兴 建 创 建 日 期 : 2012.5.28 更 新 历 史 序 号. 更 新 日 期 版 本 号 更 新 人 更 新 内 容 1 2012.5.28 V1.0 符 兴 建 初 稿 完 成 2 2012.9.29 V1.1 符 兴 建 1 DDR 所 有 信 号 走 线 改 为 参 考 地 平 面 3 2013.1.8 V1.2 陈 新 科 增 加 第 二 部 分, 软 件 调 试 说 明 4 2013.1.15 V1.3 符 兴 建 修 改 DDR 信 号 线 到 其 它 信 号 线 间 距 离 约 束 5 6 7 8 Page 3 of 20
目 录 第 一 部 分 DDR3 硬 件 设 计 指 导... 5 1. 说 明... 5 2. 电 源 设 计 要 求... 5 3 PCB 布 局 及 走 线 要 求... 5 3.1 信 号 分 组 (DDR3 signal groups)... 6 3.2 叠 层 和 布 线 层 使 用... 6 3.3 参 考 平 面... 8 3.4 时 钟 信 号 组 布 线 要 求... 8 3.5 控 制 信 号... 9 3.6 命 令 信 号... 10 3.7 数 据 信 号... 12 3.8 数 据 选 通 信 号... 13 第 二 部 分 DDR3 软 件 调 试 说 明... 15 4. 内 存 基 础 知 识... 15 5. 龙 芯 芯 片 的 访 存 流 程... 16 6. Pmon 内 存 初 始 化 代 码 介 绍 (3A/B 2G/H)... 16 7. 内 存 故 障 诊 断... 18 Page 4 of 20
第 一 部 分 DDR3 硬 件 设 计 指 导 1. 说 明 本 文 档 为 基 于 龙 芯 3A 3B 及 2G 芯 片 的 主 板 设 计 提 供 内 存 设 计 及 layout 指 导, 根 据 我 们 针 对 现 有 的 开 发 系 统 的 信 号 测 试 结 果 及 龙 芯 CPU 的 特 点, 给 出 了 目 前 我 们 认 为 比 较 合 理 的 内 存 设 计 方 案 本 方 案 针 对 采 用 DDR3 DIMM 插 槽 的 主 板 设 计 方 案, 其 它 情 况 我 们 后 续 会 补 充 完 善, 现 阶 段 请 跟 我 们 技 术 人 员 联 系 2. 电 源 设 计 要 求 Vref 信 号, 该 信 号 电 流 较 小, 但 是 该 信 号 的 不 稳 定 会 导 致 时 序 误 差 产 生 比 较 大 的 jitter 等 问 题, 所 以 需 要 保 证 Vref 电 压 值 稳 定, 波 动 范 围 小 于 +-2% 对 于 Vref 的 走 线 要 求 : 1) 走 线 宽 度 30mils, 推 荐 走 在 表 层 2) 距 离 其 它 信 号 走 线 距 离 大 于 20mil, 距 其 它 干 扰 源 (power switch, 晶 振 等 )250mil 以 上 3)Vref 通 过 1% 的 电 阻 对 DIMM_VDD 分 压 产 生, 在 DIMM 插 槽 的 每 一 个 Vref 引 脚 和 CPU 的 每 个 Vref 引 脚 附 近 至 少 放 置 0.01uF 和 0.1uF 电 容 各 一 个, 在 分 压 电 阻 附 近 放 置 1 个 0.1uF 电 容 VTT 电 压 的 设 计 及 走 线 要 求 1)VTT 瞬 间 电 流 需 求 较 大, 请 采 用 专 用 的 电 源 芯 片 产 生, 禁 止 使 用 电 阻 分 压 方 式 2)VTT 铺 铜 走 在 表 层, 产 生 VTT 的 电 源 电 路 距 DIMM 插 槽 上 的 VTT 引 脚 尽 量 近 3)VTT 的 铺 铜 平 面 上 靠 近 DIMM 插 槽 的 位 置 放 置 4 个 0.1uF 电 容, 另 外 需 再 放 1~2 个 10~22uF 的 电 容 时 钟 命 令 和 控 制 信 号 线 在 内 存 条 上 以 MEM_VDD 作 为 参 考 平 面, 而 在 Loongson 3A 上 参 考 平 面 为 GND 为 解 决 信 号 线 跨 分 割 带 来 的 信 号 完 整 性 问 题, 需 要 在 DIMM 条 附 近 增 加 连 接 MEM_VDD 和 GND 的 电 容 3 PCB 布 局 及 走 线 要 求 本 节 主 要 包 括 DDR3 接 口 PCB 设 计 指 导 任 何 偏 离 该 指 导 中 给 定 的 信 号 拓 扑 和 走 线 均 需 要 通 过 仿 真 和 验 证, 以 确 定 满 足 DDR3 SDRAM 和 系 统 时 序 要 求 DDR3 接 口 的 PCB 设 计 主 要 包 括 信 号 线 的 线 宽 / 线 距 叠 层 与 阻 抗 控 制 走 线 的 长 度 限 制 等 方 面, 本 文 档 对 于 这 几 个 方 面 都 有 详 细 的 说 明 对 于 每 个 DDR 控 制 器 连 接 2 个 DIMM 插 槽 的 设 计, 推 荐 使 用 下 面 的 信 号 连 接 方 式 : DIMM0 CLK0&1; SCSN0&1;ODT0&1;CKE0 DIMM1 CLK2&3; SCSN2&3;ODT2&3;CKE1 Page 5 of 20
3.1 信 号 分 组 (DDR3 signal groups) DDR3 接 口 信 号 分 为 4 个 信 号 组 : 时 钟 控 制 命 令 数 据 和 数 据 选 通 信 号, 表 1.1 对 信 号 的 分 组 情 况 进 行 了 说 明 表 1.1 DDR3 信 号 分 组 Group Signal Name Description 时 钟 (Clock) CLK[5:0] and CLK#[5:0] System Memory Differential Clocks 控 制 (Control) CS#[3:0,CKE[3:0],ODT[3:0] Chip select, Clock enable, On-Die termination 命 令 (Command) A[14:0], BA[2:0], WE#, CAS#,RAS# Memory address bus, Bank select, Write enable, Column address select, Row address select 数 据 和 数 据 选 通 DQ[7:0], DM0, DQS0, DQS#0 Byte Lane0 (Data and Data DQ[15:8], DM1, DQS1, DQS#1 Byte Lane1 Strobes) DQ[23:16], DM2, DQS2, DQS#2 Byte Lane2 DQ[31:24], DM3, DQS3, DQS#3 Byte Lane3 DQ[39:32], DM4, DQS4, DQS#4 Byte Lane4 DQ[47:40], DM5, DQS5, DQS#5 Byte Lane5 DQ[55:48], DM6, DQS6, DQS#6 Byte Lane6 DQ[63:56], DM7, DQS7, DQS#7 Byte Lane7 CB[7:0], DM8, DQS8, DQS#8 Byte Lane8 数 据 和 数 据 选 通 组 中 的 每 个 Byte Lane(Lane0~Lane8) 均 可 和 时 钟 控 制 命 令 一 样, 布 线 时 作 为 一 个 单 独 的 同 组 信 号 看 待 3.2 叠 层 和 布 线 层 使 用 PCB 设 计 推 荐 采 用 6 层 PCB 叠 层 结 构, 叠 层 如 图 1.1 所 示 Page 6 of 20
Page 7 of 20 图 1.1 推 荐 的 六 层 PCB 板 叠 层 结 构 图 (DIMM)
表 1.2 推 荐 的 六 层 PCB 板 叠 层 信 息 表 (DIMM) 3.3 参 考 平 面 龙 芯 3A/3B 芯 片 内 部 所 有 DDR 信 号 参 考 地 平 面, 所 以 建 议 板 上 DDR 走 线 参 考 地 平 面, 内 存 条 附 近 增 加 电 源 到 地 平 面 的 电 容 以 解 决 信 号 完 整 性 问 题 3.4 时 钟 信 号 组 布 线 要 求 图 1.3 时 钟 信 号 布 线 拓 扑 (DIMM) 表 1.3 时 钟 信 号 组 布 线 指 导 参 数 信 号 组 (Signal Group) 拓 扑 (Topology) 定 义 Clock CLK[5:0] and CLK#[5:0] 点 到 点 差 分 对 Differential Pair Point-to-point Page 8 of 20
走 线 层 表 层 (A) 参 考 平 面 地 平 面 (Reference Plane) 差 分 信 号 阻 抗 80Ω+/-10%(80Ω) (Differential Mode Impedance) 与 非 DDR3 信 号 的 最 小 间 距 25mil ( Minimum Isolation Spacing to non-ddr3 Signals) 与 其 他 DDR3 信 号 组 的 最 小 间 距 20mil (Minimum Isolation Spacing to other-ddr3 Signal Groups) 封 装 长 度 的 范 围 731mil ~ 740mil (MC0) (P1, Package Length Range) 750mil ~ 759mil (MC1) L1 扇 出 差 分 对 线 宽 / 线 距 :4mil/4mil (Microstrip) 与 其 他 DDR3 信 号 间 距 :4mil (Fanout length segment) L1 的 长 度 应 尽 量 短 L2 与 其 他 DDR3 信 号 间 距 : (Microstrip) 数 据 >20mil, 地 址 >20mil 总 的 板 级 走 线 长 度 Max = 3000mil (Total Motherboard Length Limits, L1+L2) 信 号 的 总 长 度 限 制 -P1+L1+L2 Max = 4000mil 最 大 的 过 孔 数 2 个, 信 号 换 层 时 在 信 号 线 附 近 增 加 电 源 或 (Maximum Recommended Via Count) 地 的 过 孔 SCK 与 SCK# 的 长 度 匹 配 总 长 度 的 最 大 差 别 < 5mil (SCK to SCK# Length Matching) (Total length including package) 时 钟 对 与 时 钟 对 的 长 度 匹 配 到 相 同 DIMM 的 总 长 度 的 最 大 差 别 : (Clock-to-Clock Total Length Matching) +/-10mil 特 别 说 明 : 为 改 善 时 钟 信 号 质 量 及 增 加 时 钟 的 带 驱 动 能 力, 推 荐 在 每 路 时 钟 网 络 上, 增 加 一 片 IDT 公 司 的 DDR3 Clock Zero Delay Buffer 专 用 芯 片, 订 货 型 号 是 ICS671AGI-28LF, 该 器 件 是 TSSOP8 封 装, 适 用 于 PCB 空 间 密 集 的 应 用 3.5 控 制 信 号 图 1.4 控 制 信 号 布 线 拓 扑 (DIMM) Page 9 of 20
表 1.4 控 制 信 号 组 布 线 指 导 参 数 定 义 信 号 组 Control CS#[3:0], CKE[3:0], (Signal Group) ODT[3:0] 拓 扑 点 到 点 信 号 (Topology) Point-to-Point 走 线 层 内 层 (E or G) 参 考 平 面 地 平 面 (Reference Plane) 单 端 信 号 阻 抗 40Ω+/-10% (Single-Ended Trace Impedance) 与 非 DDR3 信 号 的 最 小 间 距 25mil ( Minimum Isolation Spacing to non-ddr3 Signals) 与 其 他 DDR3 信 号 组 的 最 小 间 距 20mil (Minimum Isolation Spacing to other-ddr3 Signal Groups) 封 装 长 度 的 范 围 730mil ~ 746mil (MC0) (P1, Package Length Range) 749mil ~ 767mil (MC1) L1 扇 出 线 宽 :4mil (Microstrip) 与 其 他 DDR3 信 号 间 距 :4mil (Fanout length segment) L1 的 长 度 应 尽 量 短 L2 与 其 他 DDR3 信 号 间 距 : 数 据 >20mil, 地 址 >20mil (Microstrip) 总 的 板 级 走 线 长 度 Max = 3000mil (Total Motherboard Length Limits, L1+L2) 信 号 的 总 长 度 限 制 -P1+L1+L2 Max = 4000mil 最 大 的 过 孔 数 2 个, 信 号 换 层 时 在 信 号 线 附 近 增 加 电 源 或 地 (Maximum Recommended Via Count) 的 过 孔 控 制 信 号 与 时 钟 对 的 长 度 匹 配 CLK CTL CLK+500mil ( 包 括 封 装 长 度 ) 3.6 命 令 信 号 Page 10 of 20
图 1.5 命 令 信 号 布 线 拓 扑 (DIMM) 表 1.5 命 令 信 号 组 布 线 指 导 参 数 定 义 信 号 组 Command A[14:0], BA[2:0], WE#, CAS#, (Signal Group) RAS# 拓 扑 点 到 点 信 号 (Topology) Point-to-Point 走 线 层 内 层 (E or G) 参 考 平 面 地 平 面 (Reference Plane) 信 号 线 特 性 阻 抗 40Ω+/-10% (Characteristic Trace Impedance) 与 非 DDR3 信 号 的 最 小 间 距 25mil ( Minimum Isolation Spacing to non-ddr3 Signals) 与 其 他 DDR3 信 号 组 的 最 小 间 距 20mil ( Minimum Isolation Spacing to other-ddr3 Signal Groups) 封 装 长 度 的 范 围 730mil ~ 746mil (MC0) (P1, Package Length Range) 749mil ~ 767mil (MC1) L1 扇 出 线 宽 :4mil (Microstrip) 与 其 他 DDR3 信 号 间 距 :4mil (Fanout length segment) L1 的 长 度 应 尽 量 短 L2 与 其 他 DDR3 信 号 间 距 : 数 据 >20mil, 地 (Microstrip) 址 >20mil 总 的 板 级 走 线 长 度 Max = 3000mil (Total Motherboard Length Limits, L1+L2) 信 号 的 总 长 度 限 制 -P1+L1+L2 Max = 4000mil 最 大 的 过 孔 数 2 个, 信 号 换 层 时 在 信 号 线 附 近 增 加 电 源 或 (Maximum Recommended Via Count) 地 的 过 孔 命 令 信 号 与 时 钟 对 的 长 度 匹 配 CLK CMD CLK+500mil ( 包 括 封 装 长 度 ) Page 11 of 20
3.7 数 据 信 号 图 1.6 数 据 信 号 布 线 拓 扑 (DIMM) 表 1.6 数 据 信 号 组 布 线 指 导 参 数 定 义 信 号 组 Data DQ[63:0], CB[7:0], DM[8:0] (Signal Group) 拓 扑 点 到 点 信 号 (Topology) Point-to-Point 走 线 层 内 层 (E or G) 参 考 平 面 地 平 面 (Reference Plane) 信 号 线 特 性 阻 抗 40Ω+/-10% (Characteristic Trace Impedance) 与 非 DDR3 信 号 的 最 小 间 距 25mil ( Minimum Isolation Spacing to non-ddr3 Signals) 与 其 他 DDR3 信 号 组 的 最 小 间 距 20mil (Minimum Isolation Spacing to other-ddr3 Signal Groups) 封 装 长 度 的 范 围 560mil ~ 830mil (MC0) (P1, Package Length Range) 550mil ~ 930mil (MC1) L1 扇 出 线 宽 :4mil (Microstrip) 与 其 他 DDR3 信 号 间 距 :4mil (Fanout length segment) L1 的 长 度 应 尽 量 短 L2 与 其 他 DDR3 信 号 间 距 : 数 据 >20mil, 地 (Microstrip) 址 >20mil 总 的 板 级 走 线 长 度 Max = 3200mil (Total Motherboard Length Limits, L1+L2) 信 号 的 总 长 度 限 制 -P1+L1+L2 Max = 4000mil 最 大 的 过 孔 数 2 个, 信 号 换 层 时 在 信 号 线 附 近 增 加 电 源 或 (Maximum Recommended Via Count) 地 的 过 孔 数 据 信 号 与 DQS 对 的 长 度 匹 配 同 一 个 分 组 内 数 据 线 与 DQS 等 长 度 误 差 在 Page 12 of 20
( 包 括 封 装 长 度 ) 10mil 之 内 3.8 数 据 选 通 信 号 图 1.7 数 据 选 通 信 号 布 线 拓 扑 (DIMM) 表 1.7 数 据 选 通 信 号 组 布 线 指 导 参 数 定 义 信 号 组 Data Strobes DQS[8:0], DQS# [8:0] (Signal Group) 拓 扑 点 到 点 差 分 对 (Topology) Differential Pair Point-to-point 走 线 层 内 层 (E or G) 参 考 平 面 地 平 面 (Reference Plane) 差 分 信 号 阻 抗 80Ω+/-10% (Differential Mode Impedance) 与 非 DDR3 信 号 的 最 小 间 距 25mil ( Minimum Isolation Spacing to non-ddr3 Signals) 与 其 他 DDR3 信 号 组 的 最 小 间 距 20mil (Minimum Isolation Spacing to other-ddr3 Signal Groups) 封 装 长 度 的 范 围 560mil ~ 830mil (MC0) (P1, Package Length Range) 550mil ~ 930mil (MC1) L1 扇 出 差 分 对 线 宽 / 线 距 :4mil/4mil (Microstrip) 与 其 他 DDR3 信 号 间 距 :4mil (Fanout length segment) L1 的 长 度 应 尽 量 短 L2 与 其 他 DDR3 信 号 间 距 : 数 据 >20mil, 地 (Microstrip) 址 >20mil 总 的 板 级 走 线 长 度 Max = 3200mil (Total Motherboard Length Limits, L1+L2) 信 号 的 总 长 度 限 制 -P1+L1+L2 Max = 4000mil Page 13 of 20
最 大 的 过 孔 数 (Maximum Recommended Via Count) DQS 与 DQS# 的 长 度 匹 配 (DQS to DQS# Length Matching) (Total length including package) DQS 与 时 钟 对 的 长 度 匹 配 (DQS-to-Clock Total Length Matching) 2 个, 信 号 换 层 时 在 信 号 线 附 近 增 加 电 源 或 地 的 过 孔 总 长 度 的 最 大 差 别 < 5mil CLK 500 mils DQS CLK + 1500 mils 注 : 按 照 以 上 走 线 规 范, 我 们 测 试 内 存 控 制 器 工 作 在 296MHz(33MHz 外 部 晶 振 ) 时 比 较 稳 定, 其 它 频 率 没 有 做 过 多 的 测 试, 如 果 需 要 其 它 条 件 下 的 走 线 规 范, 请 等 待 后 续 我 们 的 发 布 的 设 计 指 导 文 件 或 者 直 接 与 我 们 联 系 Page 14 of 20
第 二 部 分 DDR3 软 件 调 试 说 明 4. 内 存 基 础 知 识 内 存 颗 粒 组 成 内 存 设 备 的 基 本 单 元, 也 就 是 我 们 在 内 存 条 上 看 到 的 规 格 相 同 的 一 个 个 小 黑 块 目 前 主 流 的 类 型 为 SDRAM(Synchronized Dynamic RAM) SDRAM 根 据 技 术 发 展 又 分 为 DDR DDR2 DDR3 等 几 代 产 品 目 前 主 流 的 是 DDR2 和 DDR3 内 存 颗 粒 的 技 术 规 范 见 JEDEC 标 准 (JESD79-2 和 JESD79-3) 该 文 档 可 到 jedec 官 网 免 费 下 载 (www.jedec.org) 下 面 对 关 于 颗 粒 的 一 些 重 要 易 混 的 概 念 做 一 个 简 单 介 绍 1. 地 址 线 SDRAM 使 用 行 列 地 址 线 复 用 技 术 即 行 地 址 和 列 地 址 共 用 同 一 组 地 址 线, 因 此 要 分 两 次 发 送, 先 发 行 地 址, 再 发 列 地 址 2. 颗 粒 容 量 : 一 个 颗 粒 包 含 的 bit 位 数 比 如 :512Mb 1Gb 2Gb 等 3. 位 宽 位 宽 是 颗 粒 中 可 寻 址 的 最 小 单 元 的 bit 位 数, 也 是 一 个 颗 粒 的 数 据 线 的 个 数 目 前 常 见 的 位 宽 有 x4,x8,x16 4. Bank Bank 是 颗 粒 内 部 的 概 念, 一 个 颗 粒 内 有 多 个 bank( 目 前 主 要 是 4 和 8), 一 组 行 列 地 址 寻 址 的 是 一 个 bank 内 的 一 个 存 储 单 元, 因 此 一 次 完 整 的 寻 址 还 需 要 提 供 bank 地 址 Bank 地 址 是 和 行 列 地 址 同 时 发 送 的 5. CS(Chip Select) 片 选 信 号 每 个 颗 粒 都 有 一 个 CS 信 号 引 脚, 只 有 当 该 信 号 为 低 时, 颗 粒 才 会 接 收 命 令 6. Rank Rank 是 DIMM 条 的 概 念 一 个 rank 相 当 于 DIMM 条 的 一 组 SDRAM 颗 粒, 一 般 也 就 是 DIMM 条 的 一 个 面 一 个 DIMM 条 可 以 包 含 2 个 Rank, 也 就 是 双 面 的 DIM M 条 一 个 Rank 对 应 一 个 CS 信 号, 该 CS 信 号 用 来 控 制 该 组 的 所 有 SDRAM 颗 粒 内 存 条 目 前 的 主 流 内 存 条 为 DIMM(Dual In-line Memory Module, 双 列 直 插 内 存 模 块 ) 内 存 条 分 为 SO-DIMM( 笔 记 本 用 的 ) UDIMM(Unbuffered DIMM, 台 式 机 用 的 市 面 上 常 见 的 内 存 条 ) RDIMM(Registered DIMM, 多 用 于 服 务 器 ) 等 很 多 种 内 存 条 其 实 就 是 将 多 个 SDRAM 颗 粒 拼 装 在 一 起, 这 些 颗 粒 的 地 址 控 制 线 串 连 在 一 起, 而 数 据 线 并 在 一 起 形 成 DIMM 的 数 据 线 目 前 的 DIMM 条 数 据 线 个 数 一 般 为 64 位 因 此 对 于 x8 的 颗 粒, 需 要 8 个 才 能 形 成 一 组 存 储 单 元, 对 DIMM 条 寻 址 时, 这 8 个 颗 粒 都 会 被 命 中, 因 此 一 次 寻 址 会 命 中 8 个 字 节, 这 8 个 字 节 根 据 所 在 的 数 据 线 位 置 来 区 分 Page 15 of 20
5. 龙 芯 芯 片 的 访 存 流 程 经 TLB 转 换 的 物 理 地 址 二 级 Cro ss 访 存 物 理 地 址 内 存 控 制 图 1 龙 芯 2G/H 及 龙 芯 3 号 芯 片 的 访 存 流 程 器 访 存 命 令 地 址 内 存 设 备 Bar 6. Pmon 内 存 初 始 化 代 码 介 绍 (3A/B 2G/H) Pmon 中 内 存 相 关 部 分 的 代 码 包 含 在 start.s 中 内 存 初 始 化 需 要 在 cache 初 始 化 之 后 进 行 内 存 初 始 化 的 代 码 被 封 装 起 来 了, 封 装 在 loongson*_ddr[2]_config.s 中, 使 用 时 只 需 要 正 确 设 置 输 入 参 数 (64 位 的 寄 存 器 s1) 下 面 详 细 介 绍 s1 的 设 置 方 法 s1 的 低 4 位 (bit[3:0]), 用 来 设 置 节 点 ID 和 控 制 器 选 择 bit[1:0] 对 应 节 点 ID;bit[3:2] 对 应 控 制 器 选 择 :2 b01--- 只 使 用 MC0;2 b10--- 只 使 用 MC1;2 b00---mc0/1 都 使 用 对 于 2G/H 3B 来 说, 只 有 MC0, 因 此 bit[3:2] 总 是 应 该 设 置 为 2 b01. s1 的 其 他 位 用 来 设 置 内 存 信 息 s1 的 设 置 分 两 种 情 况 : 一 种 是 使 用 内 存 条 上 的 SPD 自 动 检 测 内 存 条 信 息, 一 种 是 直 接 手 动 设 置 内 存 信 息, 包 括 颗 粒 类 型 (DDR2 还 是 DDR3) 行 列 地 址 线 个 数 等 等 两 种 模 式, 通 过 配 置 文 件 的 AUTO_DDR_CONFIG 选 项 选 择 在 前 一 种 自 动 检 测 内 存 信 息 的 情 况 下,s1 的 作 用 是 告 诉 自 动 检 测 代 码 SPD 所 在 的 I2C 总 线 的 地 址 一 个 节 点 最 多 有 2 个 (3A) 内 存 控 制 器, 每 个 内 存 控 制 器 最 多 连 接 2 个 内 存 条, 因 此 每 个 节 点 最 多 连 接 4 个 内 存 条 此 时 使 用 s1 的 bit[31:16] 来 存 放 4 个 内 存 条 所 连 接 的 I2C 总 线 的 地 址 (SA2:SA0) 每 4bit 表 示 一 个 内 存 条 有 效 值 为 0x0~0x7,0x8~0xf 表 示 没 有 连 接 内 存 条 s1 的 bit[31:16] 分 别 对 应 MC1 的 Slot1(MC1 的 CS3/2) MC1 的 Slot0(MC1 的 CS1/0) MC0 的 Slot1(MC0 的 CS3/2) MC0 的 Slot0(MC0 的 CS1/0) 在 后 一 种 手 动 设 置 内 存 信 息 的 情 况 下, 共 使 用 24bit 来 设 置 一 个 控 制 器 的 内 存 信 息 s1 的 bit[63:40] 对 应 MC1,bit[31:8] 对 应 MC0. 这 24 位 的 含 义 可 以 通 过 查 看 ddr_config_define.h 中 的 注 释 来 具 体 了 解 下 面 对 常 用 的 一 些 设 置 进 行 说 明 比 如, 一 个 常 用 的 设 置 为 0xc1e30404( 红 色 部 分 ), 表 示 常 见 的 DDR3 双 面 2GB UDIMM 内 存 条 下 面 将 这 24 位 分 为 几 个 位 域 来 说 明 位 域 划 分 如 下 :0xc 1 1 2 e 3 3 4 04 5 04 位 域 的 值 都 用 十 六 进 制 表 示 对 于 位 域 1( 内 存 类 型 ), DDR3 UDIMM/DDR3 颗 粒 贴 片 DDR3 RDIMM c f Page 16 of 20
DDR3 UDIMM with ECC e DDR2 UDIMM/DDR2 颗 粒 贴 片 8 DDR2 RDIMM DDR2 UDIMM with ECC b a 对 于 位 域 2( 控 制 器 数 据 宽 度 行 地 址 数 ), 颗 粒 容 量 (x8 颗 粒 ) 512Mb 2 1Gb 1 2Gb 0 (1) 对 于 相 应 容 量 的 x16 颗 粒, 右 边 的 域 值 增 加 1. (2) 如 果 使 用 32 位 的 数 据 宽 度, 右 边 的 域 值 增 加 8. 对 于 位 域 3(bank 数 地 址 mirror 列 地 址 数 ), DDR2 DDR3 UDIMM DDR3 RDIMM DDR3 贴 片 无 地 址 mirror DDR3 贴 片 地 址 mirror a e a a e (1) 颗 粒 bank 数 为 4 时, 右 边 的 域 值 减 去 8. 对 于 位 域 4(cs_map), 这 个 位 域 的 4 个 bit(3~0) 分 别 表 示 MC 的 片 选 信 号 CS3~CS0 上 面 是 否 连 接 有 内 存 颗 粒 这 个 域 值 与 PCB 的 走 线 相 关 下 面 以 使 用 内 存 条 的 主 板 为 例 来 说 明 : 放 置 1 个 单 面 的 内 存 条 在 MC 的 0x1 CS1/0 上 放 置 1 个 单 面 的 内 存 条 在 MC 的 0x4 CS3/2 上 放 置 1 个 双 面 的 内 存 条 在 MC 的 0x3 Page 17 of 20
CS1/0 上 放 置 1 个 双 面 的 内 存 条 在 MC 的 0xc CS3/2 上 放 置 2 个 单 面 内 存 条 放 置 2 个 双 面 内 存 条 0x5 0xf 注 意 : 内 存 条 的 单 双 面 指 一 个 内 存 条 是 使 用 1 个 片 选 信 号 还 是 2 个 片 选 信 号 一 般 可 根 据 正 反 面 是 否 都 有 内 存 颗 粒 来 判 断 但 华 芯 的 一 种 DDR3 2GB RDIMM 内 存 条, 正 反 面 都 有 颗 粒, 但 仍 属 于 单 面 内 存 条 对 于 位 域 5( 内 存 容 量 ), 表 示 这 个 控 制 器 可 以 使 用 的 内 存 容 量 大 小, 单 位 为 512M 字 节 512MB 1GB 2GB 4GB 8GB 0x01 0x02 0x04 0x08 0x10 7. 内 存 故 障 诊 断 龙 芯 2H 3A/B 使 用 软 件 训 练 的 方 法 (ARB_level) 来 设 置 控 制 器 需 要 的 一 些 延 时 参 数, 一 般 不 需 要 手 动 调 整 如 果 出 现 训 练 失 败 的 情 况, 可 按 以 下 步 骤 解 决 : 1) 检 测 代 码 版 本, 确 认 使 用 最 新 的 PMON 代 码 2) 检 查 内 存 频 率 设 置,DDR2 的 可 工 作 范 围 为 125M~300M Hz,DDR3 为 300M~400M Hz 调 试 阶 段, 推 荐 DDR2 使 用 250M Hz,DDR3 使 用 300M Hz 如 果 不 能 确 定, 最 好 使 用 示 波 器 量 测 CLK 信 号, 同 时 可 以 观 察 信 号 质 量 3) 修 改 CLK 延 时 (reg_8f0) 通 过 手 动 输 入 的 方 式, 尝 试 0x00,0x10,0x20,0x30,0x40, 看 是 否 可 以 训 练 成 功 4) 修 改 CPU 端 ODT 阻 值 设 置 (reg_2d0 的 bit[3:2]) 尝 试 两 个 值 :2 b01, 2 b11. 5) 修 改 pad 补 偿 电 阻 值 (reg_2d0 的 bit[25:18]) 尝 试 0x021c, 0x0078(reg_2d0 的 bit[31:16]) Page 18 of 20
手 动 修 改 参 数, 可 将 start.s 中 的 宏 定 义 (DEBUG_DDR_PARAM) 打 开, 在 PMON 启 动 过 程 中 动 态 修 改 参 数, 不 需 要 来 回 烧 写 启 动 flash PMON 下 内 存 测 试 初 次 启 动, 最 好 使 用 start.s 中 的 DEBUG_DDR 选 项 对 内 存 系 统 进 行 初 步 测 试 ( 可 通 过 参 数 修 改 测 试 大 小 和 起 始 地 址 ), 以 确 定 片 选 地 址 线 个 数 二 级 crossbar 窗 口 等 是 否 配 置 正 确 ( 需 要 遍 历 整 个 内 存 地 址 空 间 ) 该 测 试 同 时 可 帮 助 诊 断 出 错 原 因 内 存 频 率 设 置 内 存 的 工 作 频 率 = 基 本 频 率 倍 频 系 数 对 于 2G 3A/B 来 说, 内 存 基 本 频 率 等 于 外 部 晶 振 的 输 入 频 率 MEM 倍 频 系 数 由 CPU 引 脚 CLKSEL[9:5] 决 定,CPU 倍 频 系 数 由 CLKSEL[4:0] 决 定 倍 频 系 数 与 CLKSEL 的 对 应 关 系 见 附 件 1. 对 于 2H 来 说, 内 存 频 率 选 择 首 先 分 为 硬 件 配 置 和 软 件 配 置 基 本 频 率 源 也 分 为 两 种 模 式 : 外 部 输 入 晶 振 频 率 和 SATA 的 25M 频 率 具 体 控 制 位 及 倍 频 系 数 计 算 方 法 参 见 2H 用 户 手 册 Page 19 of 20
附 件 1 龙 芯 3A/B 2G 倍 频 关 系 表 3A 2G p2 3B Bit[5:1] cpu freq mem freq cpu freq mem freq cpu freq mem freq (30+[4:1])/(1+[5]) (30+[4:1])/(3+[5]) 00000 30 10 10.5 20 25 10 00001 31 31/3 11 11 26 11 00010 32 32/3 11.5 12 27 12 00011 33 11 12 13 28 13 00100 34 34/3 12.5 14 29 14 00101 35 35/3 13 15 30 15 00110 36 12 13.5 16 31 16 00111 37 37/3 14 18 32 18 01000 38 38/3 14.5 10 33 5 01001 39 13 15 5.5 34 5.5 01010 40 40/3 15.5 6 35 6 01011 41 41/3 16 6.5 36 6.5 01100 42 14 17 7 37 7 01101 43 43/3 18 7.5 38 7.5 01110 44 44/3 19 8 39 8 01111 45 15 20 9 40 9 10000 15 7.5 21 5 12.5 2.5 10001 15.5 7.75 22 2.75 13 2.75 10010 16 8 23 3 13.5 3 10011 16.5 8.25 24 3.25 14 3.25 10100 17 8.5 25 3.5 14.5 3.5 10101 17.5 8.75 26 3.75 15 3.75 10110 18 9 27 4 15.5 4 10111 18.5 9.25 28 4.5 16 4.5 11000 19 9.5 29 2.5 16.5 1.25 11001 19.5 9.75 30 1.375 17 1.375 11010 20 10 31 1.5 17.5 1.5 11011 20.5 10.25 32 1.625 18 1.625 11100 21 10.5 34 1.75 18.5 1.75 11101 21.5 10.75 36 1.875 19 1.875 11110 22 11 38 2 19.5 2 11111 1 1 1 1 1 1 注 : 带 删 除 线 的 不 推 荐 使 用 Page 20 of 20