llc1991

小白一个,记录下自己学习过程

vivado中几种仿真

2
阅读(2671)

关于BSP——BSP全称board support package,一般翻译为板级支持包,它主要是在系统上电后进行一些基本的初始化,BSP一般是和特定的硬件平台以及操作系统相关的。在大多数情况下,BSP里面会包含大部分的驱动程序。

关于Standalone OS——我们刚才的这个例子是运行在裸机下的,也就是没有操作系统的。此时这个tandalone OS就充当了一个“操作系统”,它实质是一个简单的低级软件层。他主要是提供一些访问处理器特性的接口,比如caches、中断、异常、基本输入输出、系统配置等。它是单线程的。


在vivado里面一共有五种仿真:

行为仿真:run behavioral simulation:在FPGA中没什么意义

run post-synthesis function simulation

run post-synthesis timing simulation : 综合后的时序波形  意义相对真实度中等 

run post-implementation function simulation

run post-implementation timing simulation :(布局布线后的仿真) 执行后的时序仿真 最接近真实的波形

(布局布线后仿真加入了延迟这要比综合后的时序更加接近真实的情况)


上面五种仿真形式,接下来分析其中行为仿真、功能仿真、时序仿真之间的区别:

数字电路设计中一般有源代码输入、综合、实现等三个比较大的阶段,而电路仿真的切入点也基本与这些阶段相吻合,根据适用的设计阶段的不同仿真可以分为RTL行为级仿真、综合后门级功能仿真和时序仿真。这种仿真轮廓的模型不仅适合FPGA/CPLD设计,同样适合IC设计。... 
一、RTL行为级仿真 
      在大部分设计中执行的第一个仿真将是RTL行为级仿真。这个阶段的仿真可以用来检查代码中的语法错误以及代码行为的正确性,其中不包括延时信息。如果没有实例化一些与器件相关的特殊底层元件的话,这个阶段的仿真也可以做到与器件无关。因此在设计的初期阶段不使用特殊底层元件即可以提高代码的可读性、可维护性,又可以提高仿真效率,且容易被重用。(绝大部分设计人员将这个阶段的仿真叫功能仿真!)

 


二、综合后门级功能仿真   (前仿真) 
      一般在设计流程中的第二个仿真是综合后门级功能仿真。绝大多数的综合工具除了可以输出一个标准网表文件以外,还可以输出Verilog或者VHDL网表,其中标准网表文件是用来在各个工具之间传递设计数据的,并不能用来做仿真使用,而输出的Verilog或者VHDL网表可以用来仿真,之所以叫门级仿真是因为综合工具给出的仿真网表已经是与生产厂家的器件的底层元件模型对应起来了,所以为了进行综合后仿真必须在仿真过程中加入厂家的器件库,对仿真器进行一些必要的配置,不然仿真器并不认识其中的底层元件,无法进行仿真。Xilinx公司的集成开发环境ISE中并不支持综合后仿真,而是使用映射前门级仿真代替,对于Xilinx开发环境来说,这两个仿真之间差异很小。 

三、时序仿真  (后仿真) 
      在设计流程中的最后一个仿真是时序仿真。在设计布局布线完成以后可以提供一个时序仿真模型,这种模型中也包括了器件的一些信息,同时还会提供一个SDF时序标注文件(Standard Delay format Timing Anotation)。SDF时序标注最初使用在Verilog语言的设计中,现在VHDL语言的设计中也引用了这个概念。对于一般的设计者来说并不需知道SDF