CN117669437A - 一种内存建模网表处理方法、装置、设备及存储介质 - Google Patents
一种内存建模网表处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117669437A CN117669437A CN202311678249.3A CN202311678249A CN117669437A CN 117669437 A CN117669437 A CN 117669437A CN 202311678249 A CN202311678249 A CN 202311678249A CN 117669437 A CN117669437 A CN 117669437A
- Authority
- CN
- China
- Prior art keywords
- netlist
- module
- port
- memory
- chip
- 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
- 230000015654 memory Effects 0.000 title claims abstract description 172
- 238000003672 processing method Methods 0.000 title claims abstract description 15
- 238000012545 processing Methods 0.000 claims abstract description 36
- 238000000034 method Methods 0.000 claims abstract description 35
- 238000004590 computer program Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 abstract description 5
- 230000000694 effects Effects 0.000 abstract description 3
- 239000004065 semiconductor Substances 0.000 abstract description 2
- 238000013461 design Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000006854 communication Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000007175 bidirectional communication Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 101100063942 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) dot-1 gene Proteins 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本申请涉及一种内存建模网表处理方法、装置、设备及存储介质,应用在半导体芯片验证领域,其中方法包括:读取待配置网表,待配置网表包括片内内存模块,片内内存模块包括原端口;当待执行单元连接到片内内存模块的原端口时,创建与原端口对应的镜像端口,将镜像端口连接到原端口;读取并实例化待替换网表,将实例化之后的待替换网表确定为Arbitrator模块;基于镜像端口,将Arbitrator模块连接到片内内存模块;将待配置网表确定为配置完成网表,并输出配置完成网表。本申请具有的技术效果是:降低了资源开销和缓解了系统性能问题,并通过使用常见通用存储介质实现芯片验证时内存建模的方法,保障基于芯片硬件辅助验证的成功实施。
Description
技术领域
本申请涉及半导体芯片验证的技术领域,尤其是涉及一种内存建模网表处理方法、装置、设备及存储介质。
背景技术
随着科技的不断进步,芯片设计在电子领域中扮演着至关重要的角色,芯片广泛应用于各个领域,包括通信、计算机、医疗、汽车等。在芯片设计中,内存扮演着关键的角色,对于电路的正确性和性能有着直接的影响,为了确保芯片在实际运行中能够满足设计需求,需要对内存进行准确的建模,以便在验证阶段发现并解决潜在的问题。
传统的芯片内存建模采用对片内存储资源SRAM使用一一对应的建模方式,使用新的EDIF文件将片内EDIF文件中的网表完全替换掉,具体来说,在每个网表被替换时,会对应一个新的EDIF文件。
然而,一一对应的建模方式会导致存储和处理冗余信息,增加了资源开销,并且在大容量内存需求的情况下,对每个网表进行完全替换会导致设计中的时序关系发生变化,影响整体时序性能,进而导致了内存建模的可靠性差。
发明内容
为了降低资源开销和提升内存建模的可靠性,本申请提供一种内存建模网表处理方法、装置、设备及存储介质。
第一方面,本申请提供一种内存建模网表处理方法,采用如下的技术方案:所述方法应用于网表处理系统,所述网表处理系统包括待配置网表、待替换网表和待执行单元,所述方法包括:
读取所述待配置网表,所述待配置网表包括片内内存模块,所述片内内存模块包括原端口;
当所述待执行单元连接到所述片内内存模块的原端口时,创建与所述原端口对应的镜像端口,将所述镜像端口连接到所述原端口;
读取并实例化所述待替换网表,将实例化之后的所述待替换网表确定为Arbitrator模块;
基于所述镜像端口,将所述Arbitrator模块连接到所述片内内存模块;
将所述待配置网表确定为配置完成网表,并输出所述配置完成网表。
在一个具体的可实施方案中,所述将所述镜像端口连接到所述原端口包括:
将所述镜像端口的输入端连接到所述原端口的输出端;
将所述镜像端口的输出端连接到所述原端口的输入端。
在一个具体的可实施方案中,所述读取并实例化所述待替换网表包括:
读取并识别所述待替换网表中的模块;
将所述待替换网表中的模块配置在所述待配置网表的次顶层。
在一个具体的可实施方案中,所述将所述Arbitrator模块连接到所述片内内存模块包括:
将所述Arbitrator模块的输入端连接到所述片内内存模块镜像端口的输出端;
将所述Arbitrator模块的输出端连接到所述片内内存模块镜像端口的输入端。
在一个具体的可实施方案中,所述网表处理系统还包括通用存储单元,在所述将所述Arbitrator模块连接到所述片内内存模块之后,还包括:
通过预设的用户顶层端口,建立所述Arbitrator模块与所述通用存储单元的连接。
在一个具体的可实施方案中,所述通用存储单元包括芯片内部的存储资源或芯片外部的存储资源。
在一个具体的可实施方案中,在所述待配置网表中,所述片内内存模块为一个或多个。
第二方面,本申请提供一种网表处理装置,采用如下技术方案:所述装置应用于网表处理系统,所述网表处理系统包括待配置网表、待替换网表和待执行单元,所述装置包括:
待配置网表读取模块,用于读取所述待配置网表,所述待配置网表包括片内内存模块,所述片内内存模块包括原端口;
镜像端口创建模块,当所述待执行单元连接到所述片内内存模块的原端口时,用于创建与所述原端口对应的镜像端口,将所述镜像端口连接到所述原端口;
待替换网表读取模块,用于读取并实例化所述待替换网表,将实例化之后的所述待替换网表确定为Arbitrator模块;
Arbitrator连接模块,用于基于所述镜像端口,将所述Arbitrator模块连接到所述片内内存模块;
配置完网表输出模块,用于将所述待配置网表确定为配置完成网表,并输出所述配置完成网表。
第三方面,本申请提供一种计算机设备,采用如下技术方案:包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行如上述任一种内存建模网表处理方法的计算机程序。
第四方面,本申请提供一种计算机可读存储介质,采用如下技术方案:存储有能够被处理器加载并执行上述任一种内存建模网表处理方法的计算机程序。
综上所述,本申请具有以下有益技术效果:
通过创建镜像端口和引入Arbitrator模块,允许在运行时动态地替换内存模块,这与一一替换网表的方式相比,减少了现有技术中新建完整EDIF文件的需求,从而降低了资源开销和缓解了系统性能问题;将待替换网表实例化为Arbitrator模块,并通过镜像端口连接到片内内存模块,引入了一个中介模块,即使用Arbitrator模块管理多个片内内存模块之间的访问冲突,实现了对所有内存模块的同时处理,这种同时处理的能力提升了网表处理系统的并发性和性能,相较于现有技术中使用一一对应方式更具灵活性,并且能够更好的适应芯片设计过程中的时序关系,降低时序性能的不稳定性,从而提升了了内存建模的可靠性。
附图说明
图1是本申请实施例中内存建模网表处理方法的流程图。
图2是本申请实施例中用于说明网表内各模块连接的示意图。
图3是本申请实施例中网表处理装置的结构框图。
图4是本申请实施例中用于体现计算机设备的示意图。
附图标记:301、待配置网表读取模块;302、镜像端口创建模块;303、待替换网表读取模块;304、Arbitrator连接模块;305、配置完网表输出模块。
具体实施方式
以下结合附图1-4对本申请作进一步详细说明。
本申请实施例公开一种内存建模网表处理方法,该方法应用于网表处理系统,网表处理系统包括待配置网表和待替换网表,待配置网表和待替换网表以EDIF文件的形式存在,用于表示芯片设计的网表和电路结构;网表处理系统还包括待执行单元,待执行单元中存储用户的操作指令,如写入指令、读取指令或同时读取/写入指令等,用户可以通过待执行单元对系统进行配置和操作;网表处理系统还包括通用存储单元,通用存储单元通常具备较大容量的内存空间。
如图1所示,该方法包括以下步骤:
S10,读取待配置网表,待配置网表包括片内内存模块,片内内存模块包括原端口。
具体来说,待配置网表以EDIF文件的形式存在,文件包含了内存建模需要进行配置的信息;片内内存模块作为黑盒(BlackBox),是一个独立的、可替换的模块,其具体实现和内部结构不会详细地展示出来,只关注其接口及功能,占用资源较少;片内内存上包括若干原端口,用于连接其他的系统组件,执行读写等内存操作。
S20,当待执行单元连接到片内内存模块的原端口时,创建与原端口对应的镜像端口,将镜像端口连接到原端口。
具体来说,待执行单元被连接到片内内存模块的原端口,表明待执行单元与片内内存模块进行交互,执行某些操作包括读取数据、写入数据或者同时进行读取和写入等操作;针对片内内存模块的原端口,系统创建镜像端口的新端口,镜像端口是对原端口的一种映射或镜像,目的是在系统中引入一个额外的接口;系统将这个镜像端口与片内内存模块的原端口进行连接,待执行单元可以与镜像端口进行通信。
S30,读取并实例化待替换网表,将实例化之后的待替换网表确定为Arbitrator模块。
具体来说,对待替换网表进行实例化操作,即将待替换网表创建为实际可操作的模块,将实例化后的待替换网表确定为Arbitrator模块,Arbitrator模块用于确保内存访问和操作的有序进行。
S40,基于镜像端口,将Arbitrator模块连接到片内内存模块。
具体来说,系统使用镜像端口,将实例化的Arbitrator模块连接到片内内存模块,即Arbitrator模块通过镜像端口与片内内存模块进行通信和协调。
S50,将待配置网表确定为配置完成网表,并输出配置完成网表。
具体来说,待配置网表经过了一系列的操作、连接和实例化,将经过处理的待配置网表确定为配置完成网表;系统将配置完成网表输出,例如将其保存为一个新的EDIF文件,或者以其他格式输出,以便在后续的设计阶段或系统运行中使用。
通过内存建模网表处理方法:(1)系统采用了模块化设计的思路,使待配置网表以EDIF文件形式存在,通过将片内内存模块视为BlackBox,实现了一种模块化的处理方式,片内内存模块被抽象为一个独立、可替换的模块,关注其接口和功能,而不暴露内部实现,这种模块化设计使得系统更具灵活性,能够轻松地替换或升级内存模块,同时降低了系统的复杂性;(2)通过创建与原端口对应的镜像端口,系统为内存交互引入了一个额外的接口,这种机制提供了更灵活的数据流和操作控制,有助于优化系统的通信和操作过程,提高了系统的可配置性和适应性;(3)将待替换网表实例化为Arbitrator模块用于确保内存访问和操作的有序进行,相当于引入了一种协调机制,可以处理不同模块之间的访问冲突,提高了系统的效率和性能,Arbitrator模块的应用使系统更具鲁棒性,适应性更强;(4)基于镜像端口将Arbitrator模块连接到片内内存模块进一步强调了系统中各个模块之间的通信和协作,确保数据流的有序进行,这个设计决策有助于降低系统中的访问冲突,提高整体性能。
在一个实施例中,为了有助于实现灵活的数据流,将镜像端口连接到原端口的步骤可以被具体执行为:
将镜像端口的输入端连接到原端口的输出端;将镜像端口的输出端连接到原端口的输入端;如图2所示,圆点1表示原端口,圆点2表示镜像端口,镜像端口的输入端与原端口的输出端连接,使得Arbitrator模块返回的数据可以通过镜像模块的输入端顺利传输至片内内存模块的输出端;镜像端口的输出端与原端口的输入端连接,使得待执行单元发送的数据可以通过片内内存模块的输入端传输给镜像端口的输出端。
镜像端口与原端口连接方式,使得Arbitrator模块返回的数据能够传输至片内内存模块的输出端,同时,使得待执行单元发送的数据可以传输给片内内存模块的输入端,这样的双向连接方式有助于实现灵活的数据流,更好地适应不同的需求和操作场景。
在一个实施例中,为了使设计者能够更容易地理解和管理次顶层的组件,读取并实例化待替换网表的步骤可以被具体执行为:
系统首先读取并识别待替换网表中的模块,包括打开待替换网表的EDIF文件或者其他格式的文件,以获取网表中的信息,在读取的过程中,系统识别待替换网表中的模块,识别的过程涉及到解析文件结构、检测模块定义等操作,以确定网表中包含哪些模块;识别完待替换网表中的模块后,系统将这些模块实例化并配置在待配置网表的次顶层,次顶层是相对于整个网表设计中的主顶层而言的,即在层次结构中处于次一级的层次,这意味着待替换网表中的模块被放置在设计中的一个较高层次。
通过系统自动读取和识别待替换网表中的模块,实现了对模块的自动实例化和配置,减轻了设计者手动处理的负担,提高了效率,系统能够根据识别到的模块信息,自动进行实例化和配置,减少了潜在的人为错误;通过将待替换网表中的模块放置在次顶层,系统展现了一种动态适应性,设计的模块被放置在相对较高的层次,这一层次通常包含了一些较高层次的功能单元或模块,使其层次结构更为直观和清晰,设计者能够更容易地理解和管理次顶层的组件。
在一个实施例中,为了确保Arbitrator模块可以双向与片内内存模块通信,将Arbitrator模块连接到片内内存模块的步骤可以被具体执行为:
将Arbitrator模块的输入端连接到片内内存模块镜像端口的输出端;将Arbitrator模块的输出端连接到片内内存模块镜像端口的输入端;如图2所示,片内内存模块的镜像端口的输出端连接Arbitrator模块的输入端,使得Arbitrator模块可以获取到从片内内存模块通过镜像端口传递过来的数据或请求;Arbitrator模块的输出端连接片内内存模块镜像端口的输入端,使得Arbitrator模块可以将返回的数据或请求传递给片内内存模块,实现与片内内存模块的交互。
通过将Arbitrator模块的输入端与片内内存模块的镜像端口的输出端相连,以及将Arbitrator模块的输出端与片内内存模块的镜像端口的输入端相连,实现了双向通信的有效性,确保了Arbitrator模块可以双向与片内内存模块通信,既能获取数据或请求,又能将处理后的数据或请求传递给片内内存模块;通过连接Arbitrator模块和片内内存模块的镜像端口,体现了模块化设计的灵活性,Arbitrator模块作为中介模块,通过镜像端口与其他模块连接,具有一定的通用性和可重用性,有助于系统的可维护性和可扩展性,适用于需要中介模块进行协调的系统,例如内存访问场景下的模块化设计。
在一个实施例中,网表处理系统还包括通用存储单元,为了为系统提供大内存容量的支持,将Arbitrator模块连接到片内内存模块之后的步骤可以被具体执行为:
通过预设的用户顶层端口,建立Arbitrator模块与通用存储单元的连接;用户顶层端口是在芯片或电路的最顶层层次结构上预定义的接口,允许芯片与外部系统或者其他硬件模块进行通信,用户顶层端口可以是输入端口、输出端口或者双向端口;通过用户顶层端口,Arbitrator模块可以与通用存储单元进行通信,使得Arbitrator模块能够对通用存储单元进行访问,实现对通用存储单元的有效管理,通用存储单元为一个具备较大内存容量的存储设备,用于存储系统中的数据。
通过预设的用户顶层端口,Arbitrator模块可以与通用存储单元进行连接,这种设计使得系统更加灵活,可以根据具体的需求和场景进行配置和定制,用户可以通过配置用户顶层端口来调整Arbitrator模块与其他模块的交互方式,从而适应不同的应用场景;使得系统更具通用性和可扩展性;Arbitrator模块通过用户顶层端口与通用存储单元进行通信,实现对通用存储单元的有效管理,包括对内存的访问控制、数据传输以及可能的冲突解决等,通过Arbitrator模块的引入,系统可以更高效地进行内存管理,确保数据的一致性和可靠性;Arbitrator模块通过与通用存储单元的连接,为系统提供了对大内存容量的支持,提高了系统的处理能力。
在一个实施例中,为了在内存管理方面更具灵活性,通用存储单元包括芯片内部的存储资源或芯片外部的存储资源;芯片内部的存储资源即SRAM,这种存储资源直接集成在芯片的硅片内,具有较快的访问速度,用于存储临时数据、缓存或其他需要快速访问的信息;芯片外部的存储资源,如外部RAM、Flash存储器等,这些存储资源具有较大的容量,但相对于芯片内部存储器,访问速度较慢,它们通常用于存储大量的数据,例如应用程序、固件或其他需要长期存储的信息。
通过允许通用存储单元包括芯片内外不同类型的存储资源,系统在内存管理方面更具灵活性,允许根据具体应用的需求选择合适的存储解决方案,平衡性能和容量的要求;通过同时支持芯片内部和外部存储资源,系统可以更好地平衡性能和功耗,例如,对于需要快速访问的数据,可以使用芯片内部的SRAM,而对于大容量的数据存储,可以利用芯片外部的存储资源。
在一个实施例中,为了使得系统能够更好地适应不同的场景,在待配置网表中,片内内存模块为一个或多个,取决于具体的设计需求。
在待配置网表中可以容纳一个或多个片内内存模块,这种设计允许根据具体的项目需求,动态地选择使用多个内存模块或只使用单个内存模块,而无需对整体系统进行大规模的修改;针对具体的设计需求来确定内存模块的数量,使得系统能够更好地适应不同的场景,例如,对于某些应用,可能需要更大的内存容量,因此可以选择使用多个片内内存模块,而在其他情况下,可能只需要较小的内存容量,因此只使用一个内存模块即可。
图1是一个实施例中内存建模网表处理方法的流程示意图。应该理解的是,虽然图1流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行;除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行;并且图1的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
基于上述方法,本申请实施例还公开一种网表处理装置。
参照图3,该装置包括以下模块:
待配置网表读取模块301,用于读取待配置网表,待配置网表包括片内内存模块,片内内存模块包括原端口;
镜像端口创建模块302,当待执行单元连接到片内内存模块的原端口时,用于创建与原端口对应的镜像端口,将镜像端口连接到原端口;
待替换网表读取模块303,用于读取并实例化待替换网表,将实例化之后的待替换网表确定为Arbitrator模块;
Arbitrator连接模块304,用于基于镜像端口,将Arbitrator模块连接到片内内存模块;
配置完网表输出模块305,用于将待配置网表确定为配置完成网表,并输出配置完成网表。
在一个实施例中,镜像端口创建模块302,具体用于将镜像端口的输入端连接到原端口的输出端;将镜像端口的输出端连接到原端口的输入端。
在一个实施例中,待替换网表读取模块303,具体用于读取并识别待替换网表中的模块;将待替换网表中的模块配置在待配置网表的次顶层。
在一个实施例中,Arbitrator连接模块304,具体用于将Arbitrator模块的输入端连接到片内内存模块镜像端口的输出端;将Arbitrator模块的输出端连接到片内内存模块镜像端口的输入端。
在一个实施例中,Arbitrator连接模块304,具体用于通过预设的用户顶层端口,建立Arbitrator模块与通用存储单元的连接。
在一个实施例中,Arbitrator连接模块304,具体用于说明通用存储单元包括芯片内部的存储资源或芯片外部的存储资源。
在一个实施例中,待配置网表读取模块301,具体用于说明在待配置网表中,片内内存模块为一个或多个。
本申请实施例提供的网表处理装置,可以应用于如上述实施例中提供的内存建模网表处理方法,相关细节参考上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
需要说明的是:本申请实施例中提供的网表处理装置在进行网表处理时,仅以上述各功能模块/功能单元的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能模块/功能单元完成,即将网表处理装置的内部结构划分成不同的功能模块/功能单元,以完成以上描述的全部或者部分功能。另外,上述方法实施例提供的内存建模网表处理方法的实施方式与本实施例提供的网表处理装置的实施方式属于同一构思,本实施例提供的网表处理装置的具体实现过程详见上述方法实施例,这里不再赘述。
本申请实施例还公开一种计算机设备。
具体来说,如图4所示,该计算机设备可以是桌上型计算机、笔记本电脑、掌上电脑以及云端服务器等计算机设备。该计算机设备可以包括,但不限于,处理器和存储器。其中,处理器和存储器可以通过总线或者其他方式连接。其中,处理器可以为中央处理器(Central Processing Unit,CPU)。处理器还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、图形处理器(Graphics Processing Unit,GPU)、嵌入式神经网络处理器(Neural-network Processing Unit,NPU)或者其他专用的深度学习协处理器、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本申请上述实施方式中的方法对应的程序指令/模块。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施方式中的方法。存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储控制单元、至少一个功能所需要的应用程序;存储数据区可存储处理器所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本申请实施例还公开一种计算机可读存储介质。
具体来说,计算机可读存储介质用于存储计算机程序,计算机程序被处理器执行时,实现上述方法实施方式中的方法。本领域技术人员可以理解,实现本申请上述实施方式方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施方式的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;存储介质还可以包括上述种类的存储器的组合。
本具体实施例仅仅是对本发明的解释,其并不是对本发明的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本发明的权利要求范围内都受到专利法的保护。
Claims (10)
1.一种内存建模网表处理方法,其特征在于,所述方法应用于网表处理系统,所述网表处理系统包括待配置网表、待替换网表和待执行单元,所述方法包括:
读取所述待配置网表,所述待配置网表包括片内内存模块,所述片内内存模块包括原端口;
当所述待执行单元连接到所述片内内存模块的原端口时,创建与所述原端口对应的镜像端口,将所述镜像端口连接到所述原端口;
读取并实例化所述待替换网表,将实例化之后的所述待替换网表确定为Arbitrator模块;
基于所述镜像端口,将所述Arbitrator模块连接到所述片内内存模块;
将所述待配置网表确定为配置完成网表,并输出所述配置完成网表。
2.根据权利要求1所述的方法,其特征在于,所述将所述镜像端口连接到所述原端口包括:
将所述镜像端口的输入端连接到所述原端口的输出端;
将所述镜像端口的输出端连接到所述原端口的输入端。
3.根据权利要求1所述的方法,其特征在于,所述读取并实例化所述待替换网表包括:
读取并识别所述待替换网表中的模块;
将所述待替换网表中的模块配置在所述待配置网表的次顶层。
4.根据权利要求1所述的方法,其特征在于,所述将所述Arbitrator模块连接到所述片内内存模块包括:
将所述Arbitrator模块的输入端连接到所述片内内存模块镜像端口的输出端;
将所述Arbitrator模块的输出端连接到所述片内内存模块镜像端口的输入端。
5.根据权利要求1所述的方法,其特征在于,所述网表处理系统还包括通用存储单元,在所述将所述Arbitrator模块连接到所述片内内存模块之后,还包括:
通过预设的用户顶层端口,建立所述Arbitrator模块与所述通用存储单元的连接。
6.根据权利要求5所述的方法,其特征在于,所述通用存储单元包括芯片内部的存储资源或芯片外部的存储资源。
7.根据权利要求1所述的方法,其特征在于,在所述待配置网表中,所述片内内存模块为一个或多个。
8.一种内存建模网表处理装置,其特征在于,所述装置应用于网表处理系统,所述网表处理系统包括待配置网表、待替换网表和待执行单元,所述装置包括:
待配置网表读取模块(301),用于读取所述待配置网表,所述待配置网表包括片内内存模块,所述片内内存模块包括原端口;
镜像端口创建模块(302),当所述待执行单元连接到所述片内内存模块的原端口时,用于创建与所述原端口对应的镜像端口,将所述镜像端口连接到所述原端口;
待替换网表读取模块(303),用于读取并实例化所述待替换网表,将实例化之后的所述待替换网表确定为Arbitrator模块;
Arbitrator连接模块(304),用于基于所述镜像端口,将所述Arbitrator模块连接到所述片内内存模块;
配置完网表输出模块(305),用于将所述待配置网表确定为配置完成网表,并输出所述配置完成网表。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行如权利要求1至7中任一种方法的计算机程序。
10.一种计算机可读存储介质,其特征在于,存储有能够被处理器加载并执行如权利要求1至7中任一种方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311678249.3A CN117669437A (zh) | 2023-12-07 | 2023-12-07 | 一种内存建模网表处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311678249.3A CN117669437A (zh) | 2023-12-07 | 2023-12-07 | 一种内存建模网表处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117669437A true CN117669437A (zh) | 2024-03-08 |
Family
ID=90078468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311678249.3A Pending CN117669437A (zh) | 2023-12-07 | 2023-12-07 | 一种内存建模网表处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117669437A (zh) |
-
2023
- 2023-12-07 CN CN202311678249.3A patent/CN117669437A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9052957B2 (en) | Method and system for conducting intensive multitask and multiflow calculation in real-time | |
CN104346317B (zh) | 共享资源访问方法和装置 | |
US11093388B2 (en) | Method, apparatus, device and storage medium for accessing static random access memory | |
CN114296638B (zh) | 存算一体化固态硬盘控制器及相关装置、方法 | |
CN104104705B (zh) | 分布式存储系统的接入方法和设备 | |
CN105408875A (zh) | 在存储器接口上的分布式过程执行和文件系统 | |
US8681166B1 (en) | System and method for efficient resource management of a signal flow programmed digital signal processor code | |
WO2023124304A1 (zh) | 芯片的缓存系统、数据处理方法、设备、存储介质及芯片 | |
CN111857669A (zh) | 软硬件解耦合软件化雷达系统、实时性设计方法和服务器 | |
CN109314103B (zh) | 用于远程现场可编程门阵列处理的方法和装置 | |
CN117591450B (zh) | 一种数据处理系统、方法、设备及介质 | |
CN113678104A (zh) | 设备内符号数据移动系统 | |
US12056382B2 (en) | Inference in memory | |
CN117669437A (zh) | 一种内存建模网表处理方法、装置、设备及存储介质 | |
CN115994115A (zh) | 芯片控制方法、芯片组及电子设备 | |
US20220342835A1 (en) | Method and apparatus for disaggregation of computing resources | |
CN112860595B (zh) | Pci设备或pcie设备、数据存取方法及相关组件 | |
WO2021139733A1 (zh) | 一种对内存进行分配的方法、设备及计算机可读存储介质 | |
CN113392052B (zh) | 一种基于四路服务器的bios系统、方法及计算机可读存储介质 | |
CN112486274B (zh) | 计算机扩展卡及计算机系统 | |
CN112564924B (zh) | 计算机扩展卡及区块链终端设备 | |
CN110502190B (zh) | 文件读写方法 | |
CN102591820B (zh) | 一种idma总线桥装置 | |
CN117093158B (zh) | 分布式存储系统的存储节点、系统、数据处理方法及装置 | |
CN116069451B (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 |