1.本技术实施例涉及芯片验证技术领域,尤其涉及一种芯片原型验证方法、装置、系统及存储介质。
背景技术:
2.随着芯片技术的发展,芯片的应用越来越广泛,为了迎合更多的需求,在芯片行业,会按照需求对芯片不断进行设计。为了保证芯片的设计质量,在芯片设计过程中,通常会对芯片原型进行验证。
3.目前,芯片中会利用ddr phy实现ddr控制器和ddr颗粒之间的数据通信,对应的,在芯片原型验证时,也会用到phy,一般,可以利用原型验证平台专用的ddr ip,替换芯片中的ddr控制器和ddr phy,但是这种方式一方面不符合芯片原型验证中“尽可能尊重原设计”的原则,另一方面ddr ip运行在较高的速度(一般为200mhz),远超出芯片其他逻辑在平台上的运行速度(一般为20mhz),导致验证过程中运行速度不匹配,性能不均衡。
4.另外,还有使用外置ddr phy芯片的方式,这种方式下,需要较大的成本来定制与待验证芯片中的phy相匹配的芯片及硬件板卡,而且外置的phy芯片具有大量的io引脚,这就会占用验证平台上大量的io引脚资源,可能会导致验证平台的io引脚缺乏。
技术实现要素:
5.本技术实施例提供一种芯片原型验证方法、装置、系统及存储介质,以避免运行速度不匹配,性能不均衡,高成本定制外置phy芯片,io引脚大量占用的问题。
6.第一方面,本技术实施例提供了一种芯片原型验证方法,应用于原型验证平台,所述原型验证平台上适配有待验证芯片中的ddr控制器和经过功能裁剪的数字dfi-phy模组,所述方法包括:
7.将验证指令发送到预先适配到原型验证平台中的ddr控制器中,利用所述ddr控制器根据所述验证指令生成控制指令并发送给预先适配到原型验证平台中的数字dfi-phy模组;
8.利用所述数字dfi-phy模组将所述控制指令由dfi协议转换为符合ddr协议的目标控制指令;
9.将所述目标控制指令发送给所述原型验证平台外接的ddr颗粒;
10.获取所述ddr颗粒执行所述目标控制指令后反馈的结果信息,并基于所述结果信息对所述待验证芯片进行验证。
11.第二方面,本技术实施例还提供了一种用于芯片原型验证的ddr phy模组,所述ddr phy模组包括:初始化电路、命令地址控制电路、写数据电路、读数据电路和io控制电路;
12.所述初始化电路分别与所述命令地址控制电路、所述写数据电路、所述读数据电路和所述io控制电路相连接,用于对所述命令地址控制电路、所述写数据电路、所述读数据
电路和io控制电路进行参数配置;
13.所述命令地址控制电路、所述写数据电路、所述读数据电路均与所述io控制电路相连接,用于通过所述io控制该电路与ddr颗粒进行数据交互。
14.第三方面,本技术实施例还提供了一种芯片原型验证系统,所述系统部署在原型验证平台上,所述芯片原型验证系统包括:
15.一个或多个处理器;
16.适配到原型验证平台中形成的ddr控制器和数字dfi-phy模组,所述ddr控制器和所述数字dfi-phy模组与待验证芯片的功能相对应;
17.其中,所述处理器与所述ddr控制器相连接,用于按照验证逻辑向ddr控制器发送验证指令;
18.所述ddr控制器与所述数字dfi-phy模组相连接,用于根据所述验证指令生成控制指令,并发送给所述数字dfi-phy模组;
19.所述数字dfi-phy模组外接所述待验证芯片的ddr颗粒;
20.所述处理器用于执行如本技术任一实施例提供的芯片原型验证方法。
21.第四方面,本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如本技术任一实施例提供的芯片原型验证方法。
22.本技术实施例的技术方案通过在原型验证平台中预先适配ddr控制器以及数字dfi-phy模组,在对待验证芯片进行验证的情况下,将验证指令发送到预先适配到fpga中的ddr控制器中,利用所述ddr控制器根据所述验证指令生成控制指令并发送给预先适配到fpga中的数字dfi-phy模组;利用所述数字dfi-phy模组将所述控制指令由dfi协议转换为符合ddr协议的目标控制指令;将所述目标控制指令发送给所述fpga外接的ddr颗粒;获取所述ddr颗粒执行所述目标控制指令后反馈的结果信息,并基于所述结果信息对所述待验证芯片进行验证。基于此,本技术通过功能裁剪后的数字dfi-phy模组,实现了将其适配到原型验证平台中,该数字dfi-phy模组能够实现待验证芯片中的ddr phy部分的dfi协议和ddr协议之间的转换功能,能够尽可能还原待验证芯片的设计,同时,由于将ddr phy部分适配到fpga中,形成数字dfi-phy模组,在进行验证时,无需使用外置phy芯片,避免了外置phy芯片占用fpga的io引脚,以及定制外置phy芯片的高成本;也避免了使用原型验证平台专用的ddr ip,由于原型验证平台专用的ddr ip的运行速度相较于待验证芯片的其它逻辑要高,会出现ddr ip上的逻辑与待验证芯片的其它逻辑运行速度不匹配的情况,导致性能不均衡,而本技术以适配的方式,在fpga中形成数字dfi-phy模组,避免出现运行过快的情况,避免了运行速度不匹配导致的性能不均衡问题。
附图说明
23.图1为本技术实施例一提供的芯片原型验证方法的流程示意图;
24.图2为本技术实施例二提供的一种芯片原型验证装置的结构示意图;
25.图3为本技术实施例三提供的一种芯片原型验证系统的结构示意图;
26.图4为本技术的实施例三提供的一种数字dfi-phy模组的架构示意图;
27.图5是本技术的实施例三提供的一种io控制电路的结构示意图;
28.图6为本技术的实施例三提供的一种延时链的逻辑结构示意图。
具体实施方式
29.下面结合附图和实施例对本技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本技术,而非对本技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本技术相关的部分而非全部结构。
30.实施例一
31.图1为本技术实施例一提供的芯片原型验证方法的流程示意图,本实施例可适用于芯片原型验证的场景。该方法应用于原型验证平台,所述原型验证平台上适配有待验证芯片中的ddr控制器和经过功能裁剪的数字dfi-phy模组,可以由芯片原型验证装置来执行,该装置可采用硬件和/或软件的方式实现,并一般可以集成在具有数据运算能力的计算机等芯片原型验证系统中,具体包括如下步骤:
32.步骤101、将验证指令发送到预先适配到原型验证平台中的ddr控制器中,利用ddr控制器根据验证指令生成控制指令并发送给预先适配到原型验证平台中的数字dfi-phy模组。
33.本步骤中,验证指令为根据验证逻辑发送的指令,验证逻辑指的对待验证芯片的各种功能进行验证的逻辑,以读写两个操作为例,验证逻辑即可以是将待写入数据通过适配到原型验证平台中的ddr控制器和数字dfi-phy模组写入到ddr颗粒的待写入地址中,然后再通过适配到原型验证平台中的ddr控制器和数字dfi-phy模组读取ddr颗粒中的数据,根据ddr颗粒反馈的结果来确定两个操作是否验证通过。
34.当然,对于适配到原型验证平台中的数字dfi-phy模组,与待验证芯片的phy也应当具有基本一致的功能。
35.原型验证平台中的ddr控制器在接收到验证指令后,可以根据该验证指令生成dfi协议下的控制指令,进而发送给数字dfi-phy模组,实现与ddr颗粒的数据通信。需要说明的是,原型验证平台可以部署在fpga中。
36.步骤102、利用数字dfi-phy模组将控制指令由dfi协议转换为符合ddr协议的目标控制指令。
37.本步骤中,本步骤中,由于ddr颗粒通常基于ddr协议运行,而ddr控制器的控制指令,通常为符合dfi协议的指令,因此,本步骤就需要利用数字dfi-phy模组将控制指令由dfi协议转换为符合ddr协议的目标控制指令。
38.由于数字dfi-phy模组中的逻辑结构不同,因此,对于不同的操作,转换目标控制指令的方式也是不同的,下面以写入数据和读取数据两种操作为了,对转换过程进行说明。
39.对于写入数据操作,控制指令为写数据指令,其中,写入指令包括待写入数据和待写入地址,需要说明的是,写入数据可以是预先设置一段已知数据,待写入地址可以是任意地址。
40.为了提高验证的效果,可以随机生成待写入地址。具体的,可以先获取ddr颗粒中的地址分布,然后为每个地址映射整数标识,再利用整数随机数生成器生成一个随机整数,然后将该随机整数映射的地址作为待写入地址。
41.对应的,为了对写入操作进行验证,适配到fpga中的数字dfi-phy模组中可以包括
命令地址控制电路和写数据电路,其中,命令地址控制电路用于将dfi协议的命令/控制转换为符合ddr协议的命令/控制;写数据电路用于将dfi协议的待写入数据转换为符合ddr协议的待写入数据。
42.因此,本步骤中,对于写入数据操作,生成目标控制指令的过程可以包括:利用命令地址控制电路将待写入地址由dfi协议转换为符合ddr协议的目标待写入地址;利用写数据电路将待写入数据由dfi协议转换为符合ddr协议的目标待写入数据;将目标待写入地址和目标待写入数据确定为符合ddr协议的目标控制指令。
43.需要说明的是,不同的协议下的数据,数据格式是不同的,那么协议的转换实质上是数据格式的改变,若需要进行a协议和b协议的转换,比如从a协议转换到b协议,可以先根据a协议中规定的数据格式,提取b协议规定的数据格式中需要的数据内容,然后在按照b协议规定的数据格式将提取出的数据内容进行封装。
44.对于读取数据操作,控制指令为读数据指令,其中,读数据指令包括待读取地址。需要说明的是,待读取地址同样可以随机生成,具体的,可以先获取ddr颗粒中的地址分布,然后为每个地址映射整数标识,再利用整数随机数生成器生成一个随机整数,然后将该随机整数映射的地址作为待读取地址。
45.当然,为了进一步提高读取操作的可验证性,待读取地址可以是前述确定的待写入地址,由于待写入数据为已知的数据,将待读取地址设置为前述确定的待写入地址,读取得到的数据可以与前述待写入数据进行比较,从而实现更精准的验证。
46.对应的,数字dfi-phy模组包括命令地址控制电路,转换的过程则可以为利用命令地址控制电路将待读取地址由dfi协议转换为符合ddr协议的目标待读取地址;将目标待读取地址确定为符合ddr协议的目标控制指令。
47.需要说明的是,此处协议的转换依然可以参阅前述写入数据操作的相关说明的实施方式,此处不再赘述。
48.步骤103、将目标控制指令发送给原型验证平台外接的ddr颗粒。
49.需要说明的是,ddr颗粒又叫做内存颗粒或者晶片,其为ddr芯片中通常会有多个ddr颗粒,实现存储数据的功能。为了使本实施例的验证过程尽可能遵循原有设计,验证系统可以直接外接待验证芯片的ddr颗粒,提高验证的准确性。
50.另外,本步骤中,发送目标指令可以利用数字dfi-phy模组中的io控制电路来实现,具体的,io控制电路用来完成必要的io逻辑控制,比如差分信号转换、延时控制等。
51.步骤104、接收ddr颗粒执行目标控制指令后反馈的结果信息,并基于结果信息对待验证芯片进行验证。
52.由于将目标控制指令发送给ddr颗粒后,ddr颗粒在执行后,会反馈相应的结果信息,比如写入数据操作,就会反馈写入数据完成或未写入数据,而读取操作,反馈的则是读取的数据。
53.具体的,反馈写入数据完成或未写入数据可以通过读操作来实现,可以先从目标待写入地址读取数据,然后将读取的数据与目标待写入数据进行比较,若比较读取的数据与目标待写入数据一致,则将结果信息确定为写入数据完成,否则,将结果信息确定为未写入数据。
54.进一步的,对于写入数据操作的验证,验证过程可以包括:若结果信息为写入数据
完成,确定待验证芯片的写数据功能验证通过;若结果信息为未写入数据,确定待验证芯片的写数据功能验证未通过。
55.另外,对于读取数据操作的验证,由于读取到的数据遵循ddr协议,需要转换为dfi协议下的数据才可以进行后续的验证,因此,数字dfi-phy模组还可以包括读数据控制电路,读数据控制电路用于将ddr协议的读数据转换为符合dfi协议的读数据。
56.具体的,在验证时,可以先利用读数据控制电路将结果信息由ddr协议转换为符合dfi协议的目标结果信息;若目标结果信息为读取数据,确定待验证芯片的读数据功能验证通过;若目标结果信息为空,确定待验证芯片的读数据功能验证未通过。
57.另外,前述过程中,可以将先确定的待写入地址再确定为待读取地址,那么验证读取数据操作的时候,若目标结果信息为读取数据,可以比较读取数据和待写入数据是否一致,若一致,确定待验证芯片的读数据功能验证通过;若不一致,确定待验证芯片的读数据功能验证未通过。
58.需要说明的是,为了提高验证平台应用的广泛性,可以在数字dfi-phy模组中设置初始化电路,该初始化电路能够实现时钟控制、复位控制以及符合ddr协议的标准上电初始化流程控制。当然,由于不同的待验证芯片,其相应的phy参数可能会有所不同,比如数据位宽、延时控制等参数,因此,可以利用初始化电路进行参数的配置,具体的,可以先获取待验证芯片中phy参数;利用初始化电路将控制电路的参数配置为获取的phy参数。
59.本实施例中,通过在fpga平台中预先适配ddr控制器以及数字dfi-phy模组,在对待验证芯片进行验证的情况下,将验证指令发送到预先适配到fpga中的ddr控制器中,利用ddr控制器根据验证指令生成控制指令并发送给预先适配到fpga中的数字dfi-phy模组;利用数字dfi-phy模组将控制指令由dfi协议转换为符合ddr协议的目标控制指令;将目标控制指令发送给fpga外接的ddr颗粒;接收ddr颗粒执行目标控制指令后反馈的结果信息,并基于结果信息对待验证芯片进行验证。基于此,可以尽可能还原待验证芯片的设计,同时无需外置phy芯片,避免了运行速度不匹配,性能不均衡,高成本定制外置phy芯片,io引脚大量占用的问题。
60.实施例二
61.图2为本技术实施例二提供的一种芯片原型验证装置的结构示意图。本技术实施例所提供的芯片原型验证装置可执行本技术任意实施例所提供的芯片原型验证方法,具备执行方法相应的功能模块和有益效果。该装置可采用软件和/或硬件的方式实现,如图2所示,芯片原型验证装置具体包括:生成模块201、转换模块202、发送模块203、验证模块204。
62.其中,生成模块,用于将验证指令发送到预先适配到原型验证平台中的ddr控制器中,利用ddr控制器根据验证指令生成控制指令并发送给预先适配到原型验证平台中的数字dfi-phy模组;
63.转换模块,用于利用数字dfi-phy模组将控制指令由dfi协议转换为符合ddr协议的目标控制指令;
64.发送模块,用于利用fpga中预先适配的io控制电路将目标控制指令发送给原型验证平台外接的ddr颗粒;
65.验证模块,用于获取ddr颗粒执行目标控制指令后反馈的结果信息,并基于结果信息对待验证芯片进行验证。
66.本实施例中,通过在原型验证平台中预先适配ddr控制器以及数字dfi-phy模组,在对待验证芯片进行验证的情况下,将验证指令发送到预先适配到原型验证平台中的ddr控制器中,利用ddr控制器根据验证指令生成控制指令并发送给预先适配到原型验证平台中的数字dfi-phy模组;利用数字dfi-phy模组将控制指令由dfi协议转换为符合ddr协议的目标控制指令;将目标控制指令发送给原型验证平台外接的ddr颗粒;接收ddr颗粒执行目标控制指令后反馈的结果信息,并基于结果信息对待验证芯片进行验证。基于此,可以尽可能还原待验证芯片的设计,同时无需外置phy芯片,避免了运行速度不匹配,性能不均衡,高成本定制外置phy芯片,io引脚大量占用的问题。
67.进一步的,控制指令为写数据指令,写数据指令包括待写入数据和待写入地址,数字dfi-phy模组包括命令地址控制电路和写数据电路;
68.转换模块包括:
69.第一转换单元,用于利用命令地址控制电路将待写入地址由dfi协议转换为符合ddr协议的目标待写入地址;
70.第二转换单元,用于利用写数据电路将待写入数据由dfi协议转换为符合ddr协议的目标待写入数据;
71.第一确定单元,用于将目标待写入地址和目标待写入数据确定为符合ddr协议的目标控制指令。
72.进一步的,结果信息为写入数据完成或未写入数据;
73.验证模块包括:
74.第一验证单元,用于若结果信息为写入数据完成,确定待验证芯片的写数据功能验证通过;
75.第二验证单元,用于若结果信息为未写入数据,确定待验证芯片的写数据功能验证未通过。
76.进一步的,控制指令为读数据指令,读数据指令包括待读取地址,数字dfi-phy模组包括命令地址控制电路;
77.转换模块包括:
78.第三转换单元,用于利用命令地址控制电路将待读取地址由dfi协议转换为符合ddr协议的目标待读取地址;
79.第二确定单元,用于将目标待读取地址确定为符合ddr协议的目标控制指令。
80.进一步的,数字dfi-phy模组还包括读数据控制电路;
81.验证模块包括:
82.第四转换单元,用于利用读数据控制电路将结果信息由ddr协议转换为符合dfi协议的目标结果信息;
83.第三确定单元,用于若目标结果信息为读取数据,确定待验证芯片的读数据功能验证通过;
84.第四确定单元,用于若目标结果信息为空,确定待验证芯片的读数据功能验证未通过。
85.进一步的,数字dfi-phy模组包括初始化电路,装置还包括:
86.配置模块,用于利用初始化电路将控制电路的配置phy的参数。
87.实施例三
88.图3为本技术实施例三提供的一种芯片原型验证系统的结构示意图,如图3所示,该芯片原型验证系统包括一个或多个处理器;
89.适配到原型验证平台中形成的ddr控制器和数字dfi-phy模组,ddr控制器和数字dfi-phy模组与待验证芯片的功能相对应;
90.其中,处理器与ddr控制器相连接,用于按照验证逻辑向ddr控制器发送验证指令;
91.ddr控制器与数字dfi-phy模组相连接,用于根据验证指令生成控制指令,并发送给数字dfi-phy模组;
92.数字dfi-phy模组外接待验证芯片的ddr颗粒;
93.需要说明的是,图3中所示的cm4_sys、ap_sys可以看做为两个内核处理器,两者均可以向ddr_sys发送验证指令,以完成验证逻辑。
94.具体的,ddr_sys中包括适配到fpga平台中的ddr控制器和数字dfi-phy模组,其中,数字dfi-phy模组的架构如图4所示,图4为本技术的实施例三提供的一种数字dfi-phy模组的架构示意图。
95.数字dfi-phy模组包括:初始化电路、命令地址控制电路、写数据电路读数据电路和io控制电路;
96.初始化电路分别与命令地址控制电路、写数据电路、读数据电路和io控制电路相连接,用于对命令地址控制电路、写数据电路、读数据电路和io控制电路进行参数配置;
97.命令地址控制电路、写数据电路、读数据电路均与io控制电路相连接,用于通过io控制该电路与ddr颗粒进行数据交互。
98.需要说明的是,现有技术中,芯片会利用ddr phy实现ddr控制器和ddr颗粒之间的数据通信,其中,ddr phy的功能主要包括以下几个方面:
99.符合dfi协议,完成与控制器的数据交互;
100.对于读,先通过调整data输入延时链将所有的data对齐,然后再调整dqs的输入延时链,调整dqs与data的相位,使得dqs在采集data时有足够的时序余量(该过程也被陈作为data eye training);
101.对于写,通过调整dqs的输出延时链,使得在颗粒端的clk与dqs相位尽可能对齐(该过程也被陈作为write leveling training),然后再通过调整data输出延时链,调整data与clk的相位,使得颗粒的clk在采集data时有足够的时序余量(该过程也被陈作为write data eye training);
102.温度补偿,由于延时链受温度影响很大,在颗粒和芯片在长时间工作后,需要对延时链进行温度补偿,以保证数据的稳定。
103.对于上述功能,比如读、写和温度补偿,通常由专用电路来实现,比如专用的数据处理模块、命令处理模块以及包含在其中的复杂、高精度、温控的延时链等,这些电路由于需要满足较高的工作速度,要求高精度,其结构较为复杂,难以在原型验证平台中进行直接适配。
104.本技术将ddr phy适配到了fpga中,而fpga平台运行速度一般为芯片工作速度的1/10~1/100,也就是说,适配到fpga中形成的数字dfi-phy模组的运行速度低于芯片的ddr phy的工作速度,那么数字dfi-phy模组的功能均可以简化,从而可以采用通用的数字电路
来实现前述功能。
105.需要说明的是,对于现有技术中的受温度控制的高精度延时链,本技术也相应用普通的数字缓存器级联来等效替代。
106.具体的,io控制电路包括多个延时链,用于对其待验证芯片的时钟;其中,延时链包括级联的数字缓冲器。具体可以参阅图5,图5是本技术的实施例三提供的一种io控制电路的结构示意图。
107.如图5所示,示意的为8个io通道。其中,data_out/data_oe从写数据电路而来,经过延时链后,通过数据缓冲区(iobuf)送到pad引脚(pad引脚与ddr颗粒相连接),进而送入ddr颗粒中;而pad上获取到的数据通过延时链后,data_in再送到读数据电路。strobe信号与数据选取脉冲类似,不同的是strobe需要通过差分的iobuf再与pad相连。
108.在phy的初始化过程中,对于写ddr颗粒,需要调整dqs_out延时链,以尽可能与时钟对齐;同时需要调整data_out/data_oe的延时链,使得数据输出尽可能稳定被ddr颗粒采集到;对于读ddr颗粒,需要调整dqs_in延时链和data_in的延时链,使得采集到的data_in尽可能的稳定。总体上,以一段时间的读写数据稳定作为延时链调整完成的标志。
109.另外,对于任一延时链,可以包括级联的数字缓冲器,具体可以参阅图6,图6为本技术的实施例三提供的一种延时链的逻辑结构示意图。
110.如图6所示,延时链由普通的15级延时buffer缓冲器来实现(fpga上一个buffer为一个lut查找表),可以通过配置来确定需要延时的数量。每一级延时约为0.5ns,最大可以实现约7.5ns的延迟,能够满足ddr io频率50mhz时data/strobe宽度10ns使用。
111.处理器用于执行实施例一提供的芯片原型验证方法:
112.在对待验证芯片进行验证的情况下,将验证指令发送到预先适配到fpga中的ddr控制器中,利用ddr控制器根据验证指令生成控制指令并发送给预先适配到fpga中的数字dfi-phy模组;
113.利用数字dfi-phy模组将控制指令由dfi协议转换为符合ddr协议的目标控制指令;
114.将目标控制指令发送给fpga外接的ddr颗粒;
115.接收ddr颗粒执行目标控制指令后反馈的结果信息,并基于结果信息对待验证芯片进行验证。
116.进一步的,控制指令为写数据指令,写数据指令包括待写入数据和待写入地址,数字dfi-phy模组包括命令地址控制电路和写数据电路;
117.利用数字dfi-phy模组将控制指令由dfi协议转换为符合ddr协议的目标控制指令,包括:
118.利用命令地址控制电路将待写入地址由dfi协议转换为符合ddr协议的目标待写入地址;
119.利用写数据电路将待写入数据由dfi协议转换为符合ddr协议的目标待写入数据;
120.将目标待写入地址和目标待写入数据确定为符合ddr协议的目标控制指令。
121.进一步的,控制指令为读数据指令,读数据指令包括待读取地址,数字dfi-phy模组包括命令地址控制电路;
122.利用数字dfi-phy模组将控制指令由dfi协议转换为符合ddr协议的目标控制指
令,包括:
123.利用命令地址控制电路将待读取地址由dfi协议转换为符合ddr协议的目标待读取地址;
124.将目标待读取地址确定为符合ddr协议的目标控制指令。
125.进一步的,数字dfi-phy模组还包括读数据控制电路;
126.基于结果信息对待验证芯片进行验证,包括:
127.利用读数据控制电路将结果信息由ddr协议转换为符合dfi协议的目标结果信息;
128.若目标结果信息为读取数据,确定待验证芯片的读数据功能验证通过;
129.若目标结果信息为空,确定待验证芯片的读数据功能验证未通过。
130.进一步的,数字dfi-phy模组包括初始化电路,方法还包括:
131.利用初始化电路将控制电路配置phy参数。
132.实施例四
133.本技术实施例四还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种芯片原型验证方法,该方法包括:
134.在对待验证芯片进行验证的情况下,将验证指令发送到预先适配到fpga中的ddr控制器中,利用ddr控制器根据验证指令生成控制指令并发送给预先适配到fpga中的数字dfi-phy模组;
135.利用数字dfi-phy模组将控制指令由dfi协议转换为符合ddr协议的目标控制指令;
136.将目标控制指令发送给fpga外接的ddr颗粒;
137.接收ddr颗粒执行目标控制指令后反馈的结果信息,并基于结果信息对待验证芯片进行验证。
138.进一步的,控制指令为写数据指令,写数据指令包括待写入数据和待写入地址,数字dfi-phy模组包括命令地址控制电路和写数据电路;
139.利用数字dfi-phy模组将控制指令由dfi协议转换为符合ddr协议的目标控制指令,包括:
140.利用命令地址控制电路将待写入地址由dfi协议转换为符合ddr协议的目标待写入地址;
141.利用写数据电路将待写入数据由dfi协议转换为符合ddr协议的目标待写入数据;
142.将目标待写入地址和目标待写入数据确定为符合ddr协议的目标控制指令。
143.进一步的,控制指令为读数据指令,读数据指令包括待读取地址,数字dfi-phy模组包括命令地址控制电路;
144.利用数字dfi-phy模组将控制指令由dfi协议转换为符合ddr协议的目标控制指令,包括:
145.利用命令地址控制电路将待读取地址由dfi协议转换为符合ddr协议的目标待读取地址;
146.将目标待读取地址确定为符合ddr协议的目标控制指令。
147.进一步的,数字dfi-phy模组还包括读数据控制电路;
148.基于结果信息对待验证芯片进行验证,包括:
149.利用读数据控制电路将结果信息由ddr协议转换为符合dfi协议的目标结果信息;
150.若目标结果信息为读取数据,确定待验证芯片的读数据功能验证通过;
151.若目标结果信息为空,确定待验证芯片的读数据功能验证未通过。
152.进一步的,数字dfi-phy模组包括初始化电路,方法还包括:
153.获取待验证芯片中phy参数;
154.利用初始化电路将控制电路配置phy参数。
155.当然,本技术实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本技术任意实施例所提供的芯片原型验证方法中的相关操作。
156.通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本技术可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例的方法。
157.值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。
158.注意,上述仅为本技术的较佳实施例及所运用技术原理。本领域技术人员会理解,本技术不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本技术的保护范围。因此,虽然通过以上实施例对本技术进行了较为详细的说明,但是本技术不仅仅限于以上实施例,在不脱离本技术构思的情况下,还可以包括更多其他等效实施例,而本技术的范围由所附的权利要求范围决定。
转载请注明原文地址:https://tc.8miu.com/read-4081.html