background image

Using an EDIF software flow

143

Using the Xilinx Software

were generated in Simulink. Provided that your design was error free, the ModelSim
console window will report that the simulation finished without errors.

Your installed version of ModelSim (either MXE or ModelSim EE/SE/PE) must be
associated with the Project Navigator tool for this interaction to work. To associate
ModelSim with the Project Navigator, follow the instructions in the Simulation
section, later in this chapter.

Using an EDIF software flow

You may not wish to use the Project Navigator for your VHDL synthesis. If you
choose to run a synthesis compiler in a standalone software tool, then you will
generate EDIF. You may wish to import your EDIF files into the Project Navigator.

To do this, open the Project Navigator and select

 File >> New Project

. A new

project properties dialog will open. Select EDIF as the design flow type.

Figure 5-8:   EDIF design flow in Project Navigator

Now you may add your EDIF files to the project as sources. From the Project
Navigator pulldown menu bar, choose

Project>>Add Source

, and then browse to

your EDIF files.

Simulation

The System Generator creates custom .

do

files for use with your generated project and

a ModelSim simulator. To use these files, you must have ModelSim (PE or EE/SE) or
the Xilinx Edition of ModelSim (MXE). You may run your simulations from the
standalone ModelSim tool, or you may associate it with the Xilinx 4.1i ISE Project
Navigator, and run your simulations from within Project Navigator as part of the full
software implementation flow.

Compiling your IP

You must compile your IP (cores) libraries with ModelSim before you can simulate.

ModelSim (PE or EE/SE)

To compile your IP with ModelSim (PE or EE/SE) you will need to download a TCL/
TK script from the Xilinx web site, and run it to compile these libraries:

Xilinx Simprim
Unisim
XilinxCoreLib

Содержание System Generator V2.1

Страница 1: ...A Xilinx System Generator v2 1 for Simulink User Guide Xilinx Blockset Reference Guide Introduction Xilinx Blockset Overview Xilinx Blocks System Generator Software Features Using the Xilinx Software...

Страница 2: ...e Chapter 3 Xilinx Blocks describes the details of each block including options and use of Xilinx LogiCOREs This chapter also tells where to find descriptions of the cores on your computer Chapter 4 S...

Страница 3: ...he Xilinx design environment http support xilinx com xlnx xil_tt_home jsp Tutorials Tutorials covering Xilinx ISE 4 1i design flows from design entry to verification and debugging http support xilinx...

Страница 4: ...de 100 Courier bold indicates literal commands that you enter in a command line prompt or dialog box However triangular braces in Courier bold are not literal cd your MATLAB home directory Italic font...

Страница 5: ...Xilinx Blocks within a Simulink Model 16 The Block Parameters Dialog Box 16 The Nature of Signals in the Xilinx Blockset 16 Use of Xilinx Smart IP Cores by the System Generator 18 Licensed Cores 18 X...

Страница 6: ...Set Valid Bit 45 Slice 45 Sync 47 Up Sample 50 Communication 52 Convolutional Encoder 52 Depuncture 54 Interleaver Deinterleaver 55 Puncture 58 RS Decoder 59 RS Encoder 63 Viterbi Decoder 68 DSP 70 CI...

Страница 7: ...Tips for creating a high performance design 132 Using the System Generator Constraints Files 133 System Clock Period 133 Multicycle Path Constraints 133 IOB Timing and Placement Constraints 134 Exampl...

Страница 8: ...nting highly parallel arithmetic architectures this makes the FPGA ideally suited for creating high performance custom data path processors for tasks such as digital filtering fast Fourier transforms...

Страница 9: ...tically to fit gracefully into a system level framework For example although the underlying IP blocks operate on unsigned integers System Generator allows signed and unsigned fixed point numbers to be...

Страница 10: ...g dynamical systems System Generator consists of a Simulink library called the Xilinx Blockset and software to translate a Simulink model into a hardware realization of the model System Generator maps...

Страница 11: ...to choose the target FPGA device target system clock period and other implementation options System Generator translates the Simulink model into a hardware realization by mapping Xilinx Blockset eleme...

Страница 12: ...converts to fixed point incrementally At all times these three representations can be freely intermingled without any changes to the signal flow graph This mixing is possible because library building...

Страница 13: ...at can be used to achieve hardware handshakes between blocks For example upon startup a pipeline may define its output invalid until it has flushed its pipe By inspecting the valid bits of its inputs...

Страница 14: ...ration For a black box instantiation the design must provide both a Simulink model and an implementation System Generator cannot automatically provide the verification that the two representations of...

Страница 15: ...ulink library browser It consists of building blocks that can be instantiated within a Simulink model and like other Simulink blocksets blocks can be combined to form subsystems and arbitrary hierarch...

Страница 16: ...specific parameters specific to the particular block only Double clicking on any block icon on a sheet will open its block parameters dialog box Details of the use of each block s parameters dialog c...

Страница 17: ...tor This is a commonly used handshaking mechanism There are different circumstances under which the status indicator may be set to invalid For example invalid data might mean that a pipeline has not y...

Страница 18: ...Box functionality you can also add HDL simulation to this flow To speed this design cycle it is possible to instruct System Generator to not invoke Xilinx CORE Generator to re generate LogiCOREs that...

Страница 19: ...Subtractor ADDSUB V5 0 CIC CIC V1 0 Counter BINARY_COUNTER V5 0 Constant Multiplier MULT_GEN V4 0 Convolutional Encoder CONVOLUTION V1 0 DDS DDS V4 0 Dual Port Ram MEM_DP_BLOCK V3 2 FIFO SYNC_FIFO V3...

Страница 20: ...roject directory subsequently running the Xilinx Implementation tools will produce an error If you select Implement with Xilinx Smart IP Core but do not select Generate Core you will be able to simula...

Страница 21: ...nt the fractional portion of a value The Xilinx fixed point data type supports several options for user defined precision In the case of overflow the options are to saturate to the largest positive or...

Страница 22: ...data samples are transmitted in double precision You can easily identify which blocks are currently set to Override with Doubles When this option is set affected Xilinx blocks are displayed in gray r...

Страница 23: ...ay insert delay change the sample rate and introduce constants counters multiplexers etc The Basic Elements library also has two special blocks the System Generator and the Black Box System Generator...

Страница 24: ...enerate your files in order to keep your Xilinx project files and Simulink model files directories organized separately System Clock Period Enter the desired System Clock Period of your design in nano...

Страница 25: ...bsystems to selectively mask this effect For an explanation of the Override with Doubles behavior see the Common Parameters section of the previous chapter Generate Cores The Generate Cores pulldown m...

Страница 26: ...block is taken from the register pointed to by the address presented on the addr port Block Interface The block interface inputs and outputs as seen on the Addressable Shift Register icon are as follo...

Страница 27: ...es several rate change conditions require the use of extra hardware beyond that used by the IP core to make it compliant with the Simulink simulation output A rate change condition will be detected if...

Страница 28: ...he Xilinx blocks in your design But if you include a black box that is written in Verilog HDL System Generator will produce a mixed language project A VHDL black box and a Verilog black box share the...

Страница 29: ...HDL type Parameter types can be any Verilog type The black box block parameters dialog box allows you to specify multiple clocks on a black box To handle more than one clock the System Generator must...

Страница 30: ...s represented by unsigned integer numbers i e two unsigned numbers with binary points at position zero The Xilinx Reinterpret block provides capabilities that can extend the functionality of the Conca...

Страница 31: ...tant value of the block will appear on the block icon Sampled Constant allows a sample period to be associated with the constant ouput and inherited by blocks that the constant block drives This is us...

Страница 32: ...are Output Arithmetic Type Number of Bits Binary Point Parameters defining the quantization effect and the overflow effect are Quantization Behavior Overflow Behavior The Convert block does not use a...

Страница 33: ...counter The down counter calculations replace addition by subtraction The free running up or down counter can be configured to load the output of the counter with a value on the input din port by sel...

Страница 34: ...ing value the number at which the counter resets A value of Inf denotes the largest representable output in the specified precision This cannot be the same as the start count Count By Value specifies...

Страница 35: ...e other than zeroes Block Parameters Dialog Box The block parameters dialog box can be invoked by double clicking the icon in your Simulink model Figure 3 9 Delay block parameters dialog box Parameter...

Страница 36: ...a register does not change until the clock enable is sampled i e one clock cycle later To make the hardware cycle true to the Simulink model the down sample block is implemented with the following ci...

Страница 37: ...lecting Zero Initial Output you can validate the first sample with valid data of zero Otherwise an invalid data NaN will be the block s first output Other parameters used by this block are explained i...

Страница 38: ...ore when checked the generated core includes relative placement information This usually results in a faster implementation The resulting floorplan is a single column with two bits per slice With this...

Страница 39: ...least significant bit first or most significant bit first The following waveform illustrates the block s behavior Figure 3 14 Example of Parallel to Serial behavior This example illustrates the case...

Страница 40: ...ut Bits Input width Must match size of input port Number of Output Bits Output width Must divide Number of Input Bits evenly Binary Point Output binary point location An error is reported when the num...

Страница 41: ...igure 3 16 Register block parameters dialog box Parameters specific to the block are Initial Value specifies the initial value in the register Quantization of Initital Value specifies desired quantiza...

Страница 42: ...binary two s complement would be translated into an output of 56 111000 in binary This block can be particularly useful in applications that combine it with the Xilinx Slice block or the Xilinx Conca...

Страница 43: ...to the position supplied in the Output Binary Point parameter When unchecked the arithmetic type of the output will be unchanged from the arithmetic type of the input Output Arithmetic Type The arithe...

Страница 44: ...e The Serial to Parallel block has one input and one output port The input port can be any size The output port size is indicated on the block parameters dialog box Block Parameters Dialog Box Figure...

Страница 45: ...r invalid status indicator This block provides some explicit control over this handshake mechanism Block Parameters Dialog Box The block parameters dialog box can be invoked by double clicking the ico...

Страница 46: ...rst three fractional bits The following diagram illustrates how to extract all but the top 16 and bottom 8 bits of the input Figure 3 21 Slice block operation Block Parameters Dialog Box The block par...

Страница 47: ...r binary point Relative To specifies the bit slice position relative to the Most Significant Bit MSB Least Significant Bit LSB or Binary point of the top or the bottom of the slice Other parameters us...

Страница 48: ...ario could reflect for example a CORDIC based sine generator with many pipeline stages for hardware efficiency and a simple counter based sawtooth generator The rest of the diagram shows the connectio...

Страница 49: ...d Figure 3 25 Design with delay rather than Sync block The Sync block can be configured to have up to four channels and to add latency to all channels beyond the minimum required Block Parameters Dial...

Страница 50: ...utput sample period is i k where i is the input sample period and k the sampling rate In Simulink a block changes its output right after it is enabled In hardware a register does not change until the...

Страница 51: ...output sample period to the input and is essentially a sample rate multiplier For example a ratio of 2 indicates a doubling of the input sample rate If a non integer ratio is desired the Up Sample blo...

Страница 52: ...the figure below The length of the shift register and the code s constraint length is equal to the length of the convolution codes that characterize the encoder specified in the block s parameters di...

Страница 53: ...tput Length of convolution code must be between 3 and 9 inclusive Convolution Code 3 Used to generate bit 3 of the output Length of convolution code must be between 3 and 9 inclusive Other parameters...

Страница 54: ...be used to decode a range of punctured convolution codes The following diagram illustrates an application of this block to implement soft decision Viterbi decoding of punctured convolution codes Figur...

Страница 55: ...k implements an interleaver or a deinterleaver An interleaver is a device that rearranges the ordering of a sequence of symbols in a one to one deterministic manner Associated with any interleaver is...

Страница 56: ...lock is in deinterleaver mode the input data sampled on the DIN port is multiplexed into and out of B shift registers onto the DOUT port using two synchronized commutator arms Branch 0 will have a shi...

Страница 57: ...he same as the input port din Block Parameters Dialog Box Figure 3 36 Interleaver Deinterleaver block parameters dialog box Parameters specific to the block are Mode Interleaver or Deinterleaver Numbe...

Страница 58: ...a of type UFixK_0 where K is equal to the number of ones in the puncture code The Xilinx Puncture block can be used to implement a range of punctured convolution codes The following diagram illustrate...

Страница 59: ...inal data A Reed Solomon code is specified as RS n k with s bit symbols Reed Solomon codes are usually referred to as n k codes where n is the total number of symbols in a code block and k is the numb...

Страница 60: ...ample period to mark the beginning of a codeword The start signal must be a UFix1_0 erase when erase is asserted for a particular sample period data input on the din port is marked as an erasure to be...

Страница 61: ...re Custom allows you to set all the block parameters ATSC implements ATSC Advanced Television Systems Committee stan dard 207 187 shortened RS code CCSDS implements CCSDS Consultative Committee for Sp...

Страница 62: ...where the 1st element corresponds to the highest degree of the polynomial A value of zero causes the default polynomial for the given symbol width to be selected The specified polynomial should be a...

Страница 63: ...ods is dependent on the values of n error correcting capacity of the code and Clock Periods Per Symbol set by the block The latency of the RS decoder block is always equal to the latency returned by t...

Страница 64: ...symbols of s bits each The following diagram shows a typical Reed Solomon codeword This is known as a Systematic code because the data is left unchanged and the parity symbols are appended Figure 3 4...

Страница 65: ...as the first input information symbol The start signal is ignored if bypass is asserted high for the same sample period The start signal always resets the state of the code generator The start signal...

Страница 66: ...ers ATSC implements ATSC Advanced Television Systems Committee stan dard 207 187 shortened RS code CCSDS implements CCSDS Consultative Committee for Space Data Systems standard 255 223 full length RS...

Страница 67: ...e polynomial for the given symbol width The default polynomials for the specified symbol width are Generator Start specifies the Galois field logarithm of the first root of the generator polynomial g...

Страница 68: ...ither the Hamming or Euclidean metric is used to determine the cost The cost determines the distance to each state in the Viterbi trellis The second and final decoding step is to trace backwards throu...

Страница 69: ...he output port is of type UFix1_0 Note This version of the Viterbi Decoder is not recommended for implementation of punctured codes Block Parameters Dialog Box Figure 3 45 Viterbi Decoder block parame...

Страница 70: ...ble for Soft Coding only Other parameters used by this block are described in the Common Parameters section of the previous chapter The Viterbi Decoder block cannot be placed in an enabled subsystem i...

Страница 71: ...s the selected integer rate change factor The transfer function for a single comb stage is H z 1 z RM As seen in the two figures below the CIC filter cascades N integrator sections together with N com...

Страница 72: ...e 8 to 16384 inclusive Differential Delay 1 or 2 Other parameters used by this block are described in the Common Parameters section of the previous chapter The CIC block cannot be placed in an enabled...

Страница 73: ...ator and the sum is quantized by truncation The quantized value is then used to index into the Sine Cosine Lookup Table mapping phase space into time The phase increment is defined by the following re...

Страница 74: ...ion specifies the block output to be sine cosine or both Negative Sine when checked the sine output is negated Negative Cosine when checked the cosine output is negated Output Width number of bits in...

Страница 75: ...f 2 The number of bits is determined in one of two ways If the offset type is Register the number of bits is set to the width of the data port If the offset type is Constant the number of bits is infe...

Страница 76: ...he FFT block parameters dialog box can be invoked by double clicking the icon in your Simulink model Figure 3 50 FFT block parameters dialog box Parameters specific to the FFT block are Number of Samp...

Страница 77: ...vious chapter The FFT block cannot be placed in an enabled subsystem in System Generator v2 1 See the Enabled Subsystems section within the MATLAB I O library documentation explanation for more detail...

Страница 78: ...data sizes The Core datasheets can be found on your local disk at For Virtex XILINX coregen ip xilinx primary com xilinx ip vfft doc c_ff t1024_v1_0 pdf XILINX coregen ip xilinx primary com xilinx ip...

Страница 79: ...l FIR filters multichannel mode An N tap filter is defined by N filter coefficients or taps h 0 h 1 h n 1 Here each h i is a Xilinx fixed point number The filter block accepts a stream of Xilinx fixed...

Страница 80: ...depends on the structure of the sequence of filter taps You can choose one of these inferred from coefficients none symmetric negative symmetric half band and interpolate fir Number of bits per coeff...

Страница 81: ...this adds latency it has the benefit of reducing the hardware required for the filter Refer to the core datasheet for more details of the filter modes and parameters The core datasheet can be found o...

Страница 82: ...add and subtract This determines whether the block is adder or subtractor based Feedback Scaling specifies the feedback scale factor to be one of the following 1 1 2 1 4 1 8 1 16 1 32 1 64 1 128 or 1...

Страница 83: ...Addition Subtraction or Addition Subtraction When Addition Subtraction is selected the block operation is determined by the sub input port which must be driven by a 1 bit unsigned signal When the sub...

Страница 84: ...block implements a gain operator with output equal to the product of its input by a constant value This value can be a MATLAB expression that evaluates to a constant Block Parameters Dialog Box The b...

Страница 85: ...Information for Core allows specification of placement layout shape that will be used when implementing the core in hardware Placement Style specifies the layout shape in which the multiplier core wil...

Страница 86: ...1 and 64 inclusive Otherwise the block is implemented as a synthesizable VHDL module The Core datasheet can be found on your local disk at XILINX coregen ip xilinx eip1 com xilinx ip baseblox_v5_0 do...

Страница 87: ...ies that the block must align binary points automatically If not selected all inputs must have the same binary point position Other parameters used by this block are explained in the Common Parameters...

Страница 88: ...implemented either as a parallel multiplier that operates on the full width data faster and larger or as a sequential multiplier that computes the result from smaller partial products slower and small...

Страница 89: ...simulation only the hardware implementation Use Placement Information for Core allows specification of placement layout shape that will be used when implementing the core in hardware Placement Style s...

Страница 90: ...ameters dialog box Parameters used by this block are explained in the Common Parameters section of the previous chapter Xilinx LogiCORE If the Implement with Xilinx Smart IP Core checkbox is selected...

Страница 91: ...parameter specific to the Relational block is Comparison Operation specifies the comparison operation computed by the block Other parameters used by this block are explained in the Common Parameters...

Страница 92: ...3 Scale block parameters dialog box The only parameter that is specific to the Scale block is Scale Factor It can be a positive or negative integer The output of the block is i2k where i is the input...

Страница 93: ...he previous chapter The Shift block does not use a Xilinx LogiCORE SineCosine The Xilinx Sine Cosine block computes sin x and or cos x It stores a reference sinusoid in a read only memory ROM whose de...

Страница 94: ...ected the cosine output is negated Output Width specifies the number of bits in the output The valid range is from 4 to 32 inclusive The output is stored as a two s complement value with one integer s...

Страница 95: ...ipeline for block ROM implementations is 1 thus the minimum latency is 1 The maximum latency for block ROM is also 1 except for the cases outlined in the table below The Core datasheet can be found on...

Страница 96: ...ersa during Simulink simulation Define I O ports for the top level of the HDL design generated by System Generator A Gateway In block defines a top level input port and a Gateway Out block defines a t...

Страница 97: ...r The DownCount subsystem is stalled for a single sample period when the CoefCount counter value is equal to the number of filter taps in this case 96 taps Figure 3 67 Example of enabled subsystem The...

Страница 98: ...IOBs are put in the user constraint file ucf produced by System Generator This means the paths from the IOBs to synchronous elements are not constrained If Data Rate is selected the IOBs are constrai...

Страница 99: ...cations are package specific For the above example if a Virtex E 2000 in a FG680 package is used the location constraints for the Din bus can be specified in the dialog box as A36 C36 B36 D35 This is...

Страница 100: ...rovided on the System Generator block and the sample rate of the Gateway relative to the other sample periods in the design For example the following OFFSET OUT constraints are generated for a Gateway...

Страница 101: ...ystem Generator v2 1 See the Enabled Subsystems section within the MATLAB I O library documentation explanation for more details Quantization Error Blocks Clear Quantization Error The Clear Quantizati...

Страница 102: ...1 the data input ports on Port A and Port B should have an unsigned arithmetic type with binary point at 0 The output ports labeled A and B have the same types as the corresponding input data ports Th...

Страница 103: ...e memory has been set to an initial value of 5 and the address bit is specified as 4 When using No Read On Write mode the output is unaffected by the address line and the output is the same as the las...

Страница 104: ...lue Vector specifies the initial memory contents The size and precision of the elements of the initial value vector are based on the data format specified for Port A When the vector is longer than the...

Страница 105: ...blkmemdp_v3_2 do c dp_block_mem pdf Table Maximum Width for Various Depth Ranges Virtex Virtex E Depth Width 2 to 512 256 513 to 1024 256 1025 to 2048 256 2049 to 4096 192 4097 to 8192 96 8193 to 16K...

Страница 106: ...that no more data reside in the memory The FIFO can be implemented either using distributed or block RAM If distributed memory is selected the maximum depth of the FIFO is 256 If block RAM is used the...

Страница 107: ...giCORE Synchronous FIFO V3 0 The core datasheet can be found on your local disk at XILINX coregen ip xilinx eip1 com xilinx ip sync_fifo_v3_0 d oc sync_fifo pdf ROM The Xilinx ROM block is a single po...

Страница 108: ...Vector specifies the initial value When the vector is longer than the ROM depth the vector s trailing elements are discarded When the ROM is deeper than the vector length the ROM s trailing words are...

Страница 109: ...eter is selected LogiCORE Distributed Memory V5 0 is used The depth must be between 16 and 65536 inclusive for Virtex II and Table Maximum Word Width for Various Depth Ranges Virtex Virtex E Depth Wid...

Страница 110: ...same arithmetic type width and binary point position The block has two possible implementations using either block or distributed memory Each data word is associated with exactly one address that can...

Страница 111: ...ut ports have a value of zero at clock 0 otherwise they have a value of NaN not a number Write Mode specifies the memory behavior to be Read Before Write Read After Write or No Read On Write There are...

Страница 112: ...ode the output is unaffected by the address line and the output is the same as the last output when the WE was 0 For the other two modes the output is obtained from the location specified by the addre...

Страница 113: ...milies The word width must be between 1 and 1024 inclusive The Core datasheet for the Single Port Block Memory can be found locally at Table Maximum Word Width for Various Depth Ranges Virtex Virtex E...

Страница 114: ...st and efficient implementation For example a state machine with 8 states 1 input and 2 outputs that are registered can be realized with a single block RAM that runs at more than 150 MHz in a Xilinx V...

Страница 115: ...ram and table The table lists the next state and output that result from the current state and input For instance if the current state is 3 and the input is 1 the next state is 1 and the output is 1 i...

Страница 116: ...ialog box The maximum number of states is limited by the depth of the distributed RAM For the Virtex family the maximum number of states supported is 4K and for Virtex II it is 64K Xilinx LogiCORE Thi...

Страница 117: ...onsider the problem of designing a state machine to recognize the pattern 1011 within a serial stream of bits The state transition diagram and equivalent transition table are shown below Figure 3 81 M...

Страница 118: ...e output of the state machine The next state logic and state register in this block are implemented with high speed dedicated block RAM The output logic is implemented using a distributed RAM configur...

Страница 119: ...p c_dist_mem_v5_0 doc dist_mem pdf Registered Mealy State Machine The Xilinx Registered Mealy State Machine block implements a state machine whose output depends on both the current state and input Th...

Страница 120: ...tion table are shown below Figure 3 85 Registered Mealy State Machine example transition diagram and table The table lists the next state and output that result from the current state and input For in...

Страница 121: ...columns correspond to the input value Block Parameters Dialog Box The block parameters dialog box can be invoked by double clicking the icon in your Simulink model Figure 3 87 Registered Mealy State M...

Страница 122: ...lock RAM width and depth limitations are described in the online help for the Single Port RAM block Xilinx LogiCORE This block uses Version 3 2 of the Xilinx Single Port Block Memory LogiCORE The Core...

Страница 123: ...chine block except that its output logic is registered A block diagram of this type of state machine is shown below Figure 3 88 Registered Moore State Machine block diagram The block is configured by...

Страница 124: ...table are shown below Figure 3 89 Registered Moore State Machine example transition diagram and table The table lists the next state and output that result from the current state and input For exampl...

Страница 125: ...not affect the output of the state machine Block Parameters Dialog Box The block parameters dialog can be invoked by double clicking the icon in your Simulink model Figure 3 91 Registered Moore State...

Страница 126: ...AM sizes necessary for various state machines Xilinx LogiCORE This block uses Version 3 2 of the Xilinx Single Port Block Memory LogiCORE The block RAM width and depth limitations are described in the...

Страница 127: ...ectory where you extracted setup dll Type setup at the MATLAB console prompt This will launch the System Generator installer Uninstalling previous System Generator directories If you have previously i...

Страница 128: ...that cannot be realized with Xilinx blocks For example the design might require a FIR filter whose capabilities differ from those in the filter supplied in the Xilinx Blockset Black boxes provide a w...

Страница 129: ...level model you can see the bits reverse in the output scope This simulation is running the MATLAB function bit_reverse Figure 4 1 Output of example black box function Black Box window The Xilinx Bla...

Страница 130: ...st have a mixed language simulator and a mixed language synthesis compiler Tools that support mixed language projects usually have special restrictions and instructions for their mixed language interf...

Страница 131: ...ge designs To synthesize using Synplify open the project file for example my_project_synplicity prj in Synplify Tell the tool to add your black box files to the project The procedure for a Leonardo Sp...

Страница 132: ...e same results since this block is implemented using a SRL16 and cannot be packed into an IOB Use the IOB Timing Constraint option Data Rate Set FAST Attribute on all Gateway In and Gateway Out blocks...

Страница 133: ...en obtained and can do so using considerably less time Constraints supply the following information The period to be used for the system clock The speed with respect to the system clock at which vario...

Страница 134: ...ampler divides the sample rate by three In this design the system clock period is 10 ns specified in the parameters dialog box for the System Generator block so the clock periods are 10 ns for the FIR...

Страница 135: ...ce1_group TS_clk 1 TIMESPEC TS_ce2_group_to_ce3_group FROM ce2_group TO ce3_group TS_clk 2 TIMESPEC TS_ce3_group_to_ce1_group FROM ce3_group TO ce1_group TS_clk 1 TIMESPEC TS_ce3_group_to_ce2_group FR...

Страница 136: ...constraint entry in the UCF file that accompanies this design has failed while a case insensitive search is in progress The result of the case insensitive search will be used but warnings will accomp...

Страница 137: ...nx ISE 4 1i Project Navigator using the XST synthesis compiler and ModelSim simulator my_project_testbench vhd the top level VHDL testbench file associated with the top level VHDL source file in the p...

Страница 138: ...138 Xilinx Development System Xilinx System Generator v2 1 Reference Guide sysgen log log file xlRunScripts log log file showing status of post processing scripts run by System Generator...

Страница 139: ...ilinx 4 1i software tools environment This file is called name of project npl We will use the name my_project npl for the following discussion Opening a System Generator project You may double click o...

Страница 140: ...Properties dialog From this window you can change your part package speed and synthesis compiler Figure 5 2 Customizing Project Navigator properties Implementing your design You have many options with...

Страница 141: ...ream for your design Now that you have generated a bitstream for your design you have access to all the files that were produced on the way to bitstream creation For example if you wish to see how you...

Страница 142: ...sociated with testbench in Project Navigator The System Generator has already associated the four ModelSim do files with each of the four types of simulation To see what do files will run when each ty...

Страница 143: ...roperties dialog will open Select EDIF as the design flow type Figure 5 8 EDIF design flow in Project Navigator Now you may add your EDIF files to the project as sources From the Project Navigator pul...

Страница 144: ...linx vhdl xilinxcorelib This is the location where MXE expects to find your Xilinx compiled libraries so you do not need to make any changes to your modelsim ini file This file should point to the cor...

Страница 145: ...automatically use this ModelSim simulator Figure 5 10 Processes associated with System Generator testbench in Project Navigator Xilinx software tools resources Documentation tutorials and other Xilin...

Страница 146: ...how the capabilities of the System Generator software and the Xilinx blocks These demonstration designs may be accessed by selecting the Demos menu choice from the MATLAB Help menu Figure 6 1 Opening...

Страница 147: ...rates a project file prj file for use with the synthesis compiler Synplify from Synplicity leon pl generates a project file tcl file for use with the synthesis compiler Leonardo Spectrum from Exemplar...

Страница 148: ...148 Xilinx Development System Xilinx System Generator v2 1 Reference Guide...

Отзывы: