DSP的高速串行外设接口设计
大大降低了整体功耗;在开关方面采用了三态门,有效的防止了信号倒流,实现了信号传输的稳定;添加了一个反馈信号,在需要的时候.能够把所需反馈信号再次输入;同时加快r开关速率,带负载的能力也增强。
图4 A、B两种触发器比较
4 RTL级设计
随着数字系统设计的复杂性不断增加,在设计初期指定有效的设计策略对于整个设计是至关重要的。行为描述方式是对系统数学模型的描述。它包括RTL、算法级、系统级的描述。RTL是指通过描述寄存器之间数据流动来描述数字电路系统,是一个数据流的概念.寄存器与寄存器之间的数据处理由组合逻辑完成。RTL级是Verilog较高抽象层次,在这个抽象层次上,模块可以根据设计的算法来实现.而不用考虑具体的实现细节。
4.1寄存器整体电路设计
下面是部分Verilog HDL源代码.描述了数据传输时相关寄存器的功能设置:先是对复位时各个寄存器的初始值,接下来是对寄存器进行功能设计.和数据传输时候产生的中断使能和标志位的设计。
always @ (posedge Peri_clk or posedge RESET)
begin
if(RESET)
begin
outdb<=8’hz; SPICCR<=8’h00; SPICTL<=8’h00; SPIBBR<=8’h00; SPIPRI<=8’h00;
end
end
always @(posedge Peri_clk or posedge RESET)
begin
if(RESET)
shift_out_d<=1’b0;
else
case(1’b1)
spidat_w: SPIDAT<=PeriDB; shifi_out_clk:shift_out_d<=SPIDAT[7];
sample_in_clk:SPIDAT[7:0]<={SPIDAT[6:0],sample in_d};
default;
endcase
end
always@(posedge Peri_clk or posedge RESET)
begin
if(RESET)
SPISTS<=8’h00;
else
begin
if(SW_RESET)
SPISTS[7:6]<=2’hO;
else if(int_flag_set)
begin
SPISTS[6]<=1’b1;SPIBUF<=SPIDAT;SPIEMU<=SPIDAT;
end
else if(spibuf_r)
SPISTS[6]<=1’b0;
if(overrun_flag set)
SPISTS[7]<=1’b1;
else if(sts7_clr)
SPISTS[7]<=1’b0;
end
end
4.2整体时序仿真
将上述Verilog代码编译,再写上对应测试代码进行验证。图5是寄存器的写操作的整体时序仿真波形图.验证了上述代码正确可行。
图5写操作整体时序仿真
5 结论
本文作者的创新点是改进了硬件触发器的结构.用三态门和传输门取代那种单一MOS管的结构。首次应用到TMS320LF2407芯片串行外设接口上,降低工作电压到3.3V,加快数据传输,而且还有相应的反馈信号,进一步完善了触发器结构。同时有很好的可移植性好。具有充分的可裁剪性,本设计运行可靠,达到预期的效果。
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- DSP+FPGA结构在雷达模拟系统中的应用(01-02)