Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Bus-hold pins as registers

Status
Not open for further replies.

supercat

Member level 3
Joined
Jun 14, 2010
Messages
57
Helped
5
Reputation
10
Reaction score
1
Trophy points
1,288
Activity points
2,030
In CPLD designs which have extra I/O's but are short on registers, has anyone used I/O's configured as "bus hold" as extra logic (using "output enable" as a latch-enable signal)? Are there any particular limitations?

I would expect that because enabling output will turn on strong transistors, that such pins should switch quickly. If the pins are open-circuit, then absent external disturbance, they should reliably remain switched. A metastable state could arise if the output enable was pulsed too briefly, but without any external capacitance the pins should switch thoroughly for all but the shortest enable pulses.

I'm presently using a Lattice 4064ZE in a 44-pin package. Ideally, I could use non-bonded pins for registers; does anyone know of any "nice" way to do that in the fitter? The only approach I can see is to lie to the fitter, say I'm using a 100-pin part, and then remap all my pin numbers, but that seems icky. Are there any better ways?

Also, the data sheet shows an output routing pool between the macrocells and the I/O pads. If two I/O pins share the same logic equations, and both are within "routing distance" of one macrocell, is there any way to convince the fitter to map that macrocell to both pads? If so, one could add small amounts of RAM or grayscale counters to a design using very few macrocells.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top