Starting up... again... for the 3rd time, please, need help

New to XMOS and XCore? Get started here.
User avatar
Folknology
XCore Legend
Posts: 1274
Joined: Thu Dec 10, 2009 10:20 pm

Post by Folknology »

Although you probably couldn't easily deal with 512 you could certainly achieve smaller numbers by using multiple Quad SPI flash devices in parallel across 4/8 bit ports perhaps.

just an idea.

regards
Al


User avatar
Berni
Respected Member
Posts: 363
Joined: Thu Dec 10, 2009 10:17 pm

Post by Berni »

I like the keeping only the beginnings in ram idea.

And yes SPI NOR flash is also an attractive alternative since they do not have a seek time, just the time it takes you to send the 4 byte long read command, but on the down side those are only common up to about 16MB. He didn't say what sort of number of different sounds he is going for.
User avatar
lilltroll
XCore Expert
Posts: 956
Joined: Fri Dec 11, 2009 3:53 am
Location: Sweden, Eskilstuna

Post by lilltroll »

Hmm 1Gbit NOR flash in a TSOP (package) for less than 10$ on digikey, I like that.
Since read is the common operation, and you do not read and write at the same time, NOR flash is a very attractiv solution.

Since you have a maximum need of polyphonic tones, 32 stereo !?, you could solve the multitimbral (http://en.wikipedia.org/wiki/Multitimbral) issue with a tree structures of XMOS chips and several memorybanks in the tree, each memory holding one or several different timbres, but not all of them (alone).
You could then add all polyphonic tones to one soundstream before you seend it upstream in the tree to reduce the bandwith. This way you should be able to create a synthesizer with a lot of voices in total. Just make you tree bigger/wider to add more timbres. At the top of the tree you Place the DAC. The top(root) of the tree could use alot of 1 Ports SPI Communication or smilar to add each stereo stream of polyphonic tones from the branches, since each branch is only 1.4 Mbit/s (stereo).
You couls now add up to 16 different treebranches of timbres with one L1-48 for an example. This could give you 512 voices stereo in total. If you would use 4 L-Links and the DAC in the top, connected to 4 L1-48 with 16 SPI lines each, you could have 2048 voices, with 64 multitimbral voices.
A large implementation would be with 64 branches of 64 pc. of L1-128 togheter with a NOR-flash each of 1 GBit, giving you 32 M stereosamples per timbre to use. Having a total of 8Gbyte of wavetable memory in the tree. This should be nice when using several layers of sounds for different key-velocities. (A louder sound from an acoustical instrument has a different spectrum tilt compared to a sound played more quiet, it is not good enought to just map the volume to the key velocity in the year 2012)