Fix doc typos
This commit is contained in:
@@ -2,7 +2,7 @@ Exporter API
|
|||||||
============
|
============
|
||||||
|
|
||||||
If you are not using the `PeakRDL command-line tool <https://peakrdl.readthedocs.io>`_,
|
If you are not using the `PeakRDL command-line tool <https://peakrdl.readthedocs.io>`_,
|
||||||
you can still generate regblocks programmaticaly using the exporter API:
|
you can still generate regblocks programmatically using the exporter API:
|
||||||
|
|
||||||
.. autoclass:: peakrdl_regblock.RegblockExporter
|
.. autoclass:: peakrdl_regblock.RegblockExporter
|
||||||
:members:
|
:members:
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Configuring PeakRDL-regblock
|
|||||||
|
|
||||||
If using the `PeakRDL command line tool <https://peakrdl.readthedocs.io/>`_,
|
If using the `PeakRDL command line tool <https://peakrdl.readthedocs.io/>`_,
|
||||||
some aspects of the ``regblock`` command have additional configuration options
|
some aspects of the ``regblock`` command have additional configuration options
|
||||||
avaiable via the PeakRDL TOML file.
|
available via the PeakRDL TOML file.
|
||||||
|
|
||||||
All regblock-specific options are defined under the ``[regblock]`` TOML heading.
|
All regblock-specific options are defined under the ``[regblock]`` TOML heading.
|
||||||
|
|
||||||
|
|||||||
@@ -92,33 +92,22 @@ The easiest way to add your cpuif is via the TOML config file. See the
|
|||||||
|
|
||||||
Via a package's entry point definition
|
Via a package's entry point definition
|
||||||
--------------------------------------
|
--------------------------------------
|
||||||
If you are publishing a collecxtion of PeakRDL plugins as an installable Python
|
If you are publishing a collection of PeakRDL plugins as an installable Python
|
||||||
package, you can advertise them to PeakRDL using an entry point.
|
package, you can advertise them to PeakRDL using an entry point.
|
||||||
This advertises your custom CPUIF class to the PeakRDL-regblock tool as a plugin
|
This advertises your custom CPUIF class to the PeakRDL-regblock tool as a plugin
|
||||||
that should be loaded, and made available as a command-line option in PeakRDL.
|
that should be loaded, and made available as a command-line option in PeakRDL.
|
||||||
|
|
||||||
.. code-block:: python
|
.. code-block:: toml
|
||||||
:emphasize-lines: 7-11
|
|
||||||
|
|
||||||
import setuptools
|
[project.entry-points."peakrdl_regblock.cpuif"]
|
||||||
|
my-cpuif = "my_package.my_module:MyCPUIF"
|
||||||
setuptools.setup(
|
|
||||||
name="my_package",
|
|
||||||
packages=["my_package"],
|
|
||||||
# ...
|
|
||||||
entry_points = {
|
|
||||||
"peakrdl_regblock.cpuif": [
|
|
||||||
'my-cpuif = my_package.__peakrdl_regblock__:MyCPUIF'
|
|
||||||
]
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
* ``my_package``: The name of your installable Python module
|
* ``my_package``: The name of your installable Python module
|
||||||
* ``peakrdl-regblock.cpuif``: This is the namespace that PeakRDL-regblock will
|
* ``peakrdl-regblock.cpuif``: This is the namespace that PeakRDL-regblock will
|
||||||
search. Any cpuif plugins you create must be enclosed in this namespace in
|
search. Any cpuif plugins you create must be enclosed in this namespace in
|
||||||
order to be discovered.
|
order to be discovered.
|
||||||
* ``my_package.__peakrdl_regblock__:MyCPUIF``: This is the import path that
|
* ``my_package.my_module:MyCPUIF``: This is the import path that
|
||||||
points to your CPUIF class definition.
|
points to your CPUIF class definition.
|
||||||
* ``my-cpuif``: The lefthand side of the assignment is your cpuif's name. This
|
* ``my-cpuif``: The lefthand side of the assignment is your cpuif's name. This
|
||||||
text is what the end-user uses in the command line interface to select your
|
text is what the end-user uses in the command line interface to select your
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ Bus Width
|
|||||||
^^^^^^^^^
|
^^^^^^^^^
|
||||||
The CPU interface bus width is automatically determined from the contents of the
|
The CPU interface bus width is automatically determined from the contents of the
|
||||||
design being exported. The bus width is equal to the widest ``accesswidth``
|
design being exported. The bus width is equal to the widest ``accesswidth``
|
||||||
encountered in the deisgn.
|
encountered in the design.
|
||||||
|
|
||||||
|
|
||||||
Addressing
|
Addressing
|
||||||
|
|||||||
@@ -108,7 +108,7 @@ Atomic Group of Registers
|
|||||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
Perhaps you have a group of registers that monitor some rapidly-changing state
|
Perhaps you have a group of registers that monitor some rapidly-changing state
|
||||||
within your design. Using the ``rbuffer_trigger`` property, you can define which
|
within your design. Using the ``rbuffer_trigger`` property, you can define which
|
||||||
reagister read operation triggers the buffered registers' values to be latched.
|
register read operation triggers the buffered registers' values to be latched.
|
||||||
|
|
||||||
.. code-block:: systemrdl
|
.. code-block:: systemrdl
|
||||||
:emphasize-lines: 11-14
|
:emphasize-lines: 11-14
|
||||||
|
|||||||
@@ -49,6 +49,8 @@ def ref_is_internal(top_node: AddrmapNode, ref: Union[Node, PropertyReference])
|
|||||||
current_node = ref
|
current_node = ref
|
||||||
elif isinstance(ref, PropertyReference):
|
elif isinstance(ref, PropertyReference):
|
||||||
current_node = ref.node
|
current_node = ref.node
|
||||||
|
else:
|
||||||
|
raise RuntimeError
|
||||||
|
|
||||||
while current_node is not None:
|
while current_node is not None:
|
||||||
if current_node == top_node:
|
if current_node == top_node:
|
||||||
@@ -63,7 +65,7 @@ def ref_is_internal(top_node: AddrmapNode, ref: Union[Node, PropertyReference])
|
|||||||
current_node = current_node.parent
|
current_node = current_node.parent
|
||||||
|
|
||||||
# A root signal was referenced, which dodged the top addrmap
|
# A root signal was referenced, which dodged the top addrmap
|
||||||
# This is considerd internal for this exporter
|
# This is considered internal for this exporter
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ commands to be visible via the PATH environment variable.
|
|||||||
*Questa - Intel FPGA Starter Edition* can be downloaded for free from Intel:
|
*Questa - Intel FPGA Starter Edition* can be downloaded for free from Intel:
|
||||||
* Go to https://www.intel.com/content/www/us/en/collections/products/fpga/software/downloads.html?edition=pro&q=questa&s=Relevancy
|
* Go to https://www.intel.com/content/www/us/en/collections/products/fpga/software/downloads.html?edition=pro&q=questa&s=Relevancy
|
||||||
* Select latest version of Questa
|
* Select latest version of Questa
|
||||||
* Download Questa files. (Don't forget part 2!)
|
* Download Questa files.
|
||||||
* Install
|
* Install
|
||||||
* Be sure to choose "Starter Edition" for the free version.
|
* Be sure to choose "Starter Edition" for the free version.
|
||||||
* Create an account on https://licensing.intel.com
|
* Create an account on https://licensing.intel.com
|
||||||
|
|||||||
Reference in New Issue
Block a user