CFU Playground is a collection of many different packages. Below we have outlined where some of the commonly asked for files are outside of developing a CFU. All paths specified begin from your local CFU-Playground root.
common/src/
common/src/models
third_party/python/litex/litex/soc/software/
third_party/tflite-micro/
proj/[project_name]/src
Precedence: The software build directory is constructed in multiple steps. First the original TFLM code is copied. Then any files under common/src
will overlay TFLM files at the same paths; then finally any files in proj/[projct_name]/src
will overlay any of the preceding and therefore take precedence.
proj/[project_name]/cfu.v
if writing Verilog, proj/[project_name]/cfu.sv
if writing SystemVerilog, or proj/[project_name]/cfu_gen.py
if writing Amaranth. These top files can refer to other source files.python/amaranth_cfu/
soc/vexriscv/
third_party/python/lite*/
soc/board_specific_workflows
CFU-Playground/env/conda/envs/cfu-common/bin
CFU-Playground/env/conda/envs/cfu-common/{bin,share,lib}
third_party/renode
third_party/
(contains src for Renode, TFLM, and other python packages, etc. needed and used in CFU-Playground)proj/[project_name]/build/src
proj/[project_name]/build/software.bin
proj/[your project]/build/software.elf.dis
soc/build/[board].[project_name]/gateware/
soc/build/[board].[project_name]/gateware/[board].v
soc/build/[board].[project_name]/gateware/[board].rpt
(if using nextpnr)soc/build/[board].[project_name]/gateware/[board].bit
soc/build/[board].[project_name]/software/include/generated/*