Answers Database


SYNPLIFY: How to apply the DRIVE property using the xc_props attribute?


Record #1337

Product Family: Software

Product Line: Synplicity

Product Part: Synplify

Product Version: 5.0

Problem Title:
SYNPLIFY: How to apply the DRIVE property using the xc_props attribute?


Problem Description:
Urgency: Standard

General Description:
How to apply the DRIVE property using the xc_props attribute?

The DRIVE property is applied to IOB output components OFD,
OBUF, OBUFT, IOBUF instances (with implied LVTTL standards).

For the XC4000XV, XC4000XLA, and SpartanXL, DRIVE programs
the output drive current from High (24 mA) to Low (12 mA).

For Virtex and Spartan2, DRIVE selects output drive strength (mA)
for the components that use the LVTTL interface standard.


Solution 1:

-- VHDL

library IEEE;
use IEEE.std_logic_1164.all;
library synplify;
use synplify.attributes.all;

entity fast_ex is
port (CLK : in STD_LOGIC;
       D_IN : in STD_LOGIC_VECTOR (3 downto 0);
       Q_OUT : out STD_LOGIC_VECTOR (3 downto 0));
attribute xc_props of Q_OUT : signal is "DRIVE=24";
end fast_ex;

architecture XILINX of fast_ex is

begin

-- D flip-flop
process(CLK)
begin
   if rising_edge(CLK) then
     Q_OUT <= D_IN;
   end if;
end process;

end XILINX;



Solution 2:

// Verilog

module ff_example (CLK, D_IN, Q_OUT);
input CLK;
input [3:0] D_IN;
output [3:0] Q_OUT /* synthesis xc_props="DRIVE=24" */;

reg [3:0] Q_OUT;

// D flip-flop
always @(posedge CLK)
   Q_OUT <= D_IN;

endmodule




End of Record #1337 - Last Modified: 07/15/99 11:31

For the latest news, design tips, and patch information on the Xilinx design environment, check out the Technical Tips!