英飞凌Aurix™ TC3XX 芯片内核详解——内存保护

原创 汽车电子与软件 2025-06-19 08:06

本文约5,300字,建议收藏阅读

         

作者 | 林Nova

出品 | 汽车电子与软件



本文主要介绍Infineon Aurix™ TC3XX系列芯片内核内存保护机制,并通过代码实例进行演示。



#01

简  介


随着汽车电子架构向集中化、智能化发展(如域控制器、中央计算平台),功能安全(Functional Safety信息安全(Cyber Security成为核心设计要求。在智能网联汽车时代,内存保护已成为车规MCU基础安全特性,直接影响车辆的合规性、安全性和市场准入(如通过ASPICETISAX认证)。


而汽车电子系统需符合ISO 26262功能安全标准,其核心目标是避免因硬件/软件故障导致危害(如刹车失灵、动力中断)。在软件安全领域中,内存保护是一项非常重要的措施。它可以防止软件错误导致系统崩溃、保护关键数据的完整性、多任务隔离等。


在当下汽车行业广泛使用的AUTOSAR架构中,内存保护定义在OS模块内部,通过SC3级别的OS定义来实现。而OS要实现SC3内存保护功能,必须依赖硬件芯片提供相应的内存保护机制,软件是无法在进程运行时每时每刻监控其内存访问轨迹的。也就是说,要实现内存保护,必须使用带有MPUMemory Protection Unit,内存保护单元)的芯片。


英飞凌Aurix™ TC3XX系列芯片内核带有内存保护单元,能够对数据读写、代码执行进行较小的颗粒度区分,并结合I/O权限等级、Trap机制等,实现灵活的内存保护机制。




#02

TriCore™内存保护


TriCore™运行时的内存保护主要包括三种途径,一种是通过设置总线访问权限来保护本地SRAM,即Bus MPU,另一种是通过 I/O权限来限制进程对寄存器的访问权限,即Register Access Protection,最后一种是设置地址保护范围来限制进程对程序的执行和对数据的读写,也就是CPU MPU


下图是TriCore™内存保护示意图,其中黄色部分为Bus MPURegister Access ProtectionAP)和CPU MPUTask MPU)。



  • Bus MPU是通过设置每个CPU本地SRAM的访问权限,来限制其他Master对于本地SRAM的访问,主要用于防止跨核数据访问或者DMA访问等对本核的数据侵犯,本核对本地SRAM的访问没有限制;


  • Register Access Protection则是通过I/O权限则是限制了进程对外设寄存器的访问,以及限制某些特殊指令的执行,一般情况下仅由OS内核或者受信进程能够执行某些敏感操作,因此这些进程具有更高的I/O权限;


  • CPU MPU保护方式则是通过设置地址保护段,通过对不同进程设置不同的保护集,来限制其代码执行和数据读写,其保护方式是从CPU访问端进行仲裁,保护范围可覆盖所有地址空间,包括寄存器地址空间;


通常第一种Bus保护方式在实践中较少使用,一般情况下会使用I/O权限保护和地址保护相结合实现运行时的内存保护。


2.1 Bus MPU


Aurix™ TC3XX系列芯片中,总线上挂有多个核以及DMA等内存Master设备,同时也会挂有DLMUDSPRPFlash等内存Slave设备,它们都通过SRI总线进行连接,如下图所示。



我们知道,每个CPU内部,具有一块Data Scratch Memory (DSPR)用于数据RAM,一块Program Scratch Memory (PSPR) 用于Code RAM,还有一块Distributed LMU (DLMU)一般用于全局数据的存储,还有一块本地Flash用于存储代码或常量。


Bus MPU的功能下,CPU对于自身所附带的这三块RAM和一块Flash是不具有访问限制的,但是它可以对其他CPUDMAMaster设备设置读写权限,以保护自身数据。


这里需要了解Bus Master的概念,Aurix™ TC3XX系列芯片中对于所有前文提到的总线上的Master设备都进行了编号Master TAG,这些编号是芯片静态设置的不可更改,用于识别总线上各个Master设备,Bus MPU的权限设置也是通过这个Master TAG来绑定的。可通过查询芯片Family手册查看编号(最多64个,此处未截全)。



2.1.1 Local xSPR保护


对于DSPRPSPR,每个核可针对本地RAM设置8个地址段,每个地址段都有两个寄存器,用来标记64Master TAG的访问权限,每个Master TAG一个Bit位。


对于每个段来说,通过寄存器SPR_SPROT_RGNUAi (x=0-7) 来定义地址段上限,通过寄存器SPR_SPROT_RGNLAi (i=0-7) 下限。


对于每个段,SPR_SPROT_RGNACCENAi_R(Masters 31-0) SPR_SPROT_RGNACCENBi_R (Masters 63-32)两个寄存器定义了所有64Master对该段的权限。SPR_SPROT_RGNACCENAi_W(Masters 31-0)SPR_SPROT_RGNACCENBi_W (Masters 63-32)两个寄存器则定义了64Master对该段的权限。每个Bit对应一个Master,比如bit6对应Master TAG6的主设备。


如下图为访问示意图。



地址保护权限采用左闭右开区间,即SPR_SPROT_RGNLAi <= address < SPR_SPROT_RGNUAi表示该段的权限范围。当访问的地址不在这8个段中,或者Master设备的权限为0,则会产生错误,错误信号发送到SMU模块。


系统复位时,每个地址段的默认范围是0x0~0xFFFFFFE0,且所有保护权限寄存器bit都为1,表示未开启保护,所有访问都被允许。


该保护权限寄存器是具有SafetyEndInit机制的,因此改写的时候要操作SafetyWdg。另外需要注意的是,在改写之后,由于流水线等因素,保护生效具有一定的延时。


发生错误时DIEARDIETR寄存器可用于协助排查。


2.1.2 Local DLMU保护


同样的对于DLMU也具有完全相同的保护机制,其功能与xSPR的保护相互独立,具有独立的寄存器设置,此处不再加以赘述。


2.1.3 Local PFlash保护


对于本地PFlash来说,没有详细的地址段的划分,仅具有权限的划分,即权限为整块PFlash为颗粒度。


同样的,根据LPB_SPROT_ACCENA _R (master31-0)寄存器和LPB_SPROT_ACCENB _R (master 63-31)两个寄存器来定义64Master设备的访问权限。


2.2 Register Access ProtectionI/O Privilege Level


内存保护中第二种方法是通过寄存器访问权限来防护,在TriCore™中,内核具有三种特权模式,也称为I/O模式:User-0 mode, User-1 mode and Supervisor mode。三种模式对于指令和寄存器具有不同的访问权限,首先对于指令三种模式就具有明显的区别:



从图中我们可以看出,一些内核指令如MTCR(修改内核寄存器)等,需要在Supervisor模式下才能访问,而开关中断的ENABLEDISABLE需要至少User-1以上模式才能访问,其余指令则所有模式都可以访问。


另外一个至关重要的区别,就是前文提到的寄存器访问保护,也就是说Aurix™ TC3XX内部的众多寄存器,对于CPU在访问时的模式是有要求的,也就是说某些寄存器,在CPU达到某些模式级别以上才能够访问。


所有的寄存器都有各自的访问权限,我们可以通过查询芯片手册中的寄存器表来判断其权限要求。比如下面这些QSPI相关寄存器,我们可以看到STATUS1寄存器在所有模式下都能够读写,而SSOC寄存器仅在SV模式下才能够写入,而一般情况下所有权限级别都能够读寄存器。



特权模式的修改是通过修改程序状态字寄存器PSW.IO来实现的,2表示Supervisor Mode1表示User-1 Mode0则表示User-0 Mode


特殊的,当程序处于用户态,而此时又需要访问特权模式下的寄存器时,则需要通过syscall来进入内核模式,一般是通过操作系统的相关权限调整,来实现寄存器的访问。


2.3 CPU MPU


CPU MPU是内存保护的核心内容,也是在AUTOSAR™架构下实现OS SC3内存保护的关键手段。在TriCore™CPU MPU功能中,CPU中对代码和内存分别定义了多个地址段,针对这些地址段,设置了多个内存保护集,每个内存保护集具有详细的内存保护权限设置。


CPU MPU中的数据保护和代码保护是相互隔离的,存在相互独立的地址段定义。但是共用6个内存保护集,内存保护集相当于进程的身份识别,一般情况下与进程绑定。


CPU MPU的功能是需要单独开启的,是通过将SYSCON.PROTEN位置位来实现的,注意这是一个CPU寄存器,其作用范围仅为当前核。


2.3.1 Data Protection


在数据保护中,用户可以通过DPRii=0-17)寄存器定义最多18个地址段,每个内存保护集可以对这18个地址段分别定义访问权限。同样的,该地址段的区间范围也是左闭右开。如果两个区段地址具有重合,则权限取或逻辑,即拥有任意段的权限,则拥有了交叉地址间的权限。


如下图中我们可以看到,每个内存保护集使用DPRExx=0-5)寄存器和DPWExx=0-5)寄存器分别定义对这18个段的读写权限,每个bit对应一个地址段(bit18-31reserve),图中R表示ReadW表示Write1表示有权限。比如图中Set1DPWE寄存器的bit00,表示Set1保护集下没有对于Range0的写权限,但是DPREbit01,表示对Range0具有读权限。



操作系统会把不同的保护集分给不同的进程,从而对不同进程进行权限管理。在TriCore™系统中,CPU进入中断程序或者Trap时,内存保护集自动切换到Set0,因此一般将内存保护集Set0分配给操作系统内核进程,其他进程在需要提权时通过syscall指令进入到操作系统内核模式。


在实践过程中,我们可以把Set0分给操作系统内核线程,给予其较大的访问权限;把Set1分给可信应用程序,给予适当的访问权限,把Set2分给非可信应用程序,给予较小的访问权限,从而实现内存数据的保护和隔离。



与前面提到的Bus MPU不同,CPU MPU的访问是以CPU为主体的,当CPU进行数据访问时,MPU硬件结合当前内存保护集对地址进行权限检查,其保护范围可以是任意地址范围,但其仅能对对本地CPU进行限制,对于其他Master设备如DMA则不具有限制能力。


内存保护集的切换通过设置PSW.PRS寄存器实现。操作系统在进程切换时同步切换保护集,确保进程权限隔离。


AUTOSAR操作系统中,一般保护集是跟随OsApplication进行分配的,核内的每个OsApplication通过保护集进行权限区分,其附属的Task或者Isr继承其保护集;同时也支持TaskIsr具有独立于OsApplication外的特有保护集,在Task或者Isr切换的时候切到特有的保护权限。


2.3.2 Code Protection


与数据保护相同,CPU MPU对代码执行保护的方式也是通过设置地址段以及保护集的权限来实现的,不同于数据保护的是,代码保护仅有一个执行权限的设置,且代码段仅可以设置10个区段。


同样的,代码保护也有专有的寄存器CPRii=0-9)来设置代码保护段,以及专有的CPXEii=0-5)权限寄存器来定义6个内存保护集对这些代码段的执行权限。CPXEi的每个bit对应一个地址段(bit18-31reserve),图中X表示代码执行,1表示有权限。



与数据保护逻辑类似,在将Set0分配给操作系统内核之后,将最大程度赋予其代码执行权限。当低权限的线程想要调用其权限以外的服务时,可通过syscall提权由其他高权限线程代为执行。


2.3.3 多核特性


CPU MPU的权限限制仅限于本核,并且前文所提到的所有内存保护寄存器都是CPU寄存器,每个核都有各自的一套该类寄存器,相互之间的MPU功能是独立的。



因此每个核的内存保护之间是相互独立的,各个核需要根据实际需求实施特定的内存保护策略。


2.4 Trap异常系统


对于I/O寄存器权限保护和CPU MPU保护来说,如果进程违反了数据保护限制,即访问了当前保护集权限外的寄存器,执行了权限外的代码或者访问了权限外的数据,则CPU会产生Trap


TriCore™架构中,Trap Class 1中的类型是专门为内存保护设计的,我们可以看到图中Class 17Trap类型都与内存保护有关。



  • PRIVPrivileged Instruction,即访问了当前I/O权限以外的指令;


  • MPRMemory Protection Read,即读取了当前内存保护集权限外的数据地址;


  • MPWMemory Protection Write,即写入了当前内存保护集权限外的数据地址;


  • MPXMemory Protection Execution,即执行了当前内存保护集权限外的代码地址;


  • MPPMemory Protection Peripheral Access,即操作了当前I/O权限以外的外设寄存器;


  • MPNMemory Protection Null Address,即空指针,访问了0地址;


  • GRWPGlobal Register Write Protection,非法操作了全局寄存器,TriCore™提供了4个全局地址寄存器,一般用于操作系统保存当前线程指针等数据;




#03

TC4 TriCore™ 1.8新特性


本文介绍的TriCore™内核版本为TriCore™ 1.6.2,英飞凌在2024年发布了新一代的Aurix™ TC4XX系列芯片,相对于TC3XX系列有较大升级,其使用TriCore™ 1.8的内核架构。


3.1 资源数量


TriCore™ 1.8的内核架构中,数据和地址的内存保护区段数量都提升到了32个,同时内存保护集提高到了8个,相对于旧版本内存保护灵活性大大提高。


3.2 Level 2 Memory Protection


Aurix™ TC4XX系列芯片中,增加了虚拟化功能,一个CPU内核能够虚拟出最多8个虚拟机。而这些虚拟化内存之间的访问自然而然需要进行内存间的保护和隔离,因此TriCore™ 1.8内核架构中增加了Level 2 Memory Protection


TriCore™ 1.8内核中,前向兼容前文所介绍的CPU MPU,并将其称为Level 1的内存保护,在此基础上还需要通过Level 2的内存保护的检查。



TriCore™ 1.8中,前代的Level 1内存保护独立存在,仍然可以进行开关和内存保护设置,与Level 2相互独立。


CPU使能了虚拟化功能,并且VM1-VM7有虚拟机在运行,则Level 2的内存保护自动开启。


VM0作为硬件资源管理主虚拟机,无需经过Level 2的数据检查,而VM1-VM7则必须通过Level 2MPU检查。


Level 2的检查原理与Level 1大致相同,通过设置地址区段以及各保护集的访问权限寄存器,通过VCON2.L2_PRS寄存器进行保护集的切换,实现虚拟机内存保护隔离。


3.3 Hypervisor trap system


TriCore™ 1.8架构中增加了虚拟化,同时也为虚拟化配备了相应的虚拟化专用Trap系统,用于处理在虚拟化中发生的Trap


针对Level 2的内存保护,也如同Level 1一样提供了诸如读、写、执行相关的内存保护Trap





#04

示 例

 

接下来我们通过一段调试示例,来进行TriCore™ 1.6中的内存保护讲解,通过一段非法访问的示例,介绍其内存保护的作用机制。


4.1 保护段配置


这里我选取了DLMU00xB0000000~0xB0010000地址作为目标地址段,将其配置到DPR9的位置。



将测试代码的进程保护集设置为Set2,设置其对进程对其访问权限为只读。

这里DPRE寄存器为0x237,对应的bit91,对该段具有读权限。



这里DPWE寄存器为0x1b5,对应的bit90,对该段没有写权限。



4.2 示例代码


这里直接通过指针访问该区域,首先通过读取该地址的值,然后对其进行写入。


go/* Init Data Ptr and Test Var. */volatile uint32 *TestAddr = (uint32*)0xB0000000;volatile uint32 TestVar;/* Here test memory access. */TestVar = *TestAddr;*TestAddr = 1u;


4.3 示例调试


我们将断点打在 TestVar = *TestAddr 这行准备执行。



然后我们单步执行该地址的读操作,可以看到执行过程没有问题。这里DCache我是关闭的,所以不存在发生Trap的延迟。



然后我们单步执行该地址的写操作,就进了Trap。并根据相关信息判断为Trap Class 1TIN 3,即前文提到的MPW写权限异常。



同时我们查看DEADD寄存器可以看到异常访问的地址,就是我们前面指针的目标地址。



然后我们查看DSTR寄存器可以看到其内存错误类型为内存保护错误。



以上就是关于内存保护的相关示例,读者可通过模拟示例加深对TriCore™内存保护系统的了解。




#04

小 结

 

本文详细介绍了TriCore™架构的内存保护系统,介绍了其三种保护机制:Bus MPU用来防止其他Master对本地SRAM的异常访问,Register Access Protection用于防止非特权进程篡改外设寄存器,CPU MPU则是通过不同的保护集,来限制本核各个进程的内存访问权限。其中第一种使用较少,后两种在当下车规软件中广泛应用。最后通过示例代码和调试演示向读者展示了TriCore™内存保护的机制,并通过仿真错误场景介绍异常处理场景。





/ END /



汽车电子与软件 主要介绍汽车电子软件设计相关内容,每天分享一篇技术文章!
评论
  • 在万物互联浪潮席卷全球的时代背景下,数字气压传感器作为物联网环境感知层的核心硬件之一,正凭借精准、实时的数字化气压测量能力,快速消融着现实世界与数字世界之间的沟通壁垒,其不仅能为物联网终端提供与环境进行对话的“媒介语言”,还能与其他环境感知技术形成协同效应,是物联网社会实现高效沟通的基石之一。数字气压传感器主要通过检测压敏元件在不同环境气压下的电信号变化,实现对气压的测量,并能直接输出数字信号以满足物联网终端对气压数据的传输、储存与记录等需求。现阶段,由于数字气压传感器具备着低功耗、高精度、快速
    华普微HOPERF 2025-07-01 09:20 1599浏览
  • 在全球广泛倡导绿色低碳与可持续发展的时代浪潮中,新能源汽车作为实现节能减排的重要载体之一,正受到各国政府与企业的加速培育。在此背景下,为提升新能源汽车的市场渗透率,我国已率先进入充电基础设施建设的加速期,从私人专用充电桩到社区公用充电桩,从高速路网补能节点到城市公用充电桩,汽车补能网络正在急速膨胀中。图源:摄图网(已授权)据中国充电联盟(EVCIPA)最新统计数据显示,截止2025年5月份,我国充电基础设施累计数量为1440万台,同比上升45.1%。其中,在2025年1月~5月期间,我国充电基础
    华普微HOPERF 2025-07-09 16:13 54浏览
  • 工业物联网时代,作为一种普遍应用在汽车电子、工业控制与医疗器械等领域中的串行总线通信技术——CAN(Controller Area Network)总线基于消息广播模式,通过双绞线传输差分信号,是一种多主控(Multi-Master)的总线系统,具备极强的抗干扰能力、极低的传输延迟和高速数据传输性能。一种典型的CAN总线网络示意图在CAN总线通信过程中,CAN收发器作为物理层上的接口芯片,位于CAN控制器(MCU)和CAN总线之间,主要负责将来自CAN控制器(MCU)的数字信号与总线上的差分信号
    华普微HOPERF 2025-07-04 14:44 1936浏览
  • 现代人对于影音效果的追求持续增加,在多数影音产品中,HDMI是最为重要的接口,而HDMI 2.1中有一新增功能eARC可以透过HDMI线材来传输数字Audio,除了支持Dolby TrueHD、Atoms等声音格式外,也可以支持8声道喇叭,满足消费者对于声音的追求。新时代的高阶电视都具备支援eARC的功能,然而却有些号称支持的电视产品,因为在设计上的疏忽,造成eARC无法输出8声道Audio,以致eARC的功能大打折扣,对于花大钱欲享受高规格电视的消费者来说自然难以接受,对于该电视品牌也会产生负
    百佳泰测试实验室 2025-07-04 14:42 2003浏览
  • 在数字化、自动化高速发展的今天,光电耦合器正以一种低调却不可或缺的方式,悄然改变着我们的生活。它不仅是电子电路中的“安全卫士”,更是连接信号世界的“桥梁”,凭借出色的电气隔离能力,为各类设备提供稳定可靠的信号传输保障。电气隔离——让系统更安全在工业控制系统中,安全始终是重中之重。光电耦合器通过光信号进行电气隔离,能够有效防止高压电流侵入低压控制电路。例如,在智能电网系统中,它广泛应用于电表与通信模块之间,确保数据传输的安全性,防止电网高压对低压设备造成冲击。在电动汽车的电池管理系统(BMS)中,
    腾恩科技-彭工 2025-07-05 13:56 386浏览
  • 据知名市场研究机构Counterpoint Research发布的数据概览,2025年第二季度,中国智能手机销量预计将迎来小幅回暖,增长率约为1%。在这场销量微增的背后,华为与苹果两大品牌成为了推动市场前行的核心力量。其中华为手机的表现最为亮眼,数据显示,华为在中国市场的智能手机销量份额实现了12%的同比增长,这一成绩不仅使其成为了当季增长最快的品牌,更助力华为重新夺回销量榜首的位置。相比之下,vivo的表现就有些尴尬了。虽然还是位列第二,但vivo在第二季度的智能手机销量份额同比下降了9%,下
    用户1742991715177 2025-07-09 08:19 63浏览
  •   去年底,整理旧物,扔的扔了,留的留了,这不,十四个几十年前留下来的工业级小型排风扇,下图左上角处,又拿出来,下决心把它们再利用发挥余热。  呵呵,这回不是拆而是装了。怎么装呢?组装、固定、机架、接线,简单,也不简单,原则是一切都用手头现有废旧材料,争取做到一个不买!DIY,废物利用,如今时髦的话,以旧换新!摆上台面,找来木条,策划怎么做?  比一比,看一看,觉得合适,按尺寸锯开木条。  咋走线?想到了,在有限空间内弯转,从一个螺丝孔穿出来,整体拼凑整齐。   咋固定风扇呢?找来木片条,锯断,
    自做自受 2025-07-06 21:37 401浏览
  •   几个月前,一个老旧的大风扇的散风圈(俺不知其专业名称)的开关按钮不起作用,就是锁不住了,散风圈也就不转了。今天,有空,就拿到工作台,开始拆解分析故障原因,能修好更好。  看看,用的时间够长了吧!皮肤都变颜色了。看标签,合格品2005年的。  底部四个螺丝固定,很容易拆开了。  看到掉下一个标签圆纸片,拿起来看看,是那个横向摇头的电机的。  找到那个按钮开关位置  应该是开关内部的有缺陷了。把它拆下来,一看就是正规合格品。  拿出我日积月累的分类藏宝盒,呵呵,找到一款螺丝孔位正好合适的。   
    自做自受 2025-07-10 11:16 111浏览
  • 本文主要针对分立方案高速输出电路,由于MOS管、稳压管、PCB布局布线都存在一些寄生电容,这些寄生电容都会影响高速输出电路的占空比,所以本文对这些寄生电容的影响进行简单说明。测试工况:电压:24V,负载类型:阻性负载2K,输出频率:200Khz,要求占空比45%~55%;电路拓扑如下图所示:图1寄生电容分布情况:如下图所示,MOS管寄生电容为Cgd、Cgs、Cds,稳压管寄生电容为Cd;图2而MOS管手册常见的参数如下图所示为Ciss、Coss、Crss(为啥是这些参数,而不改成Cgs、Cgd、
    用户1751282873645 2025-07-08 23:58 48浏览
  • 在物联网无线通信领域,随着行业应用场景的不断拓宽,同一频段下的设备通信需求正呈指数级增长,然而这一增长趋势却与频谱资源的有限性形成了鲜明对立,信道拥挤、信号串扰与非线性失真等不良现象所造成的“通信压力”正在持续放大。从智能家居的设备互联到工业物联网的实时控制,从智慧楼宇的广域组网到智慧城市的海量数据传输,有限的频谱资源不仅需要满足不断增长的设备通信需求,还需要适配不同场景对速率、时延与可靠性等差异化要求。在此背景下,如何在有限的频谱资源中实现更为稳定的无线通信质量,已成为物联网行业发展路径中的核
    华普微HOPERF 2025-07-07 16:13 331浏览
  • 提要:采用LOXIM的微孔雾化专用芯片LX8201,能突破压电陶瓷驱动电压超标(24伏)的技术难题,满足全球市场对喷雾玩具的电压安规认证要求。玩具行业尤其是喷雾玩具行业内人士都知道,喷雾玩具的压电陶瓷驱动电压超标(常需60-100V)与强制安规标准(中国,日本,欧美,都一样)对玩具电压的限制(≤24V)存在根本性冲突,如果采用“多层压电堆叠(MPA)技术“(比如日本TDK公司),成本将增加至现有微孔雾化片的10倍以上,这个矛盾一直没有得到好的解决。喷雾玩具在国内热销(淘宝/抖音),能卖的原因,无
    Loximonline 2025-07-08 10:55 143浏览
  • 什么是LoRaWAN? LoRaWAN技术及应用LoRaWAN(Long Range Wide Area Network)是一种低功耗、长距离、广域网络通信协议,特别设计用于连接物联网(IoT)设备。LoRaWAN采用无线通信技术,能够覆盖数十公里的范围,提供长时间的电池寿命,适用于智能城市、农业、工业自动化、环境监测,与健康医疗等领域应用。来源: LoRa Alliance一探究竟:LoRaWAN物联网应用优势营运商采用 LoRaWAN 具有多方面的优势,除了长距离覆盖范围及低功耗的特点外,还
    百佳泰测试实验室 2025-07-10 14:51 69浏览
  • 曾经靠“砍一刀”撕裂传统电商格局的拼多多,如今疲态尽显。数据显示,拼多多今年第一季度实现营收957亿元,同比增长10%,市场预估1016亿元,相比预期低了近60亿元;经营利润为161亿元,相比去年同期下降38%;归属于普通股股东的净利润为147亿元,同比下降47%。与此同时,拼多多市值也坐上了“过山车”。去年市值一度突破 2180 亿美元,力压国内电商巨头阿里,今年(7月1日收盘)市值仅余 1497.59 亿美元,已不足阿里(市值2718.63亿美元)一半
    用户1742991715177 2025-07-05 14:24 333浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦