RTL仿真??处理器设计的RTL仿真会比软件的高层模型仿真还慢吗?

1、RTL代码(硬件表述语言代码)→ 综合 →网表

参考:https://zhidao.baidu.com/question/182505268.html
综合就是把你写的rtl代码转换成对应的实际电路。
比如你写代码assign a=b&c;
EDA综合工具就会去元件库里拿一个二输入与门出来,然后输入端分别接上b和c,输出端接上a
假如你写了很多这样的语句
assign a=b&c;
assign c=e|f;
assign e=x^y;
……
综合工具就会像搭积木一样的把你这些“逻辑”电路用一些“门”电路来搭起来。当然,工具会对必要的地方做一些优化,比如你写一个电路assing a=b&~b,这样工具就吧a恒接为0了,而不会去给你找一个与门来搭这个电路。
所以,“综合”要做的事情有:编译rtl代码,从库里选择用到的门器件,把这些器件按照“逻辑”搭建成“门”电路。
不可综合,是指找不到对应的“门”器件来实现相应的代码。比如#100之类的延时功能,简单的门器件是无法实现延时100个单元的。还有打印语句等,也是门器件无法实现的,这个应该很好理解。

所以说综合,类似于软件编程的“编译”,不同的是“编译”是把软件语言转换成二进制代码在CPU运行,“综合”是把硬件描述语言转换成逻辑网表,就是一些与非门或者寄存器的连接方式。

参考:http://blog.eetop.cn/blog-56214-15486.html
综合就是逻辑综合器根据约束条件把Verilog(或VHDL)描述的 RTL(Register Transfer Level,寄存器传输级)设计,转换为可与FPGA/CPLD的门阵列基本结构相映射的网表文件网表文件包含使用工艺库的标准逻辑单元构建系统的硬件电路的信息,决定了系统的功能、性能、时序特性等.而Verilog代码风格和综合器的性能将对逻辑综合的生成的网表结果产生重要的影响.

2、RTL仿真

参考:https://bbs.csdn.net/topics/320070278
1、一般,逻辑分为FPGA 和ASIC 两类。FPGA 一般完成功能仿真(前仿真)就好了,延时不延时的,一般不会去做,之间上板测试了。但是ASIC 就不同了,前仿真完成后,就要进入后仿真阶段。

2、后仿真分两个大的阶段:网表仿真,带时序的网表仿真。
①网表仿真就是对综合或DFT 后的网表进行仿真,执行系统级用例,看看综合或插入DFT链,有没有影响到功能;
②带时序的网表仿真,是在网表仿真的基础上,加上延时信息,这时候,不光有楼主说的“传输延时”,还有“器件延时”,延时由标准延时格式(SDF)文件定义;将SDF延时信息加载到网表上的操作称为“反标”,反标后,进行的系统级仿真就是带时序的网表仿真,这个是最接近于真实情况的仿真。
在实际操作流程中,有时候网表仿真因为意义不是特别大,会被省略;但是在实际操作中,网表仿真这一步一般省不了,因为带时序的网表仿真定位问题比较困难,因此,要先在不带时序的网表仿真中解决问题。

所以到底RTL仿真会比Gem5这样的高层模型还慢吗?不知道。。。。。。希望有人给解释一下

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值