李一春 王效東
摘 要:為了設計讀取GB/T 29768-2013標準標簽的讀寫器,對ISO 18000-6C和GB/T 29768-2013兩種標準的標簽數(shù)據(jù)結(jié)構(gòu)進行了對比分析,給出了影響讀寫器設計性能的若干問題以及有針對性的FPGA解決辦法。
關(guān)鍵詞:UHF;RFID;EPC;超高頻讀寫器;GB/T 29768-2013
中圖分類號:TP301 文獻標志碼:A 文章編號:2095-1302(2014)10-00-02
0 引 言
由國家質(zhì)量監(jiān)督檢驗檢疫總局和國家標準化管理委員會發(fā)布,于2014年5月1日實施的GB/T 29768-2013 《信息技術(shù) 射頻識別800/900 MHz空中接口協(xié)議》規(guī)定了840 ~845MHz和920 ~925 MHz頻段射頻識別系統(tǒng)空中接口的物理層和媒體訪問控制層參數(shù)以及協(xié)議工作方式。該標準是由2011年頒布的國軍標GJB 7377.1-2011《軍用射頻識別空中接口 第一部分:800/900 MHz 參數(shù)》轉(zhuǎn)化而來,兩者在前向前導碼和反向鏈接頻率以及啟動查詢和分類命令結(jié)構(gòu)有些差異,但是查詢機制兩者完全相同,它們的數(shù)據(jù)結(jié)構(gòu)的標簽與符合ISO 18000-6C標準1的標簽在媒體訪問控制層和協(xié)議工作方式上有比較大的差異。所以目前這三種標準在標簽數(shù)據(jù)結(jié)構(gòu)上可以分為兩類,為了適應這種差異,在讀寫器軟件設計上需要有些對應措施。
1 標簽數(shù)據(jù)結(jié)構(gòu)差異
ISO 18000-6C標簽數(shù)據(jù)結(jié)構(gòu)如圖1所示,完整電子標簽由USER、TID、 EPC和RESERVED四個Bank組成,其中EPC部分包含CRC 、PC 和EPC數(shù)據(jù)三個部分。CRC由標簽本身自動對PC和EPC兩部分計算得到,在寫標簽時不需要特意單獨寫入CRC內(nèi)容。
圖1 ISO 18000-6C標簽的數(shù)據(jù)結(jié)構(gòu)
GB/T 29768標簽數(shù)據(jù)結(jié)構(gòu)4如圖2所示,完整電子標簽由也是用戶區(qū)、 安全區(qū)、 編碼區(qū)和標簽信息區(qū)四個空間組成,其中編碼區(qū)由編碼長度和編碼頭組成。
圖2 GB/T 29768標簽的數(shù)據(jù)結(jié)構(gòu)
兩種標簽構(gòu)成相似,但是在密集標簽分群盤點方面,ISO 18000-6C標簽的數(shù)據(jù)結(jié)構(gòu)相對更容易在存儲空間有限的基于微控制器讀寫器設計中實現(xiàn)。
2 微控制器讀寫器解碼的可行性分析
在讀寫器設計中,通常采用微控制器實現(xiàn)對電子標簽的解碼識別,當使用比較快的反向鏈接頻率時,標簽的應答信號脈沖間隔只有幾微秒甚至更短,受微控制器處理速度限制,如果微控制器帶有時鐘定時器等中斷,處理這樣快速脈沖可能會因為中斷占用識別處理的時間從而丟失脈沖信號導致解碼失敗,因此不使用定時器中斷可以減少高反向鏈接頻率時的解碼失敗可能性。在盤點標簽的解碼周期中,無論ISO 18000-6C還是GB/T 29768都規(guī)范了標簽命令間隔,在ISO 18000-6C和GB/T 29768中都定義了相同的時間參數(shù)T2數(shù)值范圍3Tpri~20Tpri。超過規(guī)范時間,標簽會反轉(zhuǎn)內(nèi)部標志,在ISO 18000-6C中,因為反向鏈接頻率為40~640 kHz,相應T2數(shù)值范圍最大允許值為500~32.5 μs,在GB/T 29768標準中反向鏈接頻率為64 ~640 kHz,相應T2數(shù)值范圍最大允許值為325~32.5 μs,所以當設計高速的反向鏈接頻率讀寫器時,使用微控制器解碼標簽的過程中,沒法將剛剛解碼的標簽傳給上位機以便騰出空間,只能先緩存在微控制器的數(shù)據(jù)存儲空間中。由于微控制器系統(tǒng)存儲空間容量有限,這限制了基于微控制器的讀寫器每輪最多識別標簽的容量。如果期望使用帶有外部擴展SDRAM的嵌入式控制系統(tǒng),因為系統(tǒng)都帶有節(jié)拍定時器,存在中斷處理開銷,這在識別高反向鏈接頻率標簽是不可接受的,即使使用雙微控制器,其中一個控制器專用于標簽識別,也會受指令執(zhí)行速度影響,不能設計出高反向鏈接速度的讀寫器。
3 標簽分群解碼的實現(xiàn)比較
讀寫器還有緩存標簽數(shù)據(jù)能力,以便轉(zhuǎn)給上位機控制器,受微控制器存儲容量的限制,設計中可以考慮把標簽分群分批次識別來解決微控制器存儲容量的瓶頸。在分群方面,ISO18000-6C標簽數(shù)據(jù)結(jié)構(gòu)相對GB/T 29768的標簽數(shù)據(jù)結(jié)構(gòu)有些優(yōu)勢。
ISO18000-6C標簽數(shù)據(jù)結(jié)構(gòu)(圖1),包含的CRC部分所占地址是固定在00h~0Fh這16個位空間處,分群所用SELECT命令構(gòu)成參見圖3所示。
Command Target Action MemBank Pointer Length Mask Truncate CRC-16
圖3 SELECT的命令構(gòu)成
對于隨機的或是編號成序列的一群標簽,利用標簽的CRC存放中的幾個位作為分群SELECT命令的掩碼Mask,結(jié)合指示位置的Pointer和指示匹配長度的Length,如果用CRC的二進制高三位,Pointre=00h,Length=03h,Mask依次可配置成000b~111b,可以把標簽分成8個子群來進行盤點,作為對比評估,如果用標簽EPC部分做掩碼來分群,假如選標簽大致成序列,而且選中的是序列的二進制最低三位,那可以最均勻地分配出8個子群,但是如果在另外一個識別場合,標簽群的序列號定義是新的格式,那就不幸可能標簽全集中到一個群中,但是利用CRC部分的數(shù)據(jù)卻可以相對均勻地把成序列的標簽群拆分。這方面的比較說明了利用EPC部分位來分群的局限性,而利用CRC存放部分的數(shù)據(jù)位來分群可以在不確認標簽數(shù)據(jù)格式前提下,相對均勻的把標簽分成小群。
GB/T 29768標簽數(shù)據(jù)結(jié)構(gòu)(圖2)缺少CRC部分,故編碼頭部分在GB/T 297683中沒有描述,通過參考GJB 7377-2011和GJB 7382-20115等類似標準,得知其不具有序列性質(zhì),由于缺少固定位置相對隨機的的數(shù)據(jù)結(jié)構(gòu),GB/T 29768標簽分群能力大大弱于ISO 18000-6C標簽,不利于存儲容量有限的微控制器的讀寫器盤點大群標簽。
4 基于FPGA實現(xiàn)的讀寫器解決方案
前面分析了基于微控制器的讀寫器在實現(xiàn)高速盤點大群標簽特別是盤點GB/T 29768標準標簽的困境,如果采用并行操作的FPGA代替指令串行執(zhí)行的微控制器,利用FPGA設計多個并行工作的狀態(tài)機,通過先進先出寄存器就可以在新命令發(fā)出過程中把前面命令獲得的標簽返回數(shù)據(jù)通過接口轉(zhuǎn)移到外部嵌入式控制器,不用進行分群盤點方式就可以實現(xiàn)大容量的記錄處理。
基于FPGA代替微控制器的讀寫器結(jié)構(gòu)框圖如圖4所示,其中FPGA中的控制狀態(tài)機是整個系統(tǒng)的核心,它通過接口控制器、命令狀態(tài)機、解碼狀態(tài)機、頻率控制器、FIFO控制器等部分實現(xiàn)讀卡功能。
圖4 基于FPGA代替微控制器的讀寫器結(jié)構(gòu)框圖
接口控制器包含同步串行接口SPI從控制器,可以使FPGA通過SPI接口與外部嵌入式微控制器通訊,接受嵌入式控制器命令并返回得到的標簽數(shù)據(jù),是對外交互通道。
命令狀態(tài)機根據(jù)控制狀態(tài)機處理的接口命令和解碼狀態(tài)機解調(diào)的信息,把新的命令序列處理成串行數(shù)據(jù)送給外部數(shù)字模擬轉(zhuǎn)換器,進而輸出IQ兩路模擬信號供給調(diào)制器。
解碼器把來自外部模擬數(shù)字轉(zhuǎn)換器的數(shù)據(jù),根據(jù)解碼規(guī)則處理出標簽信息,轉(zhuǎn)給控制狀態(tài)機去控制命令狀態(tài)機,并把需要輸出的數(shù)據(jù)放入FIFO存儲器中緩存,等待外部嵌入式控制器取走。
頻率控制器根據(jù)控制狀態(tài)機的命令,輸出相應命令串驅(qū)動外部頻率合成器產(chǎn)生所需要的射頻載波,再給后級調(diào)制解調(diào)輸出。
FPGA可以并行處理數(shù)據(jù),在控制狀態(tài)機讓命令狀態(tài)機發(fā)送命令或是解碼狀態(tài)機在處理返回信息同時還可以處理接口控制器的事務,把前面緩沖在FIFO存儲器的數(shù)據(jù)通過接口傳給外部嵌入式控制器,外部的嵌入式控制器外掛大容量的SDRAM,其與FPGA之間的SPI通訊接口接口傳送的速率要高于標簽響應速率,所以只要外部嵌入式控制器與FPGA配合好,突發(fā)性地把FIFO存儲器中的緩沖數(shù)據(jù)取走,就能實現(xiàn)基于微控制器的讀寫器無法實現(xiàn)的高反向鏈接頻率下的巨大讀卡容量。
在基于FPGA的讀寫器中,設計為最高640 kHz的反向鏈接頻率時,因為操作的并行性,不同于基于微控制器的指令方式,處理前述標簽標準中的T2參數(shù)沒有任何壓力,同時解碼處理方式是依靠模擬數(shù)字轉(zhuǎn)換器輸入,可以對數(shù)據(jù)先進行濾波再進行邊沿識別,利用相對微控制器更完善的識別判斷手段,提高對弱信噪比信號識別的成功率。而基于微控制器的讀寫器,最高處理反向鏈接速度是320 kHz,速度很快,因為識別代碼指令執(zhí)行需要時間,過短的數(shù)據(jù)間隔導致前面沒處理完成后面新數(shù)據(jù)就到達的狀況,這時數(shù)據(jù)會丟失導致解碼失敗,另外一個性能限制是命令之間時間參數(shù)T2問題,已經(jīng)處理的數(shù)據(jù)沒有充足時間傳給上位機只能先放到RAM中緩存,容量受限。
5 結(jié) 語
在對GB/T 29768與 ISO18000-6C兩種標簽的數(shù)據(jù)結(jié)構(gòu)差異對比分析基礎上,分析了基于微控制器實現(xiàn)讀寫器的局限性和基于FPGA結(jié)構(gòu)的讀寫器實現(xiàn)的優(yōu)越性,當然,后者開發(fā)難度,器件成本、功耗和體積都會有所增加。在應用場合,可以根據(jù)需求,有針對性地采用高性能或是適當降低讀取指標關(guān)注小體積低成本的方案。
參考文獻
[1] ISO/IEC 18000-6:2013 Information technology-Radio frequency identification for item management-Part6:Parameters for air interface communications at 860MHz to 960MHz General [S]
[2] ISO/IEC 18000-63:2013 Information technology-Radio frequency identification for item management-Part63:Parameters for air interface communications at 860MHz to 960MHz TypeC [S]
[3] ISO/IEC 18047-6:2012 Information technology-Radio frequency identification device conformance test methods-Part6:Test methods for air interface communications at 860MHz to 960MHz [S]
[4] GB/T 29768-2013 信息技術(shù) 射頻識別800/900 MHz 空中接口協(xié)議 [S]. 北京:中國標準出版社,2013.
[5] GJB 7377.1-2011 軍用射頻識別空中接口 第一部分:800/900MHz 參數(shù) [S]. 北京:中國標準出版社,2011.
[6] GJB 7382-2011 軍用射頻識別標簽數(shù)據(jù)結(jié)構(gòu)通用要求 [S] . 北京:中國標準出版社,2011.
[7] GJB 7376-2011 軍用射頻識別標簽唯一標識 [S] . 北京:中國標準出版社,2011.
[8] GJB 7380-2011 軍用射頻識別讀寫器通用規(guī)范 [S] . 北京:中國標準出版社,2011.
[9] GJB 7379-2011 軍用射頻識別設備的系統(tǒng)性能測試方法 [S] . 北京:中國標準出版社,2011.
[10]何賓. Xilinx FPGA設計權(quán)威指南[M]. 北京:清華大學出版社,2012.
4 基于FPGA實現(xiàn)的讀寫器解決方案
前面分析了基于微控制器的讀寫器在實現(xiàn)高速盤點大群標簽特別是盤點GB/T 29768標準標簽的困境,如果采用并行操作的FPGA代替指令串行執(zhí)行的微控制器,利用FPGA設計多個并行工作的狀態(tài)機,通過先進先出寄存器就可以在新命令發(fā)出過程中把前面命令獲得的標簽返回數(shù)據(jù)通過接口轉(zhuǎn)移到外部嵌入式控制器,不用進行分群盤點方式就可以實現(xiàn)大容量的記錄處理。
基于FPGA代替微控制器的讀寫器結(jié)構(gòu)框圖如圖4所示,其中FPGA中的控制狀態(tài)機是整個系統(tǒng)的核心,它通過接口控制器、命令狀態(tài)機、解碼狀態(tài)機、頻率控制器、FIFO控制器等部分實現(xiàn)讀卡功能。
圖4 基于FPGA代替微控制器的讀寫器結(jié)構(gòu)框圖
接口控制器包含同步串行接口SPI從控制器,可以使FPGA通過SPI接口與外部嵌入式微控制器通訊,接受嵌入式控制器命令并返回得到的標簽數(shù)據(jù),是對外交互通道。
命令狀態(tài)機根據(jù)控制狀態(tài)機處理的接口命令和解碼狀態(tài)機解調(diào)的信息,把新的命令序列處理成串行數(shù)據(jù)送給外部數(shù)字模擬轉(zhuǎn)換器,進而輸出IQ兩路模擬信號供給調(diào)制器。
解碼器把來自外部模擬數(shù)字轉(zhuǎn)換器的數(shù)據(jù),根據(jù)解碼規(guī)則處理出標簽信息,轉(zhuǎn)給控制狀態(tài)機去控制命令狀態(tài)機,并把需要輸出的數(shù)據(jù)放入FIFO存儲器中緩存,等待外部嵌入式控制器取走。
頻率控制器根據(jù)控制狀態(tài)機的命令,輸出相應命令串驅(qū)動外部頻率合成器產(chǎn)生所需要的射頻載波,再給后級調(diào)制解調(diào)輸出。
FPGA可以并行處理數(shù)據(jù),在控制狀態(tài)機讓命令狀態(tài)機發(fā)送命令或是解碼狀態(tài)機在處理返回信息同時還可以處理接口控制器的事務,把前面緩沖在FIFO存儲器的數(shù)據(jù)通過接口傳給外部嵌入式控制器,外部的嵌入式控制器外掛大容量的SDRAM,其與FPGA之間的SPI通訊接口接口傳送的速率要高于標簽響應速率,所以只要外部嵌入式控制器與FPGA配合好,突發(fā)性地把FIFO存儲器中的緩沖數(shù)據(jù)取走,就能實現(xiàn)基于微控制器的讀寫器無法實現(xiàn)的高反向鏈接頻率下的巨大讀卡容量。
在基于FPGA的讀寫器中,設計為最高640 kHz的反向鏈接頻率時,因為操作的并行性,不同于基于微控制器的指令方式,處理前述標簽標準中的T2參數(shù)沒有任何壓力,同時解碼處理方式是依靠模擬數(shù)字轉(zhuǎn)換器輸入,可以對數(shù)據(jù)先進行濾波再進行邊沿識別,利用相對微控制器更完善的識別判斷手段,提高對弱信噪比信號識別的成功率。而基于微控制器的讀寫器,最高處理反向鏈接速度是320 kHz,速度很快,因為識別代碼指令執(zhí)行需要時間,過短的數(shù)據(jù)間隔導致前面沒處理完成后面新數(shù)據(jù)就到達的狀況,這時數(shù)據(jù)會丟失導致解碼失敗,另外一個性能限制是命令之間時間參數(shù)T2問題,已經(jīng)處理的數(shù)據(jù)沒有充足時間傳給上位機只能先放到RAM中緩存,容量受限。
5 結(jié) 語
在對GB/T 29768與 ISO18000-6C兩種標簽的數(shù)據(jù)結(jié)構(gòu)差異對比分析基礎上,分析了基于微控制器實現(xiàn)讀寫器的局限性和基于FPGA結(jié)構(gòu)的讀寫器實現(xiàn)的優(yōu)越性,當然,后者開發(fā)難度,器件成本、功耗和體積都會有所增加。在應用場合,可以根據(jù)需求,有針對性地采用高性能或是適當降低讀取指標關(guān)注小體積低成本的方案。
參考文獻
[1] ISO/IEC 18000-6:2013 Information technology-Radio frequency identification for item management-Part6:Parameters for air interface communications at 860MHz to 960MHz General [S]
[2] ISO/IEC 18000-63:2013 Information technology-Radio frequency identification for item management-Part63:Parameters for air interface communications at 860MHz to 960MHz TypeC [S]
[3] ISO/IEC 18047-6:2012 Information technology-Radio frequency identification device conformance test methods-Part6:Test methods for air interface communications at 860MHz to 960MHz [S]
[4] GB/T 29768-2013 信息技術(shù) 射頻識別800/900 MHz 空中接口協(xié)議 [S]. 北京:中國標準出版社,2013.
[5] GJB 7377.1-2011 軍用射頻識別空中接口 第一部分:800/900MHz 參數(shù) [S]. 北京:中國標準出版社,2011.
[6] GJB 7382-2011 軍用射頻識別標簽數(shù)據(jù)結(jié)構(gòu)通用要求 [S] . 北京:中國標準出版社,2011.
[7] GJB 7376-2011 軍用射頻識別標簽唯一標識 [S] . 北京:中國標準出版社,2011.
[8] GJB 7380-2011 軍用射頻識別讀寫器通用規(guī)范 [S] . 北京:中國標準出版社,2011.
[9] GJB 7379-2011 軍用射頻識別設備的系統(tǒng)性能測試方法 [S] . 北京:中國標準出版社,2011.
[10]何賓. Xilinx FPGA設計權(quán)威指南[M]. 北京:清華大學出版社,2012.
4 基于FPGA實現(xiàn)的讀寫器解決方案
前面分析了基于微控制器的讀寫器在實現(xiàn)高速盤點大群標簽特別是盤點GB/T 29768標準標簽的困境,如果采用并行操作的FPGA代替指令串行執(zhí)行的微控制器,利用FPGA設計多個并行工作的狀態(tài)機,通過先進先出寄存器就可以在新命令發(fā)出過程中把前面命令獲得的標簽返回數(shù)據(jù)通過接口轉(zhuǎn)移到外部嵌入式控制器,不用進行分群盤點方式就可以實現(xiàn)大容量的記錄處理。
基于FPGA代替微控制器的讀寫器結(jié)構(gòu)框圖如圖4所示,其中FPGA中的控制狀態(tài)機是整個系統(tǒng)的核心,它通過接口控制器、命令狀態(tài)機、解碼狀態(tài)機、頻率控制器、FIFO控制器等部分實現(xiàn)讀卡功能。
圖4 基于FPGA代替微控制器的讀寫器結(jié)構(gòu)框圖
接口控制器包含同步串行接口SPI從控制器,可以使FPGA通過SPI接口與外部嵌入式微控制器通訊,接受嵌入式控制器命令并返回得到的標簽數(shù)據(jù),是對外交互通道。
命令狀態(tài)機根據(jù)控制狀態(tài)機處理的接口命令和解碼狀態(tài)機解調(diào)的信息,把新的命令序列處理成串行數(shù)據(jù)送給外部數(shù)字模擬轉(zhuǎn)換器,進而輸出IQ兩路模擬信號供給調(diào)制器。
解碼器把來自外部模擬數(shù)字轉(zhuǎn)換器的數(shù)據(jù),根據(jù)解碼規(guī)則處理出標簽信息,轉(zhuǎn)給控制狀態(tài)機去控制命令狀態(tài)機,并把需要輸出的數(shù)據(jù)放入FIFO存儲器中緩存,等待外部嵌入式控制器取走。
頻率控制器根據(jù)控制狀態(tài)機的命令,輸出相應命令串驅(qū)動外部頻率合成器產(chǎn)生所需要的射頻載波,再給后級調(diào)制解調(diào)輸出。
FPGA可以并行處理數(shù)據(jù),在控制狀態(tài)機讓命令狀態(tài)機發(fā)送命令或是解碼狀態(tài)機在處理返回信息同時還可以處理接口控制器的事務,把前面緩沖在FIFO存儲器的數(shù)據(jù)通過接口傳給外部嵌入式控制器,外部的嵌入式控制器外掛大容量的SDRAM,其與FPGA之間的SPI通訊接口接口傳送的速率要高于標簽響應速率,所以只要外部嵌入式控制器與FPGA配合好,突發(fā)性地把FIFO存儲器中的緩沖數(shù)據(jù)取走,就能實現(xiàn)基于微控制器的讀寫器無法實現(xiàn)的高反向鏈接頻率下的巨大讀卡容量。
在基于FPGA的讀寫器中,設計為最高640 kHz的反向鏈接頻率時,因為操作的并行性,不同于基于微控制器的指令方式,處理前述標簽標準中的T2參數(shù)沒有任何壓力,同時解碼處理方式是依靠模擬數(shù)字轉(zhuǎn)換器輸入,可以對數(shù)據(jù)先進行濾波再進行邊沿識別,利用相對微控制器更完善的識別判斷手段,提高對弱信噪比信號識別的成功率。而基于微控制器的讀寫器,最高處理反向鏈接速度是320 kHz,速度很快,因為識別代碼指令執(zhí)行需要時間,過短的數(shù)據(jù)間隔導致前面沒處理完成后面新數(shù)據(jù)就到達的狀況,這時數(shù)據(jù)會丟失導致解碼失敗,另外一個性能限制是命令之間時間參數(shù)T2問題,已經(jīng)處理的數(shù)據(jù)沒有充足時間傳給上位機只能先放到RAM中緩存,容量受限。
5 結(jié) 語
在對GB/T 29768與 ISO18000-6C兩種標簽的數(shù)據(jù)結(jié)構(gòu)差異對比分析基礎上,分析了基于微控制器實現(xiàn)讀寫器的局限性和基于FPGA結(jié)構(gòu)的讀寫器實現(xiàn)的優(yōu)越性,當然,后者開發(fā)難度,器件成本、功耗和體積都會有所增加。在應用場合,可以根據(jù)需求,有針對性地采用高性能或是適當降低讀取指標關(guān)注小體積低成本的方案。
參考文獻
[1] ISO/IEC 18000-6:2013 Information technology-Radio frequency identification for item management-Part6:Parameters for air interface communications at 860MHz to 960MHz General [S]
[2] ISO/IEC 18000-63:2013 Information technology-Radio frequency identification for item management-Part63:Parameters for air interface communications at 860MHz to 960MHz TypeC [S]
[3] ISO/IEC 18047-6:2012 Information technology-Radio frequency identification device conformance test methods-Part6:Test methods for air interface communications at 860MHz to 960MHz [S]
[4] GB/T 29768-2013 信息技術(shù) 射頻識別800/900 MHz 空中接口協(xié)議 [S]. 北京:中國標準出版社,2013.
[5] GJB 7377.1-2011 軍用射頻識別空中接口 第一部分:800/900MHz 參數(shù) [S]. 北京:中國標準出版社,2011.
[6] GJB 7382-2011 軍用射頻識別標簽數(shù)據(jù)結(jié)構(gòu)通用要求 [S] . 北京:中國標準出版社,2011.
[7] GJB 7376-2011 軍用射頻識別標簽唯一標識 [S] . 北京:中國標準出版社,2011.
[8] GJB 7380-2011 軍用射頻識別讀寫器通用規(guī)范 [S] . 北京:中國標準出版社,2011.
[9] GJB 7379-2011 軍用射頻識別設備的系統(tǒng)性能測試方法 [S] . 北京:中國標準出版社,2011.
[10]何賓. Xilinx FPGA設計權(quán)威指南[M]. 北京:清華大學出版社,2012.