CN111427817B - 一种amp***双核共用i2c接口的方法、存储介质及智能终端 - Google Patents

一种amp***双核共用i2c接口的方法、存储介质及智能终端 Download PDF

Info

Publication number
CN111427817B
CN111427817B CN202010209680.3A CN202010209680A CN111427817B CN 111427817 B CN111427817 B CN 111427817B CN 202010209680 A CN202010209680 A CN 202010209680A CN 111427817 B CN111427817 B CN 111427817B
Authority
CN
China
Prior art keywords
core
interface
slave
i2cswitch
master
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
CN202010209680.3A
Other languages
English (en)
Other versions
CN111427817A (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.)
Shenzhen Genew Technologies Co Ltd
Original Assignee
Shenzhen Genew Technologies 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 Shenzhen Genew Technologies Co Ltd filed Critical Shenzhen Genew Technologies Co Ltd
Priority to CN202010209680.3A priority Critical patent/CN111427817B/zh
Publication of CN111427817A publication Critical patent/CN111427817A/zh
Application granted granted Critical
Publication of CN111427817B publication Critical patent/CN111427817B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Transfer Systems (AREA)
  • Multi Processors (AREA)

Abstract

本发明公开一种双核AMP***共用I2C接口的方法、存储介质及智能终端,其中,所述方法包括步骤:将I2C接口的驱动设置在AMP***的主核上;对所述AMP***内预设的全局变量值m_i2cSwitch进行实时监测,若所述全局变量值m_i2cSwitch=0,则标志所述主核直接访问所述I2C接口;若所述全局变量值m_i2cSwitch=1,则所述主核接收从核的I2C命令请求,并发起对I2C接口的访问并将结果反馈给所述从核。本发明在实现AMP***双核共用I2C接口的时候不需要拷贝多次内存,且其AMP***运行性能稳定且。

Description

一种AMP***双核共用I2C接口的方法、存储介质及智能终端
技术领域
本发明涉及计算机领域,特别涉及一种AMP***双核共用I2C接口的方法、存储介质及智能终端。
背景技术
在嵌入式多核***领域,存在两种技术,一是AMP(Asymmetric Multi-Processing)非对称多处理,另外一种是SMP(Symmetric Multi Processing)对称多处理。SMP***上的每个CPU共享***所有资源,包括串口在内,SMP***只要一个控制台就够了。而AMP每个CPU有独立的运行代码,任务的调度也是独立的,对整个***资源的访问也是互斥的,每个CPU上运行的操作***(OS)甚至完全不一样。
一个硬件CPU上的两个内核,各自运行自己的操作***和应用软件。I2C接口在嵌入式CPU上广泛使用,一般用来访问实时时间芯片(RTC),温度传感器,EEPROM,其他I2C协议的专用芯片。一个I2C主设备可以访问多个从设备,只需不同的I2C设备地址即可,如图1所示。
在双核AMP***上,为了CPU负载均衡,对I2C接口的多个从设备访问也会分工,例如主核CPU访问RTC芯片,从核CPU访问EERPOM(带电可擦可编程只读存储器)芯片。但是I2C接口是独享设备,不可能双核CPU都利用其访问从设备,这样没有互斥会造成I2C时序混乱,主从核访问都会失败。
为了解决AMP下两个CPU内核访问不同I2C外设的问题,人们通常用到的方法是主核直接控制I2C接口,从核只能通过主核间接访问,并将访问的结果通过主从消息反馈给从核。这种方法,需要拷贝多次内存,性能较差。如图1所示,此种方法主核与从核均需要拷贝一次,才能将从核要写的数据传到主核并写入EERPOM,或者主核将EEPROM数据读出来,拷贝到主从核共享内存,从核再从共享内存拷贝到应用程序。还有一个明显的问题是,主从核共享内存大小非常有限,如果从核要读写入几十MB的FLASH数据,就要长时间占用主从核共享内存,其他应用可能会异常。
因此,现有技术还有待于改进和发展。
发明内容
鉴于上述现有技术的不足,本发明的目的在于提供一种AMP***双核共用I2C接口的方法、存储介质及智能终端,旨在解决现有技术在实现AMP***双核共用I2C接口的时候需要拷贝多次内存,导致AMP***运行性能较差且易出现运行异常的问题。
本发明的技术方案如下:
一种AMP***双核共用I2C接口的方法,其中,包括步骤:
将I2C接口的驱动设置在AMP***的主核上,所述AMP***包括主核和从核;
对所述AMP***内预设的全局变量值m_i2cSwitch进行实时监测,若所述全局变量值m_i2cSwitch=0,则标志所述主核直接访问所述I2C接口;若所述全局变量值m_i2cSwitch=1,则所述主核接收从核的I2C命令请求,并发起对I2C接口的访问并将结果反馈给所述从核。
所述AMP***双核共用I2C接口的方法,其中,若所述全局变量值m_i2cSwitch=1,则所述主核接收从核的I2C命令请求,并发起对I2C接口的访问并将结果反馈给所述从核的步骤包括:
预先在所述主核中创建一个用于接收所述从核I2C命令请求的任务;
若所述全局变量值m_i2cSwitch=1,则所述主核读取所述从核发出的I2C命令请求,并根据所述I2C命令请求发起对I2C接口的访问并将结果反馈给所述从核。
所述AMP***双核共用I2C接口的方法,其中,还包括步骤:
当所述从核写入内容至I2C接口时,对所述全局变量值m_i2cSwitch进行实时监测;
若监测到所述全局变量值m_i2cSwitch=0,则直接返回失败,禁止从核写入内容至I2C接口;
若监测到所述全局变量值m_i2cSwitch=1,则将从核的待写入内容发送给主核,通过所述主核将所述待写入内容写入所述I2C接口。
所述AMP***双核共用I2C接口的方法,其中,所述若监测到所述全局变量值m_i2cSwitch=1,则将从核的写入内容发送给主核,通过所述主核将所述待写入内容写入所述I2C接口的步骤包括:
若监测到所述全局变量值m_i2cSwitch=1,所述从核构造I2C写入命令并通过核间通讯将所述I2C写入命令发送给所述主核;
启动第一DMA通道将所述待写入内容从从核的发送缓冲区输送到主核的发送缓冲区;
所述主核执行所述I2C写入命令将所述从核的待写入内容写入所述I2C接口。
所述AMP***双核共用I2C接口的方法,其中,所述启动第一DMA通道将所述待写入内容从从核的发送缓冲区输送到主核的发送缓冲区的步骤之前还包括:
预先定义从核的发送缓冲区物理内存地址为volatile char*m_SlaverI2cTxBuf=1023M;从核的接收缓区物理内存地址为volatile char*m_SlaverI2cRxBuf=1023.5M;主核的发送缓冲区物理内存地址为volatile char*m_MasterI2cTxBuf=510M;主核的接收缓冲区物理内存地址为volatile char*m_MasterI2cRxBuf=510.5M。
所述AMP***双核共用I2C接口的方法,其中,还包括步骤:
当所述从核读取所述I2C接口的输入内容时,对所述全局变量值m_i2cSwitch进行实时监测;
若监测到所述全局变量值m_i2cSwitch=0,则直接返回失败,禁止从核读取所述I2C接口的输入内容;
若监测到所述全局变量值m_i2cSwitch=1,则通过主核将所述I2C接口的输入内容传输给所述从核。
所述AMP***共用I2C接口的方法,其中,所述若监测到所述全局变量值m_i2cSwitch=1,则通过主核将所述I2C接口的输入内容传输给所述从核的步骤包括:
若监测到所述全局变量值m_i2cSwitch=1,所述从核构造I2C读取命令并通过核间通讯将所述I2C读取命令发送给所述主核;
所述主核执行所述I2C读取命令,通过第二DMA通道将所述I2C接口的输入内容从主核的接收缓冲区输送到从核的接收缓冲区。
一种存储介质,其中,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现本发明所述双核AMP***共用I2C接口的方法中的步骤。
一种智能终端,其中,包括处理器、存储器及通信总线;所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述通信总线实现处理器和存储器之间的连接通信;
所述处理器执行所述计算机可读程序时实现本发明所述双核AMP***共用I2C接口的方法中的步骤。
所述的智能终端,其中,所述智能终端为计算机、手机和平板中的一种或多种。
有益效果:本发明提供一种AMP***双核共用I2C接口的方法,通过将I2C接口的驱动设置在AMP***的主核上;对所述AMP***内预设的全局变量值m_i2cSwitch进行实时监测,若所述全局变量值m_i2cSwitch=0,则标志所述主核直接访问所述I2C接口;若所述全局变量值m_i2cSwitch=1,则所述主核接收从核的I2C命令请求,并发起对I2C接口的访问并将结果反馈给所述从核。本发明在实现AMP***双核共用I2C接口的时候不需要拷贝多次内存,且其AMP***运行性能稳定且。
附图说明
图1为现有AMP***双核共用I2C接口的原理图。
图2为本发明一种AMP***双核共用I2C接口的方法较佳实施例的第一流程图。
图3为本发明AMP***双核共用I2C接口的原理图。
图4为一种AMP***双核共用I2C接口的方法较佳实施例的第二流程图。
图5为从核写EEPROM的流程图。
图6为从核读EEPROM的流程图。
图7为本发明一种智能终端的原理框图。
具体实施方式
本发明提供一种AMP***双核共用I2C接口的方法、存储介质及智能终端,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
请参阅图2,图2为本发明提供的一种AMP***双核共用I2C接口的方法较佳实施例的流程图,如图所示,其包括步骤:
S10、将I2C接口的驱动设置在AMP***的主核上,所述AMP***包括主核和从核;
S20、对所述AMP***内预设的全局变量值m_i2cSwitch进行实时监测,若所述全局变量值m_i2cSwitch=0,则标志所述主核直接访问所述I2C接口;若所述全局变量值m_i2cSwitch=1,则所述主核接收从核的I2C命令请求,并发起对I2C接口的访问并将结果反馈给所述从核。
具体来讲,如图3所示,以在所述I2C接口下面挂载EEPROM和RTC两个从设备为例,所述I2C接口的驱动设置在所述主核上,所述主核可以通过所述I2C接口直接访问所述EEPROM和RTC设备,所述从核不控制所述I2C接口,不能直接访问所述述EEPROM和RTC设备。本实施例将从核划分成两块固定地址的内容用于存放收发数据,同时这两块内存地址,主核是知道的,但是不能访问;同样将主核划分成两块固定地址的内存用于存放收发数据,同时这两块内存地址,从核是知道的,但是不能访问;主核划分两块固定地址的内存,用于存放收发数据。如果所述从核要写I2C设备,会通过第一DMA通道从核中的发送缓冲区的数据传递到主核的发送缓冲区;如果从核要读I2C设备,则所述主核将I2C读取的结果通过第二DMA通道传输给从核。本实施例预先在AMP***内设置一个全局变量m_i2cSwitch,通过对所述全局变量值m_i2cSwitch进行实时监测,若所述全局变量值m_i2cSwitch=0,则标志所述主核直接访问所述I2C接口;若所述全局变量值m_i2cSwitch=1,则所述主核接收从核的I2C命令请求,并发起对I2C接口的访问并将结果反馈给所述从核。
在一些具体的实施方式中,预先定义从核的发送缓冲区物理内存地址为volatilechar*m_SlaverI2cTxBuf=1023M;从核的接收缓区物理内存地址为volatile char*m_SlaverI2cRxBuf=1023.5M;主核的发送缓冲区物理内存地址为volatile char*m_MasterI2cTxBuf=510M;主核的接收缓冲区物理内存地址为volatile char*m_MasterI2cRxBuf=510.5M;设定所述接收缓冲区和发送缓冲区的最大长度为128字节。
在一些实施方式中,预先在所述主核中创建一个用于接收所述从核I2C命令请求的任务;若所述全局变量值m_i2cSwitch=1,则所述主核读取所述从核发出的I2C命令请求,并根据所述I2C命令请求发起对I2C接口的访问并将结果反馈给所述从核。具体来讲,如图4所示,每隔10毫秒对全局变量值m_i2cSwitch进行监测一次,所述如果m_i2cSwitch=0,则表示当前处理主核的I2C请求,从核的请求忽略掉;如果全局变量值m_i2cSwitch=1时,通过主从通讯接口,读取从核发来的I2C访问命令,如果收到了从核的I2C写入请求,则通过I2C_Write接口,将m_MasterI2cTxBuf缓冲区中数据写入EEPROM中,并通过主从通讯接口,发送I2C_Write的结果发送给从核;如果收到了从核的I2C读请求,则通过I2C_Read接口,将数据读取到m_MasterI2cRxBuf缓冲区中,通过第二DMA通道将m_MasterI2cRxBuf缓冲区中的数据传输给从核m_SlaverI2cRxBuf,并通过主从通讯接口,发送I2C_Read的结果发送给从核。
在一些实施方式中,当所述从核写入内容至I2C接口时,对所述全局变量值m_i2cSwitch进行实时监测;若监测到所述全局变量值m_i2cSwitch=0,则直接返回失败,禁止从核写入内容至I2C接口;若监测到所述全局变量值m_i2cSwitch=1,所述从核构造I2C写入命令并通过核间通讯将所述I2C写入命令发送给所述主核;启动第一DMA通道将所述待写入内容从从核的发送缓冲区输送到主核的发送缓冲区;所述主核执行所述I2C写入命令将所述从核的待写入内容写入所述I2C接口。
具体来讲,如图5所示,当所述从核需要写入内容至EEPROM时,对所述全局变量值m_i2cSwitch进行实时监测,如果m_i2cSwitch=0,表示I2C驱动在被主核使用,直接返回失败;若监测到所述全局变量值m_i2cSwitch=1,则所述从核构造I2C写入命令,包含EERPOM的I2C设备地址,该命令和实际使用的芯片有关系,命令的内容和个数是不尽相同的,接着用核间通讯将该所述I2C写入命令发送给主核,将要写入EEPROM的内容先放到从核的发送缓冲区中,然后设置所述第一DMA通道的参数,通过第一DMA通道将所述待写入内容输送的主核的发送缓冲区,所述主核执行I2C写入命令后,将执行的结果通过主从通讯发送给从核,返回I2C写结果。
在一些实施方式中,当所述从核读取所述I2C接口的输入内容时,对所述全局变量值m_i2cSwitch进行实时监测;若监测到所述全局变量值m_i2cSwitch=0,则直接返回失败,禁止从核读取所述I2C接口的输入内容;若监测到所述全局变量值m_i2cSwitch=1,所述从核构造I2C读取命令并通过核间通讯将所述I2C读取命令发送给所述主核;所述主核执行所述I2C读取命令,通过第二DMA通道将所述I2C接口的输入内容从主核的接收缓冲区输送到从核的接收缓冲区。
具体来讲,如图6所示,当所述从核读取EEPROM的内容时,对所述全局变量值m_i2cSwitch进行实时监测,如果m_i2cSwitch=0,表示SPI驱动在被主核使用,直接返回失败;若监测到所述全局变量值m_i2cSwitch=1,则所述从核构造I2C读取命令,包含EERPOM的I2C设备地址,该命令和实际使用的芯片有关系,命令的内容和个数是不尽相同的,接着用核间通讯将所述I2C读取命令发送给主核,主核收到该命令后,执行I2C读操作,如果执行成功,则通过主从通讯接口将成功返回给主核,否则返回失败给从核;如果主核I2C命令执行成功了,会将读取的数据通过第二DMA通道传输到从核本地的接收缓冲区,返回成功。
基于上述一种双核AMP***共用I2C接口的方法,本发明还提供存储介质,其中,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现本发明所述双核AMP***共用I2C接口的方法中的步骤。
基于上述一种双核AMP***共用I2C接口的方法,本实施例还提供一种智能终端,如图7所示,其包括至少一个处理器(processor)20;显示屏21;以及存储器(memory)22,还可以包括通信接口(Communications Interface)23和总线24。其中,处理器20、显示屏21、存储器22和通信接口23可以通过总线24完成相互间的通信。显示屏21设置为显示初始设置模式中预设的用户引导界面。通信接口23可以传输信息。处理器20可以调用存储器22中的逻辑指令,以执行上述实施例中的方法。
此外,上述的存储器22中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。
存储器22作为一种存储介质,可设置为存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令或模块。处理器20通过运行存储在存储器22中的软件程序、指令或模块,从而执行功能应用以及数据处理,即实现上述实施例中的方法。
存储器22可包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器。例如,U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
此外,上述存储介质以及移动终端中的多条指令处理器加载并执行的具体过程在上述方法中已经详细说明,在这里就不再一一陈述。
在一些实施方式中,所述智能终端为计算机、广告机、电视、电脑、手机或平板中的一种,但不限于此。
综上所述,本发明提供一种AMP***双核共用I2C接口的方法,通过将I2C接口的驱动设置在AMP***的主核上;对所述AMP***内预设的全局变量值m_i2cSwitch进行实时监测,若所述全局变量值m_i2cSwitch=0,则标志所述主核直接访问所述I2C接口;若所述全局变量值m_i2cSwitch=1,则所述主核接收从核的I2C命令请求,并发起对I2C接口的访问并将结果反馈给所述从核。本发明在实现AMP***双核共用I2C接口的时候不需要拷贝多次内存,且其AMP***运行性能稳定。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (6)

1.一种AMP***双核共用I2C接口的方法,其特征在于,包括步骤:
将I2C接口的驱动设置在AMP***的主核上,所述AMP***包括主核和从核,所述主核与从核之间使用DMA通道,将从核划分成两块固定地址的内存 用于存放收发数据,同时这两块内存地址,主核是知道的,但是不能访问;同样将主核划分成两块固定地址的内存用于存放收发数据,同时这两块内存地址,从核是知道的,但是不能访问;
当所述从核写入内容至I2C接口时,对全局变量值m_i2cSwitch进行实时监测;
若监测到所述全局变量值m_i2cSwitch=0,则直接返回失败,禁止从核写入内容至I2C接口;
若监测到所述全局变量值m_i2cSwitch=1,所述从核构造I2C写入命令并通过核间通讯将所述I2C写入命令发送给所述主核;
启动第一DMA通道将待写入内容从从核的发送缓冲区输送到主核的发送缓冲区;
所述主核执行所述I2C写入命令将所述从核的待写入内容写入所述I2C接口;
当所述从核读取所述I2C接口的输入内容时,对所述全局变量值m_i2cSwitch进行实时监测;
若监测到所述全局变量值m_i2cSwitch=0,则直接返回失败,禁止从核读取所述I2C接口的输入内容;
若监测到所述全局变量值m_i2cSwitch=1,所述从核构造I2C读取命令并通过核间通讯将所述I2C读取命令发送给所述主核;
所述主核执行所述I2C读取命令,通过第二DMA通道将所述I2C接口的输入内容从主核的接收缓冲区输送到从核的接收缓冲区。
2.根据权利要求1所述AMP***双核共用I2C接口的方法,其特征在于,若所述全局变量值m_i2cSwitch=1,则所述主核接收从核的I2C命令请求,并发起对I2C接口的访问并将结果反馈给所述从核的步骤包括:
预先在所述主核中创建一个用于接收所述从核I2C命令请求的任务;
若所述全局变量值m_i2cSwitch=1,则所述主核读取所述从核发出的I2C命令请求,并根据所述I2C命令请求发起对I2C接口的访问并将结果反馈给所述从核。
3.根据权利要求1所述AMP***双核共用I2C接口的方法,其特征在于,所述启动第一DMA通道将所述待写入内容从从核的发送缓冲区输送到主核的发送缓冲区的步骤之前还包括:
预先定义从核的发送缓冲区物理内存地址为volatile char*m_SlaverI2cTxBuf=1023M;从核的接收缓冲区物理内存地址为volatile char*m_SlaverI2cRxBuf=1023.5M;主核的发送缓冲区物理内存地址为volatile char*m_MasterI2cTxBuf=510M;主核的接收缓冲区物理内存地址为volatile char*m_MasterI2cRxBuf=510.5M。
4.一种存储介质,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1-3任意一项所述AMP***双核共用I2C接口的方法中的步骤。
5.一种智能终端,其特征在于,包括处理器、存储器及通信总线;所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述通信总线实现处理器和存储器之间的连接通信;
所述处理器执行所述计算机可读程序时实现如权利要求1-3任意一项所述AMP***双核共用I2C接口的方法中的步骤。
6.根据权利要求5所述的智能终端,其特征在于,所述智能终端为计算机、手机和平板中的一种或多种。
CN202010209680.3A 2020-03-23 2020-03-23 一种amp***双核共用i2c接口的方法、存储介质及智能终端 Active CN111427817B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010209680.3A CN111427817B (zh) 2020-03-23 2020-03-23 一种amp***双核共用i2c接口的方法、存储介质及智能终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010209680.3A CN111427817B (zh) 2020-03-23 2020-03-23 一种amp***双核共用i2c接口的方法、存储介质及智能终端

Publications (2)

Publication Number Publication Date
CN111427817A CN111427817A (zh) 2020-07-17
CN111427817B true CN111427817B (zh) 2021-09-24

Family

ID=71555346

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010209680.3A Active CN111427817B (zh) 2020-03-23 2020-03-23 一种amp***双核共用i2c接口的方法、存储介质及智能终端

Country Status (1)

Country Link
CN (1) CN111427817B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111913822B (zh) * 2020-08-28 2023-03-28 电子科技大学 一种基于amp架构的核间通信方式

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102667745A (zh) * 2009-11-18 2012-09-12 日本电气株式会社 多核***、多核***的控制方法以及在非暂态可读介质中存储的程序
CN103544105A (zh) * 2013-10-24 2014-01-29 大唐移动通信设备有限公司 多核处理器中基于vcpu的调试方法和装置
CN104933004A (zh) * 2015-06-24 2015-09-23 上海市共进通信技术有限公司 使用spi总线扩展cpu模块的***及方法
CN106445855A (zh) * 2016-09-05 2017-02-22 深圳震有科技股份有限公司 一种非对称处理***下多核共用串口的方法及***

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100855701B1 (ko) * 2007-01-26 2008-09-04 엠텍비젼 주식회사 복수의 프로세서 코어가 통합된 칩 및 데이터 처리 방법
CN101872335B (zh) * 2010-03-05 2012-11-21 杭州海康威视数字技术股份有限公司 Cpu控制台重定向方法、***及cpu
CN102446158B (zh) * 2010-10-12 2013-09-18 无锡江南计算技术研究所 多核处理器及多核处理器组
CN102708091B (zh) * 2012-05-15 2015-05-13 江苏中科梦兰电子科技有限公司 一种基于虚拟网卡的双cpu***通信方法
CN102929724B (zh) * 2012-11-06 2016-04-13 无锡江南计算技术研究所 基于异构众核处理器的多级访存方法、离散访存方法
US20170242797A1 (en) * 2014-09-25 2017-08-24 Intel Corporation Reducing interconnect traffics of multi-processor system with extended mesi protocol
CN104461716B (zh) * 2014-12-29 2018-06-15 迈普通信技术股份有限公司 一种多核异构***的访问方法及多核异构***
US10102129B2 (en) * 2015-12-21 2018-10-16 Intel Corporation Minimizing snoop traffic locally and across cores on a chip multi-core fabric
US10204066B2 (en) * 2016-11-29 2019-02-12 Stmicroelectronics S.R.L. Dynamic definition of slave address in I2C protocol
CN107957970A (zh) * 2017-10-23 2018-04-24 记忆科技(深圳)有限公司 一种异构多核的通讯方法及固态硬盘控制器
CN109739799A (zh) * 2018-12-29 2019-05-10 深圳市优必选科技有限公司 异构多核处理器的数据交互方法、异构多核处理器和终端
CN110569066B (zh) * 2019-07-26 2023-08-01 深圳震有科技股份有限公司 多核***共用代码段的控制方法、智能终端及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102667745A (zh) * 2009-11-18 2012-09-12 日本电气株式会社 多核***、多核***的控制方法以及在非暂态可读介质中存储的程序
CN103544105A (zh) * 2013-10-24 2014-01-29 大唐移动通信设备有限公司 多核处理器中基于vcpu的调试方法和装置
CN104933004A (zh) * 2015-06-24 2015-09-23 上海市共进通信技术有限公司 使用spi总线扩展cpu模块的***及方法
CN106445855A (zh) * 2016-09-05 2017-02-22 深圳震有科技股份有限公司 一种非对称处理***下多核共用串口的方法及***

Also Published As

Publication number Publication date
CN111427817A (zh) 2020-07-17

Similar Documents

Publication Publication Date Title
US9563368B2 (en) Embedded multimedia card and method of operating the same
US20090119460A1 (en) Storing Portions of a Data Transfer Descriptor in Cached and Uncached Address Space
WO2018157588A1 (zh) 固件烧录方法、***、计算机设备和存储介质
CN114662136B (zh) 一种基于pcie通道的多算法ip核的高速加解密***及方法
US9575887B2 (en) Memory device, information-processing device and information-processing method
US11068283B2 (en) Semiconductor apparatus, operation method thereof, and stacked memory apparatus having the same
CN114328306A (zh) 智能存储装置
CN111427821B (zh) 双核amp***共用spi接口的方法、***及存储介质
WO2023104194A1 (zh) 一种业务处理方法及装置
KR100630071B1 (ko) 다중 프로세서 환경에서의 dma를 이용한 고속 데이터전송 방법 및 그 장치
CN112214157A (zh) 主机输出输入命令的执行装置及方法及计算机可读取存储介质
US20220253252A1 (en) Data processing method and apparatus
CN111427817B (zh) 一种amp***双核共用i2c接口的方法、存储介质及智能终端
CN115905095A (zh) Usb免驱通信方法、装置、电子设备及存储介质
US8891523B2 (en) Multi-processor apparatus using dedicated buffers for multicast communications
WO2020177567A1 (zh) 一种迁移数据的方法、装置及***
US8756356B2 (en) Pipe arbitration using an arbitration circuit to select a control circuit among a plurality of control circuits and by updating state information with a data transfer of a predetermined size
WO2022242665A1 (zh) 一种数据存储方法及相关装置
CN111338998B (zh) 基于amp***的flash访问处理方法及装置
CN106325377B (zh) 外部设备扩展卡及输入输出外部设备的数据处理方法
CN112860595B (zh) Pci设备或pcie设备、数据存取方法及相关组件
WO2012143949A2 (en) Secure digital host controller virtualization
CN111427815A (zh) 一种基于spi接口的核间通讯方法、终端及存储介质
CN116745754A (zh) 一种访问远端资源的***及方法
CN116601616A (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