基于UART的智能卡接口IP核设计
2012-08-27杨胜姚王鹏武宏伟刘金福
单片机与嵌入式系统应用 2012年12期
关键词:指令
杨胜姚,王鹏,武宏伟,刘金福
(北京万集科技股份有限公司,北京100085)
引 言
智能卡以其安全、灵活、通用等特点,被广泛应用在金融、交通以及其他安全终端设备上[1]。目前许多读卡器都采用单片机来实现,而在一些特殊应用中,同时需要多张甚至10张以上的智能卡。由于卡片严格的时序要求[2],仅用单片机已经很难实现多卡的并行操作。FPGA 具有硬件并行性和可编程等优点,很容易实现并行且对时序逻辑要求较高的操作,同时IP核的应用又给基于FPGA 的开发带来了极大的便利,能减少大量开发时间[3-4]。
本文首先介绍了智能卡的基本规范,着重分析字符传输协议(T=0)的操作流程。然后分析了Altera公司提供的UART IP核的结构,在此基础上给出了智能卡接口IP核的设计,并结合智能卡的操作流程,给出了传输协议的状态转换图以及实现方法。最后对IP核进行仿真分析和实际测试。
1 智能卡操作流程简介
智能卡是IC卡的一种,带有微处理器、存储单元以及芯片操作系统,不仅具有数据存储功能,同时还具有命令处理和数据安全保护等功能[5]。智能卡采用异步半双工通信方式,其传输协议分为字符传输协议(T=0)和块传输协议(T=1)[2]。本文重点讨论字符传输协议(T=0),它是目前使用较广泛的通信协议。

图1 复位操作流程图
智能卡主要有复位操作和指令操作。复位操作是将智能卡的复位引脚拉低若干周期,拉高后智能卡回复1 个数据帧,提供了协议选择、时钟转换因子、波特率调整因子等参数,可供后续操作使用。……
登录APP查看全文
