日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

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

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

掃碼添加小助手

加入工程師交流群

引言

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

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

圖1 射頻定時發(fā)送器功能結構圖

定時發(fā)送模塊

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

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

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

FIFO

該模塊中將設計兩個FIFO,它們將需要發(fā)送的射頻控制信息及其發(fā)送時間緩存起來,設計用FIFO進行存儲的目的是將這兩種信息一一對應起來,避免發(fā)送的時候出錯。

define data_fifo

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

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

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

3) 設計寫FIFO的情況:以clk為參考時鐘,首先判斷復位信號,當復位信號為低時,對FIFO進行復位:if(!rst_) register_fifo[0.。..。.31] 《= 12’b0;當rst_不為低且we_i為高時,則對FIFO進行寫操作:if(we_i == 1’b1) register_fifo[addwr_i] 《= fifo_data_i;

4) 設計讀FIFO的情況:同樣以clk為參考時鐘,先判斷復位信號,當復位信號為低時,對fifo_data_o進行復位:if(!rst_) fifo_data_o《= 12’b0;當rst_不為低且rd_i為高時,則對FIFO進行讀操作:if(rd_i == 1’b1) fifo_data_o 《= regsiter_fifo[addrd_i];

使能信號及中斷產生模塊

FIFO讀/寫使能信號是由外部模塊驅動的,因此需要設計一個模塊用于產生控制FIFO的讀/寫信號,并且該模塊還需產生時間中斷信號用于使能發(fā)送器。

define transfer time

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

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

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

3) 最后定義如何產生time_int信號。time_int產生的條件是:當fifo_time中存儲的時間信息等于framc時,time_int被拉高,即被使能,if(fifo_time== framc ) time_int 《= 1‘b1;

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

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

圖3 FIFO讀/寫操作仿真圖

競爭發(fā)送模塊

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

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

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

transfer idle_data and fifo_data:

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

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

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

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

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

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

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

generator ad_clk and send ad_sdatao:

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

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

2) 以clk為基準時鐘,定義一個reg[3:0] count計數(shù)器對clk的上升沿進行計數(shù)。當count=frq_drv-1時,ad_sclk進行反轉并對count清零,這樣就產生了分頻時鐘。

3) 該模塊設計要求每次對發(fā)送數(shù)據的采樣都應發(fā)生在分頻時鐘的上升沿。但為了避免產生異步,對數(shù)據進行采樣時不能以產生的ad_sclk為標準,應仍以clk為基準時鐘。即在每8個clk時鐘的上升沿發(fā)送1位的rfctrl_data,并由高位到低位發(fā)送,這樣采樣時就不會出現(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

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

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

圖5 競爭發(fā)送仿真圖

burst發(fā)送模式設計

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

burst step design:

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

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

2) 定義assign apc_burstout = step_value*para,設置step_count記錄目前發(fā)送的步數(shù),并根據step_count的信息,用step_value存儲當前步數(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) 最后定義當每次apc_burst_en使能時,step_count累加。

仿真結果如圖6所示:當apc_flag_i拉高時,射頻控制信息開始從0步到11步分步發(fā)送;當apc_flag_i拉低時,再從第12步到第1步發(fā)送。

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

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

結語

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

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

    關注

    106

    文章

    6137

    瀏覽量

    173898
  • 計數(shù)器
    +關注

    關注

    32

    文章

    2321

    瀏覽量

    98616
  • 發(fā)送器
    +關注

    關注

    1

    文章

    261

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    深入解析MAX16997/MAX16998高電壓看門狗定時器

    /MAX16998作為高電壓看門狗定時器,以其獨特的性能和靈活的配置,為工程師們提供了強大的解決方案。本文將深入剖析這兩款定時器的特性、工作原理及應用要點。 文件下載: MAX16997.pdf 二、產品概述 2.1
    的頭像 發(fā)表于 03-26 15:30 ?163次閱讀

    一種基于低噪聲電源管理架構的射頻采樣系統(tǒng)設計方案

    本期為大家?guī)淼氖恰独走_應用中射頻轉換的無雜波電源(第 1 部分)》,介紹了一種基于低噪聲電源管理架構的射頻采樣系統(tǒng)設計方案,以解決相控陣
    的頭像 發(fā)表于 03-25 08:10 ?4539次閱讀
    一種基于低噪聲電源管理架構的<b class='flag-5'>射頻</b>采樣系統(tǒng)<b class='flag-5'>設計方案</b>

    Altair HyperLife疲勞分析功能及車輛行業(yè)應用

    議程疲勞與疲勞分析概述HyperLife軟件基本功能介紹車輛行業(yè)疲勞耐久分析方法及案例MotionSolve車輛動態(tài)載荷分解HyperLife+MotionSolve疲勞分析案例疲勞與疲勞分析概述HyperLife軟件基本功能
    的頭像 發(fā)表于 03-18 10:27 ?1451次閱讀
    Altair HyperLife疲勞分析<b class='flag-5'>功能</b>及車輛行業(yè)應用

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

    2.基本功能測試 1)LED測試 OK1126B核心板上有一個藍色LED燈,當板卡上電時核心板得藍色LED燈會開始閃爍。 對該LED燈的測試方法如下: (1)點亮LED燈測試
    發(fā)表于 03-07 00:07

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

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

    單片機基本功能

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

    LAT1173高精度定時器的同步功能應用筆記

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

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

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

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

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

    CW32通用定時器—輸出比較

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

    CW32L010+定時器介紹

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

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

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

    射頻微波信號產生基本功能介紹

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

    旋智科技家用分體空調電控設計方案

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

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

    ADM2491E是一款隔離的數(shù)據收發(fā),具有±8 kV ESD保護功能,適合多點傳輸線路的高速半雙工或全雙工通信。對于半雙工工作,發(fā)送器輸出與接收輸入共用相同的傳輸線路。
    的頭像 發(fā)表于 06-06 10:50 ?1746次閱讀
    ADM2491E 5 kV信號隔離、高速(16 Mbps)、ESD保護、全/半雙工RS-485收發(fā)<b class='flag-5'>器</b>技術手冊
    鹤山市| 台南市| 高台县| 长治县| 阿鲁科尔沁旗| 富裕县| 堆龙德庆县| 淮北市| 邳州市| 木兰县| 苍溪县| 交城县| 塔河县| 汤阴县| 理塘县| 个旧市| 长葛市| 定南县| 监利县| 新巴尔虎右旗| 无为县| 抚远县| 孙吴县| 通化市| 大化| 景东| 同心县| 密云县| 张家川| 准格尔旗| 潼南县| 库尔勒市| 观塘区| 东至县| 玉田县| 苏尼特右旗| 阳江市| 敦化市| 醴陵市| 阜康市| 富民县|