quartus软件调用代码模板

首先说明一下为什么要使用代码模板,主要因为这些代码模板的设计,在对应厂商的器件上综合出来的电路功能和效率是最好的,而且可以降低我们整个工程的综合时间。

1.怎样调用

以quartus 16.1版本为例。

  1. 打开quartus 16.1软件,点击File > New ,新建一个Verilog代码文件
    在这里插入图片描述
  2. 点击Insert Temolate对话框
    在这里插入图片描述

3.找到Verilog部分的模板,打开Full Designs,可以看到很多设计模板。在这里插入图片描述
4. 找一个乘法器加法器设计代码例程,点击Insert,将模板粘贴到我们的代码中。
在这里插入图片描述
代码如下:

module sum_of_eight_multipliers_chainout
#(parameter WIDTH=18)
(
	input clk, ena,
	input [WIDTH-1:0] a0, a1, a2, a3, a4, a5, a6, a7,
	input [WIDTH-1:0] b0, b1, b2, b3, b4, b5, b6, b7,
	output reg [2*WIDTH+1:0] dataout
);
	// Declare wires
	wire [2*WIDTH+1:0] sum1, sum2;

	// Store the results of the first two sums
	assign	sum1 = (a0 * b0 + a1 * b1) + (a2 * b2 + a3 * b3);
	assign	sum2 = (a4 * b4 + a5 * b5) + (a6 * b6 + a7 * b7);

	always @ (posedge clk)
	begin
		if (ena == 1)
		begin
			dataout <= sum1 + sum2;
		end
	end
endmodule 

其综合后的代码如图,逻辑非常合理,竞争冒险的概率很小。
在这里插入图片描述
如果把加法器不用括号括起来,其综合后的电路是这样的。在这里插入图片描述
看着很乱,而且加法器的使用很不合理,非常容易产生竞争冒险的情况。
所以还是要多去看看官方软件提供的设计模板,来提高自己的电路设计的合理性。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值