您的位置 首页 模拟

教你挑选适宜的微控制器

教你选择合适的微控制器-系统性能并不等价于计算能力。较低的功耗、丰富的片内外设以及实时的信号处理能力对于大部分嵌入式应用来说是最为重要的。传统的8位、16位单片机已经很好的处理了这类问题,但是随着当今

  体系功用并不等价于核算才能。较低的功耗、丰厚的片内外设以及实时的信号处理才能关于大部分嵌入式运用来说是最为重要的。传统的8位、16位单片机现已很好的处理了这类问题,可是跟着当今嵌入式规划不断增加的功用需求和特别要求,许多微操控器厂商开端扔掉他们传统的8位、16位单片机。可是挑选32位处理器关于某些使命来或许并不是最适合的。下面咱们就讨论一下单片机的选型问题。

  了解体系功用

  MIPS(million instructions per second),是微操控器核算才能的表征。可是,一切的嵌入式运用不仅仅是需求核算才能,所以运用的多样化决议了体系功用衡量办法的多样化,大部分参数都平等重要而且难于用一个参数来标明,咱们并不应该仅仅从MIPS就断定体系的好坏。或许某一运用由于本钱的约束,需求一款高集成度的微操控器,该操控器需求多个定时器和多种接口。可是另一个运用需求高的精度和快速的模仿转化才能。两者的一起点或许仅仅是供电部分,比方选用电池供电。关于一个实时的次序处理运用来说,通讯的失利或许会导致灾祸性成果。这样的场合下就需求一个灵活的操控器。这个操控器应当能够以正确的次序处理使命,而且呼应时刻有必要均衡。一切上述运用的一起问题或许便是定时的现场晋级才能。

  除了与具体的产品要求有关外,体系功用的衡量也能够考虑是否有简略上手、简略运用的开发工具、运用示例、完全的文档和高效的支撑网络。

  体系功用的相关问题

  1.传统8位单片机的约束

  大多数工程师十分重视体系功用,由于越来越多的8位和16位单片机宗族现已无法满意当今日益增加的需求。陈腐和低效的架构约束了处理才能、存储器容量、外设处理和低功耗要求。8位的处理器架构,比方8051、PIC14、PIC16、PIC18、78K0和HC08是在高档言语(比方C言语)呈现之前开发的,其指令集仅用于汇编开发环境。而且这类架构的中央处理单元(CPUs)缺少一些要害功用,比方16位的管用运算支撑、条件跳转和存储器指针。

  许多CPU架构履行一条指令需求若干时钟周期。Microchip的8位PIC宗族履行一条最简略的指令需求4个时钟周期,这导致运用20M的时钟仅能到达5MIPS.关于其他CPU架构,比方8051内核。其履行一条指令至少需求6个时钟周期,这就使得实践的MIPS要比给定的时钟频率低许多。

  int max(int *array)

  {

  char a;

  int maximum=-32768;

  for (a=0;amaximum)

  maximum=array[a];

  return (maximum);

  }

  上述代码是一个简略的C言语函数,表1列出了在三种不同CPU架构上编译这段代码的相应成果。8051内核的履行时刻简直是PIC16内核的4倍,关于AVR架构更是到达了28倍。

  表1不同CPU架构的代码容量和履行时刻

  CPU架构代码容量(字节)履行时刻(周期)

  8051 112 9384

  PIC16 87 2492

  AVR 46 335

  一些半导体厂商处理了时钟分配问题,使得微操控器完结了单时钟周期指令。当时钟频率为100MHz时,Silicon Labs宣称他们根据8位8051架构的微操控器能够到达100MIPS的峰值。可是,这里有几个问题:

  榜首,由于大部分指令需求两个时钟周期乃至更多,所以其实践才能接近于50MIPS;

  第二,8051是根据累加器的CPU,一切需求核算的数据有必要拷贝到累加器。检查8051处理器的汇编代码,能够发现65%-70%的指令用来移动数据。由于现代8位和16位单片机架构中有一系列和算术逻辑单元(ALU)相连的寄存器。因而,8051内核的50MIPS仅相当于现代8位和16位单片机架构的15MIPS.

  MOV A,0x82

  ADD A,R1

  MOV 0x82,A

  MOV A,0x83

  ADDC A,R2

  MOV 0x83,A

  MOVX A,@DPTR

  MOV OxF0,A

  INC DPTR

  MOVX A,@DPTR

  RET

  第三,较老的CPU架构缺少对大容量存储器的支撑。早在七十年代,很难幻想需求超越64KB存储器的嵌入式运用,这使得许多CPU规划师挑选16位的地址总线。因而,CPU、寄存器、指令集以及程序存储器和数据存储器的数据总线一直受此约束。

  第四,在2006年,约有9%的8位嵌入式运用运用了64KB乃至更多的程序存储空间,这代表了8位MCU商场26%的收益。估测2009年,14%的8位嵌入式运用会代表36%的收益。而这14%的运用会运用64KB乃至更多的程序存储空间。

  从体系功用的视点来看,一切这些使得较旧的8位MCU逐步失掉竞争力。

2.不适合32位处理器的场合

  老式CPU架构无法满意当今的商场需求,为了处理这个问题,许多厂商晋级至32位的处理渠道。关于需求32位处理才能的运用来说这无疑是最棒的挑选,可是许多规划师转化到32位渠道并非最正确的挑选。运用32位MCU来处理8位和16位单片机的本身约束将会导致过高的本钱。

  大部分32位微操控器无法供给高速、高分辨率的模数(ADC)转化,EMC功用一般较低,且ESD维护较弱。而8位和16位单片机在这些方面优势显着。其他,强的IO驱动才能,可供挑选的多种内部、外部振荡器,无需外部器材的片内电压调整器等是8位和16位单片机的另一些长处。

  明显,32位CPU包含比任何8位和16位CPU都要多的数字逻辑单元,这导致了高的制作本钱。尽管运用一些特其他半导体工艺能够下降本钱,可是坏处是会导致较高的漏电流和静态功耗。某些运用,像水表、燃气表、收费公路电子标签、安全体系等,在他们生命期中的大部分时刻,CPU处于睡觉形式,即为中止状况。这类运用的电池寿数有必要在5-10年,所以这状况中,不或许将CPU从8位或许16位晋级至32位处理器。假如想要提高体系功用只要选用其他办法。

  坚持选用一致产品线

  出产商会定时出产新的嵌入式产品扩展产品线以坚持竞争力。这些新产品一般是完善需求、晋级功用或许下降本钱。其他要素还包含制作工艺晋级、提高竞争力和商场发展趋势。独立于最早的想象,新产品总是根据一些中心思维。因而,新的产品或许晋级版本会依赖于现已存在的渠道和源代码。

  研讨标明,对折公司潜在重用已有硬件和软件以削减开发时刻。工程师对特定MCU产品宗族的了解程度、相关MCU的开发文档是否具体以及是否具有高效的开发工具也是下降开发时刻和本钱的重要要素。

  维护知识产权和处理保密信息

  一些嵌入式运用用来处理个人信息。另一些授权拜访受限区域或许金融范畴。简直一切的微操控器都在运转具有产权的程序。假如相关软件被破解,乃至克隆产品在商场流转,知识产权的一切人或许会失掉未来的收益。正是由于这个原因,大部分微操控器都有维护机制。这种机制能够阻挠黑客或许第三方运用编程器、调试器或许测验接口来读出程序存储器。

  当今,越来越多的运用选用层次规划或许功用模块规划。不同功用模块或许部件之间的有线通讯或许无线通讯成为一个越发困难和值得注意的问题。为了阻挠第三方的不合法拜访,有必要进行加密。这方面的一个比方便是遥控车门开关(Remote Keyless Entry, RKE)或许家庭无线网络。假如传输的数据没有加密,那任何人都有或许运用您的车或运用您的无线互联网衔接。传统的处理办法是运用封闭算法或许加密算法,这样只要知道算法的人能够运用。这样的办法被称为经过藏匿来完结安全(security by obscurity),这是一种十分风险的做法。最佳的处理办法是运用比方AES或许DES这类的揭露算法,这类算法既答应大众查阅又能够保证他们的安全。假如你运用私密加密算法或许匿名加密算法,则无法*估安全级别或许发现要害的规划缺点。

  运用揭露加密协议的问题是需求强壮的运算才能和牢靠的算法规划。在现代8位MCU上运用DES算法加密或许解密一个8字节的块所需时刻的典型值是大约10 万个时钟周期。这相当于运用悉数的15MIPS来支撑9600Kbps的通讯速度。而32位CPU进行相同的运算一般会快50%-60%.在32MHz体系时钟下,运用45000周期或1.4毫秒只能以45 kbps的速度进行安全数据通讯,由于一切的CPU时刻都用于加密和解密。明显,体系没有多少时刻能够留给实践的运用程序。其次,大多数的无线运用是电池驱动的,假如大多数处理才能都用在安全方面,将缩短电池寿数。

高集成度与中止延时和安全

  现在的微操控器在其片内集成了越来越多的外设。一般来说,外设对微操控器高效的完结作业起着至关重要的效果。外设起着衔接传感器、体系操控、数据通讯、毛病操控和计时等多种效果。传统办法是运用中止来与片内外设通讯。这样的优势很显着,大大的节约CPU时刻,使得软件不用循环检测外设状况,然后本质上提高了CPU的功率。即使如此,中止办法依然有一些下风,其间一个便是中止例程中的上下文切换要花费一些处理周期。关于现代的CPU架构来说,中止的上下文切换需求20-100个时钟周期。假设有一个简略的使命,它获取发来的SPI数据。假如SPI的速率是1Mbps,则SPI接纳中止的频率可达 125KHz.假如SPI中止处理需求25时钟周期(包含上下文切换),那关于20MIPS的CPU时刻来说,仅处理SPI中止就需求花费15%的CPU 时刻。假如一起还有其他一系列中止,则意味着CPU有必要处理巨大的使命。

  运用中止办法的另一个下风便是中止呼应时刻对要害体系事情的影响。某些中止源或许要求在触发后CPU有必要当即呼应。比方轿车的安全气囊、动力设备的急停等危机状况以及紧急状况的运用。一切这些都要求当即相应,或许当即封闭操控体系以避免产生永久性灾祸事情。假如CPU需求首要完结其他的中止服务程序或许需求花费较长的时刻进行上下文切换,成果将无法预知。

  现在,现已有些半导体厂商开发了一些新的技能。这些技能用来替代传统的中止办法或许DMA办法,运用这类技能进行外设通讯能够节约很多的CPU时刻。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/moni/177265.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部