Design does not fit on the chip

  • Thread starter Thread starter EvLer
  • Start date Start date
  • Tags Tags
    Design Fit
Click For Summary

Discussion Overview

The discussion revolves around the challenges of implementing a combinational logic function using an abel program for a specific hardware platform (GAL16V8D and GAL22). Participants explore issues related to fitting the design within the constraints of the programmable logic device (PLD) and seek hints for optimization.

Discussion Character

  • Homework-related
  • Technical explanation
  • Exploratory

Main Points Raised

  • One participant describes their assignment involving a combinational logic function with 5 inputs and outputs indicating multiples of 3 and 5, noting that their design does not fit on the chip.
  • Another participant suggests examining the equations generated by the compiler and proposes generating an intermediate term to help fit the logic into the PLD, indicating that multiple clock cycles may be needed for propagation.
  • A participant shares the generated equations for M3 and M5 and expresses concern about fitting them into GAL16V8, noting they have 16 sum terms which exceed the device's capacity.
  • One participant questions whether the provided equations are the reduced forms and hints at using the inverted form from the K-map for potentially more efficient equations.
  • A later reply indicates success after reversing polarity, suggesting that this approach allowed the design to fit within the constraints of the hardware.

Areas of Agreement / Disagreement

Participants do not reach a consensus on the best approach to optimize the design for the GAL16V8D, as multiple strategies are proposed and explored without clear agreement on a single solution.

Contextual Notes

Participants mention the limitations of the GAL16V8D and GAL22 in terms of the number of available gates, which affects the feasibility of their designs. There are also references to the need for minimization of sum terms and the potential benefits of using inverted logic forms.

EvLer
Messages
454
Reaction score
0
So, yeah... this is an assignment, but i just need some hint:
we need to write an abel program for a combinational logic function with 5 inputs representing integers 0-31, and two outputs M3 and M5, which indicate whether the number is multiple of 3 or 5, respectively.
So, here's my truth_table... and... my design does not fit on the chip (compiler says)! How can i rework this if compiler isn't able to optimize it?

thanks much as always.

EDIT: i should say that i used GAL16V8D, is it possible to use this PLD or do i need to use something like GAL22?
 

Attachments

Last edited:
Engineering news on Phys.org
EvLer said:
So, yeah... this is an assignment, but i just need some hint:
we need to write an abel program for a combinational logic function with 5 inputs representing integers 0-31, and two outputs M3 and M5, which indicate whether the number is multiple of 3 or 5, respectively.
So, here's my truth_table... and... my design does not fit on the chip (compiler says)! How can i rework this if compiler isn't able to optimize it?

thanks much as always.

EDIT: i should say that i used GAL16V8D, is it possible to use this PLD or do i need to use something like GAL22?
Here's a hint -- look at the equations that the compiler generated, and think about how you can get the logic to fit if you generate an intermediate term and feed it back into the PLD as another input. It may take two passes through the small PLD to get the result. So it may take two or more clock cycles for the logic to propagate from new input data to valid output data.
 
don't mean to overwhelm my post, but here are the equations generated by abel (i fit it on GAL22 for now)... could i have a hint :cry:

M3 = (N4 & !N3 & N2 & !N1 & N0
# N4 & N3 & !N2 & !N1 & !N0
# !N4 & N3 & N2 & !N1 & !N0
# N4 & !N3 & !N2 & N1 & !N0
# !N4 & !N3 & N2 & N1 & !N0
# !N4 & N3 & !N2 & !N1 & N0
# !N4 & !N3 & !N2 & N1 & N0
# N4 & N3 & N2 & N1 & !N0
# N4 & N3 & !N2 & N1 & N0
# !N4 & N3 & N2 & N1 & N0);

M5 = (N4 & !N3 & N2 & !N1 & !N0
# !N4 & N3 & !N2 & N1 & !N0
# N4 & N3 & !N2 & !N1 & N0
# !N4 & !N3 & N2 & !N1 & N0
# N4 & N3 & N2 & N1 & !N0
# !N4 & N3 & N2 & N1 & N0);

edit: i assume for GAL16V8 i need to "minimize" sum terms, of which there are 16 (OR-gates and 8 AND gates), right? well...i have 16!
 
Last edited:
Those aren't the reduced equations, are they?

Edit/Hint -- Those are the "reduced" equations for positive logic, but check out the K-map for the inverted form. Try enabling the inverted form in your compiler. Does it not generate them also by default? Whenever your K-map has isolated 1's like that and big groups of 0's, the inverted equations will probably be more efficient.
 
Last edited:
thanks! i reversed polarity and i think it fit...
 

Similar threads

  • · Replies 22 ·
Replies
22
Views
5K
Replies
1
Views
1K
Replies
10
Views
3K
  • · Replies 17 ·
Replies
17
Views
4K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 26 ·
Replies
26
Views
5K
Replies
2
Views
3K
  • · Replies 22 ·
Replies
22
Views
7K