From http://www.memoir-systems.com/index.php?option=com_content&view=article&id=73&Itemid=472 :
"by implementing a variety of techniques such as caching, virtualization, pipelining, and data encoding".
What exactly that means is not clear (and the whitepaper does not provide any significant additional information).
Address renaming (virtualization) could obviously be used manage bank conflicts. Bank conflicts could also be statistically reduced by _address_ encoding, but it is not clear that such would help worst case behavior even in the presence of other techniques. Pipelining could make temporal multiporting act as physical multiporting.
Their term Algorithmic Memory made me think that perhaps they exploited expected access patterns, but that appears not to be the case. The "algorithm" revers to the generation of a memory by algorithmic combination of standard components.
The major accomplishment here seems to be in making such transparent to the designer.
What are the engineering and design challenges in creating successful IoT devices? These devices are usually small, resource-constrained electronics designed to sense, collect, send, and/or interpret data. Some of the devices need to be smart enough to act upon data in real time, 24/7. Are the design challenges the same as with embedded systems, but with a little developer- and IT-skills added in? What do engineers need to know? Rick Merritt talks with two experts about the tools and best options for designing IoT devices in 2016. Specifically the guests will discuss sensors, security, and lessons from IoT deployments.