I have a 16-bit wide RAM that doesn't have the ability to be byte addressed. However, the compiler is compiling the code with instructions that write single bytes. This is resulting in data overriding other data. Is there a way to tell the compiler that the memory can only be accessed using 16-bit data so that my RAM doesn't get corrupt?
Would it be possible to fix this by just converting all the data that use the 8-bit data structures to 16-bit?
It probably would. But the compiler is still allowed to use byte-wise accesses. To be absolutely sure, you'll have to inspect all code emitted by the compiler. If functional tests can do it, it would probably be easier to do.
Ok, sounds like it might be worth looking into, although, I'll probably just hook up the DQM lines in the future. But for now, that should suffice.