提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
第一篇文章说过,如果没有硬件那一切都是空中楼阁,我们的设计是要承载在硬件平台上的,市面上是有很多开发板买的。像什么大名鼎鼎的黑金、米联客之类的,种类非常繁多,教程也非常丰富。想找一个开发板容易,想找一个带有射频接收功能的开发板就没那么容易了,理论上,我做GPS接收机,只需要有GPS的射频接收芯片就可以了,例如之前用过的MAX2769C,这种射频芯片很便宜,控制起来也很简单,但是淘宝上没有这种卖的。(所以这里又一次遗憾自己不会硬件,要是能自己设计一块出来该多美好)。
机缘巧合下,我买到了目前这个开发板,MiniEye开发板 AD9363 + zynq7030。
AD9363
这里要介绍一下AD9363。
AD936X 系列芯片集成了 LNA、 Mixer、放大器和 IQ 调制器等 RF 前端 以及 IF 电路(ADC、DAC),单一芯片可以完成 1T1R 或者 2T2R 通道的射 频及中频处理,提供零中频的数据流给 FPGA、DSP 或者其他的基带芯片,典 型应用框图如下
AD936x 功能参数指标
◎ 集成 12 位 DAC 和 ADC 的 RF 2×2 收发器;
◎ 频点范围: 325 MHz to 3.8 GHz;
◎ 带宽范围(AD936x 系列的不同型号规格如下:整个系列的所有芯片是 Pin to Pin 兼容的。
◎ 支持 FDD 和 TDD;
◎ 2.4 Hz 本振(LO)步长;
◎ 高线性度宽带发射器; Tx 噪声:≤−157 dBm/Hz 本底噪声(概念); ◎ CMOS/LVDS 数字接口;
很显然,AD9363是用来做移动通信用的,325 MHz to 3.8 GHz的范围,能提供零中频的数据流、带宽最大能到20MHz。对于GPS L1 C/A码带宽来说已经戳戳有余了。
这个芯片比MAX2769C来说不知道高端到哪里去了,MAX2769C只需要配置十几个寄存器,而这个AD9363要配置几千个寄存器。。。
再这里,我不会详细讲解AD9363怎么去用,这要研究起来,没个一两个月哪搞得定。不过我之前有个关于AD9364的使用的一些博文可以参考。因为我们买的是开发板,当然会附送一些例程了。
我找到了一个有AD9363驱动的例程,里面关于AD9363的配置都已经配置好了。我将一些参数进行修改,以适应我自己的应用,其主要配置如下:
外部晶振40M: BBPLL RFPLL参考时钟
•采样率25M :ADC采样率,HB滤波器,设置了10M的带宽,最后一级滤波器旁路掉
• Dual Port Full Duplex Mode : 2T2R DDR
这几个地方我已经获取了我感兴趣的关键信息了。
1、 射频频率
RF RX : 1574M (为什么设置这个后面再讲)
RF TX:1700MHz(没有用,随便设置一个数)
2、 IQ采样
3、 Data_clk rate:50MHz
4、 采样率:25MHz,带宽10MHz
以上信息对于我接收GPS L1带宽为2M的C/A码来说已经足够了。
射频信号接收测试
FPGA工程的系统框图
找到其RX的接口部分,建立一个ILA核,有两个接收通道,我们只要使用第一路就可以了。
rx_iq_ila1 rx_iq_ila(
.clk ( rx_clk_in ),
.probe0 ( rx_i_ch1 ), //12
.probe1 ( rx_q_ch1 ), //12tx_i_ch1
.probe2 ( rx_i_ch2 ), //8
.probe3 ( rx_q_ch2 ),
.probe4(rx_ref[0])
);
使用我的穷酸信号源来试试能不能收到信号先,两百多块钱的东西看起来还很高级呢。
通过ILA观察波形,令人激动的收到了期待的点频信号,通过频谱分析,点频离期望的1.42M频点偏移了20~30KHz的样子,尽管它的质量还是有点差,这应该是信号源的信号质量比较差,接收端应该问题不大。好了,结论就是这个闲置了两年多的开发板还没有坏,还能用。而且我也能将我的工作继续下去了。
后记
至此,一个最大的不确定性可以排除了。如果这个开发板的射频部分无法工作,那么后面的工作就完全无法进行下去了。但是,还有一个不确定因素也需要确认,就是那个HackRF One真的如宣称所言能够作为一个GPS模拟器么。这个就留在下一篇再来研究。