国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FPGA的皮秒計(jì)數(shù)設(shè)計(jì)*

2016-05-04 02:09:38唐海峰趙建軍吳光敏吳亞平
新技術(shù)新工藝 2016年1期
關(guān)鍵詞:現(xiàn)場(chǎng)可編程門(mén)陣列原語(yǔ)倍頻

唐海峰,趙建軍,吳光敏,吳亞平,趙 恩

(昆明理工大學(xué) 理學(xué)院,云南 昆明 650500)

?

基于FPGA的皮秒計(jì)數(shù)設(shè)計(jì)*

唐海峰,趙建軍,吳光敏,吳亞平,趙恩

(昆明理工大學(xué) 理學(xué)院,云南 昆明 650500)

摘要:在實(shí)際的現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)設(shè)計(jì)中,對(duì)納秒以下的時(shí)間計(jì)數(shù)至今沒(méi)有很好的方法進(jìn)行處理。在以往的FPGA實(shí)現(xiàn)中,往往采用官方提供的DCM或PLL對(duì)時(shí)鐘信號(hào)進(jìn)行倍頻處理。上述方法由于受到硬件資源的約束,用戶不能隨心所欲地對(duì)時(shí)鐘信號(hào)進(jìn)行多次處理,原因在于器件內(nèi)部的DCM有限。提出了以IODELA原語(yǔ)為基礎(chǔ)的方法進(jìn)行時(shí)間計(jì)數(shù)設(shè)計(jì),采用Verilog HDL硬件描述語(yǔ)言對(duì)皮秒進(jìn)行計(jì)數(shù)操作,以Xilinx官方的Zedboard開(kāi)發(fā)板和Virtex5開(kāi)發(fā)板、以IODELAY原語(yǔ)與IDELAY原語(yǔ)為基礎(chǔ)對(duì)納秒以下的時(shí)間進(jìn)行操作。經(jīng)過(guò)功能仿真與板級(jí)驗(yàn)證,成功地實(shí)現(xiàn)了對(duì)于75 ps~4 ns(主頻250 MHz的頻率)的高精度計(jì)數(shù)功能。皮秒計(jì)數(shù)的實(shí)現(xiàn),對(duì)于時(shí)間測(cè)量電路中細(xì)時(shí)間(主頻頻率<4 ns的時(shí)間,即75 ps~4 ns的時(shí)間)的生成,以及對(duì)于進(jìn)行FPGA納秒級(jí)別以下的時(shí)鐘操作產(chǎn)生了巨大且深遠(yuǎn)的作用。目前,該單元已經(jīng)成功地應(yīng)用在了時(shí)間測(cè)量電路的設(shè)計(jì)上。

關(guān)鍵詞:現(xiàn)場(chǎng)可編程門(mén)陣列;原語(yǔ);皮秒計(jì)數(shù);功能仿真;倍頻

現(xiàn)場(chǎng)可編程門(mén)陣列(Field-Programmable Gate Array, FPGA)中使用的晶振為MHz頻率,時(shí)鐘周期即為ns級(jí)別。在FPGA中要完成對(duì)一個(gè)信號(hào)的倍頻只能利用IP核對(duì)其進(jìn)行倍頻操作,而沒(méi)有辦法像分頻處理一樣利用Verilog/VHDL代碼對(duì)它直接進(jìn)行操作[1];但是在FPGA中資源是有限的,PLL/DCM的IP核也是有限的,并不能一直對(duì)其進(jìn)行隨意次的倍頻操作。本設(shè)計(jì)利用Xilinx公司提供的原語(yǔ)直接對(duì)FPGA進(jìn)行ps級(jí)別的操作,完成了直接利用代碼進(jìn)行源時(shí)鐘的倍頻操作,根據(jù)需求的不同可以最大倍頻到75 ps。倍頻范圍為75 ps至主頻時(shí)鐘。

1基于Zedboard開(kāi)發(fā)板的皮秒計(jì)數(shù)設(shè)計(jì)

Zedboard開(kāi)發(fā)板是近年Xilinx公司推出的產(chǎn)品。該開(kāi)發(fā)板采用Xilinx 7系列芯片XC7Z020封裝為CLG484,等級(jí)速度為-1。Zedboard具有2個(gè)ARM9的硬核,用戶可以單獨(dú)對(duì)FPGA進(jìn)行設(shè)計(jì),也可以與ARM進(jìn)行協(xié)同設(shè)計(jì)[2]。在視頻處理、電動(dòng)機(jī)控制和以太網(wǎng)通信等方面得到了廣泛的應(yīng)用。Zedboard開(kāi)發(fā)板的實(shí)物圖如圖1所示,本設(shè)計(jì)因?yàn)橹贿M(jìn)行FPGA操作而不需要用到ARM,所以應(yīng)將JP7、JP8、JP9、JP10和JP11接到低電平,JP3和JP6不接短路帽[3]。

圖1 Zedboard開(kāi)發(fā)板實(shí)物圖

在Xilinx官方提供的用戶手冊(cè)上可以找到關(guān)于IDELAY原語(yǔ)的介紹。在Artix 7系列芯片中,每個(gè)用戶I/O管腳的輸入通路都有一個(gè)IDELAY模塊。IDELAY具有可控制31個(gè)抽頭延遲線,每個(gè)抽頭的延遲為75 ps,且與進(jìn)程、電壓和溫度特性無(wú)關(guān)。IDELAY原語(yǔ)的RTL模塊圖如圖2所示。

圖2    IDELAY原語(yǔ)RTL模型

在圖2中,端口I為來(lái)自于IOB的串行輸入數(shù)據(jù)的單比特輸入信號(hào),其中,端口I應(yīng)由外部信號(hào)輸入,不能由FPGA自身產(chǎn)生的信號(hào)作為I口的輸入。簡(jiǎn)單而言,就是在頂層模塊端口I應(yīng)為input。輸入C端口為時(shí)鐘輸入信號(hào)。INC端口用于增加或減少延遲抽頭數(shù)。CE端口為是否能使延遲抽頭數(shù)量增加或減少的功能。RST端口為復(fù)位延遲鏈的延遲抽頭數(shù)。O端口為單比特輸出信號(hào)。IDELAY具有3種操作:1)零保持時(shí)間延遲模式(IDELAY_TYPE = DEFAULT),在沒(méi)有DCM的情況下使用全局時(shí)鐘采集數(shù)據(jù),用這種延時(shí)單元提供“非正保持時(shí)間”;2)固定延遲模式(IDELAY_TYPE = FIXED),通過(guò)屬性值IDELAY_VALUE確定tap數(shù)從而確定延遲時(shí)間;3)可變延遲模式(IDELAY_TYPE = VARIABLE),通過(guò)控制信號(hào)CE和INC來(lái)改變延遲時(shí)間。本文采用固定延遲模式IDELAY = FIXED來(lái)進(jìn)行75 ps的計(jì)數(shù)。由于采用的時(shí)鐘頻率為2 ns,所以本文要到達(dá)由75 ps~2 ns的計(jì)數(shù),設(shè)定IDELAY_VALUE的值為i,其中i值為0~26,當(dāng)i為26時(shí),計(jì)數(shù)到1 950 ps。對(duì)IDELAY進(jìn)行完例化后,根據(jù)用戶手冊(cè)的要求還應(yīng)對(duì)原語(yǔ)IDELAYCTRL進(jìn)行例化。IDELAYVTRL原語(yǔ)的RTL模型如圖3所示。

圖3    IDELAYCTRL原語(yǔ)的RTL模型

在圖3中,RST端口為復(fù)位端口,當(dāng)RST為高時(shí),開(kāi)始工作,REFCLK提供了一個(gè)參考時(shí)鐘,校準(zhǔn)IDELAY模塊在同一時(shí)鐘區(qū)域。RDY端口表示在特定區(qū)域的IODELAY模塊準(zhǔn)備就緒。在例化中RST置為高,其他2管腳懸空。完成上述所有設(shè)計(jì)后,應(yīng)用Modelsim軟件對(duì)其仿真產(chǎn)生波形(見(jiàn)圖4)。

由圖4可以觀察到第1位比第0位滯后75 ps,第2位比第1位滯后75 ps,依次類(lèi)推直到第26位。

2基于Virtex5開(kāi)發(fā)板的皮秒計(jì)數(shù)設(shè)計(jì)

Virtex5開(kāi)發(fā)板屬于Xilinx公司Virtex系列芯片,XC5VLX50T封裝為ff1136,等級(jí)速度為-1。此款開(kāi)發(fā)板并沒(méi)攜帶硬核只能單獨(dú)進(jìn)行FPGA的設(shè)計(jì),但這個(gè)開(kāi)發(fā)板的IOB資源比Zedboard開(kāi)發(fā)板資源多。采用時(shí)鐘頻率為250 MHz,所以要到達(dá)75 ps~4 ns的設(shè)計(jì)要求。Virtex5開(kāi)發(fā)板的實(shí)物圖如圖5所示。

圖5 Virtex5開(kāi)發(fā)板實(shí)物圖

根據(jù)Xilinx官方提供的Virtex5系列的用戶手冊(cè),可以觀察到IODELAY的原語(yǔ)介紹,V5開(kāi)發(fā)板并沒(méi)有IDELAY的原語(yǔ)。其中,IODELAY原語(yǔ)相對(duì)于IDELAY原語(yǔ)而言,多了一種配置方式,可以將IODELAY配置成ODELAY的方式進(jìn)行延遲,其余的和IDELAY的無(wú)太大差別。在ODELAY的方式下,輸入管腳不再必須由外端輸入,可以由FPGA內(nèi)部的信號(hào)產(chǎn)生。在工程量很大的情況下,大大減少了外接輸入管腳的麻煩。IODELAY原語(yǔ)的RTL模型如圖6所示。

圖6 IODELAY原語(yǔ)的RTL模型

在圖6中,IDATAIN為來(lái)自IOB的IODELAY數(shù)據(jù)輸入信號(hào),ODATAIN為來(lái)自O(shè)SERDES/OLOGIC的IODELAY模式的輸入信號(hào),DATAIN為FPGA內(nèi)部資源的IODELAY數(shù)據(jù)輸入。DATAOUT為經(jīng)過(guò)IODELAY延遲后的輸出數(shù)據(jù)。T端口可以控制IODELAY是作為IDELAY模式還是作為ODELAY模式。CE為啟動(dòng)遞增或遞減功能。INC為T(mén)ap延遲的遞增/遞減數(shù)。RST將IODELAY單元復(fù)位到預(yù)設(shè)定值。C為可變模式下使用的時(shí)鐘輸入。IODELAY仍選擇固定延遲模式,由ODATAIN進(jìn)行信號(hào)的輸入。在ODELAY模式下可以不必例化IDELAYVTRL原語(yǔ)。利用Modelsim進(jìn)行仿真后與圖4完全一樣。其中,應(yīng)注意在ODELAY模式下輸出DATAOUT端口在頂層模塊中應(yīng)作為輸出端口[4]。

3對(duì)原語(yǔ)延遲后進(jìn)行優(yōu)化處理

由圖4可以清楚地看出,后一位數(shù)據(jù)相對(duì)于前一位數(shù)據(jù)延遲了75 ps。利用后一位與前一位相異或處理,可以得到波形(見(jiàn)圖7)[5-6]。

圖7 進(jìn)過(guò)優(yōu)化后的皮秒計(jì)數(shù)

在圖7中可以清楚地看到,時(shí)鐘信號(hào)被分為了M等份,相當(dāng)于把時(shí)鐘信號(hào)倍頻了M等份,清楚表現(xiàn)了納秒以下的時(shí)鐘操作。

4總結(jié)

本文基于Zedboard和V5開(kāi)發(fā)板進(jìn)行了納秒以下時(shí)間的計(jì)數(shù),提出了一種基于原語(yǔ)的方式進(jìn)行皮秒計(jì)數(shù)的一種方式,為T(mén)DC等許多方面的設(shè)計(jì)提供了一種參考。本文完成了納秒級(jí)別以下的計(jì)數(shù),為很多FPGA無(wú)法處理皮秒時(shí)鐘提供了參考。

參考文獻(xiàn)

[1] 張澤,劉慧慧,田濤,等. 基于Verilog的FPGA整數(shù)分頻器設(shè)計(jì)[J]. 北京:新技術(shù)新工藝,2015(4):40-42.

[2] 陸佳華,潘祖龍,彭競(jìng)宇. 嵌入式系統(tǒng)軟硬件協(xié)調(diào)設(shè)計(jì)實(shí)戰(zhàn)指南[M]. 北京:機(jī)械工業(yè)出版社,2014.

[3] 何賓. Xilinx All Programmable Zynq-7000 SOC設(shè)計(jì)指南[M]. 北京:清華大學(xué)出版社,2013.

[4] 何賓. Xilinx可編程邏輯器件設(shè)計(jì)技術(shù)詳解[M]. 北京:清華大學(xué)出版社,2010.

[5] 夏宇聞. Verilog數(shù)字系統(tǒng)設(shè)計(jì)交叉[M]. 北京:北京航空航天大學(xué)出版社,2013.

[6] 宋建. 基于Fpga的精密時(shí)間-數(shù)字轉(zhuǎn)換電路研究[D]. 合肥:中國(guó)科學(xué)技術(shù)大學(xué),2007.

* 國(guó)家自然基金資助項(xiàng)目(11103069)

責(zé)任編輯彭光宇

Picosecond Counting Design Based on FPGA

TANG Haifeng, ZHAO Jianjun, WU Guangmin, WU Yaping, ZHAO En

(Kunming University of Science and Technology, Kunming 650500, China)

Abstract:In the actual FPGA design, there are not very good methods for counting under nanosecondtime. The implementation of the clock signal frequency doubling is usually used in official DCM or PLL.Due to the constraints of the hardware resources, the above method could not make the user deal with the clock signal for many times in free.The reason is that the numbers of DCM are limited in the internal device. Put forward a method to design time count based on the IODELA. Use hardware description language of Verilog HDL to count picosecond. Operate under nanosecond time based on IODELAY primitive and IDELAY primitive with Xilinx official Zedboard development board and Virtex5 development board. Propose a method of counting under nanosecond time based on primitive. Through the function simulation and board level validation, it is successful in implementation for 75 ps to 4 ns (main frequency 250 MHZ frequency) of high precision counting function. Implementation of picosecond count is very important for time measurement circuit of fine time (frequency frequency under 4 ns time is that time of the 75 ps to 4 ns), as well as for the FPGA nanosecond level below the clock operation. At present, the unit has been successfully used in the design of time measurement circuit.

Key words:field programmable gate array, primitive, picosecond count, functional simulation, frequency doubling

收稿日期:2015-06-23

通信作者:趙建軍

作者簡(jiǎn)介:唐海峰(1988-),男,碩士研究生,主要從事嵌入式等方面的研究。

中圖分類(lèi)號(hào):TN 40

文獻(xiàn)標(biāo)志碼:A

猜你喜歡
現(xiàn)場(chǎng)可編程門(mén)陣列原語(yǔ)倍頻
測(cè)試原語(yǔ):存儲(chǔ)器故障最小檢測(cè)序列的統(tǒng)一特征
密碼消息原語(yǔ)通信協(xié)議介紹及安全分析
D—BLAST基帶系統(tǒng)的FPGA實(shí)現(xiàn)研究
一種千兆以太網(wǎng)SerDes 接口與電接口的轉(zhuǎn)換方法
基于LBO晶體三倍頻的激光實(shí)驗(yàn)系統(tǒng)的研究
脈沖單頻Nd∶YVO4激光器及其倍頻輸出特性研究
基于FPGA的顏色識(shí)別觸摸屏系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
Q開(kāi)關(guān)倍頻Nd:YAG激光治療激素依賴(lài)性皮炎療效觀察
基于原語(yǔ)自動(dòng)生成的安全協(xié)議組合設(shè)計(jì)策略及應(yīng)用研究
應(yīng)用級(jí)聯(lián)倍頻方法提高倍頻系統(tǒng)輸出穩(wěn)定性研究
宜丰县| 奎屯市| 太湖县| 宿松县| 公主岭市| 榆林市| 铅山县| 密云县| 获嘉县| 四平市| 屯昌县| 富平县| 融水| 怀来县| 景德镇市| 平乐县| 都江堰市| 台中县| 拉萨市| 兴海县| 彭阳县| 贡觉县| 洪湖市| 娄烦县| 宜川县| 济南市| 西城区| 双桥区| 宁阳县| 从江县| 正蓝旗| 县级市| 伊春市| 兴文县| 张家口市| 平顶山市| 遂宁市| 马尔康县| 两当县| 平凉市| 芮城县|