Mark Napier (@napierm)
Hello,I'm more than a little confused. If you want a 10 GHz sample rate with a 1 GHz clock does that mean you are delivering 10 samples over the interface on...
Hello,I can't see the image.Also, what is the polyphase CIC decomposition used. Is it one of the papers?Just so I have an idea, what is the clock/sample frequency...
I've never used the HDL coder myself. These are the CIC papers I've used:01163535 E.B. Hogenauer, "An Economical Class of Digital Filters for Decimation and Interpolation,"...
Hey Neil! Yes, that's the one. I had forgotten it. I couldn't see a way to make that work but you wrote a script that did it.
Hello,I've used the two-path all-pass half-band filter for decimation in an FPGA. It is very small if you don't care about linear phase. There is a linear phase...
Hello, To start with, a CIC has a linear phase response. It is essentially a recursive box-car filter. Delay isn't a problem. If you are talking about the...
Hello,I will need more information.If I understand correctly, we have:Fs_in = sample_rate; % input sample rate.Fc = 0.6 * Fs_in/2; % Desired cut off. Do you mean...
I taught a class in verilog using a PYNQ board. This one:https://www.newark.com/tul-corporation/1m1-m000127...PQNQ-Z2 It is a steal for what's on there. In...
A Gaussian filter is an FIR filter so delay is unavoidable in a causal implementation. The length is odd so there is a midpoint that is in the center and that you...
Hey Neil!I'm looking for an overall design method. Yes, a polynomial interpolator won't do it alone as it only works out to a fraction of the Nyquist zone. Frequency...
Hello,1st order won't cut it. I can post the response curves WRT fractional delay that will show what I mean.
Hello,I have an application where I need to resample from one sample rate to another. Pretty sure this will need a delay type or Farrow filter. The ones I am...
I think I understand. So for instance, with 3 tones you could send 3 bits of information per symbol by simple binary encoding.Then have a narrow FIR filter on...
There isn't a figure in your response.I will also say that demod of continuous phase modulation is a difficult problem. At least it is for me. I put together...
This block works for me and seems to match what is in the communication block. It will do GMSK and GFSK.First is the FIR to provide the shaping of a raw bit and...
The usual case for FSK is 1 or 2 bits per symbol. That would be 2-FSK or 4-FSK.4-FSK with RRC shaping on the base band (before modulation) gives a very nice...
Hello,I'm assuming the cross-correlation is taking place in the Fs/8 domain and the length of the sequence is M2. I'll also assume the length is odd.For instance,...
Hello,Filtering and down-sampling will generally increase your SNR. The normal assumption is that an A/D converter introduces noise that is evenly distributed...
If your sampling ratios are fixed, that is derived from the same clock, you may be able to do a rational re-sampler. That is much easier than a Farrow filter and...
I recall also that there is a Fred Harris paper where he uses canonical half-band filters to filter and decimate. He claims that by using I2R filters, specifically...
Hello,So I'm gathering that you have a 3-bit value with an incoming sampling rate of Fs_in = 1.024 MHz.You want to filter and decimate by a ratio of 512. That...
The plot of OFDM frequency bins is showing the overlap of signal energy from adjacent bins.This is a completely different plot from D2A conversion. It is showing...
Depends on the decimation ratio you need. For large decimation ratio a CIC is hard to beat for efficiency. Depending on how flat the frequency response needs...
Hey Neil!Or the solution we used often which is a PLL driving a Farrow interpolator.These two papers give a good overview of subject:Floyd M. Gardner, "Interpolation...
Exactly.If you consider white noise power to be evenly distributed in the Nyquist zone then your processing gain is the Nyquist bandwidth / equivalent noise power...
Think I would 2nd the suggestion of a look up table. I would also look at interpolation to keep the table size reasonable. See if there isn't something like...
Hello,If these signals are pure sinusoidal and they are the same frequency then you can estimate the time difference by a difference in phase.One way would be to...
I'm assuming that each of the sounding pipes is independent. Each of them has a resonance and is walking in phase. If so I don't see how you can make them continuous...
Only way I would know to work the problem would be through stage debugging.Dump vectors out of each stage and compare them against the expected values.
2nd time posting this. Web page crapped out on me the first time.OK, I think I understand. You have a working black box.You can do it with an input impulse if...
Hello Drunken Monk!The filter bank design methods I'm familiar with involve designing a prototype filter to meet the channel specifications. The length and form...
My undergraduate was computer engineering. But I did take DSP and VSLI as well as EMAG. I was working then in geophysics so got pulled into an analog instrumentation. ...
The results do look interesting. I don't see that the code base has been made available for others to try.
ScopeFIR looks interesting. But right off is says the limitation for number of taps is 16K. Not big enough. Another is that I almost always wind up with a...
I've worked a few more examples with HPF and seems like my intuition is correct. The problem is not lack of precision. Increasing to a crazy number of decimal...
Yes, that does make all 6 zero pairs plot correctly. Doesn't solve the problem that I need a metric crap ton of them close together on the circle. But does...
Yes, I'm considering round off. Just doesn't seem like that is the problem and Matlab doesn't natively support any float bigger than a double. This is not trivial...
Not foolish at all. Unfortunately the form of this particular problem hits a large prime number so the exact solution needs the long FIR. Yes, there are other...
I'm working on a problem where I need a *very* long FIR with many stop bands. I've done several similar designs recently and remez() with the right prodding will give...
Is there a Matlab example of an upsampling 1:2 Hilbert transform shown in that paper? I follow the downsampling Hilbert transform in chapter 6 of your book...
There is a lot going on. It's hard to break the problem up w/o going into the background details first.The best nuts and bolts book I've seen is by Michael Rice.Do...
Its hard to be good at everything but it doesn't hurt to try. I also agree that you don't need to quit working. Just keep knocking the classes down one at a...
Hello,I've done a couple of receive channelizers now. I didn't use any canned tools. I dug up several good papers and some Matlab example scripts. I coded...
I'm using the PYNQ-Z2 board to teach Verilog at work. This board is a smoking deal:https://www.dfrobot.com/product-1838.html?gclid=Cj...https://www.newark.com/tul-corporation/1m4-m000127...https://www.mouser.com/ProductDetail/DFRobot/DFR06...https://www.digikey.com/en/products/detail/dfrobot...You...
There are multiple answers to that question depending on the application. I've used a Farrow filter and sampled across clock domains. You can actually use the...
The way I've seen FSK done is with a I/Q to Mag/Phase Conversion. Then take the derivative of the phase to get frequency. Measure the frequency during the preamble...
Well, that is the whole other subject.Several questions.The easiest would be if you could give some details of what you are trying to do.
I worked on a couple of ASICs where the sample rate is tied to the clock rate. Crossing from one domain to another is tricky.In my ASIC designs and in an FPGA...
Hello,I'm working on a demo for a Verlog/FPGA class I've been giving internally. Have a simple microphone/speaker hat (MagPi Voice Hat) that is wired into an FPGA...
Hey Neil!Yes, upsample and use a DDC strategy to go direct to RF. I missed that 30MHz is your highest frequency.Also for full disclosure, I design for FPGA/ASIC...
I pretty much always start at the interface to the D/A (A/D) and work backwards. The interface works at a fixed rate so the SDR has to source and sink the data...
I can tell you that Docsis 3.1 OFDMA uses direct D/A to RF and direct A/D from RF. All the bins in the frame are filled including the "DC" term.Hope that helps,Mark...
As others have noted you will see a peak that is related to the relative phase and power of your input frequency terms. To see the pathological case put in repeated...
I recently coded up an RSSI dB function for a receiver implemented in an FPGA. Not quite what you are doing here but the concept is the same. I am finding...
I looked at that spec and sure enough they are using the RRC for base-band filtering.It's a little different. So what they have to do is use the matching RRC filter...
Hello,A raised cosine (or general Nyquist) filter is used over a linear channel in order to minimize inter-symbol interference. Since a band limiting filter is...
I also see the complex conjugate multiplication method used to find the course frequency offset for GMSK/O-QPSK control loops.It would be hard to find the original...
I don't know where that term came from. Taking the derivative of the phase to get instantaneous frequency dates back a long, long time.This and other means of...
Hello,I would suggest breaking up the problem into simple steps.1st: interpolate. In the past I've use a sharp (long) half band filter to double the sample rate...
I don't think I can work the problem but maybe can give you some insight from a system point of view. In practice the modulation is done with a phase accumulator. ...
The purpose of the base-band filter in OFDM TX is to smooth the transition from one symbol to another in the time domain. The main reason is to help band-limit...
Yes. What are you simulating your system with? Can you take the spectrum befor and after the DUC (DDC) ?Note that in digital comm these are commonly called rotators...
I did the evening MSEE program at Mercer University. Required 30 semester hours to finish. Private school. In the 90's I think it was ~$500 per semester hour. ...
Hello,Like the others I don't think I see enough information here to make much of a suggestion. You say there is input data "with frequency content near about...
Yes, my mistake. N = 128. N-1 => 127, this "1st" negative frequency. Your picture is correct.Note that both of your pictures are in natural order, not bit...
Bit reversal means that the output is in bit reversed order. Bin 0 is at offset 0, Bin 1 is at offset 0x40, bin 2 is at offset 0x20, bin 3 is at offset 0x60, etc.One...
One way to do this is with a channelizer. Sample, (or re-sample) your signal so that the tone's spacing will naturally fall into the center of the bins of an...
Hello,1024 down to 3 may be a tall order. However, depending on your real system requirements there may be something to do.What are the requirements? Sample...
I've used a FIFO count as the feedback in a rate conversion scheme but I can't recommend it. It tends to suffer from limit cycles. After a fair bit of tweaking...
You are exactly right, I don't think you've missed anything. Curious what application needs 140dB of attenuation...In interpolation I have use the same filter...
Hello,First off if you are doing audio processing then the IIR filters are absolutely the way to go. The ear is not sensitive to phase delay. However, you will...
Thanks! Looks like a new book which I'll be happy to pick up when its available. The last SDR book stopped at chapter 5. Is there a set of supplements for...
Hey Fred!Good read, as always.I've been working on channelizers this year and your various papers have saved my bacon. Last year I worked with Dragan at SpaceX. ...
Hello Morteza,I'll post an example. Today is really busy but I'll try get to it.A Farrow filter needs a term called "mu" which has a value of [0,1), that means...
Hello Morteza,Unfortunately I don't have any specific references for the NCO specifically other than general references on PLLs. It's not hard once you see it. ...
Hello Morteza,I've designed several of these in Simulink, it is my preferred tool. I'll help you with the design if you will agree to fully document the method...
What you are describing is a pretty common problem. How you go about handling it depends on the system.First off, which SDR stack is it? GNU radio? If so you...
In simulation I found that pseudo-random numbers worked pretty well. The criteria is that they be un-correlated enough to look like random noise. The trick...
Also, there really isn't enough information here to help much.You want metrics for each of the frequency bins. How much phase roll is there over the band? Can...
Had a lot of trouble getting it to work. Finally I pulled out an old Mathcad image and tried the formula directly. That works. So it just needs some fingering...
Found it in a book I already had, "Fast Fourier Transform and Convolution Algorithms" by H.J.NussbaumerPage 85, Section on the Fast Fourier Transform (isn't the...
I'm dinking with the DFT 128 (sort of FFT) verilog code from open cores. I've used the 256 point version before. It has some bugs in it but sort of works out...
Hello,Ran you code and looked at the output.Problem is that you are looking at the spectrum of the startup transient of an extremely short filter with a high frequency...
Another way to look at it is to ask what is the purpose of a Nyquist filter. It is used so when the waveform is received it can be processed so that it has minimal...
Yes, that mix is usually the real part minus the imaginary part, y(n) = real(x(n)) - imag(x(n)).The point is that both sides of the spectrum (+ and -) will add together. ...
Hello,Looking at your diagram I assume you mean the incoming signal is mixed down to complex base-band. In that case then you sample the band limited signal where...
Hey Fred,I (and others for sure) would love to have the example code where you decompose a biquad into the 1 tap filter.Cheers,Mark Napier
Looking at that graph, it looks like the filter is doing exactly the right thing. If you analyze the signal WRT to energy vs. frequency then the the time offset...
Hello,Like others have said, I'm not quite sure what your question is. But assuming that you just want the I/Q values and the constellation below is correct, label...
Hello,The way I read it is a 5MHz BW at baseband so +- 2.5MHz complex at 7.68Msps. Seems reasonable.Anyway, the problem as stated is to have the DDC + filtering...
Hello,I'm not sure about group delay, it may be that because of the tight filtering requirement the delay may be high.But I would approach this problem from a multi-rate...
Just so you are aware, the raised cosine filter is not always the best choice for Nyquist filtering.http://engineering.sdsu.edu/seshagir/SDR05.pdf
OK. I haven't seen that book so can't really comment on it. If it is a cookbook with examples them it might be worthwhile.AFA fixed point, you are processing...
Not sure what level you are at. Fixed point math and such can be found online as white paper.If you are doing SDR and communication design then hands down the...
You have to window the 1st function. In other words, limit the number of samples of your reference waveform. Then slide that across the waveform you are measuring....
The way I look at it is in terms of power. Power is proportional to V^2. So for an N point FFT/IFFT the sum over N points of I^2 + Q^2 should be the same for...
Hello,I think what you mean is the Rolloff Period (RP). Also the Rolloff Prefix or Rolloff Postfix depending on if it is at the front or back of the symbol.It...
No, I'm using the spherical projection mapping that is the same as what is used to project a bit/bump map onto a sphere (or other irregular object) in image processing....
Hello,I'm working a problem where I need to take the image of a ball and map it to a 3D sphere. Then rotate that sphere and map it back to a 2D image. The idea...
Absolutely. Trying to find something within commuting distance of Lawrenceville GA.Cheers,Mark Napier
Or this if your signal is clean enough:https://www.dsprelated.com/showarticle/1056.phpLooks like you will have to filter each of the harmonics to get a very clean...
I suppose the question is how accurately do you know or can you measure the frequency of the fundamental carrier? If you know that then cross-correlation (windowed)...
Hello,The simple answer is no. As someone else pointed out, you need matching integrators and differentiators so that the poles and zeros for a filter stage line...
If you have the FPGA fabric and resources to spare sure.In ASIC design we are always trying to minimize area and power. The chip costs so much it is worth some...
Hope it works out for you. I haven't used the system generator, just code in RTL (Verilog if possible). Am doing more Xilinx work now so do need to get more...
I agree completely. The trick is the parallel design. What I use is Simulink with a custom block set. It allows you quickly try out different approaches in...
Hello,This is a down-conversion process. The center frequency Fc is 1000MHz sampled at Fs = 3200MHz. The BW of interest is 500MHz wide.So 1st do a complex...
Hello,If I understand correctly you want Fs = 800MHz. You also want 750MHz to 1250MHz centered in base-band so Fc = 1000MHz. That gives a complex base band +-250MHz....
I've never seen an implementation of a parallel CIC integrator but it should be possible. Integration is a linear operation so it can be spread out and the results...
If your clocks are not frequency locked then you need a sample rate converter. I've done a couple of these. You have two design problems.The first is that you...
Non-polar Non Return to Zero (NRZ) means that the signal toggles for one logic level input (like 1) and stays the same for the other logic level input. So you...
Hey Tim,Simulink was been used in my old group (Scientific Atlanta/Cisco/ST Micro) for years and years. It's a great tool for prototyping digital systems with...
Hey Neil,For a lot of work now with contractors I'm using Octave. For Windows the installations it comes with all of the design packages/functions I use. It...
Hello,As mentioned by others, the inputs to an OFDM IFFT are in the frequency domain. Each frequency bin (subcarrier) is populated by a complex number representing...
Hello,If you look at the original paper you will find the equations for bit growth at each stage. So yes, the required adders can be large. You cannot truncate...
Hey Andy,Yes, that is exactly right. Break your messages up into smaller symbols. There are 6,7,8 or other width code symbol sizes. There is a trade off of...
Hello,What you are describing are burst errors. The usual code for these is Reed-Solomon. For every two parity symbols added the code can correct one symbol....
Be aware, the DC offset is only one problem. There are usually gain/phase mismatches between I and Q that have to be accounted for. Fred Harris has a couple...
In many applications now a Damn-Fast A/D converter is used, no tuner. Then the band of interest can be downconverted/filtered with no LO.Price and power are high...
There are so many ways to skin the cat. In any digital receiver it has to AGC, frequency/phase match (rotator), filter and then sync timing. Fred Harris had (has?)...
Use this form to contact napierm
Before you can contact a member of the *Related Sites:
- You must be logged in (register here)
- You must confirm you email address