[an error occurred while processing this directive]
|
То, что 11 разряд всегда будет в нуле, синтезатор предупреждает. И это видно в Technology map просмотрщике. Это к вопросу о чувствитедьности к разрядности. Вы не сказали какой кристалл. Потому что на циклонах все умещается в 60 нс без всяких ухищрений и скобочек.
Даже на 10к с 4 градации скорости (квартус выбрасывает carry sum) получается 50 нс. А в max+ вобще 30 нс при установках auto.
Требовать от квартуса нормальной работы со старыми кристаллами, наверно чересчур.
module block_name
(
// {{ALTERA_ARGS_BEGIN}} DO NOT REMOVE THIS LINE!
clk, d1, d2, d3, d4, d5, d6, out
// {{ALTERA_ARGS_END}} DO NOT REMOVE THIS LINE!
);
// Port Declaration
// {{ALTERA_IO_BEGIN}} DO NOT REMOVE THIS LINE!
input clk;
input [7:0] d1;
input [7:0] d2;
input [7:0] d3;
input [7:0] d4;
input [7:0] d5;
input [7:0] d6;
output [10:0] out;
// {{ALTERA_IO_END}} DO NOT REMOVE THIS LINE!
reg [10:0] out;
wire [8:0] d1_d2;
wire [8:0] d3_d4;
wire [8:0] d5_d6;
wire [9:0] sum_a;
assign d1_d2 = d1+d2;
assign d3_d4 = d3+d4;
assign d5_d6 = d5+d6;
assign sum_a = d1_d2 + d3_d4;
always @(posedge clk)
begin
out <= sum_a + d5_d6;
end
endmodule
E-mail: info@telesys.ru