This typically happens when output signals from a logic block are not connected (though a typo or some other unintended reason) ... as MAP works backwards it trims away.
To find the offending path, either use a simulator (highly recommended), or add some "debug only signals" .... which are the OR of all output signals from a suspected block .... whose output is brought to a top level I/O. If this small logic addition suddenly adds large amounts of previously trimmed logic, then you know that the downstream signals are being optimized away.
Good luck.
-- Regards, John Retta Owner and Designer Retta Technical Consulting Inc.
email : snipped-for-privacy@rtc-inc.com web :
Hi guys,
>
> I am having a strange problem.
>
> I have my schematic file, made up of lots of nice LUTs, gates, etc. My
> inputs are represented by an I/O marker followed by either an IBUF,
> OBUF, or BUFG for input, output and clock signals.
>
> The synthetiser works perfectly.
>
> The translator works perfectly.
>
> The mapper gets rid of all my logic.
>
> Here is the relevant section on the report:
>
> Section 5 - Removed Logic
> -------------------------
>
> The trimmed logic reported below is either:
> 1. part of a cycle
> 2. part of disabled logic
> 3. a side-effect of other trimmed logic
>
> The signal "XLXN_421" is unused and has been removed.
> Unused block "XLXN_421" (PAD) removed.
> The signal "XLXN_422" is unused and has been removed.
> Unused block "XLXN_422" (PAD) removed.
> The signal "XLXN_423" is unused and has been removed.
> Unused block "XLXN_423" (PAD) removed.
> The signal "XLXN_424_IBUFG" is unused and has been removed.
> Unused block "XLXN_424_IBUFG" (CKBUF) removed.
> The signal "XLXN_424" is unused and has been removed.
> Unused block "XLXN_424" (PAD) removed.
> The signal "XLXN_427" is unused and has been removed.
> Unused block "XLXN_427" (PAD) removed.
> The signal "XLXN_402" is unused and has been removed.
> Unused block "B2_2_FF" (FF) removed.
> The signal "XLXN_408" is unused and has been removed.
> Unused block "B2_1_FF" (FF) removed.
> The signal "XLXN_416" is unused and has been removed.
> Unused block "XLXI_53" (BUF) removed.
> The signal "XLXN_419" is unused and has been removed.
> Unused block "XLXI_61" (CKBUF) removed.
> The signal "XLXN_353" is unused and has been removed.
> Unused block "XLXI_60" (BUF) removed.
> The signal "XLXN_361" is unused and has been removed.
> Unused block "XLXI_55" (BUF) removed.
> The signal "XLXN_357" is unused and has been removed.
> Unused block "XLXI_54" (BUF) removed.
> The signal "XLXN_371" is unused and has been removed.
> Unused block "B1_1_FF" (FF) removed.
> The signal "XLXN_377" is unused and has been removed.
> Unused block "B1_2_FF" (FF) removed.
>
> I know I should have named my instances!! :-P
>
> Anyway, it all starts with my input pads being removed because they
> are unused. Anyone got any idea what am I doing wrong?
>
> Thanks!!
>
>