diff --git a/docs/source/manual/file_formats/fabric_key.rst b/docs/source/manual/file_formats/fabric_key.rst
index f87cf1b2e..185e1b40a 100644
--- a/docs/source/manual/file_formats/fabric_key.rst
+++ b/docs/source/manual/file_formats/fabric_key.rst
@@ -62,6 +62,14 @@ Each configurable block is defined as a key. There are two ways to define a key,
- ``alias`` indicates the instance name of the configurable memory block in the top-level FPGA fabric. If a valid alias is specified, the ``name`` and ``value`` are not required.
+ - ``column`` indicates the relative x coordinate for a configurable memory in a configurable region at the top-level FPGA fabric. This is required when the memory bank protocol is selection.
+
+ .. note:: The configurable memory blocks in the same column will share the same Bit Line (BL) bus
+
+ - ``row`` indicates the relative y coordinate for a configurable memory in a configurable region at the top-level FPGA fabric. This is required when the memory bank protocol is selection.
+
+ .. note:: The configurable memory blocks in the same row will share the same Word Line (WL) bus
+
.. warning:: For fast loading of fabric key, strongly recommend to use pairs ``name`` and ``alias`` or ``name`` and ``value`` in the fabric key file. Using only ``alias`` may cause long parsing time for fabric key.
The following is an example of a fabric key generate by OpenFPGA for a 2 :math:`\times` 2 FPGA.
@@ -149,3 +157,46 @@ This key contains only ``name`` and ``value`` which is fast to parse.
+
+The following shows another example of a fabric key generate by OpenFPGA for a 2 :math:`\times` 2 FPGA using memory bank.
+This key contains only ``name``, ``value``, ``row`` and ``column``.
+
+.. code-block:: xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+