智能卡操作系统仿真器系统设计和实现.docVIP

  • 4
  • 0
  • 约4.18千字
  • 约 12页
  • 2018-10-09 发布于福建
  • 举报

智能卡操作系统仿真器系统设计和实现.doc

智能卡操作系统仿真器系统设计和实现

智能卡操作系统仿真器系统设计和实现   一、前言      如今智能卡芯片和卡片成品的开发与生产已经形成了一个世界性的新兴技术产业。我国于1993年,以电子货币应用为重点的各类卡基应用系统工程即金卡工程正式启动。它涉及众多部门,是一项跨部门、跨地区、跨行业、跨世纪的庞大社会系统工程,也是中国信息化、产业化发展的纲要和指南。开发智能卡,其关键在于开发智能卡上所嵌入的集成电路芯片以及安置在芯片内的应用程序暨片内操作系统(Chip-Operating-System ,COS)。由于集成电路的流片费用昂贵、流片加工周期长,所以无论从成本控制上、还是市场需要上,保证一次设计成功至为关键。为了实现这一目的,设计开发一套“智能卡操作系统(COS)仿真器系统”显得尤为必要和重要。      1、 仿真器系统主要实现的功能      CIU92开发系统(DS92)是针对CIDC自行设计的CIU92系列CPU、结合IC卡的有关特点而设计的软硬件集成开发环境(基于Windows环境)。DS92主要有两大功能:汇编语言编译和硬件仿真。硬件仿真提供了不同层次的硬件仿真手段,便于用户根据应用开发程度选择相应的仿真模式。DS92是针对CPU卡的开发系统,既有一般CPU开发系统的共性(包括基本的汇编语言编译器、单步运行、断点设置、设置/显示CPU SFR内容、设置/显示CPU RAM内容、设置/显示CPU ROM内容、设置/显示CPU EEPROM内容),也有一些IC卡特有的仿真方法,例如内部复位(internal mrst)模式、外部复位(external mrst)模式、实(release)模式、IC卡与读卡器(reader)的相互作用关系遵循ISO7816-3协议。   主要功能如下:   (1)提供COS程序(可以是汇编语言、C语言等,下同)代码编制、编辑环境;   (2)提供将COS程序代码编译为智能卡中央处理单元(CPU)可以执行的机器指令码的编译环境;   (3)实现将编译后的机器指令码下载到仿真器,并由仿真器执行的功能;   (4)可以设置COS程序执行断点,支持单步运行、多步运行、子程序调用、跳转、连续运行等调试(Debug)功能;   (5)可以实时查看卡内CPU的内部RAM、寄存器单元;   (6)可以实时查看COS程序执行后的数据结果;   (7)仿真运行需要的其它辅助性功能。         图1 DS92 COS仿真器系统框图      2、 仿真器系统总体方案      DS92从逻辑上可以分为软件和硬件两大部分,其组成示意图如图1。其中硬件仿真板与PC软件(IDE)之间通讯采用USB v1.1通讯协议;硬件仿真板与读卡器reader之间的通讯遵守ISO7816-3。   硬件仿真板从硬件角度仿真CIU92 CPU卡,包括CPU 硬件、CPU RAM区域、CPU ROM区域、CPU EEPROM区域,此外,为硬件仿真提供必要的硬件支持。整个硬件仿真板由一个监控CPU(MCU)进行管理协调,MCU 还负责完成与PC之间的通讯。   用户通过IDE软件提供的命令使用开发系统,用户可以在开发系统集成环境中,创建、编辑、删除工程;输入、编辑、编译汇编语言程序;生成用于硬件仿真、生成ROM 掩膜码点的二进制目标文件。   IDE软件可以与硬件开发板配合使用,也可以单独使用。IDE软件单独使用时,只能进行工程管理、编辑和编译汇编语言程序、目标代码生产等工作。只有与硬件仿真板配合使用才能真正进行硬件仿真。   DS92 COS仿真系统需要着重解决下面的问题:   (1) Debug能力:硬件程序执行跟踪、程序下载   (2) 仿真器不能占用用户资源,即IC卡CPU仿真核功能与真正卡片完全相同   (3) 仿真系统的效率:程序下载效率、debug效率,主要是通讯效率、debug信息反馈效率   (4) 断点个数不限      三、仿真器系统设计      1、 硬件仿真器板的设计   仿真器板的设计主要包括三个部分:IC卡芯片CPU设计、运行监控CPU设计和电路板设计。下面给出简单介绍。      图2 IDE系统主界面      (1)IC卡CPU设计   IC卡CPU的功能是模拟卡内CPU并执行COS程序中的指令代码,同时支持debug,即允许监控CPU读取或改写其内的RAM、寄存器单元、进行单步运行等。   在DS92中采用现场可编程器件(FPGA)实现IC卡CPU的逻辑功能。   (2)监控CPU设计   监控CPU的功能主要是:   (a)通讯功能:通过通信电缆接收IDE发出的命令、控制IC卡CPU完成有关动作、返回命令结果给IDE;监控CPU在

文档评论(0)

1亿VIP精品文档

相关文档