基于ARM7核处理器VxWorks系统BSP设计

时间:2023-03-19 04:49:00 理工毕业论文 我要投稿
  • 相关推荐

基于ARM7核处理器VxWorks系统BSP设计

摘要:该文主要介绍了SAMSUNG公司的基于ARM7TDMI核S3C4510B微处理器,并详细介绍了利用该处理器所设计的嵌入式系统以及VxWorks操作系统下BSP(Board Supported Package)的开发。

1 介绍

S3C4510B是三星公司推出的针对嵌入式应用的16/32 位嵌入式处理器,该微控制器专为以太网通信系统的集线器和路由器而设计,具有低成本和高性能的特点, S3C4510B中内置了ARM公司设计的16/32位ARM7TDMI处理器, 可以执行32位的ARM指令,也可执行16位的THUMB指令, 并集成了多种外围部件,主要有:

● 时钟频率50MHz

● 内核/IO电压3.3V

● 8KB的Cache/SRAM

● 一个10/100Mbps 以太网控制器,MII接口

● 两个HDLC通道,每个通道可支持10Mbps

● 两个UART通道

● 两个DMA通道

● 两个32位定时/计数器

● 18个可编程I/O口

● 中断控制器,支持21个中断源,包括4个外部中断

● 支持SDRAM,EDO DRAM,SRAM,Flash等

● 具有扩展外部总线

● JTAG接口,支持软件开发 ,硬件调试

S3C4510B支持目前常用的嵌入式操作系统,如VxWorks、pSoS、ucLinux等,本文将主要介绍VxWorks操作系统下的软件开发。

ARM7TDMI是ARM家族通用的一款32位微处理器,它主要为用户提供了高性能、低价格解决方案。

ARM7TDMI具有三级流水线的32位RISC处理器,处理器结构为冯·诺依曼Load/Store。该CPU具有两种指令集,即ARM和Thumb指令集。ARM指令集是32位,它可以利用CPU最大性能;而Thumb指令集则是16位指令集。

ARM7TDMI内核方块图如图1所示。


2 系统硬件图

该系统主要以S3C4510B为核心,外围集成了以太网卡、SDRAM、FLASH、UART以及HDLC等。图2是以S3C4510B为核心的最小系统设计图。

SDRAM选用HY57V653220(8Mbyte)、两片FLASH分别为AM29F040(存放bootrom)和T28F160BT(作为文件系统用)。

3 VxWorks操作系统下BSP构建

在完成板上基本硬件的测试后,下面我就开始对vxWorks操作系统下BSP进行开发,开发前需要做一些准备工作,如准备开发工具等。

① 开发工具用的是Tornado2.2 for ARM;

② 参考资料有BSP Kit、S3C4510B DataSheet;

③ 参考Tornado2.2 for ARM下自带的wrSBCArm7 BSP;

④ 烧写程序采用编程器。

通常在开发BSP的时候,我们需要在Tornado原带BSP目录下找一个与我们所用的处理器相同或相近。与BSP相关的文件有:romInit.s、sysAlib.s、bootInit.c、bootConfig.c、sysLib.c、config.h、configNet.h、makefile以及与我们硬件相关的,如串口sysSerial.c等。由于篇幅所限,具体的文件作用在此就不说了。下面主要根据S3C4510B来阐述一下BSP开发步骤。

(1)拷贝BSP

将wrSBCArm7 BSP拷贝一份并命名为4510BSP,接下来的工作就是修改该目录下的文件,从而得到自己的BSP。

(2)修改MakeFile文件

修改4510BSP目录下的makefile文件,修改如下几行:

TARGET_DIR = 4510BSP # changed by caiyang

VENDOR = CAI # changed by caiyang

BOARD = MyArmBoard # changed by caiyang

ROM_TEXT_ADRS = 01000000 # ROM entry address

ROM_WARM_ADRS = 01000004 # ROM warm entry address

ROM_SIZE = 00080000 # number of bytes of ROM space

RAM_LOW_ADRS = 00006000 # RAM text/data address (bootrom)

RAM_HIGH_ADRS = 00486000 # RAM text/data address (bootrom)

MACH_EXTRA =

注解:ROM_TEXT_ADRS:BOOT ROM的入口地址。对大多数板来说,这就是ROM地址区的首地址,然而也有的硬件配置使用ROM起始的一部分地址区作为复位向量,因此需要根据此设置偏移量作为它的地址。这个偏移量因CPU结构而定。

ROM_WARM_ADRS:BOOT ROM热启动入口

【基于ARM7核处理器VxWorks系统BSP设计】相关文章:

基于web的异地并行设计与制造系统研究06-02

基于PLC的断路器型式试验系统设计03-10

基于电话网络的热网远程控制系统设计05-11

分析基于三维扫描的特种设备管理系统设计论文05-26

基于J2EE的远动系统Web实时曲线的研究05-11

基于胜任力的企业个体绩效管理流程设计06-03

基于CS管理的房地产企业开发设计06-04

探讨基于多种通信方式并存的配网自动化通信系统06-01

基于价值工程的重庆生态旅游资源系统性研究论文04-23

学生信息管理系统设计开题报告07-20