来源:中国一卡通网 作者:杨庆森、周晓方 发布时间:2006-01-10 17:00:07 字体:[大 中 小]
关键字:双界面卡 技术构架 iso/iec 14443-a cpu卡
摘 要:如今,非接触式IC卡在人们的日常生活中得到了越来越多的应用,非接触式卡的功能也变得越来越强大,出现了非接触式IC卡和接触式IC卡结合的双界面IC卡。在非接触卡集成入CPU,通过片上操作系统(COS)软件来提供一个简单、强大的应用软件开发接口和更强的安全机制是当前非接触卡的发展趋势。本文研究了一个双界面的CPU卡,提出了一个新的双界面卡架构,使得设计开发能在原有的基础上快速完成。
1.引言
1.1. 非接触卡与接触卡的介绍
如今,接触式IC卡(下简称接触卡)在人们的日常生活中得到了普遍的应用。在接触卡的普及过程中,逐渐发现了许多的弊端:卡在读写器上经常拔插造成的磨损导致接触不良,从而引起数据传输错误,并且卡与读写器之间的磨损也大大缩短了卡和读写器的使用寿命;另外,接触卡的通讯速率较低,再加上插拔卡的动作延误,造成每一笔交易需要较长时间的等待。
为了解决这些问题,非接触式IC卡(下简称非接触卡)应运而生。非接触卡的优点是显而易见的:它通过无线电波与读写设备进行通讯,无裸露触点,与读写器间也无机械接触,可靠性和使用寿命高;它的通讯速率高于接触卡,在一定距离范围内可以从任意方向与读写设备通讯,从而使操作更为方便、快捷。因此,非接触卡在很多场合已经取代了接触卡,在卡市场所占的份额越来越大。非接触卡也存在缺陷:当卡片弯曲过度时,卡片容易因线圈焊点断裂而失效;在一些场合的通讯容易受环境干扰而失败;加密方法较简单,安全性低于接触卡等。
总的来说,接触卡和非接触卡因使用环境不同各有利弊,因此在实际应用中都得到了广泛的应用。相对来说,在安全要求较高,操作速度要求不高的应用如银行卡中通常使用接触卡;而在安全要求较低,操作速度要求较高的应用如公共交通中,通常使用非接触卡。
非接触式IC卡与接触式IC卡的优缺点比较如表1所示。
1.2. 非接触卡应用发展
随着技术和应用的发展,非接触式卡的应用越来越广泛,功能也越来越强大。应用中出现了非接触式IC卡和接触式IC卡结合的双接口IC卡,双接口IC卡既具有非接触卡的耐用性和方便性,又不失安全性。
越来越多的应用除了对非接触卡的接口提出了要求,还对传统非接触卡的应用开发提出了进一步的要求。原来非接触卡的指令比较简单,功能比较少。要完成一个复杂的操作如建立一个文件需要对非接触卡的数据结构十分了解而且要编写许多条指令。特别的,非接触卡中存放的许多资料是比较敏感,的如金额之类,在对这些资料进行读写时,如果发生意外使操作中断,如何正确恢复资料是一个很头痛的问题,这需要很高软件技巧。所有这些大大阻碍了非接触卡的应用开发。因此在非接触卡集成入CPU,通过COS软件来提供一个简单、强大的应用软件开发接口是一个很好的解决方法。
2.研究目标与内容
本文的研究目标是设计一个带串行接触接口和非接触式接口的CPU卡芯片。我们称这个设计为双界面卡。
本文研究的思路是怎样合理的设计芯片架构,使CPU、操作系统软件和外部界面接口无关,尽量利用原有设计资源完成芯片设计。
2.1 芯片架构
芯片主要由CPU系统、界面接口和存储器三个主要部分组成。界面接口负责和外界进行命令和资料的传输,本芯片提供了ISO/IEC 14443-A的非接触接口和基于串行通迅的接触接口。
CPU系统是兼容8051指令的高速微处理器、外设、RAM、ROM和EEPROM组成。
芯片的架构如图1所示。
这个架构的基本思想是使智能卡的CPU系统与界面之间接口相对独立。使界面接口形成应用的底层,操作系统软件的应用处理不必关心接口的具体实现。这意味着从应用软件开发的角度看到的资料是与应用正在使用何种具体接口是不相关的。接口可以随着应用的发展而改变,可以是接触和非接触的组合,甚至可以是蓝牙、WLAN、IrD、并行接口等其他种类的接口组合。
这种接口和CPU系统在遵循统一访问规范的基础上可以任意组合的特点,提供了对用户、芯片设计者和系统软件设计者很大的好处:在引入新应用或开发新系统时可任意选用已存在的成熟的基本模块,以加快开发的进度,降低开发的成本和风险。
2.2 界面与CPU系统的接口
为了达到界面接口与软件的独立性,CPU系统与各种界面接口之间需要建立一个简单的标准接口。在本文设计中使用增加8051系列处理器的特殊功能寄存器(SFR)的方法作为访问CPU不同界面接口的标准。
非接触界面的接收解调和发射调制电路是在原非接触卡的设计中已有模块,对原来的接收、发射寄存器组进行SFR编址以及增加一些控制寄存器和逻辑电路就可以容易的在非接触接口中设计出支持特殊功能寄存器(SFR)的接口。
接触界面的接口就是一个支持特殊功能寄存器(SFR)的接口的串行(UART)模块,与标准的UART不同的是,这个模块的发送和接收是一个开漏的双向数据线,这意味着接触的串行接口只能以半双工的方法进行通讯。
在完成与外界的数据通讯后,用中断请求信号来唤醒处于休眠模式的CPU。在本设计中,非接触接口使用8051的外部中断INT1,而接触接口使用内部的串行中断。
2.3 电源产生
在双界面卡中一个困难的问题是如何提供CPU系统一个可靠的系统时钟和电源。因为两个界面都会产生时钟和电源,所以系统需要能正确相互切换,而不产生冲突。
推荐文章
论坛热帖