Altera Home Page
文档资料 许可
在线购买 下载

  主页   |   产品   |   支持   |   最终市场   |   技术中心   |   教育与活动   |   公司介绍   |   在线购买  
  mySupport   |   器件   |   软件   |   IP   |   设计范例   |   参考设计  

 产品
   Quartus II
      SOPC Builder
      MAX+PLUS II
      ModelSim-Altera
  
 资源中心
      简介
      安装&许可
      脚本
       电路板设计& I/O
      网表阅读器 & 综合
      编译增强特性
      优化
      功耗管理
   TimeQuest时序分析器
      标准时序分析器
      仿真 & 确认
      片内调试
      HardCopy设计
  
 软件资源
      操作系统支持
      驱动安装
  
 下载与许可
      下载
   许可
  
 Quartus II EDA 支持
      Quartus II 接口
   综合工具
          Design Compiler
          DC FPGA
          FPGA Compiler II
          LeonardoSpectrum
          Precision RTL Synthesis
          Synplify
   仿真工具
   验证工具
   时序分析工具
   再综合工具
   电路板级工具
  
 老版软件EDA支持
      供应商类
      工具类
      功能类
  

Example of Creating a Black Box for a VHDL Custom Variation of a Megafunction with the Synplify Software

To specify that the Synplicity Synplify software should treat the my_pll.vhd file that you created in Example of Creating a VHDL Custom Variation of the altclklock Function as a black box, refer to the following code sample from the top-level design file. In this example, the top-level design file is pllsource.vhd. To modify the source code for the pllsource.vhd file to define the module name and port type and to specify that the module is a black box, add an empty module declaration to the pllsource.vhd top-level design file as shown in the following code sample:

library IEEE;
use ieee.std_logic_1164.all;
library synplify;
use synplify.attributes.all;
ENTITY pllsource IS
PORT(
    inclock, inclocken          : in std_logic;
    data_in1                    : in std_logic_vector(7 downto 0);
    clock0, locked, div2        : out std_logic;
    r_out                       : out std_logic_vector(7 downto 0));
END pllsource;
ARCHITECTURE rtl of pllsource IS
component my_pll
        PORT
        (
                inclock         : IN STD_LOGIC ;
                inclocken       : IN STD_LOGIC ;
                locked          : OUT STD_LOGIC ;
                clock0          : OUT STD_LOGIC ;
                clock1          : OUT STD_LOGIC 
        );
end component;
attribute black_box of my_pll: component is true;
SIGNAL clock1_sig : std_logic;
SIGNAL r_int : std_logic_vector(7 downto 0);
BEGIN
my_pll_inst : my_pll PORT MAP (
                inclock  => inclock,
                inclocken        => inclocken,
                locked   => locked,
                clock0   => clock0,
                clock1   => clock1_sig
        );
PROCESS(clock1_sig)
begin
    if (clock1_sig'event and clock1_sig='1') then
        r_int <= data_in1;
        r_out <= r_int;      
    end if;
end process;
END rtl;

  请填写反馈意见
  注册索取最新邮件通知