Answers Database


V1.5, V1.4 COREGEN, LOGIBLOX: Differences between COREGen and LogiBLOX, which modules are generated as RPMs


Record #3681

Product Family: Software

Product Line: Coregen

Product Part: Coregen

Product Version: c1_4

Problem Title:
V1.5, V1.4 COREGEN, LOGIBLOX: Differences between COREGen and LogiBLOX, which modules are generated as RPMs



Problem Description:
Urgency: standard

General Description:
What are the differences between the LogiBLOX and
COREGen, and the functions supplied with them?


Solution 1:


INTEGRATION
-----------
The LogiBLOX GUI is integrated into Viewlogic
and Foundation flows, whereas the CORE Generator is currently
available only as a standalone tool in versions up to the M1.5 release.


FLEXIBILITY
-----------
LogiBLOX also allows greater flexibility in selecting which
pins will be present on a module, and whether the implementa-
tion should aim for minimum area or maximum speed.
In contrast, Coregen does not allow you to modify your
pinout and always aims for maximum performance.


RELATIVE CLB PLACEMENT (RPM/RLOC support)
-----------------------------------------
Another difference is that ALL cores generated with the CORE
Generator are relatively placed.

(Note that in LogiBLOX v1.4, modules that utilize carry
logic such as adders and subtracters do use RLOCs, but only
to specify the how combinational logic is mapped into the
the same CLB with carry logic, not to specify relative
placement.) This particular difference will disappear for
some additional modules in the M1.5 release, as RLOCs
will be used to constrain placement in LogiBLOX accumulator,
comparator, and counter modules as well.


RAM implementation:
-------------------
- COREGEN: RAMs are 100% relatively placed, and single and
dual port RAMs of depth 64 or greater use TBUFs for
muxing/address decoding.

- LOGIBLOX: In pre-M1.5 versions of LogiBLOX, RAMs are not
relatively placed. In M1.5, the RAMs are relatively
placed, but the associated address decode muxes are not.

Also, LogiBLOX v1.5 allows the user to specify the use of
TBUFs for muxing in RAMs, if desired.


Architecture Support
--------------------

- VIRTEX
LogiBLOX does not support Virtex, while the
CORE Generator will have limited support of Virtex block
RAM modules in the V1.5 release.

- XC3000A, XC5200, XC9500
Only LogiBLOX supports both XC3000A, XC5200 and XC9500
architectures, as well as all XC4000 families. COREGEN does
not support XC3000A and XC5200 FPGAs.


THIRD PARTY MODULES
-------------------
The CORE Generator also differs in that it also includes
datasheets for Xilinx PCI modules, and third-party
AllianceCORE modules.


RECOMMENDATIONS
---------------
1. If you need to target XC3000, XC5200, or XC9500 devices,
you must use LogiBLOX. Conversely, if you need to generate a Virtex
module, you must use the CORE Generator.

2. In general, where a given function is available in both
CORE Generator and LogiBLOX, the CORE Generator
version should give better performance
because the CORE Generator implementation is relatively
placed. Not all the LogiBLOX modules are relatively
placed.

3. Use LogiBLOX if you want to be able to control the
implementation style of your function.

4. Use CORE Generator if you wish to access new functions
which are not supported by LogiBLOX, such as:

   - square root function
   - multipliers
   - FIR filters
   - Comb filter
   - other DSP related functions

5. Use CORE Generator if you wish to take advantage of the
improved performance associated with the more extensive use
of relative placement constraints (ALL CORE Generator modules
are relatively placed.)



If you do not need any of the functions supported
in the CORE Generator, you can continue to use LogiBLOX.

In a future release, the functions of both products will be
merged.



Solution 2:


                            X = supported
                            - = not supported

					  LogiBLOX		     COREGen
					  ---------		  -------------
Accumulators				  Standard		  scale by 1/2
Adders					  Standard		   Registered
Clock Dividers				      X 			-
Comparators				      X 			-
Constants				      X 			-
Counters				      X 			-
Data Registers				      X 			-
Decoders				      X 			-
Inputs/Outputs				      X 			-
Memories				      X 			-
     Asynchronous RAM			      X 		   Registered
     Synchronous Dual Port		       X		    Registered
     FIFO				      - 		   Registered
Multiplexers				Variable size		  2-, 3-, & 4-input only
Pads									-
Shift Registers 			      X 			X
Simple Gates				      X 			-
Subtracters				      X 		   Registered
Tristate Buffers			      X 			-
Parallel-Serial Converter	      Shift Register option		X


--------------------------------------------------------------------------------------

COREGEN-only Functions
-----------------------
Time Skew Buffers			      - 			X
Sine-Cosine LUTs			      - 			X
PDA FIR 				      - 			X
SDA FIR 				      - 			X
Comb Filter				      - 			X
Registered Scaled Adder 		      - 			X
Complementer				      - 			X
Integrator				      - 			X
Square Root				      - 			X
Delay Element				      - 			X
ALLIANCE CORES				      - 			X

Architecture Support
--------------------
XC3000A/L, XC3100A/L			     Yes			No; not planned
XC5200					     Yes			No; not planned
XC4000/E/EX/XL/XV			     Yes			Yes
Spartan 				     Yes			Yes
Virtex					     No 			limited support in v1.5
9500/XL 				     Yes			No; not planned




End of Record #3681 - Last Modified: 07/06/99 13:14

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