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

基于USB 3.0的高速數據傳輸接口設計

2020-06-06 06:56:38周晨曦曾國強
計算機測量與控制 2020年5期
關鍵詞:信號設計

周晨曦,曾國強

(成都理工大學 核技術與自動化工程學院,成都 610051)

0 引言

隨著高速數據采集技術的不斷發展,對采集數據的傳輸速度的要求也越來越高。高速數據傳輸方式紛繁復雜,其所能達到的最大傳輸速率也不盡相同。目前使用較多的高速數據傳輸方式主要有PXIE,光纖,PCIE,PCI等,但這些方式幾乎都有布線復雜、程序編寫復雜以及功耗較高,體積龐大等缺點,使得在開發時,由于其布線復雜,程序編寫復雜,在對于電路設計要求較高的同時也不利于后期調試,從而延遲開發周期;在使用時,由于功耗較大,導致能源利用率不高,器件還會發熱,導致接口壽命降低,同時由于體積龐大,在某些狹窄環境下使用不便。而 USB 3.0作為新晉的高速數據傳輸方式,以其布線經濟、安裝簡單、高達5 Gbit/s的帶寬、可支持熱插拔、與更多計算平臺之間存在兼容性等優點,在與計算機交換數據的過程中獲得廣泛應用[1]。但因為各種USB 3.0接口設計所使用的的USB 3.0芯片的不同,使得數據傳輸速率參差不齊,其穩定性也不盡人意,所以在USB 3.0接口設計中,其芯片選型至關重要。

通過調研發現無論是市面上已經開發成功的產品還是各種文獻中提出的設計方法幾乎都采用了CYPRESS公司生產的USB 3.0芯片進行開發。其中使用較多的是CYBUS3014芯片,該芯片采用BAG封裝,在芯片內部集成了ARM9內核,使得功能較為全面。但在硬件設計上,特別是在PCB(Printed Circuit Board.印刷電路板)布線階段由于過孔較多,造成整體結構復雜,從而使得布線較難,大大增加了前期設計與后期調試的工作量與難度。而在信號的傳輸方面,因為其復雜的結構,在信號傳遞過程中會降低信號質量,影響數據的傳輸速度[2-4]。

FTDI公司生產的FT601芯片是一片USB 3.0和FIFO的橋接芯片。在電路設計方面,FT601使用QFN封裝,可以減少其布板時的過孔量,對于PCB布線,硬件調試以及后期的開發的難度都有顯著的降低[3],同時其內部集成了100 MHz的時鐘芯片,在無需提供外部時鐘的同時,還能為主控芯片提供時鐘,保證了主控芯片與FT601的時鐘一致性,從而保證了信號傳輸的質量。在FPGA內部程序編寫上,由于其只有6根主要控制線,大大簡化了有限狀態機的設計,降低程序編寫難度。在性能上,能在保證數據傳輸的質量與速度,對于絕大多數場合來說,其性能能完全滿足需求。

本設計采用FT601芯片作為與PC機通信的芯片,以Intel公司生產的cyclone IV系列的 FPGA芯片作為主控芯片,實現USB 3.0接口設計。

1 硬件電路設計

本設計的硬件電路主要由FT601外圍電路、電源電路以及FPGA控制電路構成,其整體結構如圖1所示。

圖1 USB 3.0接口結構圖

其中FPGA作為控制芯片,其主要由USB 3.0控制器模塊和FIFO模塊構成,實現對FT601芯片的控制,使其向上位機傳輸數據。配置電路主要為FPGA服務,固化程序,方便后期調試和實現脫機工作。電源使用PC機上的USB接口進行供電,電壓為5 V,電源電路主要實現降壓,為PCB板上的各個芯片提供工作電壓。其具體設計方法將在后文進行介紹。

1.1 USB 3.0外圍電路

USB 3.0也被稱為Super-Speed USB,作為新一代“即插即用”通用串行總線規范,USB 3.0繼承于USB 2.0,在原有的4線結構(電源,地線,2條數據線)上,再增加了4條線路,用于接受和傳輸信號,同時采用全雙工模式,簡化了等待引起的時間消耗,提升傳輸速率。同時繼承了USB 2.0可熱插拔性,通用性等的優點的同時其還擁有高達5 Gbps的帶寬和900 mA的供電能力[5]。與大多數數據傳輸方式相比,我們可以在不提供外接電源的情況下對大多數外接設備進行操作使用。在簡化了電路結構的同時還允許設備從不同的待機模式轉入掛起模式的電源管理方式,從而大大節省了能源。

本設計采用了FTDI公司生產的FT601芯片作為USB 3.0接口芯片,該芯片能有效的連接FIFO和USB 3.0, 實現向PC機傳輸數據,同時該芯片能兼容USB 3.0和USB 2.0,在低速數據傳輸或者不支持USB 3.0總線規范的PC機中也能使用,大大增強了其兼容性。FT601芯片內置有16 Kb FIFO數據緩存RAM,與單口RAM、雙口RAM和SRAM等數據緩存RAM相比,其在數據傳輸過程中,數據處理速度更快,傳輸速度更快,并且功耗更低。其內部集成的時鐘芯片在為自身提供100 MHz工作時鐘的同時還能為外部芯片提供100 MHz的高頻時鐘信號,這對于高速數據傳輸十分重要。FT601還具有最高4 Gbps的帶寬,擁有滿足絕大部分的應用需求的能力。FT601芯片結構示意圖如圖2所示[6]。

圖2 FT601芯片結構示意圖

1.2 FPGA控制電路

FPGA芯片以其高集成度,超快處理速度,編程靈活等優點已經成為電子學中的常客,在高速電路方面的更是其它類別的控制芯片不能比擬的。

本設計采用了Intel公司生產的cyclone IV系列的EP4CE6E22C8N芯片作為主控芯片,該芯片采用EQFP封裝,提供了92個用戶編程I/O,共8個bank,完全滿足設計需求[7-9]。通過對FPGA進行編程,從而實現對芯片的控制以及數據的緩存。利用FPGA芯片強大的功能,使得整個電路只需FT601外圍電路,FPGA外圍電路,配置電路以及電源構成,大大簡化了電路。其中FPGA控制電路部分主要包括FPGA配置電路和電源電路。

1.2.1 配置電路

FPGA的配置電路最主要的是時鐘電路的設計,且在高速數據傳輸過程中,時鐘的一致性直接影響了數據傳輸的質量。本設計的時鐘電路有2個時鐘,其一為配置時鐘,為配置FPGA時提供時鐘;其二為數據傳輸時鐘。

針對FPGA芯片在斷電后,其在斷電之前的所有的數據與程序都無法保存的缺點,而采用的M25P16非易失性存儲器(non-volatile memory,縮寫為NVM)存儲PFGA程序,使在系統上電時,M25P16芯片能快速向FPGA導入配置程序。而M25P16芯片的工作時鐘最高為50 MHz[10],所以并不能直接使用FT601芯片所提供的時鐘。由于使用降頻方式對FT601芯片所提供的時鐘進行降頻處理將導致電路的復雜化以及在降頻后可能帶來的時鐘抖動等原因。在FPGA配置時采用低抖動的50 MHz晶振為M25P16與FPGA提供時鐘。而為了保證數據傳輸過程中時鐘的一致性,數據傳輸時鐘由FT601芯片中內部集成的時鐘芯片提供,從而保證數據傳輸的質量。這使得整個系統在保證數據傳輸的質量的同時,還能進行脫機工作。

1.3 電源電路

本設計采用PC機作為供電設備,通過USB 3.0數據線與PC機連接,在對數據傳輸的同時對接口電路中的芯片進行供電。極大的利用了USB 3.0的資源,減少了外部設備的連接。但由于各個芯片的工作電壓不完全相同,且PC機所提供的電源電壓為5 V,所以需要使用降壓芯片對其進行降壓處理。

本設計采用AMS1117系列芯片對電源進行降壓處理。AMS1117系列芯片作為一款高效線性穩壓器,擁有三端可調和固定穩壓的能力,其輸入電壓在3~12 V,最低電壓可以穩壓到1.0 V,線性好,降壓后電壓穩定,且電路設計簡單,有利于簡化電路,在對不同的芯片供電的情況,更加實用。

本設計采用AMS1117-1.2 V芯片提供FPGA芯片所需的內核電壓VCCINT,AMS1117-2.5 V芯片提供輔助電壓VCCA[7,9]。FT601芯片內部集成了LDO1.0 V穩壓器,無需外部降壓芯片,其I/0模塊的供電電壓也支持+1.8 V,+2.5 V,+3.3 V三種電平之多[6]。而FPGA芯片所需要的I/0驅動電壓以及M25P16芯片工作電壓均支持+3.3 V,為了簡化電路的設計,使用AMS1117-3.3 V芯片為上述芯片提供工作電壓電壓。

2 系統軟件設計

軟件設計主要是在quartus II環境下使用Verilog語言對FPGA芯片進行編程設計,實現FPGA對FT601的控制,達到數據傳輸的目的。而控制FT601芯片首先要確定其工作模式,FT601芯片有兩種工作模式: “245” 單通道模式和多通道模式。其中多通道模式可以支持同時4通道數據傳輸,但傳輸速率較慢,而 “245” 單通道模式有更高的傳輸速率。

圖3 數據傳輸過程示意圖

本設計中FT601芯片采用數據傳輸模式為 “245單通道”模式,該接口傳輸數據過程如圖3所示,當PC通過USB 3.0接口向FPGA中傳輸數據時,先將數據緩存在FT601內置的FIFO中,即FIFO RD緩存區,同時FT601向FPGA發送可讀REF_N命令,當FPGA發送 RD_N 命令時,讀出FIFO RD中的數據,其中REF_N表示FIFO RD中至少有1字節的數據可讀,RD_N與REF_N信號均為低電平有效;當FPGA通過USB 3.0接口向PC傳輸數據時,FT601先向FPGA發送TXE_N信號,該信號表示FIFO WR中至少可以寫入1字節的數據,然后FPGA向FT601發送WR_N,先把需要傳輸到PC端的數據緩存在FIFO WR緩存區中,PC端通過發送數據請求信號,從緩存區中讀出數據, TXE_N和WR_N信號均為低電平有效,FIFO WR和FIFO RD緩存區的大小均為8KB×2。時鐘信號CLK是FT601輸出到FPGA控制器的并行FIFO時鐘輸出信號,時鐘頻率可以通過FTDI公司提供配置軟件配置為66 MHz和100 MHz;BE[3:0]是并行FIFO總線字節使能信號,高電平有效,信號OE_N引腳是數據輸出使能信號,低電平有效[6]。

FPGA內部程序設計主要由I/0控制模塊、FIFO控制模塊、有限狀態機模塊和信號模塊組成。

I/0控制模塊主要實現外部端口與內部模塊之間信號的連接,即控制FPGA的I/O接收外部芯片向FPGA所傳輸的數據和信號和向外部芯片發送數據和信號,即 I/O的雙向控制,其功能較為簡單,不再贅述。有限狀態機模塊作為FPGA軟件設計的最重要的一環,其主要功能是控制FPGA內部FIFO(主FIFO)的所有操作,實現其與FT601芯片內部FIFO(從FIFO)的數據傳輸過程;FIFO 控制模塊控制內部FIFO的讀寫操作。信號模塊的設計主要是為了接收外部設備的所傳輸的信號,同時還設計了一個信號發生器,方便測試。

2.1 有限狀態機模塊

有限狀態機模塊主要實現主FIFO讀寫狀態的轉換,其狀態轉換過程如圖4所示。

圖4 有限狀態機狀態轉換示意圖

在狀態轉換過程中,FT601芯片的RD FIFO和WR FIFO的狀態由其輸入信號RXF_N和TXE_N表示。其中,RXF_N信號是FPGA中RD FIFO滿輸出信號,該信號表示FIFO至少有1字節能夠被讀出,當RXF_N為低電平時,只能對RD FIFO進行讀操作; TXE_N信號是發送FIFO空輸出信號,該信號表示從FIFO至少還有1字節的空間能夠被寫入,當TXE_N為低電平時,只能對WR FIFO進行寫操作。FPGA內部FIFO(主FIFO)的狀態由FIFO_FULL和FIFO_EMP兩個指示信號表示。其中,FIFO_FULL信號為1表示主FIFO滿,FIFO_EMP為1表示主FIFO空。

系統復位后,狀態機處于IDLE狀態,當RXF_N信號為0時,且FIFO_FULL信號也為0時,狀態機轉入M_RD狀態,此時FPGA將對FT601內置FIFO(從FIFO)進行讀操作,否則將判斷判斷TXE_N和FIFO_EMP信號。在M_RD狀態下,若RXF_N和FIFO_FULL信號有一個為1,則判斷TXE_N和FIFO_EMP信號,否則狀態機將繼續留著M_RD狀態,FPGA也將繼續對從FIFO進行讀操作。當進入TXE_N和FIFO_EMP信號的判斷,若TXE_N和FIFO_EMP信號均為0,狀態機轉入M_WR狀態,FPGA開始對從FIFO進行寫操作,否則進入IDLE狀態。在M_WR狀態下,若TXE_N和FIFO_EMP信號仍然為0,則狀態機繼續處于WR狀態,FPGA將繼續對從FIFO進行寫操作,否則狀態機轉入IDLE狀態。

有限狀態機的設計,使得整個程序更具有邏輯性,在后續的程序調試中也更容易找出程序中有問題的地方。

2.2 FIFO控制模塊

整個電路的FIFO分為FPGA內部由IP核生成的主FIFO和內置于FT601芯片的從FIFO 兩個部分。FIFO控制模塊主要分為控制主FIFO模塊和從FIFO模塊的數據接收、緩存和發送。主FIFO通過調用quartus II中的IP核生成,其大小為16k,深度為8 192,讀寫的數據寬度為32位[11-12]。主FIFO的所有操作主要由有限狀態機模塊進行控制,實現其與從FIFO的數據傳輸,從FIFO大小為16k,讀寫數據寬度為32位,從FIFO控制模塊主要控制從FIFO的讀寫操作。

2.3 信號模塊

信號模塊分為外部信號接收器和內部信號發生器,其中外部設備信號接收器主要是為了對外部設備所傳輸的信號進行接收,在后續的使用與以后的開發也較為方便。內部信號發生器,主要是為了在調試階段,能實時的通過分析上位機所接收到的2進制數據,從而找到硬件電路設計與軟件程序設計中的問題,同時對計算誤碼率也更為方便。

3 測試與分析

3.1 接口測試

本設計利用用inlet公司所提供的Quartus II集成開發環境,對編寫的FPGA代碼進行綜合、實現之后,使用JTAG配置模式對FPGA芯片進行在線配置,方便對程序進行調試修改,完成后,生成JIC文件,利用主動串行配置模式將JIC文件下載到M25P16中,在完成對FPGA的編程工作的同時達到脫機工作的目的。

對于FT601芯片的配置,主要有兩種方法,一種是通過對芯片引腳電平高低的選擇,來實現對芯片的FIFO時鐘、通道數量以及工作模式進行配置,另一種就是利用FTDI公司所提供的FT60X Chip Configuration Programmer軟件進行配置[6]。本設計采用的配置方式為后一種方式。首先使用USB 3.0連接線將PC與電路連接,利用FT60X Chip Configuration Programmer 軟件對FT601芯片的工作模式以及工作時鐘進行配置。圖5是對FT601芯片進行配置的圖片。本系統中設置FIFO時鐘為100 MHz,工作模式為“245”單通道模式[13]。

圖5 FT601芯片配置圖

在完成對FT601芯片的配置之后,通過FTDI公司提供的上位機程序示例,對所設計的電路以及編寫的FPGA代碼進行測試[14]。測試結果如圖6和圖7所示,其中圖6為寫速度即上位機向FPGA傳輸數據的速度,圖7為FPGA向上位機傳輸數據的速度,從圖中可以看出本設計可以有效的傳輸數據,且無論是FPGA向PC機傳輸數據時還是PC機想FPGA傳輸數據時,其數據傳輸平均速度均能達到350 MB/s。

圖6 接口寫速度測試圖

圖7 接口讀速度測試圖

3.2 結果分析

從電路測試的結果來看,該接口能達到350 MB/s的數據傳輸速率,達到了預先設定的目標,通過計算,該接口能滿足數據采樣率為3 GSPS以下的高速數據采集系統的實時數據傳輸的需求,對于帶有SDDR的數據采集系統則能滿足更高采樣率的數據采集系統的數據傳輸需求。但在進行了多次的FPGA的程序修改以及測試下,仍未達到FT601芯片的數據手冊中所說的最大傳輸速率400 M/s。在通過對結果分析以及對文獻的大量查閱,總結了以下幾點可能原因:

1)硬件電路設計上,對于數據傳輸線的走線未能完全滿足每條數據傳輸線長度相等。

2)元器件對于信號傳輸有延時。FPGA芯片內部邏輯翻轉有延時。

3)測試所使用的PC機性能不夠,接收速率達不到。

但無論是哪種原因,本設計還需不斷的改進,以追求更高的數據傳輸速率。同時在以后的高速電路設計中也應該注意數據傳輸線的長度問題。

4 結束語

本文主要對現有的數據傳輸方式進行介紹,并詳細介紹了USB 3.0數據傳輸方式,設計了基于USB 3.0的高速數據傳輸接口,詳細介紹了硬件電路的設計,數據緩存與傳輸的流程以及有限狀態機的工作方式,并對設計的接口進行了實驗測試與結果分析。測試結果表明,基于FPGA的USB 3.0高速數據傳輸接口設計,在按照要求進行相應配置情況下,能以350 MB/s左右的速度對數據進行傳輸,能滿足大多數的數據傳輸任務。

雖然基于USB 3.0的高速數據傳輸接口設計具有良好的數據傳輸速度與穩定性,但在硬件設計方面還需要進一步的研究以達到更快的傳輸速度。USB 3.0接口與大多數計算機兼容,無論在日常生活上還是在軍事上都具有較強的通用性,對于數據傳輸的應用上也將是今后研究的熱點。而FPGA以其高靈活性、定制性、較強的通用性和擴展性等優點,早已成為電子研究領域中的重要手段,二者結合使得數據傳輸接口體積向小型化微型化發展,同時也更加便于今后進行相應功能擴展和二次開發,使得本設計在高速數據輸出方面擁有更為廣闊的應用前景。

猜你喜歡
信號設計
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
孩子停止長個的信號
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
基于LabVIEW的力加載信號采集與PID控制
一種基于極大似然估計的信號盲抽取算法
主站蜘蛛池模板: 亚洲国产日韩一区| 国产亚洲男人的天堂在线观看| 国产精品流白浆在线观看| 黄色在线不卡| 久久婷婷色综合老司机| 亚国产欧美在线人成| 成人综合在线观看| 国模视频一区二区| 亚洲欧美另类久久久精品播放的| 欧美日韩va| 国产欧美日韩专区发布| 国产婬乱a一级毛片多女| 不卡视频国产| 一级毛片基地| 99免费视频观看| 国产AV无码专区亚洲精品网站| 国产精品毛片一区视频播| 国产自无码视频在线观看| 婷婷伊人五月| 国产一线在线| 日韩成人午夜| 91麻豆国产视频| 亚洲综合专区| 中文字幕在线免费看| 一级毛片免费观看不卡视频| 亚洲免费人成影院| 日韩美毛片| 免费一级无码在线网站| 手机在线免费不卡一区二| 国内精品视频| 又黄又湿又爽的视频| 91精品啪在线观看国产| 一级黄色网站在线免费看| 日本人妻丰满熟妇区| 999国产精品永久免费视频精品久久| 国产97视频在线| 中文无码精品A∨在线观看不卡| 日韩无码黄色| 国产成人在线无码免费视频| 真实国产乱子伦视频| 国产无码网站在线观看| 一本无码在线观看| 国产成人精品亚洲77美色| 91久草视频| 青草娱乐极品免费视频| 国产成人乱码一区二区三区在线| 成人综合网址| 国产在线一区视频| 免费女人18毛片a级毛片视频| 国产成人精品一区二区免费看京| 无码福利视频| 99激情网| 在线亚洲精品福利网址导航| 久久精品中文无码资源站| 国产成人免费高清AⅤ| 午夜视频免费试看| 日韩国产另类| 狼友av永久网站免费观看| 亚洲精品无码在线播放网站| 久996视频精品免费观看| 亚洲国产成人无码AV在线影院L| 四虎国产在线观看| 午夜成人在线视频| 国产精品99一区不卡| 日本a∨在线观看| 亚洲免费人成影院| 日本三级欧美三级| 欧美成人a∨视频免费观看| 久久久受www免费人成| 国产一区二区三区在线观看视频 | 国产成人高清精品免费软件| 精品偷拍一区二区| 国产成人啪视频一区二区三区| 国产精品国产三级国产专业不| 大学生久久香蕉国产线观看 | 欧美亚洲国产精品久久蜜芽| 国产福利一区视频| www.亚洲天堂| 久草国产在线观看| 国产成人精品亚洲日本对白优播| 亚洲—日韩aV在线| 亚洲手机在线|