Intel Agilex® 7 F-Series and I-Series FPGA Memory Subsystem IP User Guide

ID 789389
Date 12/04/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

3.2.3.1. Memory Subsystem Multi-Bin Lookup (MBL) Functional Description

The Memory Subsystem Multi-Bin Lookup (MBL) can operate as a single lookup table or can be divided into a specified number of logical tables.

The following figure illustrates the functional blocks of the MBL.

Figure 13. MBL Functional Diagram

Key Table

The key table stores full keys and the associated results. It is also used in free pointers management, described later in this document.

Hash Table

The hash table is addressed by HASH1 and comprises R rows, each row containing B bins. Each bin stores a key signature, generated using HASH2 and a pointer to the key table.

HASH1

HASH1 is a hash generator that is used to address a row in the hash table. The width of the hash function equals log2(R), where R denotes the number of rows in the hash table.

HASH2

HASH2 is a hash generator that is used to generate a key signature – a compressed representation of a key. The key signature is stored in a bin belonging to a row selected by HASH1 and must be unique within the selected row.