三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

DAC相关知识点

DAC相关知识点

1.回放数据64bit的数据来源有两个地方:

A——ROM波形数据表(数据来源可由dds产生或者matlab产生,本实际项目选择由dds产生的数据:通过写地址出来相应频率的波形)。

B——预留的接口给客户用来回访他们的I/Q数据

(64bit数据一般是4组16bit的IQ拼接的{i0,q0,i1,q1})。

2.64bit的数据(输出频率已固定)的数据伴随时钟来源于OSERDES(1010的数据输出管脚作为伴随时钟的,为啥会用1010来生成时钟——CLK、CLKDIV的时钟沿通常不是相位一致的。当这两个时钟的时钟沿相位一致时,延迟会存在一个周期的差异)然后根据DAC的datasheet时序要求(数据伴随时钟与DAC驱动时钟的关系,本项目是数据伴随时钟是1/2DAC的驱动时钟409.6MHZ)——可以计算出时钟芯片进入oserdes逻辑模块的差分时钟频率(即OSERDESE2的CLK)和OSERDESE2的CLKDIV的频率。——CLKDIV也是ROM波形的读取时钟。

3.逻辑端会使用如下数组操作:

input [63:0] data_out_from_device

reg [15:0] oserdes_d [0:3]

//复用语句//

genvar i;

generate for (i=0;i<4;i++);

begin:名字

assign oserdes_d[i] =data_out_from_device[i*16+:16];

end

endgenerate

//复用语句//

4:压摆率是指输出变化最快那一段的斜率因为dac的输出是慢慢爬上去的,不是阶跃信号

← 返回列表