您好,欢迎来到抵帆知识网。
搜索
您的当前位置:首页单片机与可编程逻辑器件的相关性能比较

单片机与可编程逻辑器件的相关性能比较

来源:抵帆知识网
姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

单片机与可编程逻辑器件的相关性能比较

东南大学仪器科学与工程学院

1 绪论

1.1 可编程逻辑器件概述

当今社会是数字化的社会,是数字集成电路广泛应用的社会。数字集成电路本身在不断地进行更新换代。它由早期的电子管、晶体管、小中规模集VLSIC,成电路、发展到超大规模集成电路(Very Large-Scale Integrated Circuit,几万门以上)以及许多具有特定功能的专用集成电路。但是,随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来承担。系统设计师们更愿意自己设计专用集成电路(Application-Specific Integrated Circuit,ASIC)芯片,而且希望ASIC的设计周期尽可能短,最好是在实验室里就能设计出合适的ASIC芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件(Field Programmable Logic Device,FPLD),其中应用最广泛的当属现场可编程门阵列(Field-Programmable Gate Array,FPGA)和复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)。

1.2 可编程逻辑器件的发展历程

早期的可编程逻辑器件只有可编程只读存贮器(Programmable Logic Device,PROM)、紫外线可按除只读存贮器(Erasable Programmable Read-Only Memory,EPROM)和电可擦除只读存贮器(Electrically Erasable Programmable Read-Only Memory,EEPROM)三种。由于结构的,它们只能完成简单的数字逻辑功能。

其后,出现了一类结构上稍复杂的可编程芯片,即可编程逻辑器件(Programmable Logic Device,PLD),它能够完成各种数字逻辑功能。典型的PLD由一个“与”门和一个“或”门阵列组成,而任意一个组合逻辑都可以用“与一或”表达式来描述,所以, PLD能以乘积和的形式完成大量的组合逻辑功能。

- 1 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

这一阶段的产品主要有可编程阵列逻辑(Programmable Array Logic,PAL)和通用阵列逻辑 (Generic Array Logic,GAL)。 PAL由一个可编程的“与”平面和一个固定的“或”平面构成,或门的输出可以通过触发器有选择地被置为寄存状态。 PAL器件是现场可编程的,它的实现工艺有反熔丝技术、EPROM技术和EEPROM技术。还有一类结构更为灵活的逻辑器件是可编程逻辑阵列(Programmable Logic Array,PLA),它也由一个“与”平面和一个“或”平面构成,但是这两个平面的连接关系是可编程的。 PLA器件既有现场可编程的,也有掩膜可编程的。

在PAL的基础上,又发展了一种通用阵列逻辑GAL,如GAL16V8,GAL22V10 等。它采用了EEPROM工艺,实现了电可擦除、电可改写,其输出结构是可编程的逻辑宏单元,因而它的设计具有很强的灵活性,至今仍有许多人使用。 这些早期的PLD器件的一个共同特点是可以实现速度特性较好的逻辑功能,但其过于简单的结构也使它们只能实现规模较小的电路。

典型的PLD的部分结构(实现组合逻辑的部分)

为了弥补这一缺陷,20世纪80年代中期。 Altera和Xilinx分别推出了类似于PAL结构的扩展型 CPLD和与标准门阵列类似的FPGA,它们都具有体系结构和逻辑单元灵活、集成度高以及适用范围宽等特点。

这两种器件兼容了PLD和通用门阵列GAL的优点,可实现较大规模的电路,编程也很灵活。与门阵列等其它ASIC相比,它们又具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及可实时在线检验等优点,因此被广泛应用于产品的原型设计和产品生产(一般在10,000件以下)之中。几乎所有应用门阵列、PLD和中小规模通用数字集成电路的场合均可应用FPGA和CPLD器件。

- 2 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

1.3 单片机概述

单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器,控制器,存储器,输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。

由于单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。

INTEL的8080是最早按照这种思想设计出的处理器,当时的单片机都是8位或4位的。其中最成功的是INTEL的8051,此后在8051上发展出了MCS51系列单片机系统。因为简单可靠而性能不错获得了很大的好评。尽管2000年以后ARM已经发展出了32位的主频超过300M的高端单片机,直到现在基于8051的单片机还在广泛的使用。在很多方面单片机比专用处理器更适合应用于嵌入式系统,因此它得到了广泛的应用。事实上单片机是世界上数量最多处理器,随着单片机家族的发展壮大,单片机和专用处理器的发展便分道扬镳。

现代人类生活中所用的几乎每件有电子器件的产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电子产品中都含有单片机。 汽车上一般配备40多片单片机,复杂的工业控制系统上甚至可能有数百片单片机在同时工作!单片机的数量不仅远超过PC机和其他计算机的总和,甚至比人类的数量还要多。

1.4 单片机的发展历程

以8位单片机的推出作为起点,单片机的发展历史大致可分为以下几个阶段:

- 3 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

第一阶段(1976-1978):单片机的控索阶段。以Intel公司的MCS-48为代表。MCS-48的推出是在工控领域的控索,参与这一控索的公司还有Motorola 、Zilog等,都取得了满意的效果。这就是SCM的诞生年代,“单机片”一词即由此而来。

第二阶段(1978-1982)单片机的完善阶段。Intel公司在MCS-48 基础上推出了完善的、典型的单片机系列MCS-51。它在以下几个方面奠定了典型的通用总线型单片机体系结构。

☆ 完善的外部总线。MCS-51设置了经典的8位单片机的总线结构,包括8位数据总线、16位地址总线、控制总线及具有很多机通信功能的串行通信接口。

☆ CPU外围功能单元的集中管理模式。 ☆ 体现工控特性的位地址空间及位操作方式。

☆ 指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令。 第三阶段(1982-1990):8位单片机的巩固发展及16位单片机的推出阶段,也是单片机向微控制器发展的阶段。Intel公司推出的MCS-96系列单片机,将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中,体现了单片机的微控制器特征。随着MCS-51系列的广应用,许多电气厂商竞相使用80C51为内核,将许多测控系统中使用的电路技术、接口技术、多通道A/D转换部件、可靠性技术等应用到单片机中,增强了外围电路路功能,强化了智能控制的特征。

第四阶段(1990—现在):微控制器的全面发展阶段。随着单片机在各个领域全面深入地发展和应用,出现了高速、大寻址范围、强运算能力的8位/16位/32位通用型单片机,以及小型廉价的专用型单片机 因仿真技术,单片机本身的发展,目前MCS-51单片机得到广泛应用。

2 以MSP430为代表的单片机介绍

2.1 MSP430单片机概述

MSP430 系列单片机是美国德州仪器(TI)1996 年开始推向市场的一种16 位超低功耗的混合信号处理器(Mixed Signal Pocessor,MSP)。称之为混

- 4 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

合信号处理器,主要是由于其针对实际应用需求,把许多模拟电路、数字电路和微处理器集成在一个芯片上,以提供“单片”解决方案。

2.2 MSP430系列单片机的主要特点

2.2.1 超低功耗

MSP430系列单片机的电源电压采用1.8~3.6V低电压,RAM 数据保持方式下耗电仅0.1uA,活动模式耗电250pA/MIPS(MIPS:每秒百万条指令数),IO输入端口的漏电流最大仅50nA。

MSP430系列单片机有独特的时钟系统设计,包括两个不同的时钟系统:基本时钟系统和锁频环(FLL和FLL+)时钟系统或DCO 数字振荡器时钟系统。由时钟系统产生CPU和各功能模块所需的时钟,并且这些时钟可以在指令的控制下打开或关闭,从而实现对总体功耗的控制。由于系统运行时使用的功能模块不同,即采用不同的工作模式,芯片的功耗有明显的差异。在系统有种活动模式(AM)和5种低功耗模式 (LPM0~LPM4)。

另外,MSP430系列单片机采用矢量中断,支持十多个中断源,并可以任意嵌套。用中断请求将CPU唤醒只要6us,通过合理编程,既以降低系统功耗,又可以对外部事件请求作出快速响应。

在这里.需要对低功耗问题作一些说明。

首先,对一个处理器而言,活动模式时的功耗必须与其性能一起来考察、衡量,忽略性能来看功耗是片面的。在计算机体系结构中,是用W/MIPS(瓦特/百万指令每秒)来衡量处理器的功耗与性能关系的,这种标称方法是合理的。MSP430系列单片机在活动模式时耗电250uA/MIPS,这个指标是很高的(传统的Mcs51单片机约为10~20mA/MIPS)。其次,作为一个应用系统,功耗是整个系统的功耗,而不仅仅是处理器的功耗。比如,在一个有多个输入信号的应用系统中,处理器输入端口的漏电流对系统的耗电影响就较大了。

- 5 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

MSP430单片机输入端口的漏电流最大为50nA,远低于其他系列单片机(一般为l~10uA)。

另外,处理器的功耗还要看它内部功能模块是否可以关闭.以及模块活动情况下的耗电.比如低电压监测电路的耗电等。还要注意,有些单片机的某些参数指标中.虽然典型值可能很小,但最大值和典型值相差数十倍,而设计时要考虑到最坏情况,就应该关心参数标称的最大值,而不是典型值。总体而言,MSP430系列单片机堪称目前世界上功耗最低的单片机,其应用系统可以做到用一枚电池使用10年。

2.2.2 强大的处理能力

MSP430 系列单片机是16 位单片机,采用了目前流行的、颇受学术界好评的精简指令集(RISC)结构,一个时钟周期可以执行一条指令(传统的MCS51 单片机要12 个时钟周期才可以执行一条指令),使MSP430 在8MHz 晶振工作时,指令速度可达8MIPS(注意:同样8MIPS 的指令速度,在运算性能上16位处理器比8位处理器高远不止两倍)。不久还将推出25~30MIPS的产品。

同时,MSP430系列单片机中的某些型号,采用了一股只有DSP中才有的16位多功能硬件乘法器、硬件乘.加(积之和)功能、DMA等一系列先进的体系结构,大大增强了它的数据处理和运算能力,可以有效地实现一些数字信号处理的算法(如FFT、DTMF等)。这种结构在其他系列单片机中尚未使用。

2.2.3 高性能模拟技术及丰富的片上外围模块

MSP430 系列单片机结合TI 的高性能模拟技术,各成员都集成了较丰富的片内外设。视型号不同可能组合有以下功能模块:看门狗(WDT),模拟比较器A,定时器A(Timer_A),定时器B(Timer_B),串口0、1(USART0、I),硬件乘法器,液晶驱动器,10位,12,14位ADC,12位DAC,12C 总线,直接数据存取(DMA),端口1-6(P1-P6),基本定时器(Basic Timer)等。

其中,看门狗可以在程序失控时迅速复位:模拟比较器进行模拟电压的比较,配合定时器,可设计出高精度(10~11 位)的A/D 转换器:16位定

- 6 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

时器(Timer A 和TimerB)具有捕获,比较功能;大量的捕获,比较寄存器,可用于事件计数、时序发生、PWM等;多功能串口(USART)可实现异步、同步和12C 串行通信,可方便地实现多机通信等应用;具有较多的I/O端口,最多达6*I/O口线,IO输出时,不管是灌电流还是拉电流,每个端口的输出晶体管都能够输出电流(最大约25mA),保证系统安全:PI、P2端口能够接收外部上升沿或下降沿的中断输入;12 位A/D 转换器有较高的转换速率,最高可达200Kb/s,能够满足大多数数据采集应用:LCD 驱动模块能直接驱动液晶多达160段;F15x 和F16x 系列有两路12位高速DAC,可以实现直接数字波形合成等功能:硬件12C 串行总线接口可以扩展12C 接口器件:DMA功能可以提高数据传输速度,减轻CPU 的负荷。

MSP430系列单片机的丰富片内外设,在目前所有单片机系列产品中是非常突出的,为系统的单片解决方案提供了极大的方便。

2.2.4 系统工作稳定

上电复位后,首先由DCO_CLK 启动CPU,以保证程序从正确的位置开始执行,保证晶体振荡器有足够的起振及稳定时间。然后软件可设置适当的寄存器的控制位来确定最后的系统时钟频率。如果晶体振荡器在用做CPU 时钟MCLK时发生故障,DCO会自动启动,以保证系统正常工作。这种结构和运行机制,在目前各系列单片机中是绝无仅有的。另外,MSP430 系列单片机均为工业级器件,运行环境温度为-40~+85\"C,运行稳定、可靠性高,所设计的产品适用于各种民用和工业环境。

2.2.5 方便高效的开发环境

目前MSP430系列有OTF 型、FLASH 型和ROM 型3种类型的器件,国内大量使用的是FLASH 型。这些器件的开发手段不同,对于OTF,型和ROM 型的器件是使用专用仿真器开发成功之后再烧写或掩膜芯片。对于FLASH 型则有十分方便的开发调试环境.因为器件片内有JTAG 调试接口,还有可电擦写的FLASH 存储器,因此采用先通过JTAG 接口下载程序到FLASH 内,再由JTAG 接口控制程序运行、读取片内CPU 状态,以及存储器内容等信息供设计者调试,整个开发(编译、调试)都可以在同一个软件集成环境中进行。这种方式只需要一台PC 机和一个JTAG调试器,而不需

- 7 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

要专用仿真器和编程器。开发语言有汇编语言和C 语言。目前较好的软件开发工具是IAR WORKBENCH V5.50。这种以FLASH 技术、JTAG调试、集成开发环境结合的开发方式,具有方便、廉价、实用等优点,在单片机开发中还较为少见。其他系列单片机的开发一般均需要专用的仿真器或编程器。另外,2001 年TI 公司又公布了BOOTSTRAP 技术,利用它可在保密熔丝烧断以后,只要几根硬件连线,通过软件口令字(密码),就可更改并运行内部的程序,这为系统固件的升级提供了又一方便的手段。BOOTSTRAP具有很高的保密性,口令字可达32个字节长度。

2.3 MSP430 系列单片机的发展和应用

TI公司从1996年推出MSP430系列开始到2000年初,推出了33x、32X、3lx等几个系列。MSP430的33x、32x、31x 等系列具有LCD 驱动模块,对、OTP型(P)和EPROM 提高系统的集成度较有利。每个系列有ROM 型(c)型(E)等芯片。EPROM 型的价格昂贵,运行环境温度范围窄.主要用于样机开发。这也表明了这几个系列的开发模式,即用户可以用EPROM 型开发样机,用OTP型进行小批量生产,而ROM型适应大批量生产的产品。MSP430的3XX系列,在国内几乎没有使用。随着FLASH 技术的迅速发展, TI 公司也将这一技术引入MSP430 系列单片机中。2000 年推出了F11X/11x1 系列,这个系列采用20脚封装,内存容量、片上功能和I/O引脚数比较少,但是价格比较低廉。在2000年7月推出了带ADC 或硬件乘法器的F13x、F14x 系列。在2001年7月到2002年又相继推出了带LCD控制器的F4lx、F43x、F44x。TI在2003到2004年期间推出了F15x 和F16x 系列产品。在这一新的系列中,有了两个方面的发展。一是增加了RAM的容量,如F1611的RAM容量增加到了10KB,这样就可以引入实时操作系统(RTOS)或简单文件系统等。二是从外围模块来说,增加了I2C、DMA、DAC12和SVS等模块。近两年,TI公司针对某些特殊应用领域,利用MSP430的超低功耗特性,还推出了些专用单片机,如专门用于电量计量的

MSP430FE42x,用于水表、气表、热表等具有无磁传感模块的MSP430FW42x,以及用于人体医学监护(血糖、血压、脉搏等)的MSP430FG42X单片机。用这些单片机来设计相应的专用产品,不仅具有MSP430的超低功耗特性,

- 8 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

还能大大简化系统设计。根据TI 在MSP430 系列单片机上的发展计划.在今后将陆续推出性能更高、功能更强的F5XX/F6XX 系列,这一系列单片机运行速度可达25~30MIPS,并具有更大的FLASH(128KB)及更丰富的外设接ISP(CAN、USB等)。

MSP430系列单片机不仅可以应用于许多传统的单片机应用领域,如仪器仪表、自动控制以及消费品领域,更适合用于一些电池供电的低功耗产品,如能量表(水表、电表、气表等)、手持式设备、智能传感器等,以及需要较高运算性能的智能仪器设备。

3 以FPGA/CPLD为代表的可编程逻辑器件介绍

3.1 FPGA/CPLD 概述

FPGA(现场可编程门阵列)与 CPLD(复杂可编程逻辑器件)都是可编程逻辑器件,它们是在PAL,GAL等逻辑器件的基础之上发展起来的。同以往的PAL,GAL等相比较,FPGA/CPLD的规模比较大,它可以替代几十甚至几千块通用IC芯片。这样的FPGA/CPLD实际上就是一个子系统部件。这种芯片受到世界范围内电子工程设计人员的广泛关注和普遍欢迎。经过了十几年的发展,许多公司都开发出了多种可编程逻辑器件。比较典型的就是Xilinx公司的FPGA器件系列和Altera公司的CPLD器件系列,它们开发较早,占用了较大的PLD市场。通常来说,在欧洲用Xilinx的人多,在日本和亚太地区用ALTERA的人多,在美国则是平分秋色。全球PLD/FPGA产品60%以上是由Altera和Xilinx提供的。可以讲Altera和Xilinx共同决定了PLD技术的发展方向。当然还有许多其它类型器件,如:Lattice,Vantis,Actel,Quicklogic,Lucent等。 (99年Lattice收购了Vantis,成为第三大PLD供应商;同年Xilinx收购了Philips的PLD部门)

尽管FPGA,CPLD和其它类型PLD的结构各有其特点和长处,但概括起来,它们是由三大部分组成的:

配置逻辑模块CLB(Configurable Logic Block)构成了PLD器件的

逻辑组成核心;

输出输入模块IOB(Input Output Block):连接逻辑块的互连资源;

- 9 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

内部连线(Interconnect):由各种长度的连线线段组成,其中也有一

些可编程的连接开关,它们用于逻辑块之间、逻辑块与输入/输出块之间的连接。

XILINX Virtex系列芯片基本框图结构

对用户而言,CPLD与FPGA的内部结构稍有不同,但用法一样,所以多数情况下,不加以区分。

3.2 FPGA/CPLD 优点

FPGA/CPLD芯片都是特殊的ASIC芯片,它们除了具有ASIC的特点之外,还具有以下几个优点:

3.2.1 功能强大:

随着VlSI(Very Large Scale IC,超大规模集成电路)工艺的不断提高单一芯片内部可以容纳上百万个晶体管, FPGA/CPLD芯片的规模也越来越大,其单片逻辑门数已达到上百万门,它所能实现的功能也越来越强,同时也可以实现系统集成。

3.2.2 资金投入小,节省开发花销:

FPGA/CPLD芯片在出厂之前都做过百分之百的测试,不需要设计人员承担投片风险和费用,设计人员只需在自己的实验室里就可以通过相关的软硬件环境来完成芯片的最终功能设计。所以, FPGA/CPLD的资金投入小,

- 10 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

节省了许多潜在的花费。

3.2.3 开发周期短:

用户可以反复地编程、擦除、使用或者在外围电路不动的情况下用不同软件就可实现不同的功能。所以,用FPGA/PLD 试制样片,能以最快的速度占领市场。 FPGA/CPLD软件包中有各种输入工具和仿真工具,及版图设计工具和编程器等全线产品,电路设计人员在很短的时间内就可完成电路的输入、编译、优化、仿真,直至最后芯片的制作。 当电路有少量改动时,更能显示出FPGA/CPLD的优势。电路设计人员使用FPGA/CPLD进行电路设计时,不需要具备专门的IC(集成电路)深层次的知识, FPGA/CPLD软件易学易用,可以使设计人员更能集中精力进行电路设计,快速将产品推向市场。

3.3 FPGA的发展现状

FPGA自问世以来,发展速度十分惊人,市场规模不断扩大,技术也日趋成熟,但还没有达到固定标准结构程序的阶段。先进的ASIC生产工艺已经被用于FPGA的生产,越来越丰富的处理器内核被嵌入到高端的FPGA芯片中,基于FPGA的开发成为一项系统级设计工程。随着半导造工艺的不同提高,FPGA的集成度将不断提高,制造成本将不断降低,其作为替代ASIC来实现电子系统的前景将日趋光明。今后的发展方向将会根据用户需要不断开拓更高速、更小型、能满足用户价格要求的新型FPGA器件。接下来从以下几个方面对讲一讲FPGA的发展方向。

3.3.1 大容量、低电压、低功耗FPGA

大容量FPGA是市场发展的焦点FPGA产业中的两大霸主:Altera和Xilinx在超大容量FPGA上展开了激烈的竞争。2007年Altera推出了65nm工艺的StratixIII系列芯片,其容量为67200个LE (Logic Element,逻辑单元),Xilinx 推出的65nm工艺的VitexVI系列芯片,其容量为33792个Slices(一个Slices约等于2个LE)。采用深亚微米的半导体工艺后,器件在性能提高的同时,价格也在逐步降低。由于便携式应用产品的发展,对现场可编程器件的低压、低功耗的要求日益迫切。因此,无论那个厂家、哪种类型的产品,都在瞄准这个方向而努力。例如Xilinx公司的SpantanTM系列的FPGA、

- 11 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

Altera公司的APEX 20KE器件、ACEX系列以及Actel公司的SX系列产品都是向低压、低功耗发展的典范。不仅如此,更有新型的公司以其特色的技术加入低压、低功耗芯片的竞争。典型的如Philips Semiconductors推出的 CoolRunner 960,是一种具有960个宏单元的CPLD,无论在何种应用中,都能提供标准的6ns传输延迟、工作于3v的电压下。该器件低功耗的关键是采用了Zero Power互连阵列,它用一个由外部逻辑实现的CMOS门,代替了其它CPLD常用的对电流敏感的运放。这样当其它的相等规模的CPLD需要消耗250mA的静电流时,CoolRunner 960的耗电不到100mA。

3.3.2 系统级高密度FPGA

随着生产规模的提高,产品应用成本的下降,FPGA的应用已经不是过去的仅仅适用于系统接口部件的现场集成,而是将它灵活地应用于系统级(包括其核心功能芯片)设计之中。在这样的背景下,国际主要FPGA厂家在系统级高密度FPGA 的技术发展上,主要强调了两个方面:FPGA的IP硬核和IP软核。当前具有IP内核的系统级FPGA的开发主要体现在两个方面:一方面是FPGA厂商将IP硬核(指完成版图设计的功能单元模块)嵌入到FPGA器件中,另一方面是大力扩充优化的IP软核(指利用HDL语言设计并经过综合验证的功能单元模块)。为了更好的满足设计人员的需要,扩大市场,各大现场可编程逻辑器件的厂商都在不断的扩充其知识产权(IP)核心库。这些核心库都是预定义的、经过测试和验证的、优化的、可保证正确的功能。设计人员可以利用这些现成的IP库资源,高效准确的完成复杂片上的系统设计。典型的IP核心库有Xilinx公司提供的 LogiCORE和AllianceCORE。

3.3.3 FPGA和ASIC出现相互融合

虽然标准逻辑ASIC 芯片尺寸小、功能强、功耗低,但其设计复杂,并且有 批量要求。FPGA价格较低廉,能在现场进行编程,但它们体积大、能力有限, 而且功耗比ASIC大。正因如此,FPGA和ASIC正在互相融合,取长补短。随着一些ASIC制造商提供具有可编程逻辑的标准单元,FPGA 制造商重新对标准逻辑单元发生兴趣。

3.3.4 动态可重构FPGA

动态可重构FPGA是指在一定条件下芯片不仅具有在系统重新配置电路

- 12 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

功能的特性,而且还具有在系统动态重构电路逻辑的能力。对于数字时序逻辑系统,动态可重构FPGA的意义在于其时序逻辑的发生不是通过调用芯片内不同区域、 不同逻辑资源来组合而成,而是通过对FPGA 进行局部的或全局的芯片逻辑的动态重构而实现的。动态可重构FPGA在器件编程结构上具有专门的特征,其内部逻辑块和内部连线的改变,可以通过读取不同的SRAM中的数据来直接实现这样的逻辑重构,时间往往在纳秒级,有助于实现FPGA系统逻辑功能的动态重构。但是,要实现高速的动态重构,要求芯片功能的重新配置时间缩短到纳秒量级,这就需要对FPGA的结构进行革新。可以预见,一旦实现了FPGA的动态重构,则将引发数字系统的设计的思想的巨大转变。

4 两者的相关比较

4.1 技术范畴

4.1.1 单片机

软件范畴,它的硬件(单片机芯片)是固定的,通过软件编程语言描述软件指令在硬件芯片上的执行。

4.1.2 FPGA

硬件范畴,它的硬件(FPGA)是可编程的,是一个通过硬件描述语言在FPGA芯片上自定义集成电路的过程。

4.2 结构

4.2.1 单片机

单片机是一种微处理器,类似于电脑CPU的,它一般采用的是哈佛总线结构,或者冯诺依曼结构,对单片机的编程很大程度上要考虑到它的结构和各个寄存器的作用。

4.2.2 FPGA

FPGA 它的结构是查找表结构,其程序不用去太考虑芯片的结构,要注意的是时序上问题,它的结构比较复杂,功能也很强大。

4.3 运行速度

4.3.1 单片机

- 13 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

16位的MSP430系列可以高达 25MHz,最新的具有高级通信功能的 32 位Sitara™ Cortex-A8 和 ARM9系列的超值系列达到 600MHz,高性能系列可以高达1.5GHz。

4.3.2 FPGA

Altera公司的Arria®V device的全局时钟频率是650 MHz ,FPGA内部集成锁项环,可以把时钟倍频,核心频率可以到几GHz,在高速场合,尤其是告诉的数据采集和控制场合,单片机无法代替FPGA。

4.4 管脚

4.4.1 单片机

单片机IO口有限,比如一个系统有多路AD/DA,单片机要进行仔细的资源分配,总线隔离。

4.4.2 FPGA

FPGA的IO配置灵活,可以自由设定IO的功能,动辄数百的IO口,容易实现大规模系统,而FPGA可以方便连接外设,对于一个系统有多路AD/DA,FPGA由于丰富的IO资源,可以很容易用不同IO连接各外设。

4.5 执行方式

4.5.1 单片机

单片机(无论哈佛总线结构或者冯诺依曼结构)均为取出指令->执行,指令是顺序执行的(即使是中断,其发生后的中断服务程序也是顺序执行的)。

4.5.2 FPGA

而FPGA(包括CPLD)是基于逻辑门和触发器的,它是并行执行方式,即当CLOCK上升沿到来时,所有的触发器都会动作,它没有取出指令->执行这种操作,数字电路中所有逻辑门和触发器(D、SR等)均可以实现,它适合真正意义上的并行任务处理,程序跑飞或死机的可能性小,但是顺序执行能力差,很难实现多事件模块的并行赋值。

4.6 二次开发

4.6.1 单片机

单片机本身受到硬件和IO口的,不方便进行二次开放 4.6.2 FPGA

- 14 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

FPGA有大量软核,可以方便进行二次开发FPGA甚至包含单片机和DSP软核,并且IO数仅受FPGA自身IO

4.7 价格成本

4.7.1 单片机(以TI公司为例) MSP430™: 0.25至9.00 美元

TI 32位实时MCU(C2000™、Delfino™、Piccolo™):1.85至20.00

美元

TI 32位基于ARM® 的处理器: 1.00至25.00 美元成本低

4.7.2 FPGA(以ALTERA公司为例) Cyclone: 12.8美元至374.92美元Arria : 170美元至4,004.56美元Stratix:

190美元至16,434.02667美元

成本高,价格昂贵

4.8 相关能力

控制能力 单片机 FPGA 强 较弱 时序实现能力 弱 强 组合逻辑能力 较强 较强 4.9 应用领域

- 15 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

4.9.1 MSP430系列单片机

传统的单片机应用领域:如仪器仪表、自动控制以及消费品领域 电池供电的低功耗产品:如能量表(水表、电表、气表等)、手持式设备、智能传感器等,以及需要较高运算性能的智能仪器设备。

 家用电器领域:

如洗衣机、电冰箱、空调机、微波炉、电饭煲、电视机、录像机及其他视频、音像设备的控制器 。

 办公自动化领域:

如通用计算机系统中的键盘译码、磁盘驱动、打印机、绘图仪、复印机、电话、舌、传真机及考勤机等。

 智能产品领域:

例如传真打字机采用单片机,可以取代近千个机械器件;缝纫机采用单片机控制,可执行多功能自动操作、自动调速,控制缝纫花样的选择。

 测控系统:

例如计各种工业控制系统、环境控制系统、数据控制系统 、例如温室人工气候控制、水闸自动控制、电镀生产线自动控制、汽轮机电液调节系统等。在 目前数字控制系统的简易控制机中,采用单片机可提高可靠性,增强其功能、降低成本。

 智能接口:

例如较大型的工业测控系统中,除外围装置(打印机、键盘、磁盘 CRT)外,还用许多外部通信、采集、多路分配管理、驱动控制等接口。这些外围装置与接口如果完全由主机进行管理,势必造成主机负担过重,降低执执行速度,如果采用单片机进行接口的控制和管理,单片机微处理器与主机可以并行工作,会大大地提高系统的执行速度。如在大型数据采集系统中,用单片机对模拟/数字转换接口进行控制不仅可提高采集速度,还可对数据进行预先处理,如数字滤波、线性化处理、误差修正等。在通信接口中采用单片机可对数据进行编码译码、分配管理、接收/发送控制等。

 商业营销领域:

例如在商业营销系统中已广泛使用的电子秤、收款机、条形码阅读器、

- 16 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

仓储安全监测系统。

工业自动化:

如工业过程控制、过程监测、工业控制器及机电一体化控制系统等。 汽车电子与航空航天电子系统:

例如动力监测控制系统、自动驾驶系统、通信系统及运行监视器等,都要构成冗余的网络系统。

4.9.2 FPGA

FPGA的应用可分为三个层面:电路设计,产品设计,系统设计 电路设计中FPGA的应用

连接逻辑,控制逻辑是FPGA早期发挥作用比较大的领域也是FPGA应用的基石.事实上在电路设计中应用FPGA的难度还是比较大的这要求开发者要具备相应的硬件知识(电路知识)和软件应用能力(开发工具)这方面的人才总是紧缺的,往往都从事新技术,新产品的开发成功的产品将变成市场主流基础产品供产品设计者应用在不远的将来,通用和专用IP的设计将成为一个热门行业!搞电路设计的前提是必须要具备一定的硬件知识.

产品设计

把相对成熟的技术应用到某些特定领域如通讯,视频,信息处理等等开发出满足行业需要并能被行业客户接受的产品这方面主要是FPGA技术和专业技术的结合问题,另外还有就是与专业客户的界面问题产品设计还包括专业工具类产品及民用产品,前者重点在性能,后者对价格敏感产品设计以实现产品功能为主要目的,FPGA技术是一个实现手段在这个领域,FPGA因为具备接口,控制,功能IP,内嵌CPU等特点有条件实现一个构造简单,固化程度高,功能全面的系统产品设计将是FPGA技术应用最广大的市场,具有极大的爆发性的需求空间产品设计对技术人员的要求比较高,路途也比较漫长不过现在整个行业正处在组建"首发团队"的状态,只要加入,前途光明产品设计是一种职业发展方向定位,不是简单的爱好就能做到的!产品设计领域会造就大量的企业和企业家,是一个近期的发展热点和机遇

系统级应用

系统级的应用是FPGA与传统的计算机技术结合,实现一种FPGA版的

- 17 -

姜舒22011308 东南大学电子设计竞赛培训论文 2013.7

计算机系统如用XilinxV-4, V-5系列的FPGA,实现内嵌POWERPCCPU, 然后再配合各种外围功能,实现一个基本环境,在这个平台上跑LINIX等系统这个系统也就支持各种标准外设和功能接口(如图象接口)了这对于快速构成FPGA大型系统来讲是很有帮助的。这种"山寨"味很浓的系统早期优势不一定很明显,类似ARM系统的境况但若能慢慢发挥出FPGA的优势,逐渐实现一些特色系统也是一种发展方向。若在系统级应用中,开发人员不具备系统的扩充开发能力,只是搞搞编程是没什么意义的,当然设备驱动程序的开发是另一种情况,搞系统级应用看似起点高,但不具备深层开发能力,很可能会变成爱好者。

4.10 以实现1+1为例

4.10.1 单片机

实现:寄存器A+寄存器B 结果赋值给 寄存器A 语言:C语言(or 汇编) 4.10.2 FPGA

实现:在时钟的激励下,进行1位全加器的操作(虽然本质上通过查找表实现的,但可以理解为使用了全加器)

语言:verilog(or VHDL) 用代码来描述全加器电路

5 后言

现在一般而言更多的系统倾向于CPU和FPGA的联合系统。由于CPU的指令周期可能比较长,而且多中断可能导致ARM等处理器处理负担过重(特别是IO方面的处理)。那么就需要一块FPGA。FPGA自制内部逻辑可。此时以充分释放ARM或者CPU的处理能力,作为CPU的协“处理器”FPGA可以为CPU做缓冲:预判等等工作。甚至可以通过FPGA来做CPU的看门狗,防止CPU跑飞等等。同时也可以开辟FPGA内部的一定容量的逻辑,做成寄存器让CPU读取,就可以让CPU了解到外设的工作情况,避免外设故障导致系统崩溃。

- 18 -

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- dfix.cn 版权所有 湘ICP备2024080961号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务