[Doc] Add a draft documentation about the bitstream setting

This commit is contained in:
tangxifan 2021-02-01 22:33:17 -07:00
parent 0c409b5bcc
commit d83158654c
3 changed files with 56 additions and 0 deletions

View File

@ -0,0 +1,27 @@
.. _file_formats_bitstream_setting:
Bitstream Setting (.xml)
------------------------
An example of bitstream settings is shown as follows.
This can define a hard-coded bitstream for a reconfigurable resource in FPGA fabrics.
.. code-block:: xml
<openfpga_bitstream_setting>
<pb_type name="<string>" source="eblif" content=".param LUT"/>
</openfpga_bitstream_setting>
.. option:: pb_type="<string>"
The ``pb_type`` name to be constrained, which should be the full path of a ``pb_type`` consistent with VPR's architecture description. For example, ``pb_type="clb.fle[arithmetic].soft_adder.adder_lut4"``
.. option:: source="<string>"
The source of the ``pb_type`` bitstream, which could be from a ``.eblif`` file. For example, ``source="eblif"``.
.. option:: content="<string>"
The content of the ``pb_type`` bitstream, which could be a keyword in a ``.eblif`` file. For example, ``content=".attr LUT"`` means that the bitstream will be extracted from the ``.attr LUT`` line which is defined under the ``.blif model`` (that is defined under the ``pb_type`` in VPR architecture file).
.. warning:: Bitstream is a feature for power-users. It may cause wrong bitstream to be generated. For example, the hard-coded bitstream is not compatible with LUTs whose nets may be swapped during routing stage (cause a change on the truth table as well as bitstream). It is users's responsibility to ensure correct bitstream.

View File

@ -18,4 +18,6 @@ OpenFPGA widely uses XML format for interchangable files
fabric_bitstream
bitstream_setting
fabric_key

View File

@ -56,6 +56,33 @@ write_openfpga_simulation_setting
Show verbose log
read_openfpga_bitstream_setting
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Read the XML file about bitstream settings (see details in :ref:`file_formats_bitstream_setting`)
.. option:: --file <string> or -f <string>
Specify the file name. For example, ``--file bitstream_setting.xml``
.. option:: --verbose
Show verbose log
write_openfpga_bitstream_setting
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Write the OpenFPGA XML bitstream settings to a file
.. option:: --file <string> or -f <string>
Specify the file name. For example, ``--file auto_bitstream_setting_echo.xml``.
See details about file format at :ref:`file_formats_bitstream_setting`.
.. option:: --verbose
Show verbose log
link_openfpga_arch
~~~~~~~~~~~~~~~~~~