Multi-Ported Memories for FPGAs (and ASICs too)

As FPGAs increase in size, designers use them to build larger systems-on-chip that require frequent data sharing, communication, queueing, and synchronization among distributed functional units. These features boil down to FIFOs and register files, which we can implement using multi-ported memories.

This page indexes research papers about multi-ported memories, from IEEE, IET, ACM, and Hindawi publications, focusing on architectural techniques for multi-ported memory other than word/bit-line replication in VLSI SRAMs.

Also not covered here (or only briefly mentioned) are related publications on post-silicon testing and repair of ASIC multi-ported memories, and implementations of Content-Addressable Memories (CAMs), caches, and VLSI SRAM memories.

Prior to 2010, multi-ported memories referred to SRAM memories with extra word/bit lines, simple multi-pumping schemes, or memories with arbitration logic to support multiple pending requests from several functional units. After 2010, multi-ported memories focus on implementations supporting multiple, concurrent, non-blocking accesses, with different area, power, and speed tradeoffs.

Please direct any questions, corrections, or suggested additions to Charles Eric LaForest, PhD at eric@fpgacpu.ca.

2019

2018

2017

2016

2015

2014

2013

2012

2011

2010

2009

2008

2007

2004

2003

2002

2001

1999

1998


fpgacpu.ca