I have, however, had a response to my post on the Xilinx Community Forums asking for more information about the problem, which I have provided.
Let's hope that they can suggest a solution.
Start RAM, DSP and Shift Register Reporting --------------------------------------------------------------------------------- Block RAM: +------------+-------------------------+------------------------+---+---+------------------------+---+---+--------------+--------+--------+------------------------+ |Module Name | RTL Object | PORT A (depth X width) | W | R | PORT B (depth X width) | W | R | OUT_REG | RAMB18 | RAMB36 | Hierarchical Name | +------------+-------------------------+------------------------+---+---+------------------------+---+---+--------------+--------+--------+------------------------+ |framepacker | thumnailbuffer0/ram_reg | 4 K X 8(READ_FIRST) | W | | 4 K X 8(WRITE_FIRST) | | R | Port A and B | 0 | 1 | framepacker/extram__26 | |viciv | rasterbuffer1/ram_reg | 2 K X 9(READ_FIRST) | W | | 2 K X 9(WRITE_FIRST) | | R | Port A and B | 1 | 0 | viciv/extram__42 | +------------+-------------------------+------------------------+---+---+------------------------+---+---+--------------+--------+--------+------------------------+ Note: The table shows RAMs generated at current stage. Some RAM generation could be reversed due to later optimizations. Multiple instantiated RAMs are reported only once. "Hierarch ical Name" reflects the hierarchical modules names of the RAM and only part of it is displayed. Distributed RAM: +--------------+--------------------------+--------------------+----------------------+--------------------------------+----------------------+ |Module Name | RTL Object | Inference Criteria | Size (depth X width) | Primitives | Hierarchical Name | +--------------+--------------------------+--------------------+----------------------+--------------------------------+----------------------+ |gs4510 | shadowram0/ram_reg | Implied | 128 K X 8 | RAM256X1S x 4096 | gs4510/ram__25 | |iomapper__GC0 | kickstartrom/ram_reg | Implied | 16 K X 8 | RAM256X1S x 512 | ram__26 | |framepacker | videobuffer0/ram_reg | Implied | 4 K X 8 | RAM64X1D x 128 RAM64M x 128 | framepacker/ram__28 | |ethernet | rxbuffer0/ram_reg | Implied | 4 K X 8 | RAM64X1D x 128 RAM64M x 128 | ethernet/ram__29 | |ethernet | rrnet_rxbuffer/ram_reg | Implied | 4 K X 8 | RAM64X1D x 128 RAM64M x 128 | ethernet/ram__30 | |ethernet | txbuffer0/ram_reg | Implied | 4 K X 8 | RAM64X1D x 128 RAM64M x 128 | ethernet/ram__31 | |sdcardio | sdsectorbuffer0/ram_reg | Implied | 512 X 8 | RAM64X1D x 16 RAM64M x 16 | sdcardio/ram__32 | |sdcardio | sdsectorbuffer1/ram_reg | Implied | 512 X 8 | RAM64X1D x 16 RAM64M x 16 | sdcardio/ram__33 | |sdcardio | f011sectorbuffer/ram_reg | Implied | 512 X 8 | RAM64X1D x 16 RAM64M x 16 | sdcardio/ram__34 | |uart_monitor | membuf_reg | Implied | 16 X 8 | RAM16X1S x 8 | uart_monitor/ram__35 | |uart_monitor | historyram0/ram_reg | Implied | 1 K X 177 | RAM256X1S x 708 | uart_monitor/ram__37 | |viciv | chipram0/ram_reg | Implied | 128 K X 9 | RAM128X1D x 9216 | viciv/ram__38 | |viciv | colourram1/ram_reg | Implied | 64 K X 8 | RAM128X1D x 4096 | viciv/ram__39 | |viciv | paletteram0/ram_reg | Implied | 1 K X 32 | RAM256X1S x 128 | viciv/ram__40 | |viciv | charrom1/ram_reg | Implied | 4 K X 8 | RAM256X1S x 128 | viciv/ram__41 | |viciv | sprite_x_reg | Implied | 8 X 8 | RAM16X1S x 8 | viciv/ram__42 | |viciv | sprite_data_offsets_reg | Implied | 8 X 6 | RAM32M x 1 | viciv/ram__43 | |viciv | sprite_colours_reg | Implied | 8 X 8 | RAM16X1S x 8 | viciv/ram__44 | |viciv | sprite_y_reg | Implied | 8 X 8 | RAM16X1S x 8 | viciv/ram__45 | |viciv | buffer1/ram_reg | Implied | 512 X 8 | RAM64X1D x 16 RAM64M x 16 | viciv/ram__46 | +--------------+--------------------------+--------------------+----------------------+--------------------------------+----------------------+