中国半导体行业协会封装分会会刊

中国电子学会电子制造与封装技术分会会刊

导航

电子与封装 ›› 2021, Vol. 21 ›› Issue (6): 060302 . doi: 10.16257/j.cnki.1681-1070.2021.0609

• 电路设计 • 上一篇    下一篇

一种自动识别信息并计算ECC值的DDR后门访问验证方法

周文强;雷淑岚;孙维东   

  1. 中科芯集成电路有限公司,江苏 无锡 214072
  • 收稿日期:2020-11-10 出版日期:2021-06-23 发布日期:2021-01-20
  • 作者简介:周文强(1988—),男,浙江湖州人,硕士,工程师,长期从事CPU、SoC芯片设计与验证方面的工作。

A DDR Backdoor Access Verification MethodWhich can Identify Information and Calculate ECC Value Automatically

ZHOU Wenqiang, LEI Shulan, SUN Weidong   

  1. China KeySystem &Integrated Circuit Co., Ltd., Wuxi 214072,China
  • Received:2020-11-10 Online:2021-06-23 Published:2021-01-20

摘要: 当双倍速率内存(DDR)控制系统开启错误检查与纠正(ECC)功能时,若访问的数据宽度小于DDR memory的接口总宽度,在仿真时需要进行ECC计算并初始化DDR memory数据,否则不能正常仿真。传统的方法是通过DDR控制器进行前门访问的方式来初始化数据并计算ECC值,但该方法在仿真时会耗费大量的时间。为了减少仿真初始化数据的时间,同时实现灵活可配置且达到相同的验证目的,提出了一种自动识别配置信息并自动计算ECC值的DDR后门访问验证方法。该方法通过建立配置文件和数据文件,并采用System Verilog语言编写处理文件,实现自动提取信息的功能,并在处理文件中采用System Verilog语言模拟了和DDR控制器相同功能的ECC算法(Verilog语言实现),提取的数据经过模拟的ECC算法自动计算出ECC值,然后将ECC值和数据在仿真开始时通过后门方式提前加载到DDR memory,最后进行CPU读写DDR数据的仿真测试。仿真结果表明,在未初始化ECC数据时,仿真进入死循环。在初始化极小一段地址范围时,提出的方法比前门访问的方法减少约15.2%的时间,同时达到了相同的验证目的,且配置方便、易于验证。当初始化地址范围扩大到kB、MB、GB的数量级时,可减少数小时甚至更多的时间。提出的方法适用于各类型DDR系统(DDR2~DDR5)。

关键词: 自动提取, 算法, ECC, DDR, 后门访问, SystemVerilog

Abstract: When the double data rate (DDR) control system turns on error checking and correcting (ECC) function, if the accessed data width is less than the total data width of DDR memory in simulation, the initial data in DDR memory should be initialized with ECC value. Otherwise, simulation can’t work properly. The traditional method is to initialize the data through the front door access, but this method will consume a lot of time. In order to reduce the simulation time to initialize data and achieve the same purpose of verification, this paper presents a DDR back door access verification method which can identify configuration information and calculate ECC value automatically. In this method, the configuration file and data file are established, and then the System Verilog language is used to code the processing file which can extract related information automatically, the processing file using System Verilog language implements the same ECC algorithm as the DDR controller’s (Verilog implements), then data’s ECC value is calculated by algorithm automatically. Finally, the data and ECC values are load into DDR using back door method. The results show that the simulation goes into an endless loop when the ECC data are not initialized, but after initializing a small address range, the proposed method can reduce time about 15.2% compared with the front door method, and the same verification purpose is achieved. It can be inferred that if the initialization address range is expanded to the order of magnitude of kB, MB, GB, hours or even more time can be reduced. The present method is suitable for all types of DDR system.

Key words: extractautomatically, algorithm, ECC, DDR, backdooraccess, SystemVerilog

中图分类号: