CN103164349A - 一种改进了spi接口子模块的智能卡模块 - Google Patents
一种改进了spi接口子模块的智能卡模块 Download PDFInfo
- Publication number
- CN103164349A CN103164349A CN2013101245181A CN201310124518A CN103164349A CN 103164349 A CN103164349 A CN 103164349A CN 2013101245181 A CN2013101245181 A CN 2013101245181A CN 201310124518 A CN201310124518 A CN 201310124518A CN 103164349 A CN103164349 A CN 103164349A
- Authority
- CN
- China
- Prior art keywords
- spi interface
- fifo buffer
- register
- smart card
- card module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Multi Processors (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明提供一种改进了SPI接口子模块的智能卡模块,所述智能卡模块包括内存、CPU和SPI接口子模块,所述SPI接口子模块与所述内存都连接在CPU的地址总线ABUS与数据总线DBUS上;所述CPU可读写所述内存的任意连续区域为FIFO缓冲区;所述SPI接口子模块内设有:用于指定接收FIFO缓冲区在智能卡模块内存的偏移地址的寄存器rFIFOoffset、用于指定接收FIFO缓冲区长度的寄存器rFIFOLen、用于指定已接收到的在FIFO缓冲区内数据的长度的寄存器rLen、用于指定发送FIFO缓冲区在智能卡内存偏移地址的寄存器sFIFOoffset、用于指定发送FIFO缓冲区的长度的寄存器sLen。
Description
技术领域
本发明涉及移动通信技术领域,具体涉及一种在智能卡模块内,SPI接口可直接使用智能卡模块内存做FIFO缓冲区的机制。
背景技术
现有技术的智能卡芯片上的SPI接口的FIFO缓冲区与CPU的内存是分开的,通过CPU的参与,将FIFO缓冲区的数据一个一个搬移到CPU的内存内,或通过DMA方式,将FIFO缓冲区的数据批量搬移到CPU的内存内。缺点是:速度慢,SPI接口的数据必须经过搬移,才能供应用程序使用。
发明内容
有鉴于此,有必要针对背景技术提到的问题,提供一种更快速实现FIFO缓冲区和CPU之间的数据搬移的方法。
本发明的目的是通过以下技术方案实现的:
一种改进了SPI接口子模块的智能卡模块,所述智能卡模块包括内存、CPU和SPI接口子模块,其特征在于:
所述SPI接口子模块与所述内存都连接在CPU的地址总线ABUS与数据总线DBUS上;
所述CPU可读写所述内存的任意连续区域为FIFO缓冲区;
所述SPI接口子模块内设有:用于指定接收FIFO缓冲区在智能卡模块内存的偏移地址的寄存器rFIFOoffset、用于指定接收FIFO缓冲区长度的寄存器rFIFOLen、用于指定已接收到的在FIFO缓冲区内数据的长度的寄存器rLen、用于指定发送FIFO缓冲区在智能卡内存偏移地址的寄存器sFIFOoffset、用于指定发送FIFO缓冲区的长度的寄存器sLen。
在SPI接口使能前,其接收用户预先配置SPI接口寄存器的操作,包括:将所述SPI接口子模块的FIFO缓冲区定位到所述内存上。
具体的,寄存器rFIFOoffset,rFIFOLen,rLen控制SPI接口子模块接收FIFO缓冲区,在SPI接口使能前,接收用户设置rFIFOoffset,将SPI接口使用的接收FIFO缓冲区定位到智能卡模块的内存上,同时设置rFIFOLen的长度,指示SPI接口使用的最大接收FIFO缓冲区的长度,然后设置rLen到0,为SPI接口的接收做好准备。
寄存器sFIFOoffset,sLen控制SPI接口发送FIFO缓冲区,在SPI接口使能前,用户设置sFIFOoffset,从而将发送FIFO缓冲区定位到智能卡模块的内存上;然后设置sLen,从而设置发送FIFO缓冲区的长度,为SPI接口的发送做好准备。
在SPI接口使能时,为避免SPI接口与CPU同时写一个内存区域,所述FIFO缓冲区仅允许CPU读,SPI接口子模块写,在SPI接口未使能时,FIFO缓冲区作为一般内存被使用。
与现有技术相比,本发明具备如下优点:
改进传统的SPI接口的缓冲区控制的方法,通过将SPI接口的FIFO缓冲区直接映射到智能卡模块的CPU的内存地址空间,使应用程序可直接使用FIFO缓冲区内的数据,不需进行数据搬移的操作;使得FIFO缓冲区和CPU之间的数据搬移速度快,高效,灵活,缓冲区大小、地址可任意调整。
附图说明
图1是本发明实施例的模块结构示意图。
具体实施方式
本实施例提供一种可快速实现FIFO缓冲区和CPU之间数据搬移的智能卡模块,其包括:内存、CPU和SPI接口;
SPI接口与内存都连接在CPU的地址总线ABUS与数据总线DBUS上;
所述FIFO缓冲区是所述CPU内的可读写所述内存的任意区域;
所述SPI接口内设有:用于指定接收FIFO缓冲区在智能卡模块内存的偏移地址的寄存器rFIFOoffset、用于指定FIFO缓冲区长度的寄存器rFIFOLen、用于指定已接收到的FIFO缓冲区的长度的寄存器rLen、用于指定发送FIFO缓冲区在智能卡内存偏移地址的sFIFOoffset、用于指定发送FIFO缓冲区的长度的寄存器sLen。
综上,寄存器rFIFOoffset,rFIFOLen,rLen控制SPI接口接收FIFO缓冲区,在SPI接口使能前,接收用户配置的接收FIFO缓冲区的开始地址、接收FIFO缓冲区的长度,使得当实际接收的数据rLen大于rFIFOLen时,SPI接口发生接收溢出。
寄存器sFIFOoffset,sLen控制SPI接口发送FIFO缓冲区,在SPI接口发送数据前,接收用户配置的发送FIFO缓冲区的开始地址、发送FIFO缓冲区的长度。
在SPI接口使能时,为避免SPI接口与CPU同时写一个内存区域,所述FIFO缓冲区仅允许CPU读,SPI接口子模块写;在SPI接口未使能时,FIFO缓冲区作为一般内存被使用。
本实施例之技术方案,通过将SPI接口的FIFO缓冲区直接映射到智能卡模块的CPU的内存地址空间,使应用程序可直接使用FIFO缓冲区内的数据,不需进行数据搬移的操作。
Claims (4)
1.一种改进了SPI接口子模块的智能卡模块,所述智能卡模块包括内存、CPU和SPI接口子模块,其特征在于:
所述SPI接口子模块与所述内存都连接在CPU的地址总线ABUS与数据总线DBUS上;
所述CPU可读写所述内存的任意连续区域为FIFO缓冲区;
所述SPI接口子模块内设有:用于指定接收FIFO缓冲区在智能卡模块内存的偏移地址的寄存器rFIFOoffset、用于指定接收FIFO缓冲区长度的寄存器rFIFOLen、用于指定已接收到的在FIFO缓冲区内数据的长度的寄存器rLen、用于指定发送FIFO缓冲区在智能卡内存偏移地址的寄存器sFIFOoffset、用于指定发送FIFO缓冲区的长度的寄存器sLen。
2.根据权利要求1所述的智能卡模块,其特征在于:寄存器rFIFOoffset、rFIFOLen、rLen控制SPI接口子模块接收FIFO缓冲区,在SPI接口使能前,接收用户设置rFIFOoffset,将SPI接口使用的接收FIFO缓冲区定位到智能卡模块的内存上,同时设置rFIFOLen的长度,指示SPI接口使用的最大接收FIFO缓冲区的长度,然后设置rLen到0,为SPI接口的接收做好准备。
3.根据权利要求1所述的智能卡模块,其特征在于:寄存器sFIFOoffset、sLen控制SPI接口发送FIFO缓冲区,在SPI接口使能前,接收用户设置sFIFOoffset,从而将发送FIFO缓冲区定位到智能卡模块的内存上;然后设置sLen,从而设置发送FIFO缓冲区的长度,为SPI接口的发送做好准备。
4.根据权利要求1至3任一所述的智能卡模块,其特征在于:在SPI接口使能时,为避免SPI接口与CPU同时写一个内存区域,所述FIFO缓冲区仅允许CPU读,SPI接口子模块写;在SPI接口未使能时,FIFO缓冲区作为一般内存被使用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310124518.1A CN103164349B (zh) | 2013-04-11 | 2013-04-11 | 一种改进了spi接口子模块的智能卡模块 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310124518.1A CN103164349B (zh) | 2013-04-11 | 2013-04-11 | 一种改进了spi接口子模块的智能卡模块 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103164349A true CN103164349A (zh) | 2013-06-19 |
CN103164349B CN103164349B (zh) | 2015-12-02 |
Family
ID=48587451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310124518.1A Active CN103164349B (zh) | 2013-04-11 | 2013-04-11 | 一种改进了spi接口子模块的智能卡模块 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103164349B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241451A (zh) * | 2008-02-20 | 2008-08-13 | 福建师范大学 | 一种嵌入式系统的串口可靠通讯控制方法 |
CN102202058A (zh) * | 2011-05-19 | 2011-09-28 | 中国兵器工业集团第二一四研究所苏州研发中心 | 多路uart总线与can总线之间协议转换控制器 |
CN202632409U (zh) * | 2012-06-13 | 2012-12-26 | 福建睿矽微电子科技有限公司 | 一种电话pos安全芯片 |
-
2013
- 2013-04-11 CN CN201310124518.1A patent/CN103164349B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241451A (zh) * | 2008-02-20 | 2008-08-13 | 福建师范大学 | 一种嵌入式系统的串口可靠通讯控制方法 |
CN102202058A (zh) * | 2011-05-19 | 2011-09-28 | 中国兵器工业集团第二一四研究所苏州研发中心 | 多路uart总线与can总线之间协议转换控制器 |
CN202632409U (zh) * | 2012-06-13 | 2012-12-26 | 福建睿矽微电子科技有限公司 | 一种电话pos安全芯片 |
Also Published As
Publication number | Publication date |
---|---|
CN103164349B (zh) | 2015-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101988260B1 (ko) | 임베디드 멀티미디어 카드, 및 이의 동작 방법 | |
EP2936325B1 (en) | Techniques to configure a solid state drive to operate in a storage mode or a memory mode | |
CN108304334B (zh) | 应用处理器和包括中断控制器的集成电路 | |
US9588931B2 (en) | Communication bridging between devices via multiple bridge elements | |
CN103530065A (zh) | 储存装置的控制方法 | |
CN103106164A (zh) | 一种高效dma控制器 | |
US9619411B2 (en) | Polling determination | |
CN104135757A (zh) | 一种降低终端功耗的方法、装置和基带芯片 | |
CN108604212B (zh) | 用于个别地配置共享公共命令存取总线的动态随机存取存储器的系统和方法 | |
CN103838694B (zh) | 一种fpga高速读取usb接口数据的方法 | |
CN203241620U (zh) | 头戴显示器 | |
CN103164349B (zh) | 一种改进了spi接口子模块的智能卡模块 | |
CN103647728B (zh) | 一种STM32单片机与Linux系统高速串口抗干扰通讯方法 | |
CN202748643U (zh) | 多功能串行通讯板卡 | |
CN201732549U (zh) | 电泳显示装置 | |
CN103136556A (zh) | 一种sd复合设备及其读写方法 | |
CN104951237A (zh) | 基于sata接口固态硬盘的高速存储装置 | |
US20170126427A1 (en) | Motor controller attaining both low latency and high throughput data communications | |
CN103593437A (zh) | 一种基于dma的数据压缩芯片结构及其实现方法 | |
CN109542811B (zh) | 一种数据通讯处理方法 | |
CN103324452A (zh) | 终端屏幕内容同步显示控制装置及方法 | |
CN102890618B (zh) | 一种带分区管理的存储扩展设备 | |
CN109039392B (zh) | 一种蓝牙设备 | |
CN106250336A (zh) | 一种fpga及进行总线切换的方法和系统 | |
CN106210122A (zh) | 用于计算机与智能手机终端进行无线数据交换设备及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |