【技术实现步骤摘要】
一种用于FPGA原型验证系统的文件导出方法及系统
[0001]本专利技术涉及集成电路设计领域中的原型验证系统,具体涉及一种用于FPGA原型验证系统的文件导出方法及系统。
技术介绍
[0002]随着半导体工艺的不断发展和对高性能计算需求的不断提高,CPU(Central Processing unit)设计的复杂度不断提高,进而对验证平台的需求也越来越高。基于FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)搭建的CPU芯片原型验证系统能够反应芯片真实性能、能够发现真实BUG、相比于软件仿真以及硬件仿真加速器具有更快的运行速度等优点,是进行CPU芯片验证的重要手段之一。
[0003]FPGA原型验证系统一般由一块或多块FPGA原型验证板及其子卡组成,同时还可连接上位机、服务器和其他外设IO设备。当FPGA原型验证系统的验证目标是CPU核和访存系统时,一般可以不连接外设IO设备,如硬盘等,只需要在FPGA平台上插入作为内存使用的内存子卡即可完成验证目标。当使用此类验证系统进行验证时,所使用的方法是:将引导加载程序uboot、操作系统内核、设备树文件和文件系统存储于SD卡、SRAM子卡或者是FLASH芯片中。当FPGA原型验证系统复位后,首先将引导加载程序uboot加载到内存中执行,然后在引导加载程序uboot引导下,将操作系统内核、设备树文件和文件系统加载到内存中,并且由于没有硬盘,操作系统内核和文件系统运行在内存构建的RAMDISK中。当操作系统成功引导启动后,在操作系 ...
【技术保护点】
【技术特征摘要】
1.一种用于FPGA原型验证系统的文件导出方法,其特征在于,包括:步骤S1:将待测设计下载到FPGA原型验证系统中;步骤S2:使用设备树文件引导上位机的操作系统启动,所述设备树文件对应的设备树中的内存节点中包含定义为保留内存的子节点,所述子节点用于保留一段操作系统不使用且连续的内存空间以用于存储要输出的数据文件;步骤S3:在上位机的操作系统中将需要导出的数据文件搬移到保留的内存空间中;步骤S4:向FPGA原型验证系统发送文件导出命令,获得需要导出的数据文件。2.根据权利要求1所述的用于FPGA原型验证系统的文件导出方法,其特征在于,步骤S4中向FPGA原型验证系统发送文件导出命令是通过上位机中运行的文件导出控制软件实现的,所述文件导出控制软件的执行步骤包括:步骤S4.1:程序初始化,完成网络通信参数与协议的初始化配置,使所述文件导出控制软件和所述FPGA原型验证系统之间可通过以太网进行通信;步骤S4.2:接收用户输入的需导出数据文件的信息,包括:数据文件的名称file_name,数据文件在FPGA原型验证系统内存中的起始地址file_addr,以及数据文件以字节计数的文件大小file_size;步骤S4.3:根据数据文件的名称file_name创建文件file_name_PC及其对应的文件计数指针pointer_file_name_PC,创建初始化为0的整型变量receive_count以记录从所述FPGA原型验证系统接收到的文件数据字节数;步骤S4.4:根据需要导出的数据文件的文件命令格式,创建导出文件命令并通过以太网子卡发送到FPGA原型验证系统;步骤S4.5:等待FPGA原型验证系统返回的文件导出数据包,并根据文件导出数据包的起始符和结束符提取出指定大小n字节的文件数据;步骤S4.6:判断文件大小file_size减去整型变量receive_count的差是否大于或等于n字节,若成立则跳转到步骤S4.7,否则跳转到步骤S4.8;步骤S4.7:通过文件计数指针pointer_file_name_PC将接收到的全部n字节文件数据写入文件file_name_PC,将整型变量receive_count自加n后跳转到所述步骤S4.5;步骤S4.8:通过文件计数指针pointer_file_name_PC将接收到的文件数据中的前file_size
‑
receive_count字节写入文件file_name_PC,并跳转到所述步骤S4.9;其中file_size
‑
receive_count为文件大小file_size减去整型变量receive_count的差;步骤S4.9:关闭文件计数指针pointer_file_name_PC,通过上位机显示终端提示用户的数据文件导出完毕并结束程序执行。3.根据权利要求2所述的用于FPGA原型验证系统的文件导出方法,其特征在于,步骤4.5中指定大小n字节的文件数据是指54字节的文件数据。4.根据权利要求1所述的用于FPGA原型验证系统的文件导出方法,其特征在于,步骤S3中在操作系统中将需要导出的数据文件搬移到保留的内存空间中是通过上位机的操作系统中运行的数据搬移程序实现的,所述数据搬移程序的执行步骤包括:步骤S3.1:创建指向需要导出的数据文件file_name的文件指针pointer_file_name;创建整型变量write_count并初始化为0;步骤S3.2:通过文件指针pointer_file_name读取数据文件file_name的1字节数据并
存入字符型变量write_data中;步骤S3.3:将字符型变量write_data的数据写入保留的内存空间;步骤S3.4:将整型变量write_count自加1;步骤S3.5:通过文件指针pointer_file_name判断数据文件file_name是否读取完毕,若读取完毕则跳转到步骤S3.6,否则跳转到步骤S3.2;步骤S3.6:关闭文件指针pointer_file_name,在操作系统显示终端打印整型变量write_count并结束程序执行,所述整型变量write_count为数据文件file_name的文件大小file_size。5.根据权利要求4所述的用于FPGA原型验证系统的文件导出方法,其特征在于,步骤S3.3包括:调用操作系统提供的devmem函数将字符型变量write_data的数据写入保留的内存空间,devmem函数包含两个...
【专利技术属性】
技术研发人员:荀长庆,廖焕乾,赵王,潘国腾,王蕾,罗莉,周海亮,周理,铁俊波,龚锐,石伟,冯权友,张剑锋,刘威,王永文,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。