OpenCores
URL https://opencores.org/ocsvn/pci/pci/trunk

Subversion Repositories pci

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /pci/tags/rel_8/apps/crt/syn/synplify
    from Rev 120 to Rev 154
    Reverse comparison

Rev 120 → Rev 154

/pci_crt.sdc
0,0 → 1,218
# Synplicity, Inc. constraint file
# /shared/projects/pci/mihad/pci/apps/crt/syn/synplify/pci_crt.sdc
# Written on Mon Mar 10 13:33:22 2003
# by Synplify Pro, 7.2 Scope Editor
 
#
# Clocks
#
define_clock -name {CLK} -period 30.000 -clockgroup pci_clkgrp
define_clock -name {CRT_CLK} -period 44.000 -clockgroup crt_clkgrp
 
#
# Inputs/Outputs
#
define_input_delay {DEVSEL} 23.00 -ref CLK:r
define_input_delay {TRDY} 23.00 -ref CLK:r
define_input_delay {STOP} 23.00 -ref CLK:r
define_input_delay {IDSEL} 23.00 -ref CLK:r
define_input_delay {FRAME} 23.00 -ref CLK:r
define_input_delay {IRDY} 23.00 -ref CLK:r
define_input_delay {GNT} 20.00 -ref CLK:r
define_input_delay {PAR} 23.00 -ref CLK:r
define_input_delay {PERR} 23.00 -ref CLK:r
define_input_delay {AD0} 23.00 -ref CLK:r
define_input_delay {AD1} 23.00 -ref CLK:r
define_input_delay {AD2} 23.00 -ref CLK:r
define_input_delay {AD3} 23.00 -ref CLK:r
define_input_delay {AD4} 23.00 -ref CLK:r
define_input_delay {AD5} 23.00 -ref CLK:r
define_input_delay {AD6} 23.00 -ref CLK:r
define_input_delay {AD7} 23.00 -ref CLK:r
define_input_delay {AD8} 23.00 -ref CLK:r
define_input_delay {AD9} 23.00 -ref CLK:r
define_input_delay {AD10} 23.00 -ref CLK:r
define_input_delay {AD11} 23.00 -ref CLK:r
define_input_delay {AD12} 23.00 -ref CLK:r
define_input_delay {AD13} 23.00 -ref CLK:r
define_input_delay {AD14} 23.00 -ref CLK:r
define_input_delay {AD15} 23.00 -ref CLK:r
define_input_delay {AD16} 23.00 -ref CLK:r
define_input_delay {AD17} 23.00 -ref CLK:r
define_input_delay {AD18} 23.00 -ref CLK:r
define_input_delay {AD19} 23.00 -ref CLK:r
define_input_delay {AD20} 23.00 -ref CLK:r
define_input_delay {AD21} 23.00 -ref CLK:r
define_input_delay {AD22} 23.00 -ref CLK:r
define_input_delay {AD23} 23.00 -ref CLK:r
define_input_delay {AD24} 23.00 -ref CLK:r
define_input_delay {AD25} 23.00 -ref CLK:r
define_input_delay {AD26} 23.00 -ref CLK:r
define_input_delay {AD27} 23.00 -ref CLK:r
define_input_delay {AD28} 23.00 -ref CLK:r
define_input_delay {AD29} 23.00 -ref CLK:r
define_input_delay {AD30} 23.00 -ref CLK:r
define_input_delay {AD31} 23.00 -ref CLK:r
define_input_delay {CBE0} 23.00 -ref CLK:r
define_input_delay {CBE1} 23.00 -ref CLK:r
define_input_delay {CBE2} 23.00 -ref CLK:r
define_input_delay {CBE3} 23.00 -ref CLK:r
define_output_delay {AD0} 19.00 -ref CLK:r
define_output_delay {AD1} 19.00 -ref CLK:r
define_output_delay {AD2} 19.00 -ref CLK:r
define_output_delay {AD3} 19.00 -ref CLK:r
define_output_delay {AD4} 19.00 -ref CLK:r
define_output_delay {AD5} 19.00 -ref CLK:r
define_output_delay {AD6} 19.00 -ref CLK:r
define_output_delay {AD7} 19.00 -ref CLK:r
define_output_delay {AD8} 19.00 -ref CLK:r
define_output_delay {AD9} 19.00 -ref CLK:r
define_output_delay {AD10} 19.00 -ref CLK:r
define_output_delay {AD11} 19.00 -ref CLK:r
define_output_delay {AD12} 19.00 -ref CLK:r
define_output_delay {AD13} 19.00 -ref CLK:r
define_output_delay {AD14} 19.00 -ref CLK:r
define_output_delay {AD15} 19.00 -ref CLK:r
define_output_delay {AD16} 19.00 -ref CLK:r
define_output_delay {AD17} 19.00 -ref CLK:r
define_output_delay {AD18} 19.00 -ref CLK:r
define_output_delay {AD19} 19.00 -ref CLK:r
define_output_delay {AD20} 19.00 -ref CLK:r
define_output_delay {AD21} 19.00 -ref CLK:r
define_output_delay {AD22} 19.00 -ref CLK:r
define_output_delay {AD23} 19.00 -ref CLK:r
define_output_delay {AD24} 19.00 -ref CLK:r
define_output_delay {AD25} 19.00 -ref CLK:r
define_output_delay {AD26} 19.00 -ref CLK:r
define_output_delay {AD27} 19.00 -ref CLK:r
define_output_delay {AD28} 19.00 -ref CLK:r
define_output_delay {AD29} 19.00 -ref CLK:r
define_output_delay {AD30} 19.00 -ref CLK:r
define_output_delay {AD31} 19.00 -ref CLK:r
define_output_delay {CBE0} 19.00 -ref CLK:r
define_output_delay {CBE1} 19.00 -ref CLK:r
define_output_delay {CBE2} 19.00 -ref CLK:r
define_output_delay {CBE3} 19.00 -ref CLK:r
define_output_delay {DEVSEL} 19.00 -ref CLK:r
define_output_delay {TRDY} 19.00 -ref CLK:r
define_output_delay {STOP} 19.00 -ref CLK:r
define_output_delay {FRAME} 19.00 -ref CLK:r
define_output_delay {IRDY} 19.00 -ref CLK:r
define_output_delay {REQ} 18.00 -ref CLK:r
define_output_delay {PAR} 19.00 -ref CLK:r
define_output_delay {PERR} 19.00 -ref CLK:r
define_output_delay {SERR} 19.00 -ref CLK:r
define_input_delay -default 10.00 -ref CRT_CLK:r
define_output_delay -default 10.00 -ref CRT_CLK:r
 
#
# Registers
#
define_reg_output_delay {*sync_data_out*} -route 20.00
define_reg_output_delay {*meta_q_o*} -route 20.00
 
#
# Multicycle Path
#
 
#
# False Path
#
 
#
# Attributes
#
define_attribute {CLK} xc_loc {P185}
define_attribute {INTA} xc_loc {P195}
define_attribute {RST} xc_loc {P199}
define_attribute {GNT} xc_loc {P200}
define_attribute {REQ} xc_loc {P201}
define_attribute {AD31} xc_loc {P203}
define_attribute {AD30} xc_loc {P204}
define_attribute {AD29} xc_loc {P205}
define_attribute {AD28} xc_loc {P206}
define_attribute {AD27} xc_loc {P3}
define_attribute {AD26} xc_loc {P4}
define_attribute {AD25} xc_loc {P5}
define_attribute {AD24} xc_loc {P6}
define_attribute {CBE3} xc_loc {P8}
define_attribute {IDSEL} xc_loc {P9}
define_attribute {AD23} xc_loc {P10}
define_attribute {AD22} xc_loc {P14}
define_attribute {AD21} xc_loc {P15}
define_attribute {AD20} xc_loc {P16}
define_attribute {AD19} xc_loc {P17}
define_attribute {AD18} xc_loc {P18}
define_attribute {AD17} xc_loc {P20}
define_attribute {AD16} xc_loc {P21}
define_attribute {CBE2} xc_loc {P22}
define_attribute {FRAME} xc_loc {P23}
define_attribute {IRDY} xc_loc {P24}
define_attribute {TRDY} xc_loc {P27}
define_attribute {DEVSEL} xc_loc {P29}
define_attribute {STOP} xc_loc {P30}
define_attribute {PERR} xc_loc {P31}
define_attribute {SERR} xc_loc {P33}
define_attribute {PAR} xc_loc {P34}
define_attribute {CBE1} xc_loc {P35}
define_attribute {AD15} xc_loc {P36}
define_attribute {AD14} xc_loc {P37}
define_attribute {AD13} xc_loc {P41}
define_attribute {AD12} xc_loc {P42}
define_attribute {AD11} xc_loc {P43}
define_attribute {AD10} xc_loc {P45}
define_attribute {AD9} xc_loc {P46}
define_attribute {AD8} xc_loc {P47}
define_attribute {CBE0} xc_loc {P48}
define_attribute {AD7} xc_loc {P49}
define_attribute {AD6} xc_loc {P57}
define_attribute {AD5} xc_loc {P58}
define_attribute {AD4} xc_loc {P59}
define_attribute {AD3} xc_loc {P61}
define_attribute {AD2} xc_loc {P62}
define_attribute {AD1} xc_loc {P63}
define_attribute {AD0} xc_loc {P67}
define_attribute {CRT_CLK} xc_loc {P182}
define_attribute {HSYNC} xc_loc {P83}
define_attribute {VSYNC} xc_loc {P84}
define_attribute {RGB4} xc_loc {P166}
define_attribute {RGB5} xc_loc {P167}
define_attribute {RGB6} xc_loc {P168}
define_attribute {RGB7} xc_loc {P172}
define_attribute {RGB8} xc_loc {P173}
define_attribute {RGB9} xc_loc {P174}
define_attribute {RGB10} xc_loc {P175}
define_attribute {RGB11} xc_loc {P176}
define_attribute {RGB12} xc_loc {P178}
define_attribute {RGB13} xc_loc {P179}
define_attribute {RGB14} xc_loc {P180}
define_attribute {RGB15} xc_loc {P181}
define_attribute {LED} xc_loc {P202}
define_global_attribute syn_useioff {1}
define_attribute {v:work.pci_cbe_en_crit} syn_hier {hard}
define_attribute {v:work.pci_frame_crit} syn_hier {hard}
define_attribute {v:work.pci_frame_en_crit} syn_hier {hard}
define_attribute {v:work.pci_frame_load_crit} syn_hier {hard}
define_attribute {v:work.pci_irdy_out_crit} syn_hier {hard}
define_attribute {v:work.pci_mas_ad_en_crit} syn_hier {hard}
define_attribute {v:work.pci_mas_ad_load_crit} syn_hier {hard}
define_attribute {v:work.pci_mas_ch_state_crit} syn_hier {hard}
define_attribute {v:work.pci_par_crit} syn_hier {hard}
define_attribute {v:work.pci_io_mux_ad_en_crit} syn_hier {hard}
define_attribute {v:work.pci_io_mux_ad_load_crit} syn_hier {hard}
define_attribute {v:work.pci_target32_clk_en} syn_hier {hard}
define_attribute {v:work.pci_target32_devs_crit} syn_hier {hard}
define_attribute {v:work.pci_target32_stop_crit} syn_hier {hard}
define_attribute {v:work.pci_target32_trdy_crit} syn_hier {hard}
define_attribute {v:work.pci_perr_crit} syn_hier {hard}
define_attribute {v:work.pci_perr_en_crit} syn_hier {hard}
define_attribute {v:work.pci_serr_crit} syn_hier {hard}
define_attribute {v:work.pci_serr_en_crit} syn_hier {hard}
 
#
# Compile Points
#
 
#
# Other Constraints
#
pci_crt.sdc Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: pci_crt.prj =================================================================== --- pci_crt.prj (nonexistent) +++ pci_crt.prj (revision 154) @@ -0,0 +1,118 @@ +#-- Synplicity, Inc. +#-- Version 7.2 +#-- Project file /shared/projects/pci/mihad/pci/apps/crt/syn/synplify/pci_crt.prj +#-- Written on Mon Mar 10 13:16:14 2003 + + +#add_file options +add_file -verilog "$LIB/xilinx/virtex.v" +add_file -verilog "../../../../rtl/verilog/meta_flop.v" +add_file -verilog "../../../../rtl/verilog/pci_async_reset_flop.v" +add_file -verilog "../../../../rtl/verilog/pci_bridge32.v" +add_file -verilog "../../../../rtl/verilog/pci_cbe_en_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_conf_cyc_addr_dec.v" +add_file -verilog "../../../../rtl/verilog/pci_conf_space.v" +add_file -verilog "../../../../rtl/verilog/pci_cur_out_reg.v" +add_file -verilog "../../../../rtl/verilog/pci_delayed_sync.v" +add_file -verilog "../../../../rtl/verilog/pci_delayed_write_reg.v" +add_file -verilog "../../../../rtl/verilog/pci_frame_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_frame_en_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_frame_load_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_in_reg.v" +add_file -verilog "../../../../rtl/verilog/pci_io_mux_ad_en_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_io_mux_ad_load_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_io_mux.v" +add_file -verilog "../../../../rtl/verilog/pci_irdy_out_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_mas_ad_en_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_mas_ad_load_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_mas_ch_state_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_master32_sm_if.v" +add_file -verilog "../../../../rtl/verilog/pci_master32_sm.v" +add_file -verilog "../../../../rtl/verilog/pci_out_reg.v" +add_file -verilog "../../../../rtl/verilog/pci_par_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_parity_check.v" +add_file -verilog "../../../../rtl/verilog/pci_pci_decoder.v" +add_file -verilog "../../../../rtl/verilog/pci_pcir_fifo_control.v" +add_file -verilog "../../../../rtl/verilog/pci_pci_tpram.v" +add_file -verilog "../../../../rtl/verilog/pci_pciw_fifo_control.v" +add_file -verilog "../../../../rtl/verilog/pci_pciw_pcir_fifos.v" +add_file -verilog "../../../../rtl/verilog/pci_perr_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_perr_en_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_ram_16x40d.v" +add_file -verilog "../../../../rtl/verilog/pci_rst_int.v" +add_file -verilog "../../../../rtl/verilog/pci_serr_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_serr_en_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_sync_module.v" +add_file -verilog "../../../../rtl/verilog/pci_target32_clk_en.v" +add_file -verilog "../../../../rtl/verilog/pci_target32_devs_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_target32_interface.v" +add_file -verilog "../../../../rtl/verilog/pci_target32_sm.v" +add_file -verilog "../../../../rtl/verilog/pci_target32_stop_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_target32_trdy_crit.v" +add_file -verilog "../../../../rtl/verilog/pci_target_unit.v" +add_file -verilog "../../../../rtl/verilog/pci_wb_addr_mux.v" +add_file -verilog "../../../../rtl/verilog/pci_wb_decoder.v" +add_file -verilog "../../../../rtl/verilog/pci_wb_master.v" +add_file -verilog "../../../../rtl/verilog/pci_wbr_fifo_control.v" +add_file -verilog "../../../../rtl/verilog/pci_wb_slave_unit.v" +add_file -verilog "../../../../rtl/verilog/pci_wb_slave.v" +add_file -verilog "../../../../rtl/verilog/pci_wb_tpram.v" +add_file -verilog "../../../../rtl/verilog/pci_wbw_fifo_control.v" +add_file -verilog "../../../../rtl/verilog/pci_wbw_wbr_fifos.v" +add_file -verilog "../../../../rtl/verilog/synchronizer_flop.v" +add_file -verilog "../../rtl/verilog/crtc_iob.v" +add_file -verilog "../../rtl/verilog/ssvga_crtc.v" +add_file -verilog "../../rtl/verilog/ssvga_fifo.v" +add_file -verilog "../../rtl/verilog/ssvga_top.v" +add_file -verilog "../../rtl/verilog/ssvga_wbm_if.v" +add_file -verilog "../../rtl/verilog/ssvga_wbs_if.v" +add_file -constraint "pci_crt.sdc" +add_file -verilog "../../rtl/verilog/top.v" + + +#implementation: "rev_1" +impl -add rev_1 + +#device options +set_option -technology SPARTAN2 +set_option -part XC2S150 +set_option -package PQ208 +set_option -speed_grade -5 + +#compilation/mapping options +set_option -default_enum_encoding default +set_option -symbolic_fsm_compiler 1 +set_option -resource_sharing 0 +set_option -use_fsm_explorer 0 + +#map options +set_option -frequency 50.000 +set_option -fanout_limit 50 +set_option -disable_io_insertion 0 +set_option -pipe 1 +set_option -retiming 1 +set_option -modular 0 +set_option -update_models_cp 0 +set_option -verification_mode 0 + +#simulation options +set_option -write_verilog 0 +set_option -write_vhdl 0 + +#automatic place and route (vendor) options +set_option -write_apr_constraint 1 + +#set result format/file last +project -result_file "rev_1/top.edf" + +#implementation attributes +set_option -compiler_compatible 0 +set_option -random_floorplan 0 +set_option -popfeed 1 +set_option -constprop 1 +set_option -createhierarchy 0 +set_option -floorplan "" +set_option -nfilter_user_path "" +set_option -pin_assignment "" +set_option -include_path "../../rtl/verilog/;../../../../rtl/verilog/" +impl -active "rev_1"
pci_crt.prj Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: pci_crt.ucf =================================================================== --- pci_crt.ucf (nonexistent) +++ pci_crt.ucf (revision 154) @@ -0,0 +1,376 @@ +############################################## +# BASIC UCF SYNTAX EXAMPLES V2.1.6 # +############################################## +# +# The "#" symbol is a comment character. To use this sample file, find the +# specification necessary, remove the comment character (#) from the beginning +# of the line, and modify the line (if necessary) to fit your design. +# +# TIMING SPECIFICATIONS +# +# Timing specifications can be applied to the entire device (global) or to +# specific groups in your design (called "time groups'). The time groups are +# declared in two basic ways. +# +# Method 1: Based on a net name, where 'my_net' is a net that touches all the +# logic to be grouped in to 'logic_grp'. Example: +#NET my_net TNM_NET = logic_grp ; +# +# Method 2: Group using the key word 'TIMEGRP' and declare using the names of +# logic in your design. Example: +#TIMEGRP group_name = FFS ("U1/*"); +# creates a group called 'group_name' for all flip-flops within +# the hierarchical block called U1. Wildcards are valid. +# +# Grouping is very important because it lets you tell the software which parts +# of a design run at which speeds. For the majority of the designs with only +# one clock, use simple global constraints. +# +# The type of grouping constraint you use can vary depending on the synthesis +# tools you are using. Foundation Express does better with Method 2. +# +# +############################################################ +# Internal to the device clock speed specifications - Tsys # +############################################################ +# +# data _________ /^^^^^\ _________ out +# ----------| D Q |-----{ LOGIC } -----| D Q |------ +# | | \vvvvv/ | | +# ---|> CLK | ---|> CLK | +# clock | --------- | --------- +# ------------------------------------ +# +# --------------- +# Single Clock +# --------------- +# +# ---------------- +# PERIOD TIME-SPEC +# ---------------- +# The PERIOD spec. covers all timing paths that start or end at a +# register, latch, or synchronous RAM which are clocked by the reference +# net (excluding pad destinations). Also covered is the setup +# requirement of the synchronous element relative to other elements +# (ex. flip flops, pads, etc...). +# NOTE: The default unit for time is nanoseconds. +# +#NET clock PERIOD = 50ns ; +# +# -OR- +# +# ------------------ +# FROM:TO TIME-SPECs +# ------------------ +# FROM:TO style timespecs can be used to constrain paths between time +# groups. NOTE: Keywords: RAMS, FFS, PADS, and LATCHES are predefined +# time groups used to specify all elements of each type in a design. +#TIMEGRP RFFS = RISING FFS ("*"); // creates a rising group called RFFS +#TIMEGRP FFFS = FALLING FFS ("*"); // creates a falling group called FFFS +#TIMESPEC TSF2F = FROM : FFS : TO : FFS : 50 ns; // Flip-flips with the same edge +#TIMESPEC TSR2F = FROM : RFFS : TO : FFFS : 25 ns; // rising edge to falling edge +#TIMESPEC TSF2R = FROM : FFFS : TO : RFFS : 25 ns; // falling edge to rising edge +# +# --------------- +# Multiple Clocks +# --------------- +# Requires a combination of the 'Period' and 'FROM:TO' type time specifications +#NET clock1 TNM_NET = clk1_grp ; +#NET clock2 TNM_NET = clk2_grp ; +# +#TIMESPEC TS_clk1 = PERIOD : clk1_grp : 50 ; +#TIMESPEC TS_clk2 = PERIOD : clk2_grp : 30 ; +#TIMESPEC TS_ck1_2_ck2 = FROM : clk1_grp : TO : clk2_grp : 50 ; +#TIMESPEC TS_ck2_2_ck1 = FROM : clk2_grp : TO : clk1_grp : 30 ; +# +# +############################################################ +# CLOCK TO OUT specifications - Tco # +############################################################ +# +# from _________ /^^^^^\ --------\ +# ----------| D Q |-----{ LOGIC } -----| Pad > +# PLD | | \vvvvv/ --------/ +# ---|> CLK | +# clock | --------- +# -------- +# +# ---------------- +# OFFSET TIME-SPEC +# ---------------- +# To automatically include clock buffer/routing delay in your +# clock-to-out timing specifications, use OFFSET constraints . +# For an output where the maximum clock-to-out (Tco) is 25 ns: +# +#NET out_net_name OFFSET = OUT 25 AFTER clock_net_name ; +# +# -OR- +# +# ------------------ +# FROM:TO TIME-SPECs +# ------------------ +#TIMESPEC TSF2P = FROM : FFS : TO : PADS : 25 ns; +# Note that FROM: FFS : TO: PADS constraints start the delay analysis +# at the flip flop itself, and not the clock input pin. The recommended +# method to create a clock-to-out constraint is to use an OFFSET constraint. +# +# +############################################################ +# Pad to Flip-Flop speed specifications - Tsu # +############################################################ +# +# ------\ /^^^^^\ _________ into PLD +# |pad >-------{ LOGIC } -----| D Q |------ +# ------/ \vvvvv/ | | +# ---|> CLK | +# clock | --------- +# ---------------------------- +# +# ---------------- +# OFFSET TIME-SPEC +# ---------------- +# To automatically account for clock delay in your input setup timing +# specifications, use OFFSET constraints. +# For an input where the maximum setup time is 25 ns: +#NET in_net_name OFFSET = IN 25 BEFORE clock_net_name ; +# +# -OR- +# +# ------------------ +# FROM:TO TIME-SPECs +# ------------------ +#TIMESPEC TSP2F = FROM : PADS : TO : FFS : 25 ns; +# Note that FROM: PADS : TO: FFS constraints do not take into account any +# delay for the clock path. The recommended method to create an input +# setup time constraint is to use an OFFSET constraint. +# +# +############################################################ +# Pad to Pad speed specifications - Tpd # +############################################################ +# +# ------\ /^^^^^\ -------\ +# |pad >-------{ LOGIC } -----| pad > +# ------/ \vvvvv/ -------/ +# +# ------------------ +# FROM:TO TIME-SPECs +# ------------------ +#TIMESPEC TSP2P = FROM : PADS : TO : PADS : 125 ns; +# +# +############################################################ +# Other timing specifications # +############################################################ +# +# ------------- +# TIMING IGNORE +# ------------- +# If you can ignore timing of paths, use Timing Ignore (TIG). NOTE: The +# "*" character is a wild card, which can be used for bus names. A "?" +# character can be used to wild-card one character. +# Ignore timing of net reset_n: +#NET : reset_n : TIG ; +# +# Ignore data_reg(7:0) net in instance mux_mem: +#NET : mux_mem/data_reg* : TIG ; +# +# Ignore data_reg(7:0) net in instance mux_mem as related to a TIMESPEC +# named TS01 only: +#NET : mux_mem/data_reg* : TIG = TS01 ; +# +# Ignore data1_sig and data2_sig nets: +#NET : data?_sig : TIG ; +# +# --------------- +# PATH EXCEPTIONS +# --------------- +# If your design has outputs that can be slower than others, you can +# create specific timespecs similar to this example for output nets +# named out_data(7:0) and irq_n: +#TIMEGRP slow_outs = PADS(out_data* : irq_n) ; +#TIMEGRP fast_outs = PADS : EXCEPT : slow_outs ; +#TIMESPEC TS08 = FROM : FFS : TO : fast_outs : 22 ; +#TIMESPEC TS09 = FROM : FFS : TO : slow_outs : 75 ; +# +# If you have multi-cycle FF to FF paths, you can create a time group +# using either the TIMEGRP or TNM statements. +# +# WARNING: Many VHDL/Verilog synthesizers do not predictably name flip +# flop Q output nets. Most synthesizers do assign predictable instance +# names to flip flops, however. +# +# TIMEGRP example: +#TIMEGRP slowffs = FFS(inst_path/ff_q_output_net1* : +#inst_path/ff_q_output_net2*); +# +# TNM attached to instance example: +#INST inst_path/ff_instance_name1_reg* TNM = slowffs ; +#INST inst_path/ff_instance_name2_reg* TNM = slowffs ; +# +# If a FF clock-enable is used on all flip flops of a multi-cycle path, +# you can attach TNM to the clock enable net. NOTE: TNM attached to a +# net "forward traces" to any FF, LATCH, RAM, or PAD attached to the +# net. +#NET ff_clock_enable_net TNM = slowffs ; +# +# Example of using "slowffs" timegroup, in a FROM:TO timespec, with +# either of the three timegroup methods shown above: +#TIMESPEC TS10 = FROM : slowffs : TO : FFS : 100 ; +# +# Constrain the skew or delay associate with a net. +#NET any_net_name MAXSKEW = 7 ; +#NET any_net_name MAXDELAY = 20 ns; +# +# +# Constraint priority in your .ucf file is as follows: +# +# highest 1. Timing Ignore (TIG) +# 2. FROM : THRU : TO specs +# 3. FROM : TO specs +# lowest 4. PERIOD specs +# +# See the on-line "Library Reference Guide" document for +# additional timespec features and more information. +# +# +############################################################ +# # +# LOCATION and ATTRIBUTE SPECIFICATIONS # +# # +############################################################ +# Pin and CLB location locking constraints # +############################################################ +# +# ----------------------- +# Assign an IO pin number +# ----------------------- +#INST io_buf_instance_name LOC = P110 ; +#NET io_net_name LOC = P111 ; +# +# ----------------------- +# Assign a signal to a range of I/O pins +# ----------------------- +#NET "signal_name" LOC=P32, P33, P34; +# +# ----------------------- +# Place a logic element(called a BEL) in a specific CLB location. +# BEL = FF, LUT, RAM, etc... +# ----------------------- +#INST instance_path/BEL_inst_name LOC = CLB_R17C36 ; +# +# ----------------------- +# Place CLB in rectangular area from CLB R1C1 to CLB R5C7 +# ----------------------- +#INST /U1/U2/reg<0> LOC=clb_r1c1:clb_r5c7; +# +# ----------------------- +# Place hierarchical logic block in rectangular area from CLB R1C1 to CLB R5C7 +# ----------------------- +#INST /U1* LOC=clb_r1c1:clb_r5c7; +# +# ----------------------- +# Prohibit IO pin P26 or CLBR5C3 from being used: +# ----------------------- +#CONFIG PROHIBIT = P26 ; +#CONFIG PROHIBIT = CLB_R5C3 ; +# Config Prohibit is very important for forcing the software to not use critical +# configuration pins like INIT or DOUT on the FPGA. The Mode pins and JTAG +# Pins require a special pad so they will not be available to this constraint +# +# ----------------------- +# Assign an OBUF to be FAST or SLOW: +# ----------------------- +#INST obuf_instance_name FAST ; +#INST obuf_instance_name SLOW ; +# +# ----------------------- +# FPGAs only: IOB input Flip-flop delay specification +# ----------------------- +# Declare an IOB input FF delay (default = MAXDELAY). +# NOTE: MEDDELAY/NODELAY can be attached to a CLB FF that is pushed +# into an IOB by the "map -pr i" option. +#INST input_ff_instance_name MEDDELAY ; +#INST input_ff_instance_name NODELAY ; +# +# ----------------------- +# Assign Global Clock Buffers Lower Left Right Side +# ----------------------- +# INST gbuf1 LOC=SSW +# +# # + + +# define a group of metastable Flip-Flops +INST *sync_data_out* TNM = sync_ffs ; +TIMESPEC TS_sync_flops = FROM : sync_ffs : TO : FFS : 15 ; +INST *meta_q_o* TNM = meta_ffs ; +TIMESPEC TS_meta_flops = FROM : meta_ffs : TO : FFS : 15 ; + +NET CLK TNM_NET = CLK_GRP ; +NET CRT_CLK TNM_NET = CRT_CLK_GRP ; + +TIMESPEC TS_CLK_2_CRT_CLK = FROM : CLK_GRP : TO : CRT_CLK_GRP : 15 ; +TIMESPEC TS_CRT_CLK_2_CLK = FROM : CRT_CLK_GRP : TO : CLK_GRP : 15 ; + +NET "AD0" IOSTANDARD = PCI33_5; +NET "AD1" IOSTANDARD = PCI33_5; +NET "AD2" IOSTANDARD = PCI33_5; +NET "AD3" IOSTANDARD = PCI33_5; +NET "AD4" IOSTANDARD = PCI33_5; +NET "AD5" IOSTANDARD = PCI33_5; +NET "AD6" IOSTANDARD = PCI33_5; +NET "AD7" IOSTANDARD = PCI33_5; +NET "AD8" IOSTANDARD = PCI33_5; +NET "AD9" IOSTANDARD = PCI33_5; +NET "AD10" IOSTANDARD = PCI33_5; +NET "AD11" IOSTANDARD = PCI33_5; +NET "AD12" IOSTANDARD = PCI33_5; +NET "AD13" IOSTANDARD = PCI33_5; +NET "AD14" IOSTANDARD = PCI33_5; +NET "AD15" IOSTANDARD = PCI33_5; +NET "AD16" IOSTANDARD = PCI33_5; +NET "AD17" IOSTANDARD = PCI33_5; +NET "AD18" IOSTANDARD = PCI33_5; +NET "AD19" IOSTANDARD = PCI33_5; +NET "AD20" IOSTANDARD = PCI33_5; +NET "AD21" IOSTANDARD = PCI33_5; +NET "AD22" IOSTANDARD = PCI33_5; +NET "AD23" IOSTANDARD = PCI33_5; +NET "AD24" IOSTANDARD = PCI33_5; +NET "AD25" IOSTANDARD = PCI33_5; +NET "AD26" IOSTANDARD = PCI33_5; +NET "AD27" IOSTANDARD = PCI33_5; +NET "AD28" IOSTANDARD = PCI33_5; +NET "AD29" IOSTANDARD = PCI33_5; +NET "AD30" IOSTANDARD = PCI33_5; +NET "AD31" IOSTANDARD = PCI33_5; + +NET "CBE0" IOSTANDARD = PCI33_5; +NET "CBE1" IOSTANDARD = PCI33_5; +NET "CBE2" IOSTANDARD = PCI33_5; +NET "CBE3" IOSTANDARD = PCI33_5; + +NET "DEVSEL" IOSTANDARD = PCI33_5; + +NET "FRAME" IOSTANDARD = PCI33_5; + +NET "GNT" IOSTANDARD = PCI33_5; +NET "RST" IOSTANDARD = PCI33_5; +NET "INTA" IOSTANDARD = PCI33_5; + +NET "IRDY" IOSTANDARD = PCI33_5; + +NET "PAR" IOSTANDARD = PCI33_5; + +NET "PERR" IOSTANDARD = PCI33_5; + +NET "REQ" IOSTANDARD = PCI33_5; + +NET "SERR" IOSTANDARD = PCI33_5; + +NET "STOP" IOSTANDARD = PCI33_5; + +NET "TRDY" IOSTANDARD = PCI33_5; + +NET "IDSEL" IOSTANDARD = PCI33_5;
pci_crt.ucf Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.