• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 18
    • 下载费用:30 金币  

    重庆时时彩富: 系统建模和仿真的方法及装置.pdf

    摘要
    申请专利号:

    重庆时时彩单双窍门 www.4mum.com.cn CN200910237044.5

    申请日:

    2009.11.02

    公开号:

    CN101719177A

    公开日:

    2010.06.02

    当前法律状态:

    授权

    有效性:

    有权

    法律详情: 专利权的转移IPC(主分类):G06F 17/50变更事项:专利权人变更前权利人:无锡中星微电子有限公司变更后权利人:南通市崇川科技园投资发展有限公司变更事项:地址变更前权利人:214028 江苏省无锡市新区长江路21-1号国家集成电路设计园创源大厦610变更后权利人:226006 江苏省南通市崇川路1号登记生效日:20150120|||授权|||专利申请权的转移IPC(主分类):G06F 17/50变更事项:申请人变更前权利人:北京中星微电子有限公司变更后权利人:无锡中星微电子有限公司变更事项:地址变更前权利人:100083 北京市海淀区学院路35号世宁大厦15层变更后权利人:214028 中国江苏省无锡市新区长江路21-1号国家集成电路设计园(创源大厦)610登记生效日:20110527|||实质审查的生效IPC(主分类):G06F 17/50申请日:20091102|||公开
    IPC分类号: G06F17/50 主分类号: G06F17/50
    申请人: 北京中星微电子有限公司
    发明人: 俞力杰
    地址: 100083 北京市海淀区学院路35号世宁大厦15层
    优先权:
    专利代理机构: 北京银龙知识产权代理有限公司 11243 代理人: 许静
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN200910237044.5

    授权公告号:

    |||101719177B|||||||||

    法律状态公告日:

    2015.02.11|||2012.08.15|||2011.07.06|||2011.03.23|||2010.06.02

    法律状态类型:

    专利申请权、专利权的转移|||授权|||专利申请权、专利权的转移|||实质审查的生效|||公开

    摘要

    本发明提供一种系统建模和仿真的方法及装置,涉及仿真领域,为解决现有技术中仿真速度慢的问题而设计。所述建模方法包括:根据所述系统中总线和??橹涞牧庸叵?,指定所述总线和所述??橹涞亩杂叵?;将所述??榈墓δ苣D馕δ芎?,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?;确定系统时钟周期,所述系统时钟周期小于/等于系统中最短的??槭敝又芷?;查找出每个系统时钟周期内需要被驱动的???;按照所述??榈那奔渌承?,将所述??榕判?,生成每个系统时钟周期的??榱斜?。本发明能加快系统仿真速度。

    权利要求书

    1: 一种系统的建模方法,其特征在于,包括: 根据所述系统中??楹妥芟咧涞牧庸叵?,指定所述??楹退鲎芟咧涞亩杂叵?; 将所述??榈墓δ苣D馕δ芎?,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?; 确定系统时钟周期,所述系统时钟周期小于/等于系统中最短的??槭敝又芷?; 查找出每个系统时钟周期内需要被驱动的???; 按照所述??榈那奔渌承?,将所述??榕判?,生成每个系统时钟周期的??榱斜?。
    2: 根据权利要求1所述的系统的建模方法,其特征在于, 所述查找出每个系统时钟周期内需要被驱动的??榈牟街杈咛逦和ü觳饷扛鱿低呈敝又芷谀诔鱿值哪?槭敝由仙睾?或??槭敝酉陆笛?,查找出每个系统时钟周期内需要被驱动的???。 所述按照所述??榈那奔渌承?,将所述??榕判?,生成每个系统时钟周期的??榱斜淼牟街杈咛逦喊凑账瞿?榈氖敝由仙睾?或时钟下降沿的出现时刻,将所述??榕判?,生成每个系统时钟周期的??榱斜?。
    3: 一种系统的建模装置,其特征在于,包括: 指定单元,用于根据所述系统中??楹妥芟咧涞牧庸叵?,指定所述??楹退鲎芟咧涞亩杂叵?; 模拟单元,用于将所述??榈墓δ苣D馕δ芎?,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?; 时钟周期确定单元,用于确定系统时钟周期,所述系统时钟周期小于/等于系统中最短的??槭敝又芷?; 查找单元,用于查找出每个系统时钟周期内需要被驱动的???; 排序单元,用于按照所述??榈那奔渌承?,将所述??榕判?,生成每个系统时钟周期的??榱斜?。
    4: 一种系统的仿真方法,其特征在于,包括: 步骤101,获取当前系统时钟周期对应的??榱斜?; 步骤102,按照??榈那奔渌承?,依次从所述当前系统时钟周期的??榱斜碇谢袢∫桓瞿??; 步骤103,调用所述??榈墓δ芎?,对系统中总线的状态进行仿真,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?。
    5: 根据权利要求4所述的系统的仿真方法,其特征在于,还包括: 步骤104,检测所述当前系统时钟周期对应的??榱斜碇惺欠裼形吹饔玫哪??,如果检测的结果为是,则返回所述步骤102; 步骤105,如果检测的结果为否,则检测所述当前系统时钟周期是否为最后一拍,如果为最后一拍,则结束,否则,将下一个系统时钟周期作为当前系统时钟周期,返回所述步骤101。
    6: 根据权利要求5所述的系统的仿真方法,其特征在于,所述步骤103包括: 读取所述??榈亩丝谧刺?; 将所述??榈亩丝谧刺魑瞿?榈墓δ芎氖淙?,运行所述??榈墓δ芎?,生成运行结果; 根据所述运行结果,判断是否需要在总线事件列表中插入总线事件; 如果判断的结果为是,则按照总线事件时间点的顺序,在所述总线事件列表中插入所述总线事件。
    7: 根据权利要求6所述的系统的仿真方法,其特征在于,所述步骤103之前,还包括: 获取所述系统中??楹妥芟叩亩杂叵?; 判断所述总线事件列表中是否有所述??槎杂Φ淖芟叩氖录?,并且,所述总线的事件的时间点位于所述??榈那奔渲?,同时,所述总线的事件未被处理; 如果判断的结果为是,则按照所述总线的事件时间点顺序,依次根据所述总线的事件修改总线的状态;否则,执行步骤103。
    8: 根据权利要求5所述的系统的仿真方法,其特征在于,所述总线的状态包括:地址、数据和传输类型。
    9: 一种系统的仿真装置,其特征在于,包括: 第一获取单元,用于获取当前系统时钟周期对应的??榱斜?; 第二获取单元,用于按照??榈那奔渌承?,依次从所述当前系统时钟周期的??榱斜碇谢袢∫桓瞿??; 调用单元,用于调用所述??榈墓δ芎?,对系统中总线的状态进行仿真,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?。
    10: 根据权利要求9所述的系统的仿真装置,其特征在于,还包括: 第一检测单元,用于检测所述当前系统时钟周期对应的??榱斜碇惺欠裼形吹饔玫哪??,当检测的结果为是时,则使所述第二获取单元继续运行; 第二检测单元,用于当检测的结果为否时,检测所述当前系统时钟周期是否为最后一拍,当不是最后一拍时,则将下一个系统时钟周期作为当前系统时钟周期,使所述第一获取单元继续运行。
    11: 根据权利要求9所述的系统的仿真装置,其特征在于,还包括: 第三获取单元,用于获取所述系统中??楹妥芟叩亩杂叵?; 判断单元,用于判断所述总线事件列表中是否有所述??槎杂Φ淖芟叩氖录?,并且,所述总线的事件的时间点位于所述??榈那奔渲?,同时,所述总线的事件未被处理; 修改单元,用于当判断的结果为是,则按照所述总线的事件时间点顺序,依次根据所述总线的事件修改总线的状态。

    说明书


    系统建模和仿真的方法及装置

        【技术领域】

        本发明涉及仿真领域,特别是指一种系统建模和仿真的方法及装置。

        背景技术

        随着系统设计的复杂性提高,对系统进行仿真变得越来越重要。以SoC(System?On?a?Chip,片上系统)为例,用于连接SoC系统各个??榈淖芟叩慕峁购托阅艹晌低承阅艿墓丶?,系统设计的中心逐渐由??榈拇砟芰ψ较低车淖芟呓峁?,即各个??橹涫莸母咝Т渲鸾コ晌低成杓频闹行?。图1为一种典型的SOC系统的结构示意图,就SoC系统建模和仿真而言,现存的技术方案包括采用基于硬件描述语言的时钟精确的系统模型,例如Verilog、VHDL(Very-High-Speed?Integrated?Circuit?Hardware?DescriptionLanguage,超高速积体电路硬件描述语言)、SystemC等专用的语言,但是基于硬件描述语言的时钟精确的系统模型,不仅要对总线状态的变化进行仿真,而且要对与总线连接的??槟诓康拇砉探蟹抡?,带来的问题是仿真速度比较慢。

        【发明内容】

        本发明要解决的技术问题是提供一种仿真速度比较快的系统的建模与仿真方法及装置。

        为解决上述技术问题,本发明的实施例提供技术方案如下:

        一方面,提供一种系统的建模方法,包括:

        根据所述系统中??楹妥芟咧涞牧庸叵?,指定所述??楹退鲎芟咧涞亩杂叵?;

        将所述??榈墓δ苣D馕δ芎?,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?;

        确定系统时钟周期,所述系统时钟周期小于/等于系统中最短的??槭敝又芷?;

        查找出每个系统时钟周期内需要被驱动的???;

        按照所述??榈那奔渌承?,将所述??榕判?,生成每个系统时钟周期的??榱斜?;

        所述查找出每个系统时钟周期内需要被驱动的??榈牟街杈咛逦和ü觳饷扛鱿低呈敝又芷谀诔鱿值哪?槭敝由仙睾?或??槭敝酉陆笛?,查找出每个系统时钟周期内需要被驱动的???。

        所述按照所述??榈那奔渌承?,将所述??榕判?,生成每个系统时钟周期的??榱斜淼牟街杈咛逦喊凑账瞿?榈氖敝由仙睾?或时钟下降沿的出现时刻,将所述??榕判?,生成每个系统时钟周期的??榱斜?。

        另一方面,提供一种系统的建模装置,包括:

        指定单元,用于根据所述系统中??楹妥芟咧涞牧庸叵?,指定所述??楹退鲎芟咧涞亩杂叵?;

        模拟单元,用于将所述??榈墓δ苣D馕δ芎?,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?;

        时钟周期确定单元,用于确定系统时钟周期,所述系统时钟周期小于/等于系统中最短的??槭敝又芷?;

        查找单元,用于查找出每个系统时钟周期内需要被驱动的???;

        排序单元,用于按照所述??榈那奔渌承?,将所述??榕判?,生成每个系统时钟周期的??榱斜?。

        另一方面,提供一种系统地仿真方法,包括:

        步骤101,获取当前系统时钟周期对应的??榱斜?;

        步骤102,按照??榈那奔渌承?,依次从所述当前系统时钟周期的??榱斜碇谢袢∫桓瞿??;

        步骤103,调用所述??榈墓δ芎?,对系统中总线的状态进行仿真,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?。

        所述的系统的仿真方法,还包括:

        步骤104,检测所述当前系统时钟周期对应的??榱斜碇惺欠裼形吹饔玫哪??,如果检测的结果为是,则返回所述步骤102;

        步骤105,如果检测的结果为否,则检测所述当前系统时钟周期是否为最后一拍,如果为最后一拍,则结束,否则,将下一个系统时钟周期作为当前系统时钟周期,返回所述步骤101。

        所述步骤103包括:

        读取所述??榈亩丝谧刺?;

        将所述??榈亩丝谧刺魑瞿?榈墓δ芎氖淙?,运行所述??榈墓δ芎?,生成运行结果;

        根据所述运行结果,判断是否需要在总线事件列表中插入总线事件;

        如果判断的结果为是,则按照总线事件时间点的顺序,在所述总线事件列表中插入所述总线事件。

        所述步骤103之前,还包括:

        获取所述系统中??楹妥芟叩亩杂叵?;

        判断所述总线事件列表中是否有所述??槎杂Φ淖芟叩氖录?,并且,所述总线的事件的时间点位于所述??榈那奔渲?,同时,所述总线的事件未被处理;

        如果判断的结果为是,则按照所述总线的事件时间点顺序,依次根据所述总线的事件修改总线的状态;否则,执行步骤103。

        所述总线的状态包括:地址、数据和传输类型。

        另一方面,提供一种系统的仿真装置,包括:

        第一获取单元,用于获取当前系统时钟周期对应的??榱斜?;

        第二获取单元,用于按照??榈那奔渌承?,依次从所述当前系统时钟周期的??榱斜碇谢袢∫桓瞿??;

        调用单元,用于调用所述??榈墓δ芎?,对系统中总线的状态进行仿真,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?。

        所述的系统的仿真装置,还包括:

        第一检测单元,用于检测所述当前系统时钟周期对应的??榱斜碇惺欠裼形吹饔玫哪??,当检测的结果为是时,则使所述第二获取单元继续运行;

        第二检测单元,用于当检测的结果为否时,检测所述当前系统时钟周期是否为最后一拍,当不是最后一拍时,则将下一个系统时钟周期作为当前系统时钟周期,使所述第一获取单元继续运行。

        所述的系统的仿真装置,还包括:

        第三获取单元,用于获取所述系统中??楹妥芟叩亩杂叵?;

        判断单元,用于判断所述总线事件列表中是否有所述??槎杂Φ淖芟叩氖录?,并且,所述总线的事件的时间点位于所述??榈那奔渲?,同时,所述总线的事件未被处理;

        修改单元,用于当判断的结果为是,则按照所述总线的事件时间点顺序,依次根据所述总线的事件修改总线的状态。

        本发明的实施例具有以下有益效果:

        上述方案中,对系统进行建模和仿真时,将模型的抽象层次定位于总线级别,将??槟诓康墓δ苡么兄葱械姆绞矫枋?,不需要对??槟诓康脑诵薪蟹抡?,因此,加快了仿真速度。

        【附图说明】

        图1为一种典型的SOC系统的结构示意图;

        图2为本发明所述的系统的建模方法的一实施例的流程示意图;

        图3为对图1所述的SOC系统建模后,SOC系统的结构示意图;

        图4为本发明系统的建模装置的一实施例的结构示意图;

        图5为本发明系统的仿真方法的一实施例的流程示意图;

        图6为本发明系统的仿真方法的另一实施例的流程示意图;

        图7为本发明系统的仿真装置的一实施例的结构示意图;

        图8为本发明系统的仿真装置的另一实施例的结构示意图;

        图9为AXI总线与??橹涞牧庸叵凳疽馔?;

        图10为图9中AXI协议中???向???发起一次请求并且被???接收的握手过程的示意图。

        【具体实施方式】

        为使本发明的实施例要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。

        本发明的实施例针对现有技术中仿真速度慢的问题,提供一种系统的建模和仿真的方法及装置。

        如图2所示,为本发明所述的系统的建模方法的一实施例的流程示意图,包括:

        步骤21,根据所述系统中??楹妥芟咧涞牧庸叵?,指定所述??楹退鲎芟咧涞亩杂叵?;

        其中,步骤21中,指定系统中各个??楹透鞲鲎芟叩亩杂叵?。所述总线和所述??橹涞亩杂叵悼梢晕芟吆退瞿?槎丝谥涞亩杂叵?。系统可以用???、端口、总线这三个元素的组合来描述。其中,???,用于描述总线上相连的可以发起请求和接收请求的???。端口,用于描述??樯狭幼芟叩亩丝?,每个??橹辽侔桓龆丝?。总线的状态,用于描述总线的状态,如地址、数据、传输类型等。

        步骤22,将所述??榈墓δ苣D馕δ芎?,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?。

        该方案中,对系统建模时,采用统一的方法描述系统的总线行为,保证系统总线行为的时钟精确,对于??槟诓康男形蚋菥咛迥?榈墓δ苡么蟹绞矫枋?,在后续仿真过程中,不需要对??槟诓康拇斫蟹抡?,因此能够加快仿真速度。

        ??榈墓δ芎嵌阅?楣δ艿慕?,用于描述??槎远丝谧刺谋浠龀龅南煊?,该响应可以出现在下一个时钟周期,也可以出现在若干时钟周期之后。

        使用“总线事件”描述系统的总线的动态行为,总线事件表示在某个时间点总线的状态发生了改变,时间点用绝对时间表示。总线事件组成一个总线事件列表,在该列表中,所有总线事件按照时间先后顺序排队。

        步骤23,确定系统时钟周期,所述系统时钟周期小于/等于系统中最短的??槭敝又芷?;

        在后续的仿真过程中,每一个循环相当于一个系统时钟周期。在系统中,可能存在多个异步时钟,每个??槎加凶约旱氖敝又芷诤褪敝酉辔?,系统时钟周期必须小于/等于系统中所有??榈氖敝又芷?。

        步骤24,查找出每个系统时钟周期内需要被驱动的???;

        其中,步骤24具体为:通过检测每个系统时钟周期内出现的??槭敝由仙?,查找出每个系统时钟周期内被驱动的???;和/或通过检测每个系统时钟周期内出现的??槭敝酉陆笛?,查找出每个系统时钟周期内被驱动的???。

        步骤25,按照所述??榈那奔渌承?,将所述??榕判?,生成每个系统时钟周期的??榱斜?。其中,步骤25具体为:通过检测每个系统时钟周期内出现的??槭敝由仙睾?或??槭敝酉陆笛?,查找出每个系统时钟周期内需要被驱动的???。

        以对图1中一种典型的SoC系统的建模为例,对该系统建模后,该系统的结构可以表示为图3。

        基于上述对系统的仿真,以下描述对系统的仿真,通过仿真可以描述总线的动态行为。

        如图4所示,为本发明所述的系统的建模装置5的一实施例的结构示意图,包括:

        指定单元51,用于根据所述系统中??楹妥芟咧涞牧庸叵?,指定所述??楹退鲎芟咧涞亩杂叵?;

        模拟单元52,用于将所述??榈墓δ苣D馕δ芎?,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?。

        该方案中,对系统建模时,采用统一的方法描述系统的总线行为,保证系统总线行为的时钟精确,对于??槟诓康男形蚋菥咛迥?榈墓δ苡么蟹绞矫枋?,在后续仿真过程中,不需要对??槟诓康拇斫蟹抡?,因此能够加快仿真速度。

        时钟周期确定单元53,用于确定系统时钟周期,所述系统时钟周期小于/等于系统中最短的??槭敝又芷?;

        查找单元54,用于查找出每个系统时钟周期内需要被驱动的???;具体为:通过检测每个系统时钟周期内出现的??槭敝由仙?,查找出每个系统时钟周期内被驱动的???;和/或通过检测每个系统时钟周期内出现的??槭敝酉陆笛?,查找出每个系统时钟周期内被驱动的???。

        排序单元55,用于按照所述??榈那奔渌承?,将所述??榕判?,生成每个系统时钟周期的??榱斜?,具体为:按照所述??榈氖敝由仙睾?或时钟下降沿的出现时刻,将所述??榕判?,生成每个系统时钟周期的??榱斜?。

        如图5所示,为本发明所述的系统的仿真方法的一实施例的流程示意图,包括:

        步骤71,获取当前系统时钟周期对应的??榱斜?;

        步骤72,按照??榈那奔渌承?,依次从所述当前系统时钟周期的??榱斜碇谢袢∫桓瞿??;

        步骤73,调用所述??榈墓δ芎?,对系统中总线的状态进行仿真,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?。

        所述总线的状态包括:地址、数据和传输类型等。

        该方案中,对系统进行仿真时,将模型的抽象层次定位于总线级别,将??槟诓康墓δ苡么兄葱械姆绞矫枋?,不需要对??槟诓康脑诵薪蟹抡?,因此,加快了仿真速度。

        如图6所示,为本发明所述的系统的仿真方法的一实施例的流程示意图,包括:

        步骤81,获取当前系统时钟周期对应的??榱斜?;

        步骤82,按照??榈那奔渌承?,依次从所述当前系统时钟周期的??榱斜碇谢袢∫桓瞿??;

        步骤83,获取所述系统中??楹妥芟叩亩杂叵?;

        步骤84,判断所述总线事件列表中是否有所述??槎杂Φ淖芟叩氖录?,并且,所述总线的事件的时间点位于所述??榈那奔渲?,同时,所述总线的事件未被处理;

        步骤85,如果判断的结果为是,则按照所述总线的事件时间点顺序,依次根据所述总线的事件修改总线的状态;然后执行步骤86。否则,直接执行步骤86。

        步骤86,调用所述??榈墓δ芎?,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?;

        其中,步骤86包括:步骤861,读取所述??榈亩丝谧刺?;步骤862,将所述??榈亩丝谧刺魑瞿?榈墓δ芎氖淙?,运行所述??榈墓δ芎?,生成运行结果;步骤863,根据所述运行结果,判断是否需要在总线事件列表中插入总线事件;步骤864,如果判断的结果为是,则按照总线事件时间点的顺序,在所述总线事件列表中插入所述总线事件。

        步骤87,检测所述当前系统时钟周期对应的??榱斜碇惺欠裼形吹饔玫哪??,如果检测的结果为是,则返回所述步骤82;

        步骤88,如果检测的结果为否,则检测所述当前系统时钟周期是否为最后一拍,如果为最后一拍,则结束,否则,将下一个系统时钟周期作为当前系统时钟周期,返回所述步骤81。

        本发明中,在系统的每个循环之内,系统查找出当前系统时钟周期之内需要驱动的所有???例如,检测当前系统时钟周期内出现的??槭敝由仙?,根据事件列表中位于每个??楸磺笨?例如,??槭敝由仙?之前的事件,修改总线状态,然后调用该??榈墓δ芎?,根据总线对应的??榈亩丝谧刺?,建立新的事件插入总线事件列表中。

        如图7所示,为本发明所述的系统的仿真装置的一实施例的结构示意图,包括:

        第一获取单元91,用于获取当前系统时钟周期对应的??榱斜?;

        第二获取单元92,用于按照??榈那奔渌承?,依次从所述当前系统时钟周期的??榱斜碇谢袢∫桓瞿??;

        调用单元93,用于调用所述??榈墓δ芎?,对系统中总线的状态进行仿真,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?。

        该方案中,对系统进行仿真时,将模型的抽象层次定位于总线级别,将??槟诓康墓δ苡么兄葱械姆绞矫枋?,不需要对??槟诓康脑诵薪蟹抡?,因此,加快了仿真速度。

        如图8所示,为本发明所述的系统的仿真装置的另一实施例的结构示意图,还包括:

        第三获取单元94,用于获取所述系统中??楹妥芟叩亩杂叵?;

        判断单元95,用于判断所述总线事件列表中是否有所述??槎杂Φ淖芟叩氖录?,并且,所述总线的事件的时间点位于所述??榈那奔渲?,同时,所述总线的事件未被处理;

        修改单元96,用于当判断的结果为是,则按照所述总线的事件时间点顺序,依次根据所述总线的事件修改总线的状态。

        调用单元97,用于调用所述??榈墓δ芎?,所述功能函数描述所述??榈亩丝谧刺妥芟呤录涞亩杂叵?,所述总线事件描述所述??槎杂Φ淖芟叩淖刺谑奔涞愕谋浠?;

        第一检测单元98,用于检测所述当前系统时钟周期对应的??榱斜碇惺欠裼形吹饔玫哪??,当检测的结果为是时,则使所述第二获取单元92继续运行;

        第二检测单元99,用于当检测的结果为否时,检测所述当前系统时钟周期是否为最后一拍,当不是最后一拍时,则将下一个系统时钟周期作为当前系统时钟周期,使所述第一获取单元91继续运行。

        本发明实施例所述的系统的建模和仿真方法及装置有以下效果:

        (1)仿真的执行时序同实际硬件相吻合,可以严格反映硬件的性能。

        (2)可以比较方便的修改系统中总线和所述??橹涞亩杂叵?,以描述新的总线结构。

        (3)相对于其它建模方式,如硬件描述语言,单线程的、基于C/C++等通用高级语言的建模方法,本发明为用高级语言实现的、用于描述系统总线行为的统一的系统级建模和仿真方案,有足够快的仿真速度,满足架构性能评估的需求。

        (4)定义了一个通用系统,用于系统总线的建模和仿真,工程师可以专注于??樾形拿枋?,以加快建模速度。

        (5)不同的??榫哂型ㄓ玫慕涌?,方便协同开发仿真模型,提高了模型的可重用性。

        (6)现有技术中通用高级语言的串行执行特性,并不适合描述并行执行的硬件结构,因此存在开发周期长、调试困难的问题,本发明的方案将模型的抽象层次定位于总线级别,将??槟诓康墓δ苡么兄葱械姆绞矫枋?,用于快速实现??榈墓δ?,用???、端口、状态、总线事件和总线事件列表等元素严格描述总线信号的硬件行为,能够保证总线行为的周期精确性和模型的可重用性。

        (7)上述方案采用了适合于架构评估阶段的抽象层次,着重于系统总线的行为描述,在保证建模速度和仿真速度的同时实现了时钟精确的总线行为描述。对系统进行仿真时,将模型的抽象层次定位于总线级别,将??槟诓康墓δ苡么兄葱械姆绞矫枋?,不需要对??槟诓康脑诵薪蟹抡?,因此,加快了仿真速度。

        以下以AXI总线的握手过程为例,说明系统的建模和仿真方法。

        如图9所示,为AXI总线与??橹涞牧庸叵?。AXI总线包含5个通道,都以VALID/READY(有效/完毕)信号为握手信号,为简便起见,这里只描述单个通道的信号。在该系统中,有两个??椋耗??和???。???和???被同一个时钟驱动。每个??槎加幸桓龆丝?,???包含一个Master(主)端口,???包含一个Slave(从)端口。AXI总线0的状态包含了VALID信号、READY信号和INFORMATION(信息内容)信号,总线0对应于AXI总线的一个通道。VALID信号表示发起请求,由???的Master端口驱动。READY信号表示请求被接收,由???的Slave端口驱动,INFORMATION信号表示请求内容,由???的Master端口驱动。VALID和READY信号取值范围为0(低电平)或1(高电平),INFORMATION信号的取值范围依AXI通道而定。

        如图10所示,为按照AXI协议,???向???发起一次请求并且被???接收的握手过程(这是可能的交互过程的一种)。这一过程如下:

        VALID信号和READY信号的初始值都为低电平。

        ???在第一个时钟上升沿之后发起请求。在第1个时钟上升沿之后,VALID信号被???置为高电平,同时INFORMATION信号被修改为请求内容。

        在第二个时钟上升沿后,???将VALID信号和INFORMATION信号锁存,经过一些逻辑之后,???将READY信号置为高电平。由于???在第二个时钟上升沿锁存到的READY信号为低电平,所以它维持VALID信号和INFORMATION信号。

        在第三个时钟上升沿之后,???将READY信号置为低电平,由于???这次锁存到的READY信号为高,表示请求被接收,???将VALID信号置为低电平,这也意味着这时INFORMATION信号无意义。至此,握手过程结束。

        在本发明实施例所述的系统仿真的方法中,这一握手的流程将表现为如下的过程:

        首先,指定??楹妥芟咧涞墓叵?,即???的Master端口同AXI总线0相对应,???的Slave端口同AXI总线0相对应。

        然后,确定系统时钟周期。由于这个例子只包含一个时钟信号(ACLK),所以将这唯一的时钟信号作为系统时钟信号。这样,在每一个系统时钟上升沿,需要驱动的??槭悄??和???,由于两个??橛赏桓鍪敝忧?,所以二者驱动的时间先后不重要,下面的描述中以先驱动???再驱动???为例(也可以先驱动???再驱动???)。

        其次,开始系统时钟循环:

        第0个系统时钟上升沿:

        对于???,在该??榈那奔渲?,没有总线事件需要处理,调用该??榈墓δ芎?,读取Master端口的状态(此时VALID和READY信号均为低电平),此时没有请求需要发起,无需插入总线事件。

        对于???,在该??榈那奔渲?,没有总线事件需要处理,调用该??榈墓δ芎?,读取Slave端口的状态(此时VALID和READY信号均为低电平),此时没有请求需要处理,无需插入总线事件。

        第1个系统时钟上升沿:

        对于???,在该??榈那奔渲?,没有总线事件需要处理,调用该??榈墓δ芎?,读取Master端口的状态(此时VALID和READY信号均为低电平),根据该??榈墓δ芎?,此时发起请求,所以在总线事件列表中插入总线事件0,该总线事件0描述了在这一时刻之后,VALID信号变为高,INFORMATION信号变为请求内容。

        对于???,在该??榈那奔渲?,没有总线事件需要处理,调用该??榈墓δ芎?,读Slave端口的状态(此时VALID和READY信号均为低电平),此时没有请求需要处理,无需插入总线事件。

        第2个系统时钟上升沿:

        对于???,在该??榈那奔渲?,判断所述总线事件列表是否有未处理的所述??槎杂Φ淖芟呤录?,并且,所述总线事件的时间点位于取出的所述??榈那奔渲?;因此,总线事件列表中的总线事件0需要处理。处理该总线事件0之后,AXI总线0的VALID信号变为高,INFORMATION信号变为请求内容,调用该??榈墓δ芎?,读取Master端口的状态(此时VALID信号为高电平,READY信号为低电平,INFORMATION信号为请求的内容),由于READY信号为低电平,表明上一个请求尚未被接收,所以维持VALID信号和INFORMATION信号不变,无需插入总线事件。

        对于???,在该??榈那奔渲?,没有总线事件需要处理(总线事件0已经在调用???的功能函数前被处理了),调用该??榈墓δ芎?,读取Slave端口的状态(此时VALID信号为高电平,READY信号为低电平),VALID信号为高电平,表明有请求,根据???的功能函数,判断该请求可以接收,需要将READY信号置为高电平,即在总线事件列表中插入总线事件1,该总线事件1表示在此时刻之后,READY信号为高电平。

        第3个系统时钟上升沿:

        对于???,在该??榈那奔渲?,总线事件列表中的总线事件1需要处理,处理该总线事件1之后,AXI总线0的READY信号变为高,调用该??榈墓δ芎?,读取Master端口的状态(此时VALID信号为高电平,READY信号为高电平),由于READY信号为高电平,表明上一个请求已经被接收,同时???没有其它请求需要发送,所以将VALID信号置为低电平,即插入总线事件2,该总线事件2表示在此时刻之后,VALID信号为低电平。

        对于???,在该??榈那奔渲?,没有总线事件需要处理(总线事件1已经在调用???的功能函数前被处理了),调用该??榈墓δ芎?,读取Slave端口的状态(此时VALID信号为高电平,READY信号为高电平),VALID信号和READY信号同时为高,表明对应的请求在上一拍已经被接收,根据???的功能函数,需要将READY信号置为低电平,即向总线事件列表插入总线事件3,该总线事件3表示在此时刻之后,READY信号为低电平。

        第4个系统时钟上升沿:

        对于???,在该??榈那奔渲?,总线事件列表中的总线事件2和3需要处理,处理该总线事件之后,AXI总线0的READY信号变为低,VALID信号变为低,调用该??榈墓δ芎?,根据??榈墓δ芙胁僮?。

        对于???,在该??榈那奔渲?,没有总线事件需要处理(总线事件2,3已经在调用???的功能函数前被处理了),调用该??榈墓δ芎?,根据??榈墓δ芙胁僮?。

        按照以上的流程,完成了一次AXI协议的握手过程的仿真。

        在实际的仿真中,可以包含多个总线、不同的异步时钟。另外,在??榈墓δ芎锌梢约尤敫丛拥目刂乒δ苊枋瞿?榈墓δ?,也可以加入各种统计功能描述需要统计的信息,从而完成整个系统的仿真,并且给出统计结果。

        综上,本发明的上述技术方案用于在系统的架构设计阶段进行架构性能的评估,以找到一种性能最优化的系统架构。在架构评估阶段对系统建模时,采用统一的方法描述系统的总线行为,保证系统总线行为的时钟精确,同时保证仿真系统的可重用性,而对于??槟诓康男形蚋菥咛迥?榈墓δ苡么蟹绞矫枋?。

        本发明的上述实施例不仅应用于SoC系统的建模和仿真,也可用于其他系统的建模和仿真。

        本领域技术人员可以理解,本发明所述的建模方法和仿真方法可以结合在一起处理,先进行建模,然后进行仿真。同理,建模装置和仿真装置可以集成在一个装置中。在建模中生成的每个系统时钟周期的??榱斜?,可以在仿真中多次调用。因此,可以进行一次建模,多次仿真。

        以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的?;し段?。

    关 键 词:
    系统 建模 仿真 方法 装置
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:系统建模和仿真的方法及装置.pdf
    链接地址://www.4mum.com.cn/p-5781730.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03