新聞中心

EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > CPLD在射頻卡讀寫器中的應(yīng)用

CPLD在射頻卡讀寫器中的應(yīng)用

作者: 時(shí)間:2009-07-15 來源:網(wǎng)絡(luò) 收藏

1 系統(tǒng)工作原理和特性

本文引用地址:http://m.butianyuan.cn/article/157983.htm

讀寫系統(tǒng)又稱識(shí)別系統(tǒng)(Radio Frequency Identification),它是利用無線方式進(jìn)行非接觸式雙向數(shù)據(jù)通信,進(jìn)而達(dá)到識(shí)別目標(biāo)并交換信息的目的。識(shí)別技術(shù)發(fā)展迅速,在門禁、交通這、防盜、金融、身份證管理、工業(yè)自動(dòng)化等方面有著廣泛的前景。按照相關(guān)標(biāo)準(zhǔn),非接觸IC卡可以分為3種:(1)密耦合卡(ISO10536),作用距離0~1cm。(2)近耦合卡(ISO 14443),作用距離0~10cm。(3)疏耦合卡(ISO 15693),作用距離0~150cm[1]。

基于ISO 15693協(xié)議標(biāo)準(zhǔn)設(shè)計(jì)的是目前中低頻段工作距離最遠(yuǎn)(達(dá)1.5米)的射頻識(shí)別裝置。由半導(dǎo)體廠商提供,目前國內(nèi)外均有符合該標(biāo)準(zhǔn)的商用化射頻卡。

和射頻卡之間的數(shù)據(jù)交換主要有兩種:(1)下行數(shù)據(jù)是向射頻卡發(fā)送的具有固定幀格式的指令和數(shù)據(jù):(1)上行數(shù)據(jù)是射頻卡響應(yīng)讀寫器指令后返回的數(shù)據(jù)。讀寫器分前端收發(fā)模塊和后臺(tái)數(shù)據(jù)處理模塊。本文主要涉及數(shù)據(jù)處理部分,其主要功能有:指令裝配、下行數(shù)據(jù)編碼(讀寫器→卡)、上行數(shù)據(jù)解碼(卡 →讀寫器)以及差錯(cuò)控制模塊。射頻卡讀寫器結(jié)構(gòu)如圖1所示。

在實(shí)際中,密耦合卡和近耦合卡距離射頻卡讀寫器作用距離特別小,一般每次只要求響應(yīng)一張卡(如公交售票系統(tǒng))。而疏耦合卡往往在對(duì)多卡同時(shí)進(jìn)行響應(yīng)的場合(如多個(gè)持卡行李同時(shí)經(jīng)過門檢),讀寫器與多卡同時(shí)進(jìn)行數(shù)據(jù)交換可以通過軟件設(shè)計(jì)加入“防碰撞機(jī)制”實(shí)現(xiàn)。但是由于讀寫器在響應(yīng)某張卡時(shí)的數(shù)據(jù)交換時(shí)間被限制在200μs~300μs內(nèi),選用普通單片機(jī)無法達(dá)到這一要求,因此在設(shè)計(jì)中選用了高速器件來實(shí)現(xiàn)編碼、解碼以及差錯(cuò)控制功能。一方面在響應(yīng)時(shí)間上滿足了實(shí)際應(yīng)用的需要;另一方面簡化了軟件設(shè)計(jì)。

是從PAL和GAL發(fā)展起來陣列型高密度PLD器件,內(nèi)部由可編程邏輯宏單元、可編程I/O單元、可編程內(nèi)部連線構(gòu)成。它們大多采用E2PROM 和FLASH閃存工藝,掉電后編程信息不丟失[2]。器件性能可以滿足不同場合的需要,如Xilinx公司XC95XL系列CPLD具有低功耗特性,輸出電壓2.5V/3.3V,端到端延時(shí)5ns,系統(tǒng)最高工作頻率可達(dá)178M[3]。目前CPLD器件被廣泛應(yīng)用于代替中小規(guī)模數(shù)字電路,提高系統(tǒng)的可靠性、抗干擾性能和處理速度。通過管腳鎖定和預(yù)留切換端口,可以在不改動(dòng)原PCB電路板的基礎(chǔ)上對(duì)模塊的功能進(jìn)行修改和完善,給調(diào)試帶來方便。

2 功能模塊實(shí)現(xiàn)

2.1 編碼器與譯碼器

單片機(jī)啟動(dòng)編碼后,編碼模塊向單片機(jī)發(fā)中斷(INT0)獲取待編碼的指令數(shù)據(jù),同時(shí)將指令數(shù)據(jù)送入并行CRC模塊。當(dāng)指令數(shù)據(jù)完成編碼后,控制電路將2字節(jié) CRC值緊接在數(shù)據(jù)之后進(jìn)行編碼。譯碼時(shí),譯碼器檢測到起始位后,開始譯碼。譯碼后的數(shù)據(jù)通過中斷(INT1)通知單片機(jī)取走。并同時(shí)送入CRC并行運(yùn)算模塊進(jìn)行校驗(yàn),單片機(jī)在特定的時(shí)刻(接收完最后一字節(jié)數(shù)據(jù)時(shí))讀取CRC校驗(yàn)標(biāo)志端口CRCALL0,判斷整個(gè)數(shù)據(jù)串的正確性。

編譯碼的數(shù)據(jù)格式如下:

(1)數(shù)據(jù)編碼從讀寫器到卡的數(shù)據(jù)采用脈沖位置調(diào)制即“1/256”編碼。用256個(gè)時(shí)隙表示8bit數(shù)據(jù),通過控制bit脈沖出現(xiàn)的時(shí)間位置來表示0~255范圍內(nèi)的數(shù)據(jù)。如圖2,在第255個(gè)位置出現(xiàn)的位置脈沖(9.44μs高電平的9.44μs低電平)表示數(shù)據(jù)E1(HEX),采用計(jì)數(shù)器加控制電路即可實(shí)現(xiàn)??刂撇糠謪f(xié)助實(shí)現(xiàn)數(shù)據(jù)無縫編碼及形成幀起始位和結(jié)束位,用VHDL設(shè)計(jì)易于實(shí)現(xiàn)。編碼后的數(shù)據(jù)進(jìn)行ASK調(diào)制(13.56MHz載波),經(jīng)天線發(fā)射出去。

(2)數(shù)據(jù)譯碼從射頻卡返回的數(shù)據(jù)經(jīng)過一次解調(diào)(去掉13.56MHz載波)后,數(shù)據(jù)編碼格式如圖3所示??梢灾苯舆M(jìn)行數(shù)據(jù)譯碼,也可以去除子載波(423.75kHz)后得到Manchester碼再譯碼。這里采用后者,通過在每一bit的前、后半段時(shí)間內(nèi)兩次取樣、判決、加以串并變換即可得到譯碼后的并行數(shù)據(jù)并送至并行CRC模塊進(jìn)行CRC校驗(yàn),同時(shí)送往單片機(jī)處理,行CRC模塊在校驗(yàn)結(jié)束時(shí)通知單片機(jī)取校驗(yàn)結(jié)果。

2.2 差錯(cuò)處理模塊

與射頻卡內(nèi)部電路配合,讀寫器端采用了常用的CRC檢錯(cuò)得傳機(jī)制。為了縮短處理時(shí)間,滿足讀寫器在實(shí)際應(yīng)用中對(duì)多張卡同時(shí)處理時(shí)的響應(yīng)時(shí)間要求,設(shè)計(jì)采用硬件實(shí)現(xiàn)。

計(jì)算下行數(shù)據(jù)的CRC值以及對(duì)上行數(shù)據(jù)進(jìn)行CRC校驗(yàn),實(shí)際上都是完成數(shù)據(jù)的CRC計(jì)算,二者可以共用一個(gè)模塊,通過控制部分協(xié)調(diào)分工。通常CRC采用性反饋移位寄存器串行實(shí)現(xiàn)(見圖4)[4],這里提出了一種并行計(jì)算CRC的方法,具有更高的處理速度,使讀寫器對(duì)響應(yīng)時(shí)間縮短。

上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉