PC104 addressgin

using PC104 with 16bit configuration. What size is an address? IE. if i write 0xABCD to address 0x1234, did I infact write AB to 0x1234 and CD to 0x1235?

I think this is how ISA handles IO writes, but im not sure. So when I write 16 bits to an odd address I actualy get 2 writes to teh bus?

Can anyone confirm this?

Thanks

Mike D. miked@dodgeit

Reply to
MikeD
Loading thread data ...

x86 specific, there are other processors for PC104 and you didn't specify:

mov ax,2211 mov [1000],ax

al = 11 ah = 22 Address 1000 = 11 Address 1001 = 22

Reply to
Jim Stewart

Does this really mean that 16-bit R/W access to I/O address space in ISA works differently in different platforms????

Reply to
Pygmi

Other than the fact that there is PC 8-bit ISA and AT 16-bit ISA, (and you normally can't see even that difference) the answer is no.

Reply to
Guy Macon

I presume that little-endian / big-endian properties of the processor in question would be carried over to the way they do bus transfers. Of course I could be wrong...

Reply to
Jim Stewart

Since PC-104 is a standard, I would expect that all pc104 systems should work the same right?

Reply to
MikeD

*Three* Standards. Four if you count PCI-104.

8-Bit PC104 is the same thing as a PC/XT ISA Buss.

16-Bit PC104 is the same thing as a PC/AT ISA Buss.

PC104-Plus is the same thing as a PC with ISA and PCI.

PCI-104 is the same thing as a PC with PCI (no ISA).

Do you expect all PCs to work the same? Do you expect a 4.77 MHz PC-XT with 640K of memory, no FPU and a 32MB HD and CGA to work the same as a 3GHz quad Xeon server with 3GB of RAM a terrabyte of RAID and triple 1024x768 monitors with 3D acceleration? Pc104 systems are as much "the same" as PCs are - because they are PCs.

From a programming standpoint, the four kinds of PC104 I just described are exactly like the four kinds of PCs I just described. Just pretend you bought a PC and you will be fine.

If you want to make boards, you need to learn about the new connectors and some slight electrical differences.

Reply to
Guy Macon

PC104 is a bus standard. It has nothing to say about the devices attached to that bus beyond the interface, current draw etc. The byte ordering depends on implementation the other side of the barrier- depending on hardware decisions made by the board designers. Thus if I design a processor board with x86, I would get little-endian ordering of

16 bit values, whereas if I used a 68000 I would get the reverse. Similarly, the ordering of bytes on the peripherals is implementation dependent.

In other words, it's exactly the same situation as any other bus I've come across. The bus works the same, what you do with the data is up to you.

Paul Burke

Reply to
Paul Burke

Guy, Yes in that case I would expect them to be the same. Possibly a sparc and x86 would be a more appropriate comparison. But my argument is this. If one computer (say a mac powerPC) supports PCI bus. and a PC supports a PCI bus. I would argue that the databus is identical. Since I can buy a pci card and install it in either system.

Paul - same arguement. If the hardware supports a specific bus, then the data size,ordering.. would be specified. I just wonder if PC104 has that specified.

Reply to
MikeD

Why do you care? You won't be able to plug one into the other, because the connectors are different. They look the same to the software. Who cares if the details of the signals are different? Are you planning on designing a board?

That having been said, they are *not* different. They have essentially the same signals in every respect. This has been explained to you before.

Reply to
Guy Macon

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.