CN116306410B - 基于紧耦合内存的信息打印方法及装置、硬件验证方法 - Google Patents

基于紧耦合内存的信息打印方法及装置、硬件验证方法 Download PDF

Info

Publication number
CN116306410B
CN116306410B CN202310577480.7A CN202310577480A CN116306410B CN 116306410 B CN116306410 B CN 116306410B CN 202310577480 A CN202310577480 A CN 202310577480A CN 116306410 B CN116306410 B CN 116306410B
Authority
CN
China
Prior art keywords
program data
tightly coupled
address space
target program
coupled memory
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.)
Active
Application number
CN202310577480.7A
Other languages
English (en)
Other versions
CN116306410A (zh
Inventor
窦枭栋
赵磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Semidrive Technology Co Ltd
Original Assignee
Nanjing Semidrive Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Semidrive Technology Co Ltd filed Critical Nanjing Semidrive Technology Co Ltd
Priority to CN202310577480.7A priority Critical patent/CN116306410B/zh
Publication of CN116306410A publication Critical patent/CN116306410A/zh
Application granted granted Critical
Publication of CN116306410B publication Critical patent/CN116306410B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/02System on chip [SoC] design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1024Latency reduction
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供了一种基于紧耦合内存的信息打印方法及装置、硬件验证方法,所述方法包括:在待验SOC硬件处于仿真环境的情况下,将目标程序数据存储至所述待验SOC硬件的紧耦合内存的指定地址空间;当通过监视器检测到所述目标程序数据对应的数据结束标志时,通过后门访问所述指定地址空间,读取所述目标程序数据;将所述目标程序数据打印至目标文件;其中,所述指定地址空间用于存储打印相关信息,所述目标程序数据为所述打印相关信息之一,应用本方法,能够实现仿真环境中信息的快速打印。

Description

基于紧耦合内存的信息打印方法及装置、硬件验证方法
技术领域
本申请涉及信息打印技术领域,尤其涉及一种基于紧耦合内存的信息打印方法及装置、硬件验证方法。
背景技术
随着系统级芯片设计的复杂性在不断增加,软件确认的成本正在快速增长,因为除了硬件本身的功能,还有很多效能、电源等都需要用操作系统或更多软件去协同验证。
在进行芯片仿真过程中,基于芯片自身硬件布局,在进行信息打印的过程中,需要将数据信息存放到存储模块(memory)中,由中央控制器(CPU)读取memory中的数据信息后,将数据信息通过AXI总线发送至FABRIC,在通过FABRIC将数据信息传送到APB总线上,通过监视器监视APB总线上的数据信息,当检测到对应的打印标志后,监视器将数据信息打印出去。由于APB总线是一种适用于低速协议的总线,信息传输效率较低,该打印方法受限于APB总线速度和多级信息传递,且需要占用SOC总线带宽,不仅所消耗的时间较长,还会导致SOC总线仿真性能有所下降。
发明内容
本申请实施例提供了一种基于紧耦合内存的信息打印方法及装置、硬件验证方法,以至少解决现有技术中存在的以上技术问题。
根据本申请实施例的第一方面,提供了一种基于紧耦合内存的信息打印方法,所述方法包括:在待验SOC硬件处于仿真环境的情况下,将目标程序数据存储至所述待验SOC硬件的紧耦合内存的指定地址空间;当通过监视器检测到所述目标程序数据对应的数据结束标志时,通过后门访问所述指定地址空间,读取所述目标程序数据;将所述目标程序数据打印至目标文件;其中,所述指定地址空间用于存储打印相关信息,所述目标程序数据为所述打印相关信息之一。
在一可实施方式中,所述待验SOC硬件为中央处理器,所述中央处理器具有至少一个控制核心,所述紧耦合内存设置于至少一个控制核心内。
在一可实施方式中,所述紧耦合内存的访问速度的最高限值为500MHz。
在一可实施方式中,所述将目标程序数据存储至所述待验SOC硬件的紧耦合内存的指定地址空间,包括:获取来自用户的所述目标程序数据;将所述目标程序数据搬运至所述紧耦合内存的指定地址空间;若所述指定地址空间存在有其他程序数据,通过所述目标程序数据对所述其他程序数据进行覆盖;其中,所述其他程序数据同样为所述打印相关信息之一。
在一可实施方式中,所述指定地址空间包括第一地址空间和第二地址空间;所述将所述目标程序数据搬运至所述紧耦合内存的指定地址空间,包括:将所述目标程序数据搬运至所述第一地址空间;当搬运完成所述目标程序数据时,在所述第二地址空间写入所述数据结束标志。
在一可实施方式中,所述将所述目标程序数据搬运至所述紧耦合内存的指定地址空间,包括:通过内存复制函数将所述目标程序数据搬运至所述紧耦合内存的指定地址空间。
在一可实施方式中,所述将所述目标程序数据打印至目标文件,包括:调用仿真环境信息打印函数将所述目标程序数据打印至目标文件。
在一可实施方式中,所述方法还包括:利用所述仿真环境,设置所述监视器与紧耦合内存的后门访问路径。
根据本申请实施例的第二方面,提供了一种基于紧耦合内存的硬件验证方法,所述方法包括:将待验SOC硬件在仿真环境中运行;将目标程序数据存储至所述待验SOC硬件的紧耦合内存的指定地址空间;当通过监视器检测到所述目标程序数据对应的数据结束标志时,通过后门访问所述指定地址空间,读取所述目标程序数据;将所述目标程序数据打印至目标文件;其中,所述指定地址空间用于存储打印相关信息,所述目标程序数据为所述打印相关信息之一。
根据本申请实施例的第三方面,提供了一种基于紧耦合内存的信息打印装置,所述装置包括:存储模块,用于在待验SOC硬件处于仿真环境的情况下,将目标程序数据存储至所述待验SOC硬件的紧耦合内存的指定地址空间;读取模块,用于当通过监视器检测到所述目标程序数据对应的数据结束标志时,通过后门访问所述指定地址空间,读取所述目标程序数据;打印模块,用于将所述目标程序数据打印至目标文件;其中,所述指定地址空间用于存储打印相关信息,所述目标程序数据为所述打印相关信息之一。
在一可实施方式中,所述待验SOC硬件为中央处理器,所述中央处理器具有至少一个控制核心,所述紧耦合内存设置于至少一个控制核心内。
在一可实施方式中,所述紧耦合内存的访问速度的最高限值为500MHz。
在一可实施方式中,所述存储模块,包括:获取子模块,用于获取来自用户的所述目标程序数据;搬运子模块,用于将所述目标程序数据搬运至所述紧耦合内存的指定地址空间;覆盖子模块,用于若所述指定地址空间存在有其他程序数据,通过所述目标程序数据对所述其他程序数据进行覆盖;其中,所述其他程序数据同样为所述打印相关信息之一。
在一可实施方式中,所述指定地址空间包括第一地址空间和第二地址空间;所述搬运子模块,包括:将所述目标程序数据搬运至所述第一地址空间;当搬运完成所述目标程序数据时,在所述第二地址空间写入所述数据结束标志。
在一可实施方式中,所述搬运子模块,包括:通过内存复制函数将所述目标程序数据搬运至所述紧耦合内存的指定地址空间。
在一可实施方式中,所述打印模块,包括:调用仿真环境信息打印函数将所述目标程序数据打印至目标文件。
在一可实施方式中,所述装置还包括:设置模块,用于利用所述仿真环境,设置所述监视器与紧耦合内存的后门访问路径。
根据本申请实施例的第四方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请所述的方法。
根据本申请实施例的第五方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请所述的方法。
本申请实施例提供的一种基于紧耦合内存的信息打印方法及装置、硬件验证方法,通过将需要打印的目标程序数据存储到紧耦合内存中,当监视器检测到TCM中的数据结束标志时,通过后门读取TCM中存储的目标程序数据,并将目标程序数据通过打印存储至目标文件中,本方法无需经过过多的逻辑,且通过后门读取目标程序数据不会占用总线带宽,利用TCM具有高读写速率的特点,加快了信息打印速度。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
通过参考附图阅读下文的详细描述,本申请示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本申请的若干实施方式,其中:
在附图中,相同或对应的标号表示相同或对应的部分。
图1示出了本申请实施例一种基于紧耦合内存的信息打印方法的实现流程示意图;
图2示出了本申请实施例一种基于紧耦合内存的信息打印方法的应用场景示意图;
图3示出了本申请实施例一种基于紧耦合内存的硬件验证方法的实现流程示意图;
图4示出了本申请实施例一种基于紧耦合内存的信息打印装置的实现模块示意图;
图5示出了本申请实施例一种电子设备的组成结构示意图。
具体实施方式
为使本申请的目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1示出了本申请实施例一种基于紧耦合内存的信息打印方法的实现流程示意图;图2示出了本申请实施例一种基于紧耦合内存的信息打印方法的应用场景示意图。
结合图1和图2,根据本申请实施例的第一方面,提供了一种基于紧耦合内存的信息打印方法,方法包括:操作101,在待验SOC硬件处于仿真环境的情况下,将目标程序数据存储至待验SOC硬件的紧耦合内存的指定地址空间;操作102,当通过监视器检测到目标程序数据对应的数据结束标志时,通过后门访问指定地址空间,读取目标程序数据;操作103,将目标程序数据打印至目标文件;其中,指定地址空间用于存储打印相关信息,目标程序数据为打印相关信息之一。
本申请实施例提供的一种信息打印方法,通过将需要打印的目标程序数据存储到紧耦合内存(TCM)中,当监视器检测到TCM中的数据结束标志时,通过后门读取TCM中存储的目标程序数据,并将目标程序数据通过打印存储至目标文件中,本方法无需进行多级信息路由,且通过后门读取目标程序数据不会占用总线带宽,利用TCM具有高读写速率的特点,加快了信息打印速度,以实现整体提高仿真测试速度的目的。本方法信息打印方法可以应用于仿真平台中,仿真平台可以为硬件仿真平台、软件仿真平台或软硬件结合仿真平台。仿真平台可以应用于进行芯片验证,进一步的,仿真平台用于对具有紧耦合内存的待验SOC硬件进行仿真测试。
在本方法操作101中,待验SOC硬件可以为中央处理器(CPU),中央处理器可以为单核处理器或多核处理器,多核处理器进一步可以选为同构多核和异构多核的其中一种。同构多核用于表征所有的控制核心(CORE)或CPU具有相同的架构,同构多核处理器中大多数由通用处理器核构成,每个核可以独立运行。异构多核由不同类型的多个单核心或多核心处理器构成,可以同时继承了通用处理器、DSP、FPGA、媒体处理器、网络处理器等中的至少两种。每个内核针对不同的需求设定的,从而提高应用的计算性能或实时性能。待验SOC硬件的紧耦合内存可以设置于至少一个控制核心内。紧耦合内存处于CORE内,紧耦合内存是CORE内类似于CACHE的RAM,其速率和CACHE一致,从而保证了在进行信息打印过程中,具有较高的读写速率。
信息打印过程中的最高打印速率与紧耦合内存的访问速度相关,例如,紧耦合内存的访问速度的最高限值为500MHz,进而在信息打印过程中的最高打印速率也可以达到500MHz。基于此,本申请可以选择访问速度的最低限值为600MHz的紧耦合内存的访问速度,从而将信息打印速度控制在600~500MHz之间。
基于实际需求,同一待验SOC硬件可以设置多个紧耦合内存,利用多个紧耦合内存,本申请可以设置对应多个紧耦合内存多个打印器,且每个紧耦合内存均具有特定的map地址,不同的紧耦合内存的map地址不同,使监视器可以利用map地址对多个紧耦合内存进行区分,并同时打印多个紧耦合内存中的目标程序数据。为避免目标程序数据被其他非打印类数据覆盖,紧耦合内存可以预留指定地址空间,指定地址空间只用于存储打印相关信息,不允许其他功能使用该地址空间,从而能够保证目标程序数据具有足够的存储空间。目标程序数据可以为仿真过程中需要使用的软件信息。在完成目标程序数据的搬运之后,本申请实施例的指定地址空间还需要写入数据结束标志,数据结束标志用于表征目标程序数据已经写入指定地址空间中。
在本方法操作102中,监视器用于后门访问指定地址空间,以检测指定地址空间内是否具有数据结束标志。后门访问可以通过仿真平台在预设监视器与TCM中指定地址空间的访问路径实现,从而使监视器无需通过总线就能够对TCM中指定地址空间中的数据进行读写操作。
在操作102之前,本方法还包括:利用仿真环境,设置监视器与紧耦合内存的后门访问路径。后门访问可以通过寄存器模型实现设置对应的访问路径实现。后门访问可以通过定义虚拟接口关联监视器与TCM的访问路径,直接读取目标程序数据,不消耗仿真时间,零时刻响应。
在本方法操作103中,当监视器检测到指定地址空间内具有数据结束标志时,可以调用打印函数将目标程序数据打印至目标文件,以完成仿真环境中的信息打印操作。
在一可实施方式中,操作101,将目标程序数据存储至待验SOC硬件的紧耦合内存的指定地址空间,包括:首先,获取来自用户的目标程序数据;然后,将目标程序数据搬运至紧耦合内存的指定地址空间;再后,若指定地址空间存在有其他程序数据,通过目标程序数据对其他程序数据进行覆盖;其中,其他程序数据同样为打印相关信息之一。
基于TCM进行数据打印,需要先打开TCM使能开关,通过初始化函数对TCM进行初始化配置。
在仿真平台中,用户会根据仿真过程输入多个程序数据,在仿真过程中,随着仿真流程的推进,平台触发对应条件确定当前轮次的目标程序数据,并将当前轮次的目标程序数据搬运至紧耦合内存的指定地址空间,当指定地址空间已经存在有上一轮次目标程序数据的情况下,平台直接通过当前轮次目标程序数据对上一轮次目标程序数据进行覆盖,无需对指定地址空间进行数据清零操作,通过该方式,在进行多轮次的信息打印过程中,每一次搬运目标程序数据均不需要对上一轮次数据进行清零,简化了数据搬运流程。
在一可实施方式中,指定地址空间包括第一地址空间和第二地址空间;将目标程序数据搬运至紧耦合内存的指定地址空间,包括:将目标程序数据搬运至第一地址空间;当搬运完成目标程序数据时,在第二地址空间写入数据结束标志。
指定地址空间的第一地址空间可以选择为:“0x194_FC00~0x194_FDFF”,第一地址空间,通过保留512Byte大小的地址空间存储目标程序数据。第二地址空间可以选择为“0x194_FE00~0x194_FFFF”。第二地址空间,通过保留512Byte大小的地址空间存储数据结束标志。
在一可实施方式中,将目标程序数据搬运至紧耦合内存的指定地址空间,包括:通过内存复制函数将目标程序数据搬运至紧耦合内存的指定地址空间。
本申请可以使用memcpy函数将目标程序从原始地址空间数据搬运至指定地址空间,且如果指定地址空间存在原始数据,memcpy函数可以直接对指定地址空间进行覆盖,不需要再进行数据清零操作,可以理解的是,memcpy函数可以同时覆盖掉上一轮次的数据结束标志,在当前轮次目标程序数据搬运完成后,向第二地址空间写入当前轮次的数据结束标志。
在一可实施方式中,将目标程序数据打印至目标文件,包括:调用仿真环境信息打印函数将目标程序数据打印至目标文件。
在监视器检测到数据结束标志时,可以通过预先设置的后门路径读取TCM的指定地址空间中的目标程序数据,并调用仿真环境信息打印函数将目标程序数据打印至目标文件。具体可以选择UVM_INFO语句进行信息打印,UVM_INFO语句进行信息打印时,不会消耗仿真时的CPU处理时间。
综上可知,应用本方法,不仅能够缩短信息打印时间,还能够避免信息打印占用总线资源或消耗CPU处理时间,避免总线资源被占用导致总线仿真性能下降,避免CPU处理时间被消耗导致CPU仿真性能下降。
图3示出了本申请实施例一种基于紧耦合内存的硬件验证方法的实现流程示意图。
参见图3,根据本申请实施例的第二方面,提供了一种基于紧耦合内存的硬件验证方法,方法包括:操作301,将待验SOC硬件在仿真环境中运行;操作302,将目标程序数据存储至待验SOC硬件的紧耦合内存的指定地址空间;操作303,当通过监视器检测到目标程序数据对应的数据结束标志时,通过后门访问指定地址空间,读取目标程序数据;操作304,将目标程序数据打印至目标文件;其中,指定地址空间用于存储打印相关信息,目标程序数据为打印相关信息之一。
本申请实施例提供的一种硬件验证方法,在硬件仿真环境中,通过将需要打印的目标程序数据存储到紧耦合内存(TCM)中,当监视器检测到TCM中的数据结束标志时,通过后门读取TCM中存储的目标程序数据,并将目标程序数据通过打印存储至目标文件中,本方法不需要进行多级信息路由,且通过后门读取目标程序数据不会占用总线带宽,利用TCM具有高读写速率的特点,加快了信息打印速度,以实现整体提高仿真测试速度的目的。
图4示出了本申请实施例一种基于紧耦合内存的信息打印装置的实现模块示意图。
参见图4,根据本申请实施例的第三方面,提供了一种基于紧耦合内存的信息打印装置,装置包括:存储模块401,用于在待验SOC硬件处于仿真环境的情况下,将目标程序数据存储至待验SOC硬件的紧耦合内存的指定地址空间;读取模块402,用于当通过监视器检测到目标程序数据对应的数据结束标志时,通过后门访问指定地址空间,读取目标程序数据;打印模块403,用于将目标程序数据打印至目标文件;其中,指定地址空间用于存储打印相关信息,目标程序数据为打印相关信息之一。
在一可实施方式中,待验SOC硬件为中央处理器,中央处理器具有至少一个控制核心,紧耦合内存设置于至少一个控制核心内。
在一可实施方式中,紧耦合内存的访问速度的最高限值为500MHz。
在一可实施方式中,存储模块401,包括:获取子模块4011,用于获取来自用户的目标程序数据;搬运子模块4012,用于将目标程序数据搬运至紧耦合内存的指定地址空间;覆盖子模块4013,用于若指定地址空间存在有其他程序数据,通过目标程序数据对其他程序数据进行覆盖;其中,其他程序数据同样为打印相关信息之一。
在一可实施方式中,指定地址空间包括第一地址空间和第二地址空间;搬运子模块4012,包括:将目标程序数据搬运至第一地址空间;当搬运完成目标程序数据时,在第二地址空间写入数据结束标志。
在一可实施方式中,搬运子模块4012,包括:通过内存复制函数将目标程序数据搬运至紧耦合内存的指定地址空间。
在一可实施方式中,打印模块403,包括:调用仿真环境信息打印函数将目标程序数据打印至目标文件。
在一可实施方式中,装置还包括:设置模块404,用于利用仿真环境,设置监视器与紧耦合内存的后门访问路径。
根据本申请实施例的第四方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本申请的方法。
根据本申请实施例的第五方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行本申请的方法。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
图5示出了可以用来实施本申请的实施例的示例电子设备500的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图5所示,设备500包括计算单元501,其可以根据存储在只读存储器(ROM)502中的计算机程序或者从存储单元508加载到随机访问存储器(RAM)503中的计算机程序,来执行各种适当的动作和处理。在RAM 503中,还可存储设备500操作所需的各种程序和数据。计算单元501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
设备500中的多个部件连接至I/O接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元501执行上文所描述的各个方法和处理,例如一种基于紧耦合内存的信息打印方法。例如,在一些实施例中,一种基于紧耦合内存的信息打印方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由ROM 502和/或通信单元509而被载入和/或安装到设备500上。当计算机程序加载到RAM 503并由计算单元501执行时,可以执行上文描述的一种基于紧耦合内存的信息打印方法的一个或多个步骤。备选地,在其他实施例中,计算单元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行一种基于紧耦合内存的信息打印方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(system on chip,SOC)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种基于紧耦合内存的信息打印方法,其特征在于,所述方法包括:
在待验SOC硬件处于软件仿真环境的情况下,将目标程序数据存储至所述待验SOC硬件的紧耦合内存的指定地址空间;所述待验SOC硬件具有多个紧耦合内存,不同的紧耦合内存的map地址不同;所述待验SOC硬件为中央处理器,所述中央处理器具有至少一个控制核心,所述紧耦合内存设置于至少一个控制核心内;所述指定地址空间用于存储打印相关信息,所述目标程序数据为所述打印相关信息之一;
利用所述仿真环境,设置监视器与紧耦合内存的后门访问路径;后门访问路径为监视器与紧耦合内存中指定地址空间的直接访问路径;
当通过监视器检测到所述指定地址空间中目标程序数据对应的数据结束标志时,基于所述后门访问路径通过后门访问所述指定地址空间,读取所述目标程序数据,以使监视器无需通过总线就能够对紧耦合内存中指定地址空间中的数据进行读写操作;
监视器利用所述map地址对多个紧耦合内存进行区分,将所述目标程序数据打印至目标文件。
2.根据权利要求1所述的方法,其特征在于,所述紧耦合内存的访问速度的最高限值为500MHz。
3.根据权利要求1所述的方法,其特征在于,所述将目标程序数据存储至所述待验SOC硬件的紧耦合内存的指定地址空间,包括:
获取来自用户的所述目标程序数据;
将所述目标程序数据搬运至所述紧耦合内存的指定地址空间;
若所述指定地址空间存在有其他程序数据,通过所述目标程序数据对所述其他程序数据进行覆盖;
其中,所述其他程序数据同样为所述打印相关信息之一。
4.根据权利要求1所述的方法,其特征在于,所述指定地址空间包括第一地址空间和第二地址空间;
所述将所述目标程序数据搬运至所述紧耦合内存的指定地址空间,包括:
将所述目标程序数据搬运至所述第一地址空间;
当搬运完成所述目标程序数据时,在所述第二地址空间写入所述数据结束标志。
5.根据权利要求4所述的方法,其特征在于,所述将所述目标程序数据搬运至所述紧耦合内存的指定地址空间,包括:
通过内存复制函数将所述目标程序数据搬运至所述紧耦合内存的指定地址空间。
6.根据权利要求1所述的方法,其特征在于,所述将所述目标程序数据打印至目标文件,包括:
调用仿真环境信息打印函数将所述目标程序数据打印至目标文件。
7.一种基于紧耦合内存的硬件验证方法,其特征在于,所述方法包括:
将待验SOC硬件在软件仿真环境中运行;
将目标程序数据存储至所述待验SOC硬件的紧耦合内存的指定地址空间;所述待验SOC硬件具有多个紧耦合内存,不同的紧耦合内存的map地址不同;所述待验SOC硬件为中央处理器,所述中央处理器具有至少一个控制核心,所述紧耦合内存设置于至少一个控制核心内;所述指定地址空间用于存储打印相关信息,所述目标程序数据为所述打印相关信息之一;
利用所述仿真环境,设置监视器与紧耦合内存的后门访问路径;后门访问路径为监视器与紧耦合内存中指定地址空间的直接访问路径;
当通过监视器检测到所述目标程序数据对应的数据结束标志时,基于所述后门访问路径通过后门访问所述指定地址空间,读取所述目标程序数据,以使监视器无需通过总线就能够对紧耦合内存中指定地址空间中的数据进行读写操作;
监视器利用所述map地址对多个紧耦合内存进行区分,将所述目标程序数据打印至目标文件。
8.一种基于紧耦合内存的信息打印装置,其特征在于,所述装置包括:
存储模块,用于在待验SOC硬件处于软件仿真环境的情况下,将目标程序数据存储至所述待验SOC硬件的紧耦合内存的指定地址空间;所述待验SOC硬件具有多个紧耦合内存,不同的紧耦合内存的map地址不同;所述待验SOC硬件为中央处理器,所述中央处理器具有至少一个控制核心,所述紧耦合内存设置于至少一个控制核心内;所述指定地址空间用于存储打印相关信息,所述目标程序数据为所述打印相关信息之一;
设置模块,用于利用所述仿真环境,设置监视器与紧耦合内存的后门访问路径;后门访问路径为监视器与紧耦合内存中指定地址空间的直接访问路径;
读取模块,用于当通过监视器检测到所述指定地址空间中目标程序数据对应的数据结束标志时,基于所述后门访问路径通过后门访问所述指定地址空间,读取所述目标程序数据,以使监视器无需通过总线就能够对紧耦合内存中指定地址空间中的数据进行读写操作;
打印模块,用于监视器利用所述map地址对多个紧耦合内存进行区分,将所述目标程序数据打印至目标文件。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的基于紧耦合内存的信息打印方法或权利要求7所述的基于紧耦合内存的硬件验证方法。
10.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使计算机执行根据权利要求1-6中任一项所述的基于紧耦合内存的信息打印方法或权利要求7所述的基于紧耦合内存的硬件验证方法。
CN202310577480.7A 2023-05-22 2023-05-22 基于紧耦合内存的信息打印方法及装置、硬件验证方法 Active CN116306410B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310577480.7A CN116306410B (zh) 2023-05-22 2023-05-22 基于紧耦合内存的信息打印方法及装置、硬件验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310577480.7A CN116306410B (zh) 2023-05-22 2023-05-22 基于紧耦合内存的信息打印方法及装置、硬件验证方法

Publications (2)

Publication Number Publication Date
CN116306410A CN116306410A (zh) 2023-06-23
CN116306410B true CN116306410B (zh) 2023-12-15

Family

ID=86822530

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310577480.7A Active CN116306410B (zh) 2023-05-22 2023-05-22 基于紧耦合内存的信息打印方法及装置、硬件验证方法

Country Status (1)

Country Link
CN (1) CN116306410B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101132919A (zh) * 2005-09-29 2008-02-27 兄弟工业株式会社 墨盒、以及具有该墨盒和喷墨打印设备的系统
CN107797846A (zh) * 2017-09-26 2018-03-13 记忆科技(深圳)有限公司 一种Soc芯片验证方法
CN113468010A (zh) * 2021-09-02 2021-10-01 湖北芯擎科技有限公司 文件处理方法、装置、电子设备和计算机可读存储介质
CN114325333A (zh) * 2021-12-30 2022-04-12 江苏集萃智能集成电路设计技术研究所有限公司 一种高效率规范化的soc系统级验证方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101132919A (zh) * 2005-09-29 2008-02-27 兄弟工业株式会社 墨盒、以及具有该墨盒和喷墨打印设备的系统
CN107797846A (zh) * 2017-09-26 2018-03-13 记忆科技(深圳)有限公司 一种Soc芯片验证方法
CN113468010A (zh) * 2021-09-02 2021-10-01 湖北芯擎科技有限公司 文件处理方法、装置、电子设备和计算机可读存储介质
CN114325333A (zh) * 2021-12-30 2022-04-12 江苏集萃智能集成电路设计技术研究所有限公司 一种高效率规范化的soc系统级验证方法及装置

Also Published As

Publication number Publication date
CN116306410A (zh) 2023-06-23

Similar Documents

Publication Publication Date Title
US7809918B1 (en) Method, apparatus, and computer-readable medium for providing physical memory management functions
CN105335309B (zh) 一种数据传输方法及计算机
US20200050481A1 (en) Computing Method Applied to Artificial Intelligence Chip, and Artificial Intelligence Chip
CN110825435B (zh) 用于处理数据的方法和装置
CN116662038A (zh) 基于共享内存的工业信息检测方法、装置、设备及介质
CN114765051A (zh) 内存测试方法及装置、可读存储介质、电子设备
US8996834B2 (en) Memory class based heap partitioning
CN104915302B (zh) 数据传输处理方法和数据传输器
CN116306408B (zh) 片上系统soc的验证环境确定方法、装置、设备和存储介质
CN116594922B (zh) 一种数据访问电路、方法及系统级芯片
CN116306410B (zh) 基于紧耦合内存的信息打印方法及装置、硬件验证方法
CN117236236A (zh) 一种芯片设计数据管理方法、装置、电子设备及存储介质
US9003364B2 (en) Overriding system attributes and function returns in a software subsystem
CN116185670B (zh) 内存间的数据交换方法、装置、电子设备及存储介质
CN115858432B (zh) 一种访问方法、装置、电子设备及可读存储介质
CN115617732B (zh) Apb总线结构、片上系统、车辆及访问方法
CN115080120B (zh) 寄存器的验证方法、装置、设备和介质
CN116431561B (zh) 基于异构众核加速卡的数据同步方法、装置、设备及介质
CN116579914B (zh) 一种图形处理器引擎执行方法、装置、电子设备及存储介质
CN117709255B (zh) 间接访问寄存器的测试方法、装置、设备及介质
CN118689660A (zh) 动态显示管理信息的方法、设备、介质及计算机程序产品
CN116974957A (zh) 系统保护电路、芯片系统、复位方法、设备及存储介质
US7039798B2 (en) Method and apparatus to enable cross platform configuration
CN117555650A (zh) 虚拟机间通信的方法、装置、电子设备及存储介质
CN116643700A (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
GR01 Patent grant
GR01 Patent grant