|
发表于 2012-4-25 21:36:14
|
显示全部楼层
本帖最后由 lastfool 于 2012-4-25 21:42 编辑
元件例化和调用调用:比如生成PLL1.VHD,如下
LIBRARY ieee;
USE ieee.std_logic_1164.all;
LIBRARY altera_mf;
USE altera_mf.all;
ENTITY PLL1 IS
PORT
(
inclk0 : IN STD_LOGIC := '0';
c0 : OUT STD_LOGIC ;
c1 : OUT STD_LOGIC ;
c2 : OUT STD_LOGIC ;
c3 : OUT STD_LOGIC ;
c4 : OUT STD_LOGIC ;
locked : OUT STD_LOGIC
);
END PLL1;
则在另一个VHDL文件里可以这样使用它:
--例化
component PLL1 IS
PORT
(
inclk0 : IN STD_LOGIC := '0';
c0 : OUT STD_LOGIC ;
c1 : OUT STD_LOGIC ;
c2 : OUT STD_LOGIC ;
c3 : OUT STD_LOGIC ;
c4 : OUT STD_LOGIC ;
locked : OUT STD_LOGIC
);
END component;
--调用元件:
PLL_COMP: PLL1
port map
(
inclk0 =>OSC_IN,
c0 =>clk_50M,
c1 =>clk_100M,
-- c1 =>clk_100M,
c2 =>clk_150M,
c3 =>clk_200M,
c4 =>clk_20M,
locked =>PLL_LOCK
);
如果不明白,自己用原理图画一个大筐,再画两个小框,每个小框里做一些程序实现什么功能,编译后生成VHDL文件,自己查看QUARTUS是怎么组织的,我没有问过,就是这样学的。 |
|