Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve nightvision accelerator #130

Merged
merged 4 commits into from
Feb 22, 2022
Merged

Conversation

klchiu
Copy link
Member

@klchiu klchiu commented Oct 18, 2021

Improve nightvision accelerator (Stratus HLS)

  • Change image size to 120x160 as the default
  • The hardware can support up to 480x640 image size
  • Fix baremetal application
  • Fix linux application
  • Codes are reformatted by using clang-format-12

- Change image size to 120x160 as the default
- The hardware can support up to 480x640 image size
- Fix baremetal application
- Fix linux application
- Codes are reformatted by using clang-format-12
@klchiu klchiu requested a review from davide-giri October 18, 2021 20:44
@klchiu klchiu added the enhancement New feature or request label Oct 18, 2021
@jzuckerman jzuckerman self-requested a review January 28, 2022 06:14
@klchiu klchiu merged commit 87f0e1f into sld-columbia:dev Feb 22, 2022
jzuckerman pushed a commit that referenced this pull request Mar 8, 2022
* Improve nightvision accelerator

- Change image size to 120x160 as the default
- The hardware can support up to 480x640 image size
- Fix baremetal application
- Fix linux application
- Codes are reformatted by using clang-format-12
@klchiu klchiu deleted the nightvision branch March 21, 2022 18:33
vsuresh95 added a commit to vsuresh95/esp that referenced this pull request Jun 15, 2022
* 🐛 fix asic_tile_slm_ddr for xcelium compilation

* 🐛 set src_/dst_offset in gemm_stratus accelerator Linux driver

* 🐛 set src_/dst_offset in conv2d_stratus accelerator Linux driver

* 🐛 fix typos in riscv_busybox.config

* use local path for temporary directory of toolchains installation scripts

- This solves issue sld-columbia#110

* 🐛 mem_id range for tile_mem should account for # of SLM tiles

* Bump riscv-pk submodule and update bare-metal probe library

* minor patch to fix Xcelium compilation

* remove duplicated flag in common.tcl (Vivado HLS)

* Modify tile hierarchy: move NoC and JTAG to the tile top

* 🐛 update accgen baremetal app templates with new probe args

* 🐛 remove erroneous arguments from cholesky cfg

* ✨ add basic RTL accelerator design flow (sld-columbia#123)

* add reset synchronous to the reading clock into async_fifo

* ESP GUI: make LLC SETS refer to a partition for all implementations

* 🐛 fix multifft P2P mode by making all non-coherent

* 🐛 fix multifft app so it passes validation

* rtl/caches/llc_wrapper.vhd: fix comment

* Add support of python3 (sld-columbia#124)

- for RISC-V 64 bit only
- add buildroot config file for python
- add busybox config file for python
- use GCC9
- update build_riscv_toolchain.sh script

* extend custom config regs for accelerators from 14 to 48

* Add gitignore for files generated by enabling python (sld-columbia#125)

* 🐛 fix of extension of acc regs from 14 to 48

* ✨ new monitors API for performance evaluation

-new hardware implementation of "free-running" monitors
-software API (baremetal and Linux) for reading hardware monitors
-sample applications with API for baremetal and Linux
-generation of software include files that provide SoC layout info
-new example baremetal application folder

* monitors API: make accelerator monitors consistent with others

* fft_stratus acc: add batching and ping-pong buffering

* enable coherence mode selection for third-party accelerators

-supports the non-coherent-DMA, LLC-coherent DMA, and coherent-DMA modes
-fixes bug with third party accelerators on systems with FPGA link for memory access
-add NVDLA baremetal application with coherence mode selection

Co-authored-by: Davide Giri <[email protected]>

* 🐛 fix overflow for max transaction length in axislv2noc

Co-authored-by: biruk <[email protected]>

* ✨ add fft2_stratus accelerator

* comment out extra code in inferred async fifo

Co-authored-by: maico <[email protected]>

* socketgen: list accelerators in alphabetical order

* l2 wrapper: fix incomplete sensitivity list

* remove inferred latch in tile_cpu

* 🐛 distinguish CPU_DMA for SLM tile w/o overwriting reserved bits

* esp_acc_dma: insert register between DMA FSM and acc rst

-fixes bug where a glitch through states causes an erroneous reset

Co-authored-by: Davide Giri <[email protected]>

* add SLM tile baremetal test with CPU R/W

* 🐛 fix bug in fft2_stratus app

* 🐛 fix send_data state of mem2ext proxy

* 🐛 fix ext2ahbm send_data state in FPGA proxy

* 🐛 fix updated asic_tile_slm_ddr for xcelium

* ✨ HW support for SMP with risc-v Ariane

- invalidate L1 caches with AXI-ACE snoop address channel
- flush L1 of Ariane when L2 is flushed
- caches: move PUTACK to RSP plane from FWD
- hold invalidation in adapter if pending read request
- serve forwards from L2 between LR/SC

* extend ariane cacheable region

* add riscv amos component for clint

* ariane/linux: change config files to mitigate RCU stall

* switch from riscv-pk to opensbi 0.6

* software updates for Ariane SMP

-pass correct FPGA frequency to openSBI
-enable SMP execution through bootloader only when SMP mode is defined

* tie fpga-link signals to 0 for designs with ddr controller

* toolchain: don't require sudo for local tmp directory

* Update Copyright year to 2022

* Update Copyright for submodules

* Improve nightvision accelerator (sld-columbia#130)

* Improve nightvision accelerator

- Change image size to 120x160 as the default
- The hardware can support up to 480x640 image size
- Fix baremetal application
- Fix linux application
- Codes are reformatted by using clang-format-12

* 🐛 fix FFT applications to pass validation

* libesp: don't spawn pthreads for single accelerator invocations

* Update CHANGELOG.md and README.md for 2022.1.0 (sld-columbia#154)

* only invalidation interface added

* acc_done changes

* latest spandex ariane-smp changes

* replacement policy and extra line

* merged Spandex changes to main

Co-authored-by: Joseph Zuckerman <[email protected]>
Co-authored-by: Davide Giri <[email protected]>
Co-authored-by: Kuan-Lin Chiu <[email protected]>
Co-authored-by: Giuseppe Di Guglielmo <[email protected]>
Co-authored-by: Luca Piccolboni <[email protected]>
Co-authored-by: maico <[email protected]>
Co-authored-by: Kuan-Lin Chiu <[email protected]>
Co-authored-by: biruk <[email protected]>
Co-authored-by: J-D Wellman <[email protected]>
Co-authored-by: Paolo Mantovani <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant