soc

Linux ALSA驱动框架(五)--ASoC架构中的Machine

匿名 (未验证) 提交于 2019-12-02 21:59:42
(1) ASoC被分为Machine、Platform和Codec三大部分,其中的Machine驱动负责Platform和Codec之间的耦合以及部分和设备或板子特定的代码,Machine驱动负责处理机器特有的一些控件和音频事件(例如,当播放音频时,需要先行打开一个放大器);单独的Platform和Codec驱动是不能工作的,它必须由Machine驱动把它们结合在一起才能完成整个设备的音频处理工作。 ASoC的一切都从Machine驱动开始,包括声卡的注册,绑定Platform和Codec驱动等等,下面就让我们从Machine驱动开始讨论吧。 (1) arch/mips/xburst/soc-x1630/common/platform.c }; &pd_x1830_audio_i2s_ops , }; }; { } }; module_platform_driver(snd_pd_x1830_audio_driver); 通过snd_soc_card结构,又引出了Machine驱动的另外两个个数据结构: 其中,snd_soc_dai_link中,指定了Platform、Codec、codec_dai、cpu_dai的名字,稍后Machine驱动将会利用这些名字去匹配已经在系统中注册的platform,codec,dai

华为海思芯片型号和处理器应用领域参考

随声附和 提交于 2019-12-02 02:00:24
这里给大家整理了海思平台芯片型号和处理器所对应的用途,后续会持续更新/添加,大家知道的也可以在留言处告诉我 华为海思半导体(Hisilicon) 监控设备 Hi3559AV100 高端行业IP摄像头Soc 华为海思半导体(Hisilicon) 监控设备 Hi3519AV100 先进的智能IP摄像头Soc 华为海思半导体(Hisilicon) 监控设备 Hi3516CV500 主流2M智能IP摄像头SoC 华为海思半导体(Hisilicon) 监控设备 Hi3516DV300 专业4M智能IP摄像SoC 华为海思半导体(Hisilicon) 监控设备 Hi3519V101 先进的工业IP摄像头Soc 华为海思半导体(Hisilicon) 监控设备 Hi3516AV200 主流行业IP摄像头Soc 华为海思半导体(Hisilicon) 监控设备 Hi3516AV100 主流行业IP摄像头Soc 华为海思半导体(Hisilicon) 监控设备 Hi3516DV100 先进的全高清IP摄像头Soc 华为海思半导体(Hisilicon) 监控设备 Hi3516CV300 主流全高清IP摄像头Soc 华为海思半导体(Hisilicon) 监控设备 Hi3516CV100/200 主流全高清IP摄像头SoC 华为海思半导体(Hisilicon) 监控设备 Hi3516EV100

蓝牙BLE数传语音芯片SOC选型说明和参考电路

喜夏-厌秋 提交于 2019-11-30 22:52:37
一、 简介 随着手机的平民化以及物联网的普及,越来越多的产品都在开始考虑增加蓝牙功能,从何实现和智能手机的人机交互。但是一些特定的产品,单纯一颗蓝牙芯片往往是无法实现的。例如:需要蓝牙数据传输 ,同时需要语音提示的一些应用场景,所以工程师在这一块的选择,就会遇到困难 普通的应用场景如下: 二、 芯片 的 硬件说明 芯片内置flash 存储语音 ,并且也支持外扩 spiflash 芯片,实现客户不同的语音播报需求 三、 选型的总结 笔者认为,选型的原则就是不要不够,也不要浪费。能用国产,就坚决不用国外的。能用成本低的就坚决不用成本高的,能用 SOC芯片,坚决不用分立器件 1、 随着芯片朝着 SOC的趋势,传统的很多很多单一芯片的功能,会越来越趋向于集成化 2、单颗芯片取代了一些需要多颗芯片完成的功能 来源: https://www.cnblogs.com/qyvhome/p/11643776.html

SoC-System on Chip-芯片级系统

痴心易碎 提交于 2019-11-30 19:31:40
System on Chip,简称Soc,也即 片上系统 。从狭义角度讲,它是信息系统核心的芯片集成,是将系统 关键部件 集成在一块芯片上;从广义角度讲, SoC是一个微小型系统,如果说 中央处理器 (CPU)是大脑,那么SoC就是包括大脑、心脏、眼睛和手的系统。国内外学术界一般倾向将SoC定义为将 微处理器 、模拟IP核、数字IP核和 存储器 (或片外存储控制接口)集成在单一芯片上,它通常是客户定制的,或是面向特定用途的标准产品。 SoC定义的基本内容主要在两方面:其一是它的构成,其二是它形成过程。系统级芯片的构成可以是系统级芯片控制逻辑模块、 微处理器 /微控制器 CPU 内核模块、 数字信号处理器 DSP模块、嵌入的 存储器 模块、和外部进行通讯的接口模块、含有ADC /DAC 的模拟前端模块、电源提供和功耗管理模块,对于一个无线SoC还有射频前端模块、用户定义逻辑(它可以由 FPGA 或 ASIC 实现)以及微电子机械模块,更重要的是一个SoC 芯片内嵌有基本 软件 (RDOS或COS以及其他 应用软件 )模块或可载入的用户软件等。系统级芯片形成或产生过程包含以下三个方面: 1) 基于单片集成系统的 软硬件协同设计 和验证; 2) 再利用逻辑面积技术使用和产能占有比例有效提高即开发和研究IP核生成及复用技术,特别是大 容量 的存储模块嵌入的重复应用等; 3) 超深亚微米

谈谈IC、ASIC、SoC、MPU、MCU、CPU、GPU、DSP、FPGA、CPLD

半腔热情 提交于 2019-11-30 16:28:47
IC (integrated circuit) 集成电路 :微电路、微芯片、芯片;集成电路又分成:模拟集成电路(线性电路)、数字集成电路、数/模混合集成电路; 模拟集成电路 :产生、放大、处理各种模拟信号(幅度随时间变化的信号); 数字集成电路 :产生、放大、处理各种数字信号(时间和幅度上离散取值的信号); 集成电路按用途分成: 专用集成电路(ASIC) 、通用集成电路; ASIC (Application Specific Integrated Circuit) 专用集成电路:是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。 目前用 CPLD (复杂可编程逻辑器件)和 FPGA (现场可编程逻辑阵列)来进行ASIC设计是最为流行的方式之一,它们的共性是都具有 用户现场可编程特性 ,都支持边界扫描技术,但两者在集成度、速度以及编程方式上具有各自的特点。 ASIC是对特定算法定制的芯片,所以效率是最高的 ,但是一旦算法改变,芯片就无法使用。 现代ASIC常包含整个32-bit处理器,类似ROM、RAM、EEPROM、Flash的存储单元和其他模块. 这样的ASIC常被称为 SoC(片上系统) 。 SoC (System On Chip) 片上系统 :MCU只是芯片级芯片,SOC是系统级芯片,它既像MCU那样有内置RAM,ROM的同时

socket套接字

核能气质少年 提交于 2019-11-29 19:20:13
一、用套接字实现简单通信 1.1服务端 import socket soc = socket.socket(socket.AF_INET,socket.SOCK_STREAM) #绑定IP地址和端口号 soc.bind(('192.168.11.195',8080)) #处于监听状态 soc.listen(5) #准备接收数据 conn,addr = soc.accept() #接收数据,最大为1024字节 data= conn.recv(1024) # 打印客户端发来的信息 print('客户端发来的数据:',data) #发送信息 conn.send(b'sjdiuamjnd') # 关闭通信 conn.close() #关闭连接 soc.close() 1.2 客户端 import socket soc = socket.socket() #连接IP地址和端口号 soc.connect(('192.168.11.195',8080)) #发送消息 soc.send(b'adndhbv') #接收1024个字节 data = soc.recv(1024) #打印接收的数据 print('服务端接受的数据:',data) #关闭连接 soc.close() 二、用套接字实现通信循环 由于简单通信,客户端和服务器发一次数据就端来连接了,我们现在要用一种方法让他实现

Zynq_7000 sOC的初次使用

眉间皱痕 提交于 2019-11-29 14:36:23
工具:vivado 2015、SDK 目的:初步掌握在Vivado集成开发环境下基于Zynq--7000 Soc实现嵌入式系统基本硬件和软件设计的方法和实现流程。 1、创建工程 注意:建议大家首先讲该文件 zedboard 复制到自己的vivado安装目录下: 安装盘符:\xilinx\vivado\2015.4\data\boards\board_files.否则图1.2可能找不到板子哦。 1.1 1.2 2、Then,使用IP集成器创建处理器系统 使用vivado集成开发环境提供的IP集成器创建一个新的设计块,用于生成基于ARM Cortex- A9处理器的嵌入式硬件系统。 2.1create block design 输入zynq搜索,选中标红,回车 点击标红的绿色字 可以得到如下,自动为ddr和固定IO添加了端口,同时也出现很多多余的端口。 下面准备修改zynq的默认设置,移除那些多余的端口。 双击zynq符号,出现re-customize IP:ZYNQ7 Processing System。 得到如下图。其中凡是可配置的块,都是以绿色高亮显示。 在本设计中只使用UART1,所以其余的都取消勾选。 右侧电压也要选3.3 点击OK退出,右键,重新布局。 得到如下最小系统 有效性验证: OK,表示当前设计正确。 3、生成顶层HDL并导出设计到SDK. 将生成IP集成器输出

米联客 ZYNQ/SOC精品教程 S02-CH08 定时器中断实验

纵然是瞬间 提交于 2019-11-28 21:49:31
软件版本:VIVADO2017.4 操作系统:WIN10 64bit 硬件平台:适用米联客 ZYNQ系列开发板 米联客(MSXBO)论坛: www.osrc.cn 答疑解惑专栏开通,欢迎大家给我提问!! 8.1 概述 本课将中断对于实时系统是非常重要。本课简要介绍了ZYNQ的中断原理和中断类型,详细介绍了私有定时器,在ZYNQ的纯PS里实现私有定时器中断。每隔一秒钟中断一次,在中断函数里计数加1,通过串口打印输出。 8.2 中断原理 中断对于保证任务的实时性非常必要,ZYNQ中集成了中断控制器GIC(Generic Interrupt Controller).GIC可以接受I/O外设中断IOP和PL中断,将这些中断发给CPU。 中断体系结构框图图下: 8.2.1 软件中断(SGI) SGI通过写ICDSGIR寄存器产生SGI. 8.2.2 共享中断SPI 通过PS和PL内各种I/O和存储器控制器产生。 8.2.3 私有中断(PPI) 包含:全局定时器,私有看门狗定时器,私有定时器以及来自PL的FIQ/IRQ。本文主要介绍PPI,其它的请参考官方手册ug585_Zynq_7000_TRM.pdf。 ZYNQ每个CPU连接5个私有外设中断,所有中断的触发类型固定不变。并且来自PL的快速中断信号FIQ和中断信号IRQ反向。尽管在ICDICFR1寄存器内反应它们是低电平触发,但是PS

米联客 ZYNQ/SOC精品教程 S02-CH07 PL中断请求实验

China☆狼群 提交于 2019-11-28 19:22:19
软件版本:VIVADO2017.4 操作系统:WIN10 64bit 硬件平台:适用米联客 ZYNQ系列开发板 米联客(MSXBO)论坛: www.osrc.cn 答疑解惑专栏开通,欢迎大家给我提问!! 7.1 概述 本课节对ZYNQ的中断进行了介绍,并通过PL端按键输入中断信号,PS端进行处理,讲解了外部中断使用。 7.2 ZYNQ 中断介绍 7.2.1 ZYNQ中断框图 上图为ZYNQ中断分布框图。可以看到部分PL到PS部分的中断,经过中断控制分配器(ICD),同时进入CPU1 和CPU0。查询下面表格,可以看到PL到PS部分一共有20个中断可以使用。4个快速中断(PPI),即IRQF2P[19:16];16个共享中断(SPI),即IRQF2P[7:0]、IRQF2P[15:8]。这16个中断可以任意定义,本课涉及使用。 7.2.2 ZYNQ CPU软件中断 (SGI) ZYNQ共有两个CPU,每个 CPU具备各自的16个软件中断。 7.2.3 ZYNQ CPU 私有端口中断 私有中断不能修改。这里有2个PL到 CPU 的快速中断nFIQ 7.2.4 ZYNQ PS和PL共享中断 共享中断就是PL的中断可以发送给PS处理。上图中,黄色区域是16个PL的中断,它们可以设置为高电平或者低电平触发。 7.3 搭建BD工程 Step1:新建一个名为为Miz_sys的工程。 Step2

米联客 ZYNQ/SOC精品教程 S02-CH03 XADC 实验

╄→尐↘猪︶ㄣ 提交于 2019-11-28 17:34:18
软件版本:VIVADO2017.4 操作系统:WIN10 64bit 硬件平台:适用米联客 ZYNQ系列开发板 米联客(MSXBO)论坛: www.osrc.cn 答疑解惑专栏开通,欢迎大家给我提问!! 3.1 概述 本课讲解了使用芯片内部XADC采集片上电压以及温度的方法。 Xilinx 7系列的ADC是一个双12位分辨率的而且每秒一兆(MSPS, 1 Mega sample per second)采样速率的模数转换器,是一种通用的、高精度的模数转换器,双通道的ADC支持单极和差分输入工作模式,其最多可支持17路外部模拟输入通道。 上图为XADC的一个内部实现框图,从图中可以看出ADC分为12位的A和B两个,故称为双12位。其中ADC A可以对供电电压进行采样,供电电压包括VCCINT、VCCAUX、VCCBRAM,其中Zynq-7000系列的芯片还支持对VCCPINT、VCCPAUX和VCCO_DDR的采样,还包括温度的采样和外部模拟输入的采样。ADC B只能对外部模拟输入进行采样转换。 XADC内部包括16位的控制寄存器和状态寄存器,控制寄存器可以通过DRP(DynamicReconfiguration Port)进行读写操作,从而实现对XADC的初始化配置,而状态寄存器只能进行读取,ADC将采样转换后的值保存在对应的状态寄存器,通过DRP便可以将其读出