税控收款机的可靠性研究

时间:2022-10-15 01:03:51

税控收款机的可靠性研究

摘要:税控收款机关系到国家的税收,因此其可靠性是非常重要的。文章介绍了税控收款机的功能特点、硬件组成及软件结构,从硬件和软件两方面分析了设计过程中为提高系统的可靠性应注意的若干关键问题,指出了现有产品中存在的不足并提出了更加可行的解决方案。

关键词:税控收款机;嵌入式系统;硬件;软件;可靠性设计

中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)19-30178-03

The Reliability Research of Fiscal Cash Register

MENG Tao1, ZHANG Wei-wen2

(1.School of Mathematical Sciences, Liaocheng University, Liaocheng 252059, China; 2.Department of Mathematics,Huainan Normal University, Huainan 232001, China)

Abstract: The fiscal cash register plays an important role in the revenue of the nation; therefore, its reliability is of great importance. The article introduces the functions, the hardware and the software of the fiscal cash register; what's more, the article analyzes some key problems in the process of the designing to improve the reliability of the system, points out the shortcomings consisting in the present products, and put forward the more practicable ways.

Key words: Fiscal cash register; Embedded system; Hardware; Software; Design of reliability

1 引言

税控收款机是中国在实行金税工程第三期中推行的带税控功能的收款设备。其功能是在原有电子收款机上加上税控功能,方便税务局监管,主要面向现金流动比较大的第三产业,如商场、饭店、宾馆、超市等场所。税收是事关国计民生的一件大事,对于税控设备而言,不仅要保证数据的正确生成,还要确保数据的可靠存储及安全传递。税控收款机的可靠性关系到国家的税收安全,该设备一般都是连续不断的工作,而且要面临各种复杂的应用环境,因此如何设计生产可靠性高的产品就显得十分重要。本文结合税控收款机的实际开发过程,从硬件和软件两方面分析了设计过程中应该注意的若干关键问题,并提出了解决方案。

2 税控收款机硬件的可靠性设计

目前,税控收款机一般采用嵌入式系统结构,其硬件平台一般包括:处理器、显示模块、打印模块、电源模块、时钟模块、税控存储器模块、IC卡接口以及通信接口等。

硬件的可靠性对系统整体而言是至关重要的。在设计生产时应尽量采用集成度高的器件,并选用较为稳定、成熟的工艺与电路方案,同时对电路的关键点采用过压、过流等保护措施。下面对设计过程中的应考虑的部分关键问题进行阐述:

2.1 散热设计

对于电子产品,工作温度越高,器件越容易失效,出故障的几率也就越大。虽然嵌入式系统功耗低、发热量小,但由于夏天普遍气温较高,而且税控收款机一般多是不间断工作,所以仍要考虑产品的合理散热:

(1)选用低功耗的优质器件;

(2)合理布局,尽量分散发热量大的元件;

(3)适当开设散热孔,以利于热量的散发。本系统在电源模块旁设计了几排散热孔,进行通风散热。

税控收款机中发热的主要部件是电源模块,为更好的解决散热问题,本系统采用了打印机电源与整机主工作电源分开的设计。

2.2 掉电保护

系统的突然掉电可导致重要数据的丢失,所以在设计时应考虑掉电保护功能。实现掉电保护的做法一般有两种:第一种是软件保护,即在突然掉电的瞬间,CPU进入掉电保护程序,在极短的时间内,将收款机的工作状态与关键数据进行保存。当供电恢复后,税控收款机恢复原来的数据和掉电时的工作状态,然后继续工作;第二种是硬件保护:即外加一台不间断电源(UPS),当交流供电电源出现问题或突然停电,不间断电源将自动接续供电。

上述两种方法都有不足之处:对于软件保护方式,大多数情况下可以完整的存储数据,但若遇到反复频繁的掉电,税控收款机就可能因无法正确处理数据而出现错误;硬件保护方式虽然能保证数据的完整,但是在交流电源突然掉电时,由于UPS的介入,CPU不知道掉电而不能做出任何反应,需要人工结束工作并断开电源。

本系统采用了更加智能的设计:将供电部分分成三个模块:开关电源模块、电源监测模块以及后备电池模块。开关电源模块以及后备电池模块通过监测模块与主板相耦合,监测模块负责监控交流供电以及后备电池的能量存储状况:如果监测模块测得的电池电压小于某一预设值,则自动对后备电池组进行充电;同时监测模块还对交流供电状况进行实时检测。如果交流供电出现故障,则自动将电源切换到电池,并经过直流/交流转换给系统供电,同时给处理器发送中断信号,结束当前工作并对涉及的数据进行保存,然后关断后备电池。这种设计使机器即使在遇到频繁、重复掉电的情况下仍可保证数据安全,具有高效、无人为操作的优点。

2.3数据存储器的安全保护

数据存储器记录了大量的发票数据,是稽查的重要凭证,因此在设计上应特别考虑安全保护:一方面要防止用户私自更换元件和篡改数据,另一方面还要考虑当机器受到不可抗拒力损坏时,仍能将数据导出。

本系统采用了以下方法解决安全保护问题:

(1)采用分离式的税控数据存储器专用印刷电路板

将数据存储模块与主板分离。电路板上设有可拔插存储器接口,整个电路板通过固定针固定在主板上。这种设计一方面兼顾了存储介质的更换需求,保证介质不能被随意更换,起到一定的铅封作用,另一方面当设备损坏时可以方便的将数据写到新的税控设备中。

(2)使用特殊的铅封结构

为防止用户私自打开机壳,现在的税控收款机都有铅封。传统的铅封结构是在机器上下壳各开一个孔,将金属杯嵌入孔内,然后将上下壳锁起来,最后在金属杯内打入铅粒,把螺钉头部封装起来。这种方法有个缺点:将铅粒打入金属杯时,受力一端为塑料机壳,其承受能力有限,可能导致铅粒脱落或用力太大机壳报废的问题。本系统为了克服上述缺点采用了不同的设计:在底板和顶板结合的边缘上有设计一对对应的孔,由一端固定有螺帽的金属杆穿过该孔,并在金属杆的另一端套上金属杯并旋紧螺丝,最后用工具把金属杆螺帽端顶住,将铅粒压入金属杯以封装螺钉头。这种设计可避免外力在打入铅粒时对机壳的直接作用,防止损坏机器。

2.4 时钟设计

时钟的准确性关系到系统的正常运转。本系统的主板上备有高能锂电池时钟芯片,即使发生掉电情况,时钟也不会受到影响。

由于税控收款机易受到外界干扰,对于干扰比较大的环境,可以选择在靠近开关电源模块的电源线上安装滤波磁环。通过滤波磁环滤波以及CPU内置可编程处理器CPLD对外部元件译码,可有效隔离外界的干扰,提高整机的抗干扰能力。

3 税控收款机软件的可靠性设计

税控收款机的软件一般采用分层的模块化设计,一般分为三层:业务逻辑层、接口层和驱动层。业务逻辑层主要完成与税控收款机相关的业务;接口层用于衔接业务层和驱动层,提供一些与硬件无关的接口函数;硬件层则包含了相关的驱动程序。可靠的软件对税控收款机的稳定同样也是至关重要的。

3.1 税控数据的可靠存储

为实现税控数据的可靠存储,在软件方面本系统增加了对数据存储器FLASH扇区的冗错保护及ECC校验,方法如下:

(1)创建FLASH扇区状态映射表

在初始化FLASH时,首先检查每个扇区状态,若扇区无效则在扇区状态映射表的对应位置填写备份扇区号。另外,在每次对FLASH扇区进行写操作时,先对数据进行备份,若写操作出现异常,则在FLASH扇区状态映射表中填写备份扇区号,并在备份扇区中复制改写的数据。

(2)FLASH数据扇区的映射和存储

在读扇区时,先根据状态映射表查找扇区的映射扇区号,然后读映射扇区的内容;在写扇区时,先根据状态映射表查找扇区的映射扇区号,根据映射扇区号读出内容并进行备份,然后改写备份数据的内容。随后擦除该映射扇区内容。若该映射扇区失效,则更新FLASH扇区状态映射表,映射到其它备份扇区,然后将数据写入到该备份扇区中。

(3)FLASH扇区的冗错

在写FLASH数据扇区前,先进行ECC校验,然后将数据和校验码分别写入数据区和ECC校验区;在读扇区时,将数据和校验码一并读出,若有错误则进行纠错。

3.2 用户权限分级管理

税控收款机集商务、税控、管理等功能于一体。为提高安全性,应对用户权限进行分级管理。在设计中用户进入相应模式都要输入合法的密码。本设计中密码采用了8位数字与字母组合,密码加密后存储在FLASH中。设计中有三种具有不同操作权限的角色:系统管理员、收款员和税务稽查员。系统管理员能执行除稽查任务外的所有功能:添加、删除收款员、更改密码、开票、报税、查询交易记录、查询商品信息等;收款员主要完成与交易有关的一些基本操作:录入发票、开票、修改本用户密码等。税务稽查员主要完成稽查任务:稽查交易记录、开票和报税等情况以防止偷漏税。

3.3 掉电保护

为保证突然掉电时数据不丢失、无差错,不仅需要硬件方面的设计,同样也需要软件的支持。在软件方面,本系统采用了以下方法:

在录入发票、开票、报税、完税等关键步骤前检测电源是否有异常:如有掉电情况则停止当前工作,若电源正常则设置标志开始正常操作,工作完成后,清除标志;如果在工作中突然掉电,系统会设置一个未完标志,然后保存退出。当下次开机后会检测到该标志,软件将自动调用恢复机制并继续完成剩余工作。

对于打印机在打印发票过程中掉电,系统将进行掉电续打操作:在打印前系统置“打印未完“标志,若在打印过程中突然掉电,掉电保护装置会给处理器发送中断信号,中断处理程序将记录当前的打印位置和状态,如当前行字符点阵、打印针出针次数、当前打印针点阵信息和打印缓冲区字符信息等,然后将相关数据保存到外部的存储器中。恢复供电以后,收款机上电检测,如果检测到”打印未完”标志,程序将读取保存在外部存储器中的打印参数和状态,根据参数值控制打印机完成剩余的操作,然后将“打印未完”标志清除。

4 结束语

税控收款机是保证国家税收的关键环节,因此其可靠性是非常重要的。文章结合税控机的实际开发从硬件和软件两方面对部分需要考虑的问题进行了阐述,希望能为广大开发人员提供帮助。提高系统整体可靠性是个复杂的工作,需要考虑的问题还有很多,比如如何解决系统软件更新和下载时的安全性和可靠性问题;当机器出现故障时,怎样才能维持使用并进行快速维修以及如何实现机器的安全联网等。本设计已应用于sk-3830改进型税控收款机,系统已通过测试,性能稳定可靠。

参考文献:

[1] 杜春雷.ARM体系结构与编程[M].北京:北京清华大学出版社,2002.

[2] GB 18204 1-2003税控收款机 第一部分:机器规范[S].

[3] 李敏,宋曰聪,陈燕平,等.金融税控收款机信息安全策略[J].微计算机信息.2007,23(6-3):43-45.

[4] 涂杰,王新,盘细平.基于安全系统的税控系统设计与实现[J].计算机应用与软件2006,23(1):112-115.

[5] 刘娟.税控收款机的信息安全[J].电脑与信息技术,2006,14(1):29-32,45.

注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文

上一篇:基于数据仓库的图书流通分析系统的研究与应用 下一篇:《电工电子》教学改革浅谈