Expansion size limits

Started by voodoo, November 02, 2017, 03:16:21 AM

Previous topic - Next topic

voodoo

Here is a brief comparison of limits displayed in YEM:

S970:

* Voice Wave Size: 509 MB
* Audio Style Wave Size: 129 MB
* Voice Parameter Size: 3072 KB (this is needed heavily for custom drum voices...)
* User Drive Size: 13906 KB (this is where styles go and limits the number of expansion styles)

Tyros 5:

* Voice Wave Size: 1023 MB (max 2048)
* Audio Style Wave Size: 124 MB (only one audio style expansion pack at a time)

Genos:

* Voice Wave Size: 1843 MB
* Pack Install File Size: 2048 MB
* Audio Style Wave Size: 1024 MB (taken from instruments.ini)

Most interesting is the limitation of the PPI file size to 2048 MB, that is 31 bit. This is near the max file size of 4 GB for Fat32 file system.

It seems to me, that voice wave size is limited to 1843 MB intentionally because install files larger than 2 GB are not supported by the file system interface. Can this be?

pj, can you explain the bit width of the address bus of the sound generator chip? Is there a limit?

Uli

Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

pjd

Hi Uli --

This is not an easy answer. Unless there is a reason to deep dive the Tyros 5 (the old era), I'll pass on describing the T5 for now.

The remainder of this answer uses the Montage as reference. The Genos has bigger wave memory capacity and may use different NAND flash integrated circuits than the Montage. Without a service manual, one cannot know with certainty.

ONFI passes the NAND flash address in byte sequential fashion. (There is an option to pass data 16 bits at a time, but the Montage uses 8-bit byte sequential.) The number of bytes transferred is determined by the number of address cycles. The Montage NAND flash is a Cypress S34ML08G101TFI000 which implements 5 address cycles.

With ONFI, there's no guarantee that all address bits of the 40 possible bits are actually used. The S34ML08G101TFI000 implements address bits A0 to A30 for a total of 31 address bits. That's for a single IC (one channel).

The Montage design moves 16-bits at once by operating two S34ML08G101TFI000 ICs in tandem (parallel). So, one question regarding Yamaha's parameters, are the stated capacities 8-bit bytes or 16-bit words? The tone generator operates on two 16-bit words at a time and has two independent channels (HIGH and LOW), moving 32-bits total per cycle.

Thanks to that crazy polyphony spec, I think the two TGs are fed by separate independent wave memories. That makes it a little easier to figure out what's happening on the expansion side (TG#2).

The big assumption here is a low-level hardware design like the Montage and the use of similar ICs for flash.

Yikes. Gotta go to the gym where I will be thinking some more.  ???

-- pj

pjd

After saying all that, I don't think the software sizes are limited by hardware addressing. ONFI devices can be "stacked." That's probably how Yamaha got to 64GB on the second TG.

My working hypothesis: Software partitions the physical 64GB into user voice waveform, user audio style waveform and "internal memory."

I need to know more about ONFI "stacking" and then it will still take a leap of faith as to what Yamaha actually did.

A service manual would be nice.  ;)

-- pj

pjd

Quote from: pjd on November 02, 2017, 09:29:22 AM
So, one question regarding Yamaha's parameters, are the stated capacities 8-bit bytes or 16-bit words?

Of course, the capacities are given in bytes. This matches the spec.

At the physical level, the 64GB NAND flash memory looks like one contiguous memory unit. The Montage wave memory uses a multi-package design (the correct term where I used "stacking" earlier). Sticking with my hypothesis, the software partitions that 64GB space like software might partition a hard drive or SSD.

I don't believe there are any hardware reasons to prefer a particular partition size. I think it's the case of Yamaha saying, "Well, 1.8GB should be enough." What happened to the other bytes that make up the 2GB voice waveform partition? Voice metadata.

I doubt if the user voice waveform partition is FAT32 or any other kind of complicated file system. Waveforms are accessed sequentially in pages. Sequential paged access is needed to maintain high bandwidth for 128 voice mono/stereo polyphony. This is why waveforms (samples) are laid down sequentially in waveform memory; it is not random access. (In T5, this is the source of all the reformatting, etc.)

I'd be curious to know the format in which audio drum waveforms are stored: AIFF, WAV, proprietary (LINEAR16_FRAME)? A separate partition for audio drum waveforms means that it can be managed independently of user voice waveforms and still allow for fast sequential paged access.

The "internal memory" has got a file system. Wonder if Yamaha have moved to Linux?

Trouble is, there are so many questions where the answers are speculative at best.

Take care -- pj

voodoo

I don't think that a file system is used internally for wave rom. But the USB stick comes with a file system, and the Genos OS has to read this. So no NTFS for files larger than 4 GB will be supported. This would explain a 4 GB File size limit, but not the given 2 GB Limit for PPI.
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

pjd

Hi Uli --

I guess I'm missing the context for the PPI file size limitation. What is the context and/or where did this limit appear?

I'm waaay behind you if it's the new version of YEM. I just finally installed 2.5.0.

Take care and thanks for reading through my stream of consciousness -- pj

voodoo

Hi ph,

sorry for bringing in confusion. I add a screenshot from YEM showing that there is a new limit if 2048 MB "Pack Install File Size".

Uli

[attachment deleted by admin]
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

deepsae48

voodoo
2048MB is your expansion memmory card in your instrument.

EileenL

You have 1.8Gb flash memory for packs and a smaller memory for audio styles.
Eileen

darman

how to solve the problem of the size of the sound parameters that are already full while the size of the sound waves are still a lot of blanks in Yem

[attachment deleted by admin]

EileenL

Remember that you only have 509 Mb memory in 970 so that is only about half a Gb so you can not load very large packs.
Eileen

darman

thanks Eileen
what is wrong with my package, Voice Wave Size in new yem show about 202 mb .. but i can not save ppi file because
Voice Parameter size is full, is there any way to reduce the size of voice parameter size in yem without reducing the size of Voice Wave size 202 mb it.

DerekA

I think this means you've picked a large number of voices each with a relatively small waveform.

I don't think there's any real way round this. My only suggestion would be to remove the voices one at a time and watch the impact on the total parameter size. Maybe one (or more) voices are taking up a lot of parameter space. Unlikely, but possible.
Genos

voodoo

The problem arises from your large number of drum voices. These need much space, because for each note, there are separate settings. Try to leave out some drum voices, and it will work.

(I know that this is a weak point of the S970 memory architecture.)

Uli
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

darman