资料介绍
1引言
建立芯片模型是在早期进行芯片架构决策的有效方法,通过建模不仅可以对芯片的性能做出分析,还可以在硬件没有完成之前开发软件,不仅提高了产品成功率,而且缩短了研发周期。设计人员早期采用C/C++语言进行硬件建模。但是随着软硬件复杂度的提高,C/C++语言难以再满足要求。OSCI适时推出了SystemC语言来适应新的需求。如今SystemC已经被广泛应用于SoC软硬件建模中。
目前大部分SystemC建模方面的文献是作者对自己所设计芯片整体模型的描述,这种针对特定芯片设计的文献虽然都有参考价值,但是其模型本身借鉴性有限。另一方面,构成SoC硬件的基本组件因为可重用的缘故,其模型设计具有更好的可借鉴性。这方面的研究成果相对较少,而且集中在总线建模方面,也可以看到多核设计方面的建模方法。
除了上述总线、CPU架构外,片内或片外存储器同样是系统关键模块,对系统性能有着至关重要的影响。文献[6]对SystemClick框架做了扩展,从而通过存储器模型能够分析共享存储器对性能的影响。文献[7]针对多通道DRAM做了建模,并且分析了不同的配置和使用情况对性能的影响。这两篇文献都对所设计的模型做了详尽的分析,具有很好的参考价值,但是两者的通用性欠佳。本文提出了一个可配置的通用存储器SystemC模型。
2 SystemC
SystemC可被视作C++硬件建模和仿真的扩展库,特别适合集成电路的建模,但它事实上可以用来描述更多的系统。SystemC通过确定仿真核心(simulation kernel)算法定义了处理并行事件和仿真时间的机制。SystemC还定义了模块、端口、接口、通道等概念来组成一个复杂SoC的连接关系和层次结构。因此,它解决了标准C++语言用于复杂硬件建模时的难题。
3存储器的建模
3.1存储器模型概述
为了能帮助设计人员分析系统性能并选择最合适的存储器构造,存储器模型需要反映出对性能造成影响的关键参数,即带宽、延时和仲裁机制。而这些参数又是由存储器的结构以及其它参数决定的。另一方面,本文希望提出一个通用的存储器模型,因此会有更多的参数用于配置存储器以模拟某种特定类型的存储器特征,比如多端口SRAM.
图1给出了所设计的存储器模型的结构。它包括三个部分:一是模型接口;二是端口及bank可配置的存储器;三是由读写通路及仲裁机制构成的存储器控制器。接口部分采用了事务级建模,而内部模块采用了时钟精准的建模,这样在保证时间精度的同时,方便了接口连接以及提高了仿真速度。
图1可配置存储器模型结构
3.2存储器接口
基于SystemC的存储器模型接口,由SystemC定义的接口基类派生而来。整个存储器模型是一个SystemC模块,由于实现了所定义的存储器模型接口,它成为SystemC概念中的hierarchal channel.因此,该存储器模型将如同其它SystemC定义的通道,比如FIFO,一样作为基本组件来连接其它的模块从而构造出SoC硬件系统。所设计存储器具有如下所述事务级SystemC接口。
阻塞读接口:该接口用来读取给定地址的给定大小的数据,当数据没有读出时,调用这个接口的模块线程将被堵塞,直到数据读出为止。除了地址和数据,该接口还包含调用者的标志信息。
非阻塞读接口:与阻塞读接口不同的是,如果在调用时读指令不能被接受,则返回失败。否则,不等待数据返回便成功退出。这样调用接口的模块线程可以在等待时间做其它事情。调用者通过监听存储器模型广播的当前读出数据多对应调用者标记来在之后读出数据。
阻塞写接口:该接口用来向存储器给定地址写入给定大小的数据。当指令或写数据不能被存储器模型接收时,调用的线程被堵塞直到接受为止。除了地址和数据,该接口还包含调用者的标志信息。
非阻塞写接口:与阻塞写接口不同的是,当指令或数据不能被接受时,返回失败而不等待。否则返回成功。
复位接口:用于复位存储器模型。
为了不强制要求外部提供存储器模型需要的时钟,存储器模型接口中不包含时钟输入。模型内部有一个专门的时钟产生线程。
建立芯片模型是在早期进行芯片架构决策的有效方法,通过建模不仅可以对芯片的性能做出分析,还可以在硬件没有完成之前开发软件,不仅提高了产品成功率,而且缩短了研发周期。设计人员早期采用C/C++语言进行硬件建模。但是随着软硬件复杂度的提高,C/C++语言难以再满足要求。OSCI适时推出了SystemC语言来适应新的需求。如今SystemC已经被广泛应用于SoC软硬件建模中。
目前大部分SystemC建模方面的文献是作者对自己所设计芯片整体模型的描述,这种针对特定芯片设计的文献虽然都有参考价值,但是其模型本身借鉴性有限。另一方面,构成SoC硬件的基本组件因为可重用的缘故,其模型设计具有更好的可借鉴性。这方面的研究成果相对较少,而且集中在总线建模方面,也可以看到多核设计方面的建模方法。
除了上述总线、CPU架构外,片内或片外存储器同样是系统关键模块,对系统性能有着至关重要的影响。文献[6]对SystemClick框架做了扩展,从而通过存储器模型能够分析共享存储器对性能的影响。文献[7]针对多通道DRAM做了建模,并且分析了不同的配置和使用情况对性能的影响。这两篇文献都对所设计的模型做了详尽的分析,具有很好的参考价值,但是两者的通用性欠佳。本文提出了一个可配置的通用存储器SystemC模型。
2 SystemC
SystemC可被视作C++硬件建模和仿真的扩展库,特别适合集成电路的建模,但它事实上可以用来描述更多的系统。SystemC通过确定仿真核心(simulation kernel)算法定义了处理并行事件和仿真时间的机制。SystemC还定义了模块、端口、接口、通道等概念来组成一个复杂SoC的连接关系和层次结构。因此,它解决了标准C++语言用于复杂硬件建模时的难题。
3存储器的建模
3.1存储器模型概述
为了能帮助设计人员分析系统性能并选择最合适的存储器构造,存储器模型需要反映出对性能造成影响的关键参数,即带宽、延时和仲裁机制。而这些参数又是由存储器的结构以及其它参数决定的。另一方面,本文希望提出一个通用的存储器模型,因此会有更多的参数用于配置存储器以模拟某种特定类型的存储器特征,比如多端口SRAM.
图1给出了所设计的存储器模型的结构。它包括三个部分:一是模型接口;二是端口及bank可配置的存储器;三是由读写通路及仲裁机制构成的存储器控制器。接口部分采用了事务级建模,而内部模块采用了时钟精准的建模,这样在保证时间精度的同时,方便了接口连接以及提高了仿真速度。
图1可配置存储器模型结构
3.2存储器接口
基于SystemC的存储器模型接口,由SystemC定义的接口基类派生而来。整个存储器模型是一个SystemC模块,由于实现了所定义的存储器模型接口,它成为SystemC概念中的hierarchal channel.因此,该存储器模型将如同其它SystemC定义的通道,比如FIFO,一样作为基本组件来连接其它的模块从而构造出SoC硬件系统。所设计存储器具有如下所述事务级SystemC接口。
阻塞读接口:该接口用来读取给定地址的给定大小的数据,当数据没有读出时,调用这个接口的模块线程将被堵塞,直到数据读出为止。除了地址和数据,该接口还包含调用者的标志信息。
非阻塞读接口:与阻塞读接口不同的是,如果在调用时读指令不能被接受,则返回失败。否则,不等待数据返回便成功退出。这样调用接口的模块线程可以在等待时间做其它事情。调用者通过监听存储器模型广播的当前读出数据多对应调用者标记来在之后读出数据。
阻塞写接口:该接口用来向存储器给定地址写入给定大小的数据。当指令或写数据不能被存储器模型接收时,调用的线程被堵塞直到接受为止。除了地址和数据,该接口还包含调用者的标志信息。
非阻塞写接口:与阻塞写接口不同的是,当指令或数据不能被接受时,返回失败而不等待。否则返回成功。
复位接口:用于复位存储器模型。
为了不强制要求外部提供存储器模型需要的时钟,存储器模型接口中不包含时钟输入。模型内部有一个专门的时钟产生线程。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- FPGA中嵌入式块存储器的设计
- PLC系统存储器与用户存储器的功能
- 存储器介绍
- 嵌入式发动机活塞温度测试系统设计方案 22次下载
- 基于ARM的嵌入式Web服务器设计方案 20次下载
- 嵌入式硬件系统教程之嵌入式存储技术的详细资料说明 14次下载
- 嵌入式存储器设计方案汇总 0次下载
- 嵌入式视频系统的设计方案汇总 0次下载
- 嵌入式芯片的存储器映射 101次下载
- 嵌入式存储器内建自修复技术 53次下载
- 采用嵌入式测试器实现SoC中存储子系统的良品率设计
- 嵌入式存储器发展现状
- 嵌入式存储器内建自测试的一种新型应用
- FPGA中嵌入式存储器模块的设计
- 嵌入式系统中基于FAT 表的存储器管理
- 汽车SoC嵌入式存储器的优化诊断策略 701次阅读
- 采用嵌入式相变存储器的BEOL e-NVM解决方案 1515次阅读
- 基于嵌入式环境的WiFi通信设计方案详解 5593次阅读
- 基于SCADE模型的高安全性嵌入式软件解决方案设计 2665次阅读
- 随机存储器在嵌入式操作系统中的应用设计详解 1315次阅读
- 基于Linux操作系统平台上的嵌入式网络存储器设计详解 877次阅读
- 嵌入式存储器的全面解析 1.1w次阅读
- 液晶显示屏设计方案:基于Nios嵌入式软核处理器 1081次阅读
- 基于ASIC和SoC设计的嵌入式存储器优化解析 956次阅读
- 嵌入式存储器的主要设计标准分析及IP选用指南 1508次阅读
- 嵌入式存储器的设计方法和策略 1790次阅读
- 一种嵌入式Web服务器的设计方案 4151次阅读
- 为ASIC和SoC设计实现最佳化嵌入式存储器 2994次阅读
- MAXQ构架上闪存和SRAM存储器的分配 2425次阅读
- TPMS外置编码存储器式轮胎定位技术设计方案 994次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21548次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多