如果知道vhdl和verilog各自独立的调用方法 你就会混合编程 因为完全没区别
需要注意 vhdl不区分大小写 而verilog区分
modelsim的编译命令中vcom用于vhdl 而vlog用于verilog
modelsim安装目录下就有demo 路径是C:\modeltech64_xxx\examples\tutorials\mixed
vhdl调用verilog module举例(FD是verilog的)
COMPONENT FD PORT (
Q : out STD_ULOGIC;
D : in STD_ULOGIC;
C : in STD_ULOGIC );
END COMPONENT;
UUT : FD PORT MAP(
Q => O,
D => I,
C => CLK);
verilog调用vhdl entity(FD是vhdl的)
FD FD1(
Q(Q_OUT),
C(CLK);
D(A);
一个是专业级的仿真软件,一个是自带的仿真模块。 用modelsim仿真,运行速度快,仿真性能好,查看各种信号和 *** 作简单,关键是界面交互人性化埃 ISE自带的那个简直就不好用,连波形的放大放小查看都鸡肋的很。 如果你用了modelsim,就再也不想用
你没有关掉ModelSim的情况下,重新运行当然会出现错误,ModelSim一次只能为一个工程编译。
至于简单的方法是有的:
1、你第一次运行ModelSim以后,在Modelsim的Transcript串口,按一下“上”键,会出现一个do XXXXXdo的命令,这条就是运行Modelsim的指令,先不用。你将它改为edit XXXXXdo,单击回车,会d出一个窗口,你可以将窗口内的一下内容前面加上#,目的是为了防止再一次编译库,可以节省时间。弄好以后点击保存,关掉这个窗口。
vlib verilog_libs/altera_ver
vmap altera_ver /verilog_libs/altera_ver
vlog -vlog01compat -work altera_ver {d:/altera/110/quartus/eda/sim_lib/altera_primitivesv}
vlib verilog_libs/lpm_ver
vmap lpm_ver /verilog_libs/lpm_ver
vlog -vlog01compat -work lpm_ver {d:/altera/110/quartus/eda/sim_lib/220modelv}
vlib verilog_libs/sgate_ver
vmap sgate_ver /verilog_libs/sgate_ver
vlog -vlog01compat -work sgate_ver {d:/altera/110/quartus/eda/sim_lib/sgatev}
vlib verilog_libs/altera_mf_ver
vmap altera_mf_ver /verilog_libs/altera_mf_ver
vlog -vlog01compat -work altera_mf_ver {d:/altera/110/quartus/eda/sim_lib/altera_mfv}
vlib verilog_libs/altera_lnsim_ver
vmap altera_lnsim_ver /verilog_libs/altera_lnsim_ver
vlog -sv -work altera_lnsim_ver {d:/altera/110/quartus/eda/sim_lib/altera_lnsimsv}
vlib verilog_libs/cycloneive_ver
vmap cycloneive_ver /verilog_libs/cycloneive_ver
vlog -vlog01compat -work cycloneive_ver {d:/altera/110/quartus/eda/sim_lib/cycloneive_atomsv}
2、你可以在Quartus里面修改你的逻辑代码了,然后修改完了保存以后,直接在Modelsim的Transcript串口,按“上”键,找出刚才的do XXXXXdo命令,然后回车运行即可,此时的Modelsim将会按照你修改后程序进行仿真,但是注意,若主程序的端口和变量发生变化后,你需要修改你的testbench文件,不然报错。
这只是简单的编译,还有不懂的继续追问,若没有请采纳~
在QUARTUS中的信号仿真只能用自身的仿真工具看数字图,据我所知,如果要想在modelsim里面看模拟图像就得编写TEST BENCH文件(这个我不会),如果想直接看模拟的信号图像就在ISE中编译程序,这个可以直接自动生成TEST BENCH文件。我以前用QUARTUS做过类似的DDS,大家可以讨论下。
每次重新调用之前 ise是不是也需要提前编译点神马东东 如果从ISE内调用的 我感觉那个过程是必须的
貌似可以把所有程序拷贝到modelsim的工程下 直接在modelsim的project下改程序 做仿真
应该需要为modelsim编译一下xilinx的library
pll,ram,都要把v文件加入modelsim,或者在主程序里面include并例化。
另外altsyncram貌似是从altera的FPGA中生成的,所以必须加入tb_altera_mfv文件才行。
用modelsim的时候,在sim中选中测试程序,点鼠标右键add->add all signals to wave,这样就行了
或者,在想看的信号所在模块中将这些信号引出来,作为输出,这样在输出中也看得到
以上就是关于请问在modelsim下如何进行VHDL和Verilog的混合编程全部的内容,包括:请问在modelsim下如何进行VHDL和Verilog的混合编程、如何恢复modelsim10.1d中编译仿真后的注释乱码、quartus中修改设计后多次调用modelsim太麻烦了,求简单方法。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)