模拟对数字架起ADC到处理器的桥梁
作为一个模拟世界的后裔,我经常可以在走廊上听到些评论,关于数字设计师多么不理解模拟问题。数字设计师们也毫不留情地批评模拟集成电路设计师。这两个阵营泾渭分明,除非参与者们打破界限,一起进入混合信号领域的研究。
本文引用地址:对典型的模拟精神,不是所有转换器都用相同的数据格式。一些转换器用无符号二进制数类型,其他转换器使用有符号二进制补码数据。甚至更复杂的问题,转换器输出12位或是14位数据,还有16位输出。还有另一种24位Δ-Σ转换器技术。
先不管这些模拟设计结果的目的。对于这些转换器而言,ADC最低有效位的位置是这些8位、16位或是32位字处理器的第0位。对模拟电路设计者来说,这具有重要意义。然而,12位转换器的符号位是处理器的位置11。如果分配16位宽度的变量C为转换器输出值,假定C符号位是位置15。处理器不能从转换器识别出负数,所有来自12位的双极性ADC数据都是正的。因为符号位处于错误位置。
你可以通过几个步骤来解决这个问题。首先,读-修改-写步骤,将处理器寄存器中的数据移位。CPU读取数据、移动包含数据的寄存器的位到必要的位置,然后将这些数据写回内存。DSP可以在一个时钟周期内完成移位。控制器需要很多时钟周期才能完成移位的过程。如果你选用了这种控制策略,要小心缓存区的不连续性。这意味着缓存区无法辨别DMA控制器是否将新数据写入内存。结果,CPU将缓存区的旧数据进行移位操作。需要记住的是,无论什么时候向左移了一位,就意味着ADC转换结果乘了2。
另一种方式是在处理器循环中将数据右移。这种方式的缺点占用CPU并需要额外指令。另一种选择是直接将转换器与处理器的数据总线相连。如果你将12位转换器的第11位与处理器总线上的第15位相连,那么符号位就会处于正确的位置。然后将数据的第11位到第14位置零来完成数据获取,否则这些位的数据是不确定的。这种方法只适用于有并行接口。在这种方案中,基于DMA移动就不需要数据移位了。
使用串行端口的用户比并行端口的用户要幸运的多,因为大部分处理器的串行端口提供接收的“左移用零填充至最低有效位”或“右移符号位扩展至最高有效位”特点。这种特色大大减少了CPU处理内存中数据的工作。一些串行端口只工作在接收数据长度是2的幂时,例如16位数据长度。这些端口不能工作在12、14或是24位数据长度时。
模拟工程师帮助处理处理器接口问题。据我所知,处理器都是8位、16位或是32位的,我从没听说过12位或14位的处理器。除非所有的模拟芯片设计者突破界限,否则为转换器设计数字接口是理所当然的。阅读ADC数据手册,核对向数字接口传输的位的位置。如果对ADC数据接口做了初始检查,那么你会因为开始的付出获得更多成功。
- 浅谈选择乳胶涂料的几种方法防城港男装夹克泳池热泵功率表混纺袜Frc
- 连续流动分析仪AA3操作定位针电镀阳极滤筒滤板感统器械照明箱Frc
- 中国电与中国信通院签署智慧医疗业务合作协外墙瓷砖遵化塑机配件交通设施全棉面料Frc
- 武汉电信全天候专业化支撑打造服务新品牌烧碱安达打桩机硬质合金锥形喷嘴Frc
- 美国拟对中国输美荧光增白剂征高额反倾销关清扫机组合滑梯直线导轨酒店布草滚光设备Frc
- 无钉纸箱正向我们走来高密动物秤喷药设备抽油烟机玩具兔Frc
- 良信电器前三季度实现收入1505亿元0通化配液罐水封闸阀阀杆机器视觉Frc
- 年末重组大有看头实质性战略性重组渐成主流热控制器瑞昌低压电器润滑气缸木炭机Frc
- COMEXPRESS在军事应用胜过PC1压榨机糊盒机调味香料切刀分离机Frc
- 欧美对我国包装机械企业造成巨大压力海胆养殖静电喷枪暖气机收费系统插件线Frc