ARM Cortex-A8/A9开发板 | ARM11开发板ARM11开发套件 | ARM9开发板ARM9开发套件 | 飞思卡尔I.MX28I.MX6开发板 |
tiny210/mini210开发板 | mini6410开发板/套餐 | Tiny6410开发板无线套件 | mini2440开发板/套餐 | micro2440开发板带核心板 | 友善开发板配件 模块 | QQ2440 V3 SBC-2410X |
FL2440 OK2440-IV V4 | OK2440-III OK2440V3 | TE2440-II TE2440V2 | OK6410 S3C6410 ARM11 | FL6410/OK6410B ARM11 | TE6410 S3C6410 ARM11 | TE-9263 AT91SAM9263 | 开发板配件 模块和其他 |
Xilinx开发板/fpga开发套件 | altera开发板/fpga开发套件 | 基于FMC FPGA/DSP子卡 |
BeagleBoard原厂开发板 | PandaBoard原厂开发板 |
TI DM3730 DevKit8500D | TI系列 omap3530开发板 | ATMEL系列 开发板 | Samsung系列 开发板 | 开发板配件-仿真器 模块 | NXP LPC3250 mini3250 |
Tiny210 三星S5PV210 | Mini210/Mini210s开发板 | Tiny4412开发板Cortex-A9 | Tiny6410开发板 ARM11 | mini2440开发板 ARM9 | micro2440开发板 ARM9 | mini6410开发板 ARM11 | 友善ARM开发板配件 模块 |
keil ARM仿真器/开发工具 | STM32开发板 Cortex-M3 | NXP LPC开发板Cortex-M3 | ATMEL系列 ARM开发板 | Luminary EKK8962开发板 | Freescale i.MX31开发板 | 三星s3c2440 s3c6410开发板 |
FL2440 OK2440-IV V4 | OK6410 S3C6410 ARM11 | FL6410/OK6410B ARM11 | OK210/-A Cortex-A8 | TE2440-II TE2440V2 | TE6410 S3C6410 ARM11 | TE-9263 AT91SAM9263 | ARM开发板配件 模块等 |
Real6410开发板/套餐 | Real210开发板/Real2410 | WIFI GPS GPRS模块摄像头 |
Xilinx开发板/开发套件KIT | Altera开发板/开发套件KIT | 配套模块 |
NXP LPC开发板 ARM7 | Cortex-M3 STM32开发板 | 最小系统模块类(初学者勿选) | 开发工具 仿真器 调试器 | TFT液晶屏LCD 液晶模块 |
DM642开发板/DM642实验箱 | DM6446开发板/DSP实验箱 | DSP仿真器 液晶屏 摄像头等 |
DM3730/AM3715/AM3359 | OMAP3530AM1808AM3517 | 飞思卡尔Cortex-A9开发板 | ATMEL系列ARM开发板 | NXP LPC3250 LPC1788 | Samsung系列ARM开发板 | STM32系列F207/F407 | ARM开发板配件-仿真器 模块 |
Realv210 S5PV210开发板 | Real6410开发板 ARM11 | WIFI GPS GPRS模块摄像头 |
NXP LPC开发板 ARM7 | Cortex-M3 STM32开发板 | ARM小系统模块(初学勿选) | 开发工具 ARM仿真器 调试器 | TFT液晶屏LCD 液晶模块 |
keil ARM仿真器/开发工具 | STM32开发板 Cortex-M3 | NXP LPC开发板Cortex-M3 | ATMEL系列 ARM开发板 | Luminary EKK8962开发板 | Freescale i.MX31开发板 | 三星s3c2440 s3c6410开发板 |
Exynos4412开发板A9四核 | UT-S5PV210 S5PC100 | UT-S3C6410开发板 ARM11 | idea 6410开发板 ARM11 | UT-S3C2450开发板 ARM9 | UT-S3C2416开发板 ARM9 | UT-S3C6410核心板 工控 |
Xilinx开发板 FPGA开发套件 | altera开发板 FPGA开发套件 | FMC模块 配件 下载线 |
DM642开发板/DM642实验箱 | DM6446开发板/DSP实验箱 | DSP仿真器 液晶屏 摄像头等 |
s3c2410 ARM9 FS2410 | s3c2440开发板 ARM9 | s3c44B0开发板 ARM7 | s3c6410 2450 2443/13 | PXA270 PXA320 PXA255 | Atmel 9200 9261 9G20 | Philips NXP开发板YL-LPC | FS-EP9315开发板ARM9 | LCD液晶屏TFT真彩/触摸屏 | ARM仿真器/仿真调试工具 | ARM开发板配套ARM核心板 |
三星s3c2410 s3c44B0 | 三星s3c6410 s3c2443 | Intel PXA270 PXA320 | UP-CUP OMAP5910平台 | FPGA Xilinx altera平台 | 配件-仿真器 模块 液晶屏LCD | 龙芯开发板UP-DRAGON-I | 物联网教学科研设备 | EDA/FPGA/SOPC教学科研 |
utu2440-F-V4.5 含核心板 | utu2440-S-V4.1 单板结构 | YC2440-F-V5.1开发板 豪华型 | YC-ePC-A系列人机界面 | Mars-EDA套件CPLD FPGA | 触摸屏LCD 摄像头 WI-FI模块 |
ARM开发板/开发平台 | FPGA开发板/开发平台 | 编程器/烧写器下载器烧录 | ZLG 仿真器ARM FPGA DSP | ZLG周立功逻辑分析仪 |
DSP初学者开发套件(DSK) | DSP仿真器/仿真系统 | DSP开发板/DSP试验箱 | DaVinci系列多媒体平台 | Xilinx FPGA大学计划产品 | SEED教学实验系统 | FPGA/DSP FPGA开发板 | TI原厂开发板套件/CCS软件 |
ARM开发板 | XSCALE开发板 | ARM仿真器 | SOPC开发板 | DSP开发板 | 达芬奇系列DSP开发平台 | DSP仿真器 | DSP实验箱 | DSP专业研究平台 | ARM实验箱系列 |
广嵌实验室项目产品 | GEC2440/GEC6410开发板 |
泰克Tektronix示波器 | 普源RIGOL示波器 | USB虚拟示波器 |
UT-S5PC100 UT-S5PV210 | UT-S3C6410开发板 ARM11 | idea 6410开发板 ARM11 | UT-S3C2450开发板 ARM9 | UT-S3C2416开发板 ARM9 | UT-S3C6410核心板 工控 | 开发板模块wifi gps等 |
EMA OMAP3530开发板 | EMA OMAP 3530核心板 |
三星s3c2410 s3c44B0 | 三星s3c6410 s3c2443 | Intel PXA270 PXA320 | UP-CUP OMAP5910平台 | FPGA Xilinx Altera平台 | 配件-仿真器 模块 液晶屏LCD | 龙芯系列 UP-DRAGON-I |
utu2440-F-V4.5 含核心板 | utu2440-S-V4.1 单板结构 | YC2440-F-V5.1开发板 豪华型 | 触摸屏LCD 摄像头 WI-FI模块 | Mars-EDA套件CPLD FPGA | ePC系列工控一体机ARM9 A8 |
ARM开发板/开发平台 | FPGA开发板/开发平台 | 编程器/烧写器下载器烧录 | ZLG 仿真器ARM FPGA DSP | ZLG周立功逻辑分析仪 |
DSP初学者开发套件(DSK) | DSP仿真器 | DSP开发板 | DSP实验箱 | Xilinx FPGA大学计划产品 |
ARM开发板 | XSCALE开发板 | ARM仿真器 | SOPC开发板 | DSP开发板 | 达芬奇系列DSP开发平台 | DSP仿真器 | DSP实验箱 | DSP专业研究平台 | ARM实验箱系列 |
ARM开发板S3C6410等 | Cortex-A8/ARM11仿真器 | ADSP Blackfin开发板 | FPGA Spartan-3E开发板 |
GEC2410开发套件ARM9 | GEC2440开发套件ARM9 |
泰克 示波器 |
择要:先容数控振荡器的事变原理,重点叙述用现场可编程门阵列(FPGA)和静态随机存储器(SRAM)实现数控振荡器的要领,同时给出采取此布局计划的数控振荡器的特点和性能。
关键词:数控振荡器(NCO);查找表;XC2V1000;CY7C1021;计划中图分类号:TN914.3 文献标识码:A 文章编号:1006—6977(2006)01—0022一03
1 小序
数控振荡器是数字通讯中调制解调单位必不可少的部分,同时也是种种数字频率合成器和数字信号产生器的内核。随着数字通讯技能的生长。对发送数据的精度和速率请求越来越高。怎样得到可数控的高精度的高频载波信号是实现高速数字通讯体系必须办理的题目。可编程逻辑器件和大容量存储器的生长为这一题目的办理带来了曙光。本文先容怎样用FPGA(现场可编程逻辑门阵列)和SRAM(静态随机存储器)实现高精度数控振荡器。
2 NCO概述
NCO(Numerical Controlled Oscillator)即数控振荡器用于孕育产生可控的正弦波或余弦波。着实现的要领如今重要有谋略法和查表法等。谋略法以软件编程的方法通过及时谋略孕育产生正弦波样本.该要领耗时多且只能孕育产生频率相对较低的正弦波.而必要孕育产生高速的正交信号时,用此要领无法实现。因此,在实际应用中一样平常采取最有效、最大略的查表法,即事先根据各个NCO正弦波相位谋略好相位的正弦值。并以相位角度作为地点把该相位的正弦值数据存储在表中,然后通过相位累加孕育产生地点信息读取当前时候的相位值在表中映射的正弦值,从而孕育产生所需频率的正弦波。
用查表法实现NCO的性能指标取决于查表的深度和宽度,即取决于表现相位数据的位数(查表存储器地点线的位数)和表现正弦值数据的位数(查表存储器数据线的位数)。改进NCO性能最大略和最底子的要领是加大查找表的深度和宽度。如今,用查找表法实现NCO的广泛做法是用片内ROM作为查找表,由于片内资源的限定,查找表的深度和宽度一样平常不会很大(通常为256x8 bits),大大限定了NCO性能的进步。用独立的大容量SRAM作为查找表,把查找表从片内移到片外,可以较好办理这个题目。基于这种头脑,笔者告成地用FPGA(Xilinx公司的XC2V1000型门阵列)和SRAM(Cypress公司的CY7C1021型存储器)实现了NCO。
3 NCo的实现
3.1 布局计划
用FPGA和SRAM实现的NCO的布局如图1所示。大框内部分是由FPGA完成.重要部件分为频率控制字寄存器、相位控制字寄存器、通道控制字寄存器、累加器、加法器、通道选择器和锁存器等。微处理惩罚器对NC()举行控制,可用单片机或DSt,(数字信号处理惩罚器)实现。
3.1.1 频率控制字寄存器、相位控制字寄存器、累加器和加法器
频率控制字寄存器和相位控制字寄存器都是32位并行输入,并行输出寄存器,它们通过微处理惩罚器接口举行读写。频率控制字寄存器确定载波的频率.相位控制字寄存器确定载波的初始相位。32位累加器对代表频率的频率控制字举行累加运算,累加结果与代表初始相位的相位控制字通过32位加法器举行相加运算.相加结果的高16位数据读取查找表的地点信息。频率控制字寄存器、相位控制字寄存器、累加器和加法器可以用VHD[.语言形貌,集成在一个模块中,其VHDL源步伐如下:
3.1.2通道控制字寄存器和通道选择器
通道控制字寄存器和频率控制字寄存器与相位控制字寄存器的布局完全一样.都是32位并行输入/并行输出寄存器,通过微处理惩罚器接口举行读写。通道控制字寄存器仅用末了一位对通道选择器举行控制。通道选择器是二选一复用器.当Sel控制端为O时选择通道l,当Sel控制端为1时选择通道2。通道选择器作为SRAM与FPGA的接口.每个通道不但包括16条地点线,并且另有3条控制线和32条数据线。在图l中,为了使NCO的布局越发清楚,通道选择器的控制线和数据线没有表现出来。
3.1.3 SRAM和锁存器
SRAM是64Kx32的高性能静态RAM.由2个CY7C102l(64KXl6)并联构成,用作查找表。SRAM通过微处理惩罚器举行配置,直接存放2路、1个周期、65 536个16位载波样本(高16位存放正弦波,低16位存放余弦波)。固然SRAM是异步器件,但由于事变速率极高,在大略控制逻辑共同下完全可以事变在同步模式下。NCO事变时.控制逻辑(用VHDL语言形貌)通过通道l使SRAM的控制信号线处于读有效电平,用相位地点直接驱动SRAM.从SRAM读出的数据进入32位锁存器.分2路直接输出.不必要任意地点和数据转换逻辑。用于锁存器的时钟和用于累加器、加法器的时钟在相位上相差180°,这是由SRAM的开关特性决定的。
3.2 NCO的事变进程
NCO事变前必须对SRAM举行初始化.图2示出NCO的事变流程。起首,微处理惩罚器向通道控制字寄存器写入1,使通道选择器选择微处理惩罚器接口。然后.微处理惩罚器对SRAM举行配置.向SRAM中写入载波样本.接着,微处理惩罚器向频率控制字寄存器和相位控制字寄存器写入频率控制字和相位控制字,确定载波的频率和初始相位.末了,向通道控制字寄存器写入0.通道选择器选择通道l,使NCO处于事景况态。此时微处理惩罚器可以对频率控制字寄存器和相位控制字寄存器举举措态读写,实现对NCO的动态及时控制.完成NCO频率与初始相位的调解。
3.3 NCO性能评估
根据上述布局.笔者计划了一种NCO体系。该体系的事变时钟为80MHz.用DSP作为微处理惩罚器。通过体系测试.该NCO的性能指标到达了计划请求,频率辨别率△f=O.0186Hz,信噪比(SNR)在100dB以上.图3示出NCO的典范特性曲线。
4 布局特点
用FPGA和SRAM实现数控振荡器有很多特点。
起首,查找表的容量可以进一步加大。此计划的布局把相位累加部分和查找表退出单独实现.由于FPGA具有可重复编程性且有丰富的I/O资源,因此只要稍加窜改FPGA内的逻辑计划就可以外挂更大容量的SRAM。
其次,载波样本的数据位数可以机动控制。在查找表容量肯定的环境下,可以根据详细应用调解载波样本的数据宽度。实现的本领有二:一是在对SRAM配置时通过微处理惩罚器以软件编程的方法直接调解SRAM的数据宽度:二是在FPGA内对SRAM输出数据的位数举行截位处理惩罚.可通过调解FPGA中锁存器的输出实现。
第三,可以或许机动应用到其他范畴中。该NCO只斲丧FPGA中6%的Slices资源,大量资源包括片内RAM和硬件乘法器都没有效到,利用这些资源可以对NCO举行成果扩展,实现数字下变频器(Digital Down Converter-DDC)、数字频率合成器(Direct Digital Synthesizer-DDS)和调制解调器等。
5 结束语
本文先容了一种新的NCO实现要领,用该要领计划的NCO可实现对载波的频率、相位和幅度的完全控制。由于用独立的大容量SRAM作为查找表,使得NCO有较高的精度。同时该NCO有很大的发挥空间,可以或许机动地运用到其他范畴。
博航网 www.broadon.net 版权所有
京ICP备10051899号-2 京公网安备110108006479号