简介
有三种类型的可编程技术对当今工程师开发电子产品的方式造成了巨大的影响。以出现在市场上的先后次序排列,这三类技术分别是:1)微处理和微控制器;2)可编程逻辑;3)可编程模拟阵列。其中每项技术所提供的可编程能力都使设计人员在设计电路时拥有了更新更完全的灵活性和更高的集成度。
最早的可编程技术是于30多年前出现的微处理器和微控制器(MPU和MCU)。此类器件为设计人员提供了利用硬件和软件的组合来分割处理问题的灵活性。此前,通过软件硬件划分来处理问题仅适用于大型计算机。分割处理问题不仅简化了设计过程,加快了设计时间,提供了成本更低的解决方案,还提供了在未来项目中调整并重新使用原来设计工作的能力。利用这些新技术还可以实现此前认为不可能的一些产品。
可编程逻辑的出现使设计人员可容易地在系统中使用复杂的数字逻辑,并且不需要象以前那样采用大量低集成度的逻辑器件。随着灵活性的增加和集成度的提高,开发时间缩短了,而设计复杂性也提高了。可编程逻辑的最新版本,如复杂可编程逻辑器件(CPLD)和现场可编程门阵列(FPGA),则进一步提高了集成度。
可编程模拟阵列产品已经存在多年了,但直到最近才获得业界广泛接受,这主要是由于出现了更完善的开发工具和现场可编程技术。现场可编程模拟阵列(FPAA)产品在模拟设计方面为工程师提供了更高的灵活性,而且利用此类器件的可编程能力,设计中可不再需要掩膜步骤。
此类器件对解决应用问题非常有用。实际应用问题多数包含以下系统部件之一,如处理器内核、数字逻辑或模拟逻辑。例如,主要由数字逻辑构成的电路可通过使用可编程逻辑器件获得最大的好处,但主要由模拟系统单元组成的设计则无法从可编程逻辑器件中获得同样的好处。
不幸的是,许多现实系统都需要在单个器件中结合所有这些类型的系统部件。最近业界存在一个趋势,许多设计都开始转向片上系统(SoC)方式。这主要是由于工程师希望在单个器件中集成所有这些器件。根据设计人员的要求创建定制SoC可为设计人员提供精确满足其应用需求的灵活性。
但采用定制SoC有两个最大的缺点,首先是高昂的一次性工程费用(NRE),其次是从产品概念到生产阶段需要很长的前置开发时间。一类称为可编程片上系统(PSoC)的新型可编程器件可结合前述各种可编程器件的优点,从而为许多现实应用提供一种平衡解决方案。
PSoC器件包括可编程逻辑模块和一个处理器内核。这些器件相互配合提供了传统SoC所具有的定制能力,但却避免了一次性工程费用过高和较长的前置时间这两大问题。PSoC是用户可编程的器件,设计人员可利用安装在自己计算机中的开发工具对器件进行配置。对于嵌入式应用来说,PSoC
提供了很大的优点。因为嵌入式应用设计人员经常需要设计集成了所有这些系统部件的产品,而同时又需要满足苛刻的成本目标。
PSoC架构
PSoC 架构由称为PSoC模块的模拟和数字逻辑模块构成,这些模块旨在允许用户实现范围广泛的功能。在设计PSoC产品系列时最重要的步骤之一是要平衡器件成本以及数字和模拟阵列所提供的灵活性水平。如果数字和模拟阵列架构太通用,器件的灵活性水平会很高,但成本则会太高,以致市场难以接受。选择PSoC架构时在模拟和数字阵列两方面都要考虑到这一平衡,从而保证即可提供较高的灵活性又能够满足苛刻的成本目标。
每个数字PSoC模块都是一个8位宽的资源。用户可以将一个数字PSoC模块配置为众多8位功能中的任意一种。为实现更大位宽的数字功能,可以将模块级联起来(例如,两个模块可实现一个16位定时器,或者利用三个模块实现一个24位定时器)。数字模块还可实现多种通信功能,如UART、SPI和红外通信。需要指出的是,数字模块是在功能一级而不是在门一级进行编程的。数字模块无法实现任意随机的数字逻辑,但其众多可能配置可以实现许多数字功能。
模拟PSoC模块基于可编程运算放大器。有三种类型的模拟PSoC模块,每种模块在运放的反馈路径上有不同的电路器件安排。第一种类型的模拟PSoC模块采用的是连续时间设计,其中在反馈路径上有可编程的电阻矩阵。此类模拟PSoC模块具有高输入阻抗,对于设计可编程增益或衰减放大器、仪表放大器、滤波器和模拟比较器非常有用。
其它两类模拟PSoC模块在反馈路径上采用了交换电容器阵列。两种类型的PSoC模块在反馈路径拓扑方面仅有很小的不同,两种交换电容式PSoC模块都可构成一个四次滤波器。此类PSoC模块还可支持逐步逼近型ADC、
ADC和电容式DAC。图2中给出的是一种开关电容式PSoC模块的框图。
开发过程和开发工具
将数字和模拟PSoC模块转变为有用的功能并不是非常简单的事情,而开发工具支持对完成这一工作至关重要。因此,PSoC器件系列还配套提供"用户模块"(User
Module)库来帮助用户完成器件配置。用户模块是预创建预测试的可完成特定功能的PSoC配置。典型的数字用户模块是一个16位PWM,典型的模拟用户模块是一个12位增量ADC。这些用户模块使开发人员可集中精力创建最优的器件配置,而实现配置所需要的实际寄存器位设置工作则由开发工具完成。
PSoC器件中还有大量的可编程布线资源,模拟和数字信号可利用这些布线资源实现用户模块间的连接。PSoC架构与此前的可编程技术非常不同的一点是可在程序控制下选择数字和模拟连接方式。设计人员可在器件内创建所有信号链,包括对来自传感器的信号进行放大、再输入到滤波器进行噪声抑制、再输入到ADC转换为数字值。
PSoC架构还提供了在应用开发和使用的不同阶段重新配置模拟和数字PSoC模块的能力。因此,原来用来构成UART的两个数字PSoC模块可以在下一次重新配置为两个8位定时器,或者重新配置为16位伪随机序列发生器。这一"动态重新配置"能力允许用户重新使用模拟和数字模块资源,从而可更好地利用可用的资源。
为完全利用PSoC架构所提供的灵活性,赛普拉斯微系统公司提供了全面的系列开发工具。PSoC Designer 集成开发环境(IDE)软件允许设计人员选择独立的用户模块、将模块布局到器件的硬件资源中,同时建立所有的互相连接,从而提供一个系统级解决方案。PSoC
Designer还允许用户编辑源代码、编译和汇编源文件、链接整个项目并为调试过程提供支持。
赛普拉斯微系统公司还提供了功能强大的在电路仿真器(ICE),用于调试PSoC MCU。ICE仿真器可在24MHz下全速操作、具有
128K字节的全速跟踪存储器和复杂的断点设置能力。
结论
文中所讨论的每种原有可编程技术都对电子行业产生了巨大的影响。这是由于可编程技术提高了工程师的生产力,并使许多原来不可能的设计成为可能。PSoC技术是可编程技术这一历史的自然扩展,PSoC技术集成了原来各种可编程技术的优点。PSoC技术已经对市场产生了同样巨大的影响,并使设计工程师的创造性提高到了新的水平。
|