Jeff's engineering management and design experience includes products and systems in the areas of AI, HPC, communications, oil exploration, defense electronics, space exploration, telecom, control systems, acoustic/audio algorithms, and industrial automation. He is a system architect and designer, as well as expert at software, hardware, and logic design, and a range of programming languages and operating systems. Jeff is president & CEO of <a href="http://www.signalogic.com">Signalogic</a>.
By now you're aware of
the collective angst in the US about 5G. Why is the US not a leader in
5G ? Could that also happen -- indeed, is it happening -- in AI ? If we
lead in other areas, why not 5G ? What makes it so hard ?
This hand-wringing has reached the highest levels in US government. Recently the Wall Street Journal reported on a DoJ promoted plan 1 to help Cisco buy Ericsson or Nokia, to give the US a leg up in 5G. This is not a new plan,...
Former Texas Instruments Sr. Fellow Gene Frantz and former TI Fellow Alan Gatherer wrote a 2017 IEEE article about the "death and rebirth" of DSP as a discipline, explaining that now signal processing provides indispensable building blocks in widely popular and lucrative areas such as data science and machine learning. The article implies that DSP will now be taught in university engineering programs as its linear systems and electromagnetics...
I think it might be interesting to blog a couple of "Texas Instruments DSP predictions". The following are just my opinion, they do not result in any way from inside / confidential information to which I'm privy in working closely with TI for many years. Of course I could be dead wrong, but at least I can say, "if they should occur, it would have a huge impact on the TI DSP developer community".
1) TI will offer real-time Linux running on their DSPs.
At Signalogic I'm in hiring mode right now, looking for a couple of entry-level engineers. After several interviews over the last few weeks I find troubling patterns... things young engineers should know, but they don't. Things they put on their resume but shouldn't, things they say or do in the interview they should not, and things they fail to say or do.
Then I see questions for "interview help" on DSP and FPGA tech groups that miss the point, asking about how to do...
Andrew-Or you can saturate, the old "DSP chip" method. Some source code that does this is here:https://github.com/signalogic/SigSRF_SDK/blob/mast...The limit and...
TKR-I asked this at one of my first few DSP jobs and was told that all notation arises from Oppenheim and Schafer's famous first book in 1972 (they wrote several):https://www.google.com/search?client=firefox-b-1-d...I...
Kousik-First very well presented question and attention to detail. You may be a DSP novice but you will go far.Second, I concur with DJ Maguire, to debug this you...
Hi Omer, yes my thinking is wishful, indeed :-) But the pressure is on Big AI to find more efficient approaches and create decentralized AI. They can't be using...
No actually not. Big AI's current direction is completely opposite evolution, which prizes efficiency above all else: https://www.linkedin.com/pulse/sum-all-inference-j... ...
Omersayli"pruning of infinite branches of randomness" ... I don't think we'd even be discussing AI right now if there hadn't been some pruning ! haha-Jeff
Hi Mannai-AI doesn't (can't) replace physics. After all possible information has been extracted from physical signals using available signal processing theory,...
Hi Engineer68-That's not what I mean. What I'm saying is implement three (3) actual MA filters in parallel: order 16, 15, and 14. Together this is still very few...
Hi G Medrano,For order 16 MA filter very few FPGA resources would be used ... could you implement orders 14 and 15 and run concurrently ? Then you can use the...
Hi Detlef, looks like a tough problem - no answers so far, and this forum has some of the best and brightest RF and DSP minds.My only thought so far is frequency...
Hi Mark-If you're willing to build your own, possibly the Spectrum Digital schematics and firmware have, after so many years, been open sourced or possibly Texas...
Hi all-Does anyone know what M(QN) notation means ? For example 15(Q16) ?I'm familiar with QN, QN.M, but not with a leading number followed by
parens. I suspect...
Hi Jon-If this problem was thrown at me I'd start with this page:https://www.reddit.com/r/DSP/comments/zzelg5/pdm_t...which says implement a sharp lowpass filter...
Hi Jon-I searched on "convert PDM to PCM" and found numerous info and examples, including source code, on various sites including ti.com, dsp.stackexchange.com,...
Hi Ekene-Sounds like good progress ! I hope the TI chip works out. One good thing about TI is the chip usually meets and exceeds data sheet specs, and on occasion...
Hi Robert-Thanks for the link to your fixed-point filtering C
code, it does look super efficient ! As would be expected from any RBJ
authored code.What I've been...
Hi Robert-Thanks. I think I see now how your code works - processes all biquads first, then checks for overflow.I need a shift left function that checks for overflow...
Hi DGShaw6, thanks !Yes I know of the ITU STL but it has a "General Public License" that disallows modifications, and it needs mods because it has global variables...
All-Does anyone have a link to old Texas Inst C code that simulated what their fixed-point DSPs did with overflow and saturation with arithmetic operations (add,...
Hi Ekene-The block diagram shows coefficient, data, and delay memories, which imply a focus on digital filters. The "PRAM", which I assume is program memory, is...
Slartibartfest-"difficult to discern" -- some years ago when I would hire new DSP and software engineers I would pull up Hypersignal and display a huge speech waveform,...
Naumankalia-Is one of the signals altered or degraded in some way ? If not, then do you have control over one of the signals, for example to insert an "anomaly"...
Hmm it can write a great poem about the Nyquist theorem (all frequencies so nice, they must be sampled twice) but seems to have slightly harder time with actual...
Vishnu-> Yes its the I&Q data from the Radar Sensor for each sweep. Ok got it, thanks. I'll be able to spend some time on this over the weekend. Is the data...
Vishnu-I took a look at the first .h file, it looks like freq domain data (real and imaginary components). Can you clarify ? What I'm expecting is the original...
Vishnu-A couple of quick questions ...1) Your first plot (HumanChestMovmntUnwrappedPhase.jpeg) is actually wrapped phase, correct ? It looks like phase wraps occur...
Vishnu-Then rescale. The point is that in order to know whether your phase unwrapping is working and/or can be improved, we need to see what happens exactly at pi/2...
Vishnu Anayady-Can you show the plots with vertical axis gridmarks in multiples of pi/2 radians ? It would make it easier to give phase unwrapping algorithm...
Amir97-No, not the case at all. My guess is you can stuff all zeros or all 0xffff into the buffer and still see the glitch. Where in your code you move points...
Amir97-My first thought in seeing your screen grab was "buffer glitch". And your comment:"This distortion always happens after 180 degree phase delay from the starting...
Dan-"try autocorrelation of one of the sequences with itself"Yes exactly, first debug step to take. And if the OP doesn't see expected result then clearly something...
Mark-Huh ... I thought MATLAB had open sourced everything. I guess they still subscribe to the Steve Ballmer school of thought about Linux being communism -- they...
Napierm-Ok ... sounds like a maximum length sequence problem or encryption related. Can you find where in the MATLAB source it fails to converge, and start instrumenting...
Napierm-Possibly foolish answer here, but since you need stopbands, what about 2 filters in series ? Maybe that does something to delay for particular stopbands...
Philip-Often such a lowpass is written: y(n) = a*x(n) + b*y(n-1)where a + b = 1 to maintain stability. Looks to me like Charlie's method could still be used, and...
Bulek-We use the EVS encoder to classify incoming audio as voice, background noise, or sound of some type, plus obtain additional confidence metrics for voice.For...
Stephane-I've been working on real-time ASR (automatic speech recognition), which although codebases such as Kaldi offer a RTF > 1, still pose challenges for...
SlartiBartfast-First thanks for your feedback. "it's certainly not the only thing out there" - yes you are so right. Therein lies the root of TI's demise as a semiconductor...
All-Has anyone used the BeagleBone AI yet ? As you may know around 2016 time-frame Texas Inst purged their DSP roadmap and Signalogic was unable to convince them...
Alvin-Based on this:https://e2e.ti.com/support/processors/f/791/t/7747...I'd say you have valid concerns, not to mention time spent debugging.Unfortunately
it seems...
Adaptive-My work is in edge computing, specifically where Telcos and hyperscalers meet. I've not been paying attention to technical pros/cons of FMCW vs. PMCW car...
Woodpecker-That was a programmer's answer in the old days, when resources mattered. Now with AI and ML guys, the answer is "we built scalable glasses so don't worry...
No doubt that embedded system engineering in general -- and edge real-time hardware specifically -- pays well. But it pays better if your MS degree emphasizes...
Razed-DSP is no longer a "destination degree". You can visit, but you don't wanna stay for long. I wrote about this here.Over the last 10-20 years of your career,...
niloofar_omidi-ADPCM is normally applied sample-by-sample in the time domain. I'm not clear on your specific technique, but in general trying to adapt this to a...
Skrowten Hermit-If it's attenuated in a mathematical sense, then it should have the same shape -- i.e. should look identical except for values on the y-axis. But...
Mark-Yeah and in the 60s Star Trek covered the singularity
("The Ultimate Computer"), orbit vs. surface class separation (way
before Elysium), harsh surface conditions...
Skrowten Hermit-Your attenuated waveform looks odd -- like it's clipped, not attenuated. Definitely cross-correlating x with an attenuated version of x should always...
Loganathan-Here is a pic with a 512 pt 1 MHz sine sine wave sampled at 8 MHz, trace a 512 pt FFT, trace b zero-filled to 4096 pt FFT. Trace b is smoother, but underlying...
Graham-As with all chips and evm boards TI makes, it's an excellent piece of hardware -- amazingly small, high performance, low power. Assuming TI's code development...
Crandles-Unfortunately the general impression is that TI has bailed on AI. Maybe that's not fully accurate but it is accurate to say for today's data scientists...
OnMyOwn-Definitely you can't use DSK C6713 for a new project if for no other reason that it's circa 2003 and you would find it very hard to get support. These days,...
Robert-It's like halftoning an image -- the idea is diffusing the error due to 1-bit digitization, shaping the noise and pushing the error into higher freq spectrum....
Nauman-That sounds good, but in that case you are relying on assumptions that remain unverified -- at least to me, and I would suspect many others viewing your question,...
Nauman-My apologies I didn't realize your dipole plot is showing amplitude. In that case, why would amplitude for both hydrophones be zero at DOA = 0 ?That makes...
Nauman-Yes but you have DOA set to 135 deg. That does not sound like equidistant to me. What happens if you move DOA around ? Does your amplitude vary ?It "feels"...
Phil-Even better, how to connect SigmaDSP devices to Raspberry Pi via I2S:https://ez.analog.com/dsp/sigmadsp/f/q-a/65427/con...You can't miss, hehe.-Jeff
Phil-Maybe have a look at the ADI "SigmaDSP" line:https://www.analog.com/en/about-adi/news-room/press-releases/2017/5-23-2017-analog-devices-next-generation-dsp-for-automotive-audio-applications.htmlThese...
Phil-Hmm, in that case maybe look at TI's fixed-point C5416 or C5510. These came out in 2000-2006 time-frame, but TI still shows them as "Active". Note the 5416...
Phil-At first I was going to suggest you use an older DSP, but it would have to much older, 15 years, maybe closer to 20.Another idea is to choose a small, modern...
Stephane-Can you give more advance warning in the future ? This came in while I was another conf call and I couldn't get off in time. These days people may have...
Ola-There should be either one or no AD7884 pins going to the cable connector: one if they ran Vin+ from the sensor board as a single-ended input without amplification,...
Ola-First, what is on the sensor board ? All 3 images you posted are the main board.Second, what is the DSP56002 doing...
It has SSI and SCI serial ports, an...
Ola-What is the DSP type, both mfg and part number ? How old ? Agilent was created in 1999 so you might have something built by HP in years prior. Specific...
Dale-Have you already done some C programming ? If so then learning C++ is straightforward. If not then I suggest first doing an online course in C. It's like...
Steve-You won't need 8 buffers, that's for sure. My suggestion is to first modify your ISR to implement basic triggering, for example a simple amplitude threshold,...
RBJ-That's interesting Farrow has that limitation.Everyone
calls out Farrow anytime decimation/interp factors are impractical or
other reason fractional resampling...
Steven-Answers from Tim and BV Ramesh are on the right track.
Additionally you want to abstract timing between acquisition and display/processing.
Whatever does...
Ja Lopez-This music.stackexchange page gives some popular ideas -- as RBJ implies there probably isn't a standard method, and you may need bigger guns.-Jeff
Julein-Could you divide your repetitive pattern into, say 4, patterns that use different sections of your freq domain bandwidth ? Then take a consensus ... and...
Marcin-I'm not sure how to explore internship possibilities on the -related.com sites. I suggest to e-mail the owner/operator Stephane and ask, he's always very...
Treefarmer-For some minimal inference like basic facial recognition or a wake word. For anything serious, like say Alexa, it's 10+ kW counting servers + GPU boards...
Marcin-If you decide yes, my suggestion would be to focus on "EE aspects" of neural networks. By that I mean their architecture, timing, memory costs (energy per...
Woodpecker-I took a quick look, it does sound interesting. The current state of the art in speech recognition has turned 180 from the old days, now they depend...
Sandukor-Can you get back to your original situation ? I.e. 2 out of 3 test programs working ? If so I can probably help some, but otherwise if it's a problem...
Sandukor-After doing that, do the other test programs still work ? If not then back up to your original configuration.Basically, if you got 2 test programs working,...
Sandukor-Wait not so fast. The point of that page is to show some debug techniques, not give an instant solution. I'm guessing your instructor wants to see that...
Sandukor-I did this Google search: c6713 DSK interrupt test program not working site:e2e.ti.comI didn't see an exact answer but on this thread:http://e2e.ti.com/support/legacy_forums/embedded/t...if...
Artur-
If this page contains an accurate ALE diagram, showing a z-delta stage in a discrete time domain signal flow, then the shift would be linear ("traditional").
Using...
Sarah-If they ask you that, you might start by saying that complex numbers started as a math invention (Euler), and now are used everywhere, not just electricity. ...
Gaurav-What you're asking about is sampling rate conversion (SRC). Searching on that plus PC sound will bring up Google chatter on the subject.Recently most PC...
Roberto-TI ARM+DSP based SoCs and other vendor (FPGA) SoCs continue to be highly effective solutions to a wide range of problems. But again, in your case, they...
Roberto-Unless you need to combine MP3 with other audio processing, probably the ASIC approach will give you the lowest cost, footprint, and power consumption. For...
WestRace-Dudelsound gives an excellent answer. First, swept sine and MLS (pseudo random white noise) techniques emerged over the years as widely accepted methods,...
Nelson-When you mention "Audacity will add noise to an audio track when downsampling" are you referring to dither ? I have found a lot of online discussion on...
Zeus101-First, your waveform displays do not match your description. The first one (orig-spec_65570.png) should show 0 to 16 kHz, if the sampling rate was actually...
Sharan-To see a simple example, multiply a sine signal with period "Fr" number of samples with a unit step that flips the amplitude half-way through: y[n] = sin(2*pi*n/Fr)*(u[n]-2*u[n-Fr/2])That's...
Naumankalia-Are you saying you need multiple passbands, each with different amplitude ? If so that would be arbitrary frequency response FIR filter design. ...
Samp17-You can think of averaging in the time domain as somewhat of a convolution. For thought purposes, consider one of your impulses as the input and another...
Iosman-If you shift your already-windowed data in time, you will put the tapered window edges somewhere in the middle of the FFT frame, and create new edges (not...
Gabrial-Deep learning is already being used for tone detection in presence of noise, on a far more complex basis than a basic sets of tones -- that's speech recognition.If...
Samp17-Normally windowing is needed for sliding FFT analysis, when there is "edge noise" due to sectioning data into frames on an arbitrary basis (i.e. some "frame...
Rick-First the snapshots look good. Seems you indeed have the simulation working correctly.To confirm your chirp theory, you can add spectrogram type output to...
Sml-Everything "DSP focused" or DSP centric is slowly dying, thanks to TI's brain lock on AI. Total disaster that is.Deep learning is where you can get extremely...
Sudarshan-Hmm seems like they stuck you on a legacy system. Well, that is engineering, it happens to everyone :)To think about this, consider just real numbers. ...
Sudarshan-So what are really saying ? You cannot simply calculate |z1| -|z2|, for whatever reason ? I.e. you no longer have z1 and z2 separately, but you do...
Rick-In that case would there be high frequencies we can't see in between balls ? Could that be tested by hanging some very light weight but stiff strings in...
Stephane-After deleting the link, can you "lock" the thread ? And maybe add a little "info" icon explaining reasons why threads get locked.Spammers get more sophisticated,...
J Aranguren-Yes former DSP guys migrating en masse !As Mr. Miyagi would say, you guys have "good chance", probably very good. TI can't win those seats because...
J Aranguren-A tangent ... I used to work so closely with TI that it felt like I worked there. Weekly even daily dialogs about various projects and efforts. Intel...
Andrey-Have you thought about contacting the Wikipedia author and asking whether the "new" terminology should be changed to say "repeated", "updated", or as the...
Szak1592-You: "I'm pretty sure my code implements the equations for overlap save correctly."Rick: "I don't think your code is working properly."My money is on...
Matthew-Right. User info should include: 1) how many posts, both original and answers 2) upvotes or thumbs-up or something that indicates answer quality ...
Sharan-I see that you're not getting any replies. Googling inter vs. intra prediction brings up lots of hits. One example I found explains what criteria H.264...
learn-Based on your comment about gamma compression, isn't that what you want ? A gamma of about 0.857 would reduce your number bits from 14 to 12. It might...
Mathedoomm-If you're using LabVIEW and testing/simulating solely with PCs at this point, then weetabixharry's suggestion is very good. Searching for: autocorrelation...
Rick- I did a quick survey on automatic music transcription. It sounds to me like it's an even more difficult problem than speech recognition. Speech also exhibits...
Rick, does the article say anything about mic / data acquisition system specs ? The plot seems to me a tad suspicious in that "all shape seems to be lost" around...
ReachRF-One comment I might make would be to be careful using the word "domain". To see Doppler shift you are transforming data from time to frequency domain ......
Nelson-How much "some calculation" are you willing to tolerate and why is there an a-priori need to know ? The excellent answers from Bholzmayer, Kaz, and Slartibart...
Ahmed-First, I think the core of GNU radio is C++, maybe that's usable for you. Second you might look at OpenCV. That's image processing, but their code seems...
Tech Nomad-Since you're open to a machine learning solution and seemingly not tied to dedicated algorithms, I would suggest a deep learning approach. Generate...
Jshowa-> Cause a failure when accessing the array at data[n-1] and data[n-2]> on the first and second iterations?Yes it would, so expanding on my simple example,...
Jshowa-Y(J)S is spot on. They want to avoid overwriting input data in a short range of 3 points (length of filter, M = 3), so they temporarily use input points...
Tony-Great thread with lots of detailed, helpful discussion but seems it's still not completely resolved from your perspective. I was going back to your original...
Kaz-You forgot MobaXterm and scp, but yeah that sounds about right. I've used all of these at one time or another, they are effective and easy enough to learn...
Donvoth-I did this Google search: FFT algorithm for guitar tuningand the whole first page has good links, including some pro and con discussion on whether to use...
Donvoth-That series of Fujitsu uP has a 10-bit A/D converter:http://www.fujitsu.com/downloads/MICRO/fma/mcu/ds9...My guess is that Roland uses this, acquires a few...
Donvoth-As other answers have mentioned, converting from a 60 - 6000 Hz time domain waveform to "a series of pulses" is key. This conversion is the fundamental,...
Dsavio-My comment is in the spirit of the time-worn saying "if something looks too good to be true, then it probably is". During the process you describe, time...
Naumankalia, you say "DSP board", so in addition to your ADC/DAC specs, the card also needs a DSP ? If so, what level of processing is needed; i.e. how many cores,...
Kaz-I've calculated: H(s) = Y(s)/X(s)many times before before but to obtain reliable results I usually had to do two things (i) use 32-bit fixed-point FFT results,...
Kam-With three outputs, and the relatively small size of your ballroom, I think you would be in reasonable shape. As long as cost is not prohibitive, there is...
Kam-> the dsp can only recognize 3 speakers (left, middle, and right)Does that mean you have three (3) outputs ?> the amp allows me to individually adjust...
Kam-But you only have one output, correct ? The typical approach is one output per speaker, get the system up and running, then take careful seating measurements...
Kam-Many years ago I used to help guys with sound systems in concert halls, churches, etc.One thing always of concern: equalizing sound arrival at certain points...
Milad-For IIR filters, group delay is notoriously difficult to measure at frequency response transition regions. Phase unwrapping has to be performed carefully...
"It pains you", hehe. Yeah I can see that. Maybe Ned is wiser than he looks, if he knows the number of samples he consumes (seems like a reasonable assumption)...
JMS-Trying to get a mental picture ... you're saying that you have a sample buffer (or more than one, at 1.024 MHz) and the "downstream consumer" is taking an...
Abb-I think first you may want to be absolutely sure it's overflow or clipping that you have. My suggestion is to look carefully (zoom in to sample level), starting...
Abb, I'm not clear ... you're using floating-point to look at sampled audio data ? How did you get the data in the first place ? Most (by far) audio devices...
Tim, thanks, right. Theoretically, cascading 1st or 2nd order filers is intended to help. What I was concerned about is during testing if something is slightly...
Jens-Ok thanks. My first thought was that cascading anything IIR might run into numerical issues, especially so if fixed-point is somewhere in the picture. ...
Max-What analysis are you looking at, if not spectral that would require windowing ? Windowing is pretty much a spectral processing thing (FFT, wavelet, Gabor,...
Simon-Got it. For SnapDragon I can't make an OpenCV specific or other recommendation now, but possibly in a month or two, as for a major outfit we're doing a deep...
Simon-Are you unable to answer my question for proprietary or other reasons; i.e. which platform you're using (which CPU or SoC) and how many cores you have available...
Simon-Have you looked at OpenCV ? What platform are you running on and how many cores ?OpenCV includes image convolution, and has the *potential* to be fast depending...
Dan-You have recieved so much great theoretical advice, for sure you will get it working fine.I would like to add some advice on the practical side. Many years...
b2508 I see several good algorithm suggestions here, but assuming your current algorithm is fine as-is, do you have available a faster clock ? Or can you synthesize...
Markus-Suggest to take a look at battery manufacturers' data sheets, for example:https://www.duracell.com/en-us/techlibrary/product...or closely related chip datasheet,...
Sometimes we have to teach new hires about windowing on a basic level. They've already seen it in school, but maybe don't "feel" the need, and just think of it...
Ced yeah I'm not sure either. I think at one time it was automatic and you had to make an effort to get it to prompt you:https://answers.microsoft.com/en-us/windowslive/fo...Even...
Ced so what you're saying is that JJ, by using the Add Connections Features, essentially gave LinkedIn permission to read the contact list(s) somewhere on his machine,...
David - yeah it seems you're pretty good at artifact analysis. After a lot of prodding we got more info from our customer and they did have issues with their test...
I've uploaded a wav file (http://signalogic.com/wav_files/evs_16khz_13200bps_CH.wav) that was produced by extracting payloads from an EVS (codec) pcap sent by our...
It looks like Jaewook means he adapted this to use with the ACF:http://users.monash.edu/~lloyd/tildeMML/KLhttps://stats.stackexchange.com/questions/14673/me...Although...
I would guess (i) they're trying to show a rate, i.e. some number of iterations per sec, (ii) time/s is a time value normalized with another time value (but I have...
Tony-The 56362 data sheet is here:http://www.nxp.com/assets/documents/data/en/data-s...As
Joe mentions, it contains a 30k word program ROM. In those days (15+...
Use this form to contact jbrower
Before you can contact a member of the *Related Sites: