Case:
在对SDCTRL进行验证中,由于SDCTRL可以支援到所有DDR2/DDR3的种类颗粒,而每一个颗粒都会提供一份catalog,其中包含了所有AC timing的配置。而SDCTRL也必须对控制寄存器进行合理的配置才能正常的工作。这就出现了一个问题:
我必须先拿到ddr catalog的内容,才能随机SDCTRL的 cfg。而catalog并不是一个class,而是格式大致一样的文本。并且DDR2/DDR3 catalog每一行的信息还不太一样。
solution
在随机SDCTRL cfg之前先通过脚本将catalog转化为统一格式,并提取其中的内容到cfg class,最后进行约束随机化。