便宜啊,要跟rtl sdr竞争
自己做一个SDR的想法:
项目目标:
可以实时解码数字电视: DVB-C 、 DTMB (带宽8M)
BOM 成本< 100 rmb
然后就有了现在这个项目。
看了 “纸飞机” 大佬 想DIY软件无线电?只看这一篇就足够了:SDR硬件方案一网打尽 - 知乎 (XXXXXXXXX) 这篇,基本上主流方案都有了。
r820t2 adc cpld ft232h
确定选型:
R820T2 40~1700Mhz
ADC = 3PA1030 最高50Msps 10bits
CPLD = AG1280 1K lut 680kbits ram
FT232H fifo模式支持USB 40MBps
然后就是,开搞。淘宝买模块…… 做了个简单的PCB 把他们连接一起:
电视棒去掉USB芯片仅保留R820T2 然后,飞线中频输出到ADC 然后CPLD完成数据转换,FIFO格式送到FT232H,就可以了。
为了提升数据率:
CPLD 的数据拼接格式:
简单说,就是把3个ADC数据 10bits * 3= 30bits 在高位添加2bits序号0,1,2,3,0……序号作为同步标志。
这个样子USB 的数据带宽需要:
28.8*10*32/30 = 307.2Mbps = 38.4MBps 就是每秒38.4MB的USB数据。
===================================================================硬件有了
目前完成了,GNURADIO 数据接收,实时接收ATSC信号。带宽可以到8M,CPU AMD5600G, 占用15%
下一步,完成ATSC 实时解码。 因为淘宝买了一个ATSC的发射机,用来调试,如下图:
usb2.0 hs ,40MB,大B。400Mbps
项目目标是取代RTLSDR ,
USB3.0 没啥必要,瓶颈在tuner带宽8M。
考虑过来。
ADC直采可以有25Mhz带宽,加上TUNER到25M,是可以cover完整的0-30Mhz,需要做个抗混叠以及放大器。
然后引入一个问题,CPLD需要做数字选频,不是不会,是CPLD没那么多资源。
可以做,但是优先级先放低,算支线任务。
顺便跟新一下。
AG1280停产了,导致硬件方案需要修改。换器件
demo板子测试发现有漏数据,所以准备修复数据格式,大概思路
40M 10bits采样IF,做iq转换变成滤波,降采样到10Mhz 11bits IQ两路直接给USB。
需要重新开发数据处理链路,收益是USB数据率降低到220Mbps, 数据分辨率增加0.5bit,过采样收益。数据格式变成IQ交替软件更好处理。现在的主流软件基本都是IQ数据接口。
目前进度,正在调试新的CPLD替代芯片。
有意思的设计。8M的带宽其实比大部分USB2.0接口的SDR都宽了。RTLSDR blog V4版本...
软件ftd2xx的python库开发
全python实现。接收usb数据,然后转成网络数据,gnuradio用网络接收,其实就是都是本地ip。
板子送到pc的数据还算要改成IQ形式,否则各种软件都是默认iq,需要拆分重组对齐麻烦。所以,后面的新版要大改。
大概思路
40M 10bits采样IF,做iq转换变成滤波,降采样到10Mhz 11bits IQ两路直接给USB。
这个运算在CPLD里面做,然后降采样,带内滤波TUNER已经搞定了,降低USB数据率。软件直接拿到的就是IQIQ了。
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |
200字以内,仅用于支线交流,主线讨论请采用回复功能。