Hey Dave, Guess what? You're looking at your early subscriber and your most dedicated enthusiast! I've been waiting for this moment like a kid waiting for Christmas morning. Your decision to dive into tutorials has got me doing a happy dance! Cheers to your tutorials and to our newfound subscription journey together!
Hello ferrograph, Glad you see the value in understanding the history of the parts. I feel it is helpful to figuring out why some things are different when you know the progression of the parts. I was worried that this video would be too boring but it looks like a fair number of people have taking the time to watch it.
Thanks for the kind comment. I am glad you are finding it helpful. Feel free to ask questions because I take the questions as suggestions for future videos. Also, EngineerZone on Analog.com is another good place to find some answers if you are not aware of it. ez.analog.com/dsp/sigmadsp/
Hello Dave, I have a few questions. 1. Is the ADAU1467 your most Powerful DSP ? 2. When does the 4th Gen come out ? 3. Are the DSP in combination with your ARM Core driven CPUs faster and capeable to handle more MIPS? And does that mean less latency ? 4. How do I reduce latency overall and what is the latency if you run just a signal through it without processing? Thank you alot!
1) Yes, the ADAU1467 is the most powerful unless you venture into the world of Sharks. 2) Contact me directly at Analog Devices and sign an NDA and then we can discuss. 3) Using the DSP with an ARM has advantages. The DSP does the audio processing well and efficiently and the ARM core handles the MCU type tasks well. So smart allocation of tasks is a great way to design a powerful system. Latency with the ARM cores is a little different. They tend to be programmed in a block style where you have to collect a block of samples then process them. So that has a direct correlation with latency. The SigmaDSP is a stream based processor. It does not have to wait for a block to be assembled. It processes one sample at a time as they show up. So there is a sample period to shift in the sample. One sample period to go into a buffer for time correction from different serial ports. Then the core picks up the sample and processes it. Then it goes into an output buffer and then the serial output port shifts it out. That is five samples. There could be an additional sample period of wait if you are running as a clock slave so 5-7 samples is the usual answer for latency. Of course the sample rate will make a difference as to the actual time. 4) You do have to watch what you do audio processing-wise. Most of the EQs are IIR filters so there can be some frequency dependent phase shifts. Obviously, if you use a delay line you add some latency. An FIR filter will also add some latency depending on the order of the filter. But, if you just do level, limiters, compressors and IIR EQs there is only one sample period of delay to process the program every sample period. Everything you create in SigmaStudio is processed every sample period.
Excellent! Looking forward to the videos. I’d be very interested to hear if Analog Devices has a USB audio interface offering in conjunction with sigma studio to create custom multi channel audio interfaces. I find the product range a little confusing as a beginner. It’d be good to get some introduction to any dev boards available if possible. I wouldn’t want to invest my time & money on end of life products, so up to date info would be much appreciated. Keep up the good work 👍
Hello , I wish we had a USB audio interface built in but we do not. There are some available from other companies but I personally have not used them. There is this product from mini-dsp that would work well to develop a multi-channel interface and the cost is reasonable. If you are looking for something that will be around for a long time I would work with the sigma300/350 line of products. The ADAU1452 and the ADAU1467 families. These are very powerful but the complexity is a little higher. I will continue to produce videos to hopefully make this a little easier. The ADAU1701 family of products is very old now but super popular because it is so easy to use and low cost. It is still a great solution for many products. Especially things like speakers. With SigmaStudio it makes it easier to migrate to newer parts but it will not be a simple cut and paste but many parts of it will be easily copied. Stay tuned for more videos. The list of possible topics is quite long. Here is the link to the USB Streamer. www.minidsp.com/products/usb-audio-interface/mchstreamer Dave T
@@HowtoSigmaDSP Thanks Dave! I've been experimenting with the XMOS 3rd generation chips, and I've managed to get it to talk my EVAL-ADAU1467Z evaluation board via I2S. I also got the Aux ADC pot to work as a volume control thanks to your video about bit shifting the ADC data, I would've never have figured that out, so thanks!! I'm slowly working my way through your videos. I'm looking forward to getting the macros to work. For now, I need to figure out how to control EQ parameters via I2C so I can control EQ with an external MCU. Anyway, got lots to learn and you're doing a fantastic job!! Thank you so much for your efforts, It's not gone un-noticed. Bernie
Yes, 100% it will handle more than one DSP in the same project. You can do up to four. SigmaStudio will not let you connect from one DSP to the other because that connection does not exist. You will see on the toolbox that each processor with the unique IC number will be listed. So you have to drag blocks out of the correct IC to connect them together. The register settings will be available. It is a lovely thing. I also like to design more distributed systems. Makes each node simpler especially with real-time applications.
Hi Dave, a brilliant overview. Thank you. One comment/question about the self-boot operation. I have my local eval' board setup for self-boot operation, and yes I can edit the parameters live in tuning mode, but I always have to then link-compile-download and then write the changes to the EEPROM; i.e. the changes I make aren't stored to the EEPROM after just the link-compile-download operation. Is that correct? Or am I missing a cool trick? 😁
Hello Mark, Link/compile/download just loads up the program into RAM in the DSP. The selfboot mechanism will load in the program from the EEPROM when you power up or hit reset. Either way a program gets loaded into EEPROM. The EEPROM is not involved in the normal operation of the DSP. Therefore, once you are satisfied that the program is correct you have to "manually" overwrite the contents of the EEPROM with the new program or new settings in the same program. How this is done differs depending on the DSP you are using but it seems like you know how to do that. Knowing how this all works is important for learning how to creatively use this. You can be confident to experiment with new programs knowing you are not damaging the old known-working program in EEPROM. It is safe until you decide to overwrite it. You can also use the link/compile/connect to just use the program in the EEPROM but control it with SigmaStudio. Right this second I am not sure if I covered this in any of my current videos. There is so much more I need to cover! So you are not missing a cool trick and in my viewpoint this is not a negative but a positive. The program is safe until you change it. Thanks for subscribing! Dave T
Hey Dave,
Guess what? You're looking at your early subscriber and your most dedicated enthusiast! I've been waiting for this moment like a kid waiting for Christmas morning. Your decision to dive into tutorials has got me doing a happy dance!
Cheers to your tutorials and to our newfound subscription journey together!
Thanks! I have several videos going up soon and I have a long list of videos to produce. Thanks for the support!
@@HowtoSigmaDSP waiting fot the videos . Very interesting topic.
This was a great intro into Sigma DSP's. Especially appreciated the history and comparison of the various Sigma versions todate.
Hello ferrograph, Glad you see the value in understanding the history of the parts. I feel it is helpful to figuring out why some things are different when you know the progression of the parts. I was worried that this video would be too boring but it looks like a fair number of people have taking the time to watch it.
Dave, this is perfect timing! I was working on a project involving a DSP & was having trouble. Thank you for the explanations!
Thanks for the kind comment. I am glad you are finding it helpful. Feel free to ask questions because I take the questions as suggestions for future videos. Also, EngineerZone on Analog.com is another good place to find some answers if you are not aware of it. ez.analog.com/dsp/sigmadsp/
Hello Dave, I have a few questions.
1. Is the ADAU1467 your most Powerful DSP ?
2. When does the 4th Gen come out ?
3. Are the DSP in combination with your ARM Core driven CPUs faster and capeable to handle more MIPS? And does that mean less latency ?
4. How do I reduce latency overall and what is the latency if you run just a signal through it without processing?
Thank you alot!
1) Yes, the ADAU1467 is the most powerful unless you venture into the world of Sharks.
2) Contact me directly at Analog Devices and sign an NDA and then we can discuss.
3) Using the DSP with an ARM has advantages. The DSP does the audio processing well and efficiently and the ARM core handles the MCU type tasks well. So smart allocation of tasks is a great way to design a powerful system. Latency with the ARM cores is a little different. They tend to be programmed in a block style where you have to collect a block of samples then process them. So that has a direct correlation with latency. The SigmaDSP is a stream based processor. It does not have to wait for a block to be assembled. It processes one sample at a time as they show up. So there is a sample period to shift in the sample. One sample period to go into a buffer for time correction from different serial ports. Then the core picks up the sample and processes it. Then it goes into an output buffer and then the serial output port shifts it out. That is five samples. There could be an additional sample period of wait if you are running as a clock slave so 5-7 samples is the usual answer for latency. Of course the sample rate will make a difference as to the actual time.
4) You do have to watch what you do audio processing-wise. Most of the EQs are IIR filters so there can be some frequency dependent phase shifts. Obviously, if you use a delay line you add some latency. An FIR filter will also add some latency depending on the order of the filter.
But, if you just do level, limiters, compressors and IIR EQs there is only one sample period of delay to process the program every sample period. Everything you create in SigmaStudio is processed every sample period.
Excellent! Looking forward to the videos. I’d be very interested to hear if Analog Devices has a USB audio interface offering in conjunction with sigma studio to create custom multi channel audio interfaces. I find the product range a little confusing as a beginner. It’d be good to get some introduction to any dev boards available if possible. I wouldn’t want to invest my time & money on end of life products, so up to date info would be much appreciated. Keep up the good work 👍
Hello ,
I wish we had a USB audio interface built in but we do not. There are some available from other companies but I personally have not used them. There is this product from mini-dsp that would work well to develop a multi-channel interface and the cost is reasonable. If you are looking for something that will be around for a long time I would work with the sigma300/350 line of products. The ADAU1452 and the ADAU1467 families. These are very powerful but the complexity is a little higher. I will continue to produce videos to hopefully make this a little easier. The ADAU1701 family of products is very old now but super popular because it is so easy to use and low cost. It is still a great solution for many products. Especially things like speakers. With SigmaStudio it makes it easier to migrate to newer parts but it will not be a simple cut and paste but many parts of it will be easily copied. Stay tuned for more videos. The list of possible topics is quite long.
Here is the link to the USB Streamer.
www.minidsp.com/products/usb-audio-interface/mchstreamer
Dave T
@@HowtoSigmaDSP Thanks Dave! I've been experimenting with the XMOS 3rd generation chips, and I've managed to get it to talk my EVAL-ADAU1467Z evaluation board via I2S. I also got the Aux ADC pot to work as a volume control thanks to your video about bit shifting the ADC data, I would've never have figured that out, so thanks!! I'm slowly working my way through your videos. I'm looking forward to getting the macros to work. For now, I need to figure out how to control EQ parameters via I2C so I can control EQ with an external MCU. Anyway, got lots to learn and you're doing a fantastic job!! Thank you so much for your efforts, It's not gone un-noticed. Bernie
Would this work with 2 DSPs? (as in distributed control system). I believe sigma studio is interfaced with one DSP only but i need a confirmation
Yes, 100% it will handle more than one DSP in the same project. You can do up to four. SigmaStudio will not let you connect from one DSP to the other because that connection does not exist. You will see on the toolbox that each processor with the unique IC number will be listed. So you have to drag blocks out of the correct IC to connect them together. The register settings will be available. It is a lovely thing. I also like to design more distributed systems. Makes each node simpler especially with real-time applications.
Hi Dave, a brilliant overview. Thank you. One comment/question about the self-boot operation. I have my local eval' board setup for self-boot operation, and yes I can edit the parameters live in tuning mode, but I always have to then link-compile-download and then write the changes to the EEPROM; i.e. the changes I make aren't stored to the EEPROM after just the link-compile-download operation. Is that correct? Or am I missing a cool trick? 😁
Hello Mark,
Link/compile/download just loads up the program into RAM in the DSP. The selfboot mechanism will load in the program from the EEPROM when you power up or hit reset. Either way a program gets loaded into EEPROM. The EEPROM is not involved in the normal operation of the DSP. Therefore, once you are satisfied that the program is correct you have to "manually" overwrite the contents of the EEPROM with the new program or new settings in the same program. How this is done differs depending on the DSP you are using but it seems like you know how to do that. Knowing how this all works is important for learning how to creatively use this. You can be confident to experiment with new programs knowing you are not damaging the old known-working program in EEPROM. It is safe until you decide to overwrite it. You can also use the link/compile/connect to just use the program in the EEPROM but control it with SigmaStudio. Right this second I am not sure if I covered this in any of my current videos. There is so much more I need to cover! So you are not missing a cool trick and in my viewpoint this is not a negative but a positive. The program is safe until you change it.
Thanks for subscribing!
Dave T
@@HowtoSigmaDSP Many thanks, Dave. Excellent clarification there. :)
Excellent....! 🥰🥰🥰🥰
Thanks! Thanks for subscribing and watching.