I have created a system generator dual port memory in an embedded microblaze system. The memory is write only and I specified 16 bit wide output and 1024 deep. I wrote IP to fill memory from a bank of A/D s and connected the 10 bit address line generator in my IP to the 10 bit wide system generator address bus in the system generator generated IP in XPS. When I run the device and look at the memory with the debugger (or from uP access) I see that the word widths that have been written are 32 bit. The system generator lowest order address line is working on 32 bit word boundaries, not 16 bit as I thought I specified. I guess it could work but I waste half of my memory.
Is it possible to access sytem generator shared memory object with an adress resolution lower than 4 bytes?
It says in the manual that the data width is inferred from the input. The data input into the system generator memory module is a 'Gateway In' module with a 16.0 unsigned Output Type.
It also says that all access to dual port memory is 32 bit wide. I am willing to accept this on the uProcessor side but must it be so on my input port as well.