电子文章 | 电子资料下载 | 家电维修 | 维修资料下载 | 加入收藏 | 全站地图
您现在所在位置:电子爱好者电子文章FPGA基于FPGA的高频时钟的分频和分配设计

基于FPGA的高频时钟的分频和分配设计

11-20 16:12:42 | http://www.5idzw.com | FPGA | 人气:270
标签:fpga是什么,fpga教程,fpga培训,http://www.5idzw.com 基于FPGA的高频时钟的分频和分配设计,http://www.5idzw.com

 

4 软件实现

在设计的总体构思和器件选择完成后,必须进行的工作是建立设计输入文件,该文件主要用于描述所设计电路的逻辑功能。这里使用的是XILINX公司提供的开发工具FOUNDATION 4.1。本设计采用硬件描述语言VHDL来设计,其部分程序如下:

entity lvds is

port (

pclk: in STD LOGIC;

pclk_62: out std_logic_vector(31 downto 0);

pclk_4: out std_logic_vector(31 downto 0));

end lvds;

architecture lvds_arch of lvds is

component clkdll

port( clkin: in std_logic;

clkfb : in std_logic;

rst: in std_logic;

clk0: out std_logic;

clk90 : out std_logic;

clk180: out std_logic;

clk270: out std_logic;

clk2x : out std_logic;

clkdv: out std_logic;

locked: out std_logic);

end component;

begin

reset n<=‘0' ;

uibuf : ibufg port map (

i => pclk,

o => clk);

udll: clkdll port map( clkin => clk,

rst => reset_n,

clkfb => clkfb,

clk0 => clk0,

clk90 => open,

clk180 => open,

clk270 => open,

clk2x => clk2x,

clkdv => clkdv,

locked => locked

);

bufg_clk0: bufg port map ( i => clk0,

o=>clk_int2;

);

clkfb<=clk_int2;

process(clk2x);

begin

if clk2x′event and clk2x=′1′ then

clk_int <=clk int2;

clk_int3<= clkdv;

pclk_62(0)<=clk_int;

pclk_62(1)<=clk_int;

pclk_62(31)<=clk_int;

pclk_4(0)<=clk_int3;

pclk_4(1)<=clk_int3;

pclk_4(31)<=clk_int3;

end if;

end process;

end lvds_arch;

上一页  [1] [2] 

,基于FPGA的高频时钟的分频和分配设计