3 ms·
that's interesting, I've done DSP on paper (and microcode, i'm old school), but never on such an architecture. and it's interesting to think, "well, that's use
by fsckboy 5y ago
that's interesting, I've done DSP on paper (and microcode, i'm old school), but never on such an architecture.
and it's interesting to think, "well, that's useful, let's make it a defined behavior!" but then that defined behavior could be a nightmare of inefficiency on a machine with a different architecture. (i mean, probably not for the particular case of 16 bit chars, but in the general case quite unpredictable)
- AceJohnny2 5y agoNot really related to C, but I once worked on an SoC where the DSP was mixed 16/24-bit, so they mapped each word to the ARM 32-bit bus. That is, each 4-byte address would map to one 16-byte (or 24-byte) word of the DSP's memory & register space. But under the DSP was an I2C-based ISP that was glued in, and _its_ 8-bit words were mapped to each of the DSP's 16-bit (/24-bit) words. So if the ARM wanted to talk to the ISP's control space, it read one 8-bit word of the ISP in each 32-bit word address. The cherry-on-top was that the DSP was Big-Endian and the ARM was Little-Endian, and so you had to swap all the data you were exchanging with it. Still the biggest HW WTF I've encountered in my career. This was the STMicroelectronics Nomadik 8810/8815/8820 chips. https://en.wikipedia.org/wiki/Nomadik https://en.wikipedia.org/wiki/Nomadik