Easy PCI interfacing

Is there a simple method to interface to the PCI bus to be able to control something with a few bits like SPI or I2C, I think there is some form of serial bus running around a mother board to do heat and fan monitoring, does this come out on the PCI connector?

Search the internet but seems to of little help. Thought it might be discussed somewhere out there before.

Thanks for your help. Richard.

Reply to
The Mind Factory INC
Loading thread data ...

Not really. It'd hardly make much sense, anyway: it'd be like interfacing a 40-ton truck engine to drive a 40 millimeter PC cooling fan.

On *some* of them there is, but that's not guaranteed by anything. It's typically I2C, but called the System Management Bus, or "SMB" for short.

No.

--
Hans-Bernhard Broeker (broeker@physik.rwth-aachen.de)
Even if all the snow were burnt, ashes would remain.
Reply to
Hans-Bernhard Broeker

Here's some ways to get some I/O off of a motherboard that doesn't entail PCI

  1. There are a couple neat USB chips that let you access I/O ports on them.
  2. Use a USB to serial chip, set the serial port to the highest possible baudrate, hang a CPLD on the serial I/O and deserialize the data. We played around with this and were able to latch an "address" and "data" byte in a few microseconds. The beauty of this arrangement is that you can use the standard USB/serial drivers and not have to muck with windows.
  3. Use the secondary IDE connector. Trivial to latch or read a few bytes and it's all 5v ttl.
  4. Use the parallel printer port.

I would not recommend using a serial port and they are going away quickly. I suppose the parallel printer port will be next.

Reply to
Jim Stewart

Hans-Bernhard Broeker wrote: : The Mind Factory INC wrote: :> Is there a simple method to interface to the PCI bus to be able to control :> something with a few bits like SPI or I2C, : : Not really. It'd hardly make much sense, anyway: it'd be like : interfacing a 40-ton truck engine to drive a 40 millimeter PC cooling : fan.

Not necessarily. It would make sence if the PCI bridge would fan out to a general purpose, low frequency, classic strobe line controlled bus that could accommodate multiple expansion cards. No wait - that's what the south bridge was all about, wasn't it?

Jokes aside, there is truth to this. The Wintel PC is rapidly becoming useless for embedded tinkering and interfacing. Which is ironic as it is exactly this property that made it popular in the first place despite all its flaws (actually, the PC used to be nothing but a collection of flaws.)

Even if the PC continued to maintain the ISA bus it would be to no avail. Apart from the many flaws in the ISA bus itself, the device driver model of the Windows line of operation systems are by now totally inaccesible to hardware geeks. The linux is still barely within reach, but I expect that to change as well.

I only see one way out: Ethernet. Reasonable simple to implement on the target, both hardware and software (protocol) wise, the biggest benefit is the accessibility directly from userland on desktop OSes. But I suppose that if hardware geeks really started to use this opportunity to bypass the desktop OS at large, this 'hole' will eventually be plugged, citing OS architectual benefits and streamlining...

:> I think there is some form of serial bus running around a mother :> board to do heat and fan monitoring, : : On *some* of them there is, but that's not guaranteed by anything. : It's typically I2C, but called the System Management Bus, or "SMB" for : short. : :> does this come out on the PCI connector? : : No.

But it *does* come out on the DD-/SDRAM DIMM connectors.

--
  ******************************************************
  Never ever underestimate the power of human stupidity.
  -Robert Anson Heinlein

		GeirFRS@INVALID.and.so.forth
  ******************************************************
Reply to
Geir Frode Raanes Sørensen

No, that's about salvaging investments made in ISA components over to the PCI era.

Today, you'ld probably have to use one of those USB ports. It's troublesome news from an embedded systems point-of-view, but these days, if you want to attach something to a generic customer's PC you don't control yourself, your only reliable choices are USB or a network interface (Eth, WLAN, modem).

Either that, or you get the customer to buy a USB-to-whatever interface and live with its quirks.

I wouldn't bet on that being a usable SMB line, though. Connecting anything but a DIMM's I2C-based SPD EEPROM to those line is more likely to confuse the BIOS endlessly, than do you any good.

--
Hans-Bernhard Broeker (broeker@physik.rwth-aachen.de)
Even if all the snow were burnt, ashes would remain.
Reply to
Hans-Bernhard Broeker

While this is partially true, there are tool kits that provide low-level I/O access to I/O devices from user applications (or just hack the PORTIO sample in the Windows DDK). And most data acquisition/DIO/PIO type boards come with, or have available, device drivers that allow straight-forward access from applications.

Directly interfacing to the PCI bus is certainly non-trivial, which is why there are several dozen interface chips you can buy. Several (PLX

905x, for example) of which have "ISA" modes with which they emulate an ISA bus out their back side.
Reply to
Robert Wessel

Jim Stewart wrote: [...]

The reason the parallel port has not gone away yet is all the parallel dongles out there. You can think of the parallel port as the 'dongle port', and expect it to be around for quite a while longer.

Reply to
Bryan Hackney

Good point. I suspect departmental printservers/ printers will continue to have parallel ports for awhile as well.

Reply to
Jim Stewart

There is also a driver called DirectIO, which unlock the IOports (by manipulating the IO map in the task segment or so. Very practical, but use at your own peril, as all IO protection is removed.

Wim

Reply to
Wim Ton

Hi Richard,

A suitable solution will be to use Chameleon POD (smart parallel port dongle). The POD only is EUR 129.-

Our POD is used for JTAG interface emulating (Raven Wiggler ByteBlaster Xilinx Cable III ...). It is based on reprogrammable logic (CPLD), with onboard 32MHz osc., and a true 1284 transciever. You can customize the parallel port as you want. We have successfully dev. a I2C MASTER CONTROLLER on it.

Our I2C MASTER CONTROLLER can drive a true 100kHz or 400KHz I2C frequency, but can be up to 1.2MByte baudrate using EPP mode of the parallel port ;-)

We have our own Windows drivers and can provide you the help for Linux integration. Also on any windows, you can use portmon driver.

Many poeple forget the EPP mode of the parallel port provide a better datarate than the USB 2.0 (12MHz) when we you have to control a non 'packetable' application like a small I"C Controller or SPI controller.

We have a nice PCI solution based on FPGA. We have both PCI Slave core and Win/Linux drivers.

For USB solution, check the new FTDI Chip, FT2232 ... your will be enable to remote an small ISA based bus. -> but you will be in very low speeds: 60kbits second :-(

Let me know, for more details.

Laurent Gauch

formatting link

Reply to
Amontec Team, Laurent Gauch

Anyway, a PCI solution will be too expensive for low volume (

Reply to
Amontec Team, Laurent Gauch

"Amontec Team, Laurent Gauch" wrote in news: snipped-for-privacy@amontecDELETEALLCAPS.com:

12 Mbps is the USB 1.1 "full" speed. USB 2.0 adds "high" speed of 480 Mbps. For comparison, PCI is 132 Mbps. Firewire is 400, 800, and 1200 Mbps.
Reply to
Kenneth Porter

"The Mind Factory INC" wrote in news:qdbTb.2872$ snipped-for-privacy@news20.bellglobal.com:

Perhaps more importantly, how much speed and do you need and how much latency can you tolerate? If not much, a USB widget can probably do that.

Reply to
Kenneth Porter

But your 12Mbps is the theorical baudrate. USB 1.1 can be up to 11Mbps only if your have a very 'packetable' application like read/write files.

Do not forget the USB is a transport layer of your application ... the communication layer of your application will be provided by your host processor with all the OS lentacy troubles !

Laurent

formatting link

Reply to
Amontec Team, Laurent Gauch

PCI (at 33MHZ) is 132 MBytes/s not Mbits/s. Or around 4Gb/s.

Regards.

Reply to
Elder Costa

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.