首页 > 其他分享 >ncverilog与finesim联合进行混合仿真的详细过程(以spice为顶层)

ncverilog与finesim联合进行混合仿真的详细过程(以spice为顶层)

时间:2024-06-14 20:32:12浏览次数:11  
标签:finesim option inv ncverilog fsdb testbench x1 spice

第一步:Makefile仿真命令

one:
    ncverilog +access+rwc +nc64bit +loadvpi=finesim.so:finesim_startup -f run.f

第二步:环境结构

(1)以模拟为顶层,顾名思义是把CDL网表中某一个模块替换为数字的function,其余全是CDL,以上图为例,把其中inv替换为数字的function。

(2)需要文件:testbench.v、反相器inv的function(inv.v)以及run.f。

(3)run.f内容如下

./testbench.v
./inv.v

(4)testbench.v内容如下:

module testbench;

//------------------------
inv  U_inv(
.A   (i),

.Z   (o)
);

//------------------------
initial
begin
  $fsdbDumpfile("waves.fsdb");
  $fsdbDumpvars;
  $fsdbDumpflush;
end

//------------------------
initial
begin
  $finesim_config(".finesim -auto -np 8 -o sim sim.sp");
  $finesim_instance(U_inv,"x1.U_inv");
end


endmodule

注:

x1.U_inv 为反相器在CDL网表里的层次信息。

第三步:激励文件sim.sp撰写

.inc './xxx.cdl'
 
.option finesim_speed = 1
.option finesim_mode  = promd
.option finesim_fsdb_split_time="1m"
 
x1 in1 in2 in3 out1 out2 out3 top

.SUBCKT inv i o
.ENDS

.option post probe
.probe v(*) level = 1
.probe i(*) level = 1
 
.lprobe level = 2 v(*) high = 4.5 low = 0.4
 
.tran 1n 2m
 
.end

注:

1、 x1 in1 in2 in3 out1 out2 out3 top 端口顺序一定要和CDL的顶层端口顺序一致。

2、.SUBCKT inv i o 端口顺序一定要和反相器的端口顺序一致。

3、finesim_mode 有很多种模式,可根据电路本身需求进行选择。

      spicead  :high precision analog circuits

      spicehd :high sensitive analog circuits

      spicemd :general spice mode for all circuits types

      spicexd :mixed signals design/extracted post layout

      prohd :large mixed signal design/leakage/power simulations

      promd :timing simulation

      proxd :functional verifications

第四步:运行Makefile仿真命令

运行make one 仿真命令,会生成两个sim.fsdb,因为 finesim_fsdb_split_time="1m" 这条命令会把波形以1m为时间节点分割成两个fsdb。

标签:finesim,option,inv,ncverilog,fsdb,testbench,x1,spice
From: https://blog.csdn.net/weixin_43672412/article/details/139637000

相关文章

  • 关于LTspice如何导入第三方的.lib文件进行仿真
    转载自:https://bbs.eeworld.com.cn/thread-1265324-1-1.html1.在芯片官网找到对应的PSPICE模型下载后,将.lib文件移入到路径下的sub文件夹中。(例如C:\Users\\'username'\Documents\LTspiceXVII\lib\sub)2.将.lib文件拖入LTspice后右键单击.subckt后的芯片名称,选择CreatSymbol,即......
  • LTSPICE Tips
    快捷键:   ①瞬态分析:看电压、电流、功率,类似示波器     ②交流分析:看频响增益损耗-3dB带宽 ACanalysis里的扫频参数:list:确定某一频点进行分析linear:线性的每个扫描频点的坐标点间距相等octave八倍频、decade十倍频:倍频是频程的意思,即下一个坐标点......
  • 将商用器件的spice模型导入到Cadence Virtuoso中仿真
    需要的文件和软件器件的SPICE网表文件(后缀为.cir)CadenceVirtuosoLinux端文本编辑器SPICE网表文件有的器件商家可能提供的模型是PSPICE。PSPICE只是CadenceSPB套件的仿真器而已,内核都是SPICE。下载好SPICE器件模型(.cir文件)之后,应该打开看一眼,熟悉一下网表文件的构成。如......
  • SPICE/SpiceyPy学习记录整理(一)-- SPICE概述
    目录一、SPICE概述二、SPICE内核文件三、SpiceToolkitSoftware介绍四、基础概念4.1前言4.2时间4.2.1概念4.2.2时间系统4.3参考系4.3.1参考系的种类4.3.2J2000坐标系与ICRF坐标系的对比4.4坐标系4.5状态4.5.1状态矢量4.5.2坐标转换4.6像差校正......
  • SPICE/SpiceyPy学习记录整理(三)-- Mice
    目录一、Mice介绍二、Mice使用方法1.1加载内核1.2卸载内核1.3矢量化参数三、示例SPICE官方课程学习文档链接:https://naif.jpl.nasa.gov/naif/tutorials.html一、Mice介绍        Mice是SPICE在MATLAB环境下的扩展工具包。所有Mice调用都是CSPICE函数,......
  • SPICE/SpiceyPy学习记录整理(二)-- 工具包安装与介绍
    目录一、获取、安装和引用SPICEToolkit1.1获取SPICEToolkit1.2安装SPICEToolkit1.3检查是否安装成功二、Toolkit介绍2.1工具包架构2.2MatlabToolkit--Mice 2.3Toolkit特点2.4工具包目录结构三、ToolkitLibrary介绍3.1 ToolkitLibrary概述3.2 Tool......
  • tryhackme-Spice Hut(香料小屋)
    信息收集通过开放端口可以发现21端口和80端口可以进行下手,首先对21端口进行匿名用户访问测试登录成功将important.jpg和notice.txt文件下载,ftp目录并没有文件,但是通过权限的观察可以进行写入(也就是上传文件),后续可能用到通过查看notice.txt得到一些管理员的信息,大概意思是不......
  • LTspice 修改波形图与电路图配色
    前言LTspice的默认颜色设置看起来比较偏暗,且不太适合截图使用,如下所示:本文介绍通过修改默认颜色设置来实现电路图颜色和BSch3V,波形图和gnuplot的配色相似。LTspice的颜色设置可以通过[Tools]->[ColorPreferences]来进行。波形图配色设置波形显示的颜色设置通过上图Col......
  • 电力电子仿真工具——LTSpice
    LTSPICE的是ADI旗下一款免费的SPICE类仿真软件,有的时候,可以免费使用,对工程师、学生来说就是胜过千言万语的。SPICE型仿真和PLECS有点不同,它是由器件厂家用伪代码,可以理解为一些方程函数把它家的器件或者子系统的特性描述出来,封装成库函数给器件应用者,这样对于使用者来说,就可......
  • 双脉冲仿真测试(LTspice搭建)
     1.双脉冲测试原理    很多博主已经发布了大量有关双脉冲测试的意义、双脉冲测试原理等,顾在此不在赘诉,如有需要的小伙伴可以点这里。以下重点介绍在LTspice中双脉冲电路的搭建及可能遇到的问题。2.搭建双脉冲测试               ......