Sorry for my carelessness--the device is xc2vp40-6-1152,and the two LUTs share the same reset signal. Let me introduce my design clearly: The function is a multiplier of 15*3,both multiplicators are 2's complement, say a[14:0] and b[2:0];b can be 0,+1,+2,-1 or -2(for ethernet,4D/PAM5).So the function is actually a mux,the output o[n] needs 5 inputs:a[n],a[n-1] and b[2:0].So I think use a 4-input(a[n],a[n-1],b[1:0]--change encoding) LUT and a D-latch(reset active when b is 3'h0) may save area in FPGA design.Are there some other good methods? In fact I do use FPGA Editor to generate a macro(since "clever" method did not work),but it brings out other questions -_-! First I generate a macro with only one LUT,but placer failed with a warning like "can not place function",I think maybe ISE considers the macro as a whole slice which contains only one LUT,so the design is too large to put in the device(remember there is 5k such functions here).But why the warning message appears at place stage and not map stage?And I think this problem is something like the RPM,right?But I could not find the reason why it is like this and how to avoid. Secondly I generate another macro fully using the whole slice(but my design uses only 3 of the 4--an eclectic solution).This time the warnings dissapear but it takes a very long time and routing process seems never convergent,so I stop it. Do you have any suggestion?Thanks a lot!
Best Regards, Ric Ma ASIC Department @Attansic Inc.