[prim_fifo_async] Unifying prim_fifo_async and prim_fifo_async_sram_adapter
- Dominant language
- SystemVerilog
- Stars
- 3.6k
- Forks
- 1.1k
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 141
Description
This issue is a follow-up of #7678 . The `prim_fifo_async_sram_adapter` module in the PR #7678 has a common logic (managing pointers) that is used in `prim_fifo_async`. This issue is to suggest changes:
- [ ] Create a submodule to manage pointers and instantiate the module in both FIFO Async primitives.
- [ ] Use `prim_fifo_async_sram_adapter` inside the `prim_fifo_async` for the DPSRAM FIFO implementation.
CC: @tjaychen @msfschaffner
Contributor guide
Research direction
Start by reading the prim_fifo_async and prim_fifo_async_sram_adapter modules and the related changes in PR #7678. Identify the shared pointer-management logic and how the DPSRAM FIFO implementation is selected. Done means both FIFO primitives use a common pointer submodule and prim_fifo_async uses prim_fifo_async_sram_adapter for DPSRAM.
Written by the indexing model from the issue text.
Assessment
- Domain
- embedded-iot
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100