- 积分
- 3704
- 在线时间
- 4669 小时
- 最后登录
- 2024-4-1
- 阅读权限
- 100
- 精华
- 6
- UID
- 1077
- 帖子
- 3314
- 精华
- 6
- 经验
- 3704 点
- 金钱
- 2484 ¥
- 注册时间
- 2004-7-24
|
楼主 |
发表于 2010-4-15 22:51
|
显示全部楼层
在开工之前,必须给DAC定下所有的功能需求,这些需求决定了后面的DAC的方案。头脑风暴了半个月,想到最后这些需求可以概括为以下几条:
1.最低的失真度和高信噪比。这两个指标主要由D/A的性能决定,此外PCB的设计、电源也有很大影响。
2.用软件进行内插计算,最高要支持16X内插,也就是所谓的16X超采样。
3.低JITTER要求,因此必须要有本地低JITTER的PLL和FIFO做缓冲,FIFO要有一定深度以防被拉破。
4.平台化设计,作为硬件平台通过改变软件可以当其他东西用,比如信号源。
5.丰富的资料显示,DAC必须能显示采样率,超采样率,输入通道,FIFO状态等资料。
要满足需求1,就必须要用性能顶级的D/A,在07年,顶级D/A容易买到的基本上就两种PCM1794(1792),AD1955,前者是信噪比最高,失真-107dB,后者信噪比略低,但是失真-110dB,可谓各有千秋,都支持MONO的全平衡方式,这是高级DAC必须采用的方式,否则指标是做不上去的。虽然两层PCB在音频带内也可以做到比较高的信噪比,但是我做惯了高速电路,显然2层PCB不符合自己的思维习惯,最后纠结了一下,还是决定用4层,虽然平时4层板也不入法眼,不过自己DIY能这么玩已经算奢侈了。
要满足需求2,就要用到通用的信号处理器,目前我们信号处理领域里一般常用的就是DSP或者FPGA,一般说来DSP更适合完成较为复杂但是并行性不高的算法,FPGA则刚好相反,由于现在的FPGA都带有不少宝贵的DSP块,因此FPGA适合做实时性要求高,并行性要求高的信号处理,音频信号处理两者都可以,由于算法比较简单(主要是内插滤波算法和控制用PID算法),FPGA更胜任此工作,包括接口,FIFO,控制器都在FPGA里做掉了,真正的SOC。
要满足需求3,唯一的办法是用本地PLL,对本地PLL的要求是近端相噪一定要低,至少在0-20KHZ内相噪要低。本地PLL的方案中具有决定作用的是压控振荡器,做压控振荡器最好的是用高性能压控晶振,不过压控晶振的牵引范围比较小,一般才50个PPM(恒温的还要小的多)有可能会无法锁定输入偏差大的时钟。毕竟音频系统的质量参差不齐。此外另一个方法是用DDS,DDS的相噪比压控晶振略大,但是其牵引范围极大,而且是数字控制更方便。便于使用软件锁相环。考虑再三,决定使用DDS和FPGA做软件锁相环来搞定比较要命的时钟抖动问题。这个时钟抖动对听感的影响还是超乎想象的。FIFO深度的基本原则是在平时听音的时候,不会因为软锁跟踪的慢给拉破,这个一方面要靠软锁的精度保证,另一方面可以把FIFO也作为反馈环路的一部分。
要满足需求4,可以在PCB的冗余设计上做一定的考虑,比如足够的接口,FPGA资源等,这个比较简单。
要满足需求5,看来点阵式显示屏是必须的了,市场上有种1602的VFD屏,驱动方式和1602LCD类似,十分好用,显示效果远远超过LCD,唯一缺点是价格贵,不容易搞到,不过做个个把台问题也不大。(待续) |
|