CN101477640A - 基于现场可编程门阵列的识别卡接口控制器与实现方法 - Google Patents
基于现场可编程门阵列的识别卡接口控制器与实现方法 Download PDFInfo
- Publication number
- CN101477640A CN101477640A CNA2009100763007A CN200910076300A CN101477640A CN 101477640 A CN101477640 A CN 101477640A CN A2009100763007 A CNA2009100763007 A CN A2009100763007A CN 200910076300 A CN200910076300 A CN 200910076300A CN 101477640 A CN101477640 A CN 101477640A
- Authority
- CN
- China
- Prior art keywords
- module
- identification card
- interface controller
- interface
- card
- 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
- Information Transfer Systems (AREA)
Abstract
一种基于现场可编程门阵列的识别卡接口控制器与实现方法,该控制器的主设备与Avalon开关互联模块;Aval on开关互联模块与识别卡接口控制器通过接口A连接识别卡接口控制器通过接口B与识别卡连接,并对识别卡的状态进行操作;识别卡接口控制器包括:中断请求模块、时钟发生模块、控制/状态模块、采样时钟模块、接收/发送模块。该实现方法包括:接入接口模块;接口模块激活;识别卡和接口模块之间进行信息交换;应答状态判断。该控制器通过灵活的时钟配置将总线时钟调节为GB/T16649.3中要求的对识别卡操作所需的时钟频率,可随时对识别卡进行热复位并响应复位应答,整个接口控制器实用性强,有效支持嵌入式系统的拓展和开发。
Description
技术领域
本发明涉及识别卡的操作接口,尤其是涉及一种基于现场可编程门阵列(FPGA)且搭建于可编程片上系统(SOPC)环境中的带触点的集成电路卡的操作接口控制器。
背景技术
随着技术的进步发展、国家的强盛,公民个人信息的电子化改革越来越深入,信息化的程度加深,智能卡的应用也是越来越普遍,现金和各种证件正逐渐被各种卡片所取代。公民的第二代身份证、银行卡等公民的个人资料都在电子化,而这些的电子化的个人终端介质往往是智能卡。智能卡有着体积小、可加密性、可存储性、成本低等优点。并且智能卡的存储容量比磁条卡大得多,卡里存储的数据的读取由相关的硬件和软件处理,可以防止未授权的存取和篡改,因此安全性很高。
对于以往的系统开发,若要扩展系统外设,则需要选择相应的接口芯片,将该芯片与系统的其余部分整合,再编写驱动程序和应用软件。若外设发生变化,则原接口芯片即会变得毫无用途了,而基于现场可编程门阵列的可编程片上系统设计则可最大程度解决这样的窘境,其设计的灵活性适应了需求的多变性,而Avalon总线接口规范的出现方便了系统外设的扩展,从而也缩短了整个嵌入式系统的开发周期,降低了开发成本。
因此,亟待开发出一种基于现场可编程门阵列的识别卡接口控制器与实现方法。
发明内容
本发明的目的在于,通过提供一种基于现场可编程门阵列的识别卡接口控制器与实现方法,以解决以往外设接口成本高、通用性差、灵活性低、实用性不强的不足的问题。本发明提供了一种基于现场可编程门阵列且搭建于可编程片上系统环境中的识别卡的操作接口控制器。遵照GB/T16649.3,有效完成对带触点的集成电路卡的激活、复位、读写、停活等操作。接口控制器符合Avalon总线规范,方便地在可编程片上系统环境中扩展外设。
本发明解决技术问题的技术方案是:
一种基于现场可编程门阵列的识别卡接口控制器,该控制器的主设备与Avalon开关互联模块;其特征在于:所述的Avalon开关互联模块与识别卡接口控制器通过接口A连接,所述的识别卡接口控制器通过接口B与识别卡连接,并对识别卡的状态进行操作;
所述的识别卡接口控制器包括:用于在出现发送、接收超时错误和发送器、接收器准备好时向总线提出中断请求的中断请求模块;根据分频寄存器中的分频值,以总线时钟作为时钟源输出对识别卡操作时符合GB/T16649.3的时钟发生模块,用于控制该接口控制器的操作,用于指示该接口控制器的状态的控制/状态模块;实现与卡的位同步的采样时钟模块;用于接收、发送数据帧,并进行差错校验的接收/发送模块。
前述的分频寄存器波特率除数用来保存分频倍数,输出适合识别卡操作的时钟信号;基本时间单元寄存器用以决定位周期,以实现与卡的位同步;发送逻辑由一个发送保持寄存器口和发送移位寄存器组成;移位寄存器和发送保持寄存器在数据发送时提供双重缓冲;接收逻辑由一个接收保持寄存器口和接收移位寄存器组成。
前述的对识别卡的状态进行操作包括:激活、复位、读写、停活。
一种基于现场可编程门阵列的识别卡接口控制器的实现方法,包括以下步骤:
接入接口模块;
接口模块激活;
复位,识别卡和接口模块之间进行信息交换;
应答状态判断;
是,则进入信息交换步骤;否,则回到复位应答的状态;
接口模块停活;
结束。
前述的接口模块连接识别卡。
前述的应答状态的信号应用识别卡的信息传输一致,以固定时间频率etu进行一位数据读;识别卡的一帧为十位,包括:开始位、字节位、奇偶校验位。
本发明一种基于现场可编程门阵列的识别卡接口控制器及实现方法,与现有技术相比,具有以下明显的优势和有益效果:
由上述本发明的技术方案可以看出,本发明通过定义宏提供了方便的软件操作接口,作为系统外设接口,供主设备方便地访问相应的内部寄存器,最终实现信息交换中的帧分析和控制决策。该控制器为可编程片上系统环境中的可扩展外设提供了符合Avalon总线规范的方便的操作接口,从而实现对带触点的集成电路卡的各种操作,充分利用现场可编程门阵列的优势,开发方式灵活,周期短,成本低,实用性强。
附图说明
图1为本发明实例中的识别卡接口控制器的连接示意图;
图2为本发明实例中的识别卡接口控制器的功能结构示意图;
图3为本发明实例中的识别卡接口控制器的顶层模块图;
图4为本发明实例中识别卡卡座示意图;
图5为本发明实例中的识别卡接口控制器的寄存器组织结构示意图;
图6为本发明实例中识别卡操作流程图。
具体实施方式
本发明提供了一种基于现场可编程门阵列的识别卡接口控制器与实现方法。下面通过具体实施例对本发明的设计实现方式作进一步说明:
如图1所示,本发明实例中的识别卡接口控制器通过接口A与Avalon开关互联结构(Avalon Switch Fabric)相连,Avalon开关互联结构是一个片上互联逻辑,它将Avalon外设连接在一起,形成较大的系统。识别卡接口控制器作为Avalon从外设与系统相连,其接口作为Avalon从端口与总线相连,从端口即用于响应传输请求的一组信号。本发明实例中的识别卡接口控制器通过接口B与带触点的集成电路卡连接,其对识别卡激活、复位、读写、停活等操作符合GB/T16649.3。
如图2所示,本发明实例中的识别卡接口控制器按功能模块可划分为中断请求模块,用于在出现发送、接收超时错误和发送器、接收器准备好时向总线提出中断请求;时钟发生模块,根据分频寄存器中的分频值,以总线时钟作为时钟源输出对识别卡操作时符合GB/T16649.3的时钟;控制/状态模块,用于控制该接口控制器的操作,用于指示该接口控制器的状态;采样时钟模块,根据约定的“基本时间单元”产生采样时钟,实现与卡的位同步;接收/发送模块,用于接收、发送数据帧,并进行差错校验。
如图3所示,本发明实例中顶层模块的管脚信号为:
clk:输入;Avalon从端口同步时钟(Avalon从端口信号)。
reset_n:输入;复位信号(Avalon从端口信号)。
read:输入;读请求信号(Avalon从端口信号)。
ICI_select:输入;Avalon从端口片选信号(Avalon从端口信号)。
write:输入;写请求信号(Avalon从端口信号)。
mem_addr:输入;从Avalon Switch Fabric到Avalon从接口的地址线(Avalon从端口信号)。
data_from_cpu:输入;来自Avalon Switch Fabric的数据线(Avalon从端口信号)。
data_to_cpu:输出;到Avalon Switch Fabric的数据线(Avalon从端口信号)。
irq:输出;中断请求(Avalon从端口信号)。
Sclk:输出;识别卡时钟信号。
rst:输出;识别卡复位信号。
Ioport:双向;识别卡的串行数据输入/输出信号。
如图4所示为本发明实例中所使用的识别卡卡座。识别卡卡座是对应识别卡来设计的,正好对应识别卡的触点位置。各触点说明如表1所示:
表1 识别卡触电排列
触点号 | 分配 | 触点号 | 分配 |
C1 | 电源电压(VCC) | C5 | 地(GND) |
C2 | 复位信号(RST) | C6 | 可变电源电压(编程电压)(vPP) |
C3 | 时钟信号(CLK) | C7 | 输入、输出(I/O) |
C4 | 保留将来使用 | C8 | 保留将来使用 |
本发明实例中寄存器组织如图5所示,波特率除数用来保存分频倍数,以输出适合识别卡操作的时钟信号;基本时间单元(etu)寄存器用以决定位周期,以实现与卡的位同步;发送逻辑由一个发送保持寄存器口和发送移位寄存器组成,主设备写一个数据到发送保持寄存器后,该数据被复制到移位寄存器,当下一个操作开始时,被发送出去,移位寄存器和发送保持寄存器在数据发送时提供双重缓冲,当前一个数据被移出移位寄存器时,一个新值被写到发送保持寄存器,当没有移位操作时,发送逻辑自动发送寄存器的内容到移位寄存器;接收逻辑由一个接收保持寄存器口和接收移位寄存器组成,移位寄存器收到相应位数的数据后,主外设从接收保持寄存器中读取接收的数据,移位寄存器和接收保持寄存器提供双缓冲,当下一个新数据一如移位寄存器时,接收保持寄存器口保持上一次接收的值。当串行移位操作完成时,接收逻辑自动传送移位寄存器内容到接收保持寄存器。状态寄存器由指示接口控制器的状态位组成,其寄存器映像如表2所示:
SND:由于该接口控制器与识别卡只有一个I/O口,故数据发送和接收使用统一的端口IOport,则状态寄存器SND位标识当前IO端口是否处于发送状态;
ROE:接收超时错误。当接收保持寄存器满时,如果新的数据被接收,则ROE位被置为1,此时,新数据改写旧数据。
RRDY:接收器准备好。当接收保持寄存器满时,RRDY位置为1;
TOE:发送超时错误。当发送保持寄存器仍为满时,如果新的数据被写到发送保持寄存器,TOE位被置为1。此时,新数据被忽略。
TRDY:发送器准备好。当发送保持寄存器为空时,TRDY位置为1。
TMT:发送移位寄存器空。当发送操作正在进行时,TMT为0;当移位寄存器为空时,TMT被设置为1。
控制寄存器包含控制接口控制器操作的数据位。其寄存器映像如表2所示:
iRST:识别卡复位信号。复位指定数目的时钟周期被归位。
iROE:为1则允许接收超时错误中断。
iRRDY:为1则允许接收器准备好中断。
iTOE:为1则允许发送超时中断。
iTRDY:为1则允许发送器准备好中断。
表2 状态寄存器、控制寄存器映像
寄存器名 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
状态寄存器 | TMT | TRDY | TOE | RRDY | ROE | SND | ||
控制寄存器 | iTRDY | iTOE | iRRDY | iROE | iRST |
当卡的触点与接口设备的触点在机械上被连接时,卡电路才被激活。
接口设备和卡之间应该通过以下规定的连续操作来进行:
接口设备激活电路。
卡和接口设备之间的信息交换总是起始于卡对冷复位的应答。
接口设备停活电路。
正如上所述,对卡的操作是由严格的规定的,总的来说就:激活,复位,信息交换,停活这四个步骤。这些步骤要与外部硬件设备紧密结合,操作流程如图6所示。
根据国标,将识别卡一端定义为ICC,将识别卡控制核一端定义为IFD。识别卡的操作最主要的就是读写功能。在对卡激活后进行复位操作,紧跟着复位后将会有从ICC来的复位应答信号。在这个过程中IFD的I/O会一直处于监听状态,也就是读状态、接收模式,把从ICC传输过来的应答信号记录下来。而这个记录复位应答信号的过程与以后实际应用识别卡的信息传输是一样的,即都是以固定时间频率,以etu来进行1位数据读。识别卡的一帧是10位分别是:开始位、字节位、奇偶校验位(偶校验)。如表3:
表3 帧构成描述
m1 | m2 | m3 | m4 | m5 | m6 | m7 | m8 | m9 | m10 |
开始位 | 字节1 | 字节2 | 字节3 | 字节4 | 字节5 | 字节6 | 字节7 | 字节8 | 校验位 |
·第一个时间段m1应该处于状态A;这个时间段是“起始位”。
·m2~m9八个时间段运送1个字节。
·最后一个时间段m10应确保字节奇偶校验;它运送“奇偶校验位”。
在每个字符中,如果在时间段mn结束时状态改变,则从字符前沿到mn后沿的延迟应该是:tn=(n±0.2)
在每个字符中,如果在时间段mn结束时状态改变,则从字符前沿到mn后沿的延迟应该是:tn=(n±0.2)
发送方的时间起点是字符的起始沿。当搜索一个字符时,接收方定期的对I/O进行取样,取样时间应少于0.2个etu。接收方的的时间起点是对Z状态的最后一个观察点和A状态的第一个观察点中间。
接收方应该在0.7etu(接收方时间)之前确认m1,然后应在(1.5±0.2)etu接收到m2,在(2.5±0.2)etu受到m3,……在(8.5±0.2)etu受到m9,在(9.5±0.2)收到m10。字符奇偶校验在字符帧运送结束之前运行。
两个连续的字符的起始沿之间的延迟应至少是12etu,即,某个字符的持续时间(10±0.2)etu加上保护时间。在保护时间,接口设备和卡都应该保持接收状态。
在复位应答期间,卡发出的两个连续的字符的起始沿之间的延迟不应该超过9600etu。这个最大值被称为“初始等待时间”。
读操作除了能够读取复位信号和信息数据之外还可以读取差错检验信号。当发现奇偶校验错误时,IFD将会使输出模块将I/O拉低,使ICC端知道此次发送失败,重发上一帧。要注意的是此时IFD是发送模式,ICC是接收模式。所以当接收时是输入模块与输出模块互相配合使用的。
往识别卡写的功能也必须遵循从识别卡读的时序,即,每发送一位的时间是1etu(接收方应该在0.7etu(接收方时间)之前确认m1,然后应在(1.5±0.2)etu接收到m2,在(2.5±0.2)etu受到m3,……在(8.5±0.2)etu受到m9,在(9.5±0.2)收到m10。字符奇偶校验在字符帧运送结束之前运行)。这里IFD为发送发,ICC为接收方。
除了遵循发送规则之外,还需要进行错误重发。当传送时发生了传输错误被ICC应用奇偶校验位检测到错误时,它会将I/O拉低,这时ICC为发送模式,IFD为接收模式。当IFD发现了被拉低的I/O时,它就会重新发送刚才的的那一帧。所以当发送时也是输入模块与输出模块也是互相配合使用的。
当没有操作的时候,ICC和IFD都为接收状态,直到状态改变或者停活。
最后应说明的是:以上实施例仅说明本发明而并非限制本发明所描述的技术方案;因此,尽管本说明书参照上述的各个实施例对本发明已进行了详细的说明,但是,本领域的普通技术人员应当理解,仍然可以对本发明进行修改或等同替换;而一切不脱离发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围当中。
Claims (5)
1、一种基于现场可编程门阵列的识别卡接口控制器,该控制器的主设备与Avalon开关互联模块;其特征在于:所述的Avalon开关互联模块与识别卡接口控制器通过接口A连接,所述的识别卡接口控制器通过接口B与识别卡连接,并对识别卡的状态进行操作;
所述的识别卡接口控制器包括:用于在出现发送、接收超时错误和发送器、接收器准备好时向总线提出中断请求的中断请求模块;根据分频寄存器中的分频值,以总线时钟作为时钟源输出对识别卡操作时的时钟发生模块,用于控制该接口控制器的操作,用于指示该接口控制器的状态的控制/状态模块;实现与卡的位同步的采样时钟模块;用于接收、发送数据帧,并进行差错校验的接收/发送模块。
2、根据权利要求1所述的基于现场可编程门阵列的识别卡接口控制器,其特征在于:所述的分频寄存器波特率除数用来保存分频倍数,输出适合识别卡操作的时钟信号;基本时间单元寄存器用以决定位周期,以实现与卡的位同步;发送逻辑由一个发送保持寄存器口和发送移位寄存器组成;移位寄存器和发送保持寄存器在数据发送时提供双重缓冲;接收逻辑由一个接收保持寄存器口和接收移位寄存器组成。
3、根据权利要求1所述的基于现场可编程门阵列的识别卡接口控制器,其特征在于:所述的对识别卡的状态进行操作包括:激活、复位、读写、停活。
4、一种基于现场可编程门阵列的识别卡接口控制器的实现方法,其特征在于包括以下步骤:
接入接口模块;
接口模块激活;
复位,识别卡和接口模块之间进行信息交换;
应答状态判断;
是,则进入信息交换步骤;否,则回到复位应答的状态;
接口模块停活;
结束。
5、根据权利要求4所述的基于现场可编程门阵列的识别卡接口控制器的实现方法,其特征在于:所述的接口模块连接识别卡。
6、根据权利要求4所述的基于现场可编程门阵列的识别卡接口控制器的实现方法,其特征在于:所述的应答状态的信号应用识别卡的信息传输一致,以固定时间频率etu进行一位数据读;识别卡的一帧为十位,包括:开始位、字节位、奇偶校验位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100763007A CN101477640B (zh) | 2009-01-09 | 2009-01-09 | 基于现场可编程门阵列的识别卡接口控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100763007A CN101477640B (zh) | 2009-01-09 | 2009-01-09 | 基于现场可编程门阵列的识别卡接口控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101477640A true CN101477640A (zh) | 2009-07-08 |
CN101477640B CN101477640B (zh) | 2011-01-05 |
Family
ID=40838349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100763007A Expired - Fee Related CN101477640B (zh) | 2009-01-09 | 2009-01-09 | 基于现场可编程门阵列的识别卡接口控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101477640B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106126458A (zh) * | 2016-03-30 | 2016-11-16 | 厦门九华通信设备厂 | 一种cpu总线转智能卡总线的通信电路模块 |
CN108259134A (zh) * | 2018-01-10 | 2018-07-06 | 上海灵动微电子股份有限公司 | 一种基于afp协议的数据传输方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101246542A (zh) * | 2008-03-11 | 2008-08-20 | 江苏科技大学 | 一种基于fpga的嵌入式身份识别装置及方法 |
-
2009
- 2009-01-09 CN CN2009100763007A patent/CN101477640B/zh not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106126458A (zh) * | 2016-03-30 | 2016-11-16 | 厦门九华通信设备厂 | 一种cpu总线转智能卡总线的通信电路模块 |
CN108259134A (zh) * | 2018-01-10 | 2018-07-06 | 上海灵动微电子股份有限公司 | 一种基于afp协议的数据传输方法 |
CN108259134B (zh) * | 2018-01-10 | 2021-04-13 | 上海灵动微电子股份有限公司 | 一种基于afp协议的数据传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101477640B (zh) | 2011-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9052843B2 (en) | Card and host device | |
EP2297641B1 (en) | Efficient in-band reliability with separate cyclic redundancy code frames | |
EP1646951B1 (en) | Intermediate station packet forwarding check | |
CN108268414B (zh) | 基于spi模式的sd卡驱动器及其控制方法 | |
US20100011164A1 (en) | Memory systems and methods of initiallizing the same | |
TWI512477B (zh) | 組配記憶體組件之資料寬度的方法、記憶體組件及相關之非暫時性電腦可讀取儲存媒體 | |
CN104881259A (zh) | 一种数据处理方法和装置以及存储设备 | |
CN102073611A (zh) | 一种i2c总线控制系统及方法 | |
US20030167368A1 (en) | Transmission control circuit, reception control circuit, communications control circuit, and communications control unit | |
CN116450552A (zh) | 基于i2c总线异步批量读写寄存器的方法及系统 | |
KR102140297B1 (ko) | 불휘발성 메모리 장치 및 그것을 포함하는 데이터 저장 장치 | |
CN101477640B (zh) | 基于现场可编程门阵列的识别卡接口控制器 | |
KR20170061431A (ko) | 스토리지 컨트롤러의 동작 방법 및 상기 스토리지 컨트롤러를 포함하는 데이터 저장 장치의 동작 방법 | |
CN104657297A (zh) | 计算设备扩展系统及扩展方法 | |
CN104571942A (zh) | 数据存储系统和非信号分析方法 | |
CN110209605A (zh) | Pcie总线网卡的寄存器读写方法和计算设备 | |
CN105573947B (zh) | 一种基于apb总线的sd/mmc卡控制方法 | |
CN113742282A (zh) | 一种基于fpga的sata ip核及数据存储方法 | |
CN108139993B (zh) | 内存装置、内存控制器、数据缓存装置及计算机系统 | |
CN104598404A (zh) | 计算设备扩展方法和装置、以及可扩展的计算系统 | |
CN201465160U (zh) | 基于现场可编程门阵列的识别卡接口控制器 | |
CN108920299B (zh) | 储存媒体 | |
WO2005086007A1 (en) | Data copy device | |
CN102142093A (zh) | 一种存储卡操作方法及装置 | |
CN110134638A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110105 Termination date: 20130109 |
|
CF01 | Termination of patent right due to non-payment of annual fee |