<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 利用FPGA實(shí)現外設通信接口之: 利用FPGA實(shí)現A/D、D/A轉換器接口

利用FPGA實(shí)現外設通信接口之: 利用FPGA實(shí)現A/D、D/A轉換器接口

作者: 時(shí)間:2017-06-05 來(lái)源:網(wǎng)絡(luò ) 收藏

10.5利用實(shí)現A/D、D/A

10.5.1A/D、D/A的特點(diǎn)

A/D、D/A轉換器是系統設計中的常用器件,經(jīng)常用來(lái)實(shí)現模擬信號和數字信號的相互轉換。根據應用場(chǎng)合的不同,A/D、D/A轉換芯片的性能指標參數差別比較大,因此接口格式也無(wú)法統一。

本文引用地址:http://dyxdggzs.com/article/201706/348805.htm

10.5.2A/D、D/A的實(shí)現方法

1.標準接口的A/D、D/A轉換器與的接口設計

在一些典型的應用領(lǐng)域,需要處理的信號單一,芯片廠(chǎng)家設計的芯片一般會(huì )遵循一些行業(yè)標準接口。例如音頻信號處理領(lǐng)域,很多廠(chǎng)家的音頻A/D、D/A轉換芯片都支持SPI接口。

FPGA實(shí)現這些標準的接口,如SPI接口,可以通過(guò)網(wǎng)絡(luò )或者FPGA廠(chǎng)家獲得一些參考代碼。FPGA芯片的生產(chǎn)廠(chǎng)家會(huì )在其開(kāi)發(fā)工具軟件里面集成一些常用接口的IP核,設計者可以免費使用,降低了開(kāi)發(fā)難度。

另外,有一些開(kāi)源的網(wǎng)站,如http://www.opencores.org等,也提供了免費的接口IP核的源代碼下載服務(wù)。設計者可以下載代碼后,經(jīng)過(guò)仿真驗證或者適當修改后,應用到自己的系統中去。

2.特殊接口的A/D、D/A轉換器與FPGA的接口設計

還有很多信號處理領(lǐng)域,如通信系統設計領(lǐng)域,需要處理的信號很復雜。這種情況下,A/D、D/A的芯片廠(chǎng)家一般會(huì )根據處理的精度和采樣的速度要求來(lái)設計接口時(shí)序。

設計者要根據廠(chǎng)家提供的芯片手冊給出的時(shí)序來(lái)設計接口。

有些高速的A/D或者D/A芯片會(huì )采用LVDS差分信號電平標準。這樣的情況下,FPGA的管腳也要采用對應的LVDS模式。

需要注意的是,FPGA上每一組LVDS管腳是成對出現的,不是任意分組的。而且,如果一個(gè)BANK被設定為L(cháng)VDS,那么這個(gè)BANK的所有管腳都是LVDS模式的。

10.5.3AD/DA轉換器接口的注意事項

1.選擇正確的時(shí)鐘采樣邊沿

對于一個(gè)邊沿采樣的數據采集模塊,經(jīng)常需要確定采用上升沿還是下降沿來(lái)采樣數據。那么,選擇的依據就是保證數據采樣的穩定、可靠。

為了保證同步,FPGA的采樣時(shí)鐘一般采用A/D轉換芯片的輸出時(shí)鐘,這個(gè)時(shí)鐘和數據是同步的。這個(gè)時(shí)鐘和數據的關(guān)系與A/D轉換芯片的具體型號有關(guān)。

圖10.20A/D芯片的部分輸出信號時(shí)序關(guān)系

例如,在如圖10.20所示的時(shí)序圖中,每當時(shí)鐘的上升沿數據產(chǎn)生變化。那么這樣的情況下,在時(shí)鐘的下降沿的時(shí)候,數據是最穩定的,適合采樣。

2.選擇適合的同步頭檢測方法

A/D芯片的輸出數據一般都是打包數據,以數據幀的格式輸出。數據幀的同步格式分為兩種:。

圖10.21A/D芯片的部分輸出信號時(shí)序關(guān)系

:是指除了時(shí)鐘和數據信號外,還有同步指示信號。同步指示信號可以是脈沖信號,指示一幀有效數據的開(kāi)始;也可以是電平信號,指示一幀有效數據的持續時(shí)間。

:是指輸出信號中只有時(shí)鐘和數據信號,同步頭隱藏在數據之中,如表10.7所示是ITU656標準的數字視頻信號。

表10.7 ITU656標準的數字視頻信號

幀結構

BlankingPeriod

80

10

TimingReferenceCode

FF

00

00

SAV

720PixelsYUV4:2:2Data

Cb0

Y0

Cr0

Y1

Cb2

Y2

Cr718

Y719

TimingReferenceCode

FF

00

00

EAV

BlankingPeriod

80

10

其中,“FF0000EAV”和“FF0000SAV”就是幀同步頭,其作用也是用來(lái)指示有效數據開(kāi)始和結束。其格式為:“FF0000XY”,XY的定義如下。

SAV_EVEN=8H80

EAV_EVEN=8H9D

SAV_ODD=8HC7

EAV_ODD=8HDA

3.選擇有效的緩存策略

在數據采集系統中,緩存結構的設計直接影響系統的性能。對于簡(jiǎn)單的設計,可以采用一個(gè)FIFO或者雙口RAM來(lái)實(shí)現緩存。如果單緩存不能滿(mǎn)足系統的性能要求,可以采用乒乓結構的緩存。

在有些特殊情況下,采集模塊后面數據處理模塊的處理時(shí)間不固定,和數據內容相關(guān)。這時(shí)候采用乒乓結構的緩存策略就不能滿(mǎn)足要求了,因為乒乓結構的切換時(shí)間一般是固定的,而且和數據內容是無(wú)關(guān)的。

還有一種比乒乓結構更復雜的緩存管理策略,那就是三緩存環(huán)形結構。如圖10.22所示,這樣的結構雖然比乒乓結構提供了更好的緩存性能,但是管理的復雜度大大提高了,系統的延遲也增加了。

圖10.22三緩存的示意圖

無(wú)論是單緩存,雙緩存還是三緩存結構,只要能滿(mǎn)足系統的實(shí)時(shí)采集要求就是有效的緩存策略。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>