CN117785794A - 一种片上系统节点管理方法、装置、存储介质及管理设备 - Google Patents
一种片上系统节点管理方法、装置、存储介质及管理设备 Download PDFInfo
- Publication number
- CN117785794A CN117785794A CN202311814258.0A CN202311814258A CN117785794A CN 117785794 A CN117785794 A CN 117785794A CN 202311814258 A CN202311814258 A CN 202311814258A CN 117785794 A CN117785794 A CN 117785794A
- Authority
- CN
- China
- Prior art keywords
- reset
- node
- functional unit
- chip
- function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 33
- 230000006870 function Effects 0.000 claims description 145
- 238000000034 method Methods 0.000 claims description 54
- 238000004590 computer program Methods 0.000 claims description 16
- 230000004044 response Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 230000006872 improvement Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本说明书公开了一种片上系统节点管理方法、装置、存储介质及管理设备。根据片上系统中各功能单元对应的节点在复位时需要的复位信息,生成所述各功能单元的复位函数;针对每个功能单元,当需要向该功能单元发送任务指令时,查询该功能单元在片上网络中对应的节点的状态;若该节点处于忙碌状态,则采用该功能单元的复位函数调整所述节点为空闲状态,通过所述节点传递所述任务指令。
Description
技术领域
本说明书涉及芯片领域,尤其涉及一种片上系统节点管理方法、装置、存储介质及管理设备。
背景技术
片上系统(System on Chip,SoC)是信息系统核心的芯片集成,如图1所示,片上系统中可集成微处理器、集成电路硬件(Intellectual Property,IP)核和存储器(或片外存储控制接口)等元件,其凭借着集成度高、功耗低、成本低、体积小等优点,目前已成为超大规模集成电路系统设计的主流方向。
其中,IP核是预先设计好的电路功能模块。通过不同设计得到的不同IP核可实现不同的功能。如今,随着对芯片功能的需求不断增加,片上系统中集成的IP核数量也越来越多,通信需求也随之膨胀。为了满足不断增长的通信需求,通常会在SoC上引入片上网络(Network on Chip,NoC)。
SoC中的每一个元件都可作为一个独立的功能单元,NoC用于实现芯片上不同功能单元之间的通信传输。如图2所示,在NoC中存在若干个节点,每个节点对应于一个不同的功能单元。当需要访问SoC中的一个功能单元时,需要通过NoC将任务指令发送给该功能单元对应的节点。当NoC中的一个节点正在被访问,处于忙碌状态时,若再向该节点发送其它任务指令,则需要等到该节点处于空闲(Idle)状态后,才能够接收任务指令。
如果NoC中的一个节点在忙碌状态时,出现了需要立刻由该节点对应的功能单元执行的紧急指令,那么就需要先进行复位操作,使该节点空闲。但是,NoC状态逻辑是采用状态机机制实现的,无法通过时钟复位管理单元(Clock Reset Generation,CRG)产生的复位信号直接完成复位,因此不能随时随地进行复位操作,否则,NoC的状态机会因为没有退出机制而导致卡死。基于上述NoC逻辑,必须实现在SoC中进行复位操作时的安全退出流程。
因此,如何简单高效地实现复位操作时的安全退出流程是一个亟待解决的问题。
发明内容
本说明书提供一种片上系统节点管理方法、装置、存储介质及管理设备,以至少部分地解决现有技术存在的上述问题。
本说明书采用下述技术方案:
本说明书提供了一种片上系统节点管理方法,包括:
根据片上系统中各功能单元对应的节点在复位时需要的复位信息,生成复位函数,复位信息存储于预设格式文件;
响应于向功能单元发送任务指令的情况,查询所述功能单元在片上网络中对应的节点的状态;
响应于所述节点处于忙碌状态,通过该功能单元的复位函数调整所述节点置为空闲状态,通过所述节点传递所述任务指令。
可选地,节点在复位时需要的复位信息包括表征节点复位信号及节点与片上网络的关联关系的信息。
可选地,节点在复位时需要的复位信息包括:产生用于复位该节点的复位信号的单元的标识、该功能单元在片上网络中对应的节点的标识、与该功能单元存在关联关系的功能单元在片上网络中对应的节点的标识、复位信号名称、复位信号有效状态、复位配置寄存器标识和域段中的至少一种。
可选地,生成复位函数,包括:
采用预先创建的脚本,获取所述预设格式文件中存储的复位信息;
根据获取到的复位信息,生成所述各功能单元对应的节点在复位时需要的复位函数。
可选地,预设格式文件中包括通过固定格式存储的一项或多项复位信息,固定格式表示复位信息包含的内容,以及复位信号与复位信息的对应关系在预设周期内保持不变。
可选地,所述预设格式文件与所述脚本存储在同一路径下。
可选地,所述方法还包括:
针对每个节点,根据该节点的复位信息,生成该节点的第一复位函数和/或第二复位函数,其中,所述第一复位函数与所述第二复位函数的编码规范不同。
可选地,通过该功能单元的复位函数调整所述节点置为空闲状态,具体包括:
通过include函数控制多个第一函数与多个第二函数进入使用状态,并通过直接编程接口DPI-C接口在任意使用状态下使用第一复位函数或第二复位函数执行复位操作。
可选地,通过该功能单元的复位函数调整所述节点置为空闲状态,包括:
根据产生用于复位该节点的复位信号的单元的标识以及该节点的复位函数名称,调用所述节点的复位函数将所述节点置为空闲状态。
本说明书提供的一种片上系统节点的管理装置,所述装置包括:
生成模块,用于根据片上系统中各功能单元对应的节点在复位时需要的复位信息,生成复位函数,复位信息存储于预设格式文件;
查询模块,用于响应于向功能单元发送任务指令的情况,查询所述功能单元在片上网络中对应的节点的状态;
复位模块,用于响应于所述节点处于忙碌状态,通过该功能单元的复位函数调整所述节点置为空闲状态,通过所述节点传递所述任务指令。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述片上系统节点管理方法。
本说明书提供了一种管理设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述片上系统节点管理方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
根据片上系统中各功能单元对应的节点在复位时需要的复位信息,生成所述各功能单元的复位函数;针对每个功能单元,当需要向该功能单元发送任务指令时,查询该功能单元在片上网络中对应的节点的状态;若该节点处于忙碌状态,则采用该功能单元的复位函数调整所述节点为空闲状态,通过所述节点传递所述任务指令。
在采用本说明书提供的片上系统节点管理方法时,可根据各功能单元对应的节点的复位信息,创建出能够实现片上网络中的节点安全退出的复位函数;在应用时,可在需要向功能单元发送任务指令时查询功能单元在片上网络中对应的节点的状态,并在节点处于忙碌状态时采用复位函数使节点转换为空闲状态。通过本方法可实现片上网络中节点在忙碌状态下的安全退出功能,保证了片上系统在应用以及验证过程中的稳定。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
图1为本说明书中一种片上系统的结构示意图;
图2为本说明书中一种片上网络的架构示意图;
图3为本说明书中一种片上系统管理方法的流程示意图;
图4为本说明书提供的一种片上系统管理装置的示意图;
图5为本说明书提供的对应于图1的管理设备示意图。
具体实施方式
在集成芯片中,当需要停止一个正在运作的功能单元时,通常可采用任务切断、下电、复位等操作。其中,任务切断过程一般可通过软复位实现,而下电操作必须由软复位和硬复位配合实现,因此,中止功能单元的过程可全部集中在复位操作中。
对于包括SoC在内的绝大多数集成芯片,其复位操作是通过芯片内的CRG实现的。CRG可根据不同功能单元的需求产生不同频率的时钟信号使功能单元开始工作,也可生成对应的复位信号来使功能单元复位。在SoC中,可以仅存在一个CRG用于向所有功能单元提供信号,也可以存在多个CRG,每个CRG分别管理不同的功能单元。
但是,在SoC架构中,功能单元之间的通信都是通过NoC来完成的,发送给一个功能单元的大部分指令都需要通过NoC中对应的节点来接收。但是NoC的节点本身在同一时间只能够接收一个指令,在功能单元没有处理完毕上一个指令之前,对应的NoC节点是无法接收下一个指令的。同时,由于NoC的状态逻辑是采用状态机机制实现的,需要通过NoC状态完成特定的变化来完成退出,如果在状态变化的过程中强行退出,NoC的状态机就会卡死。因此,在NoC架构中,如果想要实现对功能单元的复位,就需要实现对NoC节点状态的安全退出,也就是实现复位时的安全退出流程。
为解决上述技术问题,本说明书提供了一种能够实现复位时的安全退出流程中的片上系统节点管理方法。
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图3为本说明书中一种片上系统管理方法的流程示意图,具体包括以下步骤:
S100:根据片上系统中各功能单元对应的节点在复位时需要的复位信息,生成复位函数,复位信息存储于预设格式文件。
本说明书所提供的片上系统节点管理方法中的所有步骤均可由任何具有计算功能的具有NoC结构的SoC芯片实现,具体的,该方法可应用于GPU中,由GPU实现对其自身内部各NoC节点的管理。
在具有NoC的SoC中,NoC中的节点可看作是功能单元的接口,用于接收任务指令,实现各功能单元之间的通信。由于在对功能单元进行复位时要考虑到节点的安全退出流程,因此需要获取用于实现复位以及安全退出流程的复位信息。
同时,在SoC中,各功能单元之间可能会存在一定的关联关系,在工作的过程中以及复位时可能会相互产生一定的影响。因此,在确定各节点复位时所需的复位信息时,可根据片上系统中各功能单元之间的关联关系,获取各功能单元对应的各节点的至少部分的复位信息。
在本说明书提供的片上系统节点管理方法中,每个功能单元对应的节点的复位信息可包括表征该节点复位信号的信息以及表征该节点与NoC的关联关系的信息。其中,该节点与NoC的关联关系至少包括该节点与NoC上其他节点的关联关系。具体的,该功能单元对应的节点复位信息可包括:产生用于复位该节点的复位信号的单元的标识、该功能单元在片上网络中对应的节点的标识、与该功能单元存在关联关系的功能单元在片上网络中对应的节点的标识、复位信号名称、复位信号有效状态、复位配置寄存器标识和域段中的至少一种。
其中,复位信号名称表示该功能单元的复位函数在被创建时的命名,每个功能单元对应的节点的复位信号名称应不同;产生用于复位该节点的复位信号的单元的标识用于表征管理该节点的CRG,也就是用于表征哪一个CRG负责向该节点发送时钟信号和复位信号;该功能单元在片上网络中对应的节点的标识用于表征与该功能单元对应的节点,也就是负责为该功能单元接收指令的节点;与该功能单元存在关联关系的功能单元在片上网络中对应的节点的标识用于表征在对该功能单元对应的节点进行复位操作时,除了需要安全退出该功能单元对应的节点外,还有哪些其它节点会受到影响;复位信号有效状态用于表征该功能单元对应的节点在复位时何种信号有效,也就是接收到何种信号后实现复位,例如脉冲信号或电平信号等;复位配置寄存器标识和域段表示在软复位时,用于存储该功能单元的复位配置的寄存器的表示以及复位配置存储在寄存器中的域段。
获取到上述复位信息后,可将复位信息存储在预设格式文件中,如存储在Excel表格中。该预设格式文件中可包括通过固定格式存储的一项或多项复位信息,固定格式表示复位信息包含的内容,以及复位信号与复位信息的对应关系在预设周期内保持不变。其中,该预设格式文件中的一项或多项复位信息对应一个复位函数,即一项或多项复位信息用于生成一个复位函数。一般的,如果预设格式文件是诸如Excel等表格形式的文件,则该文件中一行复位信息可用于生成一个复位函数。特别的,如果不同复位函数的执行逻辑相同,而仅仅是这些复位函数中的一个或几个参数不同,则也可将该表格形式的文件设置为多行复位信息对应同一复位函数的范式,即,同样的函数范式采用不同行的复位信息可生成逻辑相同但参数不同的多个复位函数,以此实现同一复位函数范式的复用。同时,本说明书中之所以采用固定格式的文件来存储这些复位信息,目的是便于后续不同的测试端(如采用SV编码规范的测试端或采用C编码规范的测试端)均可以复用该固定格式的文件中的复位信息来生成相应的复位函数。
得到各功能单元对应的节点的复位信息后,可针对每个功能单元生成该功能单元的复位函数。具体的,可采用预先创建的脚本,获取上述预设格式文件中存储的复位信息,并根据获取到的复位信息,生成所述各功能单元对应的节点在复位时需要的复位函数。其中,脚本可以是SoC预先根据设置创建出来的,也可以是预先由用户编写后SoC接收的;脚本的功能为识别上述预设格式文件中的复位信息并根据识别出的复位信息创建出复位函数。
更优的,为了进一步加快脚本识别并创建复位函数的效率,可将复位信息与脚本存储在同一路径下,减少脚本搜索复位信息所需要的时间。
额外的,由于复位操作是平时对SoC进行应用、验证等过程时的常用操作,每个复位函数在创建完成后大概率会被多次使用。因此,为了节省使用复位函数时的难度,在创建复位函数时可以函数库的形式来存放复位函数。具体的,可根据所述复位信息创建函数库,其中,所述函数库中包含所述各功能单元的复位函数。
在使用时,仅在主函数中引用函数库,便能够在后续通过复位函数名称来调用相应的复位函数。通过上述方式,能够省去每次应用时在主函数中创建复位函数的过程,减少应用阶段的耗时。
更进一步的,对于不同的SoC,可能会采用不同的编程语言来实现其中的功能;甚至部分情况下,同一SoC的应用中可能会用到多种不同的编程语言。因此,在创建复位函数时,可考虑创建多种适用于不同编程语言的复位函数。具体的,可针对每个功能单元,根据该功能单元的复位信息,生成指定数量个复位函数,其中,编写每个复位函数的语言不同,即每个复位函数的编码规范不同。例如,针对每个节点,根据该节点的复位信息,生成该节点的第一复位函数和/或第二复位函数,其中,所述第一复位函数与所述第二复位函数的编码规范可分别为SV编码规范和C编码规范,以满足后续SV侧和C侧均可通过调用相应的复位函数实现对接点的复位。
还可根据所述各功能单元的复位函数,创建所述指定数量个函数库,其中,同一个函数库中包含由复位函数的编码规范相同。由于不同函数库不会在同一主函数中被引用,并且不同函数库对应的文件后缀不同,因此在引用时并不会产生歧义,进而同一功能单元在不同编码规范下生成的复位函数的名称也可相同。
S102:响应于向功能单元发送任务指令的情况,查询所述功能单元在片上网络中对应的节点的状态。
在NoC架构的SoC中,任意两个功能单元都可通过NoC进行信息传输。但是,无论是由哪一个功能单元向哪一个功能单元发送任务指令,都需要由NoC上对应的节点来接收。因此,对于任意一个功能单元,在需要向该功能单元发送任务指令时,都可额外查询该功能单元在NoC中对应的节点的状态。
在NoC中,节点的状态一般可分为两种,一种是忙碌状态,也就是节点已经接收了一个任务指令,节点对应的功能单元正在执行该任务指令中,此时节点无法继续接收任务指令;另一种是空闲状态,也就是节点对应的功能单元目前没有执行任何任务指令,此时节点可接收任务指令。
S104:响应于所述节点处于空闲状态,通过所述节点传递所述任务指令。
当该功能单元对应的节点处于空闲状态时,表示节点此时可以接收任务指令,可通过节点接收任务指令,并将该任务指令传递给该功能单元进行处理。
S106:响应于所述节点处于忙碌状态,通过该功能单元的复位函数调整所述节点置为空闲状态,通过所述节点传递所述任务指令。
当该功能单元对应的节点处于忙碌状态时,可调用在步骤S100中创建的该功能单元的复位函数,来实现该功能单元对应的节点的安全退出,使节点的状态变为空闲后,再接收任务指令,并传递给该功能单元进行处理。或者,也可以在该功能单元对应的节点处于忙碌状态时,若接收到任务指令,则判断接收到的该任务指令的优先级是否高于该功能单元当前正在处理的任务指令的优先级,若是,则调用在步骤S100中创建的该功能单元的复位函数使该节点的状态变为空闲,即,中断该功能单元当前正在处理的优先级较低的该任务指令,再将接收的优先级较高的该任务指令传递给该功能单元进行处理。
具体的,可根据产生用于复位该节点的复位信号的单元的标识(即CRG的标识)以及该节点的复位函数名称,调用所述节点的复位函数将该节点置为空闲状态。
更优的,在创建出各功能单元的复位函数后,可针对每个功能单元,直接建立该功能单元的复位函数与该功能单元在片上网络中对应的节点的标识之间的对应关系。由此,在后续调用该功能单元的复位函数时,可直接采用与所述节点的标识对应的复位函数将所述节点置为空闲状态。通过上述步骤,可将功能单元与复位函数之间的对应关系拓展到功能单元对应的节点与复位函数之间的对应关系,由此,当查询到一个节点的状态为忙碌时,可直接通过该节点的标识查到出对应的复位函数并使用,省去了由该节点先转换到对应的功能单元的过程,进一步减少处理的耗时,提高整体的工作效率。
在采用本说明书提供的片上系统节点管理方法时,可各功能单元对应的节点的复位信息,创建出能够实现片上网络中的节点安全退出的复位函数;在应用时,可在需要向功能单元发送任务指令时查询功能单元在片上网络中对应的节点的状态,并在节点处于忙碌状态时采用复位函数使节点转换为空闲状态。通过本方法可实现片上网络中节点在忙碌状态下的安全退出功能,保证了片上系统在应用以及验证过程中的稳定。
具体的,在上述步骤S106中,可通过include函数控制步骤S100所生成的多个第一函数与多个第二函数进入使用状态,即,在主函数中引用函数库,再通过直接编程接口DPI-C接口在任意使用状态下(即在任一编码规范下,如SV编码规范或C编码规范)使用第一复位函数或第二复位函数执行复位操作。比如其中的一种情况是,在SV侧进行测试,即使现在只有C编码规范的函数,也能通过直接编程接口DPI-C接口将C编码规范的函数转化成SV编码规范的函数,从而实现不同编码函数的复用,或者说实现上述包含同一复位信息的预设格式文件的复用。
以上是本说明书提供的片上系统节点管理方法,基于同样的思路,本说明书还提供了相应的片上系统节点的管理装置,如图4所示。
图4为本说明书提供的一种片上系统管理装置示意图,具体包括:
生成模块200,用于根据片上系统中各功能单元对应的节点在复位时需要的复位信息,生成复位函数,复位信息存储于预设格式文件;
查询模块202,用于响应于向功能单元发送任务指令的情况,查询所述功能单元在片上网络中对应的节点的状态;
复位模块204,用于响应于所述节点处于忙碌状态,通过该功能单元的复位函数调整所述节点置为空闲状态,通过所述节点传递所述任务指令。
可选地,节点在复位时需要的复位信息包括表征节点复位信号及节点与片上网络的关联关系的信息。
可选地,节点在复位时需要的复位信息包括:产生用于复位该节点的复位信号的单元的标识、该功能单元在片上网络中对应的节点的标识、与该功能单元存在关联关系的功能单元在片上网络中对应的节点的标识、复位信号名称、复位信号有效状态、复位配置寄存器标识和域段中的至少一种。
可选地,所述生成模块200,具体用于采用预先创建的脚本,获取所述预设格式文件中存储的复位信息;根据获取到的复位信息,生成所述各功能单元对应的节点在复位时需要的复位函数。
可选地,预设格式文件中包括通过固定格式存储的一项或多项复位信息,固定格式表示复位信息包含的内容,以及复位信号与复位信息的对应关系在预设周期内保持不变。
可选地,所述预设格式文件与所述脚本存储在同一路径下。
可选地,所述生成模块200,用于针对每个节点,根据该节点的复位信息,生成该节点的第一复位函数和/或第二复位函数,其中,所述第一复位函数与所述第二复位函数的编码规范不同。
可选地,所述复位模块204,具体用于通过include函数控制多个第一函数与多个第二函数进入使用状态,并通过直接编程接口DPI-C接口在任意使用状态下使用第一复位函数或第二复位函数执行复位操作。
可选地,所述复位模块204,具体用于根据产生用于复位该节点的复位信号的单元的标识以及该节点的复位函数名称,调用所述节点的复位函数将所述节点置为空闲状态。
本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图3提供的片上系统节点管理方法。
本说明书还提供了图5所示的管理设备的示意结构图。如图5所述,在硬件层面,该管理设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1所述的片上系统节点管理方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种片上系统节点管理方法,其特征在于,包括:
根据片上系统中各功能单元对应的节点在复位时需要的复位信息,生成复位函数,复位信息存储于预设格式文件;
响应于向功能单元发送任务指令的情况,查询所述功能单元在片上网络中对应的节点的状态;
响应于所述节点处于忙碌状态,通过该功能单元的复位函数调整所述节点置为空闲状态,通过所述节点传递所述任务指令。
2.如权利要求1所述的方法,其特征在于,节点在复位时需要的复位信息包括表征节点复位信号及节点与片上网络的关联关系的信息。
3.如权利要求2所述的方法,其特征在于,节点在复位时需要的复位信息包括:产生用于复位该节点的复位信号的单元的标识、该功能单元在片上网络中对应的节点的标识、与该功能单元存在关联关系的功能单元在片上网络中对应的节点的标识、复位信号名称、复位信号有效状态、复位配置寄存器标识和域段中的至少一种。
4.如权利要求1所述的方法,其特征在于,生成复位函数,包括:
采用预先创建的脚本,获取所述预设格式文件中存储的复位信息;
根据获取到的复位信息,生成所述各功能单元对应的节点在复位时需要的复位函数。
5.如权利要求1所述的方法,其特征在于,预设格式文件中包括通过固定格式存储的一项或多项复位信息,固定格式表示复位信息包含的内容,以及复位信号与复位信息的对应关系在预设周期内保持不变。
6.如权利要求4所述的方法,其特征在于,所述预设格式文件与所述脚本存储在同一路径下。
7.如权利要求1所述的方法,其特征在于,所述方法还包括:
针对每个节点,根据该节点的复位信息,生成该节点的第一复位函数和/或第二复位函数,其中,所述第一复位函数与所述第二复位函数的编码规范不同。
8.如权利要求7所述的方法,其特征在于,通过该功能单元的复位函数调整所述节点置为空闲状态,具体包括:
通过include函数控制多个第一函数与多个第二函数进入使用状态,并通过直接编程接口DPI-C接口在任意使用状态下使用第一复位函数或第二复位函数执行复位操作。
9.如权利要求3所述的方法,其特征在于,通过该功能单元的复位函数调整所述节点置为空闲状态,包括:
根据产生用于复位该节点的复位信号的单元的标识以及该节点的复位函数名称,调用所述节点的复位函数将所述节点置为空闲状态。
10.一种片上系统节点的管理装置,其特征在于,包括:
生成模块,用于根据片上系统中各功能单元对应的节点在复位时需要的复位信息,生成复位函数,复位信息存储于预设格式文件;
查询模块,用于响应于向功能单元发送任务指令的情况,查询所述功能单元在片上网络中对应的节点的状态;
复位模块,用于响应于所述节点处于忙碌状态,通过该功能单元的复位函数调整所述节点置为空闲状态,通过所述节点传递所述任务指令。
11.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~9任一项所述的方法。
12.一种管理设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1~9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311814258.0A CN117785794A (zh) | 2023-12-26 | 2023-12-26 | 一种片上系统节点管理方法、装置、存储介质及管理设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311814258.0A CN117785794A (zh) | 2023-12-26 | 2023-12-26 | 一种片上系统节点管理方法、装置、存储介质及管理设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117785794A true CN117785794A (zh) | 2024-03-29 |
Family
ID=90399807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311814258.0A Pending CN117785794A (zh) | 2023-12-26 | 2023-12-26 | 一种片上系统节点管理方法、装置、存储介质及管理设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117785794A (zh) |
-
2023
- 2023-12-26 CN CN202311814258.0A patent/CN117785794A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108628688B (zh) | 一种消息处理方法、装置及设备 | |
CN110875935A (zh) | 消息发布、处理、订阅方法、装置及系统 | |
CN112597013A (zh) | 一种在线开发以及调试方法及装置 | |
CN112003922B (zh) | 一种数据传输方法及装置 | |
CN116405554B (zh) | 一种网络通信的方法、装置、存储介质及电子设备 | |
CN110046052B (zh) | 一种服务调用方法及装置 | |
CN110955624B (zh) | 一种pcie设备的热插拔方法、装置和系统 | |
CN116048977B (zh) | 一种基于数据还原的测试方法及装置 | |
CN117785794A (zh) | 一种片上系统节点管理方法、装置、存储介质及管理设备 | |
CN116302616A (zh) | 一种数据处理的方法、装置、存储介质及电子设备 | |
CN116384505A (zh) | 一种数据处理的方法、装置、存储介质及电子设备 | |
CN112532215B (zh) | 一种多路同步信号发生系统、方法、设备及介质 | |
CN111796864A (zh) | 一种数据校验的方法及装置 | |
CN115174587B (zh) | 一种数据传输系统、方法、装置、计算机可读存储介质及电子设备 | |
CN117555697B (zh) | 一种面向分布式训练的缓存加载系统、方法、装置及设备 | |
CN115344410B (zh) | 判断事件执行顺序的方法、装置、存储介质及电子设备 | |
CN116743550B (zh) | 一种分布式存储集群的故障存储节点的处理方法 | |
CN117499492A (zh) | 数据处理方法、装置及设备 | |
CN117170669B (zh) | 一种基于前端高低代码融合的页面展示方法 | |
CN110764690A (zh) | 分布式存储系统及其领导节点选举方法和装置 | |
CN117519733B (zh) | 一种项目部署方法、装置、存储介质及电子设备 | |
CN117118523B (zh) | 一种信息传输系统、方法、装置、存储介质及电子设备 | |
CN117651064A (zh) | 一种应用集群部署中tcp下行消息处理方法、设备及介质 | |
CN117236263B (zh) | 一种多芯粒互联仿真方法、装置、存储介质及电子设备 | |
CN115827310B (zh) | 一种信息校验的方法、装置、存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |