产品列表
品牌专区
BOM询价
关于我们
华为麒麟A29月25日,华为在秋季全场景新品发布会上发布新一代旗舰TWS耳机FreeBuds Pro 3,搭载了全新的音频芯片麒麟A3,麒麟A2最大亮点之一是支持星闪核心技术Polar码。根据公开的资料显示,华为上一代音频芯片麒麟A1是华为在2019年推出的芯片,时隔四年,麒麟A2的现身让业内人士看到华为在音频领域的技术积累。麒麟A2采用双DSP架构,算力提升50%,时延降低25%,分辨率精度提升88%,使得高清空间音频体验也得到全面提升。无线耳机的发展经历了从主要用于通话功能的蓝牙耳机,到追求音质的TWS耳机其传输速率不断提升,从64kbps,到320kbps,再到990kbps,音质从标清到高清不断提升。但是要进一步提升音质,实现CD级无损音质,传输速率需要达到1.4Mbps以上,而传输正是当前TWS耳机无损音质的瓶颈。为了实现音质上的提升,麒麟A2除了支持星闪核心技术Polar码,还支持L2HC 3.0编解码技术,配合华为Mate 60系列等支持Nearlink功能的手机,能够让FreeBuds Pro 3的传输速率达到1.5Mbps,超CD级无损音质。华为终端BG首席运营官何刚表示,星闪核心技术Polar码具备超远传输、高速稳定的特点,传输抗干扰能力达到-56dBm。炬芯低延迟无线收发音频芯片ATS3031近日,炬芯科技第二代2.4G/BT低延迟无线收发音频SoC芯片ATS3031发布量产。根据介绍,ATS3031集成了高品质音频编解码、超低延迟无线传输通路、超宽带32K双麦AI降噪等特点。支持双模蓝牙5.3,能够实现全链路48KHz@24bit高清音频传输,延迟波动±1ms,DAC底噪小于2μV。炬芯科技在蓝牙射频、基带和协议栈技术为核心的低功耗无线连接技术上有着深厚的积累,ATS3031采用炬芯科技第四代RF设计和最新的无线抗干扰技术,能够提供稳定可靠的无线连接。此外,ATS3031支持音频广播Auracast,支持linein、USB等多种音频输入源,兼容多种主流操作系统和主流通话软件。炬芯科技介绍,ATS3031可广泛应用于蓝牙收发一体器、无线麦克风、低延时电竞耳机和高清会议系统等相关产品,且首批终端客户倍思等旗下多款产品已经上市规模销售。杰理JL7016M直播麦克风芯片随着电商直播的兴起,麦克风芯片的迭代也成为市场需求之一。近期,杰理发布了直播麦克风芯片JL7016M,具备传输距离更远、时延更低、智能防啸叫等特点。根据介绍,JL7016M采用32bit 的高性能双核 SoC,搭载 32位DSP,集成了蓝牙5.3 BDR+EDR+BLE,支持AAC、SBC编解码。支持噪声抑制和回声消除,以及多波段均衡器,能够做到单/双麦克风降噪,提供无损音频体验。延迟低至20ms,直线通讯距离可达到100米。针对直播的特殊场景,JL7016M一拖二双麦间的麦克风语音互通,支持直播间PK连麦互动时双向音频传输,并且增加了增加蓝牙伴奏功能,还有专业级混响、环境降噪等功能。此外,在音频处理方面,JL7016M还具备智能降噪和智能防啸叫技术,提升直播体验。
FPGA(现场可编程门阵列)的时钟布局,是其设计中至关重要的一部分。时钟信号通常用于同步逻辑电路中的各个模块,确保它们在正确的时间进行操作,以避免时序问题和数据错位。FPGA 的时钟原理基本概念:☋ 时钟资源:FPGA 中包含一些全局时钟资源。以AMD公司近年的主流FPGA为例,这些时钟资源由CMT(时钟管理器)产生,包括DCM、PLL和MMCM等。其中DCM在旧的器件中应用,目前已被淘汰;PLL为模拟锁相环,大家较为熟悉,可以用之进行分频、倍频及作相位调节;图1 锁相环(PLL)的基本电路结构图MMCM在PLL的功能基础之上,提供更为强大的高阶功能:如动态相位调节、时钟扩频功能及时钟分配动态变化等。☋ 时钟分配与布线:FPGA 中通常有多个时钟资源,时钟信号需要正确分配到逻辑电路中。时钟信号的布线质量对设计的性能和功耗都有很大影响。☋ 时钟域交叉:当设计中存在多个时钟域时,需要正确处理不同时钟域之间的数据传输,以防止时序违规和异步时钟域之间的不稳定性问题图2 经过多级寄存器的跨时钟域数据处理方式☋ 时钟缓冲与时钟延迟:在 FPGA 中,时钟缓冲和时钟延迟对时钟信号的传播和同步至关重要。需要注意时钟缓冲的插入和时钟延迟对设计的影响。在需要进行跨时钟域数据传输时,可能需要使用时钟域转换器来实现时钟域之间的数据同步。时钟域转换器通常包括异步 FIFO 缓冲器、双口 RAM等。☋ 时序约束:通过时序约束来告诉综合工具和布局布线工具时钟的频率和时序要求,以确保时序要求得到满足。尤其对于每个时钟域,都需要明确指定相应的时序约束,包括时钟频率、时钟起始相位、时钟传播延迟等,以确保时序要求得到满足。通常包括:◆时钟频率约束:指定电路中时钟信号的最大频率,以确保电路在给定时钟频率下能够正常工作。◆时序路径约束:确定电路中各个信号的传输路径和时序关系。时序路径约束通常包括输入到输出的传输延迟、时钟到达时间等信息,以确保信号在特定时钟周期内能够到达目标节点。◆时钟域约束:确定电路中使用的各个时钟信号的逻辑域,并且定义各个时钟域之间的时序关系。☋ 时钟偏移和抖动:时钟信号可能存在偏移和抖动,这可能导致时序不稳定或违反时序约束。图3 理想的时钟和带抖动的时钟对比图解决 FPGA 中的时钟问题需要深入理解 FPGA 架构和时钟原理,并结合设计工具的使用技巧和实践经验。正确的时钟设计能够有效提高 FPGA 设计的性能、可靠性和稳定性。了解以上的时钟基本概念之后,我们可以对用户实际设计中的时钟使用情况作进一步的分析:时钟使用情况进一步分析☊ 门控时钟:此类时钟出现的目的是为了降低芯片的功耗,因此在ASIC芯片中经常应用。可分为高有效、低有效、XOR门结构、MUX结构控制等多种形式。图4 一个简单的门控时钟原理示意图由图可见,门控时钟实际上是输入到触发器时钟端的时钟,来自组合逻辑;那么,问题在于组合逻辑在布局布线之后肯定会产生毛刺,而如果采用这种有毛刺的信号来作为时钟使用的话,将会出现功能上的错误,同时还容易增加延时,引起时钟漂移,降低可测性;我们的改进方式是:用组合逻辑驱动CE端口,而不去改动clk端口;原厂的元件库提供了一种更为方便的方式:通过引入时钟缓冲器,既可以达到门控的效果,也避免了组合逻辑带来的时序风险。图5 BUFGCE时钟缓冲器☊ 同步时钟架构:也可以称为“单时钟方式”。这种时钟的工作方式往往出现在类emulator的硬件系统中,其主要特点是统一使用一个单时钟(root clock)输入,随后再由该时钟分出很多衍生时钟作为各模块的使用。这种时钟的结构好处是:对于非常复杂的时钟树结构,往往硬件系统本身能够提供的物理时钟源数量十分有限,且同步精度难以保证。那么采用这样的单时钟系统,不仅能够从源头上,保证所有时钟的同步性,同时,不需要对大量时钟作很多复杂的约束条件;最后,在调试过程当中,需要对时钟进行停止或启动的操作时,显得十分方便。缺点是,在这种模式下,由于采样率的限制及时钟到达时间的延迟,信号保持时间(Hold time)的条件往往难以满足;所以,整个设计的频率不会跑得很快。☊ 异步时钟架构:也可理解为“多时钟模式”。这种架构,一般在原型验证系统上用的较多,即:硬件系统本身提供很多路物理时钟(通过晶振或时钟发生芯片产生);通过增加定制化的时钟约束,用户的设计,可以较“单时钟方式”跑的更快一些。这样的好处:在硬件系统需要连接软件上位机作软硬件联合调试时,有着较大的性能优势并缩短整个系统运行的时间。缺点是由于其时钟的不可停止性,那么在功能debug调试上存在一定的限制,比方说看到的信号的位置不精准等等。
本课将为大家讲解CKS32F4xx系列产品的SysTick定时器原理及使用方法。SysTick定时器也叫SysTick滴答定时器,属于Cortex-M4内核外设。SysTick定时器可以用于查询延时、中断延时以及测量函数运行时间;在实时操作系统RTOS中作为滴答定时器,用于上下文切换。采用Cortex-M内核的微处理都有SysTick定时器,方便不同处理器之间的软件移植。SysTick定时器时钟源可直接选取系统时钟,还可以通过系统时钟8分频后取得。SysTick定时器内部是一个递减的计时器,当减到0时,将从LOAD寄存器中自动重装定时器初始值,重新向下递减计数,如此循环往复。如果开启SysTick中断,当计数器减到0时,SysTick可以生产异常,异常编号为15。SysTick定时器寄存器SysTick定时器内部是一个24位向下递减的计时器,包含4个寄存器,如图。图1SysTick定时器框图1)STK_CTRL寄存器STK_CTRL是SysTick定时器的控制及状态寄存器,相应功能如下:2)STK_LOAD寄存器STK_LOAD寄存器是SysTick定时器的重装载数值寄存器,相应功能如下:3)STK_VAL寄存器STK_VAL寄存器是SysTick定时器的当前数值寄存器,相应功能如下:4)STK_CALIB寄存器STK_CALIB寄存器是SysTick定时器的校准数值定时器,用于利用片上硬件为软件提供校准信息,但使用情况较少。在CMSIS Core中,不需要使用SysTick校准寄存器,因为CMSIS Core提供了一个名为“SystemCoreClock”的软件变量。此变量在系统初始化函数“SystemInit()”中设置,每次更改系统时钟配置时也会更新。这种方法比使用SysTick CalibrationRegister的硬件方法灵活。校准寄存器描述如下表:查询延时使用步骤1)配置SysTick定时器时钟源2)加载延时计数值 3)清零计数器,启动定时器开始递减计数 4)等待计数结束 5)清零计数,关闭定时器,延时结束 相关函数如下:中断方式延时使用步骤1)配置SysTick定时器时钟源2)调用系统函数SysTick_Config(),开启中断,配置中断间隔3)延时函数赋值延时变量,并等待延时变量递减到0,达到精确延时效果4)中断函数中延时变量递减到0 相关函数如下:测量短时函数的执行时间SysTick计时器可用于计时测量。例如,可以使用以下代码测量短函数的持续时间:SysTick->CTRL = 0; // 禁用 SysTickSysTick->LOAD = 0xFFFFFFFF; // 设置重装寄存器到最大值SysTick->VAL = 0; // 清零VALSysTick->CTRL = 0x5; // 使能SysTick, 使用处理器时钟while(SysTick->VAL != 0); // 等待重装完毕start_time = SysTick->VAL; // 较大的起始点TestDelayFunc(); // 待测函数执行时间stop_time = SysTick->VAL; // 获取执行结束时间cycle_count = start_time e stop_time;//计算函数执行时间由于SysTick是一个递减计数器,因此start_time的值大于stop_time。如果待测函数执行时间较长,这种情况必须启用SysTick异常,并使用SysTick处理程序来计算SysTick计数器下溢的次数。总结及注意事项SysTick定时器是微处理器系统内部定时器,提供精确的时间延时和计时功能。采用中断方式延时,需要考虑SysTick中断优先级较低,容易被打断影响延时;在嵌入式系统中,系统将使用SysTick计时器,应用程序中则不可在使用SysTick;在系统在线调试停止时,SysTick计时器将停止计时。
询价列表 ( 件产品)