yosys/tests/arch/quicklogic/dspv2/complex_mult.ys

24 lines
585 B
Plaintext

read_verilog <<EOF
module top(input signed [16:0] ar, input signed [16:0] ai, input signed [16:0] br, input signed [16:0] bi, output reg signed [33:0] qr, output reg signed [33:0] qi, input clk);
reg signed [33:0] rr, ri, ir, ii;
always @(posedge clk) begin
rr <= ar * br;
ri <= ar * bi;
ir <= ai * br;
ii <= ai * bi;
qr <= rr - ii;
qi <= ir + ri;
end
endmodule
EOF
synth_quicklogic -family qlf_k6n10f -dspv2 -run :coarse
check -assert
read_verilog +/quicklogic/qlf_k6n10f/dsp_sim.v
prep -top top -flatten
opt_clean -purge
opt -full
opt_clean -purge
check -assert
dump