1 引言
嵌入式系统的高速发展极大地推动了ARM嵌入式微处理器的发展。以前的嵌入式系统大多采用CISC架构,该体系由于指令集庞大,指令长度不固定,指令执行周期有长有短,使指令译码和流水线的实现在硬件上非常复杂,给芯片的设计带来了很大的麻烦。跟CISC相比,RISC则很好地解决了这些弱点。 RISC 以其硬件结构单纯,成本低,省电良好的优良特性受到了嵌入式系统的青睐,尤其是 32 位 RISC 处理器,而ARM正是32位RISC微处理器。本文主要从芯片级硬件设计开发进行介绍,采用一种比较流行的,在手持式以及便携式设备应用广泛的ARM芯片 — Samsung 公司推出的S3C4510B,以及基于S3C4510B芯片的ARM开发平台。
2 嵌入式处理器S3C4510B
S3C2410B 芯片基于ARM7TDMI内核,三级流水线的16/32位RISC处理器,S3C4510B 提供了一套比较完整的通用系统的外围设备,并且使得整个系统消耗最小。正是因为它具有很多常用的功能模块,所以也免去了添加配置附加设备的麻烦。芯片上集成的功能主要包括以下几个方面:
·3.3V ARM 内核和3.3V外部I/O,具有50MHz时钟频率的微处理器;
·8KB的Cache/SRAM;
·LCD 控制器;
·一个10/100Mbps 以太网控制器,MII接口;
·2个HDLC通道,每个通道可支持10Mbps;
·2个UART通道,2个DMA通道;2个32位定时/计数器;;
·1通道IIC接口,18个可编程I/O口;
·中断控制器,支持21个中断源,包括4个外部中断;
·支持SDRAM,EDO DRAM,SRAM,Flash等;
·具有扩展外部总线,JTAG接口,支持软件开发,硬件调试。
3 ARM开发平台S3C4510B开发板
Samsung 公司推出的这款 ARM芯片S3C4510B内部结构复杂、功能强大,如前文所述片上已经集成了很多功能,因此我们能很方便地在片外添加外部设备来实现这些功能。在此将介绍一个基于S3C4510B 芯片的 ARM 开发平台,通过这个平台我们可以对 S3C4510B 进行系统级的硬件、软件设计,并且能够很方便地在该平台上进行相关的功能扩展,进行所需的产品设计。该平台的具体结构如图1 所示。
图 1 开发板结构框图
S3C4510B开发板以S3C4510B为主芯片CPU,内存由SDRAM(16Mbyte),FLASH等构成。以下主要针对此硬件开发平台,进行结构、存储器扩展、主要接口及其外设方面设计的介绍。
3.1 晶振电路与复位电路
晶振电路用于向CPU及其它电路提供工作时钟。为了获得稳定的运行环境,将S3C4510B的CLKSEL置为高电平,即外部时钟输入直接作为系统时钟。根据S3C4510B的最高工作频率选择50MHz的有源晶振,不同常用的无源晶振,有源晶振的接法略有不同。有源晶振的1脚接3.3V电源,2脚悬空,3脚接地,4脚为晶振的输出,晶振的输出端接一个小电阻(22欧姆),对时钟信号去尖峰。
复位电路可由简单的RC电路构成,也可使用其它的相对复杂,但功能更完善的电路。图2是一种较简单的RC复位电路。
图2 系统的复位电路
3.2 Flash存储器接口电路
本平台使用SST39VF160 Flash存储器,SST39VF160是16M位的Flash存储器。工作电压为2.7V~3.6V,采用48脚TSOP封装或48脚FBGA封装,16位数据宽度,可以以8位(字节模式)或16位(字模式)数据宽度的方式工作。SST39VF160仅需3V电压即可完成在系统的编程与擦除操作,通过对其内部的命令寄存器写入标准的命令序列,可对Flash进行编程、整片擦除、按扇区擦除以及其它操作。[page]
下面使用SST39VF160来构建Flash存储系统。实际应用电路图如图3所示。
图3 16位Flash存储系统电路图
Flash存储器在系统中通常用于存放程序代码,系统上电或复位后从此获取指令并开始执行,因此,应将存有程序代码的Flash存储器配置到 ROM/SRAM/Flash Bank0,即将S3C4510B的nRCS<0>(Pin75)接至SST39VF160的CE#端。注意,此时应将S3C4510B的 B0SIZE[1:0]置为“10”,选择ROM/SRAM/Flash Bank0为16位工作方式。
3.3 SDRAM接口电路
本平台使用HY57V281620构建16位的SDRAM存储系统,足够满足嵌入式操作系统及各种相对复杂的算法的运行要求,实际应用电路图如图4 所示。SDRAM的控制信号较多,其连接电路也要相对复杂,可将HY57V281620配置到DRAM/SDRAM Bank0~DRAM/SDRAM Bank3的任一位置,一般配置到DRAM/SDRAM Bank0,即将S3C4510B的nSDCS<0>(Pin89)接至HY57V281620的nCS端。HY57V281620的 BA1、BA0接S3C4510B的地址总线ADDR<13>、ADDR<12>来选择SDRAM中的4个Bank。
图 4 16位SDRAM存储器系统的电路图
3.4 10M/100Mbps以太网接口电路
S3C4510B 内部实际上已包含了以太网MAC 控制,但并未提供物理层接口,因此,需外接一片物理层芯片以提供以太网的接入通道。平台使用RTL8201BL作为以太网的物理层接口。
由于S3C4510B 片内已有带MII 接口的MAC 控制器,而RTL8201BL 也提供了MII 接口,各种信号的定义也很明确,因此RTL8201BL与S3C4510B 地连接比较简单。图5 为RTL8201BL的实际应用电路图。信号的发送和接受端TPRX+、TPRX-、TPTX+、TPTX-应通过网络隔离变压器和RJ45接口接入传输媒体,HR901108A是一款集成网络隔离变压器的RJ45接口,避免隔离变压器不匹配问题,简化设计。注意网络部分有数模混合信号,数字地和模拟地之间用磁珠连接。
图5 RTL8201BL的实际应用电路图
3.5 串行接口电路
几乎所有的微控制器、PC 都提供串行接口,使用电子工业协会(EIA)推荐的RS-232-C 标准,这是一种很常用的串行数据传输总线标准。RS-232-C 标准采用的接口是9 芯或25 芯的D 型插头,常用的9 芯D 型插头。要完成最基本的串行通信功能,实际上只需要RXD、TXD 和GND 即可,但由于RS-232-C 标准所定义的高、低电平信号与S3C4510B 系统的LVTTL 电路所定义的高、低电平信号完全不同,LVTTL 的标准逻辑“1”对应2V~3.3V 电平,标准逻辑“0”对应0V~0.4V 电平,而RS-232-C 标准采用负逻辑方式,标准逻辑“1”对应-5V~-15V 电平,标准逻辑“0”对应+5V~+15V 电平,显然,两者间要进行通信必须经过信号电平的转换,目前常使用的电平转换电路为MAX232,系统选用电平位3.3V的MAX232。
3.6 时钟电路
实时时钟在系统中主要是为系统提供时钟基准,在许多应用中有这方面的需求,由于S3C4510B片内没有RTC电路,需要外扩,本平台采用了HT1381时钟芯片。
HT1381是一款低耗的实时时钟芯片,并用若干寄存器存储对应信息,一个32.768KHz的振校准时钟。本平台分配S3C4510B的3根 GP10分别作为HT1381的复位RST、串行时钟SCLK、I/O口。为了获得更精确的时间,可在晶振两端各加一个电容,电容大小与晶振精确度相关,一般晶振误差正负10ppm的用5pF电容补偿,晶振误差10~20ppm的用8pF电容。
3.7 系统总线扩展
除了S3C4510B32根数据线、22根地址线、各类控制线,平台提供了很多外围扩展口,例如18个通用I/O总线接口、JTAG接口、UART接口、IIC 总线接口等,限于篇幅不再赘述。通过这些扩展口,我们可以很方便地在开发板上进行扩展电路实验以及根据一些特定的需要进行系统级的设计。
4 结束语
基于ARM7的芯片 S3C4510B 是适用在手持设备、网络通信和工业控制及其他很多产品中的一款高性能、小体积的芯片。嵌入式系统的高速发展势必将不断促进 ARM 技术的向前发展,设计功能强大的ARM 内核及体积小,性能高,功耗小的ARM芯片和基于 ARM 芯片的嵌入式系统将会是未来嵌入式系统发展的主要方向。
本文的创新点是,利用S3C4510B芯片建立的ARM 开发平台,该平台功能强大,适合用来作为开发高性能手持式以及便携式智能设备或终端。充分体现了 ARM 芯片的强大功能,操作方式灵活,可扩展性强。
参 考 文 献
1 李驱光.ARM 应用系统开发祥解[M].北京:清华大学天大学出版社,2004
2 马忠梅.ARM 嵌入式处理器与嵌入式系统[J].电子世界, 2003,(3):41~42
3 江俊辉.基于ARM的嵌入式系统硬件设计[J].微计算机信息,2005,(7):120~122
4 S3C4510B Data Sheet[EB/OL].http://www.samsung.com.cn.
5 周彩宝,刘应学.ARM 体系以及 AMBA 总线分析.计算机工程,2003,(5):147~149
上一篇:基于AT91RM9200的图像采集系统设计
下一篇:基于ARM的RFID阅读器设计
推荐阅读最新更新时间:2024-03-16 12:59