Giter Club home page Giter Club logo

Comments (4)

rjonaitis avatar rjonaitis commented on August 18, 2024

Is this the latest image to use with basic streaming? https://github.com/myriadrf/STREAM/tree/master/apps/STREAM_LMS7EVB_distro_07v/gateware/bitstreams

Yes, that image will give only IQ samples stream. The data is not packeted and don't have timestamps.

As an alternative, can the image be loaded into the flash: so that the STREAM board always boots into a usable image for streaming? This would replace the need for automatic loading.

Yes there is programming options to load into FLASH memory, and to initiate boot from FLASH.

What's the best way to check that an FPGA is loaded. A flag in the device info packet for example?

For now the checking could be done by trying to read SPI registers from FPGA, Some registers should contain the loaded bitstream version. I'll have to checkup on that.

from limesuite.

guruofquality avatar guruofquality commented on August 18, 2024

Yes, that image will give only IQ samples stream. The data is not packeted and don't have timestamps.

Oh yes. Just for basic testing.

Yes there is programming options to load into FLASH memory, and to initiate boot from FLASH.

I think for stream board, the persistent FLASH and BOOT option makes the most sense.

I havent tried this myself. Is it just a matter of choosing the "Bitstream to flash" option? Or is there another step to configure the automatic loading when FX3 is ready?

For now the checking could be done by trying to read SPI registers from FPGA, Some registers should contain the loaded bitstream version. I'll have to checkup on that.

Then it looks like we need an API to detect that the correct FPGA image is loaded. I know there are a lot of images out there. So maybe the streaming API will query a "feature mask" or version-check or something like that to know if can operate properly.

Also, I would like to create some kind of mechanism for STREAM where if the check fails, there is a useful error message with instructions for the user: Example A particular image url or even a command like wget the_url_to_fpga_file && burn_command.

PS thanks for the load FPGA API

from limesuite.

rjonaitis avatar rjonaitis commented on August 18, 2024

I havent tried this myself. Is it just a matter of choosing the "Bitstream to flash" option? Or is there another step to configure the automatic loading when FX3 is ready?

Yes, you only have to choose "Bitstream to flash", then it will be loaded each time after board reset.
"Bitstream to flash" only writes the data to FLASH memory, if you want to use that bitstream right after programming and without board reset, then you have to send the "boot from FLASH" command.

Then it looks like we need an API to detect that the correct FPGA image is loaded. I know there are a lot of images out there. So maybe the streaming API will query a "feature mask" or version-check or something like that to know if can operate properly.

I checked what could be done about the FPGA image identifying. Right now there is no reliable way for distinguishing FPGA images.

Also, I would like to create some kind of mechanism for STREAM where if the check fails, there is a useful error message with instructions for the user: Example A particular image url or even a command like wget the_url_to_fpga_file && burn_command.

A message log callback could be added to allow returning of text data from inside the IConnection.
That could be used for informing user about internal IConnection state, like the messages about bitstream checking, or used SPI frequency, or to report some connection specific problems.

     * Callback for general information reporting
     * @param progressMsg string message to user
     */
    typedef std::function<void(const char* progressMsg)> InfoCallback;

from limesuite.

guruofquality avatar guruofquality commented on August 18, 2024

All firmware and gateware images have version checks which we are using. We can open a new issue if the need arises for finer grained feature checking.

from limesuite.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.