張孝飛, 趙孔新, 張賽男
(長春工業大學計算機科學與工程學院,吉林長春 130012)
高速脈沖發生器作為現在測試領域中一種重要的測試工具,能夠產生脈沖寬度、脈沖幅度、信號延遲等脈沖參數充分可控的脈沖信號,以滿足特定的測試要求。脈沖頻率、信號延遲調整的精度及分辨率、參數可編程能力和信號功率、脈沖寬度調整的精度和分辨率等方面的因素決定了高速脈沖發生技術的先進性。為了使之具有高速靈活、高精度及高分辨率的特點,文中用Altera公司可編程FPGA芯片以及安森美公司可編程延時芯片和高性能D觸發器來設計。
脈沖發生器的波形模塊設計是由FPGA內部的脈沖/群脈沖產生電路產生脈寬、占空比、脈沖周期、脈沖個數可調的脈沖[1]。考慮到如果只用FPGA內的時序做脈寬調整,而FPGA內部的脈寬調整是通過計數器計數來調整的,調整的頻率是根據當前的周期調整的,這樣就不能滿足高精度的要求,所以考慮用內部計數粗調加外部芯片細調的方法來達到高精度。
通過FPGA內產生上升沿觸發信號和經過粗調加微調產生的下降沿觸發信號送入高性能D觸發器[2]來產生所需要的信號。此方案可以滿足100 MHz脈沖的產生。
為了產生所需要的脈沖,可以利用Verilog HDL語言在FPGA內部編寫單脈沖/群脈沖計數器。在其后面加上一個門控時鐘電路和窄脈沖產生電路,門控時鐘電路能夠抑制毛刺的產生,窄脈沖產生電路能夠是上升沿觸發信號和下降沿觸發信號是窄脈沖,滿足設計的最小脈寬要求。原理框圖如圖1所示。

圖1 單/群脈沖產生電路
圖1中,period[15..0]端是輸入的群脈沖周期;num[15..0]是輸入的群脈沖個數;clk是當前的時鐘輸入端;load是復位端,高電平有效;gate信號是經過模式選擇的使能信號;out是脈沖/群脈沖輸出端[3-5]。
單脈沖的產生是群脈沖產生的一種特殊情況,將群脈沖周期值period[15..0]和脈沖個數num[15:0]值設置成同樣的值時就可以實現。
下面以群脈沖為例介紹單脈沖/群脈沖計數器模塊的工作原理:設置num[15..0]和period[15..0]分別為6和10,gate(en)為1,在pulse模塊的out將會連續輸出6個時鐘周期(clk)的高電平,然后連續輸出4個時鐘周期(clk)的低電平,這樣計數器就計數完一個群脈沖輸出周期,輸出的高低電平通過后面的門控和窄脈沖電路產生窄脈沖信號。仿真結果[6]如圖2所示。

圖2 群脈沖時序仿真圖
圖中,pulse_burst和trigger是設計中觸發模塊的數據輸入,pulse_bursr控制是單脈沖還是群脈沖輸出,trigger是標志脈沖何時開始的。如果把num和period設置相同的數值,則是單脈沖輸出,仿真結果如圖3所示。

圖3 單脈沖時序仿真圖
如果只利用FPGA內的時序邏輯做脈寬調整,而FPGA內部脈寬調整是通過計數器計數的方式實現的,因此,其調整的分辨率就是當前時鐘的周期,例如時鐘頻率為100 MHz[7],此時鐘周期也就是當前時鐘頻率下的分辨率為10 ns,這不能滿足高精度的要求。為了滿足要求,選取安森美公司的可編程延時芯片MC100EP196,MC100EP196的分辨率是10 ps,單片延時最大10 ns,這可以滿足大多數要求。如果僅僅使用可編程延時芯片的話,設計的脈沖是100 MHz,要求脈寬是5 ns~995 μ s[8],這個范圍要求用大量的可編程延時芯片,因此,提出用FPGA+可編程延時芯片來設計脈寬的調整。整體方案如圖4所示。

圖4 脈寬參數調整及電路設計
在設計100 MHz脈沖發生器時,當脈沖高于50 MHz時,脈寬的范圍是10~20 ns。而選用的芯片范圍是10 ns,所以,可以不用FPGA內部編程粗調,直接用兩個延時芯片串聯來調節脈寬的范圍。而當低于50 MHz時,可以用FPGA+可編程延時芯片。粗調部分的編程模塊電路和微調部分電路分別如圖5和圖6所示。

圖5 粗調部分電路圖

圖6 微調部分電路圖
數字脈沖合成電路是通過一個D觸發器實現的,是前面脈沖產生電路產生的經過脈寬粗調、微調產生的上升沿觸發信號和下降沿觸發信號送入到數字合成電路合成最終的數字脈沖信號。數字脈沖合成電路如圖7所示。

圖7 數字脈沖合成電路
數字脈沖合成電路的核心原器件是MC100EP51,具體設計是將MC100EP51的數據端D接LVPECL邏輯高電平,而MC100EP51的差分時鐘輸入端接由前端脈沖產生電路產生的上升沿觸發信號LE+和LE-,其清零端RESET是接由經過脈寬粗調和脈寬微調后的下降沿觸發信號TE+,這樣D觸發器就會在上升沿觸發信號到來時形成數字脈沖的高電平,而在下降沿觸發信號到達清零端時,觸發信號會重新清零形成數字脈沖輸出的低電平,即實現了最終數字脈沖的產成。
目前,脈沖發生器在測試領域占據著主要地位,然而,我國的這項技術比起國外來落后太多,多年來占據這個領域的產品都是國外的產品。所以對此技術的研究具有重大的意義。
[1] 何緒芃,曾發祚.脈沖與數字電路[M].成都:電子科技大學出版社,1995.
[2] 劉勇.數字電路[M].2版.北京:電子工業出版社,2008.
[3] 巴斯克.Verilog HDL入門[M].3版.夏宇聞,譯.北京:北京航空航天大學出版社,2008.
[4] 楊恒.零起點學習單片機與CPLD/FPGA[M].北京:北京航空航天大學出版社,2007.
[5] 陳滿.基于FPGA的高速可變周期脈沖發生器的設計與實現[J].國外電子元器件,2007(3):35-37.
[6] EDA先鋒工作室,吳繼華,王誠,等.Altera FPGA/CPLD設計[J].北京:人民郵電出版社,2005.
[7] 奚俊.脈沖發生器高速時鐘模塊設計[D]:[碩士學位論文].成都:電子科技大學,2008.
[8] 鄭義.高速脈沖發生器信號合成與控制電路設計[D]:[碩士學位論文].成都:電子科技大學,2008.