当前位置: 首页 > 专利查询>清华大学专利>正文

单芯片多处理器结构模拟系统技术方案

技术编号:2861386 阅读:234 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种单芯片多处理器结构模拟系统,属于计算机模拟与仿真技术领域,该系统,主要包括总控模块、预处理模块、内核生成模块、测试验证模块和由CMP系统结构框架与测试验证报告组成的输出模块五个部分,各模块的连接关系为:该总控模块分别与预处理模块、内核生成模块、测试验证模块相连,该预处理模块同时与内核生成模块和测试验证模块相连,该内核生成模块与输出模块的CMP系统结构框架相连,该测试验证模块与输出模块的测试验证报告相连。本发明专利技术具有高可配置性和可移植性好的特点,使整个软件系统具有良好的模块化、可读性和移植性。本发明专利技术可以大大缩短硬件设计和软件开发的时间,并为体系结构的决策提供快速验证和评价。

【技术实现步骤摘要】

本专利技术属于计算机模拟与仿真
,特别涉及可扩展的单芯片多处理器系统的模拟与评测。
技术介绍
衡量一个微处理器性能指标的关键指标包括主频、功耗和通信速度。为了使处理器达到功耗和性能完美匹配的新高度,方法之一是采用多线程技术,即在处理器中同时执行多个独立的指令序列的方法,增加单位时间内处理器的资源利用率。单芯片多处理器(CMP-Chip Multi-Processor)结构正是基于这一思想而提出,即在芯片内部集成了多个处理器内核,将每一个线程平滑地分配到每个处理内核中,从而提高微处理器在单位时间内任务的吞吐量。由于CMP系统结构微处理器具有控制逻辑简单、工作主频高和处理器间通信延迟很低的特点,这使得它已经成为当前提高微处理器性能的有效途径,必将广泛的应用于嵌入式处理系统和高性能计算领域。目前,国外多家科研机构和公司都广泛地研究单芯片多处理器项目,此类研究是系统结构研究的热点。但是,目前对于如何对现有处理器内核进行剪裁(内容包括指令集的改进、cache结构的调整、全局异常处理机制的处理等),使之成为自治的、又保持相互协同的多处理器内核,以适应实际应用功能,从而在最大限度上改进处理器系统的性能上,还缺乏相应的研究。上述问题的根本原因在于未能从系统的角度来评价CMP的性能指标。CMP系统结构本身具有很强的特殊性当前用于评价微处理器性能的标准测试程序,由于无法正确评估多个处理器内核的性能并无法适用于评测CMP的性能指标;类似原因,基于多处理器结构的评测机制由于和CMP的系统瓶颈——通信延迟不同(前者为处理器之间,后者为处理器和外部设备之间),也无法正确地衡量其性能指标。因此,必须制定基准评测标准,建立相应的评测机制,才能够正确地评价CMP系统结构的优势和适用范围。在微处理器体系结构的设计与实现技术中,软件模拟方法是解决上述问题的最主要、也是最有效的方法。设计出一个高可配置、可复用的软件模拟系统,可以大大缩短硬件设计和相应的调试软件开发的时间,并为体系结构的决策提供快速验证和评价。模拟系统设计的技术中,一方面要求移植性好,可以为不同的指令集、不同的流水线结构提供统一的框架;另一方面要求具有高的模拟性能和效率。对于单芯片多处理器系统——这种采用线程级并行的粗粒度并行系统,可扩展性也是需要着重考虑的问题。由于单芯片多处理器要求具有可扩展性好、自动生成能力强和灵活性好的特点,大多数单芯片多处理器的模拟系统对此还或多或少存在缺陷,比如维斯康星大学研发的simplemp、加州大学圣地亚哥分校研发的simsmt,都没有部件信号级精确的模拟机制和精确中断的模拟机制;也没有部件级的可复用机制,从而在流水线发生变化的时候,整个系统的灵活性较差。再比如对于通用的微处理器设计来说,高速缓存的设计是至关重要的,而对于不同的应用需要不同的配置才能做到最好的性能价格比,那么在何种情况下如何配置高速缓存是单芯片多处理器所要直接面临的问题;另外,不同的应用对于微处理器计算能力的要求也有较大差距,但是由于单芯片多处理器处理模型差别不大,因此单芯片多处理器中选用何种处理器内核以及采用多少内核是合理而有效的,就需要一个能够快速生成不同处理器类型及其个数的、灵活的、可配置的模拟系统来进行测试和衡量。
技术实现思路
本专利技术针对单芯片多处理器的行为模拟和性能评测问题,提出一种单芯片多处理器结构模拟系统(英文简称SimCMP),它将微处理器中各类信号、部件一一映射到软件系统中的对象和方法之中,同时在设计过程中,为了适应可移植性、多人协同开发调试的设计需求,定义了具有一致性规范的、面向部件的实现方法,具有高可配置性和可移植性好的特点,使整个软件系统具有良好的模块化、可读性和移植性。本专利技术可以大大缩短硬件设计和软件开发的时间,并为体系结构的决策提供快速验证和评价。本专利技术提出的一种单芯片多处理器结构模拟系统,其特征在于,主要包括总控模块;用于构建CMP系统结构框架;预处理模块用于生成用户希望生成的CMP中各种信号和定义;内核生成模块用于生成CMP系统框架中的微处理器内核;测试验证模块用于各种测试方式的设置;由CMP系统结构框架与测试验证报告组成的输出模块用于根据用户定义定制生成单芯片多处理器的系统结构框架,以及根据用户的测试用例产生测试报告;各模块的连接关系为该总控模块分别与预处理模块、内核生成模块、测试验证模块相连,该预处理模块同时与内核生成模块和测试验证模块相连,该内核生成模块与输出模块的CMP系统结构框架相连,该测试验证模块与输出模块的测试验证报告相连。本专利技术的特点及技术效果本专利技术提出的一种单芯片多处理器结构模拟系统(即单芯片多处理器结构模拟系统,英文简称SimCMP),它将微处理器中各类信号、部件一一映射到软件系统中的对象和方法之中,同时在设计过程中,为了适应可移植性、多人协同开发调试的设计需求,定义了具有一致性规范的、面向部件的实现方法,具有高可配置性和可移植性好的特点,使整个系统具有良好的模块化、可读性和移植性。在它的实现中采用了可自扩展、可配置、可复用的设计模式。同时,为了实现模拟硬件部件的并行运行,还分别提出了模拟系统定义方法和部件更新方法来保证模拟硬件执行正确性的前提下,获得比较高的执行效率,其中,模拟系统定义方法是面向部件、系统结构无关的,部件更新方法则采用了事件驱动的方法。利用该模拟框架可以方便的编写、实现和扩展单芯片多处理器的系统结构框架并对其进行性能评测。本专利技术系统在Windows操作系统的微机或工作站上采用Visual C++环境中开发,充分利用面向对象的软件设计方法实现。其主要的创新点如下1)采用良好的框架结构,对微处理器内核的定义非常方便,可扩展性好;2)使用事件驱动的部件更新方法,保证系统的效率和可靠性;3)对系统内各个内核结构,相同或相似的地方只需定义一次,程序框架可以通过配置自动生成其他的内核部件和信号;4)微处理器间的通信机制可以灵活定义和修改,可以通过存储结构(不同级别的存储结构共享)或中断机制实现。可以方便的实现系统的扩展以及对操作系统或一般监控程序的支持。附图说明图1为本专利技术的系统总体结构框图。图2为本专利技术的系统工作流程框图。图3为本专利技术提出的部件分组方法。图4为本专利技术提出的周期信号更新方法。图5为本专利技术的测试验证操作界面图。图6为利用本专利技术生成的具有两个处理器内核的单芯片多处理器的系统结构图。具体实施例方式本专利技术提出的单芯片多处理器结构模拟系统结合附图及实施例进一步说明如下本专利技术的模拟系统主要包括总控模块、预处理模块、内核生成模块、测试验证模块和由CMP系统结构框架与测试验证报告组成的输出模块五个部分,如图1所示,各模块的连接关系为该总控模块分别与预处理模块、内核生成模块、测试验证模块相连,该预处理模块同时与内核生成模块和测试验证模块相连,该内核生成模块与输出模块的CMP系统结构框架相连,该测试验证模块与输出模块的测试验证报告相连。本专利技术的模拟系统的工作流程如图2所示。包括以下步骤(1)加载指令和程序块,建立虚拟接口和外围部件,以构建基本微处理器系统结构;(2)定义并生成CMP中的微处理内核及其连接关系;(3)对系统状态进行初始化包括程序的初始化,部件的初始化和CPU初始状态赋值;(4)预处理定义并实本文档来自技高网
...

【技术保护点】
一种单芯片多处理器结构模拟系统,其特征在于,主要包括:总控模块;用于构建CMP系统结构框架;预处理模块:用于生成用户希望生成的CMP中各种信号和定义;内核生成模块:用于生成CMP系统框架中的微处理器内核;测试 验证模块:用于各种测试方式的设置;由CMP系统结构框架与测试验证报告组成的输出模块:用于根据用户定义定制生成单芯片多处理器的系统结构框架,以及根据用户的测试用例产生测试报告;各模块的连接关系为:该总控模块分别与预处理模块、内 核生成模块、测试验证模块相连,该预处理模块同时与内核生成模块和测试验证模块相连,该内核生成模块与输出模块的CMP系统结构框架相连,该测试验证模块与输出模块的测试验证报告相连。

【技术特征摘要】
1.一种单芯片多处理器结构模拟系统,其特征在于,主要包括总控模块;用于构建CMP系统结构框架;预处理模块用于生成用户希望生成的CMP中各种信号和定义;内核生成模块用于生成CMP系统框架中的微处理器内核;测试验证模块用于各种测试方式的设置;由CMP系统结构框架与测试验证报告组成的输出模块用于根据用户...

【专利技术属性】
技术研发人员:姚文斌汪东升郭松柳鞠大鹏陈建党顾瑜
申请(专利权)人:清华大学
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1