Visible to Intel only — GUID: woo1681775327409
Ixiasoft
1. About the Intel Agilex® 7 F-Series and I-Series FPGA Memory Subsystem IP
2. Introduction to Memory Subsystem IP
3. Memory Subsystem IP Architecture and Feature Description
4. Memory Subsystem Features
5. Memory Subsystem Interfaces and Signals
6. Memory Subsystem User Operations
7. Memory Subsystem Register Descriptions
8. Parameterizing the Memory Subsystem IP
9. Simulating a Design Example
10. Document Revision History for Intel Agilex® 7 F-Series and I-Series FPGA Memory Subsystem IP User Guide
5.3.1. TCAM AXI-ST Request Interface
5.3.2. TCAM AXI-ST Response Interface
5.3.3. TCAM AXI-Lite Interface
5.3.4. BCAM AXI-ST Request Interface
5.3.5. BCAM AXI-ST Response Interface
5.3.6. BCAM AXI-Lite Interface
5.3.7. MBL AXI-ST Request Interface
5.3.8. MBL AXI-ST Response Interface
5.3.9. MBL AXI-Lite Interface
6.4.1. MBL Flush Operation
6.4.2. MBL Insert Key Operation
6.4.3. MBL Delete Key Operation
6.4.4. MBL Lookup Operation Using Key
6.4.5. MBL Modify Operation
6.4.6. MBL Modify Result Using Handle Operation
6.4.7. MBL Delete Key Using Handle Operation
6.4.8. MBL Lookup Using Handle Operation
6.4.9. MBL Insert Key if Not Present or Modify Result if Present Operation
6.4.10. MBL Get Handle Operation
7.2.1. Offset 0x0000 Version
7.2.2. Offset 0x0004 Feature List
7.2.3. Offset 0x0010 Memory Interfaces 0-7
7.2.4. Offset 0x0014 Memory Interfaces 8-15
7.2.5. Offset 0x0018 Memory Interfaces 16-23
7.2.6. Offset 0x001C Memory Interfaces 24-31
7.2.7. Offset 0x0020 Scratch Pad
7.2.8. Offset 0x0030 Control Policy (Lower DWORD)
7.2.9. Offset 0x0034 Control Policy (Upper DWORD)
7.2.10. Offset 0x0038 Read Access Control Policy (Lower DWORD)
7.2.11. Offset 0x003C Read Access Control Policy (Upper DWORD)
7.2.12. Offset 0x0040 Write Access Control Policy (Lower DWORD)
7.2.13. Offset 0x0044 Write Access Control Policy (Upper DWORD)
7.2.14. Offset 0x0050 Memory Status Bitmask 0
7.2.15. Offset 0x0054 Memory Status Bitmask 1
7.2.16. Offset 0x0058 Memory Ready Status 0
7.2.17. Offset 0x005C Memory Ready Status 1
7.2.18. Offset 0x0060 Memory Error Status 0
7.2.19. Offset 0x0064 Memory Error Status 1
7.3.2.1. Version
7.3.2.2. Feature List
7.3.2.3. Interface Attribute Parameters
7.3.2.4. Interface Attribute Parameters 1
7.3.2.5. Scratch Pad
7.3.2.6. General Control (GEN_CTRL)
7.3.2.7. Management Control (MGMT_CTRL)
7.3.2.8. Hash function_0 seed
7.3.2.9. Hash function_1 seed
7.3.2.10. Hash function_2 seed
7.3.2.11. Warning 0 (WARNING_0)
7.3.2.12. Fatal Error (FATAL_ERROR_0)
7.3.2.13. Monitor 0 (MON_)
7.3.2.14. Total Entries (TOTAL_ENTRIES)
7.3.2.15. Max. Rehouse Iterations (Max_Rehouse_Iterations)
7.3.2.16. Statistics Control (STATS_CTRL)
7.3.2.17. Active Table Entries (TABLE_ENTRIES)
7.3.2.18. Key_N
7.3.2.19. Result_N
7.5.1. General MBL Registers
7.5.2. Version
7.5.3. Mbl_scratch
7.5.4. Mbl_gen_ctrl
7.5.5. Mbl_mgmt_ctrl
7.5.6. Mbl_key_handle
7.5.7. Mbl_nxt_handle_req
7.5.8. Mbl_nxt_handle
7.5.9. Mbl_warning_0
7.5.10. Mbl_fatal_0
7.5.11. Mbl_mon_0
7.5.12. Mbl_total_entries
7.5.13. Mbl_total_rehashes
7.5.14. Mbl_max_used_bins
7.5.15. Mbl_stats_ctrl
7.5.16. Mbl_stats_result
7.5.17. Mbl_max_lkup_latency
7.5.18. Mbl_max_rehash_index
7.5.19. Mbl_key
7.5.20. Mbl_res
8.2.5.1. Parameterizing the External Memory Interface (EMIF) IP
8.2.5.2. Parameterizing the Memory-Specific Adapter
8.2.5.3. Parameterizing the Content-Addressable Memory (CAM) IP
8.2.5.4. Parameterizing the External Memory Interfaces Intel Calibration IP
8.2.5.5. Saving the IPs Within the Memory Subsystem
8.2.5.6. Propagation of Changes Across IPs within the Memory Subsystem IP
Visible to Intel only — GUID: woo1681775327409
Ixiasoft
7.5.5. Mbl_mgmt_ctrl
Byteoffset: 0x0020
Word offset: 0x0008
Management control register.
Bits | Access Type | Default | Description |
---|---|---|---|
31 | R | 0 | Busy Indicates whether the MBL management is busy executing a command (1) or ready to accept the next command (0). |
30:27 | R | 0 | err_code Error code, valid when command execution has completed and was unsuccessful. <table> shows possible values and their description. |
26 | 0 | Reserved. | |
25:24 | R | 0 | info_code Info/warning code, valid when command execution has completed. <table> shows possible values and their description. |
23:20 | 0 | Reserved. | |
19:16 | R/W | 0 | tab logical table for which the command is destined. “Don’t care” for MBL_FLUSH command. Note: if the value is greater than the number of logical tables supported in the current hardware configuration, then the value entered to the ‘tab’ field will be truncated in hardware e.g. entering 8 in the ‘tab’ field when the hardware is configured to support 4 logical tables will result in value 0 being actually used by the hardware. |
15:9 | 0 | Reserved. | |
8 | R | 0 | Success indicates whether a command has completed successfully (1). In MBL_SEARCH and MBL_SEARCH_HANDLE this bit indicates a match on the key that was looked up. |
7:4 | 0 | Reserved. | |
3:0 | R/W | 0 | reg_type management request type, <table> shows possible values and their description. |
Code | Name | Description |
---|---|---|
0 | MBL_FLUSH | Flush the table, removing all entries from all logical tables. |
1 | MBL_INSERT | Insert an entry into the table. |
2 | MBL_DELETE_KEY | Delete an entry from the table, using a key to find the entry. |
3 | MBL_SEARCH_KEY | Search for an entry in the table, using a key to find the entry. |
4 | MBL_MODIFY_KEY | Modify result field of an entry, using a key to find the entry. |
5 | MBL_MODIFY_HANDLE | Modify result field of an entry, using a handle to find the entry. |
6 | MBL_DELETE_HAND | Delete an entry from the table, using a handle to find the entry. |
7 | MBL_SEARCH_HANDLE | Search for an entry in the table, using a handle to find the entry. |
8 | MBL_INSERT_MODIFY | Modify the result of an existing entry or insert a new entry. |
9 | MBL_GET_HANDLE | Get next free handle.
Note: MBL_GET_HANDLE is valid only when MBL_GEN_CTRL->ptr_mode = 1. In other modes calling this command will return MGMT_ERR_INVALID_OPCODE.
|
Code | Name | Description |
---|---|---|
0 | MGMT_ERR_NONE | No error. |
1 | MGMT_ERR_INSERT_ROW_FULL | Insert failed due to no free bins in a row. |
2 | MGMT_ERR_INSERT_REHASH_FAIL | Insert failed due to a signature clash, unresolved by re-hashing. |
3 | MGMT_ERR_INSERT_KEY_EXISTS | Key already present in the selected logical table. |
4 | MGMT_ERR_PTR_MGMT | Pointer management error (fatal). |
5 | MGMT_ERR_INSERT_TABLE_FULL | Insert failed - selected logical table full. |
6 | MGMT_ERR_KEY_NOT_EXIST | Delete/modify failed - key does not exist. Note: does not apply to MBL_SEARCH_KEY and MBL_SEARCH_HANDLE. |
7 | MGMT_ERR_INVALID_OPCODE | Invalid opcode used in req_type. |
8 | MGMT_ERR_HASH_CHECKSUM | Checksum error in Hash Table entry. |
9 | MGMT_ERR_KEY_CHECKSUM | Checksum error in Key Table entry. |
A | MGMT_ERR_NO_FREE_PTR | No free pointers available. |
Code | Name | Description |
---|---|---|
0 | MGMT_INFO_NONE | No additional information. |
1 | MGMT_INFO_INSERT_KEY_EXISTS | MBL_INSERT_MODIFY command only: key exists, result has been modified. |