可配置处理器应用日趋红火
——
可配置处理器应用日趋红火
可配置处理器在你的设计中可能是一个经济实惠的元件,但也可能是一个演进中的抽象概念。
如果向很多人询问如何定义可配置系统,你会发现每个人的定义都取决于如何对系统元件进行抽象的假定。对于嵌入式系统来说,抽象通常应用于系统的硬件部分以及任何相应的软件。定义可配置系统的一个共同思路是在不大改动系统平台的情况下具有改变系统特性和行为的灵活性。每一个可配置性定义之间的差异在于如何解释大改系统平台的含义(参阅附文:《可配置观点》)。
你设备的成本要求和灵活性需求使各种类型和等级的可配置性的需要和价值得以提高。成本在你的项目中表现为抢占市场的机会成本、预付的非经常性成本、经常性材料成本以及开发支持成本等。平台灵活性使你能够更改设计和增加功能,而不会使你的工作和已发生的费用前功尽弃。灵活性使你能够更方便地在多个设计中反复使用你的劳动成果,适应不断变化的要求,纠正设计错误,并使基于标准的设计,例如适用于未来的通信协议的设计,"不会过时"。
在设计中使用 ASIC来实现一种固定功能能使硅芯片得到最有效的利用。 ASIC使你能够平衡和优化设计
如果向很多人询问如何定义可配置系统,你会发现每个人的定义都取决于如何对系统元件进行抽象的假定。对于嵌入式系统来说,抽象通常应用于系统的硬件部分以及任何相应的软件。定义可配置系统的一个共同思路是在不大改动系统平台的情况下具有改变系统特性和行为的灵活性。每一个可配置性定义之间的差异在于如何解释大改系统平台的含义(参阅附文:《可配置观点》)。
你设备的成本要求和灵活性需求使各种类型和等级的可配置性的需要和价值得以提高。成本在你的项目中表现为抢占市场的机会成本、预付的非经常性成本、经常性材料成本以及开发支持成本等。平台灵活性使你能够更改设计和增加功能,而不会使你的工作和已发生的费用前功尽弃。灵活性使你能够更方便地在多个设计中反复使用你的劳动成果,适应不断变化的要求,纠正设计错误,并使基于标准的设计,例如适用于未来的通信协议的设计,"不会过时"。
在设计中使用 ASIC来实现一种固定功能能使硅芯片得到最有效的利用。 ASIC使你能够平衡和优化设计
,并达到提高性能、降低经常性成本和功耗的目的。与这些优点相反的是,你制造
ASIC发生的预付非经常性成本很高,这会使你必须把这些成本分摊给以后的大量产品。固定功能 ASIC 的灵活性很差,使你无法把一种ASIC设计用于多个工程项目中,可能你需要重新设计,而且为了给你的设备添加新功能还会再次发生非经常性成本。还有一点就是ASIC的开发周期要比其他方法的开发周期要更长,因为你必须对电路进行设计和测试,然后制造芯片,验证你的方法。
在设计中使用 ASSP(专用标准部件)能够缩短开发时间,并以较高的经常性成本代替 ASIC 成本,因为这些成本已由器件供应商支付了。如果有合适的 ASSP可用,那么你就不太可能是第一个投放产品的人了。因为竞争对手也能使用相同的器件,所以你必须考虑采取更创新的竞争策略。ASSP 与 ASIC 都不是灵活的平台,它们天生就是专用的,并为某种目标设备而进行了优化。 iSuppli公司( www.isuppli.com)的数据表明,2002 年 ASIC 销售额比 2000 年销售额下降了 28%,其主要原因是有线通信的需求疲软,次要原因是整个市场转向标准化产品,如 ASSP 的销售额在 2002 年增长了 1.6%。
ASPP(专用可编程部件)或 SOC(单片系统)通过牺牲某些性能、增加硅片(成本)和降低电源效率,来换取软件可编程性,从而比ASSP具有更大的灵活性。这些器件相互间的差异体现在是否集成有一组优化的外部设备、存储器、接口控制器和专用硬件加速器,而专用硬件加速器又有带DSP的、带微控制器芯核的和两者兼而有之的之别。
标准的通用软件可编程器件,如DSP、微控制器和微处理器,都没有集成专用硬件加速器,而是集成有比 ASPP 更多通用外部设备、存储器和接口控制器。它们以牺牲高性能、低功耗和低成本的某些优势组合为代价,支持各种各样系统的应用。但是,由于它们适用于各种系统,所以它们的开发工具和行业支持基础设施就比 ASIC 和 ASSP 器件更加成熟。此外,还有很多经验丰富的软件开发人员从事这些指令集处理平台的开发工作。
所有这些器件均采用固定的体系结构,这些体系结构都有一系列选项,为的是使系统性能、功耗、预付非经常性成本、经常性成本、开发时间和灵活性等最大和最小。为了用这些器件提高系统性能,你可能要重新使用实现算法的方法,更改选用的处理器或增加时钟速度。数字信号处理量大的设备的工作负荷可能超过处理器以最快时钟速度所能完成的最大工作负荷。你可以根据自己的处理器选择和应用规范使用多个处理器来提高性能。但是,设计中增加处理器就需要在处理器之间进行通信联系,相互协调,从而使你的设计复杂化。在设计中添加处理器或固定功能加速器会使功耗、材料成本、通信等待时间和所需电路板面积都超出你所能承受的范围。
增加少许可配置性
如果现有的固定体系结构方法不能满足你的要求或器件级至关重要的灵活性时,可配置的硬件体系结构可能对你有所帮助。可配置的体系结构使你能够在性能、功耗以及硅片面积成本三大方面进行平衡,而且还可具有较高的性能、较低的功耗以及较低的成本,因为你只需较少的时钟周期和较少的逻辑电路便可计算出与可编程固定架构下相同的结果。可配置体系结构为配置系统资源,为扩展指令集体系结构或为两者兼而有之提供了机制。
配置机制使你能够按照应用要求调整系统,方法是更改处理器资源,例如增删各种存储器,如超高速缓存或增减其存储容量;更改总线宽度;创建特殊的寄存器和总线;复制执行单元,例如 ALU 和 MAC,以增强指令级并行性;集成自定义的外部设备;甚至创建多处理器系统。这种灵活性使你能够对系统进行调整并解决系统瓶颈问题,以获得更高的性能。但是,如果软件开发工具不能很方便地利用附加资源来实现性能优化,则可配置体系结构就会延长设计过程。
扩展指令集体系结构的机制可将软件有效地转换成加速的硬件,并可将实现方法抽象为软件指令集体系结构。专用指令能将一个应用程序每个时钟周期完成的工作量增加几个数量级,并能减少它所需软件代码的行数。这些自定义指令一般可简化开发、调试和验证工作,而所付出的代价是预先去做对自定义指令和纯软件执行方法进行比较的简要表分析。如果软件开发工具得不到简单的或自动的支持,不能将自定义指令整合到编译程序和仿真程序中,则扩展指令集就会拖延开发进度。
可配置的体系结构都有多种与固定体系结构方法相同的实现方法,来使系统性能、功率、预付非经常性成本、经常性成本和开发时间最大和最小(表 1)。可配置的和可扩展的 IP(知识产权)处理器芯核对可配置性的支持可达硅片制造一级。这些芯核具有与 ASIC 类似的优点和缺点。适用于这些体系结构的开发工具可能包括能马上为你提供有关某一设计的性能、芯核尺寸和功率要求估算的性能工具。
只要将一个可编程逻辑块与硬处理器芯核和一组最少的外部设备块相组合,可配置处理器就可以支持现场硬件更新和运行模式可重新配置性,例如,从对一个编解码器或协议算法的处理切换到对另一个编解器或协议算法的处理。现在大量的标准处理器产品都有这样的集成水平。这些产品允许将一组外部设备定制化并执行定制指令,但不支持重新配置处理器芯核的基础资源。你在这些系统上获得的额外灵活性是以增加成本为代价的,因为器件的可重新配置部分所需的硅片电路比用固定组件来实现时要多。
在设计中使用 ASSP(专用标准部件)能够缩短开发时间,并以较高的经常性成本代替 ASIC 成本,因为这些成本已由器件供应商支付了。如果有合适的 ASSP可用,那么你就不太可能是第一个投放产品的人了。因为竞争对手也能使用相同的器件,所以你必须考虑采取更创新的竞争策略。ASSP 与 ASIC 都不是灵活的平台,它们天生就是专用的,并为某种目标设备而进行了优化。 iSuppli公司( www.isuppli.com)的数据表明,2002 年 ASIC 销售额比 2000 年销售额下降了 28%,其主要原因是有线通信的需求疲软,次要原因是整个市场转向标准化产品,如 ASSP 的销售额在 2002 年增长了 1.6%。
ASPP(专用可编程部件)或 SOC(单片系统)通过牺牲某些性能、增加硅片(成本)和降低电源效率,来换取软件可编程性,从而比ASSP具有更大的灵活性。这些器件相互间的差异体现在是否集成有一组优化的外部设备、存储器、接口控制器和专用硬件加速器,而专用硬件加速器又有带DSP的、带微控制器芯核的和两者兼而有之的之别。
标准的通用软件可编程器件,如DSP、微控制器和微处理器,都没有集成专用硬件加速器,而是集成有比 ASPP 更多通用外部设备、存储器和接口控制器。它们以牺牲高性能、低功耗和低成本的某些优势组合为代价,支持各种各样系统的应用。但是,由于它们适用于各种系统,所以它们的开发工具和行业支持基础设施就比 ASIC 和 ASSP 器件更加成熟。此外,还有很多经验丰富的软件开发人员从事这些指令集处理平台的开发工作。
所有这些器件均采用固定的体系结构,这些体系结构都有一系列选项,为的是使系统性能、功耗、预付非经常性成本、经常性成本、开发时间和灵活性等最大和最小。为了用这些器件提高系统性能,你可能要重新使用实现算法的方法,更改选用的处理器或增加时钟速度。数字信号处理量大的设备的工作负荷可能超过处理器以最快时钟速度所能完成的最大工作负荷。你可以根据自己的处理器选择和应用规范使用多个处理器来提高性能。但是,设计中增加处理器就需要在处理器之间进行通信联系,相互协调,从而使你的设计复杂化。在设计中添加处理器或固定功能加速器会使功耗、材料成本、通信等待时间和所需电路板面积都超出你所能承受的范围。
增加少许可配置性
如果现有的固定体系结构方法不能满足你的要求或器件级至关重要的灵活性时,可配置的硬件体系结构可能对你有所帮助。可配置的体系结构使你能够在性能、功耗以及硅片面积成本三大方面进行平衡,而且还可具有较高的性能、较低的功耗以及较低的成本,因为你只需较少的时钟周期和较少的逻辑电路便可计算出与可编程固定架构下相同的结果。可配置体系结构为配置系统资源,为扩展指令集体系结构或为两者兼而有之提供了机制。
配置机制使你能够按照应用要求调整系统,方法是更改处理器资源,例如增删各种存储器,如超高速缓存或增减其存储容量;更改总线宽度;创建特殊的寄存器和总线;复制执行单元,例如 ALU 和 MAC,以增强指令级并行性;集成自定义的外部设备;甚至创建多处理器系统。这种灵活性使你能够对系统进行调整并解决系统瓶颈问题,以获得更高的性能。但是,如果软件开发工具不能很方便地利用附加资源来实现性能优化,则可配置体系结构就会延长设计过程。
扩展指令集体系结构的机制可将软件有效地转换成加速的硬件,并可将实现方法抽象为软件指令集体系结构。专用指令能将一个应用程序每个时钟周期完成的工作量增加几个数量级,并能减少它所需软件代码的行数。这些自定义指令一般可简化开发、调试和验证工作,而所付出的代价是预先去做对自定义指令和纯软件执行方法进行比较的简要表分析。如果软件开发工具得不到简单的或自动的支持,不能将自定义指令整合到编译程序和仿真程序中,则扩展指令集就会拖延开发进度。
可配置的体系结构都有多种与固定体系结构方法相同的实现方法,来使系统性能、功率、预付非经常性成本、经常性成本和开发时间最大和最小(表 1)。可配置的和可扩展的 IP(知识产权)处理器芯核对可配置性的支持可达硅片制造一级。这些芯核具有与 ASIC 类似的优点和缺点。适用于这些体系结构的开发工具可能包括能马上为你提供有关某一设计的性能、芯核尺寸和功率要求估算的性能工具。
只要将一个可编程逻辑块与硬处理器芯核和一组最少的外部设备块相组合,可配置处理器就可以支持现场硬件更新和运行模式可重新配置性,例如,从对一个编解码器或协议算法的处理切换到对另一个编解器或协议算法的处理。现在大量的标准处理器产品都有这样的集成水平。这些产品允许将一组外部设备定制化并执行定制指令,但不支持重新配置处理器芯核的基础资源。你在这些系统上获得的额外灵活性是以增加成本为代价的,因为器件的可重新配置部分所需的硅片电路比用固定组件来实现时要多。
评论