Spartan-3 FPGA系列中高效PCB布局的LVDS信号倒相

技术分类: EDA工具与服务  | 2008-07-24
赛灵思公司 | Nick Sawyer等

  VHDL 语言代码:

  constant SWAP_MASK : std_logic_vector(2 downto 0) := "010" ;
loop0 : for i in 0 to 2 generate
ibuf_d : obufds generic map (IOSTANDARD => "LVDS_25")
port map (i => tx_output_reg(i), o => dataout_p(i ), oB =>
dataout_n(i));
fd_d : oddr2 generic map (DDR_ALIGNMENT => "NONE")
port map (c0 => clkin, c1 => notclock, d0 => tx_output_fix(i),
d1 => tx_output_fix(i+3), ce => '1', r => '0', s => '0', q =>
tx_output_reg(i));
tx_output_fix(i) <= tx_output(i) xor SWAP_MASK(i) ;
tx_output_fix(i+3) <= tx_output(i+3) xor SWAP_MASK(i) ;
end generate ;

  通过修改红色的粗体字符,可以方便地将此机制扩展到不同的位宽。

  如上所述,在使用 DDR 技术时,位操作可能很重要。DDR 生成环示例生成一条总线,总线的低阶位在时钟的下降沿上发送,而其高阶位则在下一个上升沿上发送。

  设计文件

  本应用指南介绍的各种接收器和发射器示例的设计文件是针对所有 Spartan-3 器件和
Spartan-3E 系列器件编写的。可从 Xilinx 网站 (xapp491.zip) 获得 Verilog 和 VHDL 两种语言的设计文件。所附 readme.txt 文件提供了最新详情。

  结论

  用 LVDS 进行设计时,有计划地谨慎使用 Spartan-3 FPGA 系列资源,可以大幅度降低 PCB 布局的复杂性,同时可以提高整体电路板信号的完整性。对于器件中集成的 LVDS 接收器和LVDS 发射器来说也是如此,但输入时钟引脚除外;输入时钟引脚必须具有正确的极性。

0
0
(请您对文章做出评价)
1】【2】【3】【4
加载中

对文章的评论

更多评论

剩余字数:  

浏览该文章的用户还看过...

  • 文 章

  • 论 坛

  • 博 客

  • 小 组

设计资源与分销

  • 博客推荐

  • 论坛推荐

  • 在线研讨会