hi,
i would like to use a small fpga (or cpld) on a pcb to make direct bidirectional connections between pins. basically it should act like a programmable "cable". is this kind of application possible using programmable logic?
regards j
hi,
i would like to use a small fpga (or cpld) on a pcb to make direct bidirectional connections between pins. basically it should act like a programmable "cable". is this kind of application possible using programmable logic?
regards j
Not with a conventional CPLD. You would need to know enough about the signal flow to control the CPLD's output buffers.
There are plenty of bidi switch devices around (QuickSwitch and suchlike). It might be a good idea to build a crosspoint matrix of such switches, and then use a small CPLD to control the enables.
Lattice have a really interesting product that might suit your needs:
I have no idea about price, availability and development tools for those parts.
-- Jonathan Bromley, Consultant DOULOS - Developing Design Know-how VHDL * Verilog * SystemC * e * Perl * Tcl/Tk * Project Services Doulos Ltd., 22 Market Place, Ringwood, BH24 1AW, UK jonathan.bromley@MYCOMPANY.com http://www.MYCOMPANY.com The contents of this message may contain personal views which are not the views of Doulos Ltd., unless specifically stated.
If you are looking for analog-switch crosspoint operation, no. You will need direction control signals, and then you can build a digital buffered crosspoint system.
How many nodes and what delays can you tolerate ?
A 128MC device could get close to 16x16 crosspoint.
Some CPLDs are RAM based, loaded at power up, and those variants can be RAM reloaded - meaning you could re-spin the logic itself, via the JED info, in order to get maximum crosspoint choice, in a small device. Makes more sense in higher volume apps, as there is more engineering needed.
-jg
is one of many devices made for this purpose. Though some have built in buffers, and so are not bidirectional, others are.
You can use tristate drivers in most FPGAs, so that you could select the direction, but internally the datapaths are programmed directionally.
-- glen
hi,
thanks for the answers. because board area is very limited i was looking for a possibility to do a (kind of) quick and dirty address data-bus extention on demand where i additionally can write hardware peripherals in the fpga connected to this bus but also extend the bus through the fpga if desired (as i said, kind of "dirty")...
regards
J>
But now that you make known your real desire to extend a bus and have some registers to access, an FPGA solution is plenty viable. Thinking that you needed a bi-directional connection with no sense of which end is driving or receiving as you stated in your original post is a completely different problem.
In any case, extending a bus is easily doable in any FPGA that has enough I/O pins and meets voltage standards of the things that it is connected with.
KJ
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.