我的商务中心 | 修改资料 | 退出登录
通行证: 立即注册
首页 » 学院 » 技术研究 » 李琳:移动支付芯片的软件架构详解
支付圈公众微信平台号:paycircle | 超级QQ群:210331756
123456
123456

李琳:移动支付芯片的软件架构详解


【发布日期】:2015-06-17  【来源】:移动支付网  【作者】:李琳

      【PayCircle支付圈核心提示】按软件功能逻辑划分,包含支付芯片的手机终端内软件可分为五层,从底层向上依次是硬件层、内核驱动层、协议栈层、API层、应用层。
  在上节中,以典型PN系列芯片为例,讲解了NFC芯片与周边器件的硬件关系。下图所示是包含NFC芯片的终端内软件架构,图中描述侧重在与支付芯片相关的软件逻辑,而与支付芯片无关的诸多终端内软件和应用不在此部分详述。
 
 
  图:支付芯片及所在终端的内部软件逻辑架构
 
  按软件功能逻辑划分,包含支付芯片的手机终端内软件可分为五层,从底层向上依次是硬件层、内核驱动层、协议栈层、API层、应用层。
 
  一、硬件层:
  此层对应上节中的实际硬件器件,包括NFC Controller(即NFC芯片,也称NFC控制器芯片)、eSE(即嵌入到NFC芯片的安全芯片)、UICC(即SIM卡形态的安全芯片)。其中NFC Controller与eSE通过芯片间专有协议连接,NFC Controller与UICC通过国际标准SWP协议连接。eSE和UICC可以同时存在,也可只存在其中一个芯片。
  此层由芯片硬件提供商提供。
 
  二、内核驱动:
  此层的作用就是讲底层硬件驱动起来,与上层软件进行交互和调动。此层一般是终端操作系统的一部分,比如Android系统内的诸多硬件驱动中一部分。同时也与硬件厂家和型号紧密相关。
  此层需与NFCController、UICC两类芯片特性紧密相关,一般由终端操作系统开发者提供,对于开源的操作系统(如Android)也可由相关芯片提供商协助开发。此层一般是由C语言开发。
 
  三、协议栈层:
  此层是控制NFC芯片、SE芯片正常工作的关键,实现了以下方面工作:第一,上层应用及API调用此层NFC芯片能力、SE芯片能力的控制逻辑;第二,将传输信号按照标准协议逐层打包拆包的过程控制;第三,对上层应用访问底层芯片能力的安全访问控制。
   此层与NFC芯片的非接触NFC控制协议相关,或与SE芯片智能卡安全访问控制和指令相关,一般NFC协议栈由NFC芯片供应商合作提供,SE访问协议栈由COS(智能卡操作系统)供应商合作提供。此层一般是由C语言开发。
 
  四、API层:
  此层为上层应用提供可调用的各类API接口,是终端操作系统的一般类实现层。具体的API定义由操作系统开发联盟制定并开发,同时一些标准组织也定义API以便实现行业通用,比如GlobalPlatform标准组织定义SE访问API,3GPP标准组织定义SIM和USIM的API,NFC Forum标准组织定义终端应用的NFC API。
  对于开源性较强的操作系统如Android,开发者更希望按照行业标准的API来实现;对于封闭性更强的操作系统如iOS或windows,苹果公司和微软公司更愿意根据自己操作系统特点自己定义相关API,而不是按照行业标准。
  此层一般由操作系统供应商开发提供,一般是由部分Java语言(API部分)和部分C语言(API逻辑实现部分)开发合成。
 
  五、应用层:
  应用层是各类实际的支付应用或NFC应用,面向个人开发者、行业应用开发商,可基于底层提供的API开发各类符合自身需求的应用。此层是应用层面的开发语言,一般是Java、Htmls、Perl脚本等。
  现实中移动支付的各类应用,比如手机银行卡、公交卡、门禁卡等都是在应用层。应用实现的好坏、应用的广泛,底下几层的API的多样、协议栈的稳定、硬件和驱动的性能是基础。此外,还有外部应用环境、应用体验、开发难易等有紧密关系,也是变化最快的一层。
 
关键词: 支付芯片
 
[ 学院搜索 ]  [ ]  [ 告诉好友 ]  [ 打印本文 ]  [ 关闭窗口 ]
 
123456
TOP10PayCircle热点新闻排行榜
  • 排行
  • 文章标题
查看完整榜单>>
查看完整榜单>>
收缩