Q1:输出输入信号不能混用
当一个信号被定义为输出信号之后,在固件程序中不能够再读取这个信号的值来赋给新的信号。常见的解决方法是,将输出信号换成另一个信号,直接将该信号的值赋值给输出信号。
a :out
b :in
c :signal
if we say b <=a
,it will be a mistake.
the right way to say is that a <=c; b <=c;
.
Q2:library的调用
在项目工程的目录下新建文件夹my_lib,在该文件夹新建.vhd文件,文件内容为:
package my_library is
...
...
...
end my_libray;
首先需要添加库目录,quartus-->assignment-->setting-->library-->将my_lib文件夹添加到目录。
在需要引用的.vhd文件添加以下代码:
library my_lib;
use my_lib.my_library.all;