是否可以在PyGears中设置断点?

问题描述

据我了解,我可以使用任何文本编辑器来编写PyGears。 实际上,我只需要Python IDE。 这是否意味着我可以在任何这些工具中设置断点?

解决方法

是的,您可以使用任何Python IDE进行PyGears开发。断点也可以免费用于调试。

使用PyGears模拟设计时有两个主要阶段:编译时间和运行时间。

  1. 在编译期间,将构建设计的结构。使用接口对模块进行实例化,参数化和连接。在此阶段,执行non-async个函数,即定义为:

    @gear
    def func(...):
        ...
    

    因此,在这些函数中放置断点将例如帮助您跟踪将哪些确切值用作模块参数,或检查模块之间接口的数据类型。

  2. 一旦调用sim(),PyGears模拟器将通过调用async模块即定义为以下功能的模块来执行设计结构:

    @gear
    async def func(...):
        ...
    

    @datagear
    def func(...):
        ...
    

    通过在这些函数中放置断点,您可以调试模块的功能,并了解某些模块接收输入数据并产生输出的时间。

    但是,使用断点来调试数千个时钟周期内的更复杂的设计通常很繁琐,因此您还应该考虑使用Gearbox(PyGears IDE),检查波形并记录重要事件。