The invention discloses a multi-core simulator storage system based on network, which is characterized in that the simulator with SystemC kernel as the core of the entire driving simulator, including simulation for each processor core level cache cache module, routing module simulation for each processor core level two cache and for the QEMU module function simulation; network several routing module interconnection simulation processor core shared level two cache on chip formation, each routing module is provided with a set of cache module is connected with the signal line; the routing module will cache module or routing module transmission pkt message is sent to another cache module or another routing module. The simulator can be used to develop the system software of the target system, so that the development of software and hardware can be carried out at the same time and speed up the development of the system.
【技术实现步骤摘要】
基于片上网络互连的多核存储系统仿真器
本专利技术属于存储系统仿真领域,具体涉及一种基于片上网络互连的多核存储系统仿真器。
技术介绍
早期的单核计算机系统通过提升芯片频率达到提高计算机性能的目的,但是随之而来的是产生过多的热量且不能得到相应的性能提升,于是产生了多核。为了对多核处理器及其片上网络进行研究,可使用体系结构仿真技术进行模拟,并运行程序进行测试和验证。当前主流的系统仿真器比如Simplescalar、M5主要是模拟处理器,每个仿真器都有各自的关注点。比如前者主要是模拟处理器的执行过程,后者主要是仿真网络主机,很少有仿真器把重点放在存储系统上。现有的仿真器大都使用高级语言编写,而仿真过程模拟的是硬件的功能,传统的方法是使用高级语言编写代码后,再转化为硬件语言描述,整个实现的过程周期长、效率低。
技术实现思路
本专利技术目的在于提供一种基于片上网络互连的多核存储系统仿真器,解决了多核下存储系统互连问题。存储系统的执行过程可以细化到时钟级,与真实系统的执行过程类似,采用SystemC语言描述的系统更接近真实系统的工作过程。多核下的互连采用片上网络结构,片上网络的优点是易于扩展,如若需要往整个系统中再添加新的核心,只需在片上网络中再添加一路由器并连接一处理器,整个系统可以照常运行。为解决现有方法中的问题,本专利技术提供的技术方案是:一种基于片上网络互连的多核存储系统仿真器,其特征在于所述仿真器以SystemC的内核作为整个仿真器的驱动内核,包括用于仿真各个处理器核心的一级高速缓存的缓存模块、用于仿真各个处理器核心的二级高速缓存的路由模块和用于提供功能仿真的QE ...
【技术保护点】
一种基于片上网络互连的多核存储系统仿真器,其特征在于所述仿真器以SystemC的内核作为整个仿真器的驱动内核,包括用于仿真各个处理器核心的一级高速缓存的缓存模块、用于仿真各个处理器核心的二级高速缓存的路由模块、用于提供功能仿真的QEMU模块、驱动模块;若干个路由模块互连仿真处理器核心共享的二级高速缓存形成的片上网络,每个路由模块设置有一组与缓存模块连接的信号线;所述路由模块将缓存模块或者路由模块传递的pkt消息分发到另一缓存模块或者另一路由模块;所述驱动模块向缓存模块发起读或写操作,并传输其它相关信号,在缓存模块中定义与驱动模块连接的信号线以及为其缓存行的存储分配空间;通过QEMU模块启动进程对底层的存储系统发起读/写某地址中的数据操作,存储系统调用各自的构造函数为存储器分配存储空间,QEMU模块的处理器模块与存储系统之间的通信系统包括QEMU消息源、通信信道和互连模块,所述QEMU模块中消息源是产生通信的源头,包括两大类,一类是处理器节点,另一类是外部设备,不同的消息源使用不同的通道发送消息,通信信道通过进程连接QEMU模块和SystemC,所述互连模块用于传递信息。
【技术特征摘要】
1.一种基于片上网络互连的多核存储系统仿真器,其特征在于所述仿真器以SystemC的内核作为整个仿真器的驱动内核,包括用于仿真各个处理器核心的一级高速缓存的缓存模块、用于仿真各个处理器核心的二级高速缓存的路由模块、用于提供功能仿真的QEMU模块、驱动模块;若干个路由模块互连仿真处理器核心共享的二级高速缓存形成的片上网络,每个路由模块设置有一组与缓存模块连接的信号线;所述路由模块将缓存模块或者路由模块传递的pkt消息分发到另一缓存模块或者另一路由模块;所述驱动模块向缓存模块发起读或写操作,并传输其它相关信号,在缓存模块中定义与驱动模块连接的信号线以及为其缓存行的存储分配空间;通过QEMU模块启动进程对底层的存储系统发起读/写某地址中的数据操作,存储系统调用各自的构造函数为存储器分配存储空间,QEMU模块的处理器模块与存储系统之间的通信系统包括QEMU消息源、通信信道和互连模块,所述QEMU模块中消息源是产生通信的源头,包括两大类,一类是处理器节点,另一类是外部设备,不同的消息源使用不同的通道发送消息,通信信道通过进程连接QEMU模块和SystemC,所述互连模块用于传递信息。2.根据权利要求1所述的基于片上网络互连的多核存储系统仿真器,其特征在于所述pkt消息包括data字段、id字段、dest数组字段、addr字段、cur_addr字段、change_data字段、index字段;其中data字段用于存储消息中的数据;id字段用于表示路由模块的编号;dest数组字段用于表示pkt消息需要发送的目的地;addr字段表示缓存行的地址;cur_addr字段表示缓存行的起始地址;change_data字段表示写操作的数据;index字段为标记字段。3.根据权利要求2所述的基于片上网络互连的多核存储系统仿真器,其特征在于所述pkt消息中index字段为0时,表示没有特殊功能;index字段为1时,从二级缓存或DRAM中取块并返回给发送者;index字段为2时,修改二级缓存及D...
【专利技术属性】
技术研发人员:吴俊敏,崔贤芬,赵小雨,
申请(专利权)人:中国科学技术大学苏州研究院,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。