Modular Switched Multiported SRAM-Based Memories

被引:4
|
作者
Abdelhadi, Ameer M. S. [1 ]
Lemieux, Guy G. F. [1 ]
机构
[1] Univ British Columbia, Dept Elect & Comp Engn, 2332 Main Mall, Vancouver, BC V6T 1Z4, Canada
基金
美国国家科学基金会; 加拿大自然科学与工程研究理事会;
关键词
Design; Algorithms; Performance Embedded memory; programmable memory; block RAM; multiported memory; shared memory; cache memory; register file; parallel memory access; ARCHITECTURE;
D O I
10.1145/2851506
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Multiported RAMs are essential for high-performance parallel computation systems. VLIW and vector processors, CGRAs, DSPs, CMPs, and other processing systems often rely upon multiported memories for parallel access. Although memories with a large number of read and write ports are important, their high implementation cost means that they are used sparingly. As a result, FPGA vendors only provide dual-ported block RAMs (BRAMs) to handle the majority of usage patterns. Furthermore, recent attempts to create FPGA-based multiported memories suffer from low storage utilization. Whereas most approaches provide simple unidirectional ports with a fixed read or write, others propose true bidirectional ports where each port dynamically switches read and write. True RAM ports are useful for systems with transceivers and provide high RAM flexibility; however, this flexibility incurs high BRAM consumption. In this article, a novel, modular, and BRAM-based switched multiported RAM architecture is proposed. In addition to unidirectional ports with fixed read/write, this switched architecture allows a group of write ports to switch with another group of read ports dynamically, hence altering the number of active ports. The proposed switched-ports architecture is less flexible than a true-multiported RAM where each port is switched individually. Nevertheless, switched memories can dramatically reduce BRAM consumption compared to true ports for systems with alternating port requirements. Previous live-value-table (LVT) and XOR approaches are merged and optimized into a generalized and modular structure that we call an invalidation-based live-value-table (I-LVT). Like a regular LVT, the I-LVT determines the correct bank to read from, but it differs in how updates to the table are made; the LVT approach requires multiple write ports, often leading to an area-intensive register-based implementation, whereas the XOR approach suffers from excessive storage overhead since wider memories are required to accommodate the XOR-ed data. Two specific I-LVT implementations are proposed and evaluated: binary and thermometer coding. The I-LVT approach is especially suitable for deep memories because the table is implemented only in SRAM cells. The I-LVT method gives higher performance while occupying fewer BRAMs than earlier approaches: for several configurations, BRAM usage is reduced by greater than 44% and clock speed is improved by greater than 76%. The I-LVT can be used with fixed ports, true ports, or the proposed switched ports architectures. Formal proofs for the suggested methods, resources consumption analysis, usage guidelines, and analytic comparison to other methods are provided. A fully parameterized Verilog implementation is released as an open source library. The library has been extensively tested using Altera's EDA tools.
引用
收藏
页数:26
相关论文
共 50 条
  • [32] On the evaluation of SEU sensitiveness in SRAM-based FPGAs
    Bernardi, P
    Reorda, MS
    Sterpone, L
    Violante, M
    10TH IEEE INTERNATIONAL ON-LINE TESTING SYMPOSIUM, PROCEEDINGS, 2004, : 115 - 120
  • [33] Testing for the programming circuit of SRAM-based FPGAs
    Michinishi, H
    Yokohira, T
    Okamoto, T
    Inoue, T
    Fujiwara, H
    IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, 1999, E82D (06): : 1051 - 1057
  • [34] Attacking an SRAM-based PUF through Wearout
    Roelke, Alec
    Stan, Mircea R.
    2016 IEEE COMPUTER SOCIETY ANNUAL SYMPOSIUM ON VLSI (ISVLSI), 2016, : 206 - 211
  • [35] Architectural design tradeoffs in SRAM-based TCAMs
    Ahmed, Ali
    Park, Kyungbae
    Khan, Saqib Ali
    Maroof, Naeem
    Baeg, Sanghyeon
    IEICE ELECTRONICS EXPRESS, 2019, 16 (13):
  • [36] SEU Recovery Mechanism for SRAM-Based FPGAs
    Legat, Uros
    Biasizzo, Anton
    Novak, Franc
    IEEE TRANSACTIONS ON NUCLEAR SCIENCE, 2012, 59 (05) : 2562 - 2571
  • [37] On the Static Cross Section of SRAM-based FPGAs
    Manuzzato, A.
    Gerardin, S.
    Paccagnella, A.
    Sterpone, L.
    Violante, M.
    NSRE: 2008 IEEE RADIATION EFFECTS DATA WORKSHOP, WORKSHOP RECORD, 2008, : 94 - +
  • [38] A fault injection tool for SRAM-based FPGAs
    Alderighi, M
    D'Angelo, S
    Mancini, M
    Sechi, GR
    9TH IEEE INTERNATIONAL ON-LINE TESTING SYMPOSIUM, PROCEEDINGS, 2003, : 129 - 133
  • [39] An Automated Test Framework for SRAM-based FPGA
    Lv Xuemin
    Yang Moucheng
    Zhou Xuegong
    Wang Lingli
    PROCEEDINGS OF 2015 IEEE 11TH INTERNATIONAL CONFERENCE ON ASIC (ASICON), 2015,
  • [40] Analyzing SEU effects in SRAM-based FPGAs
    Violante, M
    Ceschia, M
    Reorda, MS
    Paccagnella, A
    Bernardi, P
    Rebaudengo, M
    Bortolato, D
    Bellato, M
    Zambolin, P
    Candelori, A
    9TH IEEE INTERNATIONAL ON-LINE TESTING SYMPOSIUM, PROCEEDINGS, 2003, : 119 - 123