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

doc: update document for nuclei studio 2024.12 #16

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open
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
Binary file modified source/asserts/nucleistudio/advanceusage/image72.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified source/asserts/nucleistudio/advanceusage/image73.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified source/asserts/nucleistudio/advanceusage/image74.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified source/asserts/nucleistudio/advanceusage/image75.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified source/asserts/nucleistudio/advanceusage/image76.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified source/asserts/nucleistudio/advanceusage/image81.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
408 changes: 360 additions & 48 deletions source/ide/advanceusage.rst

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions source/ide/faq.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
.. _faq:

常见问题
========
Nuclei Studio 常见问题
======================

Nuclei Studio启动慢
-------------------
Expand Down Expand Up @@ -270,8 +270,8 @@ Debug时报错Error: Couldn't find an available hardware trigger.

这种情况下需要将程序编译到RAM上才可以支持IDE上进行调试(软件断点),如果需要调试则暂时只能通过命令行的方式进行调试。

其他未注明或者遇到的版本问题
============================
其他未注明版本问题
==================

如本文档中有疏漏的地方,请关注 `https://www.rvmcu.com/NucleiStudio-faq.html <https://www.rvmcu.com/nucleistudio-faq.html>`__
这里将列出不同版本后续遇到的常见问题。
Expand Down
66 changes: 66 additions & 0 deletions source/ide/intro.rst
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,72 @@ Nuclei Studio IDE充分利用上述Eclipse IDE优势,结合社区成熟的Ecli
Nuclei Studio 更新说明
=======================

2024.12版更新说明
-----------------

2024.12版本是基于eclipse Cpp 2024-12开发,CDT版本到Eclipse CDT 2024-09(2024-12版本暂末发布),升级了芯来科技的工具版本至2024.12,优化了部分原有功能,新增了调试及代码性能分析等功能,以及解决了2024.06版中存在的缺陷。

升级Eclipse Cpp版本
~~~~~~~~~~~~~~~~~~~

在Nuclei Studio 2024.12基于Eclipse Cpp 2024-12版本开发此版本。基础的CDT版本,升级到了11.6.1。

升级RISC-V Toolchain、OpenOCD、QEMU版本
Copy link
Member

Choose a reason for hiding this comment

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

Nuclei Near Cycle Model版本也升级了,但是这个没有Release Note的链接。就主要是全面支持 Nuclei CPU 200,300,600,900,1000系列的CPU,同时支持Windows和Linux版本。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

在Nuclei Studio 2024.12版本中集成了Nuclei RISC-V Toolchain 2024.12版,具体信息可以查看:https://github.com/riscv-mcu/riscv-gnu-toolchain/releases/tag/nuclei-2024.12 。

在Nuclei Studio 2024.12版本中集成了OpenOCD 2024.012版,具体信息可以查看:https://github.com/riscv-mcu/riscv-openocd/releases/tag/nuclei-2024.12 。

在Nuclei Studio 2024.12版本中集成了Nuclei Qemu 2024.12版,具体信息可以查看:https://github.com/riscv-mcu/qemu/releases/tag/nuclei-2024.12 。

新增对更多新核的支持
~~~~~~~~~~~~~~~~~~~~

增加了对N200E、N202、N202E、NX1000、NX1000F、NX1000FD、UX1000、UX1000F CPU的核配套支持。

新增Flash Programming功能
~~~~~~~~~~~~~~~~~~~~~~~~~~~

为了满足用户将编译好的二进制文件直接下载到硬件开发板的需求,Nuclei Studio 新增了 Flash Programming 功能。该功能允许用户快速、便捷地将编译好的二进制文件直接下载到硬件开发板中,极大提升了开发和调试的效率。

具体参见 :ref:`Flash Programming功能 <ide_flash_programming>` 。

新增了Nuclei NICE Wizard
~~~~~~~~~~~~~~~~~~~~~~~~~

Nuclei NICE Wizard 是一个集成在 Nuclei Studio 上的工具,旨在简化和加速 NICE (自定义指令扩展) 和 VNICE (向量化自定义指令扩展) 指令的创建过程。

具体参见 :ref:`Nuclei NICE Wizard <ide_nuclei_nice_wizard>` 。

新增Nuclei Model功能的使用
~~~~~~~~~~~~~~~~~~~~~~~~~~

Nuclei Model是芯来科技为 Nuclei Near Cycle Model 开发了专门的运行工具,为了提供更简洁高效的用户体验,在 RVProf 的基础上进行了功能简化,推出了新的 Model 工具。

具体参见 :ref:`Nuclei Model <ide_nuclei_model>` 。


升级Nuclei Near Cycle Model版本
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Nuclei Near Cycle Model,是由芯来科技自主研发的仿真测试和性能分析工具,可以帮助研发人员在项目初期进行一些必要的仿真测试和程序性能分析。在此版本中全面支持 Nuclei CPU 200,300,600,900,1000系列的CPU,同时支持Windows和Linux系统下使用。

具体参见 :ref:`Nuclei Near Cycle Model <ide_nuclei_near_cycle_model>` 。

新增Live Watch功能
~~~~~~~~~~~~~~~~~~~~

Live Watch 是芯来科技研发的实时监控工具,专为开发者设计,旨在帮助开发者更高效地调试和优化代码。

具体参见 :ref:`Live Watch功能的使用 <ide_live_watch>` 。


ZCC升级
~~~~~~~~~

在Nuclei Studio 2024.12版本中集成了ZCC 3.2.5版,并加入芯来科技支持的软件库。具体信息可以查看:https://www.terapines.com/products/zcc

2024.06版更新说明
-----------------

Expand Down
48 changes: 46 additions & 2 deletions source/ide/npkmanage.rst
Original file line number Diff line number Diff line change
Expand Up @@ -119,8 +119,52 @@ Type选择ssp: ``Soc Support Package``

.. _npkmanage_test_package:

测试NPK组件包
--------------
NPK组件包的检测和问题处理
-----------------------------

.. _npkmanage_install_test_project:

新创建组件包导入前的检测
~~~~~~~~~~~~~~~~~~~~~~~~~

创建完成的软件包,在导入之前,可以先使用检查工具检测npk组件包的合法性,避免导入失败。其核心功能聚焦于代码风格、变量命名、函数结构以及依赖关系的合规性检查,确保代码质量。

关于该工具的内容请参见: `软件包检查工具 <https://github.com/Nuclei-Software/npk-checker>`__


.. _npkmanage_install_err_project:

软件包导入失败的处理
~~~~~~~~~~~~~~~~~~~~

在软件包导入失败的情况下,可以根据相关日志去判断问题所在,这里主要针对npk文件格式错误、依赖不满足等问题。

点击Package Management 页面右下角的View log,会弹出对应日志页面,简略的告知导入失败的原因。

|image29|

.. |image29| image:: /asserts/nucleistudio/developer/image168.png


|image30|

.. |image30| image:: /asserts/nucleistudio/developer/image169.png


当日志中出现类似There are file parsing exceptions提示时,可以去对应的 ``<用户目录>\nuclei-pack-npk-v2\CFGs\logs\sys\`` 路径下看当天的日志文件,进一步了解相关npk文件的问题点,以便进行相应的修正。

|image31|

.. |image31| image:: /asserts/nucleistudio/developer/image170.png

|image32|

.. |image32| image:: /asserts/nucleistudio/developer/image171.png

|image33|

.. |image33| image:: /asserts/nucleistudio/developer/image172.png


.. _npkmanage_create_test_project:

Expand Down
74 changes: 60 additions & 14 deletions source/ide/projectbuild.rst
Original file line number Diff line number Diff line change
Expand Up @@ -158,49 +158,95 @@ Nuclei Studio中编译Hello World项目

|image15|

.. _ide_flash_programming:

.. |image1| image:: /asserts/nucleistudio/projectbuild/image2.png
Flash Programming
------------------

为了满足用户将编译好的二进制文件直接下载到硬件开发板的需求,Nuclei Studio 新增了 Flash Programming 功能。该功能允许用户快速、便捷地将编译好的二进制文件直接下载到硬件开发板中,极大提升了开发和调试的效率;简化操作流程,用户只需点击一次即可完成二进制文件的下载。工程编译好后,找到Flash Programming,并点击,即可完成二进制文件下载的下载。

.. |image2| image:: /asserts/nucleistudio/projectbuild/image3.png
|image17|

用户也可以修改其相关的配置信息,在Launch Bar中点击配置按钮,打开配置页面,然后选中Flash Programming选项卡。

.. |image3| image:: /asserts/nucleistudio/projectbuild/image4.png
|image18|

**Load Program Image**

.. |image4| image:: /asserts/nucleistudio/projectbuild/image5.png
Load的文件,默认的elf格试的文件,也可以支持 ``*.bin、*.hex、*.s19、*.srec、*.symbolsrec`` 等各种格式
Copy link
Member

Choose a reason for hiding this comment

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

symbolsrec 这个是啥格式?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

image

这个选项编出来的文件就是*.symbolsrec的


|image19|

.. |image5| image:: /asserts/nucleistudio/projectbuild/image6.png
**Flash Programming Options**

Flash Programming的选项有以下三种

.. |image6| image:: /asserts/nucleistudio/projectbuild/image7.png
Verify Image:选中时,Download命令会带上 ``verify`` 参数,这条指令要求确认你要烧录的镜像文件是否匹配当前连接的目标设备上的闪存配置。

|image20|

.. |image7| image:: /asserts/nucleistudio/projectbuild/image8.png
Reset and Run:选中时,Download命令会带上 ``reset`` 参数,这条指令在执行完load后可能强制系统复位(SRST),并让目标设备运行。

|image21|

.. |image8| image:: /asserts/nucleistudio/projectbuild/image9.png
Load in Ram:选中时,需要指定Program Address,Download命令会带上 ``resume {Program Address}`` 参数,这条指令固件加载到内存中,而不是闪存中。

|image22|

.. |image9| image:: /asserts/nucleistudio/projectbuild/image10.png
**OpenOCD Flash Programming Command line**

这些参数最终会以命令行的形式通过 GDB 执行。用户也可以自定义所需的命令,只需勾选 ``Customize openocd flash programming command line`` ,即可在下方输入框中输入自定义命令。

.. |image10| image:: /asserts/nucleistudio/projectbuild/image11.png
|image23|

根据需求配置好参数后,点击Flash Programming就可以下载二进制代码到硬件中,下载成功的结果如下图。

.. |image11| image:: /asserts/nucleistudio/projectbuild/image12.png
|image24|


.. |image12| image:: /asserts/nucleistudio/projectbuild/image13.png

.. |image1| image:: /asserts/nucleistudio/projectbuild/image2.png

.. |image13| image:: /asserts/nucleistudio/projectbuild/image14.png
.. |image2| image:: /asserts/nucleistudio/projectbuild/image3.png

.. |image3| image:: /asserts/nucleistudio/projectbuild/image4.png

.. |image14| image:: /asserts/nucleistudio/projectbuild/image15.png
.. |image4| image:: /asserts/nucleistudio/projectbuild/image5.png

.. |image5| image:: /asserts/nucleistudio/projectbuild/image6.png

.. |image6| image:: /asserts/nucleistudio/projectbuild/image7.png

.. |image7| image:: /asserts/nucleistudio/projectbuild/image8.png

.. |image8| image:: /asserts/nucleistudio/projectbuild/image9.png

.. |image9| image:: /asserts/nucleistudio/projectbuild/image10.png

.. |image10| image:: /asserts/nucleistudio/projectbuild/image11.png

.. |image11| image:: /asserts/nucleistudio/projectbuild/image12.png

.. |image12| image:: /asserts/nucleistudio/projectbuild/image13.png

.. |image13| image:: /asserts/nucleistudio/projectbuild/image14.png

.. |image14| image:: /asserts/nucleistudio/projectbuild/image15.png

.. |image15| image:: /asserts/nucleistudio/projectbuild/image16.png

.. |image17| image:: /asserts/nucleistudio/projectbuild/image17.png

.. |image18| image:: /asserts/nucleistudio/projectbuild/image18.png

.. |image19| image:: /asserts/nucleistudio/projectbuild/image19.png

.. |image20| image:: /asserts/nucleistudio/projectbuild/image20.png

.. |image21| image:: /asserts/nucleistudio/projectbuild/image21.png

.. |image22| image:: /asserts/nucleistudio/projectbuild/image22.png

.. |image23| image:: /asserts/nucleistudio/projectbuild/image23.png

.. |image24| image:: /asserts/nucleistudio/projectbuild/image24.png
8 changes: 4 additions & 4 deletions source/ide/update.rst
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
.. _update:

Nuclei Studio 升级
==================
Nuclei Studio 升级更新
======================

一般情况下,如果Nuclei Studio没有大的版本变动,Nuclei Studio升级工作可以由用户下载最新的GNU工具链以及其他相关工具和升级IDE Plugins的方式来完成。

GCC/OpenOCD等工具链的安装
-------------------------
工具链的安装
-------------

Nuclei Studio已经把工具链集成在IDE内部,工具链存放在Nuclei Studio_IDE_XXX文件夹内,路径为: ``Nuclei Studio_IDE_XXX\\NucleiStudio\\toolchain`` 。IDE默认使用此路径的工具链,所以请不要移动 ``toolchain`` 此文件夹,使用IDE创建工程后也不需要进行工具链的相关配置。

Expand Down