基于ARM+FPGA嵌入式开发系统设计与应用(1)_崇德效山,藏器学海,群居 ...

嵌入式系统是嵌入到对象体系中的专用计算机系统,包括硬件和软件两大部分。硬件包括处理器、存储器、输入输出接口和外部设备等,软件包括系统软件和应用软件,嵌入式系统的系统软件和应用软件紧密结合。

嵌入式处理器是嵌入式系统的核心,有硬核和软核之分。常用的嵌入式处理器硬核有ARMMIPSPowerPCIntel x86Motorola 68000等;其中以ARM公司开发的ARM嵌入式内核现在使用的最为普遍,而且是一款相当成熟的硬核,性能比较稳定。Altera公司开发的Nios16/32位嵌入式处理器软核。和硬核相比,软核的使用灵活方便,但是从使用过程中来看,NIOS嵌入式也暴露出了一些问题,例如性能不稳定,可支持的技术文档相对较少等,但是从目前嵌入式的发展状况来看,以ARM为代表的硬核和以NIOS为代表的软核必将是嵌入式发展的两个重要方向。

ARMAdvanced RISC Machines的缩写,是微处理行业的一家知名的企业。该企业设计了大量高性能,廉价,低功耗的RISC处理器,相关技术及软件。ARM是精简指令集计算机(RISC),其设计实现了外部非常小但是性能很高的结构。ARM处理器结构的简单使ARM的内核非常小,这样使器件的功耗也非常低。ARM7TDMI-S是基于ARM内核目前{zd1}端的处理器,具有32ARM指令集和16Thumb指令集。

Nios嵌入式处理器是可配置的通用RISC处理器,可以很容易地与用户逻辑相结合,集成到Altera FPGA器件中。Nios具有16位指令系统,用户可选择16位或32位数据宽度和可灵活配置的标准外围设备及软件库。Nios系统将处理器、存储器、输入输出接口和其他IP核灵活地集成到SOPC设计中。

1.1.1嵌入式系统的特点

嵌入式系统是以应用为中心,以计算机技术为基础,硬件和软件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。

可以从以下几个方面来理解嵌入式系统的含义:

l        嵌入式系统面向用户、面向产品和面向应用,必须与具体应用相结合才会具有生命力,才更具有优势。嵌入式系统与应用紧密结合,具有很强的专用性。

l        嵌入式系统将先进的半导体技术、计算机技术和电子技术以及各个行业的具体应用相结合,是一个技术密集、资金密集和不断创新的知识集成系统。

l      嵌入式系统必须根据应用需求对硬件和软件进行裁剪,以满足应用系统的功能、可靠性、成本、体积和功耗等要求。比较好的发展模式是:首先建立相对通用的硬件和软件基础,然后开发出适应各种需要的嵌入式系统。

同时还应该看到,嵌入式系统是一个外延极广的概念。凡是与产品结合在一起的具有嵌入式特点的系统都可以称为嵌入式系统。

一般而言,嵌入式系统和通用计算机系统类似,由处理器、存储器、输入输出接口和设备以及软件等部分组成。但作为专用计算机系统的嵌入式系统与通用计算机系统相比,具有以下几个重要特征。

l        系统简练。由于嵌入式系统一般应用于小型电子装置,系统资源相对有限,所以系统内核与传统的系统相比要小得多。嵌入式系统一般没有系统软件和应用软件的明显区分,不要求功能的设计和实现过于复杂,这既有利于控制系统成本,同时也有利于保障系统安全。

l        专用性强。嵌入式系统的个性化很强,软件和硬件的结合非常紧密,一般要针对硬件进行软件的设计,即使在同一品牌、同一系列的产品中也需要根据硬件的变化和增减对软件不断进行修改。同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载也要同系统相结合。

l        实时操作系统支持。嵌入式系统的应用程序可以不需要操作系统的支持直接运行,但为了合理地调度多任务,充分利用系统资源,用户必须自行选配实时操作系统(Real-Time Operating SystemRTOS)开发平台,这样才能保证程序执行的实时性和可靠性,减少开发时间,保障软件质量。

l        专门开发工具支持。嵌入式系统本身不具备自主开发能力,即使在设计完成以后用户通常也不能对程序功能进行修改,必须有一套开发工具和环境才能进行开发。开发工具和环境一般基于通用计算机的软硬件设备、逻辑分析仪和示波器等。

在嵌入式系统的软件开发过程中,采用C语言将是{zj0}的选择。由于汇编语言是非结构化的语言,不能胜任大型的结构化程序设计,必须采用更高级的C语言进行设计。

1.1.2 片上系统和可编程片上系统

随着半导体技术的不断发展,片上系统(System on a ChipSOC)成为嵌入式应用领域的热门方向之一。SOC{zd0}的特点是成功实现了软硬件的无缝结合,直接在处理器芯片内嵌入操作系统的代码模块。此外,SOC有极高的综合性,在一个芯片内部运用VHDL等硬件描述语言可以实现复杂的系统。

用户使用SOC,不需要再像传统的系统设计一样绘制庞大复杂的电路板,而只需要使用相应的开发工具,将处理器、存储器和接口逻辑集成在一起,并开发相应的软件,编译仿真之后就可以直接交付芯片厂商进行生产。

SOC通常是专用集成电路(ASIC),所以不为用户所熟知,而且其开发周期长,生产成本高,产品不能进行修改。随着可编程逻辑器件(Programmable Logic DevicePLD)的广泛应用,可编程片上系统(System on a Programmable ChipSOPC)越来越多地受到人们的关注。

SOPC是在PLD上实现SOCPLD的可编程性使SOPC的设计和实现非常方便。用户可以灵活地进行系统硬件和软件设计,还可以在现场进行系统修改。PLD性能的不断提高,也使SOPC的性能越来越高。

AlteraPLD的大型生产商,生产的PLDCPLDComplex Programmable Logic Device,复杂可编程逻辑器件)和FPGAField Programmable Gate Array,现场可编程门阵列)两大系列。CPLDFPGA的结构有所不同,但功能差别不大,作为新产品的FPGA要比早期的CPLD性能强大。

AlteraSOPC嵌入式处理器(Embedded Processor)解决方案有两种:嵌入ARM922T硬核的Excalibur器件和用于FPGA的可配置Nios嵌入式处理器软核。



郑重声明:资讯 【基于ARM+FPGA嵌入式开发系统设计与应用(1)_崇德效山,藏器学海,群居 ...】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——