广告

扩展音频系统设计时要小心这些陷阱

2023-08-25 17:00:24 Dave Betts 阅读:
随着产品路线图的推进,您可能希望将自己的设计缩减到成本更低的平台,以便进行更大规模的生产。然而,在进行这种扩展时,会有许多陷阱让人防不胜防···

成功的音频信号处理产品的硬件设计可能很复杂,因此最小化可行产品(MVP)的首次设计通常会使用功能强大的通用平台。与直接使用功能较弱的处理器相比,这样更容易让首个MVP进入市场。但是,随着产品路线图的推进,您可能希望将设计缩减到成本更低的平台,以便进行更大规模的生产。然而,在进行这种扩展时,会有许多陷阱让人防不胜防。ydKednc

许多公司在生产第一批小批量产品时,都会遇到这样的问题:他们只能使用能够市面上有的处理器。可用于嵌入式计算的合适的产品数量却有限。这似乎有悖于直觉,因为在互联网上随便搜索一下,就会发现有数百种可供选择的产品在销售,但它们并不是截然不同的产品,深入研究就会发现它们只不过是少数几种基本平台的变体而已。这些不同的处理器有多种引脚排列、内存大小等可供选择。因此,您的选择就变成了寻找具有所需引脚的最便宜的设备,您不太可能在多种不同的处理器之间进行选择。ydKednc

由于您从一开始就意识到,您希望在适当的时候生成设计的缩减版本,所以即使在选择首个平台之前,您也必须对您的计算和输入/输出需求进行全面的分析,这一点至关重要。这项工作将使您了解哪些是可扩展的,哪些将保持不变。这反过来又会影响计算负载和内存带宽,从而限制了可供选择的较小、较弱平台的范围。ydKednc

但是,您应该注意,不要根据首个较大平台非显而易见的功能来假设可扩展性。例如,您可能在多处理器系统中拥有大型二级缓存。您不应该假设您的代码在转移到缓存较小的平台时也能正常运行,不过这是很难检查出的。主是因为您无法禁用部分缓存来测试代码在较小缓存上的执行情况。取而代之的是,您必须尝试分析缓存利用率,但实际上,只有当您迁移到较小的平台时,您才能发现代码在较小的缓存上运行得如何。ydKednc

这就是常见问题的一个很好的例子:您必须根据经验猜测哪些东西可以很好地缩减。您需要认识到,从高端平台推断廉价平台的性能往往是错误的。必须考虑到这样一个事实,即有些因素在高端平台上是不可见的,因此你没有将它们考虑在内。虽然有一些可预测的未知因素,如缓存带宽减少、内存总线变窄、时钟速度降低、大容量存储速度变慢以及外设总线上的争用可能增加,但也存在一些显然无法预测的未知因素。ydKednc

改用更便宜的处理器可能意味着软件团队不得不面对维护更差、功能更少的操作系统(OS)环境。即使保持在相同的范围内,例如Cortex-A处理器,也可能需要从最新的Linux内核更改为几年前且即将接近支持结束的内核,或者必须更换OS构建系统(比如,从Yocto到Buildroot),同时需要对员工进行再培训。ydKednc

更严重的变化可能是在缩减规模时受到压力要迁移到明显不同的架构,例如,从ARM Cortex-A到Cortex-M。这里的问题是,原始架构的许多功能(比如,内存管理)将不再存在。而要从通用微控制器单元过渡到数字信号处理系统等完全不同的架构,则需要几乎完全重写代码。为了降低这些风险,请确保您的软件尽可能独立于操作系统。压缩所有特定于操作系统和架构的代码,以便在较小的设计中轻松替换。ydKednc

内存占用可能是一个大问题。代码有可能执行得"慢吞吞",且它的低效被初始较大系统上的大量可用的RAM所掩盖,这可能会在资源更加受限的系统上造成重大问题。通过定期进行全面的代码审查并使用Valgrind等工具来优化代码,可以避免这种情况。ydKednc

为了降低成本,可能需要对产品功能做出取舍。例如,从最初使用成本为2美元或3美元的高规格电源控IC的演示机转向成本为50美分的简单得多的电池充电器,将导致对电池充电时间的控制变差很多。解决的办法是与产品经理进行非常明确的对话,以制定并商定最低功能,并确保满足客户对成本/性能权衡的期望。ydKednc

对于音频系统来说,还需要考虑其他问题。例如,您可能一开始使用的处理器具有非常高质量和高度可配置的脉冲密度调制(PDM)到脉冲编码调制(PCM)转换滤波器(例如NXP IMX8中的滤波器),然后转向更便宜的处理器,只具有更基本的PDM到PCM转换过滤器。此举可能会对信号质量产生影响,并且很容易被忽视,可能会导致白费力气去寻找行为改变的原因。ydKednc

如果您要减少PCB层数以实现更低成本的设计,则需要更加注意接地和音频信号隔离。这是因为,随着层数的减少,您无法轻松地拥有专用的模拟接地层。在这种情况下,很容易因为在本应完整的接地层上布线,意外的中断信号的返回路径(自认为“只有这一点小走线不会造成伤害”),从而导致电磁干扰问题甚至让高速接口完全失效。ydKednc

要成功地将音频产品的初始硬件设计缩减到更小、功能更弱的系统上,关键在于提前计划。请记住,您的初始设计将不可避免地需要进行缩减,做好相应的准备。有些问题是无法预料的,也就是那些未知的未知数,但通过精心设计和确保硬件与软件团队的良好配合,许多问题可以避免。ydKednc

(原文刊登于EDN姊妹网站embedded,参考链接:Avoid these pitfalls when scaling audio systems design,由Ricardo Xie编译。)ydKednc

责编:Ricardo
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
广告
热门推荐
广告
广告
广告
EE直播间
在线研讨会
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了