mirror of
https://github.com/vortexgpgpu/vortex.git
synced 2025-04-24 05:47:35 -04:00
minor update
This commit is contained in:
parent
28a2f77725
commit
d8bdaa2b4e
4 changed files with 26 additions and 22 deletions
|
@ -89,8 +89,12 @@ kill -9 <pid>
|
|||
lsof +D build_ase_1c
|
||||
|
||||
# quick off cache synthesis
|
||||
make -C pipeline > pipeline/build.log 2>&1 &
|
||||
make -C cache > cache/build.log 2>&1 &
|
||||
make -C core > core/build.log 2>&1 &
|
||||
make -C vortex > vortex/build.log 2>&1 &
|
||||
make -C top > top/build.log 2>&1 &
|
||||
make -C pipeline clean && make -C pipeline > pipeline/build.log 2>&1 &
|
||||
make -C cache clean && make -C cache > cache/build.log 2>&1 &
|
||||
make -C core clean && make -C core > core/build.log 2>&1 &
|
||||
make -C vortex clean && make -C vortex > vortex/build.log 2>&1 &
|
||||
make -C top clean && make -C top > top/build.log 2>&1 &
|
||||
|
||||
# How to calculate the maximum operating frequency?
|
||||
200 Mhz -> period = 1/200x10^6 = 5ns
|
||||
if slack = +1.664 -> minimal period = 5-1.664 = 3.336 -> fmax = 1/3.336 = 300 Mhz
|
|
@ -18,7 +18,7 @@ module VX_gpr_stage #(
|
|||
wire [`NUM_THREADS-1:0][31:0] rs2_data;
|
||||
wire [`NW_BITS+`NR_BITS-1:0] raddr1;
|
||||
|
||||
VX_gpr_ram gpr_int_ram (
|
||||
VX_gpr_ram gpr_ram (
|
||||
.clk (clk),
|
||||
.we ({`NUM_THREADS{writeback_if.valid}} & writeback_if.thread_mask),
|
||||
.waddr ({writeback_if.warp_num, writeback_if.rd}),
|
||||
|
|
|
@ -25,7 +25,7 @@ module VX_divide #(
|
|||
wire [WIDTHN-1:0] quotient_unqual;
|
||||
wire [WIDTHD-1:0] remainder_unqual;
|
||||
|
||||
lpm_divide quartus_div (
|
||||
lpm_divide divide (
|
||||
.clock (clk),
|
||||
.numer (numer),
|
||||
.denom (denom),
|
||||
|
@ -36,13 +36,13 @@ module VX_divide #(
|
|||
);
|
||||
|
||||
defparam
|
||||
quartus_div.lpm_type = "LPM_DIVIDE",
|
||||
quartus_div.lpm_widthn = WIDTHN,
|
||||
quartus_div.lpm_widthd = WIDTHD,
|
||||
quartus_div.lpm_nrepresentation = NSIGNED ? "SIGNED" : "UNSIGNED",
|
||||
quartus_div.lpm_drepresentation = DSIGNED ? "SIGNED" : "UNSIGNED",
|
||||
quartus_div.lpm_hint = "MAXIMIZE_SPEED=6,LPM_REMAINDERPOSITIVE=FALSE",
|
||||
quartus_div.lpm_pipeline = PIPELINE;
|
||||
divide.lpm_type = "LPM_DIVIDE",
|
||||
divide.lpm_widthn = WIDTHN,
|
||||
divide.lpm_widthd = WIDTHD,
|
||||
divide.lpm_nrepresentation = NSIGNED ? "SIGNED" : "UNSIGNED",
|
||||
divide.lpm_drepresentation = DSIGNED ? "SIGNED" : "UNSIGNED",
|
||||
divide.lpm_hint = "MAXIMIZE_SPEED=9,LPM_REMAINDERPOSITIVE=FALSE",
|
||||
divide.lpm_pipeline = PIPELINE;
|
||||
|
||||
assign quotient = quotient_unqual [WIDTHQ-1:0];
|
||||
assign remainder = remainder_unqual [WIDTHR-1:0];
|
||||
|
|
|
@ -18,7 +18,7 @@ module VX_multiplier #(
|
|||
|
||||
`ifdef QUARTUS
|
||||
|
||||
lpm_mult quartus_mult (
|
||||
lpm_mult mult (
|
||||
.clock (clk),
|
||||
.dataa (dataa),
|
||||
.datab (datab),
|
||||
|
@ -29,13 +29,13 @@ module VX_multiplier #(
|
|||
.sum (1'b0)
|
||||
);
|
||||
|
||||
defparam quartus_mult.lpm_type = "LPM_MULT",
|
||||
quartus_mult.lpm_widtha = WIDTHA,
|
||||
quartus_mult.lpm_widthb = WIDTHB,
|
||||
quartus_mult.lpm_widthp = WIDTHP,
|
||||
quartus_mult.lpm_representation = SIGNED ? "SIGNED" : "UNSIGNED",
|
||||
quartus_mult.lpm_pipeline = PIPELINE,
|
||||
quartus_mult.lpm_hint = "DEDICATED_MULTIPLIER_CIRCUITRY=YES,MAXIMIZE_SPEED=9";
|
||||
defparam mult.lpm_type = "LPM_MULT",
|
||||
mult.lpm_widtha = WIDTHA,
|
||||
mult.lpm_widthb = WIDTHB,
|
||||
mult.lpm_widthp = WIDTHP,
|
||||
mult.lpm_representation = SIGNED ? "SIGNED" : "UNSIGNED",
|
||||
mult.lpm_pipeline = PIPELINE,
|
||||
mult.lpm_hint = "MAXIMIZE_SPEED=9,DEDICATED_MULTIPLIER_CIRCUITRY=YES";
|
||||
`else
|
||||
|
||||
wire [WIDTHP-1:0] result_unqual;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue