0

The issue I have is strongly related to a question which was asked over here. Unfortunately I did not find the answer I was looking for. Digging a bit more I've came across a class of IC's named unbuffered analog crosspoint arrays.

What I would like to know is if an unbuffered analog crosspoint array IC would allow for:

  • bidirectional data flow Xn to Yn
  • analog signal passthrough with virtually no noise injection up to, let's say, 12-bit resolution
  • digital signal passthrough compatible with I2C & SPI & UART

The one IC that I came across is ADG2128 but I'm not sure if it fits the criterias listed above.

I'm well aware that the problem might be solvable via a PLD (be it FPGA or CPLD), but I have no experience whatsoever hardware or firmware (VHDL) wise when it comes to such devices. Implementing an I2C slave altogether with a biderectional crosspoint array is no easy task for a beginner. Thus, a ready-to-go, already made IC would be a good kick-start.

Paun Alin
  • 58
  • 3

3 Answers3

2

Achieving clean passage of an analog signal through an analog multiplexor comes down to this phenomena, which you can model as a voltage divider:

the ratio of signal-source impedance to aggressor-energy impedances

Certainly the signal-source impedance is under your purview.

Crosstalk between the obvious signal paths is also under your purview.

The less obvious aggressors are

1) trash on the analog-mux FET gate

2) trash on the analog-mux FET bulk/tub/well/substrate

Both of 1 and 2 are highly dependent on the quality of RAIL bypassing and dampening.

At high frequencies, the injection of signal-charge thru the signal-gate and the signal-bulk will upset these RAILS, and nothing becomes predictable.

Using minimal-inductance packages and bypass capacitors (and attention to dampening) becomes crucial to analog SNR and to digital DataEyes.

analogsystemsrf
  • 33,703
  • 2
  • 18
  • 46
1

bidirectional data flow Xn to Yn

It looks "configurably bidirectional": so you can route Xn to Yn, or Yn to Xn, but you have to pick which direction you want in advance.

analog signal passthrough with virtually no noise injection up to, let's say, 12-bit resolution

Bits aren't the most appropriate measure for noise levels in analog signals. You need to use signal-to-noise ratio (SNR) in decibels. 12 bits corresponds to a SNR of at least 72db. This device only guarantees up to 63db crosstalk between adjacent channels, so that may be a problem.

digital signal passthrough compatible with I2C & SPI & UART

Lack of true bidirectionality will be a problem here for I2C. The others ought to work for normal speeds.

I'm well aware that the problem might be solvable via a PLD (be it FPGA or CPLD), but I have no experience whatsoever hardware or firmware (VHDL) wise when it comes to such devices. Implementing an I2C slave altogether with a biderectional crosspoint array is no easy task for a beginner. Thus, a ready-to-go, already made IC would be a good kick-start.

The analog side of this cannot be done with a programmable digital logic device.

pjc50
  • 46,540
  • 4
  • 64
  • 126
  • 1. The bidirectional side of the problem is one major aspect that got me confused. Based on the datasheet and my lack of experience with such ICs, I couldn't figure it out if being bidirectional meant truly bidirectional or not. From your answer I understand that true bidirectionallity is not possible at the same time, thus rendering I2C (SDA line particularly) pretty tricky to work with. Is there such an IC that is truly bidirectional? 2. Also, why would the analog side pose a problem to a PLD? After all, hardware wise Xn to Yn get physically connected trough a digital switch. – Paun Alin May 15 '19 at 16:30
  • I could be wrong about (1) but that was from skimming the datasheet, you'll need to read it carefully. (2) you'll find it hard to find a cpld that doesn't digitally buffer every IO, forcing analog values to 1 or 0. – pjc50 May 15 '19 at 16:45
  • Just ordered an evaluation board from Mouser: EVAL-ADG2128EBZ. I'll experiment with on-the-fly SPI, UART, I2C and analog signal routing. I'll post an update with the results. – Paun Alin May 20 '19 at 07:57
  • 1
    I can confirm that **ADG2128 works indeed!**. I've been able to on-the-fly route: - SPI - I2C - 1-wire - UART - Analog (DC) So, yeah, it handled everything I've thrown at it. Also, it is **truly bidirectional**, meaning X to Y is the same as Y to X. – Paun Alin Jun 06 '19 at 08:13
1

1) Yes it allows bidirectional data flow, analog or digital signals. It is basically a big matrix of analog multiplexers, also called pass gates.

2) Yes, with some limitations of course. Pass gates have few tens of ohms resistance when on and few megaohms maybe when off. Not much current can be sent via pass gates, about 10mA or so max. There are also stray capacitances so high frequencies attenuate when passing through and couple to nearby signals. So it will depend on your signal bandwidths and impedances, and signal voltages may not exceed the chip supplies.

3) Yes it is compatible with SPI, UART and even I2C which is bidirectional. As long as above limitatios are considered.

Contrary to what you stated that this could be done with a CPLD or FPGA, those can't switch and multiplex analog signals. For digital routing of SPI and UART they would work fine. But for switching a bidirectional open-drain type bus like I2C, that is easier with analog muxes or dedicated I2C multiplexers.

Justme
  • 127,425
  • 3
  • 97
  • 261