差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
analog_circuit_learning_kit [2023/03/20 13:15]
gongyu [3 电路详解]
analog_circuit_learning_kit [2023/10/20 11:36] (当前版本)
gongyu [6. 开机测试]
行 180: 行 180:
 {{ :​dds_analog.png |}}<WRAP centeralign>​DDS模拟部分</​WRAP>​ {{ :​dds_analog.png |}}<WRAP centeralign>​DDS模拟部分</​WRAP>​
 {{ :​dds_sch.png |}}<WRAP centeralign>​DDS部分的电路原理图</​WRAP>​ {{ :​dds_sch.png |}}<WRAP centeralign>​DDS部分的电路原理图</​WRAP>​
 +
 +##### 3.2.1 高速DAC + 差分电流转单端电压
 电路中采用了3Peaks公司的10位精度、最高转换率达125Msps的高速DAC - [[http://​file.3peakic.com.cn:​8080/​product/​Datasheet_3PD5651E.pdf|3PD5651]],在本设计中我们同时支持WebIDE编译环境(FPGA的内部时钟只能到12MHz)、Lattice或Altera的官方编译工具(通过PLL内部逻辑能够工作到200MHz)以及ICE40 FPGA的Radiant,ICE40 FPGA最高只能运行在48MHz,因此我们DAC的转换率最大设定为48Msps、生成的模拟信号的带宽为5MHz,后续的滤波器电路也是按照5MHz来设计。 电路中采用了3Peaks公司的10位精度、最高转换率达125Msps的高速DAC - [[http://​file.3peakic.com.cn:​8080/​product/​Datasheet_3PD5651E.pdf|3PD5651]],在本设计中我们同时支持WebIDE编译环境(FPGA的内部时钟只能到12MHz)、Lattice或Altera的官方编译工具(通过PLL内部逻辑能够工作到200MHz)以及ICE40 FPGA的Radiant,ICE40 FPGA最高只能运行在48MHz,因此我们DAC的转换率最大设定为48Msps、生成的模拟信号的带宽为5MHz,后续的滤波器电路也是按照5MHz来设计。
  
 关于3PD5651E: 关于3PD5651E:
-  * 125 MSPS Update Rate +  * 125MSPS转换率 
-  * 10-Bit ​Resolution +  * 10-Bit分辨率 
-  * Linearity: 1/4 LSB DNL +  * 线性度: 1/4 LSB DNL 
-  * Linearity: 1/2 LSB INL +  * 线性度: 1/2 LSB INL 
-  * Differential Current Outputs2 mA to 20 mA +  * 差分输出电流2mA到20mA 
-  * SFDR to Nyquist at 40MHz Output: 62 dBc +  * 到40MHz奈奎斯特输出的SFDR: 62 dBc 
-  * Fast Settling35 ns Full-Scale Settling to 0.1% +  * 快速建立时间35ns满量程设置到0.1% 
-  * On-Chip ​1.10 V Reference +  * 片内1.10V基准电压 
-  * Edge-Triggered Latches +  * 边沿触发锁存 
-  * Power Dissipation: 175 mW @ 5 V to 45 mW @ 3 V +  * 功耗: 175 mW @ 5 V to 45 mW @ 3 V 
-  * Power-Down Mode: 20 mW @ 5 V +  * 休眠模式: 20 mW @ 5 V 
-  * Single ​+5 V or +3 V Supply Operation +  * +5V或+3V供电 
-  * Green, ​28-Lead TSSOP Package+  * 28TSSOP封装 
 我们通过一个模拟开关SGM3719来切换为3PD5651E提供基准电流的外置电阻,分别为2K和8K,在这两种配置下,DAC的满量程输出为: 我们通过一个模拟开关SGM3719来切换为3PD5651E提供基准电流的外置电阻,分别为2K和8K,在这两种配置下,DAC的满量程输出为:
   * 2KΩ:1.1V/​2K * 32 = 17.6mA   * 2KΩ:1.1V/​2K * 32 = 17.6mA
行 210: 行 213:
 {{ :​dac_amp_simu_freq.png |}}<WRAP centeralign>​高速DAC输出电压的频谱响应</​WRAP>​ {{ :​dac_amp_simu_freq.png |}}<WRAP centeralign>​高速DAC输出电压的频谱响应</​WRAP>​
  
 +我们看一下使用12Msps转换率生成的正弦波的波形:
 +{{ ::​hsdac_3m_out.png |}}<WRAP centeralign>​高速DAC输出3MHz正弦波信号的波形,12Msps转换率</​WRAP>​
 +{{ ::​hsdac_out.png |}}<WRAP centeralign>​高速DAC输出750KHz正弦波信号的波形,12Msps转换率</​WRAP>​
 +{{ ::​hsdac_46k_out.png |}}<WRAP centeralign>​高速DAC输出46.875KHz正弦波信号的波形,12Msps转换率</​WRAP>​
 +{{ ::​hsdac_46k_freq.png |}}<WRAP centeralign>​高速DAC输出46.875KHz正弦波时的频谱</​WRAP>​
  
-{{ ::​hsdac_46k_out.png |}} +##### 3.2.2 5阶低通滤波器 
-{{ ::​hsdac_46k_freq.png |}} +{{ :bwfilter.png |5阶巴特沃斯滤波器响应}}<WRAP centeralign>​5阶巴特沃斯滤波器的频率响应</​WRAP>​ 
-{{ ::​hsdac_3m_out.png |}} +{{ :ellipticfilter.png |5阶椭圆滤波器响应}} <WRAP centeralign>​5阶椭圆滤波器的频率相应</​WRAP>​ 
-{{ ::hsdac_out.png |}} +{{ ::​lpf_b_3m_freq.png |}}<WRAP centeralign>​3MHz的信号通过5阶巴特沃斯滤波器后的频谱</​WRAP>​ 
-{{ ::​lpf_b_3m_freq.png |}} +{{ ::​lpf_e_3m_freq.png |}}<WRAP centeralign>​3MHz的信号通过5阶椭圆滤波器后的频谱</​WRAP>​ 
-{{ ::​lpf_e_3m_freq.png |}} +{{ ::lpf_b_3m.png |}}<WRAP centeralign>​3MHz的信号通过5阶巴特沃斯滤波器后波形</​WRAP>​ 
-{{ ::lpf_e_3m.png |}} +{{ ::lpf_e_3m.png |}}<WRAP centeralign>​3MHz的信号通过5阶椭圆滤波器后波形</​WRAP>​ 
-{{ ::lpf_b_3m.png |}} +{{ ::​lpf_b_750k.png |}}<WRAP centeralign>​750KHz的信号通过5阶巴特沃斯滤波器后波形</​WRAP>​ 
-{{ ::​lpf_b_750k.png |}} +{{ ::​lpf_e_750k.png |}}<WRAP centeralign>​750KHz的信号通过5阶椭圆滤波器后波形</​WRAP>​
-{{ ::​lpf_e_750k.png |}} +
  
 #### 3.3 信号采集电路 #### 3.3 信号采集电路
行 266: 行 272:
 {{ :​pwm_awg_freq.png |}}<WRAP centeralign>​用LTSpice仿真的频域效果</​WRAP>​ {{ :​pwm_awg_freq.png |}}<WRAP centeralign>​用LTSpice仿真的频域效果</​WRAP>​
  
 +**实际测试:​**
 +12MHz输入时钟,经过PLL后得到396MHz的内部时钟,用于PWM信号的生成。
 +AWG信号的幅度采用10位精度,因此DDS的转换时钟为396MHz/​1024 ~ 386.71875Ksps
 +要得到20KHz的模拟信号,24位的相位累加字为24'​H0D3D56
 +
 +{{ ::​pwm_awg_20khz_wave.png |}}<WRAP centeralign>​396MHz主频生成20KHz的模拟信号波形</​WRAP>​
 +{{ ::​pwm_awg_20khz_spec.png |}}<WRAP centeralign>​396MHz主频生成20KHz的模拟信号频谱</​WRAP>​
 +
 +在频谱上可以看到在386.71875KHz左右各有一个20KHz的镜像频率366.71875KHz和406.71875KHz的频率分量,这是因为我们低通滤波器在366KHz ~ 406MHz的抑制度比较低,如果采用更高阶的低通滤波器,可以将这部分的频率分量压制下来。
 +{{ ::​pwm_awg_20khz_sim.png |}}<WRAP centeralign>​使用simDDS查看生成信号的频谱 - 没有加低通滤波器</​WRAP>​
 +{{ ::​pwm_awg_20khz_lpf.png |}}<WRAP centeralign>​使用simDDS查看添加了2阶低通滤波器后的频谱</​WRAP>​
 +{{ ::​pwm_awg_20khz_lpf1.png |}}<WRAP centeralign>​使用simDDS查看添加了2阶低通滤波器后的杂散信号表</​WRAP>​
 +{{ ::​pwm_awg_20khz_lpf2.png |}}<WRAP centeralign>​使用simDDS查看添加了5阶低通滤波器后的频谱</​WRAP>​
  
 #### 3.5 可调直流电压生成 #### 3.5 可调直流电压生成
行 338: 行 357:
   - 线性稳压/​LDO稳压器   - 线性稳压/​LDO稳压器
   - 电荷泵/​负电压生成   - 电荷泵/​负电压生成
 +
 +### 6. 开机测试
 +使用Lattice XO2-4000HC FPGA小脚丫,下载测试程序:{{:​acdlk_test_impl1.rar|模拟信号训练学习平台FPGA代码}},解压后生成jed文件可以下载。
 +连接方式见图片:{{ :​acdlk_test_setup.jpg |测试连接方式}}
 +
 +板上的跳线除以下的跳线不连接之外,其它都连接:
 +  - 用于扩展测试的管脚信号:
 +    - J4的Vb - 对外提供5V直流电压,跳线两端都连接J2安装的FPGA核心板的+5V供电电压,用于对外供电
 +    - J4的X1 - 对外提供一个IO,跳线两端都连接J2安装的FPGA的IO39,用于对外提供数字接口信号
 +    - J4的GND - 对外提供GND,跳线两端都已经接地
 +    - J5的3.3V - 对外提供3.3V直流电压,跳线两端都已经连接在J2安装的FPGA核心板的3.3V上
 +    - J5的X2 - 对外提供一个IO,跳线两端都连接J2安装的FPGA的IO2,用于对外提供数字接口信号
 +    - J5的GND - 对外提供GND,跳线两端都已经接地
 +  - 用于信号输入的管脚信号
 +    - J7 - 用于模拟信号输入,左侧为用Sigma Delta测试的模拟信号电压,右侧为GND
 +
 +二选一跳线:
 +  - JP3:连接左侧两个管脚,使得在J6上输出的信号来自高速DAC生成的模拟信号
 +  -