For example, a bitstream for 1 configuration regions:
..code-block:: xml
0
1
0
0
For example, a bitstream for 4 configuration regions:
..code-block:: xml
0000
1010
0110
0120
..note:: When there are multiple configuration regions, each line may consist of multiple bits. For example, ``0110`` represents the bits for 4 configuration regions, where the 4 digits correspond to the bits from region ``0, 1, 2, 3`` respectively.
..note:: When there are multiple configuration regions, each ``<bit_value>`` may consist of multiple bits. For example, ``0110`` represents the bits for 4 configuration regions, where the 4 digits correspond to the bits from region ``0, 1, 2, 3`` respectively.
..note:: When there are multiple configuration regions, each ``<bit_value>`` may consist of multiple bits. For example, ``0110`` represents the bits for 4 configuration regions, where the 4 digits correspond to the bits from region ``0, 1, 2, 3`` respectively.
..option:: ql_memory_bank using flatten BL and WLs
Multiple lines will be included, each of which is organized as <bl_data><wl_data>.
The size of data are shown as a comment in the bitstream file, which eases the development of bitstream downloader.
The bitstream data are organized by words. Each word consists of two parts, BL data to be loaded to BL shift register chains and WL data to be loaded to WL shift register chains
For example
..code-block:: xml
// Word 0
// BL Part
<bitline_shift_register_data@clock_0> ----
<bitline_shift_register_data@clock_1> ^
<bitline_shift_register_data@clock_1> |
... BL word size
<bitline_shift_register_data@clock_n-2> |
<bitline_shift_register_data@clock_n-1> v
<bitline_shift_register_data@clock_n> ----
// Word 0
// WL Part
<wordline_shift_register_data@clock_0> ----
<wordline_shift_register_data@clock_1> ^
<wordline_shift_register_data@clock_1> |
... WL word size
<wordline_shift_register_data@clock_n-2> |
<wordline_shift_register_data@clock_n-1> v
<wordline_shift_register_data@clock_n> ----
// Word 1
// BL Part
<bitline_shift_register_data@clock_0> ----
<bitline_shift_register_data@clock_1> ^
<bitline_shift_register_data@clock_1> |
... BL word size
<bitline_shift_register_data@clock_n-2> |
<bitline_shift_register_data@clock_n-1> v
<bitline_shift_register_data@clock_n> ----
// Word 1
// WL Part
<wordline_shift_register_data@clock_0> ----
<wordline_shift_register_data@clock_1> ^
<wordline_shift_register_data@clock_1> |
... WL word size
<wordline_shift_register_data@clock_n-2> |
<wordline_shift_register_data@clock_n-1> v
<wordline_shift_register_data@clock_n> ----
... // More words
..note:: The BL/WL data may be multi-bit, while each bit corresponds to a configuration region
..note:: When there are multiple configuration regions, each ``<bit_value>`` may consist of multiple bits. For example, ``0110`` represents the bits for 4 configuration regions, where the 4 digits correspond to the bits from region ``0, 1, 2, 3`` respectively.