Altera公司利用零功耗CPLD降低便携式应用的功耗
扫描二维码
随时随地手机看文章
过去,人们认为“可编程逻辑”并不意味着“低功耗”。不过,零功耗CPLD的出现改变了这一观点,这一技术使得低功耗电子产品设计人员能够充分利用可编程逻辑的诸多优势。现在,除了具备CPLD在一般应用中已得到认可的杰出性能外,零功耗CPLD还能够降低便携式产品的总功耗。
通用CPLD应用
第一组应用介绍了CPLD所胜任的功能。虽然这些功能不是专门针对降低功耗的,但是,利用低功耗CPLD来实现这些功能对功耗有积极的影响。例如,一个常见的CPLD功能是合并分立逻辑。这可以节省PCB空间,降低材料(BOM)成本,并减小总体功耗。下面讨论一些常见的通用CPLD应用。
1. 上电排序
在许多产品中,各种器件的上电顺序非常重要,这使得上电排序成为一个关键的功能。CPLD在系统上电的几个毫秒内就开始工作,因此成为控制系统中各种器件(包括微处理器或微控制器)上电排序的最佳选择(图1)。上电排序仅仅是低功耗CPLD能够实现的多种系统功能的其中之一。可编程逻辑的最大价值在于可将多种功能在一个器件中实现。
图1:利用CPLD进行上电排序。
2. 电压转换
很多产品都需要使用电压不同的各种逻辑器件。为支持多电压应用,设计人员需要频繁连接不同电压的器件。CPLD拥有大量的I/O,它们被分组成多个块。每个I/O块被依次分配一个特有的电压电源。因此,开发电压转换器只需要将某一电压的所有I/O分组在一个块中,并将相关的电压基准连接到这些I/O所需的电源上(图2)。使用CPLD不但能够很好地完成电压转换,它更大的优势在于和电压转换相结合的可编程能力。例如,如果某一应用要求的LCD显示器不被主处理器所支持,且两者电压不同,那么可以利用CPLD来实现主处理器和LCD显示器之间的电压转换时序控制。
图2:利用Altera MAX IIZ CPLD进行电压转换。
3. 通用I/O引脚扩展
在很多情况下,CPLD是微控制器、ASSP和ASIC优异的辅助器件。例如,在一个常见的通用I/O(GPIO)引脚扩展应用中,设计人员可以把小型低成本微控制器的可编程能力和CPLD的GPIO资源结合起来。CPLD构建一组内部寄存器,微控制器通过I2C或SPI等串口来访问这些寄存器(图3),这使得微控制器能够利用现有的串口来扩展其I/O总数。CPLD扩展I/O也可以用于实现电压转换,从而提高了CPLD的实用性。
图3:GPIO引脚扩展。
虽然上述例子采用的是微控制器,但同样也适用于采用ASSP和ASIC的情况。例如,很多设计人员发现用小规模ASIC通过串口来驱动CPLD这种方案的成本要比具有相同I/O能力的大规模ASIC方案低得多。
过去,人们认为“可编程逻辑”并不意味着“低功耗”。不过,零功耗CPLD的出现改变了这一观点,这一技术使得低功耗电子产品设计人员能够充分利用可编程逻辑的诸多优势。现在,除了具备CPLD在一般应用中已得到认可的杰出性能外,零功耗CPLD还能够降低便携式产品的总功耗。
通用CPLD应用
第一组应用介绍了CPLD所胜任的功能。虽然这些功能不是专门针对降低功耗的,但是,利用低功耗CPLD来实现这些功能对功耗有积极的影响。例如,一个常见的CPLD功能是合并分立逻辑。这可以节省PCB空间,降低材料(BOM)成本,并减小总体功耗。下面讨论一些常见的通用CPLD应用。
1. 上电排序
在许多产品中,各种器件的上电顺序非常重要,这使得上电排序成为一个关键的功能。CPLD在系统上电的几个毫秒内就开始工作,因此成为控制系统中各种器件(包括微处理器或微控制器)上电排序的最佳选择(图1)。上电排序仅仅是低功耗CPLD能够实现的多种系统功能的其中之一。可编程逻辑的最大价值在于可将多种功能在一个器件中实现。
图1:利用CPLD进行上电排序。
2. 电压转换
很多产品都需要使用电压不同的各种逻辑器件。为支持多电压应用,设计人员需要频繁连接不同电压的器件。CPLD拥有大量的I/O,它们被分组成多个块。每个I/O块被依次分配一个特有的电压电源。因此,开发电压转换器只需要将某一电压的所有I/O分组在一个块中,并将相关的电压基准连接到这些I/O所需的电源上(图2)。使用CPLD不但能够很好地完成电压转换,它更大的优势在于和电压转换相结合的可编程能力。例如,如果某一应用要求的LCD显示器不被主处理器所支持,且两者电压不同,那么可以利用CPLD来实现主处理器和LCD显示器之间的电压转换时序控制。
图2:利用Altera MAX IIZ CPLD进行电压转换。
3. 通用I/O引脚扩展
在很多情况下,CPLD是微控制器、ASSP和ASIC优异的辅助器件。例如,在一个常见的通用I/O(GPIO)引脚扩展应用中,设计人员可以把小型低成本微控制器的可编程能力和CPLD的GPIO资源结合起来。CPLD构建一组内部寄存器,微控制器通过I2C或SPI等串口来访问这些寄存器(图3),这使得微控制器能够利用现有的串口来扩展其I/O总数。CPLD扩展I/O也可以用于实现电压转换,从而提高了CPLD的实用性。
图3:GPIO引脚扩展。
虽然上述例子采用的是微控制器,但同样也适用于采用ASSP和ASIC的情况。例如,很多设计人员发现用小规模ASIC通过串口来驱动CPLD这种方案的成本要比具有相同I/O能力的大规模ASIC方案低得多。
4. 接口桥接
便携式应用设计人员经常需要连接具有不同I/O接口的器件。这一功能被称为桥接,因为CPLD被用来构成不同接口之间的“桥”。图4所示为采用CPLD来桥接两种不同的串口:I2C和SPI。该设计可以在Altera MAX IIZ EPM240Z CPLD中实现,使用约43%的可用逻辑和6个I/O引脚。
图4:利用MAX IIZ CPLD桥接I2C与SPI。
图5所示为一个主处理器与SPI主机的接口,这是一个利用CPLD来实现串并转换接口的实例。这个例子创建了一个主处理器总线接口和一个完整的SPI主机,可以在MAX IIZ EPM240Z CPLD中实现,占用约30%的可用逻辑和25个I/O引脚。
在图6中,CPLD被用于桥接两种不同的并口。这一设计实例实现了PXA310主处理器总线与Compact FLASH+器件的接口,可采用MAX IIZ EPM240Z CPLD实现,使用约17%的可用逻辑及59个I/O引脚。
降低功耗的应用
上述应用展示了利用低功耗CPLD来实现便携式应用中的多种常见功能。下一组应用将介绍利用零功耗CPLD的独特功能来降低便携式应用功耗的途径。
图5:利用MAX IIZ CPLD实现主处理器至SPI接口。
1. 自关断和自上电
MAX IIZ CPLD是一种可实现超低待机功耗的零功耗CPLD。例如,EPM240Z器件在待机时仅消耗29μA电流。不过,为达到绝对最低功耗,理想的状态是器件在不工作时不消耗能量。令人吃惊的是,这确实可以做到,因为与传统的宏单元CPLD不同,MAX IIZ器件具有内部振荡器,可实现自动关断功能。
图6:利用MAX IIZ CPLD实现主处理器至CF+接口。
该操作十分简单。MAX IIZ CPLD的所有输入被用于控制计数器。任意输入被激活后,计数器保持复位。当所有输入进入非激活状态后,计数器开始计数,直到达到用户指定的时间长度。如果在这一时间段所有输入仍处于未激活状态,则发送一个信号以禁用MOSFET,这样可以关断MAX IIZ器件的电源。当任意输入再次被激活时,内部计数器复位、通电,MAX IIZ CPLD上电(图7)。
图7:输入处于非激活状态时可实现自动关断和自动上电。
2. 多输入时的上电
MAX IIZ CPLD能够轻松地监视其输入,可以自停止或者自启动,这些功能都可以直接应用在降低便携式应用的功耗上。在许多便携式产品中,通过按下电源开关实现上电。如果产品在一段时间内空闲,可启用关断或者待机模式来延长电池使用寿命。对于这一点,许多便携产品设计人员希望用户来重新激活产品,例如,开盖、按下任意键、插入存储器卡等(图8)。但是,大多电源管理设计都只支持一个控制输入。在这种情况下,可以采用CPLD来监控输入。当产品在设计人员指定的一段时间都处于空闲,CPLD向电源管理逻辑发出关断信号。当任意输入使其激活后,CPLD上电并向电源管理逻辑发出系统上电信号。
图8:利用MAX IIZ CPLD可根据输入工作状态来启动或者停止系统供电。
3. 将CPLD用作低功耗协处理器
可以把很多系统功能从耗电的大型主系统处理器中卸载到节电的小型CPLD中。大量的系统“管理”功能必须周期性地完成。在下面的例子中,系统处理器可保持在节能模式,而低功耗MAX IIZ CPLD利用其内部振荡器来周期性地执行任务。如果需要的话,MAX IIZ CPLD的内部振荡器可与外部振荡器进行校准。校准后,外部振荡器关断,以进一步降低功耗(图9)。
图9:CPLD内部振荡器可与外部振荡器进行校准。
监控系统状态:CPLD周期性地检查系统状态。如果一切正常,则继续保持关断,但如果出现问题,则CPLD记录下问题并唤醒主处理器。驱动蓝牙LED:在很多便携式应用中,驱动蓝牙LED对于CPLD而言是非常普遍的应用。替代方案需要唤醒主处理器以及足够的其它系统部件才能实现这一功能,相比采用CPLD要消耗更多的能量。监控电池电量:当主处理器保持待机时,CPLD周期性地读取电池电量。如果电源降到规定的电压以下,则CPLD唤醒主处理器,随即系统正常关断。
利用CPLD来构建低功耗媒体协处理器提供了另一种大幅降低功耗的途径。在这类应用中,采用CPLD来替代主处理器向编解码器传送媒体文件,而主处理器处于休眠状态。通常,用CPLD实现该功能只需要几个微安的电流,而用主处理器却需要几个毫安。这种节能方法直接延长了电池使用寿命。
本文小结
过去,低功耗便携产品设计人员并不能充分利用可编程逻辑的诸多优势。不过,待机电流只有几微安的零功耗CPLD的出现使得可编程器件成为低功耗设计人员可以选用的器件。
本文介绍了利用CPLD来实现通用系统功能的实例,展示了MAX IIZ CPLD中自停止和自启动电路的独特功能。这一功能可以降低便携式应用的功耗。此外,本文还介绍了怎样将周期性的系统监控和媒体传送等任务从主处理器卸载到低功耗CPLD协处理器中。由于采用了零功耗CPLD,便携式电子产品设计人员现在进一步提高了开发低功耗、多功能创新产品的能力。