等高手解惑VHDL library和verilog预编译的区别
时间:10-02
整理:3721RD
点击:
在很多地方看到,也会听别人说到:VHDL在建立大的工程方面比verilog有一定优势,因为VHDL有一个library的概念,可以把需要重复使用的实体,结构体,数据类型,配置等信息放在预先编译好的library里,可供其他模块引用。而verilog没有这样的概念,要通过include命令来加入预先建立的文件。
问题:
1. 既然VHDL的library是预先编译好的,那么是在什么时候编译的? 在我的应用中,创建了库然后在库中建了文件后,并没有什么让library先编译的操作啊。看起来像是和普通的模块一起综合的,但是为什么又说是“预先编译好的”呢?在工程编译阶段,library是什么时候怎样被引用的?
2. 在verilog里,虽然没有library,但可以用include加入文件啊,他们能够实现的功能不是一样的吗?相比之下VHDL的library有什么优势呢?
等解惑!
问题:
1. 既然VHDL的library是预先编译好的,那么是在什么时候编译的? 在我的应用中,创建了库然后在库中建了文件后,并没有什么让library先编译的操作啊。看起来像是和普通的模块一起综合的,但是为什么又说是“预先编译好的”呢?在工程编译阶段,library是什么时候怎样被引用的?
2. 在verilog里,虽然没有library,但可以用include加入文件啊,他们能够实现的功能不是一样的吗?相比之下VHDL的library有什么优势呢?
等解惑!
随便找本书看看,很简单的
这有点类似于windows下面的执行程序。
预编译好的相当于可以直接调用的DLL文件,DLL文件里面的函数就是编写完成后预编译好的。可执行文件exe只要在执行的时候直接调用对应的函数就可以了。比如MFC还是什么的。
没有预编译好的话,就比如把DLL里面的源代码提供给你,这样可执行文件在执行之前还要把源代码编译成DLL,然后再运行。因为每次都要编译的话,当然会影响编译速度了。
不确定这种比喻是否恰当,只是个人意见,仅供参考。
本人也正在等答案,求解
坐等高人现身
up , search the answer
没怎么研究VHDL,但是对于Verilog,软件工具通常同时支持预编译和直接调用文件两种方式,而对于VHDL,通常只支持预编译的方式来导入。也许这两者的区别只是VHDL一贯比较严谨,而verilog的语言风格相对宽松。
即使同样是预编译的调用方式,VHDL在每个文件中必须明确指出当前调用的实体所在的库名;而verilog则不需要,即使存在多个预编译的库
