Move documentation of additional system tasks from quirks to extensions.
This commit is contained in:
parent
fa5fc0eca0
commit
1be953cfa6
|
|
@ -10,6 +10,52 @@ behavior of Icarus Verilog, made available as a tool debugging aid.
|
|||
Built-in System Functions
|
||||
-------------------------
|
||||
|
||||
System Tasks
|
||||
------------
|
||||
|
||||
These are system tasks that are unique to Icarus Verilog. Don't use any of
|
||||
these if you want to keep your code portable across other Verilog compilers.
|
||||
|
||||
``$readmempath``
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
The ``$readmemb`` and ``$readmemh`` system tasks read text files that contain
|
||||
data values to populate memories. Normally, those files are found in a current
|
||||
working directory. The ``$readmempath()`` system task can be used to create a
|
||||
search path for those files. For example:
|
||||
|
||||
.. code-block:: verilog
|
||||
|
||||
reg [7:0] mem [0:7];
|
||||
initial begin
|
||||
$readmemh("datafile.txt", mem);
|
||||
end
|
||||
|
||||
This assumes that "datafile.txt" is in the current working directory where
|
||||
the ``vvp`` command is running. But with the ``$readmempath``, one can specify
|
||||
a search path:
|
||||
|
||||
.. code-block:: verilog
|
||||
|
||||
reg [7:0] mem [0:7];
|
||||
initial begin
|
||||
$readmempath(".:alternative:/global/defaults");
|
||||
$readmemh("datafile.txt", mem);
|
||||
end
|
||||
|
||||
In this example, "datafile.txt" is searched for in each of the directories
|
||||
in the above list (separated by ":" characters). The first located instance
|
||||
is the one that is used. So for example, if "./datafile.txt" exists, then it
|
||||
is read instead of "/global/defaults/datafile.txt" even if the latter exists.
|
||||
|
||||
``$finish_and_return(code)``
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This task operates the same as the ``$finish`` system task, but adds the
|
||||
feature of specifying an exit code for the interpreter. This can be useful in
|
||||
automated test environments to indicate whether the simulation finished with
|
||||
or without errors.
|
||||
|
||||
Extended Verilog Data Types
|
||||
---------------------------
|
||||
|
||||
|
|
|
|||
|
|
@ -9,52 +9,6 @@ standard, or from other implementations.
|
|||
This is NOT AN EXHAUSTIVE LIST. If something is missing from this list, let us
|
||||
know and we can add documentation.
|
||||
|
||||
System Tasks - Unique to Icarus Verilog
|
||||
---------------------------------------
|
||||
|
||||
These are system tasks that are unique to Icarus Verilog. Don't use any of
|
||||
these if you want to keep your code portable across other Verilog compilers.
|
||||
|
||||
``$readmempath``
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
The ``$readmemb`` and ``$readmemh`` system tasks read text files that contain
|
||||
data values to populate memories. Normally, those files are found in a current
|
||||
working directory. The ``$readmempath()`` system task can be used to create a
|
||||
search path for those files. For example:
|
||||
|
||||
.. code-block:: verilog
|
||||
|
||||
reg [7:0] mem [0:7];
|
||||
initial begin
|
||||
$readmemh("datafile.txt", mem);
|
||||
end
|
||||
|
||||
This assumes that "datafile.txt" is in the current working directory where
|
||||
the ``vvp`` command is running. But with the ``$readmempath``, one can specify
|
||||
a search path:
|
||||
|
||||
.. code-block:: verilog
|
||||
|
||||
reg [7:0] mem [0:7];
|
||||
initial begin
|
||||
$readmempath(".:alternative:/global/defaults");
|
||||
$readmemh("datafile.txt", mem);
|
||||
end
|
||||
|
||||
In this example, "datafile.txt" is searched for in each of the directories
|
||||
in the above list (separated by ":" characters). The first located instance
|
||||
is the one that is used. So for example, if "./datafile.txt" exists, then it
|
||||
is read instead of "/global/defaults/datafile.txt" even if the latter exists.
|
||||
|
||||
``$finish_and_return(code)``
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This task operates the same as the ``$finish`` system task, but adds the
|
||||
feature of specifying an exit code for the interpreter. This can be useful in
|
||||
automated test environments to indicate whether the simulation finished with
|
||||
or without errors.
|
||||
|
||||
Unsized Numeric Constants are Not Limited to 32 Bits
|
||||
----------------------------------------------------
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue