<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設(shè)計應(yīng)用 > UHF RFID讀寫器編解碼模塊的FPGA實現(xiàn)

          UHF RFID讀寫器編解碼模塊的FPGA實現(xiàn)

          作者: 時間:2012-11-07 來源:網(wǎng)絡(luò) 收藏


          3 總體設(shè)計
          在本讀寫器設(shè)計中,ARM與協(xié)同工作。ARM芯片是LPC2148,工作時鐘是20 MHz,主要完成對讀寫器系統(tǒng)的控制。而則負責(zé)部分的數(shù)據(jù)流處理,工作時鐘頻率是25 MHz。圖5是部分的整體設(shè)計框圖。

          本文引用地址:http://www.ex-cimer.com/article/153736.htm

          h.JPG


          FPGA中的模塊主要包括協(xié)議控制及命令產(chǎn)生模塊、PIE編碼模塊、/miller解碼模塊,以及用于與PC機交互的串口控制模塊。
          工作過程如下:對讀寫器命令數(shù)據(jù)及其相應(yīng)的CRC5/16校驗位進行PIE編碼,編碼完成送到射頻發(fā)射端,數(shù)字信號通過控制射頻芯片RF2 173的開關(guān)引腳實現(xiàn)調(diào)制深度為100%的OOK(On-Off Keying)調(diào)制,并經(jīng)由收發(fā)分離的定向耦合器,通過天線發(fā)射出去。
          場內(nèi)標簽接收到讀寫器發(fā)送的信息后,在允許其通信的情況下,會根據(jù)讀寫器發(fā)送來的命令參數(shù),選擇4種編碼方式中的一種,將要回復(fù)讀寫器的數(shù)據(jù)進行編碼,經(jīng)調(diào)制之后在空間傳輸。
          讀寫器天線接收到標簽信息后,經(jīng)由定向耦合器將標簽信息送到讀寫器的射頻接收模塊,該模塊對標簽信息進行解調(diào),并將解調(diào)后得到的數(shù)字信號送給FPGA的/miller解碼模塊。解碼模塊根據(jù)數(shù)據(jù)的編碼方式選擇相應(yīng)的電路解碼,解碼后的數(shù)據(jù)返回給協(xié)議控制及命令產(chǎn)生模塊。該模塊根據(jù)上次發(fā)送的命令以及接收到的標簽信息作出判斷,產(chǎn)生下一次的操作命令數(shù)據(jù),發(fā)給PIE編碼模塊,與該標簽進行進一步的信息交互或選擇重新讀取另外的標簽。
          同時,為了準確獲取標簽信息,必須將讀寫器與PC機相連。讀寫器通過由FPGA實現(xiàn)的串口模塊與PC機相連,對讀取到的標簽信息做必要的顯示,如標簽返回的RN16、EPC、UII等。

          4 FPGA實現(xiàn)電路
          為了實現(xiàn)FPGA部分的功能,在Altera公司的EP1C3T100C6芯片上,利用Quartus II軟件進行設(shè)計,PIE編碼模塊設(shè)計如圖6所示。

          i.JPG


          4.1 編碼模塊設(shè)計
          PIE編碼由pie_encode模塊實現(xiàn)。該模塊接收命令產(chǎn)生模塊并行發(fā)來的8位數(shù)據(jù),按照協(xié)議規(guī)定及設(shè)置,先給命令數(shù)據(jù)添加特定的幀頭,并根據(jù)數(shù)據(jù)傳輸速率,對命令數(shù)據(jù)及其CRC5/16校驗位進行PIE編碼,編碼完成后輸出給射頻發(fā)射模塊調(diào)制,然后通過天線發(fā)送出去。其設(shè)計框圖如圖6所示。
          PIE編碼模塊由編碼狀態(tài)機作為控制模塊。狀態(tài)機的狀態(tài)由命令幀頭和數(shù)據(jù)0和1組成,即idle、delimiter、tari、rtcal、trcal、data_ sendl、data_send0 7個狀態(tài),其中idle是空閑狀態(tài),接收到開始信號后跳轉(zhuǎn)到其他狀態(tài)。狀態(tài)機的流程按照命令的組成依次進行,每個狀態(tài)按照協(xié)議要求保持特定的時間,直至命令編碼完成。由于Query命令和其他命令的幀頭不同,query_cmd_flag_in信號用于指示此次發(fā)送來的數(shù)據(jù)是否為Query命令數(shù)據(jù),如果是,則在編碼時加入TRcal命令段;否則,跳過TRcal狀態(tài)。
          在接收部分數(shù)據(jù)開始發(fā)送指示信號rx_cmd_start與要發(fā)送的數(shù)據(jù)rx_cmd、rx_cmd_num保持同步,編碼模塊中的命令數(shù)據(jù)計數(shù)器和命令數(shù)據(jù)移位寄存器根據(jù)rx_cmd_start信號將8位數(shù)據(jù)并行送入各自的寄存器。
          接收完成后,數(shù)據(jù)寄存器會根據(jù)計數(shù)器中的值進行相應(yīng)的移位,將無效數(shù)據(jù)移出,保證有效數(shù)據(jù)是從命令寄存器中的最高位開始。同時,每完成一位數(shù)據(jù)的編碼,計數(shù)器自減1,移位寄存器也自動左移一位,將下一個要編碼的數(shù)據(jù)放入待編碼數(shù)據(jù)寄存器中,該寄存器由此去控制狀態(tài)機的下一個流程。
          發(fā)送部分主要由一個命令長度計數(shù)器組成,該計數(shù)器根據(jù)命令參數(shù)的設(shè)置以及所處的狀態(tài)進行計數(shù),控制狀態(tài)機在某個狀態(tài)保持的時間當(dāng)一位數(shù)據(jù)編碼完成,計數(shù)器清0,并開始對下一位數(shù)據(jù)計數(shù),同時狀態(tài)機也跳轉(zhuǎn)到下一個狀態(tài),而編碼數(shù)據(jù)則根據(jù)狀態(tài)機的狀態(tài)以及計數(shù)器的值拉高或拉低,并由鎖存器將編碼后的命令鎖存輸出。這樣就實現(xiàn)了邊編碼邊調(diào)制的目的,提升了命令發(fā)送的速率,也節(jié)省了硬件資源。
          4.2 解碼模塊設(shè)計
          解碼部分由data_pre_process、fm_and_miller_decode、data_post_decode 3個模塊組成。data_pre_process是解碼數(shù)據(jù)預(yù)處理模塊,接收射頻模塊解調(diào)后的數(shù)據(jù)。因為射頻發(fā)射和接收使用的是同一根天線,發(fā)射的數(shù)據(jù)信息以及其他雜波信號經(jīng)常會泄露進解碼模塊。該模塊主要是去除信號中的毛刺,并對接收數(shù)據(jù)的高低電平長度進行判斷,看是否符合編碼規(guī)則,如果均在合適的范圍內(nèi),則視為成功。同時產(chǎn)生待解碼數(shù)據(jù)的采樣信號,以及其他指示信號,以便解碼模塊的數(shù)據(jù)處理;若不符合要求則丟棄這部分數(shù)據(jù),重新檢查分析新來的數(shù)據(jù)信息。
          data_post_process是解碼數(shù)據(jù)確認及串并轉(zhuǎn)換模塊。解調(diào)后的數(shù)據(jù)經(jīng)過了解碼預(yù)處理模塊的初步判斷,只是符合了一定的編碼規(guī)則,在解碼過程中還可能會出現(xiàn)諸如幀頭出錯、結(jié)尾數(shù)據(jù)不為1等其他錯誤。該模塊通過判斷解碼模塊的error和data_success信號,確認此次解碼是否成功,若成功,將接收解碼數(shù)據(jù),同時考慮到串行數(shù)據(jù)傳輸速度較慢,本模塊會對解碼數(shù)據(jù)進行串并轉(zhuǎn)換,然后8位并行地將解碼后的數(shù)據(jù)傳輸給其他模塊。
          fm_and_miller_decode是解碼模塊。其組成框圖如圖7所示。

          j.JPG


          該解碼模塊主要由解碼狀態(tài)機控制。狀態(tài)機的狀態(tài)由初始態(tài)、數(shù)據(jù)解碼態(tài),以及最后的解碼成功和解碼失敗狀態(tài)組成。接收到解碼開始信號時,狀態(tài)機由初始態(tài)跳轉(zhuǎn)到數(shù)據(jù)解碼態(tài)開始解碼,在解碼過程中,如果發(fā)現(xiàn)輸入的數(shù)據(jù)違背了編碼規(guī)則或不符合命令的設(shè)置,則直接跳入失敗狀態(tài)。在該狀態(tài)下,會有一個解碼失敗信號error產(chǎn)生并輸出。如果解碼順利進行到結(jié)束,則跳轉(zhuǎn)到解碼成功狀態(tài),會有一個解碼成功信號data_success產(chǎn)生并輸出,控制下一個模塊的工作。這樣解碼狀態(tài)機一邊接收待解碼數(shù)據(jù),進行解碼處理,一邊將前面處理完的數(shù)據(jù)輸出給CRC5/16校驗?zāi)K,實現(xiàn)了類似于流水線的工作,節(jié)省了解碼時間。



          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();