精华内容
下载资源
问答
  • 2. 双核异构架构,集成 Cortex-A5 CPU 和 CEVA-X2 DSP,拥有足够的算力 3. 集成 PMU,支持低功耗和自适应动态电源管理架构 架构图 特点 1. 单核A5,高能效比 2. 集成DSP,专门跑语音算法,缓解CPU压力 3. 集成...

    目录

     

    简介

    架构图

    特点

    应用场景

    软件环境


    简介

    1. ATS3609 (D) 是一款超低功耗的全集成多模态交互芯片平台,多Mic拾音,支持全场景唤醒打断、手指点读, AI伴读,GUI 反馈

    2. 双核异构架构,集成 Cortex-A5 CPU 和 CEVA-X2 DSP,拥有足够的算力

    3. 集成 PMU,支持低功耗和自适应动态电源管理架构

    架构图

    特点

    1. 单核A5,高能效比

    2. 集成DSP,专门跑语音算法,缓解CPU压力

    3. 集成VAD

    4. 内置RAM

    应用场景

    1. 故事机,智能词典,翻译机

    2. 智能音响,智能背景音乐

    软件环境

    1. 炬芯是国内专业的音频解决方案厂家,在音频领域有比较强的实力,软件上音频播放控制尤其成熟

    2. 语音支持各大厂家方案,在最早的ATS3605上已与各大厂家对接完善

    3. GUI部分,基于之前做MP4的基础上,开发还算便捷,有专用的IDE,实际运行也还稳定

    4. SDK整体成熟度较高,在故事机,音频播放等领域应用较多

    展开全文
  • 广州创龙基于Xilinx Zynq-7000 SoC系列架构设计的SOM-TLZ7x核心板采用沉金无铅工艺的12层板设计,是一款适用于高速数据采集处理的核心板。 SOM-TLZ7x引出全部可用的资源信号引脚,二次开发极其容易,客户只需要专注...

    广州创龙基于Xilinx Zynq-7000 SoC系列架构设计的SOM-TLZ7x核心板采用沉金无铅工艺的12层板设计,是一款适用于高速数据采集处理的核心板。

    SOM-TLZ7x引出全部可用的资源信号引脚,二次开发极其容易,客户只需要专注上层运用,降低了开发难度和时间成本,让产品快速上市,及时抢占市场先机。创龙提供丰富的Demo程序,协助客户进行底板设计和调试以及异构开发。

    核心板简介

    基于Xilinx Zynq-7000 SoC高性能低功耗处理器,集成PS端单核/双核ARM Cortex-A9 + PL端Artix-7架构可编程逻辑资源;

    核心板芯片型号为XC7Z020-2CLG400I,NOR FLASH 256Mbit,DDR3 512M/1GByte可选,兼容XC7Z010-2CLG400I、XC7Z014S-2CLG400I、XC7Z007S-2CLG400I,PS端主频可高达866MHz;

    支持USB 2.0、SDIO、千兆网等多种高速接口,同时支持I2C、SPI等常见接口;

    支持两路12bit MSPS ADCs,多达17个差分输入通道;

    多达54个复用I/O引脚(MIO),用于外设引脚分配;

    PS端可通过EMIO配置PL端IO,支持共享内存,支持PS端和PL端数据协同处理;

    PL端可编程逻辑单元数量区间为23K-85K,内部集成的Block RAM可达4.9Mbit;

    可通过PS端配置及烧写PL端程序,且PS端和PL端可以独立开发,互不干扰;

    核心板体积极小,大小仅62mm*38mm;

    连接稳定可靠,采用工业级精密B2B常规连接器,防反插,保证信号完整性;

    提供PL端与PS端的片内通信开发教程。

    典型运用领域

    电机控制

    医疗设备

    雷达声纳

    电力采集

    机器视觉

    开发资料

    提供核心板引脚定义、可编辑底板原理图、可编辑底板PCB、芯片Datasheet,缩短硬件设计周期;

    提供系统烧写镜像、内核驱动源码、文件系统源码,以及丰富的Demo程序;

    提供完整的平台开发包、入门教程,节省软件整理时间,上手容易;

    提供详细的SoC综合开发教程,解决一体化开发瓶颈。

    增值服务

    主板定制设计

    核心板定制设计

    嵌入式软件开发

    展开全文
  • 多核处理器从多核的结构上是否一致,分为两种基本架构:同构多核架构异构多核架构。同构多核处 理器是指系统中的处理器在结构上是相同的;而异构处理器是指系统中的处理器在结构上是不同的,这些处理器可以是通用...

    这里写目录标题

    简介

    多核处理器从多核的结构上是否一致,分为两种基本架构:同构多核架构和异构多核架构。同构多核处
    理器是指系统中的处理器在结构上是相同的;而异构处理器是指系统中的处理器在结构上是不同的,这些处理器可以是通用处理器,也可以是解决某些特定应用的专用硬核。同构多核架构相比于异构多核架构,在硬件和软件设计上较为简单,通用性较高。但在某些特定应用场合下,如异构多核架构专用的硬件加速硬核,异构多核架构的性能会更高。
    Xilinx 的 ZYNQ SOC 融合了这两种架构,ZYNQ SOC 芯片包含两个独立的 Cortex-A9 处理器,这两个
    处理器核在结构上是相同的,同时又包括了可编程的逻辑单元(PL),使得 ZYNQ 整体系统成为了一个异构多核系统,同时具有较高的通用性和性能。从软件的角度看,多核处理器的运行模式有 AMP(非对称多处理)、SMP(对称多处理)和 BMP(受约束多处理)三种运行模式。
    AMP 运行模式指多个内核相对独立的运行不同的任务,每个内核相互隔离,可以运行不同的操作系统
    (OS)或裸机应用程序。SMP 运行模式指多个处理器运行一个操作系统,这个操作系统同等的管理多个内核,如 PC 电脑。BMP 运行模式与 SMP 类似,但开发者可以指定将某个任务仅在某个指定内核上执行。一般来说,SMP 为较高级的应用提供统一的 OS 平台,开发者在 OS 之上构建应用时,无需考虑两个内核之间的资源共享和进程间通信。除此之外,对 SMP 而言存在性能开销,这会对实时性要求较高的应用,其性能造成较大影响。如 PC 机电脑的多核处理器一般运行在 SMP 模式,实现的功能较为复杂,但对实时性的要求不高。
    而 AMP 的运行模式基本没有开销问题,在运行裸机应用程序时,甚至完全没有开销,比较适合实时性
    要求较高的应用,但需要精心定制的软件设计来实现处理器资源共享和处理器间通信。如电力控制保护设备通常需要与人机接口实现复杂的通信和高实时性的计算能力,一般采用 AMP 运行模式,一个处理器运行Linux 操作系统,另一个处理器运行裸机应用程序,从而兼顾了电力系统控制设备需要的复杂功能和实时性。AMP 和 SMP 运行模式的框图如图 所示。
    在这里插入图片描述
    AMP 运行模式给开发者提供了一个与传统单核 CPU 系统相类似的运行环境,使得开发者已有的经验
    和知识可以继续加以利用;同时,也为程序的移植提供了很大的便利性。本次试验采用的是双核 AMP 的运行模式,两个 CPU 分别运行不同的裸机应用程序。ZYNQ SOC 提供的两个 Cortex-A9 处理器,都具有各自私有的资源,同时也有一些共享的资源。私有资源有 L1 指令缓存、L1 数据缓存、私有定时器等。共享的资源有 L2 Cache、DDR 存储器、外设和 OCM(On Chip Memory)等。在 AMP 运行模式下,这两个处理器彼此隔离、分别运行。但在访问共享资源或者外设时,要注意避免冲突,否则程序在运行时可能会出现问题。我们可以通过类似互斥的方式来实现裸机情况下简单的双核使用,在 ZYNQ 系统中,可以利用软件产生中断(SGI,Software Generated Interrupts)来避免访问的冲突。ZYNQ 系统中的每个 CPU 都能用 SGI 来中断自己、另一个 CPU 或同时中断两个 CPU。向软件产生的中断寄存器(ICDSGIR)写入中断编号并指向目标 CPU,就产生了一个 SGI。每个 CPU 各自有一组 SGI 寄存器,可以产生 16 个软件产生中断中的一个或多个。图 列出了 SGI 的中断 ID 号,范围是 0~15。
    在这里插入图片描述
    SGI 可以触发 CPU 产生中断,但是如果想要传递数据的话,需要利用共享的内存实现数据的交互。共
    享内存指 CPU0 和 CPU1 在内存中约定一块地址及长度已知的内存区域,两个 CPU 通过读写共享内存中的数据来实现互相通信,而利用 CPU 产生的软件中断可以避免对共享内存的同时访问。
    ZYNQ 中的 OCM 共有 256KB,分为 4 个 64KB,而外置的 DDR3 存储器一般存储空间较大。当两个
    CPU 需要进行大量数据交互的时候,可以使用 DDR3 存储器作为共享内存;而当交互的数据较少时,既可以使用 OCM 作为共享内存,也可以使用 DDR3 存储器作为共享内存。值得一提的是,当交互的数据量较少时,OCM 作为共享内存有着独特的优势,与 DDR 内存相比,OCM 提供了非常高的性能和来自两个处理器的低延迟访问。需要注意的是,无论是 OCM 还是 DDR3 存储器作为共享内存,在访问之前,需要禁止存储空间的 Cache(缓存)功能,这样 CPU 能够及时读到该地址内存中变化的数据,以避免两个 CPU 访问共享内存的一致性问题。通过 Xil_SetTlbAttributes(INTPTR Addr, u32 attrib)函数禁用 Cache 属性,第一个参数为共享内存的基地址,第二个参数为设置内存的参数,包括是否禁用 Cache 等。Xilinx 官方提供了两个双核 AMP 的应用文档,“XAPP1078” 是基于两个 Linux 操作系统的双核 AMP应用文档,“XAPP1079”是基于两个裸机应用程序的双核 AMP 应用文档,感兴趣的朋友可以参考下。

    BD设计

    在这里插入图片描述

    软件设计

    CPU0的代码

    #include "xparameters.h"
    #include "xscugic.h"
    #include "xil_printf.h"
    #include "xil_exception.h"
    #include "xil_mmu.h"
    #include "stdio.h"
    
    //宏定义
    #define INTC_DEVICE_ID	     XPAR_SCUGIC_SINGLE_DEVICE_ID //中断ID
    #define SHARE_BASE           0xffff0000                   //共享OCM首地址
    #define CPU1_START_ADDR      0xffffff00                   //CPU1开始地址
    #define CPU1_START_MEM       0x10000000                   //CPU1程序开始地址
    
    u16 SoftIntrIdToCpu0 = 0 ;
    u16 SoftIntrIdToCpu1 = 1 ;
    #define CPU1_ID              2   //CPU1 ID,0bxxxxxx1x指向CPU1
    //"SEV"指令唤醒CPU1并跳转至相应的程序
    #define sev()                __asm__("sev")
    
    //函数声明
    void start_cpu1();
    void cpu0IntrInit(XScuGic *intc_ptr);
    void IntrHandler(void *CallbackRef);
    
    //全局变量
    XScuGic Intc;                    //中断控制器驱动
    int rec_freq_flag = 0;           //接收到来自cpu1中断的标志
    int freq;                   	 //频率调节
    
    //CPU0 main函数
    int main()
    {
    	//S=b1 TEX=b100 AP=b11, Domain=b1111, C=b0, B=b0
    	Xil_SetTlbAttributes(SHARE_BASE,0x14de2);    //禁用Cache缓存
    
    	//启动CPU1
    	start_cpu1();
    	//CPU0中断初始化
    	cpu0IntrInit(&Intc);
    	while(1){
    		if(rec_freq_flag == 0){
    			xil_printf("This is CPU0,Please input the numbers 1~3 to change "
    					"breath led frequency\r\n");
    			scanf("%d",&freq);
    			if(freq >= 1 && freq <=3){
    				xil_printf("You input number is %d\r\n",freq);
    				//将参数写入共享的内存
    				Xil_Out8(SHARE_BASE,freq);
    				//给CPU1发送软件中断
    				XScuGic_SoftwareIntr(&Intc,SoftIntrIdToCpu1,CPU1_ID);
    				rec_freq_flag = 1;
    			}
    			else{
    				xil_printf("Error,The number range is 1~3,please input another number\r\n");
    				xil_printf("\r\n");
    			}
    		}
    	}
    	return 0 ;
    }
    
    //启动CPU1
    void start_cpu1()
    {
    	//向 CPU1_START_ADDR(0Xffffffff0)地址写入 CPU1 的访问内存基地址
    	Xil_Out32(CPU1_START_ADDR, CPU1_START_MEM);
    	dmb();
    	sev();  //唤醒CPU1并跳转至相应的程序
    }
    
    //CPU0中断初始化
    void cpu0IntrInit(XScuGic *intc_ptr)
    {
    	//初始化中断控制器
    	XScuGic_Config *intc_cfg_ptr;
    	intc_cfg_ptr = XScuGic_LookupConfig(INTC_DEVICE_ID);
        XScuGic_CfgInitialize(intc_ptr, intc_cfg_ptr,
        		intc_cfg_ptr->CpuBaseAddress);
    
        //设置并打开中断异常处理功能
        Xil_ExceptionRegisterHandler(XIL_EXCEPTION_ID_INT,
        		(Xil_ExceptionHandler)XScuGic_InterruptHandler, intc_ptr);
        Xil_ExceptionEnable();
        //关联中断源及中断处理函数
        XScuGic_Connect(intc_ptr, SoftIntrIdToCpu0,
              (Xil_ExceptionHandler)IntrHandler, (void *)intc_ptr);
    
        XScuGic_Enable(intc_ptr, SoftIntrIdToCpu0); //CPU0软件中断
    }
    
    //中断服务函数
    void IntrHandler(void *CallbackRef)
    {
    	xil_printf("This is CPU0,Receive software interrupt from CPU1\r\n");
    	xil_printf("\r\n");
    	rec_freq_flag = 0;
    }
    

    CPU1代码的部分

    #include "xparameters.h"
    #include "xscugic.h"
    #include "xil_printf.h"
    #include "xil_exception.h"
    #include "xil_mmu.h"
    #include "stdio.h"
    #include "AXI_PWM.h"
    
    //宏定义
    #define INTC_DEVICE_ID	     XPAR_SCUGIC_SINGLE_DEVICE_ID //中断ID
    #define SHARE_BASE  	     0xffff0000                   //共享OCM首地址
    u16 SoftIntrIdToCpu0 = 0 ;
    u16 SoftIntrIdToCpu1 = 1 ;
    #define CPU0_ID              1                            //CPU1 ID,0bxxxxxxx1指向CPU0
    
    #define  PWM_IP_BASEADDR     XPAR_AXI_PWM_0_S00_AXI_BASEADDR //PWM IP基地址
    #define  PWM_IP_REG0         AXI_PWM_S00_AXI_SLV_REG0_OFFSET //PWM IP寄存器地址0
    #define  PWM_IP_REG1         AXI_PWM_S00_AXI_SLV_REG1_OFFSET //PWM IP寄存器地址1
    
    //函数声明
    void cpu1IntrInit(XScuGic *intc_ptr);
    void IntrHandler(void *CallbackRef);
    
    //全局变量
    XScuGic Intc;               //中断控制器驱动
    int intr_flag = 0;          //软件中断的标志
    int freq;                   //频率设置
    
    //CPU1 main函数
    int main()
    {
    	int freq_step = 0;
    	//S=b1 TEX=b100 AP=b11, Domain=b1111, C=b0, B=b0
    	Xil_SetTlbAttributes(SHARE_BASE,0x14de2);    //禁用Cache缓存
    
    	//CPU1中断初始化
    	cpu1IntrInit(&Intc);
    	while(1){
    		if(intr_flag){
    			freq = Xil_In8(SHARE_BASE);     //从共享内存中读出数据
    			xil_printf("CUP1 Received data is %d\r\n",freq) ;
    			switch(freq){
    				case 1 : freq_step = 50;break;
    				case 2 : freq_step = 200;break;
    				case 3 : freq_step = 400;break;
    				default : freq_step = 50;break;
    			}
    			//设置呼吸灯频率
    			AXI_PWM_mWriteReg(PWM_IP_BASEADDR,PWM_IP_REG0,(0x00000000|freq_step));
    			//给CPU0发送软件中断
    			XScuGic_SoftwareIntr(&Intc,SoftIntrIdToCpu0,CPU0_ID);
    			intr_flag = 0;
    		}
    	}
    	return 0 ;
    }
    
    //CPU1中断初始化
    void cpu1IntrInit(XScuGic *intc_ptr)
    {
    	//初始化中断控制器
    	XScuGic_Config *intc_cfg_ptr;
    	intc_cfg_ptr = XScuGic_LookupConfig(INTC_DEVICE_ID);
        XScuGic_CfgInitialize(intc_ptr, intc_cfg_ptr,
        		intc_cfg_ptr->CpuBaseAddress);
        //设置并打开中断异常处理功能
        Xil_ExceptionRegisterHandler(XIL_EXCEPTION_ID_INT,
        		(Xil_ExceptionHandler)XScuGic_InterruptHandler, intc_ptr);
        Xil_ExceptionEnable();
        //关联中断源及中断处理函数
        XScuGic_Connect(intc_ptr, SoftIntrIdToCpu1,
              (Xil_ExceptionHandler)IntrHandler, (void *)intc_ptr);
    
        XScuGic_Enable(intc_ptr, SoftIntrIdToCpu1); //使能CPU1软件中断
    }
    
    //中断服务函数
    void IntrHandler(void *CallbackRef)
    {
    	xil_printf("This is CUP1,Soft Interrupt from CPU0\r\n") ;
    	intr_flag = 1;
    }
    
    
    展开全文
  • 而且由于产品更新换代的问题,硬件上是异构的。 基于arm架构单片机的hadoop服务器尝试 namenode是cubieboard一代,采用单核arm v7架构,1G内存,4G板载flash ROM datanode采用cubietruck,双核armv7,2G内...

    3月份的时候做了单机版的hadoop on arm的测试,最近又买了一个新的arm板子,就考虑把他们串起来组一个hadoop集群。而且由于产品更新换代的问题,硬件上是异构的。

    基于arm架构单片机的hadoop服务器尝试

    namenode是cubieboard一代,采用单核arm v7架构,1G内存,4G板载flash ROM

    datanode采用cubietruck,双核armv7,2G内存,8G板载Flash ROM,挂了一个80G的2.5寸磁盘。

    两个主板的操作系统均采用ubuntu server。

    nn的操作系统装在SD卡上,把nand分区格式化掉当存储,所谓nand就是flash ROM。

    dn操作系统直接刷在nand上,无SD卡,挂载一块硬盘当存储。

    怎么把linux安装到nand上这次先不讲,以后单独说。

    linaro@namenode:~$ df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/mmcblk0p2  1.8G  1.1G  600M  66% /
    devtmpfs        408M  4.0K  408M   1% /dev
    none            408M  128K  408M   1% /tmp
    none             82M  164K   82M   1% /run
    none            408M     0  408M   0% /var/tmp
    none            5.0M     0  5.0M   0% /run/lock
    none            408M     0  408M   0% /run/shm
    none            100M     0  100M   0% /run/user
    /dev/nand       3.8G   75M  3.5G   3% /opt
    

    linaro@datanode-01:~$ df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/root       2.0G  1.3G  648M  67% /
    devtmpfs        913M  4.0K  913M   1% /dev
    none            4.0K     0  4.0K   0% /sys/fs/cgroup
    none            183M  224K  183M   1% /run
    none            5.0M     0  5.0M   0% /run/lock
    none            913M     0  913M   0% /run/shm
    none            100M     0  100M   0% /run/user
    /dev/nandc      5.1G  139M  4.7G   3% /opt
    /dev/sda1        74G  180M   70G   1% /data
    linaro@datanode-01:~$
    

    dd测试一下磁盘性能,nand读写可以忽略不计,flash ROM上读写数据的效率可以用惨不忍睹来性能。写数据只有每秒可怜的5M,读数据每秒7M,逆天的慢。

    如果使用磁盘的性能差不多,就可以拼凑出一个超级屌丝的Hadoop集群来用。

    写数据性能,没有想象中的快,不过作为一个N年前的80G 2.5寸,5400转的SATA盘,这个成绩不错了。43.2MB/s

    linaro@datanode-01:~$ sudo time dd if=/dev/zero of=/data/1GB bs=4096 count=250000
    250000+0 records in
    250000+0 records out
    1024000000 bytes (1.0 GB) copied, 23.7274 s, 43.2 MB/s
    0.28user 11.04system 0:23.73elapsed 47%CPU (0avgtext+0avgdata 776maxresident)k
    8inputs+2000000outputs (0major+252minor)pagefaults 0swaps
    

    读数据性能超乎意料的好,惊了。338MB/s。

    linaro@datanode-01:~$ sudo time dd if=/data/1GB of=/dev/null bs=4096 count=250000
    250000+0 records in
    250000+0 records out
    1024000000 bytes (1.0 GB) copied, 3.02673 s, 338 MB/s
    0.19user 2.80system 0:03.03elapsed 98%CPU (0avgtext+0avgdata 776maxresident)k
    0inputs+0outputs (0major+252minor)pagefaults 0swaps
    

    如果是这样,那么当成Hadoop服务器肯定是没啥大问题的,本来hadoop就是做一次写入多次读取来用的,写入慢一些不怕,只要读取够快就行了。哪怕做hbase的在线服务也可以将就。

    有图有真相


    黑色为cubieboard一代,红色板卡为cubietruck,CT下面是80G硬盘

    202945349.jpg

    供电和网络

    202949885.jpg

    202954822.jpg

    硬盘连接

    202958936.jpg

    CPU info,datanode+tasktracker双核处理器

    203003946.jpg

    Namenode单核处理器

    203008987.jpg

    Namenode操作系统及cpu架构

    203016259.jpg

    Datanode操作系统及CPU架构

    203023380.jpg

    Pi冒烟测试,至少比我之前单片做Hadoop测试要快,如果把nand完全不当存储,全释放出来的话,可能还要更快。

    203030453.jpg

    namenode上nand当存储使。

    203036276.jpg

    datanode上挂载一个nand分区和硬盘共同存储数据。

    203042216.jpg

    两台tasktracker

    203053881.jpg

    两台datanode

    203059227.jpg

    总容量

    203104922.jpg


    arm因为现在只有32位CPU,所以处理能力很有限,但很高兴的是,这并不影响磁盘性能。我们至少可以组建一个基于arm的hadoop存储集群,作为冷数据的存储和备份使用。或者组建一个对线上提供查询服务的HBASE集群。这样做的主要好处是成本非常低廉,并且易于维护。

    算笔账,一块arm板子几百块钱,去掉作为开发板的那些不必要外设,诸如wifi,火线,HDMI,蓝牙,GPIO口,SD卡口的话,还能便宜。1TB的2.5寸7200转sata盘淘宝售价不到500。1T存储的总成本不到1000,去买块1T的sas盘也不止这些钱了。

    一台x86服务器,无硬盘也要10000多,假设用6块2T的sata盘,最便宜也要20000左右。而采用arm方案,12块arm板子加1T硬盘再加上电源设备和交换机设备只需要12000来块钱,硬件采购成本可以降低40%左右。

    而更省的是电力成本,一个arm板子加硬盘的耗电量大概是750mA,使用12V电源换算成功率大概是9瓦/时,算算x86服务器是多少瓦的?现在PC机电源450瓦都是起步,Dell R720的电源功率是750瓦。12个arm板子加硬盘的功率才只有108瓦。电费节省600%!!

    2U服务器arm开发板
    数量112
    磁盘2Tx6=12TB1Tx12=12TB
    功率750x1=750瓦9x12=108瓦

    至于维护方面,由于arm板卡硬盘和服务器一体化,如果有一块硬盘坏了,整体更换即可,无需关闭集群或者做热插拔。

    不过还是那句话,arm现在计算能力不足,无法用做大规模分布式计算,但是这种方式提供冷数据存储备份或小规模hbase在线服务是绰绰有余的。但是,这个问题在2014年arm 64位芯片大规模出货后应该可以得到极大的改善,目前由于32 位处理器的内存寻址范围只能到4G,所以还没法做大规模的集群应用,64位到来后,一切都会好起来。

    展开全文
  • 经过近两年的调整,AMD并非没有出路,他们已经为自己规划了三个快速发展的机遇:双核异构、低功耗。而开放和开源的思维贯穿始终。 开放才是未来 早在2012年,AMD就高调宣布要设计基于64-bit ARM架构的...
  • C2000 Concerto 系列MCU 是TI 推出的创新性的异构双核产品。Concerto 混合架构通过将业界最好 的实时控制功能和通讯功能集成在一个芯片内,提供高性能、高效率和可靠性,从而实现实时控制环 路和低延时的快速通讯...
  • 创龙TLZ7x-EasyEVM是一款基于XilinxZynq-7000系列XC7Z007S/XC7Z014S/XC7Z010/XC7Z020高性能低功耗处理器设计的异构多核SoC评估板,处理器集成PS端单/双核ARM Cortex-A9 + PL端Artix-7架构28nm可编程逻辑资源,评估板...
  • NXP iMX8 M4核心FreeRTOS Rpmsg应用示例

    千次阅读 2020-06-10 17:00:05
    NXP iMX8是NXP去年底发布的基于Cortex-A72/A53和Coretex-M4异构多核架构的ARM处理器,作为NXP i.MX系列最新性能也最为强大的处理器,升级了从iMX6 SoloX开始到iMX7的异构双核架构(如下框图),使得不同架构核心的...
  • 零拷贝问题

    2017-08-12 17:44:44
    JETSON TK1,TX1,TX2都是CPU-GPU异构架构,共享主存DRAM(最下边的) 左上角,四核arm A57 下一个, 四核arm A53 右边GPU 双核Maxwell arch sm_53 /TX 2 是pascal arch sm_62 缓存各管各的,无共享 last level cach...
  • 所采用的模块为Toradex VF61,是一款性价比极高但不包含硬件视频编解码加速的模块,核心处理器为NXP/Freescale Vybrid,Cortex-A5和M4异构双核架构
  • 所采用的模块为Toradex VF61,是一款性价比极高但不包含硬件视频编解码加速的模块,核心处理器为NXP/Freescale Vybrid,Cortex-A5和M4异构双核架构
  • FS-MP1A开发板是基于ST(意法半导体)公司的STM32MP1系列微处理器而设计的开发板,该系列处理器提供了集成 Arm® Cortex®-A7 和 Cortex®-M4 两种内核的异构架构,在实现高性能且灵活的多核架构以及图像处理能力基础...
  • 作为能够支持轻松开发更广泛应用的通用微处理器产品线,STM32MP1 系列基于单核或双核 Cortex-A7 与 Cortex-M4 组成的异构架构,加强了支持多应用和灵活应用的能力,可以随时实现最佳性能和功率数据。Cortex-A7 内核...
  • 1). 简介 MQX是由NXP提供的实时操作系统,结构框图如下图所示, 包含内核,文件系统以及协议栈, 同时对于NXP的ARM处理器也可以很好的支持,可以很方便的开发和部署. ... VF61为异构双核架构ARM处理
  • 利用监控视频中静态场景较...运用该方案和TI公司推出的双核架构高性能芯片OMAPL138,实现了一个基于异构多核的嵌入式视频监控系统。实验证明,该方案降低了系统在有静态场景时的平均传输码流,提高了视频的平均压缩比。
  • 基于低功耗浮点DSP+ARM双核架构的高性能芯片AM5728,开发一个带烟雾检测功能的视频监控与处理系统。该系统利用Davinci异构多核通信的基础组件SysLink,实现了视频信号在异构多核处理器之间的通信与处理,具有体积小,...
  • AM5728是TISitara系列高性能SOC,得益于异构多核处理架构,CPU内集成了多核DSP、多核PRU、IVA-HD、GPU等协处理单元,通过硬件加速的方式极大增强CPU的数据、多媒体处理能力,可满足工业协议支持、大数据计算、实时...
  • 基于C66x平台DSP与FPGA通信测试

    千次阅读 2018-10-31 15:14:10
    核心板DSP端采用单核TMS320C6655或双核TMS320C6657处理器,FPGA端采用Xilinx Artix-7处理器,实现异构多核处理器架构,DSP与FPGA内部通过uPP、EMIF16、SRIO连接; 底板接口资源丰富,支持uPP、E...
  • 核心板DSP端采用单核TMS320C6655或双核TMS320C6657处理器,FPGA端采用Xilinx Artix-7处理器,实现异构多核处理器架构,DSP与FPGA内部通过uPP、EMIF16、SRIO连接;底板接口资源丰富,支持uPP、EMIF1...
  • AM5728是TI Sitara系列高性能SOC,得益于异构多核处理架构,CPU内集成了多核DSP、多核PRU、IVA-HD、GPU等协处理单元,通过硬件加速的方式极大增强CPU的数据、多媒体处理能力,可满足工业协议支持、大数据计算、实时...
  • AM5728是TI Sitara系列高性能SOC,得益于异构多核处理架构,CPU内集成了多核DSP、多核PRU、IVA-HD、GPU等协处理单元,通过硬件加速的方式极大增强CPU的数据、多媒体处理能力,可满足工业协议支持、大数据计算、实时...
  • (4) 提供详细的 PS+PL SoC 架构通信教程,完美解决异构多核开发瓶颈。 开发例程主要包括:  基于 Linux 的开发例程  基于 FreeRTOS 的开发例程  基于 Baremetal(NoOS)的裸机开发例程  基于 PS 与 PL 端...
  • TB138S核心板规格书

    2015-11-19 19:43:47
    OMAPL138是德州仪器(TI)的TMS320C6748+ARM926EJ-S异构双核处理器;FPGA选用XILINX公司的Spartan-6系列芯片XC6SL16,可升级至XC6SL45。 OMAPL138作为主处理器,实现操作系统运行、算法处理、指令控制等功能;FPGA...

空空如也

空空如也

1 2
收藏数 24
精华内容 9
关键字:

双核异构架构