自制sdr设备(一)技术路线

1 概述

研究自制sdr设备有一段时间了,由于版主忘性大, 特开贴记录这段时间积累的问题和设想的技术方案。

2 方案

射频前端和adc板卡分别由李师傅和李师傅设计制作,版主面对数据接口和控制接口进行编程。
硬件:zedboard
工具:vivado套件
环境:win10

2.1 adc数据读取

根据设想,adc数据由pl部分采集并交替缓存在两块FIFO中,FIFO填满时分别通过两个irq中断通知ps前来访问。
因为还没弄明白ps的计算能力,所以现在还不确定是把40MHz的数据直接给ps处理还是在pl中下变频后再给ps。
需要考虑的问题一是ps的计算能力,二是数字中频有十兆带宽,如果看不到频谱感觉有点亏,所以要想办法既能看到这10M的频谱,又能减少ps的计算量。解决这个问题的一个方案是使用vivado自带的FFT ip核,实现N=2**m(m=3~16)点FFT的变换,算下来分辨率能达到610Hz,也许够用。
FIFO使用bram搭建。
ps中运行arm-Linux系统。

需要解决的技术问题有

  1. 如何将中断号和FIFO基地址写入设备树;
  2. 在驱动程序中获取中断号和基地址;
  3. 注册中断处理函数;
  4. 在中断处理函数中读FIFO并缓存至内核空间;
  5. 提供用户程序的系统调用。

参考链接

使用设备树描述中断
Linux获取设备树源文件里描述的资源

2.2 控制接口

八字没一撇的事先不提了。

3 用户程序设计

可以仿照hdsdr、sdrsharp和websdr来做,提供直接采样数字中频频谱、数字下变频后的窄带频谱、音频频谱、功率表、中频带宽滤波器、解调器、中频和音频录制等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值