- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于FPGA和SRAM的数控振荡器的设计与实现-Read
基于FPGA和SRAM的数控振荡器的设计与实现
1 引言
数控振荡器是数字通讯中调制解调单元必不可少的部分,同时也是各种数字频率合成器和数字信号发生器的核心。随着数字通信技术的发展,对传送数据的精度和速率要求越来越高。如何得到可数控的高精度的高频载波信号是实现高速数字通信系统必须解决的问题,可编程逻辑器件和大容量存储器的发展为这一问题的解决带来了曙光。本文介绍如何用FPGA(现场可编程逻辑门阵列)和SRAM(静态随机存储器)实现高精度数控振荡器。
2 NCO概述
NCO(Numerical Controlled Oscillator)即数控振荡器用于产生可控的正弦波或余弦波,其实现的方法目前主要有计算法和查表法等。计算法以软件编程的方式通过实时计算产生正弦波样本,该方法耗时多且只能产生频率相对较低的正弦波,而需要产生高速的正交信号时,用此方法无法实现。因此,在实际应用中一般采用最有效、最简单的查表法,即事先根据各个NCO正弦波相位计算好相位的正弦值,并以相位角度作为地址把该相位的正弦值数据存储在表中,然后通过相位累加产生地址信息读取当前时刻的相位值在表中对应的正弦值,从而产生所需频率的正弦波。
用查表法实现NCO的性能指标取决于查表的深度和宽度,即取决于表示相位数据的位数(查表存储器地址线的位数)和表示正弦值数据的位数(查表存储器数据线的位数)。改善NCO性能最简单和最根本的方法是加大查找表的深度和宽度。目前,用查找表法实现NCO的普遍做法是用片内ROM作为查找表,由于片内资源的限制,查找表的深度和宽度一般不会很大(通常为256×8bits),大大限制了NCO性能的提高,用独立的大容量SRAM作为查找表,把查找表从片内移到片外,可以较好解决这个问题,基于这种思想,笔者成功地用FPGA(Xilinx公司的XC2V1000型门阵列)和SRAM(Cypress公司的CY7C1021型存储器)实现了NCO。
3 NCO的实现
3.1 结构设计
用FPGA和SRAM实现的NCO的结构如图1所示。大框内部分是由FPGA完成,主要部件分为频率控制字寄存器,相位控制字寄存器、通道控制字寄存器、累加器、加法器、通道选择器和锁存器等。微处理器对NCO进行控制,可用单片机或DSP(数字信号处理器)实现。
3.1.1 频率控制字寄存器、相位控制字寄存器、累加器和加法器
频率控制字寄存器和相位控制字寄存器都是32位并行输入/并行输出寄存器,它们通过微处理器接口进行读写。频率控制字寄存器确定载波的频率,相位控制字寄存器确定载波的初始相位。32位累加器对代表频率的频率控制字进行累加运算,累加结果与代表初始相位的相位控制字通过32位加法器进行相加运算,相加结果的高16位数据读取查找表的地址信息。频率控制字寄存器、相位控制字寄存器、累加器和加法器可以用VHDL语言描述,集成在一个模块中,其VHDL源程序如下:entity addr_sin is
Port(clock:in STD_LOGIC;——时钟信号
reset:in STD_LOGIC;——同步复位信号
——定义频率控制字寄存器
g_sin:in STD_LOGIC;
data_con_sin:in STD_LOGIC_VECTOR(31 downto 0);
d_con_sin:out STD_LOGIC_VECTOR(31 downto 0);
——定义相位控制字寄存器
g_sin1:in STD_LOGIC;
data_con_sin1:in STD_LOGIC_VECTOR(31 downto 0);
d_con_sin1:out STD_LOGIC_VECTOR(31 downto 0);
dout:out STD_LOGIC_VECTOR(15 downto 0)——加法器输出信号
);
end addr_sin;
architecture Behavioral of addr_sin is
signal a_sin,a_sin1,count,count1:STD_LOGIC_VECTOR(31downto0):=“00000000000000000000000000000000”;——定义中间变量并初始化begin
d_con_sin<=a_sin;——用于微处理器读频率控制字寄存器
d_con_sin<=a_sin1;——用于微处理器读相位控制字寄存器
dout<=count1(31 downto 16);——加法器输出
process(g_sin,data_con_sin)——写频率控制字寄存器
begin
if(g_sin=“1”)then
a_sin<=data_con_sin;
end if;
end process;
pr
您可能关注的文档
- 固体废物的热量,Qw,kJ.PPT
- 国立彰化师范大学共同仪器中心电子枪真空镀膜系统对外服务办法.PDF
- 国立武陵高级中学购置98年度科学实验仪器设备标单.DOC
- 国立海山高级工业职业学校99学年度歌唱比赛活动简章-新北高工.DOC
- 国立嘉义大学植物学实习.PDF
- 国际上现有电子电气产品中有毒有害物质控制法规.PPT
- 国际原子能机精通报-IAEA.PDF
- 国道数据讲座之OADDS学位论文集成发现系统(主讲:刘立云).PPT
- 图书馆主要电子资源-重庆科技学院图书馆.DOC
- 图书馆服务平台(LibraryServicesPlatforms,LSPs)-EBSCO.PDF
- 专题5.1 分式的概念与基本性质(知识解读)(原卷版).pdf
- 专题5.1 函数【八大题型】(举一反三)(浙教版)(解析版).pdf
- 专题5.1 二次函数【八大题型】(举一反三)(苏科版)(原卷版).pdf
- 专题05由三角函数值求锐角重难点专练(解析版)-【考点培优尖子生专用】2021-2022学年九年级数学专题训练(沪教版).pdf
- 风井边坡施工组织设计.pdf
- 专题5 反比例函数中的面积求法分类训练(解析版).pdf
- 专题5.1 立体图形的初步认识【九大题型】(举一反三)(苏科版)(解析版).pdf
- 专题5.1 二元一次方程组的解法【十大题型】(举一反三)(北师大版)(解析版).pdf
- 专题5.1 分式的概念与基本性质(知识解读)(解析版).pdf
- 专题5.1 二元一次方程组(基础)(原卷版).pdf
最近下载
- 肾盂旁囊肿的研究的现状及进展.doc VIP
- 3.1《中国科学技术史序言(节选)》课件-中职高二语文(高教版2024拓展模块上册).pptx
- PCB多层压合工艺PPT课件.ppt
- 第一单元第二节+体验“云上生活”++课件 2024—2025学年川教版(2024)信息科技+七年级上册.pptx VIP
- Garmin佳明Forerunner 165 智能GPS跑步腕表说明书用户手册.pdf
- 工程项目工期关键节点和线路保证措施(模板)18.docx VIP
- 泰康入职测评考试题库答案.pdf
- Ai围棋定式大全(重排彩图).pdf
- 汽车钣喷系列教学课件--钣金件焊接工艺.ppt
- 人力资源有限公司管理制度.docx VIP
文档评论(0)