|
31 | 31 | // `FFLSRN: load-enable and synchronous active-low reset |
32 | 32 | // `FFLNR: load-enable without reset |
33 | 33 |
|
| 34 | +`ifdef VERILATOR |
| 35 | +`define NO_SYNOPSYS_FF 1 |
| 36 | +`endif |
| 37 | + |
34 | 38 | `define REG_DFLT_CLK clk_i |
35 | 39 | `define REG_DFLT_RST rst_ni |
36 | 40 |
|
|
81 | 85 | // __clk: clock input |
82 | 86 | // __reset_clk: reset input, active-high |
83 | 87 | `define FFSR(__q, __d, __reset_value, __clk, __reset_clk) \ |
84 | | - `ifndef VERILATOR \ |
| 88 | + `ifndef NO_SYNOPSYS_FF \ |
85 | 89 | /``* synopsys sync_set_reset `"__reset_clk`" *``/ \ |
86 | 90 | `endif \ |
87 | 91 | always_ff @(posedge (__clk)) begin \ |
|
95 | 99 | // __clk: clock input |
96 | 100 | // __reset_n_clk: reset input, active-low |
97 | 101 | `define FFSRN(__q, __d, __reset_value, __clk, __reset_n_clk) \ |
98 | | - `ifndef VERILATOR \ |
| 102 | + `ifndef NO_SYNOPSYS_FF \ |
99 | 103 | /``* synopsys sync_set_reset `"__reset_n_clk`" *``/ \ |
100 | 104 | `endif \ |
101 | 105 | always_ff @(posedge (__clk)) begin \ |
|
162 | 166 | // __clk: clock input |
163 | 167 | // __reset_clk: reset input, active-high |
164 | 168 | `define FFLSR(__q, __d, __load, __reset_value, __clk, __reset_clk) \ |
165 | | - `ifndef VERILATOR \ |
| 169 | + `ifndef NO_SYNOPSYS_FF \ |
166 | 170 | /``* synopsys sync_set_reset `"__reset_clk`" *``/ \ |
167 | | - `endif \ |
| 171 | + `endif \ |
168 | 172 | always_ff @(posedge (__clk)) begin \ |
169 | 173 | __q <= (__reset_clk) ? (__reset_value) : ((__load) ? (__d) : (__q)); \ |
170 | 174 | end |
|
177 | 181 | // __clk: clock input |
178 | 182 | // __reset_n_clk: reset input, active-low |
179 | 183 | `define FFLSRN(__q, __d, __load, __reset_value, __clk, __reset_n_clk) \ |
180 | | - `ifndef VERILATOR \ |
| 184 | + `ifndef NO_SYNOPSYS_FF \ |
181 | 185 | /``* synopsys sync_set_reset `"__reset_n_clk`" *``/ \ |
182 | | - `endif \ |
| 186 | + `endif \ |
183 | 187 | always_ff @(posedge (__clk)) begin \ |
184 | 188 | __q <= (!__reset_n_clk) ? (__reset_value) : ((__load) ? (__d) : (__q)); \ |
185 | 189 | end |
|
193 | 197 | // __clk: clock input |
194 | 198 | // __arst_n: asynchronous reset, active-low |
195 | 199 | `define FFLARNC(__q, __d, __load, __clear, __reset_value, __clk, __arst_n) \ |
196 | | - `ifndef VERILATOR \ |
197 | | - /``* synopsys sync_set_reset `"__clear`" *``/ \ |
198 | | - `endif \ |
| 200 | + `ifndef NO_SYNOPSYS_FF \ |
| 201 | + /``* synopsys sync_set_reset `"__clear`" *``/ \ |
| 202 | + `endif \ |
199 | 203 | always_ff @(posedge (__clk) or negedge (__arst_n)) begin \ |
200 | 204 | if (!__arst_n) begin \ |
201 | 205 | __q <= (__reset_value); \ |
|
0 commit comments