网站大量收购闲置独家精品文档,联系QQ:2885784924

嵌入式系统设计课程大作业.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

2012年上学期嵌入式系统设计课程大作业

1、叙述下列相关名词的含义

ARM、xscale、PXA255、RISC、体系结构

答:1)ARM:英国的一家公司;时下流行的一种体系结构。

2)XScale:ARM架构v5TE指令集的CPU。

3)PXA255:XScale的内核版本。

4)RISC:ReducedInstructionSetComputing,即精简指令集,一种CPU的设计概念;与之相对的是CISC,即复杂指令集

5)体系结构:嵌入式系统硬件与软件的衔接;它确定嵌入式系统设计的部件、部件功能、部件间借口的设计,并集中于嵌入式系统的核心部分——处理器的运算与内存的存取。

2、画出嵌入式硬件系统组成的模块结构图

3、叙述基于linux的嵌入式平台的搭建过程

答:Linux嵌入式平台的搭建符合嵌入式平台搭建的一般过程,但是具体到Linux嵌入式平台,又有些许不同,其搭建过程如下:

1)处理器以及硬件开发平台的选择

以处理器为主,结合考虑硬件平台的情况。处理器考虑的问题包括应用类型及I/O接口、主频和功耗、对不同类型存储器的支持、封装等;硬件平台的选择和设计包括内存和外围存储器、输入输出接口以及设备等几项主要内容。

2)操作系统的选择

由于已经选取了Linux操作系统,因此此处主要是内核版本的选取以及对内核功能的裁剪。

3)开发环境的选取

即开发工具的选取,主要是指开发软件的选取,比如常用的minicom。

4)开发实施

首先,Bootloader的烧制。目的是对硬件系统基本功能的支持,比如串口通信。其次,内核文件的制作。接下来,内核文件的拷贝。此时,可以通过串口或者网口实施传输,能够大幅度提高传输速度。最后,在主机使用开发软件,完成对硬件系统的开发工作。包括硬件驱动程序、上层的应用程序、系统的集成与调试等。

4、如下为xscale处理器的内核框图:

简述内核框图中每个模块的名称及指标。

答:1)InstructionCache:指令Cache;大小32KB,32路,支持线性锁定

2)Micro-Processor:微处理器;七级流水

3)DataCache:数据Cache;最大支持32KB,32路

4)DataRam:数据Ram;最大支持28KB

5)Mini-DataCache:迷你数据Cache;大小2KB,2路

6)BranchTargetBuffer:分支目标缓存;128入口

7)IMMU/DMMU:指令/数据存储管理单元;32路,全相关,支持锁定

8)FillBuffer:填充缓存;4~8入口

9)PerformanceMonitoring:功能显示器

10)Debug:硬件中断断点记录

11)PowerManagementControl:电源管理控制

12)MAC:乘加单元;40位累加/累乘,16位单指令多数据流操作,16*32位操作单周期支持

量),其中register_chrdev()是内核提供的函数,作用是完成注册新的字符设备*/

printf(%s%sinitialized.\n,KEYPAD_NAME,KEYPAD_VERSION);

led_off_on();

return0;

}

staticvoid_exitxhyper250_keypad_exit(void)/*向操作系统卸载设备函数*/

{

unregister_chrdev(LEDnKEY_MAJOR,lednkey);

led_off_on();

}

module_init(xhyper250_keypad_init);/*显式声明初始化设备函数*/

module_exit(xhyper250_keypad_exit);/*显式声明卸载设备函数*/

/*通过上述两个声明内核知道驱动程序的进入点*/

测试文件的源代码如下:

#includestdio.h

#includestdlib.h

#includeunistd.h

#includesys/types.h

#includesys/stat.h

#includefcntl.h

#defineLED_SHOW10

intfd;

staticchar*dev_name=/dev/keypad;

intmain(intargc,char**argv)

{

intdata=0,pre_data;

fd=open(dev_name,O_RDWR);

if(!(fd=0))

{

printf(%sfileopenfailed\n,dev_name);

exit(-1);

}

printf(\nkeypadApp:pres

文档评论(0)

songyj + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档