999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于片上Loopback的FPGA DDR模塊串行測試方法?

2019-03-01 02:51:34張大宇
計算機與數字工程 2019年1期
關鍵詞:信號

王 賀 張大宇 汪 悅 張 松

(中國空間技術研究院 北京 100094)

1 引言

FPGA器件具有高性能、低成本、資源豐富、可重復編程等優點,利用FPGA片上資源設計DDR(Double Data Rate)控制器來實現雙倍速率數據傳輸控制,是高速通信、數據壓縮與信號處理等領域中的常用方法。DDR控制器一般通過FPGA片上的專用DDR模塊和部分通用可編程資源實現,其中DDR模塊是實現雙倍速率數據傳輸的關鍵電路。傳統的DDR模塊測試方法是通過FPGA的IO端口對每個DDR模塊分別施加測試向量并輸出測試結果,因此需要使用大量的測試通道資源,對測試儀器的硬件配置要求較高。

Loopback是高速SERDES(串行器/解串器)電路測試中的常用技術,其原理是將SERDES的輸出端口與輸入端口短接形成反饋回路[11],以實現高速信號的自發自收測試(如圖1所示)。

從實現方式上看,Loopback分為片外的Loopback與片上的loopback兩種形式。其中片外Loopback需要通過測試 DIB(Device Interface Board)硬件上的物理線路實現Loopback環路(圖1中實線)[13]。相比而言,片上Loopback對DIB硬件設計幾乎沒有要求,但需要電路在設計時內部預留了Loopback環路(圖1中虛線)[12]。

IOB電路是FPGA上的雙向可編程IO端口模塊,其信號傳輸方向可通過程序進行控制。利用IOB中的IOBUF可以構建DDR模塊的片上Loopback環路,將大量DDR模塊在FPGA器件內部串聯成鏈進行測試,從而有效減少測試所需配置次數及IO通道數量。

2 DDR模塊特點

DDR模塊位于Virtex FPGA的Select IO資源中,數量與FPGA的IO端口數量相同,每個DDR模塊包括IDDR與ODDR兩部分[2]。

2.1 IDDR模塊

IDDR是用于FPGA輸入的雙倍數據速率模塊,其原語的原理圖如圖2所示[3]。

圖2 IDDR原語原理圖

對于IDDR模塊端口功能的說明如表1所示。

表1 IDDR端口功能說明

為適應不同應用接口需求,IDDR模塊支持三種工作模式,分別是反相模式(OPPOSITE_EDGE),同相模式(SAME_EDGE)與流水線模式(SAME_EDGE_PIPELINED),三種模式的主要區別在于Q1、Q2端口輸出數據的時序存在一定差異。其中,OPPOSITE_EDGE模式是在時鐘C的上升沿與下降沿分別進行數據采樣,輸出信號Q1與Q2與時鐘C的上升沿與下降沿同步變化;SAME_EDGE模式則通過增加額外的下降沿采樣觸發器將Q1、Q2的輸出都與時鐘C的上升沿同步起來,但Q1、Q2之間存在一個時鐘周期的相位差;SAME_EDGE_PIPELINED則通過增加額外的流水線寄存器將Q1、Q2的數據輸出進行同步,且都對應于時鐘C的上升沿[5]。

IDDR模塊3種工作模式的具體時序差異如圖3所示。

圖3 IDDR三種模式功能示意圖

2.2 ODDR模塊

ODDR(Output DDR)是用于FPGA輸出的雙倍數據速率模塊,其原語的原理圖如圖4所示。

圖4 ODDR原語的原理圖

對于ODDR模塊端口功能的說明如表2所示。

表2 ODDR端口功能說明

與IDDR模塊不同,ODDR模塊僅支持反相(OPPOSITE_EDGE)與同相模式(SAME_EDGE)2種工作模式,具體輸出信號時序特點與IDDR類似,如圖5所示。

圖5 ODDR兩種模式功能示意圖

3 DDR模塊測試電路設計

3.1 并行測試結構問題分析

傳統的DDR模塊一般采用并行測試結構,如圖6所示[15]。

圖6 并行測試方案

并行測試電路的特點是對每一個IO端口的DDR模塊功能分別進行檢測,代價是需要使用大量的測試儀通道來覆蓋FPGA的全部IO端口。此外,IDDR模塊測試需要使用2倍于被測DDR模塊數量的FPGA IO來輸出測試結果(Q1[0..n]、Q2[0..n]),造成每次配置只能完成不足1/3的IDDR模塊測試。

以具有850個IO的某Virtex FPGA為例[4],覆蓋IDDR與ODDR的全部工作模式測試需要850個測試通道并進行至少16次配置[10],具體分布如表3所示。

表3 某FPGA DDR測試所需配置數量

3.2 基于片上Loopback的串行測試電路設計

從功能上看,DDR模塊實際等價于簡化的SERDES電路,其中ODDR相當于2并1的串行器,IDDR相當于1分2的解串器,因此可以將ODDR與IDDR組合起來按照Loopback的思路進行測試。但是,由于ODDR的輸出與IDDR的輸入端口在物理上不存在可編程互聯線路,因此無法在HDL程序設計時直接連接,必須借助IOB模塊來實現Loopback。

圖7 IOB基本結構

某Virtex系列FPGA的IOB模塊基本結構如圖7所示,其中輸入端口O與ODDR的輸出Q相連,輸出端口I與IDDR的輸入D相連。因此,通過圖7中加粗的線路(包括2兩個驅動器IBUF與OBUF)可以實現ODDR與IDDR的片上Loopback環路。

圖8 片上Loopback測試電路結構

基于IOB構建的DDR模塊片上Loopback串行測試電路結構如圖8所示,對其說明如下:

1)串聯測試線路由“位于鏈首的Din端口IDDR、位于鏈中的n個Select IO和位于鏈尾的Dout端口ODDR”組成,串接的Select IO數量由具體器件的封裝引腳數量決定;

2)每個Select IO內部形成一條Loopback環路,n個Select IO在FPGA內部串聯成鏈,上一級Select IO IDDR的兩個輸出端口(Q1[i]和Q2[i])連到下一個Select IO ODDR的對應輸入端口上;

3)全部IDDR與ODDR模塊的時鐘clk_iddr、clk_oddr、使能CE、復位R(或置位S)由FPGA IO統一提供,Din與Dout各占用一個IO端口。

4)每條片上Loopback串行測試鏈路需要6個FPGA IO作為測試輔助端口,覆蓋全部DDR模塊至少需要12個FPGA IO并進行6次配置[8],如表4所示(仍以850個IO的Virtex FPGA為例)。

表4 某FPGA DDR測試所需配置數量

由于Loopback串行測試電路交叉使用了IDDR與ODDR兩種模塊,因此每個測試電路都需要進行3次配置,以覆蓋IDDR與ODDR的不同工作模式,具體組合方式按表5進行。

表5 串行測試組合方案

由于IDDR的SAME_EDGE與SAME_EDGE_PIPELINED兩種模式僅在Q1端口輸出信號上相差一個時鐘周期,因此在進行SAME_EDGE(分組3)測試時,可以將圖8測試電路中的IDDR與ODDR之間插入一個D觸發器(如圖9所示,其中IDDR與DFF共用時鐘信號),這樣就可將其轉化為SAME_EDGE_PIPELINED(分組2)模式進行測試。

圖9 IDDR SAME_EDGE測試電路

3.3 功能仿真驗證

綜合分析圖8串行Loopback測試電路結構與表5中DDR模塊工作模式組合可以得出:

1)圖8測試電路的輸出Dout應落后輸入Din n個信號傳遞周期,并在第n+1個信號傳遞周期的clk_oddr上升沿開始變化,其中n為測試電路中串聯的Select IO數量。

2)表5分組1(OPPOSITE_EDGE模式)的每個信號傳遞周期由1個clk_iddr脈沖與1個clk_oddr脈沖組成;分組2(SAME_EDGE_PIPELINED模式)的每個信號傳遞周期由2個clk_iddr脈沖與1個clk_oddr脈沖組成;分組3按圖9設計后功能同分組2。

為便于分析,仿真中設定測試電路中串接的Select IO數量為10,分組1仿真波形如圖10所示;分組2、3仿真波形如圖11所示[6]。從波形狀態可以看出,仿真結果與設計功能一致。

圖10 OPPOSITE_EDGE模式仿真波形

圖11 SAME_EDGE_PIPELINED模式仿真波形

4 基于ATE的自動化測試

DDR模塊測試需要對FPGA進行6次配置,為提高效率,本文基于ATE搭建自動化測試平臺,ATE型號為美國Teradyne的UltraFLEX系統[7]。

基于ATE的FPGA自動化測試包括位流配置與功能測試兩部分,分別需要使用配置向量與測試向量[14]。其中測試向量可以參考圖10與圖11仿真波形編寫,配置向量則需要通過軟件轉換產生,具體方法如下[9]:

UltraFLEX系統使用“*.pat”格式的二進制向量文件,它是由“*.atp”格式的文本向量文件經Pattern Complier軟件編譯后產生,而“*.atp”文件可由ISE軟件生成的“*.rbt”文本位流文件經轉換后得到。

圖12 rbt位流文件

“*.rbt”位流文件內容如圖12所示,從第8行開始為FPGA有效配置位流,每行由32個數據組成,對應SelectMap x32的數據總線D[31:0],但順序并非按從高到低排列,而是以字節為單位按從低到高順序排列,因此需要按Xilinx配置指南中要求進行“Bit定序”轉換后才能使用[1],轉換方法如表6所示。

表6 Bit定序對應關系(SelectMap x32)

此外,“*.rbt”文件中只提供了SelectMap配置所需的數據總線信號,用于ATE配置還需在向量文件中補充必要的控制信號(CCLK、CSI_B、PROGRAM_B與RDWR_B)及TimeSet信息。最終轉換出的“*.atp”向量文件如圖13所示。

圖13 atp向量文件

5 結語

本文利用FPGA IOB中的IOBUF資源構建了測試環路,設計了一種結構簡潔、占用資源少、便于移植的DDR模塊片上Loopback串行測試方法,并在ATE上進行了測試驗證。與傳統并行測試方法相比,本文所述方法僅需使用12路測試儀通道與FPGA IO端口,同時將覆蓋全部DDR模塊測試所需的配置次數從16次減少到6次,可用于Virtex系列或其他類似結構FPGA的DDR模塊測試。

猜你喜歡
信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
7個信號,警惕寶寶要感冒
媽媽寶寶(2019年10期)2019-10-26 02:45:34
孩子停止長個的信號
《鐵道通信信號》訂閱單
基于FPGA的多功能信號發生器的設計
電子制作(2018年11期)2018-08-04 03:25:42
基于Arduino的聯鎖信號控制接口研究
《鐵道通信信號》訂閱單
基于LabVIEW的力加載信號采集與PID控制
Kisspeptin/GPR54信號通路促使性早熟形成的作用觀察
主站蜘蛛池模板: 制服丝袜在线视频香蕉| 欧美啪啪视频免码| 国产精品密蕾丝视频| 伊人久久综在合线亚洲91| 国产一级小视频| 成人国产小视频| 欧美精品亚洲精品日韩专区va| 久久性视频| 国产免费网址| 免费观看欧美性一级| 成人福利一区二区视频在线| 日本欧美在线观看| www.亚洲色图.com| 91视频精品| 亚洲AⅤ无码国产精品| 91精品视频网站| 波多野结衣视频网站| 视频一区亚洲| 在线无码av一区二区三区| 欧美成人二区| 国产成人综合亚洲欧美在| 不卡的在线视频免费观看| 国产黄色片在线看| 国产不卡网| 99热国产在线精品99| 91久久偷偷做嫩草影院电| 91毛片网| 欧美人人干| 日韩精品免费一线在线观看| 午夜欧美在线| 激情亚洲天堂| 国产精品网址在线观看你懂的| 国产一区三区二区中文在线| 无码电影在线观看| 91系列在线观看| 亚洲精品无码人妻无码| 欧美精品不卡| 人妻无码中文字幕一区二区三区| 亚洲精品国产综合99久久夜夜嗨| 亚洲综合久久一本伊一区| 午夜毛片免费看| 国产成人无码久久久久毛片| 亚洲精品成人7777在线观看| 欧美在线视频不卡第一页| 国产成人免费视频精品一区二区| 国产综合无码一区二区色蜜蜜| 欧美激情视频二区| 欧美成人日韩| 丰满人妻久久中文字幕| 欧美一级一级做性视频| 制服丝袜亚洲| 亚洲天堂成人| 成人免费午夜视频| 亚洲免费福利视频| 尤物亚洲最大AV无码网站| 国产在线视频导航| 国产精品无码AⅤ在线观看播放| 午夜日b视频| 精品国产三级在线观看| 五月天香蕉视频国产亚| 1769国产精品视频免费观看| 国产69精品久久久久妇女| 九九热免费在线视频| 日韩成人免费网站| 99久久精品美女高潮喷水| 国产v精品成人免费视频71pao| 成人噜噜噜视频在线观看| 国产色婷婷| 中文字幕中文字字幕码一二区| 99福利视频导航| 日本免费精品| 午夜国产精品视频| 亚洲国产精品人久久电影| 成人无码一区二区三区视频在线观看| 夜夜爽免费视频| 国产区在线看| 色婷婷亚洲综合五月| 伊人久久大香线蕉aⅴ色| 国产性生交xxxxx免费| 精品久久香蕉国产线看观看gif| 18禁黄无遮挡网站| 国产精品区视频中文字幕|