微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于ARM的快速原型化平台的实现

基于ARM的快速原型化平台的实现

时间:06-02 来源:互联网 点击:

设已经高度模块化并且相互独立,在外设之间几乎不会有柔性连接的要求,而且处理器和外设之间的数据通信速度比最小系统的运行速度要慢很多。因此,用互连模块取代最小系统和外设之间的直接物理连接是切实可行的。

按照这种思路,设计出了如图3所示的快速原型化平台。

图3(快速原型化平台)

图3中,可编程互连模块是快速原型化平台的核心部分。常用的外设部分包括:网卡,USB接口,LVDS接口,RS-232接口,RS-485接口,音频AC`97接口,PCMCIA/CF卡接口。这些常用外设就是前文提到的可重复利用的模块。由于嵌入式处理器的总线、通用I/O、专用I/O和各种外设都连接在可编程互连模块上,因此不同的嵌入式处理器只需要设计最小系统即可,然后将该最小系统接入快速原型化平台,利用这个平台提供的外设进行系统调试。

以上设计的快速原型化平台,不仅考虑了当前嵌入式硬件系统的发展特点即嵌入式处理器种类多,外设种类相对较少,接口标准趋于统一,同时又充分体现了可测性、灵活性、模块化的设计思想。

3 随机方向信号的可配置互连

常见的信号传输方向不管是单向的还是双向的,都可以预先确定。例如,数据总线是双向的,读或者写是完全确定的,可以通过读写信号来控制数据的传输的方向。但是有一类特殊的总线,例如I2C,它是多主/从的通信总线。如图4所示,如果设备1发起通信,则SCL上的信号传输方向是从设备1到设备2,如果是设备2作主设备发起通信,则SCL的上的信号传输方向刚好相反。系统设计中要求总线上可以双向传输信号。FPGA内部由一系列的逻辑门组成,如果I2C 信号通过FPGA来连接的话,就不能正常工作。这是因为,双向传输可以等效视为由两个反并联的门来实现(如图5,用方向控制信号来确定实际的传输方向)。但是,I2C信号,没有明确的方向控制信号,也就无法正确地通过图5 所示结构的电路。

图4(I2C总线)

图5(双向信号传输)

如果直接布线或者跳线来连接I2C信号,就可以保证I2C正常工作,但是,这就和快速原型化平台可配置互连的灵活性相违背,所以提出以下方案。 I2C信号不经过FPGA来配置连接,而是通过基于MOSFET的数据开关。目前,市场上常用的点到点任意方向的MOSFET开关并不能直接使用。因为常见的结构是一路到多路或者多路到一路。利用CPLD来控制选通,多路并联就可以组成8X8的点到点的随机方向的可配置连接。如图6,是一路到八路的数据开关的内部结构。

图6(一路到八路的数据开关的内部结构)

如图6的多路开关的结构所示,对每一个数据开关,用CPLD控制选通信号S0、S1、S2,可以把A连接到B1到B8中的任意一个。把八个多路开关的每一个输出相对应地连接起来,如图7,就可以把P1到P8中任意一个连接到Q1到Q8中的任意一个,也就是实现了8X8的可配置互连,而且可以任意方向传输数据。通过编程来改变CPLD的输出,控制数据开关的选通信号,就可以实现随机方向信号的可配置互连。

图7(8X8的可配置互连模块)

4 结果和总结

本文详细阐述了快速原型化平台的设计思想。并且提出了随机方向信号的可配置互连的切实可行的解决方案,该方案是笔者的创新点。

按照快速原型化平台的设计思想,设计调试出PXA255的最小系统,以FPGA为核心可配置互连的外设扩展板和采用开关电源技术的高效的电源板。整个系统运行在ARM-Linux环境下。

参考文献:

[1] Rui Wang, Shiyuan Yang, The Design of a Rapid Prototyping Platform for ARM Based Embedded System, IEEE Transactions on Consumer Electronics, 2004, 50(2):746-751.

[2] I2C bus specification

http://www.semiconductors.plilips.com/acrobat/literature/9398/393400

[3] Intel? PXA255 Processor Developer's Manual

http://www.intel.com/design/pca/applicationsprocessors/manuals/278693.htm

[4] Samsung S3C2410x User Manual,

http://www.samsung.com/Products/Semiconductor/SystemLSI/MobileSolutions

/MobileASSP/MobileComputing/S3C2410X/um_s3c2410s_rev 12_030428.pdf

[5] Cyclone II Device Handbook

http://www.altera.com.cn/literature/lit-cyc2.jsp

[6]禇振勇、翁木云,《FPGA 设计及应用》,西安:西安电子科技出版社,2003?月。

[7]濮津、林孝康, 《内嵌ARM9E内核系统级芯片的原型验证方法》,微计算机信息(嵌入式与SOC),2005年第21卷第10-2期,162-164页。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top