Skip to content

Latest commit

 

History

History
96 lines (84 loc) · 3.51 KB

TODO.md

File metadata and controls

96 lines (84 loc) · 3.51 KB

Jupyter:

  • terminal should run bash
  • terminal middle mouse button paste should be fixed, it works well in PYNQ, since the latest Jupyter code is used, it might be just an upstream regression
  • there is this error in the log: 404 GET /jupyter/nbextensions/widgets/notebook/js/extension.js so some widgets are not working
  • rethink start/trigger/stop synchronization
  • each channel should have own UIO DT node and driver, so they could be used by separate applications
  • UIO devices should be opened exclusively, to avoid conflicts between applications
  • FPGA image should not be reloaded by default, to avoid crashing other applications already using the FPGA
  • add device tree overlay and FPGA manager support

FPGA:

  • replace undocumented system bus with AXI4 Lite
  • move CPU accessible registers out from processing modules
  • separate the code into smaller modules connected over AXI4-Stream
  • rethink generator and osciloscope SW interface sequences
  • sestructure registers into a hierarchy
  • generalize trigger modes
  • write configurable PLL
  • write streaming benches
  • Scope:
    • use DMA from Xilinx
    • continuous mode
    • trigger mode

U-Boot:

  • Remove source file patch, which enables modifying the boot sequence stored in the EEPROM environment. A better solution would be to use a script to load only parts of the environment.

Linux:

OS:

  • Rethink user management and security.
  • Create a single UIO device for FPGA v0.94 and handle access permissions using UDEV rules

Bazaar:

  • replace current JSON libraries with precompiled ones installed as Debian packages
  • move our code into a dynamic module, and use the system Nginx
  • perhaps, recode Lua code into C, so Lua can be removed from Nginx
  • make sure our module creates a response to a HTTP request, our log is now filled with warnings due to missing responses
  • integrate redpitaya.so library, it is not used elsewhere
  • use API to get Zynq DNA (there are 2 instances)
  • We should use hierarchical inheritance to reduce the ammount of configuration lines in nginx.conf.

API:

  • move type definitins (structures, constants) to header files
  • remove middle API layer
  • avoid using read modify write access to registers

Applications:

  • replace kiss FFT with NE10 library (already available in Debian)

SCPI:

  • migrate to latest upstream
  • push our patches upstream

TODO

  • Fix bugs.
  • Decrease the amount of duplicated code and move common components to shared.
  • Bring OS & ecosystem sources together as they compose one package.
  • Comment the code extensively in Doxygen style. Provide Doxygen documentation.
  • Simplify Test/monitor.