MTK平台软件架构一手机公司的MTK内部培训资料.ppt

上传人:小飞机 文档编号:6512792 上传时间:2023-11-08 格式:PPT 页数:39 大小:510.50KB
返回 下载 相关 举报
MTK平台软件架构一手机公司的MTK内部培训资料.ppt_第1页
第1页 / 共39页
MTK平台软件架构一手机公司的MTK内部培训资料.ppt_第2页
第2页 / 共39页
MTK平台软件架构一手机公司的MTK内部培训资料.ppt_第3页
第3页 / 共39页
MTK平台软件架构一手机公司的MTK内部培训资料.ppt_第4页
第4页 / 共39页
MTK平台软件架构一手机公司的MTK内部培训资料.ppt_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《MTK平台软件架构一手机公司的MTK内部培训资料.ppt》由会员分享,可在线阅读,更多相关《MTK平台软件架构一手机公司的MTK内部培训资料.ppt(39页珍藏版)》请在三一办公上搜索。

1、MTK平台软件架构,软件二部 王刚,MTK方案简介联发科技介绍MTK多媒体手机平台GSM/GPRS手机软件方案MTK软件分层介绍软件结构图表OSL1 protocol stackDevice driverL2 L3 L4 protocol stackMMIMTK 方案Task架构MMI task 消息处理过程example,一、MTK方案简介,联发科技简介,1997年成立,全球第五大集成电路设计公司(台湾第一大),年营业额为10亿美金全球最大之光盘及DVD播放机芯片组制造商研发及技术中心:台北 新竹 深圳 安徽合肥 无线通信部门于2000年成立,研发手机基带/RF芯片组及软件及发展平台,部门约

2、200工程师,联发多媒体手机平台,MT6218 GSM/GPRS Multimedia Platform,MT6205 GSM Low-End Platform,GSM/GPRS/WCDMA Multimedia Phone,3G,2.5G,MT6219 GSM/GPRS Video Platform,GSM/GPRS 手机软件方案,DSP/Layer1,Nucleus RTOS,GSM/GPRS 协议层,驱动 RF/UARTLCD/USB/IrDA/etc,人机界面,SIM Tool Kit,短信/EMS,Email Client,WAP/MMS,中文输入,Java,联发科技提供给客户,联发

3、科技已集成 客户须取得原开发商之受权,On-Time FAT,二、MTK软件分层介绍,MTK软件架构图表,三大组成单元,MS(Mobile Station)执行软件:运行于MS上操作系统 Nucleus物理层协议栈驱动程序gsm协议栈MMIMETA:The Mobile Engineering Testing Architecture Catcher,操作系统,Nucleus 实时操作系统,MTK封装了适配层,将OS封装了一些API,这些API为其他软件提供服务,如:队列,消息,timer,内存管理等,L1层协议栈(GSM 物理层),L1或者叫物理层,提供物理介质上的bit流传输,遵循 gsm

4、 技术05系列规范为上层软件提供服务,且控制逻辑信道到物理信道的映射和安排无线控制以及TDMA桢,L1层逻辑图,L1各部分功能,L1异步逻辑:处理上层软件的消息请求,发送L1处理后的结果给上层软件Surrounding Cell Engine:处理相邻小区的功率测量以及同步信息获取L1层控制:处理无线环境中的TDMA时序安排,包括定时提前以及来自基站的功率控制L1驱动:DSP 以及无线控制,设备驱动,设备驱动支持所有MCU(微处理器单元)外设的控制功能本模块处理一些用户可见操作的一些设备,如键盘,LCD等通过L4层接口,访问寄存器来控制外设,MTK平台外设,外设功能解释,SIM:Subscri

5、ber Identity ModuleUART:Universal Asynchronous Receiver/TransmitterSPI:Serial Port InterfaceLCD:Liquid Crystal DisplayGPIO:General Purpose Input/OutputGPT:General Purpose TimerRTC:Real Time ClockWDT:Watch Dog TimerPWM:Pulse Width ModulationAlerterKeypadPMIC:Power Management ICBMT:Battery Charging Ma

6、nagement taskAUX task:Auxiliary taskADC Sched.:Analog to Digital Converter SchedulerUSB task:The USB 1.1 protocol and driverIrDA task:The IrDA and driverCamera:Camera driver for integrating with 3rd party camera moduleMSDC:Memory card driver,supporting SD,MMC cards and Memory StickJPEG Decoder:Softw

7、are for controlling hardware JPEG decoder,L2/L3/L4层协议栈,本部分覆盖了许多gsm/gprs协议需求点为上层应用程序提供卓越的gsm/gprs平台软件平台非常适合手机上面的操作以及通过AT命令进行PC操作,模块介绍,RMI Remote MMI,PC端通过UART口与协议栈进行通讯FMI Feature rich MM L4 MMI通过L4与gsm/gprs协议栈进行通讯,包括以下子模块ATCI:AT Command Interpreter,解释来自PC端的命令并命令L4做相应的动作L4A:L4 adaptation Layer,MMI与L4A

8、通过消息通信L4C:L4 Control entity,处理所有的应用程序请求和响应 UEM:User equipments adaptation,驱动相关的适配层,PHB:Phone book management,电话簿相关的处理,如分类等SMU:SIM management Unit,安全性管理以及STKCSM:Circuit switching protocol stack management电路交换协议栈管理RAC:Registration access controlSMSAL:Short message service application layerTCM:Terminal

9、 context managementNVRAM Nor-volatile RAM,是MMI到Flash的一个适配层,保存一些默认设置SIM Subscriber identity module.Handle SIM behavior as ETSI 11.11 descriptionDATA 电路交换数据服务,包括以下子模块,FAX:Group 3 Facsimile TDT:Transparent circuit switching dataL2R:Layer 2 relay protocol for non-transparent circuit switching dataRLP:Ra

10、dio link protocol for non-transparent circuit switching dataCC Circuit-switched call control 电路交换呼叫控制 SS supplementary service 附加服务SMS short message service 短消息服务SM session management 会话管理MM/GMM mobility management 移动性能管理SNDCP sub-network dependent convergence protocol,LLC Logical link control 逻辑连接控

11、制RR Radio resource management,包括以下子模块RRM:Handles cell selection and PLMN selectionRMPC:Handles the procedures in Idle/Dedicated state including the surrounding cell scheme and measurement reportingLAPDM:Handles the procedure defined in GSM layer 2RLC:Radio link control protocolMAC:Medium access cont

12、rol protocolMPAL:Adaptation layer for RR and L1APPP Point to Point protocol layer,客户端点对点协议,MMI介绍,UI架构应用程序与ps的通信,MMI Framework,OLS 操作系统适配置层,对操作系统进行封状Task MMI任务,与L4 task 进行通信File system 与存储设备通信,进行文件存取,MMI GUI介绍,Theme 主题风格,主要使菜单等颜色设置,以及背景图片等UI component Category Screen 每一个界面都是一个screenFont 字体风格Editor 编辑

13、筐输入法访问LCD 驱动MMI定制工具,MMI应用程序,Phonebook Message Call History Setting User profile Fun and gameOrganizer Service Shortcut Camera.,三、MTK 方案Task架构,系统初始化,Hardware boot and setup system stack etcNucleus Plus RTOS initializationHardware InitializationTasks/Modules initialization/configurationTasks CreationT

14、CT_schedule()for scheduler to context switch,MMI task,主要管理应用程序,task从与之相关的队列中读取eventMMI Queue 协议栈/L4 将events写入到队列中,MMI task 从队列中读取eventL4 Queue MMI task 将MMI events 写入队列,L4 task 从队列中读取event,MMI task,MMI 注册消息事件在MMI队列上面等待消息协议栈将消息放入MMI消息队列Framework Layer 处理eventsFramework layer 调用应用程序注册的回调函数回调函数中应用程序用UI

15、 category 函数和风格进行screen 显示,MTK Customer创建task,typedef struct kal_char*comp_name_ptr;kal_char*comp_qname_ptr;kal_uint32 comp_priority;kal_uint16 comp_stack_size;kal_uint8 comp_ext_qsize;kal_uint8 comp_int_qsize;kal_create_func_ptr comp_create_func;kal_bool comp_internal_ram_stack;comptask_info_struct

16、;const comptask_info_struct custom_comp_config_tbl MAX_CUSTOM_TASKS=/*INDX_CUSTOM1*/CUST1,CUST1 Q,210,1024,10,0,customMMI_create,KAL_FALSE,NULL,KAL_FALSE,Tast create,kal_boolcustomMMI_create(comptask_handler_struct*handle)static const comptask_handler_struct customcms_handler_info=MMI_task,/*task en

17、try function*/NULL,/*task initialization function*/NULL,/*task configuration function*/NULL,/*task reset handler*/NULL,/*task termination handler*/;*handle=(comptask_handler_struct*),注册消息事件,SetProtocolEventHandler(mmi_msg_handle_new_msg_ind,MSG_ID_SMS_NEW_MSG_INDEX_IND);for(count=0;count maxProtocol

18、Event;count+)if(protocolEventHandlercount.eventID=eventID)isNewEvent=FALSE;break;protocolEventHandlercount.eventID=eventID;protocolEventHandlercount.entryFuncPtr=funcPtr;,发送消息,typedef struct ilm_struct module_type src_mod_id;module_type dest_mod_id;sap_type sap_id;msg_type msg_id;local_para_struct*l

19、ocal_para_ptr;peer_buff_struct*peer_buff_ptr;ilm_struct;msg_send_ext_queue(send_ilm);,MMI task 等候消息,if(!OslReadCircularQ(,处理消息,void ProtocolEventHandler(U16 eventID,void*MsgStruct,int mod_src,void*peerBuf)ExecuteCurrProtocolHandler(U16)eventID,MsgStruct,mod_src,peerBuf);for(count=0;count maxProtocol

20、Event;count+)if(protocolEventHandlercount.eventID=eventID)currFuncPtr=(PsExtPeerFuncPtr)protocolEventHandlercount.entryFuncPtr;break;if(currFuncPtr),Example:按键处理过程,MMI task注册某个按键的处理函数硬件扫描键盘,发现按键,产生中断,且修改相应的寄存器(记录哪个键被按)低级中断激活高级中断,高级中断产生eventKeypad task 等待事件,收到event,读取寄存器,解析按键,知道哪个键被按,发送message 到 UEM taskUEM task 发送按键事件到MMI taskMMI Framework 找到MMI注册的该按键的处理函数,执行相应的动作,THANKS!,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号