Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

User Manual updates #844

Merged
merged 6 commits into from
Aug 4, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 32 additions & 30 deletions docs/source/control_status_registers.rst
Original file line number Diff line number Diff line change
Expand Up @@ -375,7 +375,7 @@ Detailed:
+=============+===========+===========================================+
| 31:2 | URO | Start Address of the HWLoop 0/1. |
+-------------+-----------+-------------------------------------------+
| 1:0 | URO | Hardwired to 0. |
| 1:0 | URO | 0 |
+-------------+-----------+-------------------------------------------+

HWLoop End Address 0/1 (``lpend0/1``)
Expand All @@ -396,7 +396,7 @@ Detailed:
+=============+===========+===========================================+
| 31:2 | URO | End Address of the HWLoop 0/1. |
+-------------+-----------+-------------------------------------------+
| 1:0 | URO | Hardwired to 0. |
| 1:0 | URO | 0 |
+-------------+-----------+-------------------------------------------+

HWLoop Count Address 0/1 (``lpcount0/1``)
Expand Down Expand Up @@ -441,9 +441,9 @@ Detailed:
| | | |
| | | SD set to 1 if **FS** = 11 meaning Floating point State is dirty so save/restore is needed in case of context switch. |
| | | |
| | | Hardwired to 0 if ``FPU`` = 0 or (``FPU`` = 1 and ``ZFINX`` = 1). |
| | | 0 if ``FPU`` = 0 or (``FPU`` = 1 and ``ZFINX`` = 1). |
+-------------+-----------+-------------------------------------------------------------------------------------------------------------------------+
| 30:15 | RO | Unimplemented, hardwired to 0. |
| 30:15 | RO | 0, Unimplemented. |
+-------------+-----------+-------------------------------------------------------------------------------------------------------------------------+
| 14:13 | RW | **FS:** Floating point State |
| | | |
Expand All @@ -455,27 +455,27 @@ Detailed:
| | | |
| | | 11 = Dirty |
| | | |
| | | Hardwired to 0 if ``FPU`` = 0 or (``FPU`` = 1 and ``ZFINX`` = 1). |
| | | 0 if ``FPU`` = 0 or (``FPU`` = 1 and ``ZFINX`` = 1). |
+-------------+-----------+-------------------------------------------------------------------------------------------------------------------------+
| 12:11 | RO | **MPP:** Machine Previous Priviledge mode |
| | | |
| | | Hardwired to 11 when the user mode is not enabled. |
| | | 11 when the user mode is not enabled. |
+-------------+-----------+-------------------------------------------------------------------------------------------------------------------------+
| 10:8 | RO | Unimplemented, hardwired to 0. |
| 10:8 | RO | 0, Unimplemented. |
+-------------+-----------+-------------------------------------------------------------------------------------------------------------------------+
| 7 | RO | **MPIE:** Machine Previous Interrupt Enable |
| | | |
| | | When an exception is encountered, MPIE will be set to MIE. |
| | | When the mret instruction is executed, the value of MPIE will be stored to MIE. |
+-------------+-----------+-------------------------------------------------------------------------------------------------------------------------+
| 6:4 | RO | Unimplemented, hardwired to 0. |
| 6:4 | RO | 0, Unimplemented. |
+-------------+-----------+-------------------------------------------------------------------------------------------------------------------------+
| 3 | RW | **MIE:** Machine Interrupt Enable |
| | | |
| | | If you want to enable interrupt handling in your exception handler, |
| | | set the Interrupt Enable MIE to 1 inside your handler code. |
+-------------+-----------+-------------------------------------------------------------------------------------------------------------------------+
| 2:0 | RO | Unimplemented, hardwired to 0. |
| 2:0 | RO | 0, Unimplemented. |
+-------------+-----------+-------------------------------------------------------------------------------------------------------------------------+

.. only:: USER
Expand Down Expand Up @@ -519,25 +519,25 @@ Detailed:
| | | |
| | | Set bit x to enable interrupt irq_i[x] (x between 16 and 31). |
+-------------+-----------+------------------------------------------------------------------------------------------+
| 15:12 | RO | Hardwired to 0. |
| 15:12 | RO | 0 |
+-------------+-----------+------------------------------------------------------------------------------------------+
| 11 | RW | **MEIE:** Machine External Interrupt Enable |
| | | |
| | | If set, irq_i[11] is enabled. |
+-------------+-----------+------------------------------------------------------------------------------------------+
| 10:8 | RO | Hardwired to 0. |
| 10:8 | RO | 0 |
+-------------+-----------+------------------------------------------------------------------------------------------+
| 7 | RW | **MTIE:** Machine Timer Interrupt Enable |
| | | |
| | | If set, irq_i[7] is enabled. |
+-------------+-----------+------------------------------------------------------------------------------------------+
| 6:4 | RO | Hardwired to 0. |
| 6:4 | RO | 0 |
+-------------+-----------+------------------------------------------------------------------------------------------+
| 3 | RW | **MSIE:** Machine Software Interrupt Enable |
| | | |
| | | If set, irq_i[3] is enabled. |
+-------------+-----------+------------------------------------------------------------------------------------------+
| 2:0 | RO | Hardwired to 0. |
| 2:0 | RO | 0 |
+-------------+-----------+------------------------------------------------------------------------------------------+

.. _csr-mtvec:
Expand Down Expand Up @@ -695,25 +695,25 @@ Detailed:
| | | |
| | | If bit x is set, interrupt irq_i[x] is pending (x between 16 and 31). |
+-------------+-----------+---------------------------------------------------------------------------------------------------+
| 15:12 | RO | Hardwired to 0. |
| 15:12 | RO | 0 |
+-------------+-----------+---------------------------------------------------------------------------------------------------+
| 11 | RO | **MEIP:** Machine External Interrupt Pending |
| | | |
| | | If set, irq_i[11] is pending. |
+-------------+-----------+---------------------------------------------------------------------------------------------------+
| 10:8 | RO | Hardwired to 0. |
| 10:8 | RO | 0 |
+-------------+-----------+---------------------------------------------------------------------------------------------------+
| 7 | RO | **MTIP:** Machine Timer Interrupt Pending |
| | | |
| | | If set, irq_i[7] is pending. |
+-------------+-----------+---------------------------------------------------------------------------------------------------+
| 6:4 | RO | Hardwired to 0. |
| 6:4 | RO | 0 |
+-------------+-----------+---------------------------------------------------------------------------------------------------+
| 3 | RO | **MSIP:** Machine Software Interrupt Pending |
| | | |
| | | If set, irq_i[3] is pending. |
+-------------+-----------+---------------------------------------------------------------------------------------------------+
| 2:0 | RO | Hardwired to 0. |
| 2:0 | RO | 0 |
+-------------+-----------+---------------------------------------------------------------------------------------------------+

Trigger CSRs
Expand Down Expand Up @@ -1504,19 +1504,21 @@ Machine Implementation ID (``mimpid``)

CSR Address: 0xF13

Reset Value: 0x0000_0000
Reset Value: Defined

Detailed:

.. table::
:widths: 15 15 70
:class: no-scrollbar-table

+-------------+-----------+------------------------------------------------------------------------+
| **Bit #** | **Mode** | **Description** |
+=============+===========+========================================================================+
| 31:0 | RO | 0 |
+-------------+-----------+------------------------------------------------------------------------+
+-------------+-----------+-------------------------------------------------------------------------+
| **Bit #** | **Mode** | **Description** |
+=============+===========+=========================================================================+
| 31 : 1 | RO | 0 |
+-------------+-----------+-------------------------------------------------------------------------+
| 0 | RO | 1 if ``FPU`` = 1 or ``COREV_PULP`` = 1 or ``COREV_CLUSTER`` = 1 else 0. |
+-------------+-----------+-------------------------------------------------------------------------+

.. _csr-mhartid:

Expand Down Expand Up @@ -1714,10 +1716,10 @@ Reset Value: Defined
:widths: 15 15 70
:class: no-scrollbar-table

+-------------+-----------+----------------------------------------------------------------+
| **Bit #** | **Mode** | **Description** |
+=============+===========+================================================================+
| 31:1 | RO | Hardwired to 0. |
+-------------+-----------+----------------------------------------------------------------+
| 0 | RO | 1 if ``FPU`` = 1 and ``ZFINX`` = 1 else 0. |
+-------------+-----------+----------------------------------------------------------------+
+-------------+-----------+---------------------------------------------------+
| **Bit #** | **Mode** | **Description** |
+=============+===========+===================================================+
| 31:1 | RO | 0 |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why the mhartid depends on the FPU?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not mhartid (line 1523) you see but Zfinx (line 1706) as you didn't expand 1522-1714 on the left side ...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ops sorry :D

+-------------+-----------+---------------------------------------------------+
| 0 | RO | 1 if ``FPU`` = 1 and ``ZFINX`` = 1 else 0. |
+-------------+-----------+---------------------------------------------------+
9 changes: 3 additions & 6 deletions docs/source/core_versions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -129,8 +129,8 @@ It refers to the CV32E40P core verified with the following parameters:
+---------------------------+-------+
| ``PULP_CLUSTER`` | 0 |
+---------------------------+-------+
| ``NUM_MHPMCOUNTERS`` | 1 |
+---------------------------+-------+

Verification of cv32e40p_v1.0.0 has been done with only following value for ``NUM_MHPMCOUNTERS`` parameter: ``NUM_MHPMCOUNTERS`` == 1.

The list of open (waived) issues at the time of applying the cv32e40p_v1.0.0 tag can be found at:

Expand Down Expand Up @@ -165,16 +165,13 @@ When parameters are set with the exact same values than for cv32e40p_v1.0.0 rele
+---------------------------+-------+
| ``COREV_CLUSTER`` | 0 |
+---------------------------+-------+
| ``NUM_MHPMCOUNTERS`` | 1 |
+---------------------------+-------+

mimpid = 1
~~~~~~~~~~

When one parameter is set with a different value than for cv32e40p_v1.0.0 release then ``mimpid`` value is equal to ``1``.

This means either ``FPU``, ``ZFINX``, ``COREV_PULP`` or ``COREV_CLUSTER`` is set to 1.
Or ``NUM_MHPMCOUNTERS`` is set to a value greater than 1.
This means either ``FPU``, ``COREV_PULP`` or ``COREV_CLUSTER`` is set to 1.

.. The list of open (waived) issues at the time of applying the cv32e40p_v1.0.0 tag can be found at:

Expand Down
Loading
Loading