We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Wish everyone have a happy holiday season!I am trying to use ARM DSP command smulwx and smlawx command to implement an IIR filter, found a big DC offset in the result. Looking into it, I found it is because these commands will do (32bits X 16bits)>>16, so basically they are doing floor, instead of round. I can duplicate this in Matlab. Wondering whether anyone use these commands before and how to solve this issue. Difficulty to me is that these DSP commands have no intermitent result, it will do multiplication and then arithmatic shifting 16 bits, good thing is that it fast, but there is no middle result that i can grab to do rounding myself. checked the document from ARM, there is no option to let these commands to do round instead of floor. I am surprised why they do not do this...Thank you.
But these operators are dynamic, it is not practical to add a remainder in real time to compenstate for that.
Wish everyone have a happy holiday season!I am trying to use ARM DSP command smulwx and smlawx command to implement an IIR filter, found a big DC offset in the result. Looking into it, I found it is because these commands will do (32bits X 16bits)>>16, so basically they are doing floor, instead of round. I can duplicate this in Matlab. Wondering whether anyone use these commands before and how to solve this issue.