da4ml 0.3.0__tar.gz → 0.3.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of da4ml might be problematic. Click here for more details.
- {da4ml-0.3.0/src/da4ml.egg-info → da4ml-0.3.1}/PKG-INFO +1 -1
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/_version.py +2 -2
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/build_prj.tcl +6 -8
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/verilog_model.py +2 -2
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/converter/hgq2/replica.py +1 -1
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/ops/conv_utils.py +1 -1
- {da4ml-0.3.0 → da4ml-0.3.1/src/da4ml.egg-info}/PKG-INFO +1 -1
- {da4ml-0.3.0 → da4ml-0.3.1}/.clang-format +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/.github/workflows/python-publish.yml +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/.gitignore +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/.pre-commit-config.yaml +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/DAIS-spec.md +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/LICENSE +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/README.md +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/interperter/DAISInterpreter.cc +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/interperter/DAISInterpreter.hh +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/pyproject.toml +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/setup.cfg +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/__init__.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/__init__.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/api.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/core/__init__.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/core/indexers.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/core/state_opr.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/types.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/util/__init__.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/util/bit_decompose.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/util/mat_decompose.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/__init__.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/__init__.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/cpp_codegen.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/hls_model.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_binary.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_common.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_decl.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_fixed.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_fixed_base.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_fixed_ref.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_fixed_special.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_int.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_int_base.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_int_ref.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_int_special.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_shift_reg.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/etc/ap_private.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/hls_math.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/hls_stream.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/utils/x_hls_utils.h +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/binder_util.hh +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/build_binder.mk +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/vitis_bitshift.hh +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/__init__.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/comb.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/io_wrapper.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/pipeline.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/binder_util.hh +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/build_binder.mk +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/ioutil.hh +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/mux.v +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/negative.v +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/shift_adder.v +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/template.xdc +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/converter/__init__.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/converter/hgq2/parser.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/__init__.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/fixed_variable.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/fixed_variable_array.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/ops/__init__.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/ops/einsum_utils.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/ops/reduce_utils.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/pipeline.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/tracer.py +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml.egg-info/SOURCES.txt +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml.egg-info/dependency_links.txt +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml.egg-info/requires.txt +0 -0
- {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml.egg-info/top_level.txt +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
set project_name "${PROJECT_NAME}"
|
|
2
2
|
set device "${DEVICE}"
|
|
3
3
|
|
|
4
|
-
set top_module "${project_name}
|
|
4
|
+
set top_module "${project_name}"
|
|
5
5
|
set output_dir "./output_${project_name}"
|
|
6
6
|
|
|
7
7
|
create_project $project_name "${output_dir}/$project_name" -force -part $device
|
|
@@ -9,9 +9,10 @@ create_project $project_name "${output_dir}/$project_name" -force -part $device
|
|
|
9
9
|
set_property TARGET_LANGUAGE Verilog [current_project]
|
|
10
10
|
set_property DEFAULT_LIB work [current_project]
|
|
11
11
|
|
|
12
|
-
read_verilog "${project_name}_wrapper.v"
|
|
13
12
|
read_verilog "${project_name}.v"
|
|
14
13
|
read_verilog "shift_adder.v"
|
|
14
|
+
read_verilog "negative.v"
|
|
15
|
+
read_verilog "mux.v"
|
|
15
16
|
foreach file [glob -nocomplain "${project_name}_stage*.v"] {
|
|
16
17
|
read_verilog $file
|
|
17
18
|
}
|
|
@@ -25,8 +26,7 @@ file mkdir "${output_dir}/reports"
|
|
|
25
26
|
|
|
26
27
|
# synth
|
|
27
28
|
synth_design -top $top_module -mode out_of_context -retiming \
|
|
28
|
-
-flatten_hierarchy
|
|
29
|
-
-directive AlternateRoutability
|
|
29
|
+
-flatten_hierarchy full -resource_sharing auto
|
|
30
30
|
|
|
31
31
|
write_checkpoint -force "${output_dir}/${project_name}_post_synth.dcp"
|
|
32
32
|
|
|
@@ -34,15 +34,13 @@ report_timing_summary -file "${output_dir}/reports/${project_name}_post_synth_ti
|
|
|
34
34
|
report_power -file "${output_dir}/reports/${project_name}_post_synth_power.rpt"
|
|
35
35
|
report_utilization -file "${output_dir}/reports/${project_name}_post_synth_util.rpt"
|
|
36
36
|
|
|
37
|
-
#
|
|
38
|
-
|
|
39
|
-
opt_design -directive ExploreSequentialArea
|
|
37
|
+
# opt_design -directive ExploreSequentialArea
|
|
40
38
|
opt_design -directive ExploreWithRemap
|
|
41
39
|
|
|
42
40
|
report_design_analysis -congestion -file "${output_dir}/reports/${project_name}_post_opt_congestion.rpt"
|
|
43
41
|
|
|
44
42
|
# place
|
|
45
|
-
place_design -directive
|
|
43
|
+
place_design -directive SSI_HighUtilSLRs -fanout_opt
|
|
46
44
|
report_design_analysis -congestion -file "${output_dir}/reports/${project_name}_post_place_congestion_initial.rpt"
|
|
47
45
|
|
|
48
46
|
phys_opt_design -directive AggressiveExplore
|
|
@@ -28,10 +28,10 @@ class VerilogModel:
|
|
|
28
28
|
solution: Solution | CascadedSolution,
|
|
29
29
|
prj_name: str,
|
|
30
30
|
path: str | Path,
|
|
31
|
-
latency_cutoff:
|
|
31
|
+
latency_cutoff: float = -1,
|
|
32
32
|
print_latency: bool = True,
|
|
33
33
|
part_name: str = 'xcvu13p-flga2577-2-e',
|
|
34
|
-
clock_period:
|
|
34
|
+
clock_period: float = 5,
|
|
35
35
|
clock_uncertainty: float = 0.1,
|
|
36
36
|
io_delay_minmax: tuple[float, float] = (0.2, 0.4),
|
|
37
37
|
register_layers: int = 1,
|
|
@@ -157,7 +157,7 @@ class MirrorQDense(MirrorOperationBase):
|
|
|
157
157
|
dim = inputs._vars.ndim
|
|
158
158
|
axis = op.axis
|
|
159
159
|
assert axis != 0, 'Cannot normalizing on batch axis'
|
|
160
|
-
axis
|
|
160
|
+
axis = axis - 1 if axis >= 0 else dim + axis
|
|
161
161
|
idx = ''.join(chr(ord('a') + i) for i in range(dim))
|
|
162
162
|
eq = f'...{idx},{idx[axis]}->...{idx}'
|
|
163
163
|
else:
|
|
@@ -40,7 +40,7 @@ def stride_arr(stride: int | tuple[int, ...], arr: np.ndarray):
|
|
|
40
40
|
stride = (stride,) * (ndim - 1)
|
|
41
41
|
|
|
42
42
|
_idx = tuple(slice(None, None, st) for st in stride)
|
|
43
|
-
return arr[
|
|
43
|
+
return arr[_idx]
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
TA = TypeVar('TA', 'FixedVariableArray', NDArray[np.integer | np.floating])
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|