| # Copyright 2024 Google LLC. |
| # Licensed under the Apache License, Version 2.0, see LICENSE for details. |
| # SPDX-License-Identifier: Apache-2.0 |
| # |
| # Kelvin core workload |
| |
| load("//rules:matcha.bzl", "kelvin_binary") |
| |
| package(default_visibility = ["//visibility:public"]) |
| |
| kelvin_binary( |
| name = "kelvin_hps_model", |
| srcs = [ |
| "main_fpga.cc", |
| "ml_input.cc", |
| ] + [ |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_000_conv_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_001_conv_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_002_conv_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_003_max_pool_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_004_conv_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_005_conv_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_006_max_pool_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_007_conv_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_008_max_pool_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_009_conv_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_010_max_pool_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_011_conv_2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_012_reshape.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_013_fullyconnected.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_014_fullyconnected.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_015_fullyconnected.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:layer_016_logistic.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:model.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:tfc_opt_conv2d_per_ch.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:tfc_opt_fullyconnected.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:tfc_opt_maxpool2d.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:tfc_opt_reshape.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:tfc_ref.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:tfc_ref_fullyconnected.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:tfc_ref_logistic.cc", |
| "//sw/device/tests/kelvin/hps-c-port/model/src:tfc_ref_maxpool2d.cc", |
| ], |
| hdrs = [ |
| "ml_input.h", |
| ] + [ |
| "//sw/device/tests/kelvin/hps-c-port/sw/init:kelvin.h", |
| "//sw/device/tests/kelvin/hps-c-port/sw/init:kelvin_intrinsics.h", |
| ] + [ |
| "//sw/device/tests/kelvin/hps-c-port/model/inc:layers.h", |
| "//sw/device/tests/kelvin/hps-c-port/model/inc:model.h", |
| "//sw/device/tests/kelvin/hps-c-port/model/inc:tfc.h", |
| "//sw/device/tests/kelvin/hps-c-port/model/inc:tfc_conv2d_per_ch.h", |
| "//sw/device/tests/kelvin/hps-c-port/model/inc:tfc_fullyconnected.h", |
| "//sw/device/tests/kelvin/hps-c-port/model/inc:tfc_logistic.h", |
| "//sw/device/tests/kelvin/hps-c-port/model/inc:tfc_maxpool2d.h", |
| "//sw/device/tests/kelvin/hps-c-port/model/inc:tfc_opt_util.h", |
| "//sw/device/tests/kelvin/hps-c-port/model/inc:tfc_reshape.h", |
| ], |
| ) |