2 基于TBUF的总线宏设计 这里在深入研究Xilinx公司所提供的总线宏的基础上,结合宏的设计技术,完善了总线宏的设计。 (1)TBUF的内部路由。图2给出内部路由后的TBUF电路结构图。TMUX的T端决定总线宏的控制端LT和RT高电平有效,而T_B端决定低电平有效。
无论控制信号是高电平有效,还是低电平有效,在使用总线宏进行通信时,LT和RT的值必须是相反的,或者是同时无效的。例如,当控制信号高有效时,即T端为1时,TBUF打开。如果总线宏是从左向右传递数据,则必须将LT设为1,RT为0,反之亦然;如果总线宏不需要传递数据,那么两个控制信号应同时为0,此时总线宏输出为高阻态。 (2)TBUF添加的方法。Virtex,Virtex-E,Spar-tan-Ⅱ,Spartan-ⅡE的内部结构类似,与TBUF添加的方法是相同的。在相应的位置选择一个可编程逻辑块(Configurable Logic Block,CLB)中的一个TBUF作为总线宏的一个TBUF(1个CLB包含2个TBUF),依次选择同一行相连下一个CLB中的一个TBUF,直至选够8个TBUF为止;对于Spartan-3,Virtex-Ⅱ,Virtex-ⅡPro和Virtex-ⅡPro X系列器件;每一个CLB中的2个TBUF都作为总线宏的TBUF被选用,在同一行中依次选择相连的4个CLB中的8个TBUF作为总线宏的TBUF,如图3所示。
(3)TBUF外部端口的命名规则。根据图1的总线宏结构,对各个TBUF的外部端口T,I和O进行相应的命名,命名时要符合所使用版本软件的要求。例如,若对端口进行如下命名:LI<3>,LT<3>等,而端口在进行物理设计规则检查(Design Rule Check,DRC)时会出错,根据所提示的出错信息将命名改为:LI(3),LT(3)等,即能顺利通过DRC,完成端口的命名。 (4)总线宏输出端口的定义。总线宏输出端口的定义只能通过手工路由(Manual Route)方法,把相应TBUF的输出端口通过端口连线和TBUF长线连接起来。 (5)参考TBUF的设置。设计中通过约束参考TBUF的位置来决定整个总线宏的位置,若用户没有设置参考TBUF,则FPGA Editor工具会将用户添加的第一个TBUF默认为参考TBUF.至此,整个总线宏的设计完成,如图4所示。
|