下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、射频定时发送器基本功能模块的设计定时发送器是射频控制模块中的一个重要组成部分,用于产生需要定时发送的射频控制信号:ad_on(模数转换信号)、da_on(数模转换信号)、apc(自动功率控制信号)、agc(自动增益控制信号)和afc(自动频率控制信号),再通过挑选两个spi接口rf_spi和ad_spi把控制信号定时地传送到射频发送模块。射频定时发送器需要完成的四种基本功能分离是:定时发送、竞争发送、数据采样时钟分频,以及apc_burst模式,1所示,本文将具体阐述这些基本功能模块的设计原理。图1 射频定时发送器功能结构图定时发送模块射频定时发送器的主要功能就是定时传输射频控制信息,为了满足
2、此功能,需要在模块中设计两个fifo:data fifo用于存储射频控制信息;time fifo用于存储时光信息。模块中设定当系统帧计数器与time fifo中存储的某一时光相同时,就把与这个时光对应的射频控制信息发送出去。因此还需设计一个模块,推断当帧计数器的值等于fifo_time(fifo中存储的时光)时,产生使能信号(read_en, fifo_read_en, time_int)发送信息,工作流程2所示。图2 定时发送射频控制信息设计流程图fifo该模块中将设计两个fifo,它们将需要发送的射频控制信息及其发送时光缓存起来,设计用fifo举行存储的目的是将这两种信息一一对应起来,避开
3、发送的时候出错。define data_fifomodule 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_i4:0(写fifo地址)、 addrd_i4:0(读fifo地址)和fifo_data_i11:0(写入fifo的值);输出信号为fifo_data_o11:0 (fifo输出值)。2) 再定义一个宽度为12位、深度为32的fifo:reg 11:0
4、register_fifo0:31;3) 设计写fifo的状况:以clk为参考时钟,首先推断复位信号,当复位信号为低时,对fifo举行复位:if(!rst_) register_fifo0.31图3 fifo读/写操作图竞争发送模块芯片在空闲状况下,可能会有空闲状态的射频控制信息(idle_data)需要发送,当芯片唤醒后则应优先发送该信息。但当芯片唤醒后产生的射频控制信息fifo_data与idle_data在同一时刻发送时,就会浮现竞争发送的状况。因此,在设计该模块时限定当idle_en(空闲使能信号)与pllon(pll时钟使能信号)同时拉高时,发送idle_data中的相应比特来取代f
5、ifo_data中的相应比特,4所示。图4 射频定时发送器在空闲状况下的工作流程transfer idle_data and fifo_data:module idle_time(fifo_ data,pllon,idle_en,idle_data,rfctrl_o);1) 定义该模块的信号线:输入信号为fifo_data11:0(fifo中存储的射频控制信息)、idle_data (空闲时需发送的射频控制信息)、idle_en、pllon;输出信号为rfctrl_o(最后输出的射频控制信息)。2) 下面向需发送的控制信息举行规律组合。其敏感电平是pllon、fifo_data、idle_da
6、ta和idle_en,即当上述电平中随意一个发生变幻时,就执行下面的语句:always (pllon or fifo_data or idle_data or idle_en)/组合规律beginrfctrl_o0 = (idle_en0)?idle_ data0:fifo_data0;rfctrl_o1 = (idle_en1)?idle_ data1:fifo_data1;rfctrl_o2 = (idle_en2)?idle_ data2:fifo_data2;rfctrl_o3 = (idle_en3)?idle_ data3:fifo_data3;rfctrl_o4 = (idle_
7、en4)?idle_ data4:fifo_data4;. . .end竞争发送的仿真结果5所示:在pllon没有被拉高的状况下,rfctrl_o发送的就是fifo_data的值,惟独当pllon被拉高的条件下才会有竞争发送的状况。数据采样时钟分频模块为了数据发送同步,射频定时发送器输出数据的频率应与外接模块保持全都,射频定时发送器采样发送数据的时钟是系统时钟的分频时钟。因此,产生分频时钟和采样使能信号是该模块设计的关键所在,并要求每次对发送数据的采样都应发生在分频时钟的升高沿。generator ad_clk and send ad_sdatao:module drv_clk(rst_,cl
8、k,frq_ drv,ad_sclk,spi_en,rfctrl_data,ad_datao);1) 定义该模块的信号线:输入信号为rst_、 clk、 frq_drv(分频系数)、rfctrl_data(射频控制信息);输出信号为ad_sclk(分频时钟)、ad_sdatao(发送数据)。2) 以clk为基及时钟,定义一个reg3:0 count计数器对clk的升高沿举行计数。当count=frq_drv-1时,ad_sclk举行反转并对count清零,这样就产生了分频时钟。3) 该模块设计要求每次对发送数据的采样都应发生在分频时钟的升高沿。但为了避开产生异步,对数据举行采样时不能以产生的a
9、d_sclk为标准,应仍以clk为基及时钟。即在每8个clk时钟的升高沿发送1位的rfctrl_data,并由高位到低位发送,这样采样时就不会浮现毛刺,能做到较好的同步。always (posedge clk or negedge rst_)begincount图5 竞争发送仿真图burst发送模式设计为了使发送功率越发稳定,射频定时发送器中设计了一种burst模式,即把一次性需要发送的功率分为几步发送出去,并规定了每步发送的功率值step_value*para(每步值×增益),这样就可以避开在发送功率控制信息时产生突激。burst step design:module burst(
10、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 (每步需发送的功率值)、para(每步增益)、apc_burst_en(burst模式使能信号);输出信号为apc_burstout(每步终于发送的功率)、ad_sdatao(发送数据)。2) 定义assign apc_burstout = step_value*para,设置step_count记录目前发送的步数,并按照step_count的信息,用step_value存储当前步数的值。always (posedge clk or negedge rst_)begincase(step_count)2'b00: step_value11:0图6 ap
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 寒假安全教育主题班会方案8篇
- 形势任务教育心得体会
- 开学典礼副校长讲话稿15篇
- 招商引资差旅费管理办法
- 中国分布式光纤传感器行业发展现状及市场前景分析预测报告
- 湖南省溆浦一中普通高中学业水平考试模拟试卷语文试题(含答案)
- Massive MIMO系统低复杂度混合预编码方法研究
- 2025版销售经理多元化市场拓展聘用合同模板3篇
- 志愿培训教材
- 应急管理法规与政策解读
- 《openEuler操作系统》考试复习题库(含答案)
- 《天润乳业营运能力及风险管理问题及完善对策(7900字论文)》
- 医院医学伦理委员会章程
- xx单位政务云商用密码应用方案V2.0
- 北师大版五年级上册数学期末测试卷及答案共5套
- 2024-2025学年人教版生物八年级上册期末综合测试卷
- 2025年九省联考新高考 语文试卷(含答案解析)
- 全过程工程咨询投标方案(技术方案)
- 心理健康教育学情分析报告
- 农民专业合作社财务报表(三张报表)
- 安宫牛黄丸的培训
评论
0/150
提交评论