您当前的位置:五五电子网电子知识单片机-工控设备嵌入式系统-技术智能网络设备开发中的硬件设计 正文
智能网络设备开发中的硬件设计

智能网络设备开发中的硬件设计

点击数:7951 次   录入时间:03-04 11:46:23   整理:http://www.55dianzi.com   嵌入式系统-技术
  RAM用来执行指令和数据储存。因此,最小的RAM也要是Flash的大小加上数据内存和以太缓冲区的大小。有其它能影响RAM大小的考虑,比如,产品要不要在线升级。在有的机制中,比如NetSILICon公司的Net+Works方案提供的FTP可升级特性,RAM的大小需要是程序映像大小的2倍。比如,刚提到的FTP实现需要的一个保存新程序的缓冲区。这个缓冲区会通过网络接收1个新的映像文件,然后将它保存在RAM的1个区里。升级例程然后会将新映像烧到Flash中。因此,在这个例子中,内存需求的增加包括可执行代码的大小、另外增加的用于暂时保存升级程序的缓冲区以及为数据和网络缓冲区增加的空间。

  最后,堆的大小一定要考 虑,堆的大小会有很多职能,如对每一个Socket连接分配内存。具体的例子,如NET+OS中,每一个Socket连接需要大约400字节。在这种情况下,通常用将执行文件大小加倍的方案来确定RAM的大小。

  5 执行、访问和速度

  在Flash中执行,对许多低端应用来说并不坏。如一个简单的串口到以太网的网关设备,在Flash中运行通常不需要性能上的补偿。有一些处理器,如NET+ARM,可以利用内部产生的与Flash相关的信号来获得效率。例如,对于一个16位的AMD Fash设备,Flash的片选可以接地,从而在100%的时间内,它都是活动的。当电源可以承担这样的消耗,此特性可以提高Flash的效率。写使能和输出使能信号可以直接从处理器得到。例如,NET+ARM处理器有5个可用的片选。一个普通的写使能和输出使能存在于内存外设中。片选0通常用于Flash。我们不将NET+ARM的片选0接到Flash上,也就是不用NET+ARM的片选0的输出使能和写使能。与此对应,将Flash上的片选使能接地,而同时写使能和输出使能用NET+ARM的26、27地址线来驱动。这样,数据有效是依赖输出使能而不是片选使能。从而,就可以绕过与Flash设备相关的几个慢速访问周期。

  除了理解不同的类型和内存需求,找到正确的内存大小依赖于内存允许的访问时间。内存速度直接影响传输率性能,而传输率直接影响到处理器能处理多少数据。内存慢导致取指令慢,接着就降低了整个产品效率。理解这些产品需求中的依赖性对建造一个嵌入式产品是必不可少的。要理解内存速度的需求,需要对NET+ARM了解得更详细一些。NET+ARM的系统周期在它的总线主控制者之间共享。也就是说,系统时钟周期在ARM7内核和内部10通道的DMA控制器之间分享。在这样的设计中,ARM内核每得到一个时钟周期,DMA也同样得到一个时钟周期,在将总线交回下一个控制者之间,总线主控制者被允许可以突发至4个长字。

  下一个较关键的性能是时钟速度。NET+ARM通常使用33MHz的时钟。这样就给它的处理时间差据周期的单位数,将结果乘上30ns,再将所得结果乘2,就得到了整个系统时钟周期的时间。请注意每一个总线控制者都可以突发至4个字长或16个字节。整个系统周期基本上是ARM、DMA1、ARM、DMA2,依次类推。我们看一下DMA通道1(以太网接收通道),可以简单地将每个系统周期移动16个字节转换成每秒多少兆字节。

  除了Flash,附加的NVRAM有时会被忽略。许多 RTOS 广商推荐使用一些如EEPROM的小型NVRAM设备来存储配置信息。为了增强易用性,NetSilicon推荐用EEPROM来保存如MAC地址、序列号、IP地址一类的设备配置。当产品的IP地址或配置设定被改动时,程序可以简单地将新的值写到EEPROM中,而不需要保存配置信息的Flash的该扇区重新擦写。由于需要的EEPROM的容量通常较小,使用的NVRAM设备也是小设备。在NetSilicon公司的NET+ARM开发包中,有针对MAC地址、IP配置、序列号的程序。利用这些工具可以大大地节省时间和开发精力。

  板级部件之间的通信有一个通用的机制是内存映射。处理器通常有一个系统总线,由地址和数据总线组成,它们都会被用来与外设进行通信。内存,如Flash和SDRAM,一般会驻留在处理器的系统总线上。其它的外围部件,如FPGA、LCD显示、编码器、其它类型的设备等,也会需要添加到这个总线上。



www.55dianzi.com   这一类型的实现通常有2个原因:效率和易用性。与许多其它类型的接口比较,系统总线上的效率是非常重要的。需要慎重考虑的是,究竟是何种其它外设是通过系统总线进行通信的。如果有许多高带宽的部件要进行通信,那么总线争用就会出现。从易用性角度出发,所有系统总线上的设备基本上类似于内存。使用智能的内存处理器,可以使得应用的硬件之间的通信容易得如同访问一内存区。

  缓存的概念,就是检查每一次内存访问,看它是否在缓冲区中。如果不是,一个常规的内存访问会进行。如果该地址出现在在缓冲区中,指令或数据会直接在缓存中存取,而不需要尝试总线来进行外部的访问。这样一来,DMA控制器就可以继续使用总线而ARM内核直接从缓存控制器中取得指令。

  6 其它网络因素

  以太网通信所需的包含MAC、PHY、1个电压转换器和1个连接器。选择一个集成了MAC的处理器是非常有益处的,因为许多设计部件减少了。

  在有外部MAC的情况下,有时附加的内存是需要的。通过集成MAC,系统的成本也会跟着降低。MAC的主要任务包括处理以太网上的冲突情况。当侦测到一个冲突时,MAC会将包放入发送单元,一直到将包发送出去为止。

  许多应用为了与其它外设进行通信,既需要内部接口,也需要外部接口。内 部接口通常是部件之间通信板级接口。许多情况下,处理器的系统总线会用来为外设做内存映射,比如USB、LCD、FPGA、MPEG编码器等。GPIO(通用I/O)可以用来构造像串行EEPROM的接口设备。除了外部设备(如硬盘或相机)的接口,还可以用来做部件通信相关设备(如Modem、CODEC)接口。

  对于很多类型的产品和部件,串行接口是常见的。串行拓扑,如RS232、422、485,在与外部设备通信时经常用到。用到485的有2个主要市场:工业自动化和楼宇控制。而现在以太网成了很多应用的常见连接方式,就像过去串行、并行连接一样。无线以太网又增添了远程的应用和功能,使得以太网可以延伸到那些不可能布线或布线成本太高的地点。802.11和蓝牙技术正在被不断地改进。

  7 重启

  重启也是设计中的关键因素。理解什么类型的重启可用,它们将对系统产生保种影响,以帮助设计者利用特定的情况。在NET+ARM芯片中,有5种重启可以使用:加电重启、通过RESET引脚的硬重启、看门狗重启、ENI重启和软件重启。

  ENI重启允许NET+ARM被一个外部处理器重启。这是在NET+ARM作为一个协处理器负责网络通信的情况下使用的。加电重启、硬重启和看门狗重启都会导致NET+ARM内部模块重启。但ENI重启却不会影响到NET+ARM的内存控制器和ENI模块本身。软件重启不会影响ARM处理器、ENI和内存模块。通过了解可用的重启类型,就可以在得启个别部分时无须影响到整个系统。

  有2点本文没有讨论,分别是电源的稳定性和设备失效后的恢复。当系统中只有一闪存设备时(在成本敏感的设计中往往如此),如果电源失效,闪存就会瘫痪。这种情况如果发生,就得被迫用另外的方式来访问处理器。在NET+ARM的设计中,可选的方式包括JTAG连接,它允许编程者获得处理器的控制来纠正闪存中映像。

  8 结论

  最有效的系统设计一定要看到未来的发展并有所计划。近年来的半导体发展就反映了这个趋势。1μm的半导体处理技术被分别由0.8、0.5、0.35、0.25和0.18μm处理技术代替。每一次处理尺寸的缩小,就带来相关价格的降低和实现性能的提高。例如,早期的NET+ARM设计使用NET+12,现在就可以被NET+40或NET+50所代替。

  如果设计得当,了解产品发展的未来路线和得到NetSILICon公司为客户所做的硬件设计检查,使用NET+ARM做设计时如果保证了这三点因素,客户就可以选择不同的NET+ARM产品而使用相同的板子。另外,额外的内存和部件的布局设计也可以增加,确保整个系统的设计更通用、能坚持更长的使用时间。通过了解产品需求、理解产品环境、精心选择部件、利用集成的方案、在为今天的需求设计产品时能为明天的改进计划出相应的路线,聪明的设计者可以最大限度地发挥产品的功效。这些因素会帮助你的设计和产品获得成功。   



上一页  [1] [2] 


本文关键字:硬件  智能  网络  开发  嵌入式系统-技术单片机-工控设备 - 嵌入式系统-技术

上一篇:分析技术的未来