亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種IC卡大型制卡設(shè)備中的主從協(xié)同控制系統(tǒng)及方法與流程

文檔序號(hào):12864133閱讀:273來(lái)源:國(guó)知局
一種IC卡大型制卡設(shè)備中的主從協(xié)同控制系統(tǒng)及方法與流程

本發(fā)明涉及ic卡制卡技術(shù)領(lǐng)域,特別涉及一種ic卡大型制卡設(shè)備中的主從協(xié)同控制系統(tǒng)及方法。



背景技術(shù):

ic卡按其組織結(jié)構(gòu)可分為邏輯加密卡和cpu卡。cpu卡也稱智能卡,其卡內(nèi)的集成電路中帶有微處理器、存儲(chǔ)器和芯片操作系統(tǒng)cos(cardoperationsystem),裝有cos的cpu卡相當(dāng)于一臺(tái)微型計(jì)算機(jī),不僅具有數(shù)據(jù)存儲(chǔ)功能,同時(shí)具有命令處理和數(shù)據(jù)安全保護(hù)等功能。以下所述ic卡均指cpu卡。ic卡由于其固有的信息安全、便于攜帶、比較完善的標(biāo)準(zhǔn)化等優(yōu)點(diǎn),在身份認(rèn)證、電信、銀行、公共交通、停車場(chǎng)管理等領(lǐng)域得到越來(lái)越多的應(yīng)用,而這種越來(lái)越多不僅僅是ic卡的需求量越來(lái)越多,而且對(duì)單張的ic卡而言,為了實(shí)現(xiàn)更多的卡片應(yīng)用需求,cos的功能也越來(lái)越強(qiáng),從而cos的尺寸越來(lái)越大,cos的發(fā)展變化類似于pc機(jī)上的操作系統(tǒng)的升級(jí)換代,比如window7的尺寸要比xp大5-10倍。

制卡即ic卡初始化,制卡時(shí)每張卡需要寫入cos數(shù)據(jù)和個(gè)性化數(shù)據(jù),每張卡的cos數(shù)據(jù)都是相同的,個(gè)性化數(shù)據(jù)是不同的。但cos數(shù)據(jù)量遠(yuǎn)遠(yuǎn)大于個(gè)性化數(shù)據(jù)量,所以寫cos的速度決定了制卡的速度,大尺寸的cos使得一張ic卡的制卡(即卡初始化,將cos下載到ic卡)時(shí)間更長(zhǎng),嚴(yán)重制約著大型制卡機(jī)的每小時(shí)的出卡量。

為了提高制卡機(jī)每小時(shí)的出卡量,制卡機(jī)目前配置了ic卡讀寫器機(jī)群,通常數(shù)量為32、64、128的讀寫器機(jī)群,而機(jī)群中的讀寫器則是無(wú)操作系統(tǒng)的單片機(jī)系統(tǒng),讀寫器與主機(jī)之間采用串口連接。雖然主機(jī)可以同時(shí)控制多個(gè)讀寫器進(jìn)行cos寫入,但是串口的數(shù)據(jù)傳輸速度慢、并行處理能力不夠高,另外串口通信雙方連線固定,只能采用單主機(jī)無(wú)法采用多主機(jī)方式,使得當(dāng)前制卡系統(tǒng)難以滿足當(dāng)今市場(chǎng)的需求。

提供一種可高速寫cos到ic卡的大型制卡系統(tǒng)及方法具有重要的現(xiàn)實(shí)意義。



技術(shù)實(shí)現(xiàn)要素:

由于cos數(shù)據(jù)包遠(yuǎn)遠(yuǎn)大于個(gè)性化數(shù)據(jù)包,因此制卡的速度主要由寫cos的速度決定。本發(fā)明的主要目的在于克服現(xiàn)有技術(shù)的缺點(diǎn)與不足,提供一種ic卡大型制卡設(shè)備中的主從協(xié)同控制系統(tǒng),針對(duì)寫cos數(shù)據(jù),該系統(tǒng)使用并發(fā)讀寫,針對(duì)個(gè)性化數(shù)據(jù)則還是點(diǎn)對(duì)點(diǎn),能夠解決目前制卡過(guò)程中存在的寫cos數(shù)據(jù)包速度慢、并行處理能力弱等問(wèn)題,從而大大提高整體的制卡效益。

本發(fā)明的另一目的在于提供一種基于上述系統(tǒng)的ic卡大型制卡設(shè)備中的主從協(xié)同控制方法,其具有制卡效率高、可擴(kuò)展性強(qiáng)、數(shù)據(jù)保密性高,可移植性好、易于操作的優(yōu)點(diǎn)。

本發(fā)明的目的通過(guò)以下的技術(shù)方案實(shí)現(xiàn):一種ic卡大型制卡設(shè)備中的主從協(xié)同控制系統(tǒng),包括:主機(jī)、交換機(jī)、數(shù)據(jù)庫(kù)服務(wù)器、fifo并發(fā)單元以及寫卡單元;主機(jī)直連交換機(jī);交換機(jī)通過(guò)網(wǎng)口分別外接多個(gè)fifo并發(fā)單元、多個(gè)寫卡單元以及數(shù)據(jù)庫(kù)服務(wù)器;一個(gè)fifo并發(fā)單元連接交換機(jī)的一個(gè)網(wǎng)口,同時(shí)一個(gè)fifo并發(fā)單元的另一端又接n個(gè)寫卡單元,這n個(gè)寫卡單元同時(shí)與交換機(jī)連接;主機(jī)作為系統(tǒng)的主控制端,fifo并發(fā)單元和寫卡單元作為從機(jī),與數(shù)據(jù)庫(kù)服務(wù)器一起通過(guò)交換機(jī)組成一個(gè)大型級(jí)聯(lián)集群系統(tǒng);主機(jī)利用廣播技術(shù)和單播技術(shù)通過(guò)交換機(jī)實(shí)現(xiàn)對(duì)各個(gè)從機(jī)的控制和管理。

優(yōu)選的,fifo并發(fā)單元和寫卡單元是基于linux操作系統(tǒng)的嵌入式微處理器系統(tǒng)。

優(yōu)選的,fifo并發(fā)單元包括fifo驅(qū)動(dòng)器,fifo驅(qū)動(dòng)器是一個(gè)單輸入多輸出的電路模塊,該電路模塊包括高速微處理器系統(tǒng)、fifo寫信號(hào)驅(qū)動(dòng)模塊、fifo數(shù)據(jù)流驅(qū)動(dòng)模塊、fifo復(fù)位驅(qū)動(dòng)模塊以及fifo滿信號(hào)驅(qū)動(dòng)模塊,高速微處理器系統(tǒng)分別與不同的驅(qū)動(dòng)模塊連接,每個(gè)驅(qū)動(dòng)模塊包括多路驅(qū)動(dòng),分別與n個(gè)寫卡單元連接;

fifo并發(fā)單元在輸入端接收來(lái)自主機(jī)的網(wǎng)絡(luò)數(shù)據(jù),然后經(jīng)過(guò)高速微處理器系統(tǒng)處理,高速微處理器系統(tǒng)通過(guò)fifo復(fù)位多路驅(qū)動(dòng)向多個(gè)寫卡單元fifo存儲(chǔ)器模塊發(fā)送復(fù)位信號(hào),然后通過(guò)fifo滿信號(hào)多路驅(qū)動(dòng)接收各個(gè)寫卡單元返回來(lái)的復(fù)位消息;接著再通過(guò)fifo寫信號(hào)多路驅(qū)動(dòng)往各個(gè)寫卡單元發(fā)送fifo寫信號(hào),并接收各個(gè)寫卡單元通過(guò)fifo滿信號(hào)多路驅(qū)動(dòng)返回來(lái)的消息;當(dāng)各個(gè)寫卡單元返回的非滿的消息,則高速微處理器系統(tǒng)通過(guò)fifo數(shù)據(jù)多路驅(qū)動(dòng),往各個(gè)寫卡單元傳輸數(shù)據(jù)。

優(yōu)選的,所述寫卡單元以arm處理器為核心,arm處理器外接網(wǎng)卡模塊、7816模塊、fifo存儲(chǔ)器模塊、dma(directmemoryaccess)模塊、復(fù)位模塊、晶振模塊、電源模塊、tf(trans-flash)卡模塊、usb模塊、串口模塊、指示燈模塊和蜂鳴器模塊;

其中網(wǎng)卡模塊用于網(wǎng)絡(luò)通信;

7816模塊用于cpu并行總線信號(hào)和ic卡7816協(xié)議串行信號(hào)之間的拆分與組合,實(shí)現(xiàn)與卡片的讀寫操作;

fifo存儲(chǔ)器模塊用于接收f(shuō)ifo并發(fā)單元發(fā)送過(guò)來(lái)的cos數(shù)據(jù)apdu(applicationprotocoldataunit)命令,然后通過(guò)dma模塊直接傳輸?shù)絻?nèi)存中;

tf卡模塊用于存儲(chǔ)系統(tǒng)的程序以及臨時(shí)數(shù)據(jù);

usb模塊用于系統(tǒng)固件的燒寫;

串口模塊用于錯(cuò)誤調(diào)試;

指示燈模塊和蜂鳴器模塊則用于顯示當(dāng)前系統(tǒng)的狀態(tài)。

一種基于上述系統(tǒng)的ic卡大型制卡設(shè)備中的主從協(xié)同控制方法,主機(jī)通過(guò)廣播技術(shù)向各個(gè)從機(jī)發(fā)送指令,實(shí)現(xiàn)多個(gè)從機(jī)同時(shí)接受指令,并根據(jù)指令執(zhí)行相應(yīng)的任務(wù),任務(wù)包括制卡以及節(jié)點(diǎn)狀態(tài)信息;通過(guò)使用廣播技術(shù)、fifo技術(shù)以及dma技術(shù),實(shí)現(xiàn)個(gè)性化數(shù)據(jù)apdu命令和cos數(shù)據(jù)apdu命令交替讀寫。

具體的,針對(duì)cos數(shù)據(jù)apdu命令,交換機(jī)將主機(jī)傳過(guò)來(lái)的數(shù)據(jù)經(jīng)過(guò)廣播傳給fifo并發(fā)單元,fifo并發(fā)單元將數(shù)據(jù)發(fā)送到同組其余寫卡單元,實(shí)現(xiàn)數(shù)據(jù)共享;寫卡單元通過(guò)fifo存儲(chǔ)器模塊接收數(shù)據(jù)并經(jīng)由dma模塊傳輸?shù)絻?nèi)存中;傳輸cos數(shù)據(jù)apdu命令的具體步驟如下:

(1)主機(jī)從數(shù)據(jù)庫(kù)服務(wù)器中讀取ic卡的cos數(shù)據(jù)包;

(2)主機(jī)對(duì)讀取到的cos數(shù)據(jù)包進(jìn)行crc校驗(yàn),成功則執(zhí)行下一步,否則重新讀取cos數(shù)據(jù)包;

(3)主機(jī)使用廣播技術(shù)將cos數(shù)據(jù)包中的一條apdu命令發(fā)送到fifo并發(fā)單元;

(4)fifo并發(fā)單元將接收到的apdu命令同時(shí)發(fā)送到各寫卡單元的fifo存儲(chǔ)器;

(5)寫卡單元的fifo存儲(chǔ)器模塊收到apdu命令后,使用dma數(shù)據(jù)傳輸技術(shù),將數(shù)據(jù)直接傳輸?shù)綄懣▎卧獌?nèi)存中;

(6)寫卡單元對(duì)收到的apdu命令進(jìn)行crc校驗(yàn),校驗(yàn)成功則通過(guò)7816模塊寫入卡片,否則丟棄數(shù)據(jù),存儲(chǔ)cos下載失敗標(biāo)志,等待主機(jī)查詢;

(7)判斷是否進(jìn)行到cos數(shù)據(jù)包的最后一條apdu命令;否,轉(zhuǎn)向步驟(3)讀取下一條apdu命令;是,則完成cos下載,存儲(chǔ)cos下載成功標(biāo)志,等待主機(jī)查詢;

(8)主機(jī)查詢各寫卡單元的cos下載成功/失敗標(biāo)志,對(duì)失敗標(biāo)志的ic卡做拋卡或補(bǔ)卡處理。

具體的,針對(duì)制卡的個(gè)性化數(shù)據(jù)apdu命令,主機(jī)從數(shù)據(jù)庫(kù)獲取個(gè)性化數(shù)據(jù)包,并進(jìn)行加密后單播發(fā)送給對(duì)應(yīng)寫卡單元;寫卡單元收到數(shù)據(jù)后進(jìn)行解碼,然后再寫入卡片;傳輸個(gè)性化數(shù)據(jù)apdu命令的具體步驟如下:

(1)主機(jī)從數(shù)據(jù)庫(kù)服務(wù)器中讀取個(gè)性化數(shù)據(jù)包;

(2)主機(jī)對(duì)讀取到的個(gè)性化數(shù)據(jù)包進(jìn)行crc校驗(yàn),成功則執(zhí)行下一步,否則重新讀取個(gè)性化數(shù)據(jù)包;

(3)主機(jī)從個(gè)性化數(shù)據(jù)包取出一條apdu命令發(fā)送到寫卡單元;

(4)寫卡單元對(duì)接收到的apdu命令進(jìn)行解密和crc校驗(yàn)操作,成功則進(jìn)行apdu命令寫卡操作,否則請(qǐng)求重發(fā)該條apdu命令。

(5)判斷是否進(jìn)行到個(gè)性化數(shù)據(jù)包的最后一條apdu命令,否,轉(zhuǎn)向步驟(3)讀取下一條apdu命令;是,則完成個(gè)性化數(shù)據(jù)包下載。

(6)判斷cos數(shù)據(jù)包的下載是否完成;是,則當(dāng)前ic卡制卡結(jié)束,否,繼續(xù)等待直至cos數(shù)據(jù)包的下載結(jié)束。

優(yōu)選的,系統(tǒng)從數(shù)據(jù)庫(kù)中取得數(shù)據(jù)并在主機(jī)經(jīng)過(guò)加密算法后在局域網(wǎng)內(nèi)進(jìn)行單播,當(dāng)寫卡單元收到加密的數(shù)據(jù)后才進(jìn)行解密并寫到卡片上;在系統(tǒng)掉電時(shí),該數(shù)據(jù)自動(dòng)銷毀。

優(yōu)選的,寫卡單元的操作步驟具體如下:(1)系統(tǒng)上電。

(2)完成系統(tǒng)配置后,啟動(dòng)制卡系統(tǒng)。制卡系統(tǒng)包括4個(gè)線程。線程1為心跳線程,定時(shí)向主機(jī)發(fā)送心跳報(bào)文,告訴主機(jī)當(dāng)前寫卡單元無(wú)故障。線程2為網(wǎng)口監(jiān)聽(tīng)線程,等待從網(wǎng)口接收到數(shù)據(jù)或命令。線程3為命令處理線程,用于處理主機(jī)發(fā)送過(guò)來(lái)的信息。線程4為寫卡線程,用于實(shí)現(xiàn)與卡片的讀寫操作。

(3)等待接收命令。

(4)當(dāng)收到寫cos數(shù)據(jù)apdu命令,則啟動(dòng)寫cos數(shù)據(jù)線程;該線程首先等待cos數(shù)據(jù)apdu命令通過(guò)上述機(jī)制傳輸?shù)絻?nèi)存后,然后對(duì)cos數(shù)據(jù)apdu命令進(jìn)行crc校驗(yàn),只有當(dāng)數(shù)據(jù)正確無(wú)誤后才插入到寫卡隊(duì)列,由寫卡線程進(jìn)行寫卡操作;錯(cuò)誤則返回步驟(3)。

(5)收到寫個(gè)性化數(shù)據(jù)apdu命令時(shí),啟動(dòng)寫個(gè)性化數(shù)據(jù)線程;該線程首先等待個(gè)性化數(shù)據(jù)命令從網(wǎng)口接收到個(gè)性化數(shù)據(jù)apdu命令,然后對(duì)個(gè)性化數(shù)據(jù)apdu命令進(jìn)行解密和crc校驗(yàn)操作,當(dāng)個(gè)性化數(shù)據(jù)apdu命令解密成功后才將數(shù)據(jù)插入到寫卡隊(duì)列,由寫卡進(jìn)行寫卡操作;解密失敗返回步驟(3)。

(6)當(dāng)收到讀取寫卡單元狀態(tài)命令后,啟動(dòng)發(fā)送寫卡單元狀態(tài)線程。寫卡單元狀態(tài)線程包括寫卡單元是否正在工作,工作狀態(tài)是否正確,cpu運(yùn)行狀態(tài),內(nèi)存狀態(tài)等等。準(zhǔn)備完數(shù)據(jù)后,該線程將寫卡單元狀態(tài)組包發(fā)往主機(jī)。

(7)繼續(xù)執(zhí)行步驟(3)。

本發(fā)明與現(xiàn)有技術(shù)相比,具有如下優(yōu)點(diǎn)和有益效果:

1、本發(fā)明中主機(jī)通過(guò)廣播方式向各個(gè)從機(jī)發(fā)送指令,實(shí)現(xiàn)多個(gè)從機(jī)同時(shí)接受指令,同時(shí)開始進(jìn)行制卡流程,提高了制卡速率。

2、本發(fā)明通過(guò)使用廣播技術(shù)、fifo技術(shù)以及dma技術(shù),實(shí)現(xiàn)個(gè)性化數(shù)據(jù)和cos數(shù)據(jù)交替讀寫,加快制卡速率。

3、本發(fā)明中子節(jié)點(diǎn)采用多線程技術(shù),既可以實(shí)時(shí)反饋制卡狀態(tài),同時(shí)可以并行接收由fifo并發(fā)單元發(fā)送的cos數(shù)據(jù)apdu命令以及主機(jī)發(fā)送的個(gè)性化數(shù)據(jù)apdu命令,針對(duì)cos數(shù)據(jù)apdu命令實(shí)施crc校驗(yàn),而針對(duì)個(gè)性化數(shù)據(jù)apdu命令則進(jìn)行加解密和校驗(yàn)操作,提高系統(tǒng)安全性。

4、本發(fā)明利用基于linux的arm嵌入式設(shè)備通過(guò)7816接口直接與卡片進(jìn)行交互,直接從底層與卡片進(jìn)行交互,直接提高了制卡的效率。

附圖說(shuō)明

圖1是實(shí)施例1中的系統(tǒng)整體結(jié)構(gòu)圖。

圖2是實(shí)施例1中的fifo并發(fā)單元的結(jié)構(gòu)圖。

圖3是實(shí)施例1中的寫卡單元的結(jié)構(gòu)圖。

圖4是實(shí)施例2中主機(jī)與從機(jī)間傳輸cos數(shù)據(jù)apdu命令的流程圖。

圖5是實(shí)施例2中主機(jī)與從機(jī)間傳輸個(gè)性化數(shù)據(jù)apdu命令的流程圖。

圖6是實(shí)施例2中寫卡單元的程序流程圖。

具體實(shí)施方式

下面結(jié)合實(shí)施例及附圖對(duì)本發(fā)明作進(jìn)一步詳細(xì)的描述,但本發(fā)明的實(shí)施方式不限于此。

實(shí)施例1

一種ic卡大型制卡設(shè)備中的主從協(xié)同控制系統(tǒng),如圖1,包括主機(jī)、工業(yè)以太網(wǎng)交換機(jī)、數(shù)據(jù)庫(kù)服務(wù)器、fifo并發(fā)單元以及寫卡單元。fifo并發(fā)單元和寫卡單元均是基于linux操作系統(tǒng)的嵌入式微處理器系統(tǒng)。主機(jī)為工業(yè)pc機(jī),直連交換機(jī);交換機(jī)通過(guò)網(wǎng)口外接多個(gè)fifo并發(fā)單元、多個(gè)寫卡單元,以及用于保存所有數(shù)據(jù)的數(shù)據(jù)庫(kù)服務(wù)器。一個(gè)fifo并發(fā)單元連接交換機(jī)的一個(gè)網(wǎng)口,因此交換機(jī)的多個(gè)網(wǎng)口可以連接多個(gè)fifo并發(fā)單元,同時(shí)一個(gè)fifo并發(fā)單元另一端又接多個(gè)寫卡單元。fifo并發(fā)單元的輸出接到各個(gè)寫卡單元上的fifo存儲(chǔ)器模塊。該系統(tǒng)由主機(jī)作為系統(tǒng)的主控制端,多個(gè)fifo并發(fā)單元以及寫卡單元作為系統(tǒng)的從機(jī),與數(shù)據(jù)庫(kù)服務(wù)器一起通過(guò)交換機(jī)組成一個(gè)大型級(jí)聯(lián)集群系統(tǒng)。主機(jī)利用廣播技術(shù)和單播技術(shù)通過(guò)交換機(jī)實(shí)現(xiàn)對(duì)各個(gè)從機(jī)的控制和管理。

所述的ic卡包括cpu卡和存儲(chǔ)卡,按其通信接口方式又分為接觸式和非接觸式。

圖2是fifo并發(fā)單元的結(jié)構(gòu)圖。fifo并發(fā)單元包括fifo驅(qū)動(dòng)器,fifo驅(qū)動(dòng)器是一個(gè)單輸入多輸出的電路模塊,該電路模塊包括高速微處理器系統(tǒng)、fifo寫信號(hào)驅(qū)動(dòng)模塊、fifo數(shù)據(jù)流驅(qū)動(dòng)模塊、fifo復(fù)位驅(qū)動(dòng)模塊以及fifo滿信號(hào)驅(qū)動(dòng)模塊,高速微處理器系統(tǒng)分別與不同的驅(qū)動(dòng)模塊連接,每個(gè)驅(qū)動(dòng)模塊包括多路驅(qū)動(dòng),分別與n個(gè)寫卡單元連接。fifo并發(fā)單元的主要功能是在輸入端接收來(lái)自交換機(jī)的網(wǎng)絡(luò)數(shù)據(jù),然后經(jīng)過(guò)高速微處理器系統(tǒng)處理,高速微處理器系統(tǒng)通過(guò)fifo復(fù)位多路驅(qū)動(dòng)向多個(gè)寫卡單元fifo存儲(chǔ)器模塊發(fā)送復(fù)位信號(hào),然后通過(guò)fifo滿信號(hào)多路驅(qū)動(dòng)接收各個(gè)寫卡單元返回來(lái)的復(fù)位消息;接著再通過(guò)fifo寫信號(hào)多路驅(qū)動(dòng)往各個(gè)寫卡單元發(fā)送fifo寫信號(hào),并接收各個(gè)寫卡單元通過(guò)fifo滿信號(hào)多路驅(qū)動(dòng)返回來(lái)的消息;當(dāng)各個(gè)寫卡單元返回的非滿的消息,則高速微處理器系統(tǒng)通過(guò)fifo數(shù)據(jù)多路驅(qū)動(dòng),往各個(gè)寫卡單元傳輸數(shù)據(jù)。

圖3是寫卡單元的結(jié)構(gòu)圖。寫卡單元以arm處理器為核心,arm處理器外接網(wǎng)卡模塊、7816模塊、fifo存儲(chǔ)器模塊、dma模塊、復(fù)位模塊、晶振模塊、電源模塊、tf卡模塊、usb模塊、串口模塊、指示燈模塊和蜂鳴器模塊。

其中網(wǎng)卡模塊用于網(wǎng)絡(luò)通信;

7816模塊用于cpu并行總線信號(hào)與ic卡7816協(xié)議串行信號(hào)之間的拆分與組合,實(shí)現(xiàn)與卡片的讀寫操作;基于linux操作系統(tǒng)的嵌入式處理器利用信號(hào)線模擬7816協(xié)議的接口,從底層直接與卡片進(jìn)行交互,提高卡片讀寫的效率。

fifo存儲(chǔ)器模塊用于接收f(shuō)ifo并發(fā)單元發(fā)送過(guò)來(lái)的cos數(shù)據(jù)apdu命令,然后通過(guò)dma模塊直接傳輸?shù)絻?nèi)存中;

tf卡模塊用于存儲(chǔ)系統(tǒng)的程序以及臨時(shí)數(shù)據(jù);

usb模塊用于系統(tǒng)固件的燒寫;

串口模塊用于錯(cuò)誤調(diào)試;

指示燈模塊和蜂鳴器模塊則用于顯示當(dāng)前系統(tǒng)的狀態(tài)。

主機(jī)主要負(fù)責(zé)發(fā)布任務(wù),配置節(jié)點(diǎn)信息,以及實(shí)時(shí)掌握子節(jié)點(diǎn)狀態(tài)信息,而具體工作實(shí)施由寫卡單元完成,因此可以設(shè)計(jì)一個(gè)友好的人機(jī)界面,使得該系統(tǒng)具有較好的操作性。

實(shí)施例2

一種基于實(shí)施例1中的系統(tǒng)的ic卡大型制卡設(shè)備中的主從協(xié)同控制方法,主機(jī)通過(guò)廣播技術(shù)向各個(gè)從機(jī)發(fā)送指令,實(shí)現(xiàn)多個(gè)從機(jī)同時(shí)接受指令,并根據(jù)指令執(zhí)行相應(yīng)的任務(wù)。任務(wù)包括制卡以及反饋節(jié)點(diǎn)狀態(tài)信息(反饋當(dāng)前嵌入式處理器系統(tǒng)的狀態(tài),包括:是否在制卡、制卡的進(jìn)度、心跳報(bào)文、出錯(cuò)信息等)。

針對(duì)cos數(shù)據(jù)apdu命令,主機(jī)首先從數(shù)據(jù)庫(kù)服務(wù)器中讀取ic卡的cos數(shù)據(jù)包,從cos數(shù)據(jù)包逐條取出cos數(shù)據(jù)apdu命令,然后將cos數(shù)據(jù)apdu命令經(jīng)過(guò)廣播傳給fifo并發(fā)單元,fifo并發(fā)單元將數(shù)據(jù)發(fā)送到同組其余寫卡單元,實(shí)現(xiàn)數(shù)據(jù)共享。寫卡單元通過(guò)fifo存儲(chǔ)器模塊接收數(shù)據(jù)并經(jīng)由dma模塊傳輸?shù)絻?nèi)存中。這樣減少其余寫卡單元cpu的利用率,同時(shí)可以避免由于網(wǎng)絡(luò)原因造成數(shù)據(jù)傳輸效率低,從而使得各節(jié)點(diǎn)可以在數(shù)據(jù)共享的同時(shí)接受主機(jī)發(fā)送過(guò)來(lái)的指令或個(gè)人化數(shù)據(jù)。

針對(duì)制卡的個(gè)性化數(shù)據(jù)apdu命令,主機(jī)首先從數(shù)據(jù)庫(kù)獲取個(gè)性化數(shù)據(jù)包,從個(gè)性化數(shù)據(jù)包逐條取出apdu命令,并進(jìn)行加密后使用單播發(fā)送給對(duì)應(yīng)寫卡單元。寫卡單元收到數(shù)據(jù)后進(jìn)行解碼,然后再寫入卡片。

通過(guò)使用廣播技術(shù)、fifo技術(shù)以及dma技術(shù),實(shí)現(xiàn)個(gè)性化數(shù)據(jù)apdu命令和cos數(shù)據(jù)apdu命令交替讀寫,提高了制卡的效率。

圖4是主機(jī)與從機(jī)間傳輸cos數(shù)據(jù)apdu命令的流程圖,步驟如下:

(1)主機(jī)從數(shù)據(jù)庫(kù)服務(wù)器中讀取ic卡的cos數(shù)據(jù)包;

(2)主機(jī)對(duì)讀取到的cos數(shù)據(jù)包進(jìn)行crc校驗(yàn),成功則執(zhí)行下一步,否則重新讀取cos數(shù)據(jù)包;

(3)主機(jī)使用廣播技術(shù)將cos數(shù)據(jù)包中的一條apdu命令發(fā)送到fifo并發(fā)單元;

(4)fifo并發(fā)單元將接收到的apdu命令同時(shí)發(fā)送到各寫卡單元的fifo存儲(chǔ)器;

(5)寫卡單元fifo存儲(chǔ)器模塊收到apdu命令后,使用dma數(shù)據(jù)傳輸技術(shù),將數(shù)據(jù)直接傳輸?shù)綄懣▎卧獌?nèi)存中;

(6)寫卡單元對(duì)收到的apdu命令進(jìn)行crc校驗(yàn),校驗(yàn)成功則通過(guò)7816模塊寫入卡片,否則丟棄數(shù)據(jù),存儲(chǔ)cos下載失敗標(biāo)志,等待主機(jī)查詢。

(7)判斷是否進(jìn)行到cos數(shù)據(jù)包的最后一條apdu命令,否,轉(zhuǎn)向步驟(3)讀取下一條apdu命令;是,則完成cos下載,存儲(chǔ)cos下載成功標(biāo)志,等待主機(jī)查詢。

(8)主機(jī)查詢各寫卡單元的cos下載成功/失敗標(biāo)志,對(duì)失敗標(biāo)志的ic卡做拋卡或補(bǔ)卡處理。

圖5是主機(jī)與節(jié)點(diǎn)間傳輸個(gè)性化數(shù)據(jù)apdu命令的流程圖,步驟如下:

(1)主機(jī)從數(shù)據(jù)庫(kù)服務(wù)器中讀取個(gè)性化數(shù)據(jù)包;

(2)主機(jī)對(duì)讀取到的個(gè)性化數(shù)據(jù)包進(jìn)行crc校驗(yàn),成功則執(zhí)行下一步,否則重新讀取個(gè)性化數(shù)據(jù)包;

(3)主機(jī)從個(gè)性化數(shù)據(jù)包取出一條apdu命令發(fā)送到寫卡單元;

(4)寫卡單元對(duì)接收到的apdu命令進(jìn)行解密和crc校驗(yàn)操作,成功則進(jìn)行apdu命令寫卡操作,否則請(qǐng)求重發(fā)該條apdu命令。

(5)判斷是否進(jìn)行到個(gè)性化數(shù)據(jù)包的最后一條apdu命令,否,轉(zhuǎn)向步驟(3)讀取下一條apdu命令;是,則完成個(gè)性化數(shù)據(jù)包下載。

(6)判斷cos數(shù)據(jù)包的下載是否完成;是,則當(dāng)前ic卡制卡結(jié)束,否,繼續(xù)等待直至cos數(shù)據(jù)包的下載結(jié)束。

系統(tǒng)從數(shù)據(jù)庫(kù)中取得數(shù)據(jù)并在主機(jī)經(jīng)過(guò)加密算法后在局域網(wǎng)內(nèi)進(jìn)行單播,當(dāng)寫卡單元收到加密的數(shù)據(jù)后才進(jìn)行解密和crc校驗(yàn)后寫到卡片上;在系統(tǒng)掉電時(shí),該數(shù)據(jù)自動(dòng)銷毀;數(shù)據(jù)保密性高。

圖6是寫卡單元的程序流程圖,具體如下:

(1)系統(tǒng)上電。

(2)完成系統(tǒng)配置后,啟動(dòng)制卡系統(tǒng)。制卡系統(tǒng)包括4個(gè)線程。線程1為心跳線程,定時(shí)向主機(jī)發(fā)送心跳報(bào)文,告訴主機(jī)當(dāng)前寫卡單元無(wú)故障。線程2為網(wǎng)口監(jiān)聽(tīng)線程,等待從網(wǎng)口接收到數(shù)據(jù)或命令。線程3為命令處理線程,用于處理主機(jī)發(fā)送過(guò)來(lái)的信息。線程4為寫卡線程,用于實(shí)現(xiàn)與卡片的讀寫操作。

(3)等待接收命令。

(4)當(dāng)收到寫cos數(shù)據(jù)apdu命令,則啟動(dòng)寫cos數(shù)據(jù)線程;該線程首先等待cos數(shù)據(jù)apdu命令通過(guò)上述機(jī)制傳輸?shù)絻?nèi)存后,然后對(duì)cos數(shù)據(jù)apdu命令進(jìn)行crc校驗(yàn),只有當(dāng)數(shù)據(jù)正確無(wú)誤后才插入到寫卡隊(duì)列,由寫卡線程進(jìn)行寫卡操作;錯(cuò)誤則返回步驟(3)。

(5)收到寫個(gè)性化數(shù)據(jù)apdu命令時(shí),啟動(dòng)寫個(gè)性化數(shù)據(jù)線程;該線程首先等待個(gè)性化數(shù)據(jù)命令從網(wǎng)口接收到個(gè)性化數(shù)據(jù)apdu命令,然后對(duì)個(gè)性化數(shù)據(jù)apdu命令進(jìn)行解密和crc校驗(yàn)操作,當(dāng)個(gè)性化數(shù)據(jù)apdu命令解密成功后才將數(shù)據(jù)插入到寫卡隊(duì)列,由寫卡進(jìn)行寫卡操作;解密失敗返回步驟(3)。

(6)當(dāng)收到讀取寫卡單元狀態(tài)命令后,啟動(dòng)發(fā)送寫卡單元狀態(tài)線程。寫卡單元狀態(tài)線程包括寫卡單元是否正在工作,工作狀態(tài)是否正確,cpu運(yùn)行狀態(tài),內(nèi)存狀態(tài)等等。準(zhǔn)備完數(shù)據(jù)后,該線程將寫卡單元狀態(tài)組包發(fā)往主機(jī)。

(7)繼續(xù)執(zhí)行步驟(3)。

上述實(shí)施例為本發(fā)明較佳的實(shí)施方式,但本發(fā)明的實(shí)施方式并不受上述實(shí)施例的限制,其他的任何未背離本發(fā)明的精神實(shí)質(zhì)與原理下所作的改變、修飾、替代、組合、簡(jiǎn)化,均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護(hù)范圍之內(nèi)。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1