在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

以高速AD9361芯片為例進(jìn)行數(shù)據(jù)接口邏輯代碼的編寫

FPGA之家 ? 來源:時沿科技 ? 作者:ShownSun ? 2021-06-07 14:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文通過以高速AD9361芯片為例進(jìn)行數(shù)據(jù)接口邏輯代碼的編寫,利用SelectIO IP快速高效完成芯片驅(qū)動的生成。

2 AD93612.1 芯片簡介

AD9361是一款面向3G和4G基站應(yīng)用的高性能、高集成度的射頻RF)Agile Transceiver捷變收發(fā)器。該器件的可編程性和寬帶能力使其成為多種收發(fā)器應(yīng)用的理想選擇。該器件集RF前端與靈活的混合信號基帶部分為一體,集成頻率合成器,為處理器提供可配置數(shù)字接口,從而簡化設(shè)計導(dǎo)入。

AD9361接收器LO工作頻率范圍為70 MHz至6.0 GHz,發(fā)射器LO工作頻率范圍為47 MHz至6.0 GHz,涵蓋大部分特許執(zhí)照和免執(zhí)照頻段,支持的通道帶寬范圍為200 kHz以下至56 MHz,整體結(jié)構(gòu)圖如圖 1 AD9361整體結(jié)構(gòu)圖所示。

43a3fe12-c69f-11eb-9e57-12bb97331649.png

圖 1 AD9361整體結(jié)構(gòu)圖

? 集成12位DACADC的RF 2 × 2收發(fā)器

? TX頻段:47 MHz至6.0 GHz

? RX頻段:70 MHz至6.0 GHz

? 支持TDD和FDD操作

? 可調(diào)諧通道帶寬:《200 kHz至56 MHz

? 雙通道接收器:6路差分或12路單端輸入

? 出色的接收器靈敏度,噪聲系數(shù)為2 dB (800 MHz LO)

? RX增益控制

o 實(shí)時監(jiān)控和控制信號用于手動增益

o 獨(dú)立的自動增益控制

? 雙發(fā)射器:4路差分輸出

? 高線性度寬帶發(fā)射器

o TX EVM:≤?40 dB

o TX噪聲:≤?157 dBm/Hz本底噪聲

o TX監(jiān)控器:動態(tài)范圍≥66 dB,精度=1 dB

? 集成式小數(shù)N分頻頻率合成器

? 2.4 Hz最大本振(LO)步長

? 多器件同步

? CMOS/LVDS數(shù)字接口

2.2 參數(shù)配置

用戶可以根據(jù)自己的需求將數(shù)據(jù)接口通過SPI配置成LVDS或CMOS接口,也可以還可以選擇FDD或TDD工作方式,以及數(shù)據(jù)速率可以選擇SDR或DDR。只需要通過配置軟件設(shè)置即可,如圖 2 AD9361數(shù)據(jù)接口配置參數(shù)所示,詳細(xì)的配置教程見AD936x Evaluation Software 詳細(xì)配置。

在進(jìn)行數(shù)據(jù)驗(yàn)證時,也可以使用測試模式,對收發(fā)數(shù)據(jù)進(jìn)行驗(yàn)證以保證系統(tǒng)的正確性。另外,還可以對輸入時鐘進(jìn)行延時調(diào)節(jié)或者通過SelectIO的delay、delayctrl功能對時鐘信號進(jìn)行微調(diào),以滿足時序要求。

芯片數(shù)據(jù)時鐘與數(shù)據(jù)之間的時序可靠性也可以通過芯片內(nèi)部的延時寄存器0x006、0x007進(jìn)行條件,以此達(dá)到要求,具體的SPI配置寄存器時序如圖 3 AD9361 寄存器配置接口SPI時序所示。此方面不是本文重點(diǎn),不做展開,更多內(nèi)容參考官方data sheet。

本小節(jié)使用的數(shù)據(jù)接口參數(shù):LVDS、FDD、DDR,對應(yīng)的時序邏輯也是根據(jù)該參數(shù)進(jìn)行設(shè)計。

2.3 引腳

RX數(shù)據(jù)時序接口如下:

43f14bae-c69f-11eb-9e57-12bb97331649.png

43fc1e62-c69f-11eb-9e57-12bb97331649.png

443c27c8-c69f-11eb-9e57-12bb97331649.png

4466a57a-c69f-11eb-9e57-12bb97331649.png

TX數(shù)據(jù)時序接口如下:

447336be-c69f-11eb-9e57-12bb97331649.png

448b42a4-c69f-11eb-9e57-12bb97331649.png

44991082-c69f-11eb-9e57-12bb97331649.png

44a3d8c8-c69f-11eb-9e57-12bb97331649.png

2.4 接口時序

以下使用的數(shù)據(jù)接口參數(shù):LVDS、FDD、DDR,根據(jù)不同的通道數(shù)可以得到不同的數(shù)據(jù)時序,用戶在解析數(shù)據(jù)時只要按照對應(yīng)的結(jié)構(gòu)進(jìn)行拼接即可。

3 參考代碼3.1 SelectIO配置

根據(jù)以上對AD9361的了解,就可以輕松的配置SelectIO IP的GUI界面了。芯片既包括發(fā)射模塊TX又包括接收模塊RX,所以IO類型選擇chip to chip。

根據(jù)上述參數(shù)配置部分,自然就選擇DDR。數(shù)據(jù)接口包括時鐘CLK、Frame對齊信號與差分?jǐn)?shù)據(jù)端Data[05:0],要同時對Frame與Data信號進(jìn)行時序解析,所以端口寬度設(shè)置為7.

由于芯片內(nèi)部寄存器0x006、0x007可以確保時鐘與數(shù)據(jù)滿足時序要求,所以不需要延時模塊,以節(jié)約FPGA邏輯資源。

3.2 數(shù)據(jù)解析

//-------------------------------------------------------------------

// 用于將接收時鐘與數(shù)據(jù)進(jìn)行單端與差分的變換

//-------------------------------------------------------------------

selectio_ip u_selectio_ip (

// From the system into the device

.DATA_IN_FROM_PINS_P (ad_rx_data_in_p),

//從AD接收端接收到的單端數(shù)據(jù)與標(biāo)志

.DATA_IN_FROM_PINS_N (ad_rx_data_in_n),

//從AD接收端接收到的單端數(shù)據(jù)與標(biāo)志

.DATA_IN_TO_DEVICE (ad_rx_data),

//將AD接收端接收到的數(shù)據(jù)與標(biāo)志轉(zhuǎn)換為單端數(shù)據(jù)

// From the device out to the system

.DATA_OUT_FROM_DEVICE (ad_tx_data),

//將要發(fā)送的DA數(shù)據(jù)與標(biāo)志轉(zhuǎn)換為單端數(shù)據(jù)

.DATA_OUT_TO_PINS_P (ad_tx_data_out_p),

//發(fā)送端的單端DA數(shù)據(jù)與標(biāo)志

.DATA_OUT_TO_PINS_N (ad_tx_data_out_n),

//發(fā)送端的單端DA數(shù)據(jù)與標(biāo)志

.CLK_TO_PINS_P (ad_fb_clk_p),

//將AD接收端的輸入時鐘用于發(fā)射時鐘

.CLK_TO_PINS_N (ad_fb_clk_n),

//將AD接收端的輸入時鐘用于發(fā)射時鐘

.CLK_IN_P (ad_data_clk_p),

//AD接收端的單端輸入時鐘

.CLK_IN_N (ad_data_clk_n),

//AD接收端的單端輸入時鐘

.CLK_OUT (ad9361_data_clk),

//將AD接收端的差分輸入時鐘轉(zhuǎn)變?yōu)閱味藭r鐘

.CLK_RESET (reset),

//用于AD輸入時鐘的復(fù)位,高有效

.IO_RESET (reset)

//用于單端、差分變換的復(fù)位,高有效

);

//-------------------------------------------------------------------

//發(fā)送數(shù)據(jù)的生成

//-------------------------------------------------------------------

assign ad_tx0_msb_q=ad_tx0_data[23:18];

assign ad_tx0_lsb_q=ad_tx0_data[17:12];

assign ad_tx0_msb_i=ad_tx0_data[11:06];

assign ad_tx0_lsb_i=ad_tx0_data[05:00];

assign ad_tx1_msb_q=ad_tx1_data[23:18];

assign ad_tx1_lsb_q=ad_tx1_data[17:12];

assign ad_tx1_msb_i=ad_tx1_data[11:06];

assign ad_tx1_lsb_i=ad_tx1_data[05:00];

reg [13:0] ad_tx_data;

//-------------------------------------------------------------------

//選擇要發(fā)送的I與Q數(shù)據(jù)

//-------------------------------------------------------------------

always @(posedge ad9361_data_clk or posedge reset) begin

if(reset)

ad_tx_data《=0;

else if((ad_tx_frame_reg==0)&&(ad_tx_frame==1))

ad_tx_data《={ad_tx_frame,ad_tx0_msb_q,ad_tx_frame,ad_tx0_msb_i};

else if((ad_tx_frame_reg==1)&&(ad_tx_frame==1))

ad_tx_data《={ad_tx_frame,ad_tx0_lsb_q,ad_tx_frame,ad_tx0_lsb_i};

else if((ad_tx_frame_reg==1)&&(ad_tx_frame==0))

ad_tx_data《={ad_tx_frame,ad_tx1_msb_q,ad_tx_frame,ad_tx1_msb_i};

else if((ad_tx_frame_reg==0)&&(ad_tx_frame==0))

ad_tx_data《={ad_tx_frame,ad_tx1_lsb_q,ad_tx_frame,ad_tx1_lsb_i};

end

//-------------------------------------------------------------------

//選擇接收的I與Q數(shù)據(jù)

//-------------------------------------------------------------------

always @(posedge ad9361_data_clk or posedge reset) begin

if(reset) begin

ad_rx0_msb_i《=0;

ad_rx0_msb_q《=0;

ad_rx0_lsb_i《=0;

ad_rx0_lsb_q《=0;

ad_rx1_msb_i《=0;

ad_rx1_msb_q《=0;

ad_rx1_lsb_i《=0;

ad_rx1_lsb_q《=0;

end

else if((ad_rx_frame_reg==0)&&(ad_rx_frame==1)) begin

ad_rx0_msb_i《=ad_rx_data[05:0];

ad_rx0_msb_q《=ad_rx_data[12:7];

end

else if((ad_rx_frame_reg==1)&&(ad_rx_frame==1)) begin

ad_rx0_lsb_i《=ad_rx_data[05:0];

ad_rx0_lsb_q《=ad_rx_data[12:7];

end

else if((ad_rx_frame_reg==1)&&(ad_rx_frame==0)) begin

ad_rx1_msb_i《=ad_rx_data[05:0];

ad_rx1_msb_q《=ad_rx_data[12:7];

end

else if((ad_rx_frame_reg==0)&&(ad_rx_frame==0)) begin

ad_rx1_lsb_i《=ad_rx_data[05:0];

ad_rx1_lsb_q《=ad_rx_data[12:7];

end

end

wire [23:0] ad_rx0_fifo_data;

wire [23:0] ad_rx1_fifo_data;

assign ad_rx0_fifo_data={ad_rx0_msb_q,ad_rx0_lsb_q,ad_rx0_msb_i,ad_rx0_lsb_i};

assign ad_rx1_fifo_data={ad_rx1_msb_q,ad_rx1_lsb_q,ad_rx1_msb_i,ad_rx1_lsb_i};

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關(guān)注

    關(guān)注

    459

    文章

    52378

    瀏覽量

    439025
  • 發(fā)射器
    +關(guān)注

    關(guān)注

    6

    文章

    878

    瀏覽量

    54416

原文標(biāo)題:FPGA實(shí)現(xiàn)AD9361數(shù)據(jù)接口邏輯

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    AD9361

    我使用AD9361芯片,參考時鐘10MHz,鑒相頻率20MHz,設(shè)置BBPLL頻率800MHz,ADC_CLOCK
    發(fā)表于 06-25 15:02

    數(shù)據(jù)中臺接入富士PLC進(jìn)行數(shù)據(jù)采集并遠(yuǎn)程維護(hù)

    要實(shí)現(xiàn)數(shù)據(jù)中臺接入富士PLC進(jìn)行數(shù)據(jù)采集并遠(yuǎn)程維護(hù),可以參考以下方案: 硬件連接 通過富士PLC支持的通信接口(如以太網(wǎng)口、串口等),使用相應(yīng)的通信線纜將PLC與數(shù)據(jù)中臺所在的網(wǎng)絡(luò)
    的頭像 發(fā)表于 04-24 14:24 ?205次閱讀

    如何綜合性測試一款電源芯片?——ASP3605芯片

    引言 在現(xiàn)代電子系統(tǒng)中,電源芯片是不可或缺的核心組件之一。其性能的優(yōu)劣直接關(guān)系到整個電子設(shè)備的穩(wěn)定性和可靠性。因此,對電源芯片進(jìn)行綜合性的測試至關(guān)重要。本文國科安芯生產(chǎn)的ASP360
    的頭像 發(fā)表于 04-07 09:26 ?342次閱讀

    ths1230與DSP2812之間直接并口連接,進(jìn)行數(shù)據(jù)采集,DSP讀AD的數(shù)據(jù)時讀信號的最高頻率小于2MHZ,為什么?

    你好。我選用的是TI的ths1230與DSP2812之間直接并口連接,進(jìn)行數(shù)據(jù)采集,時鐘頻率12.5MHZ,也即采樣率12.5MHZ,XINTF選用的是ZONE6。但DSP讀AD的數(shù)
    發(fā)表于 02-11 06:55

    使用ADS8513芯片進(jìn)行數(shù)據(jù)采集,0~4V回讀數(shù)據(jù)對應(yīng)的十六進(jìn)制是如何計算的?

    我在使用ADS8513 芯片進(jìn)行數(shù)據(jù)采集。按照手冊,選擇輸入量程0~4V,但是通過SPI讀回的數(shù)據(jù),與手冊上描述的范圍不一致。 請問,0~4V回讀
    發(fā)表于 01-14 06:45

    使用1.8V FPGA和DAC5662進(jìn)行數(shù)據(jù)傳輸?shù)膯栴}求解

    目前在做一個涉及使用1.8V FPGA和DAC5662進(jìn)行數(shù)據(jù)傳輸?shù)捻椖浚瑔栴}如下: 1. FPGA接口電平1.8V LVCMOS電平, DAC5662 數(shù)據(jù)IO電平
    發(fā)表于 12-27 08:09

    使用CAN總線進(jìn)行數(shù)據(jù)采集的方法

    是汽車內(nèi)部各個模塊之間進(jìn)行通信的一種協(xié)議,通過它可以獲取到車輛的各種狀態(tài)信息、傳感器數(shù)據(jù)等。因此,在進(jìn)行數(shù)據(jù)采集之前,需要熟悉CAN總線的工作原理、通信協(xié)議以及數(shù)據(jù)格式。 二、選擇合適
    的頭像 發(fā)表于 12-20 18:18 ?2288次閱讀

    如何使用ddc進(jìn)行數(shù)據(jù)分類

    不同的主題劃分為不同的類別。以下是如何使用DDC進(jìn)行數(shù)據(jù)分類的步驟和注意事項: 一、了解DDC的基本原則 十進(jìn)制分類 :DDC采用十進(jìn)制法,將所有的知識領(lǐng)域分為10個大類,分別0-9的數(shù)字表示。每個大類下又細(xì)分為若干個分組,
    的頭像 發(fā)表于 12-18 15:05 ?1077次閱讀

    AD9361 RF捷變收發(fā)器,評估套件和開發(fā)資源

    使其成為多種收發(fā)器應(yīng)用的理想選擇。該器件集RF前端與靈活的混合信號基帶部分為一體,集成頻率合成器,處理器提供可配置數(shù)字接口,從而簡化設(shè)計導(dǎo)入。AD9361接收器LO工作頻率范圍70
    的頭像 發(fā)表于 12-13 15:18 ?2247次閱讀
    <b class='flag-5'>AD9361</b> RF捷變收發(fā)器,評估套件和開發(fā)資源

    如何使用SQL進(jìn)行數(shù)據(jù)分析

    使用SQL進(jìn)行數(shù)據(jù)分析是一個強(qiáng)大且靈活的過程,它涉及從數(shù)據(jù)庫中提取、清洗、轉(zhuǎn)換和聚合數(shù)據(jù),以便進(jìn)行進(jìn)一步的分析和洞察。 1. 數(shù)據(jù)提取(Da
    的頭像 發(fā)表于 11-19 10:26 ?1255次閱讀

    使用TMS320C6000 MCBSP進(jìn)行數(shù)據(jù)打包

    電子發(fā)燒友網(wǎng)站提供《使用TMS320C6000 MCBSP進(jìn)行數(shù)據(jù)打包.pdf》資料免費(fèi)下載
    發(fā)表于 10-26 10:54 ?0次下載
    使用TMS320C6000 MCBSP<b class='flag-5'>進(jìn)行數(shù)據(jù)</b>打包

    如何利用海外爬蟲IP進(jìn)行數(shù)據(jù)抓取

    利用海外爬蟲IP進(jìn)行數(shù)據(jù)抓取需要綜合考慮多個方面。
    的頭像 發(fā)表于 10-12 07:54 ?574次閱讀

    邏輯電路芯片-組合邏輯電路芯片-時序邏輯電路芯片

    、GPU、內(nèi)存控制器等核心部件均大量使用邏輯電路芯片實(shí)現(xiàn)復(fù)雜的運(yùn)算和控制功能。 通信設(shè)備:路由器、交換機(jī)、基站等通信設(shè)備中的信號處理、數(shù)據(jù)轉(zhuǎn)發(fā)等功能依賴于高性能的邏輯電路
    發(fā)表于 09-30 10:47

    怎么樣提高verilog代碼編寫水平?

    ? A:以下是一些提高 Verilog 代碼編寫水平的自學(xué)方法: 深入學(xué)習(xí)基礎(chǔ)知識:重新鞏固數(shù)字電路的基本概念,如邏輯門、組合邏輯、時序邏輯
    發(fā)表于 09-25 20:05

    基于 DSP5509 進(jìn)行數(shù)字圖像處理中 Sobel 算子邊緣檢測的硬件連接電路圖

    用于存儲圖像數(shù)據(jù)和中間計算結(jié)果,F(xiàn)lash 用于存儲程序代碼和固定參數(shù)。 顯示模塊:可以選擇 LCD 顯示屏或其他顯示設(shè)備,通過合適的接口(如 RGB、LVDS 等)與 DSP5509 連接,
    發(fā)表于 09-25 15:25
    主站蜘蛛池模板: 美女网站视频色 | 99国产精品久久久久久久成人热 | 亚洲va中文字幕无码 | 日b毛片| 一级视频在线观看 | eeuss久久久精品影院 | 非常黄的网站 | 女人张腿让男桶免费视频观看 | 哪里可以看免费毛片 | 天天操精品| 在线小毛片 | 色噜噜在线视频 | 四虎影视在线看 | 速度与激情在线 | 丁香视频在线观看播放 | 日日做夜夜爽夜夜爽 | 天天操天天射天天 | 中文字幕在线一区二区三区 | 亚洲第一成人在线 | 一级毛片免费全部播放 | 色五月激情小说 | 久久久久国产精品 | sss华人在线play | 91精品国产色综合久久不卡蜜 | 久久艹综合 | 777kkk亚洲综合欧美色老头 | 香港三级理论在线影院 | 天天干天天操天天摸 | 亚洲韩国在线一卡二卡 | 在线 你懂的 | 大黄网站在线观看 | 精品国产三级在线观看 | 欧美男女交性过程视频 | 四虎影院免费视频 | 亚洲美女视频一区 | 韩国激情啪啪 | 免费网址视频在线看 | 久久精品人人爽人人爽 | 黄 色 录像成 人播放免费99网 | 国产在线精品一区二区夜色 | 在线观看日本亚洲一区 |