一种提高14443缓存利用率的设计方法和电路技术领域
本发明属于集成电路芯片的设计领域,具体涉及智能卡领域符合ISO/IEC14443-
2011协议的超高波特率解码中buffer利用率的设计方法和电路。
背景技术
伴随微电子技术的快速发展,智能卡技术的不断成熟,使其成为许多行业解决传
统问题的理想方案,在移动通信、社保医疗、金融支付、电子护照等诸多领域发挥着日益重
要的作用。智能卡芯片的广泛应用,使用户对智能卡芯片的传输速度和传输数据量提出了
更高的要求,如电子护照、指纹识别等,需要传输图像识别信息,其数据量相对较大,同时为
了使用户有良好的体验,所以对传输速度和传输数据量提出了更高要求。
为提高智能卡应用的范围,如电子护照、指纹解码等需要传输图像等大数据量的
应用中,同时为了提高用户体验,使得数据的传输速率和传输数据量都需大大提高,ISO/
IEC14443-2011标准中对于传输速度已从低波特率(106Kbit/s、212Kbit/s、424Kbit/s、
848Kbit/s)向超高波特率(1.7Mbit/s、3.39Mbit/s、6.78Mbit/s)发展,最新的ISO/
IEC14443-2016传输协议已经提出了更高的波特率(10.12Mbit/s、13.56Mbit/s、
20.34Mbit/s、27.12Mbit/s),伴随着波特率的提高,数据的传输量也在增大,ISO/
IEC14443-2011协议中传输的最大数据量已经由低波特率的256byte提高到超高波特率的
4Kbyte。低波特率的传输的最大数据量为256byte,所需要的解码数据buffer的容量为
256byte,而超高波特率的传输的最大数据量为4Kbyte,若不经过转存操作对超高波特率编
解码数据进行处理,则需要将buffer的容量提高到4Kbyte,而在数据的传输中,大部分的操
作的数据量未达到4Kbyte,只有一些特殊应用中传输的数据量达到4Kbyte,所以4Kbyte的
buffer不仅浪费资源而且加大芯片的面积,所以可以通过复用系统的非易失性存储器对传
输数据量大于256byte的数据进行转存处理,不仅可以有效的兼容超高波特率的大数据量
的应用提高控制模块的兼容性、而且可以有效的提高buffer的利用率降低芯片的面积。
发明内容
本发明的目的,在于提高ISO/IEC 14443超高波特率解码中buffer的利用率,通过
低容量的解码数据buffer去实现符合ISO/IEC 14443-2011协议的超高波特率解码中大数
据量(最大数据量为4Kbyte)的处理,从而提高解码数据buffer的利用率,降低芯片的面积。
本发明是基于ISO/IEC 14443-2011协议中的超高波特率的解码应用提出,但是不
限于ISO/IEC 14443-2011超高波特率的解码,本发明的核心思想是复用系统中的非易失性
存储器用低容量的解码数据buffer去实现大的数据量的传输应用,进而提高了解码数据
buffer的利用率,降低了芯片的面积,详细的技术方案描述如下:
本发明电路系统主要包括:一个控制模块400、一个选择模块500、一个解码数据
buffer模块100、一个用于写入/写出非易失性存储器的buffer模块200、一个非易失性存储
器模块300等。
所述的控制模块400控制符合ISO/IEC 14443-2011协议的解码中数据是否需要进
行转存,由于ISO/IEC 14443-2011协议中的低波特率和超高波特率采用的数据传输的帧的
格式不同,所以控制模块400首先通过传输的帧的结构去判断传输数据的波特率,若判断的
波特率为低波特率(848Kbit/s及其以下),则控制模块400不启动数据转存操作,直接通过
解码数据buffer模块100对解码数据进行处理,若判断的数据的传输波特率为超高波特率
(1.7Mbit/s、3.39Mbit/s、6.78Mbit/s),则需要进一步对传输的数据量进行判断,若判断的
传输的数据的数据量小于解码数据buffer模块100的容量时,则控制模块400不启动数据转
存操作,只需要通过解码数据buffer模块100进行处理即可,若判断的数据量大于解码数据
buffer模块100的容量时,则通过控制模块400启动数据转存操作,数据首先写入解码数据
buffer模块100中,待数据写满时将数据转存到非易失性存储器的buffer模块200中,待非
易失性存储器的buffer模块200写满或者数据传输完成时,将数据写入系统非易失性存储
器中。
所述的选择模块500则是通过接收来自控制模块400和系统的指令,去选择解码数
据的存取位置为解码数据buffer模块100或者是非易失性存储器模块300,同时控制着上层
系统取数据的位置,选择模块控制信息中包含系统非易失性存储器的转存数据的读写位置
等控制信息。
所述解码数据buffer模块100用于缓存解码后的数据,以ISO/IEC 14443-2011协
议中超高波特率1.7Mbit/s解码为例,这里解码数据buffer的大小设置为256byte,如为低
波特率(848Kbit/s及其以下)的解码,则通过解码数据buffer模块100直接对解码数据进行
处理,如为超高波特率的解码,若传输的数据量小于解码数据buffer模块的容量(这里为
256byte)时,则通过解码数据buffer模块100进行数据处理,若传输的数据量大于解码数据
buffer模块100的容量时,则通过将解码数据buffer模块100的数据转存到非易失性存储器
模块300中进行处理。
所述非易失性存储器模块300为系统中的非易失性存储器,而非增加的额外的非
易失性存储器,这里是复用系统原有的非易失性存储器去进一步节约buffer的容量,利用
低容量buffer去处理ISO/IEC 14443-2011协议中超高波特率的大数据量(最大数据量为
4Kbyte)的解码,提高buffer的利用率,通过控制模块400决定是否启动转存操作,非易失性
存储模块300包括用于写入/写出非易失性存储模块300的一个buffer模块200,若进行数据
转存,则首先将解码数据buffer模块100中的数据转存到非易失性存储器的buffer模块200
中,待数据传输完成或者非易失性存储器的buffer写满后将数据写入系统非易失性存储器
模块300中。
结合本发明的具体实施方式和附图可以更好更全面的了解本发明的方法,本发明
的方法和思路可以有效的用于处理其他问题,不限于ISO/IEC 14443-2011协议中超高波特
率的大数据量的解码应用。
附图说明
图1实现原理图
具体实施方式
本发明的设计思路和方法的核心是利用小容量的buffer去实现ISO/IEC 14443-
2011协议中超高波特率的大数据量(最大数据量为4Kbyte)的解码,提高buffer的利用率,
降低芯片的面积。这里以ISO/IEC 14443-2011协议中超高波特率的数据解码进行详细说
明,但本发明的思想不限于此。
如图1本发明实现原理图所示,100代表解码数据buffer模块,200代表系统非易失
性存储器写入/写出buffer模块,300代表复用的系统非易失性存储模块,400代表控制模
块,500代表选择模块。
图1中的100代表解码数据buffer模块,我们的设计就是通过复用系统非易失性存
储器模块300从而使得通过低容量的解码数据buffer模块100去实现ISO/IEC 14443-2011
协议中超高波特率的大数据量(最大数据量为4Kbyte)的解码,有效提高该解码数据buffer
模块100的利用率,有效降低了芯片的面积。对于ISO/IEC 14443-2011协议中超高波特率的
解码中,最大数据量由原来的低波特率的256byte提高到超高波特率的4Kbyte,若不进行特
殊处理,则需要的解码数据buffer模块100的容量应为4Kbyte,而数据传输过程中,每次的
解码数据的数据量达到4Kbyte的概率相对较低,除非一些特殊应用场合,所以对于4Kbyte
的解码数据buffer过于浪费,若能够降低该解码数据buffer的容量,而且不影响ISO/IEC
14443-2011协议中超高波特率的解码,则不仅可以提高该buffer的利用率有效降低了芯片
的面积,而且提高了控制模块400的兼容性。这里以ISO/IEC 14443-2011协议中超高波特率
1.7Mbit/s为例,在超高波特率1.7Mbit/s速率下,若通过256byte的解码数据buffer去传输
超高波特率的4Kbyte解码数据,数据写满256byte的解码数据buffer的时间大约为1.5ms,
而进行一次系统非易失性存储器的写入时间大约为1ms,所以可以通过256byte的解码数据
buffer去实现超高波特率1.7Mbit/s下的最大数据量为4Kbyte解码操作。该解码数据
buffer模块100的容量,取决于ISO/IEC 14443-2011协议中传输的波特率以及所复用的非
易失性存储模块的写入时间,随着非易失性存储器的写入时间的提升,这种复用系统非易
失性存储器的方式去降低解码数据buffer模块100容量的带来的优点越突出。
图1中的200代表非易失性存储器写入/写出buffer,用于缓存写入/写出非易失性
存储器中的数据,其大小为用户选择复用不同的非易失性存储器类型不同而不同,这里选
用512byte,在数据转存操作中,可以缓存两次解码数据buffer模块100中的数据,待模块
200写满或者数据传输结束时,将缓存模块200中的数据写入非易失性存储器中。
图1中的300代表复用的非易失性存储器,为系统中原有的非易失性存储模块,而
非额外增加的模块,ISO/IEC 14443-2011协议超过波特率的解码中,需提前擦除4Kbyte的
空间以备超高波特率需要进行数据的转存时候使用,同时将相关读写地址信息返给控制模
块和选择模块。
图1中的400代表控制模块,该控制模块是进行数据转存需求判断的核心,决定是
否需要启动转存操作。控制模块400首先对传输波特率进行判断,由于ISO/IEC 14443-2011
协议中的低波特率和超高波特率采用的数据传输的帧的格式不同,所以控制模块400通过
传输的帧的结构去判断传输数据的波特率,若判断的波特率为低波特率(848Kbit/s及其以
下),则控制模块400不启动解码数据转存操作,直接通过解码数据buffer模块100对解码数
据进行处理,若判断的数据的传输波特率为超高波特率(1.7Mbit/s、3.39Mbit/s、
6.78Mbit/s),控制模块进一步对传输的数据量进行判断,若判断的传输的数据的数据量小
于解码数据buffer模块100的容量时,则控制模块400不启动数据转存操作,只需要通过解
码数据buffer模块100进行处理即可,若判断的数据量大于解码数据buffer模块100的容量
时,则通过控制模块400启动数据转存操作,通过复用系统非易失性存储模块300进行转存
处理。
图1中的500代表选择模块,该模块接收来自控制模块和系统的指令,决定数据的
存取位置,若控制模块启动了转存操作,则选择模块选择数据的存取地址为非易失性存储
的特定位置,若控制器未启动转存操作,则选择模块选择数据的存取位置为解码数据
buffer模块100。
本发明的重点是通过复用系统的非易失性存储模块用低容量的解码数据buffer
去实现ISO/IEC 14443-2011协议中超高波特率的解码操作,降低了超高波特率所需buffer
的容量,提高了buffer的利用率,降低芯片的面积,同时使得控制模块的兼容性提高,本发
明和电路虽通过ISO/IEC 14443-2011协议中超高波特率的解码提出,但本发明的思想不限
于此。