systemc 学习笔记001-建模准备工作

建模资源

SCML

        强烈推荐使用synopsys 建模基础组件库SCML,根据下面的链接获取,目前已经是2.8版本。其中包含了register,memory,parameter,socket,trace等各类建模基础组件。

https://www.synopsys.com/cgi-bin/slcw/kits/reg.cgiicon-default.png?t=N7T8https://www.synopsys.com/cgi-bin/slcw/kits/reg.cgi

systemc project

        一些开源的systemc库,github上基本都能下载到,包括常用的,risv cpu,xilinx/qemu,UVM-c(与uvm连接),systemc verification 等,这些资源能让你很快的搭建起来一个系统级仿真平台,并进行功能级验证,注意是功能,不是性能。https://systemc.org/resources/projects/icon-default.png?t=N7T8https://systemc.org/resources/projects/

场景

        co-sim

        co-sim.,vcs-mx ,questasim这两款工具均支持,两个都是使用自带的systemc,应该都是做了魔改,笔者只用过vcs,但我猜原理上应该都是将rtl顶层文件转为c++文件,因为rtl最后都要转为c++执行,sc与rtl使用同一个仿真时间进行仿真,速度吧vcs 仿真纯让rtl要比仿真纯cycle 级别的sc model 快几倍吧,毕竟人家是商业软件。

       co-emu        

        co-emu上的应用,synopsys 的VDK支持与haps联合仿真,mentor的veloce支持联合仿真,candence 的helium 支持和Palladium \Protium 联合仿真,而且每次看AE宣传的重点都是往这个方向上靠,那说明ESL这种工具目前以锦上添花为主,还难以到独立体系的地步,看行业发展吧。

题外话

缺点

        劝退,说说sc的一些限制,不要无脑吹sc,毕竟2002前后同期与sv推广,首推的还是sc,结果sv一骑绝尘。

        性能,sc model做不了性能仿真,或者说无法在rtl稳定之前做性能仿真。

        架构探索,架构探索阶段简单点像是拼积木,找到相同资源下,承载能力最大的方案。做Ai的同学推荐python,或者xilinx的HLS tool。做通信的同学推荐matlb,拥有绝对强大的数学计算库。做cpu的用c/c++的居多。与国外资深同行交流过,目前没见过架构探索阶段使用SC的,一个是速度,一个是门槛。

        systemc与rtl混合仿真并无论从构建case,比如pss的概念,还是替代UVM快速开发,或者说仿真速度提升等方面来讲,其实都没有很明显的优势,反而缺陷很多,sc是c++中的一个库,对硬件工程师来讲是一门特别不友好的语言,对软件工程师来讲,又要体验硬件开发中并行的概念,所以在过去20年芯片开发中,sc一直很难普及,sv对硬件工程师来很友好一骑绝尘,即使sv中也借鉴了TLM trans payload。

        sc仿真速度,对软件开发来讲,实现同等功能的前提下,不如纯c/c++,对rtl来讲,实现同等仿真精度前提下,不如vcs等大型商业仿真软件,wave trace更是难用,波形无压缩,小规模开发验证无压力,但是中等以上规模项目很耽误进度。以前在花花内部评估过,面对商业区软件,毫无胜算。

 优势

        再说说实际点的优势,systemc把c++很顺畅的引入到uvm,A家自有的一套uvm验证平台,融合了uvmc sc c++,性能提升三倍,当然不是什么通用方法学,人家自己开发的独有的一套验证平台,既然c++ 都引入了,自然也将cpython也就直接带入,这可以打打大大提高生产力。

        复用,做芯片,总得做一套gold model,借鉴pss的理念,复用为上,那首推sc,从算法模型,验证模型,软件开发平台,coemu验证平台,silicon debug,sc做的model基本都能都用得上。

        牛逼架构师加持下的性能仿真,前提是牛逼架构师能制定好kpi,好用的工具还需要大牛才能发挥出真正的威力,sc给不管与硬件有关密切,他还是一套软件工具,所以不要总盯着带宽,延时这两个必须的指标,多利用软件的灵活度关注模块内部逻辑。

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值