当前位置:首页 > > 处芯积律

    在进行编码时,我们时常会使用到乘法器,除法器,等较复杂功能模块,为此fpga vendor设计定制了IP核,用户通过调用IP核来实现所需功能,耗费资源少且利于时序收敛。我们在日常verilog编码过程期望通过参数化的方式调用IP核。例如IP的位宽,时延,部分关键特性期望可以通过参数调用的方式实现,而不是通过打开GUI界面通过手动选择的方式实现。其实实现方式很简单。首先通过手动打开quartus,采用手动调用的方式选择想要使用的IP核,完成配置后并且产生IP,在生产的例化代码中查看如何配置功能和参数,然后自己按照例化案例模块中的格式编写一个verilog模块将IP包一层,并且关键特性使用参数化。这样就能实现IP核的参数化调用了。

首先通过器件手册获取IP核说明,也可以通过官网查询(https://www.intel.cn/content/www/cn/zh/docs/programmable/683037/23-1/core-references-91023.html)

本案例中LPM_MULT Intel FPGA IP 核是一个两个输入数据乘法器,两个相乘数据作为输入,所得结果作为输出。

1.IP功能特性描述

LPM_MULT 核提供如下特性:

生成一个乘法器将两个输入数据值相乘

支持1–256位数据宽度

支持有符号和无符号数据表示格式

支持区域或速度优化

支持具有可配置输出延迟的流水线操作

为专用数字信号处理(DSP)模块电路或逻辑单元(LE)中的实现提供选项。

2.IP参数设置

3.接口信号

4.quartus如何调用IP

FPGA IP描述文档路径

5.参数化调用IP

参考quartus工具给出的lpm_mult调用方法,参数化调用IP。

module  asic_lpm_mult  #(    parameter PIPE_NUM              = 4                        ,    parameter MULT_DATAA_WDTH       = 16                       ,    parameter MULT_DATAB_WDTH       = 16                       ,    parameter MULT_RESULT_WDTH      = 32                          )(          input                                         i_clk        ,          input                  [MULT_DATAA_WDTH -1:0] dataa        ,         input                  [MULT_DATAB_WDTH -1:0] datab        ,         output                [MULT_RESULT_WDTH -1:0result);      lpm_mult  u_lpm_mult (        .clock      ( i_clk             ),        .dataa      ( dataa             ),        .datab      ( datab             ),        .result     ( result            ),        .aclr       (                   ),        .clken      ( 1'b1              ),        .sclr       ( 1'b0              ),        //.sum        ( 1'b0              )              );     defparam        u_lpm_mult.lpm_hint = "MAXIMIZE_SPEED=9",        u_lpm_mult.lpm_pipeline = PIPE_NUM,        u_lpm_mult.lpm_representation = "UNSIGNED",        u_lpm_mult.lpm_type = "LPM_MULT",        u_lpm_mult.lpm_widtha = MULT_DATAA_WDTH,        u_lpm_mult.lpm_widthb = MULT_DATAB_WDTH,        u_lpm_mult.lpm_widthp = MULT_RESULT_WDTH;  endmodule

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
关闭