91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

射頻定時(shí)發(fā)送器的基本功能與設(shè)計(jì)方案介紹

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2018-12-21 09:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引言

射頻定時(shí)發(fā)送器是射頻控制模塊中的一個(gè)重要組成部分,用于產(chǎn)生需要定時(shí)發(fā)送的射頻控制信號(hào)AD_ON(模數(shù)轉(zhuǎn)換信號(hào))、DA_ON(數(shù)模轉(zhuǎn)換信號(hào))、APC(自動(dòng)功率控制信號(hào))、AGC(自動(dòng)增益控制信號(hào))和AFC(自動(dòng)頻率控制信號(hào)),再通過選擇兩個(gè)SPI接口RF_SPI和AD_SPI把控制信號(hào)定時(shí)地傳送到射頻發(fā)送模塊。射頻定時(shí)發(fā)送器需要完成的四種基本功能分別是:定時(shí)發(fā)送、競(jìng)爭(zhēng)發(fā)送、數(shù)據(jù)采樣時(shí)鐘分頻,以及APC_burst模式,如圖1所示,本文將詳細(xì)闡述這些基本功能模塊的設(shè)計(jì)原理。

射頻定時(shí)發(fā)送器的基本功能與設(shè)計(jì)方案介紹

圖1 射頻定時(shí)發(fā)送器功能結(jié)構(gòu)圖

定時(shí)發(fā)送模塊

射頻定時(shí)發(fā)送器的主要功能就是定時(shí)傳輸射頻控制信息,為了滿足此功能,需要在模塊中設(shè)計(jì)兩個(gè)FIFO:DATA FIFO用于存儲(chǔ)射頻控制信息;TIME FIFO用于存儲(chǔ)時(shí)間信息。模塊中設(shè)定當(dāng)系統(tǒng)幀計(jì)數(shù)器與TIME FIFO中存儲(chǔ)的某一時(shí)間相同時(shí),就把與這個(gè)時(shí)間對(duì)應(yīng)的射頻控制信息發(fā)送出去。因此還需設(shè)計(jì)一個(gè)模塊,判斷當(dāng)幀計(jì)數(shù)器的值等于FIFO_time(FIFO中存儲(chǔ)的時(shí)間)時(shí),產(chǎn)生使能信號(hào)(read_en, fifo_read_en, time_int)發(fā)送信息,工作流程如圖2所示。

射頻定時(shí)發(fā)送器的基本功能與設(shè)計(jì)方案介紹

圖2 定時(shí)發(fā)送射頻控制信息設(shè)計(jì)流程圖

FIFO

該模塊中將設(shè)計(jì)兩個(gè)FIFO,它們將需要發(fā)送的射頻控制信息及其發(fā)送時(shí)間緩存起來,設(shè)計(jì)用FIFO進(jìn)行存儲(chǔ)的目的是將這兩種信息一一對(duì)應(yīng)起來,避免發(fā)送的時(shí)候出錯(cuò)。

define data_fifo

module data_fifo (rst_,clk,we_i,rd_i, addwr_i,addrd_i,fifo_data_i,fifo_data_o);

1) 首先定義該模塊的信號(hào)線:輸入信號(hào)為rst_ (復(fù)位信號(hào))、clk(標(biāo)準(zhǔn)時(shí)鐘)、 we_i(寫信號(hào))、 rd_i(讀信號(hào))、addwr_i[4:0](寫FIFO地址)、 addrd_i[4:0](讀FIFO地址)和fifo_data_i[11:0](寫入FIFO的值);輸出信號(hào)為fifo_data_o[11:0] (FIFO輸出值)。

2) 再定義一個(gè)寬度為12位、深度為32的FIFO:reg [11:0] register_fifo[0:31];

3) 設(shè)計(jì)寫FIFO的情況:以clk為參考時(shí)鐘,首先判斷復(fù)位信號(hào),當(dāng)復(fù)位信號(hào)為低時(shí),對(duì)FIFO進(jìn)行復(fù)位:if(!rst_) register_fifo[0.。..。.31] 《= 12’b0;當(dāng)rst_不為低且we_i為高時(shí),則對(duì)FIFO進(jìn)行寫操作:if(we_i == 1’b1) register_fifo[addwr_i] 《= fifo_data_i;

4) 設(shè)計(jì)讀FIFO的情況:同樣以clk為參考時(shí)鐘,先判斷復(fù)位信號(hào),當(dāng)復(fù)位信號(hào)為低時(shí),對(duì)fifo_data_o進(jìn)行復(fù)位:if(!rst_) fifo_data_o《= 12’b0;當(dāng)rst_不為低且rd_i為高時(shí),則對(duì)FIFO進(jìn)行讀操作:if(rd_i == 1’b1) fifo_data_o 《= regsiter_fifo[addrd_i];

使能信號(hào)及中斷產(chǎn)生模塊

FIFO讀/寫使能信號(hào)是由外部模塊驅(qū)動(dòng)的,因此需要設(shè)計(jì)一個(gè)模塊用于產(chǎn)生控制FIFO的讀/寫信號(hào),并且該模塊還需產(chǎn)生時(shí)間中斷信號(hào)用于使能發(fā)送器。

define transfer time

module time_count(rst_,clk,fifo _time,framc,read_en,fifo_read _en,time_int);

1) 首先定義該模塊的信號(hào)線:輸入信號(hào)為rst_、clk、 fifo_time[15:0](FIFO中存儲(chǔ)的時(shí)間信息)、framc(幀計(jì)數(shù)器值);輸出信號(hào)為read_en(FIFO地址累加使能信號(hào))、 fifo_read_en(讀FIFO值使能信號(hào))、time_int(時(shí)間中斷信號(hào));再定義一個(gè)reg [1:0] time_int_delay,用于存儲(chǔ)time_int在上一個(gè)時(shí)鐘的信息,如time_int_delay[0] 《= time_int; time_int_delay[1] 《= time_int_delay[0];

2) 定義fifo_read_en信號(hào)在time_int被拉高后延遲一個(gè)clk拉高,再延遲一個(gè)clk拉低,即assign fifo_read_en = time_int |(time_int_delay[0]);定義read_en信號(hào)在time_int被拉高后延遲兩個(gè)clk后拉高,再延遲一個(gè)clk拉低,即 assgin read_en = time_int_delay[0] |(time_int_delay[1])。這樣做的目的是控制在當(dāng)前clk的上升沿到來時(shí)取出FIFO中當(dāng)前地址的值,然后在下一個(gè)clk的上升沿立即計(jì)算出下一次取值的地址,這樣就能保證在每一次取值之前其所在的位置已經(jīng)計(jì)算完成,避免了取值出錯(cuò)的情況。

3) 最后定義如何產(chǎn)生time_int信號(hào)。time_int產(chǎn)生的條件是:當(dāng)fifo_time中存儲(chǔ)的時(shí)間信息等于framc時(shí),time_int被拉高,即被使能,if(fifo_time== framc ) time_int 《= 1‘b1;

FIFO讀寫操作的仿真結(jié)果如圖3所示,對(duì)FIFO的讀/寫操作分別由we_i和rd_i(fifo_read_en)控制,而計(jì)算讀FIFO的地址由read_en控制,這樣就能保證在每次取FIFO值之前其所在地址已經(jīng)被計(jì)算完成。

射頻定時(shí)發(fā)送器的基本功能與設(shè)計(jì)方案介紹

圖3 FIFO讀/寫操作仿真圖

競(jìng)爭(zhēng)發(fā)送模塊

芯片在空閑情況下,可能會(huì)有空閑狀態(tài)的射頻控制信息(idle_data)需要發(fā)送,當(dāng)芯片喚醒后則應(yīng)優(yōu)先發(fā)送該信息。但當(dāng)芯片喚醒后產(chǎn)生的射頻控制信息fifo_data與idle_data在同一時(shí)刻發(fā)送時(shí),就會(huì)出現(xiàn)競(jìng)爭(zhēng)發(fā)送的情況。因此,在設(shè)計(jì)該模塊時(shí)限定當(dāng)idle_en(空閑使能信號(hào))與pllon(pll時(shí)鐘使能信號(hào))同時(shí)拉高時(shí),發(fā)送idle_data中的相應(yīng)比特來取代fifo_data中的相應(yīng)比特,如圖4所示。

射頻定時(shí)發(fā)送器的基本功能與設(shè)計(jì)方案介紹

圖4 射頻定時(shí)發(fā)送器在空閑情況下的工作流程

transfer idle_data and fifo_data:

module idle_time(fifo_ data,pllon,idle_en,idle_data,rfctrl_o);

1) 定義該模塊的信號(hào)線:輸入信號(hào)為fifo_data[11:0](FIFO中存儲(chǔ)的射頻控制信息)、idle_data (空閑時(shí)需發(fā)送的射頻控制信息)、idle_en、pllon;輸出信號(hào)為rfctrl_o(最后輸出的射頻控制信息)。

2) 下面對(duì)需發(fā)送的控制信息進(jìn)行邏輯組合。其敏感電平是pllon、fifo_data、idle_data和idle_en,即當(dāng)上述電平中任意一個(gè)發(fā)生變化時(shí),就執(zhí)行下面的語(yǔ)句:

always @(pllon or fifo_data or idle_data or idle_en)//組合邏輯電路

begin

rfctrl_o[0] = (idle_en[0])?idle_ data[0]:fifo_data[0];

rfctrl_o[1] = (idle_en[1])?idle_ data[1]:fifo_data[1];

rfctrl_o[2] = (idle_en[2])?idle_ data[2]:fifo_data[2];

rfctrl_o[3] = (idle_en[3])?idle_ data[3]:fifo_data[3];

rfctrl_o[4] = (idle_en[4])?idle_ data[4]:fifo_data[4];

。..。..。..。..。.. 。..。..。..。..。..。. 。..。..。..。..。.

end

競(jìng)爭(zhēng)發(fā)送的仿真結(jié)果如圖5所示:在pllon沒有被拉高的情況下,rfctrl_o發(fā)送的就是fifo_data的值,只有當(dāng)pllon被拉高的條件下才會(huì)有競(jìng)爭(zhēng)發(fā)送的情況。

數(shù)據(jù)采樣時(shí)鐘分頻模塊

為了數(shù)據(jù)發(fā)送同步,射頻定時(shí)發(fā)送器輸出數(shù)據(jù)的頻率應(yīng)與外接模塊保持一致,射頻定時(shí)發(fā)送器采樣發(fā)送數(shù)據(jù)的時(shí)鐘是系統(tǒng)時(shí)鐘的分頻時(shí)鐘。因此,產(chǎn)生分頻時(shí)鐘和采樣使能信號(hào)是該模塊設(shè)計(jì)的關(guān)鍵所在,并要求每次對(duì)發(fā)送數(shù)據(jù)的采樣都應(yīng)發(fā)生在分頻時(shí)鐘的上升沿。

generator ad_clk and send ad_sdatao:

module drv_clk(rst_,clk,frq_ drv,ad_sclk,spi_en,rfctrl_data,ad_datao);

1) 定義該模塊的信號(hào)線:輸入信號(hào)為rst_、 clk、 frq_drv(分頻系數(shù))、rfctrl_data(射頻控制信息);輸出信號(hào)為ad_sclk(分頻時(shí)鐘)、ad_sdatao(發(fā)送數(shù)據(jù))。

2) 以clk為基準(zhǔn)時(shí)鐘,定義一個(gè)reg[3:0] count計(jì)數(shù)器對(duì)clk的上升沿進(jìn)行計(jì)數(shù)。當(dāng)count=frq_drv-1時(shí),ad_sclk進(jìn)行反轉(zhuǎn)并對(duì)count清零,這樣就產(chǎn)生了分頻時(shí)鐘。

3) 該模塊設(shè)計(jì)要求每次對(duì)發(fā)送數(shù)據(jù)的采樣都應(yīng)發(fā)生在分頻時(shí)鐘的上升沿。但為了避免產(chǎn)生異步,對(duì)數(shù)據(jù)進(jìn)行采樣時(shí)不能以產(chǎn)生的ad_sclk為標(biāo)準(zhǔn),應(yīng)仍以clk為基準(zhǔn)時(shí)鐘。即在每8個(gè)clk時(shí)鐘的上升沿發(fā)送1位的rfctrl_data,并由高位到低位發(fā)送,這樣采樣時(shí)就不會(huì)出現(xiàn)毛刺,能做到較好的同步。

always @(posedge clk or negedge rst_)

begin

count 《= count+1

if(count == 2*frq_drv-1)

begin

ad_sdatao 《= rfctrl_data[11]; //每次發(fā)送rfctrl_data的最高bit

rfctrl_data[11:0] 《= {rfctrl_data[10:0], 1’b0};

//然后rfctrl_data[11:0]左移一位,去除已發(fā)送的bit

end

end

這種方式能確保在每一個(gè)ad_sclk的上升沿對(duì)發(fā)送數(shù)據(jù)的數(shù)據(jù)進(jìn)行采樣,避免了產(chǎn)生毛刺。

射頻定時(shí)發(fā)送器的基本功能與設(shè)計(jì)方案介紹

圖5 競(jìng)爭(zhēng)發(fā)送仿真圖

burst發(fā)送模式設(shè)計(jì)

為了使發(fā)送功率更加穩(wěn)定,射頻定時(shí)發(fā)送器中設(shè)計(jì)了一種burst模式,即把一次性需要發(fā)送的功率分為幾步發(fā)送出去,并規(guī)定了每步發(fā)送的功率值=step_value*para(每步值×增益),這樣就可以避免在發(fā)送功率控制信息時(shí)產(chǎn)生突激。

burst step design:

module burst(rst_,clk,apc_ flag_i,step0.。...step11,para,ad_s datao,apc_burst_en,apc_burstout);

1) 定義該模塊的信號(hào)線:輸入信號(hào)為rst_、 clk、 apc_flag_i(apc標(biāo)志信號(hào))、step0.。...step11 (每步需發(fā)送的功率值)、para(每步增益)、apc_burst_en(burst模式使能信號(hào));輸出信號(hào)為apc_burstout(每步最終發(fā)送的功率)、ad_sdatao(發(fā)送數(shù)據(jù))。

2) 定義assign apc_burstout = step_value*para,設(shè)置step_count記錄目前發(fā)送的步數(shù),并根據(jù)step_count的信息,用step_value存儲(chǔ)當(dāng)前步數(shù)的值。

always @(posedge clk or negedge rst_)

begin

case(step_count)

2‘b00: step_value[11:0]《= step0[11:0];

2’b01: step_value[11:0]《= step1[11:0];

2‘b10: step_value[11:0]《= step2[11:0];

。..。..。..。..。..。.

endcase

end

3) 最后定義當(dāng)每次apc_burst_en使能時(shí),step_count累加。

仿真結(jié)果如圖6所示:當(dāng)apc_flag_i拉高時(shí),射頻控制信息開始從0步到11步分步發(fā)送;當(dāng)apc_flag_i拉低時(shí),再?gòu)牡?2步到第1步發(fā)送。

射頻定時(shí)發(fā)送器的基本功能與設(shè)計(jì)方案介紹

圖6 APC在burst模式下發(fā)送數(shù)據(jù)的仿真結(jié)果時(shí)序圖

結(jié)語(yǔ)

作為射頻控制模塊中的重要部分,射頻定時(shí)發(fā)送器能夠定時(shí)發(fā)送射頻控制信息,并能根據(jù)實(shí)際情況調(diào)整發(fā)送模式。本文對(duì)該模塊最重要的四大功能模塊,即定時(shí)發(fā)送模塊、競(jìng)爭(zhēng)發(fā)送模塊、分頻采樣時(shí)鐘模塊以及burst模式發(fā)送模塊的設(shè)計(jì)方案作了基本介紹,希望對(duì)芯片設(shè)計(jì)人員有所幫助。

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

    關(guān)注

    106

    文章

    6009

    瀏覽量

    173522
  • 計(jì)數(shù)器
    +關(guān)注

    關(guān)注

    32

    文章

    2317

    瀏覽量

    98226
  • 發(fā)送器
    +關(guān)注

    關(guān)注

    1

    文章

    261

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    【飛凌嵌入式RV1126B開發(fā)板】+基本功能測(cè)試篇(2)

    2.基本功能測(cè)試 1)LED測(cè)試 OK1126B核心板上有一個(gè)藍(lán)色LED燈,當(dāng)板卡上電時(shí)核心板得藍(lán)色LED燈會(huì)開始閃爍。 對(duì)該LED燈的測(cè)試方法如下: (1)點(diǎn)亮LED燈測(cè)試
    發(fā)表于 03-07 00:07

    【飛凌嵌入式RV1126B開發(fā)板】+基本功能測(cè)試篇(1)

    基本功能的測(cè)試。 1.內(nèi)核性能測(cè)試 1)查看內(nèi)核和cpu信息 實(shí)現(xiàn)該測(cè)試功能的指令為:uname -a 圖1 操作及內(nèi)容 2)查看CPU頻率 圖2 操作及結(jié)果 3)查看環(huán)境變量信息 圖3 操作及結(jié)果 4
    發(fā)表于 03-05 12:25

    單片機(jī)基本功能

    對(duì)于絕大多數(shù)MCU,下列功能是最普遍也是最基本的,針對(duì)不同的MCU,其描述的方式可能會(huì)有區(qū)別,但本質(zhì)上是基本相同的: 1、TImer(定時(shí)器):TImer的種類雖然比較多,但可歸納為兩大類:一類
    發(fā)表于 01-13 07:20

    LAT1173高精度定時(shí)器的同步功能應(yīng)用筆記

    STM32G474 所含的高精度定時(shí)器(HRTIMER)其實(shí)包含了多個(gè)定時(shí)器,多個(gè)定時(shí)器之間可以單獨(dú)工作,也可以進(jìn)行同步,且高精度定時(shí)器能與
    發(fā)表于 01-11 17:32 ?0次下載

    探索LMH0036:SD SDI重定時(shí)器的卓越性能與應(yīng)用

    探索LMH0036:SD SDI重定時(shí)器的卓越性能與應(yīng)用 在數(shù)字視頻信號(hào)處理領(lǐng)域,精確和高效的數(shù)據(jù)傳輸至關(guān)重要。Texas Instruments推出的LMH0036 SD SDI重定時(shí)器,憑借其
    的頭像 發(fā)表于 12-25 15:10 ?295次閱讀

    SN65LVDS93B:低功耗、高分辨率的LVDS SerDes發(fā)送器的理想選擇

    SN65LVDS93B:低功耗、高分辨率的LVDS SerDes發(fā)送器的理想選擇 在電子設(shè)備的顯示系統(tǒng)中,數(shù)據(jù)的高效傳輸和顯示質(zhì)量的保障至關(guān)重要。SN65LVDS93B作為一款LVDS SerDes
    的頭像 發(fā)表于 12-18 11:35 ?400次閱讀

    探索Amphenol RF外部射頻天線的卓越性能與應(yīng)用前景

    探索Amphenol RF外部射頻天線的卓越性能與應(yīng)用前景 作為電子工程師,我們總是在尋找高品質(zhì)且功能強(qiáng)大的射頻解決方案來滿足不同項(xiàng)目的需求
    的頭像 發(fā)表于 12-11 15:30 ?411次閱讀

    CW32通用定時(shí)器—輸出比較

    。圖中的代碼直接列出了上述文字表達(dá)的公式,其中的50就是頻率。 隨后設(shè)置好中斷,完成必要的初始化,定時(shí)器基本功能就可以使用了,中斷服務(wù)函數(shù)可以在函數(shù)列表中找到。 好的,你已經(jīng)掌握了所有單片機(jī)定時(shí)器
    發(fā)表于 12-11 06:45

    CW32L010+定時(shí)器介紹

    這一篇介紹一下定時(shí)器的內(nèi)容,從了解CW定時(shí)器功能實(shí)現(xiàn)。 一、定時(shí)器類型 CW32L010系列MCU配備了多種類型的
    發(fā)表于 12-01 07:53

    華為手機(jī)如何定時(shí)發(fā)送消息

    選項(xiàng),讓你設(shè)置未來發(fā)送的時(shí)間, 這個(gè)功能適用于單獨(dú)聯(lián)系人和群組, 你輸入信息,選擇日期和時(shí)間,手機(jī)會(huì)在設(shè)定時(shí)自動(dòng)發(fā)送, 操作步驟很簡(jiǎn)單,基本使用不需要額外的軟件, 磨針工具軟件可以幫你
    的頭像 發(fā)表于 11-22 09:52 ?1772次閱讀

    射頻微波信號(hào)產(chǎn)生基本功能介紹

    計(jì)數(shù)
    西安同步電子科技有限公司
    發(fā)布于 :2025年11月06日 15:19:42

    SI522A芯片選型指南:低功耗RFID讀寫解決方案

    SI522A是一款國(guó)產(chǎn)高度集成的工作在13.56MHz的非接觸式讀寫芯片,支持ISO/IEC 14443 A/MIFARE協(xié)議,并具備ACD自動(dòng)載波偵測(cè)功能。 這款芯片沒有復(fù)雜的外圍電路,其內(nèi)部發(fā)送器
    的頭像 發(fā)表于 09-16 17:42 ?890次閱讀

    旋智科技家用分體空調(diào)電控設(shè)計(jì)方案

    在家用空調(diào)技術(shù)不斷迭代的今天,旋智憑借強(qiáng)大的芯片研發(fā)與系統(tǒng)集成能力,推出了一套完整的家用分體空調(diào)電控設(shè)計(jì)方案。這套方案從硬件到軟件,從基礎(chǔ)功能到智能升級(jí),全方位提升空調(diào)的性能與用戶體驗(yàn)
    的頭像 發(fā)表于 08-18 14:02 ?5321次閱讀
    旋智科技家用分體空調(diào)電控<b class='flag-5'>設(shè)計(jì)方案</b>

    CAN轉(zhuǎn)PROFINET網(wǎng)關(guān)設(shè)備基本功能介紹

    設(shè)備簡(jiǎn)介 本研究介紹的設(shè)備為一款集成了Profinet (PN) 和Controller Area Network (CAN) 通信協(xié)議的網(wǎng)關(guān),其工作原理基于數(shù)據(jù)映射技術(shù)。在Profinet網(wǎng)絡(luò)架構(gòu)
    的頭像 發(fā)表于 06-08 10:36 ?765次閱讀
    CAN轉(zhuǎn)PROFINET網(wǎng)關(guān)設(shè)備<b class='flag-5'>基本功能</b><b class='flag-5'>介紹</b>

    ADM2491E 5 kV信號(hào)隔離、高速(16 Mbps)、ESD保護(hù)、全/半雙工RS-485收發(fā)技術(shù)手冊(cè)

    ADM2491E是一款隔離的數(shù)據(jù)收發(fā),具有±8 kV ESD保護(hù)功能,適合多點(diǎn)傳輸線路的高速半雙工或全雙工通信。對(duì)于半雙工工作,發(fā)送器輸出與接收輸入共用相同的傳輸線路。
    的頭像 發(fā)表于 06-06 10:50 ?1450次閱讀
    ADM2491E 5 kV信號(hào)隔離、高速(16 Mbps)、ESD保護(hù)、全/半雙工RS-485收發(fā)<b class='flag-5'>器</b>技術(shù)手冊(cè)