CoolRunner-II器件的设计范例及其实现

时间:2008-09-18
  设计Smart Card读卡器使用Advanced Card System ACOS1,这是一种基于微处理器的卡。卡中的信息包括姓名、性别、状态、年龄和银行收支,性别、状态和年龄被编码在同一个记录中。
 
  TS设置为正向模式,格式字符和接口字符预先确定。由于应用了T=0协议,因此在复位应答阶段没有TCK字符。共有19个字节,包括历史字符。为了简化设计,我们对接收到的字节进行计数,以确定有效数据。没有检验位,也没有处理其他协议的分支操作。在这种情况下,只有ACOS1卡可以用于此读卡器。
  (1)Smart Card Control∶Smart Card控制逻辑
  如图1和如图2所示分别为Smart Card控制逻辑框图和状态机,当卡被插入到卡适配器时状态机就会被使能,按照ISO 7816-3标准激活SD卡。CoolRunner-II设备设置Reset引脚为高,状态机进入等待状态Wait State。等待卡发出的低电平信号,即TS起始位。

Smart Card控制逻辑框图


  图1 Smart Card控制逻辑框图

Smart Card控制逻辑状态


  图2 Smart Card控制逻辑状态

  波特率计数器Baud Rate Counter用来控制位宽,无论是接收位还是发送位,计数值都是372并以同步数据传输。接收数据时,当计数器值为186时采样接收位,这恰好是接收位的中央。
  计数器Bit Counter用来统计发送/接收字符的位数。
  计数器Byte Counter用来统计发送/接收的字节数,字节数还被用来确定读数据周期或发送命令周期的结束。               
 此ACOS1卡接收到19个复位应答字符后,状态机进入发送命令状态Send Command。Smart Card控制器这时会按照T=0协议,准备好发送命令和接收响应。解码器会检测字符计数器以确定什么时候发送命令、发送什么命令,以及多少个字符将会被接收到。发送到卡的第1个命令由5个字节组成,即80、A4、00、00和02,当卡回应一个字节A4后,控制器发送两个字节,即F0和00,Smart Card日向应状态字节为91和00。从T=0命令表中可以看出,A4

  用来选择文件地址,F0和00为选定的文件地址。接下来的命令是选择数据记录并取数据,所有的数据和命令长度都己经定义并且是固定的。在此设计中,io_rw控制移位寄存器从Card io读数据或从data encoder移位数据到card_io,所有操作都是基于字节计数器的。在本设计中,姓名记录位于第38~69个字节。性别、状态和年龄记录是字节92、93和94;存款余额记录是字节126和127。Data_ready信号用来滤除无用数据,此信号被SRAM接口用来控制从SmartCard到SRAM写数据。
  (2)Main Control Logic(主控逻辑)
  主控状态机用来控制各功能模块的工作顺序,并控制从SRAM读数据,然后将其解码后发给LCD控制逻辑以供显示。主控逻辑包含一个延迟计数器,用其拆分发送到LCD上显示的数据,因此显示在LCD上的每条信`患之间将会有1~2 s的间隔。主控逻辑框图如图3所示,流程如图4所示。状态机上电进入IDLE状态,等待Smart Card控制器读数据,并将其存储于SRAM中;当smartcard done变高,状态机进入standby状态,等待lcd_ready。卡名与LCD显示采用的是相同的ASCII格式,因此不需要解码卡名字符,所有从SRAM读取的字符将会被送到LCD显示。下一个记录为性别,解码后如果是“1”,则代表男性; “2”代表女性。之后是状态记录,解码后如果是“1”,则代表单身; “2”代表已婚。年龄信息以二进制存储在Smart Card中,发送到LCD之前必须转换为ASCII码,二进制码到ASCII码转换模块独立于顶层模块。

主控逻辑框图

  图3 主控逻辑框图

主控逻辑流程

  图4 主控逻辑流程

  (3)SRAM Interface:SRAM接口
  SRAM接口由主控逻辑控制,sram_w为SRAM接口写使能信号,在读smart card过程中保持为高。当主控状态机进入standby状态写数据到LCD屏时,地址计数器将被复位,然后数据按照存储顺序被读出。
  (4)LCD Control: LCD控制
  LCD控制逻辑用来初始化LCD屏,并将解码数据送到LCD显示。此模块使用简化的时序控制LCD显示,每个字符的写周期被设置为30 000个时钟周期,这个值远远高于LCD控制器所要求的数百毫秒。

  (5)设计范例和实现
  源代码及测试序可从Xi1inx 网站上。本设计在XC2C256中实现,资源使用率如表所示。

  如表  资源使用率

资源使用率


  


  
上一篇:集成电路引脚识别
下一篇:HyperLynx工具设计简介

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料