Comments (6)
The issue is related to LMS_StreamBoard::ConfigurePLL(). Disabling it after FPGA PLL is configured correctly, does not make random IQ swapping anymore.
I don't know the exact reason why that's happening, perhaps PLL reset is needed after all those rapid ConfigurePLL calls.
from limesuite.
Definitively still seeing this. Whatever the state machine is, it needs a reset or some kind of enable line to disable during calibration and/or PLL changes.
from limesuite.
The issue arises when FPGA PLLs are configured while LMS7002M CGEN is not configured yet. Then FPGA doesn't get reference clock from MCLK lines and FPGA PLL configuration is messed-up.
Resolution: LMS7002M CGEN must be configured and reference clocks (i.e. MCLK1/MCLK2) must be provided before FPGA PLL configuration.
from limesuite.
I think that then the PLLs are configured, that CGEN has always been configured, and both mclks have something on them. I guess that I am concerned about metastability.
What happens when the CGEN clock rate is changed after the PLL configure? In this case, the mclks will go down temporarily, and change rates. Then the configure PLL call is needed again. How should we handle that case properly?
from limesuite.
New gateware will have FPGA PLL reset, that should solve the problem
from limesuite.
No present issues. Closing.
from limesuite.
Related Issues (20)
- Meaning of SOAPY_SDR_TIME_ERROR in readStreamStatus() HOT 1
- UE's can't connect to LimeSDR on a bandwhith 1,4Mhz HOT 1
- Docs incorrect for LMS_Calibrate
- 22.09.0 build issue when Connection Remote is enabled. HOT 4
- The port is busy. Connection LimeRFE + LimeSDR HOT 1
- Build Windows assets for 22.09 release
- Issue with Debian packages. HOT 4
- Issue with rv64 HOT 6
- lime::ADF4002 infinite loop
- how can I access LMS7002M's register directly
- LimeUtil --fpga requires hard resetting the device (LimeSDR Mini V2) HOT 1
- Make a new Lime Suite release. HOT 1
- RPM Package for Fedora
- Firmware missing upstream HOT 5
- LimeSuiteGUI not built HOT 1
- fix API functions LMS_StartStream() and LMS_StopStream() : HOT 1
- Make LimeSDR Mini 2.0 Rx-only behaviour the same as previous SDRs. HOT 2
- About the latest release HOT 2
- LimeXTRX on PCIe - `basicTx` Issues After LimeSuite Update HOT 3
- limesuite and gr-limesdr HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from limesuite.