fbpx
Wikipedia

PC/104

PC/104 (or PC104) is a family of embedded computer standards which define both form factors and computer buses by the PC/104 Consortium. Its name derives from the 104 pins on the interboard connector (ISA) in the original PC/104 specification[1][2] and has been retained in subsequent revisions, despite changes to connectors. PC/104 is intended for specialized environments where a small, rugged computer system is required. The standard is modular, and allows consumers to stack together boards from a variety of COTS manufacturers to produce a customized embedded system.[3]

The original PC/104 form factor is somewhat smaller than a desktop PC motherboard at 3.550 × 3.775 inches (90 × 96 mm). Unlike other popular computer form factors such as ATX, which rely on a motherboard or backplane, PC/104 boards are stacked on top of each other like building blocks. The PC/104 specification defines four mounting holes at the corners of each module, which allow the boards to be fastened to each other using standoffs. The stackable bus connectors and use of standoffs provides a more rugged mounting than slot boards found in desktop PCs. The compact board size further contributes to the ruggedness of the form factor by reducing the possibility of PCB flexing under shock and vibration.

A typical PC/104 system (commonly referred to as a "stack") will include a CPU board, power supply board, and one or more peripheral boards, such as a data acquisition module, GPS receiver, or Wireless LAN controller. A wide array of peripheral boards are available from various vendors. Users may design a stack that incorporates boards from multiple vendors. The overall height, weight, and power consumption of the stack can vary depending on the number of boards that are used.

PC/104 is sometimes referred to as a "stackable PC", as most of the architecture derives from the desktop PC.[4] The majority of PC/104 CPU boards are x86 compatible and include standard PC interfaces such as Serial Ports, USB, Ethernet, and VGA. A x86 PC/104 system is usually capable of standard PC operating system such as DOS, Windows, or Linux. However, it is also quite common to use a real-time operating system, such as VxWorks.

History and standardization

The PC/104 bus and form factor was originally devised by Ampro in 1987 (led by CTO Rick Lehrbaum),[5] and later standardized by the PC/104 Consortium in 1992.[6] An IEEE standard corresponding to PC/104 was drafted as IEEE P996.1, but never ratified.[7] In 1997, the PC/104 Consortium introduced a newer standard based on the PCI bus.[8] A PCI Express-based standard was introduced in 2008.[9]

PC/104-related specifications are controlled by the PC/104 Consortium. There are currently 47 members of the Consortium.[10] All specifications published by the Consortium are freely available. Membership in the Consortium is not required to design and manufacture a PC/104 board.

Specification Initial Release Bus Communication Current Version
PC/104 1992 ISA (AT and XT) 2.6
PC/104-Plus 1997 ISA and PCI
PCI-104 2003 PCI 1.1
PCI/104-Express and PCIe/104 2008 PCI and PCI Express 3.0[11]

Bus structure vis-à-vis form factor

The specifications released by the PC/104 Consortium define multiple of Bus Structures (ISA, PCI, PCI Express) and Form Factors (104, EBX, EPIC). Bus Structure defines the location and pinout of the bus connector(s). Form Factor refers to size and shape of the board. It is possible to find one of the PC/104 stackable expansion buses on a number of different form factors. While most commercially available products using the Bus Structures will comply with the Form Factors listed below, it is possible for a non-standard or proprietary form factor to incorporate one of the PC/104 Bus Structures for expandability.

Note the term "PC/104" is often used interchangeably to refer to either the Bus Structure or Form Factor. This can be a source of confusion. For example, a product datasheet may refer to a board as "PC/104" due to its size and shape when it in fact has a PCI-104 expansion bus.

Bus structures

The PC/104 Consortium specifications define a variety a computer buses, all of which derive from the ISA, PCI, and PCI Express buses found in a desktop PC.

PC/104

The original PC/104 bus derives from the ISA bus. It includes all the signals found on the ISA bus, with additional ground pins added to ensure bus integrity. Signal timing and voltage levels are identical to the ISA bus, with lower current requirements. The PC/104 specification defines two versions of the bus, 8-bit or 16-bit. The 8-bit version corresponds to the IBM XT and consists of 64 pins. The 16-bit version corresponds to the IBM AT and adds 40 additional pins, bringing the total to 104 (hence the name "PC/104"). The signals marked J1/P1 are only found on the 8-bit version, while the 16-bit version adds the signals of J2/P2.

Since PC/104 is based on the ISA bus, it is often necessary to set the Base Address, IRQ, and DMA channel when installing a peripheral board. This is usually accomplished via the use of jumpers or DIP switches on the peripheral board. Failure to configure the peripheral correctly can cause a resource conflict and lead to erratic behavior.

PC/104-Plus

The PC/104-Plus standard adds support for the PCI bus, in addition to the ISA bus of the PC/104 standard. The name is derived from its origin: a PC/104-Plus module has a PC/104 connector (ISA) plus a PCI connector. The standard defines a 120-pin connector for the PCI bus, located on the opposite side of the board from the PC/104 connector.

PC/104-Plus CPU boards provide active communication on both buses, and are capable of communicating with both ISA and PCI peripheral cards. On PC/104-Plus peripheral modules, the PC/104 connector is simply a passive connector for stackability; the module actively communicates on the PCI bus only. As a corollary, a PC/104-Plus peripheral module may not be used with a PC/104 CPU board. However, a PC/104-Plus CPU board may be used with a PC/104 peripheral module.

Since PC/104-Plus is based on PCI, there is no need to set a Base Address, IRQ, or DMA channel on the peripheral boards. However, it is necessary to specify the PCI Slot Number of a peripheral board when it is installed. This is commonly set by a rotary switch, DIP switch, or jumpers on the peripheral board. Each PCI peripheral board in the system must have the PCI Slot Number set to a unique value. Failure to do so may cause erratic system behavior. The peripheral closest to the CPU should be set for the first slot, the next board should be set for the second slot, etc.

PCI-104

The PCI-104 form factor includes the PCI connector, but not the PC/104 connector, in order to increase the available board real estate. Even though the PCI connector has 120 pins instead of 104, the established name was kept. The PCI connector location and pinout is identical to PC/104-Plus.

Since the ISA bus is omitted, a PCI-104 board is incompatible with PC/104 peripheral module. However, PCI-104 and PC/104-Plus are compatible, since they both utilize the PCI bus. Most PC/104-Plus boards can be manufactured as PCI-104 by simply not populating the PC/104 connector.

PCI-104 utilizes the same PCI Slot Number selection scheme as PC/104-Plus. Each device must be assigned to a unique slot number.

PCI/104-Express

The PCI/104-Express specification incorporates the PCI Express bus (PCIe) in addition to the previous-generation PCI bus. The specification defines a 156-pin surface mount connector for the PCI Express signals. The new connector occupies the same board location as the legacy PC/104 ISA connector. In addition to PCI Express, the specifications also defines pins on the connector for additional modern computer buses, such as USB, SATA, and LPC.

The PCI/104-Express specification currently defines two possible pinouts for the PCIe connector:[12]

  1. Type 1 offers four x1 PCI Express links, two USB 2.0 ports, and one x16 PCIe link.
  2. Type 2 offers four x1 PCI Express links, two USB 2.0 ports, two PCIe x4 links, two USB 3.0 ports, two SATA ports, and LPC.

CPU boards and peripherals may be designed as Type 1, Type 2, or Universal (which only uses the common subset of signals between the two types, PCIe x1 and/or USB 2.0). The Type 2 pinout was not introduced until Version 2.0 of the specification (released in 2011). PCI/104-Express products introduced prior to 2011 will be either Type 1 or Universal, but may not be explicitly labeled as such. A Type 1 bus is incompatible with Type 2 peripherals, or vice versa. The specification requires the system to remain in reset and not boot in the case of a Type mismatch (no physical damage will occur). Universal peripheral boards may be used with either Type 1 or Type 2 pinouts.

Because the PCIe bus connector is surface-mount, not through-hole, it is also possible for a board to use different bus pinouts on the top side of the board vs the bottom side. For example, a CPU board may have a Type 1 bottom PCIe connector and a Type 2 top PCIe connector. Such a CPU board would be compatible with Type 1 and/or Universal peripherals on the bottom, and compatible with Type 2 and/or Universal peripherals on the top.

Similar to PC/104-Plus, a PCI/104-Express CPU boards will provide active communication on both PCI and PCIe buses. A PC/104-Express CPU board may be used with PCI-104 and PC/104-Plus peripheral modules. However, a PCI/104-Express peripheral module will communicate on the PCIe bus only; the PCI connector is simply a pass-through connector for stackability. A PC/104-Express peripheral module may not be used with a PCI-104 or PC/104-Plus CPU board (unless an ISA bridge device is used).

PCI/104-Express incorporates link shifting, which eliminates the need for the PCI slot selection switches/jumpers found on PCI-104 and PC/104-Plus peripherals. Some peripheral boards re-populate the PCIe links, which allows the stack to have additional peripheral boards beyond the initial set of PCI Express links provided by CPU board. Link repopulation is not a requirement in the specification, and must be implemented on the peripheral board with a PCI Express packet switch.

PCIe/104

PCIe/104 is similar to the PCI/104-Express standard, but omits the legacy PCI bus to increase available space on the board (similar to the relationship between PC/104-Plus and PCI-104). The PCI Express connector location and pinout options the same as PCI/104-Express (both Type 1 and Type 2). Because the PCI bus connector is omitted, a PCIe/104 board is incompatible with PC/104-Plus and PCI-104 systems (unless a PCIe-to-PCI bridge device is used).

Form factors

The PC/104 Consortium's specifications cover three form factors which define the size and shape of the board. Each form factor may utilize one of the Bus Structures listed above.

104 or PC/104

The 104 Form Factor is defined to be 3.550 × 3.775 inches (90 × 96 mm), with mounting holes at all four corners of the board. The specifications also allow for a 0.5 inches (13 mm) area beyond the edge of the PCB for I/O connectors. Some PC/104 products have oversized PCBs which extended into the I/O connector area. The extended PCB "wings" is not addressed in the specification, generally does not cause mechanical issues as long as the overall PCB + I/O connector overhang is within the maximum allowable dimensions of 4.550 × 4.393 inches (116 × 112 mm).

The dimensions were originally defined in the PC/104 Specification, and as a result the form factor is still commonly referred to as "PC/104". The PCI/104-Express and PCIe/104 Specification introduced the "104" name to distinguish the form factor from the legacy PC/104 bus.

EBX and EBX Express

EBX (Embedded Board eXpandable) is a single board computer form factor, 5.75 × 8 in (146 × 203 mm). The EBX form factor applies to the CPU board, but supports PC/104 form factor peripheral boards for expansion. The original EBX specifications allowed for the PC/104, PC/104-Plus, and PCI-104 buses. EBX Express adds the PCI-104/Express and PCIe/104 buses.

EPIC and EPIC Express

EPIC (Embedded Platform for Industrial Computing) is a single-board computer form factor which, like EBX, supports PC/104 peripheral boards but is smaller than EBX at 6.5 × 4.5 in (165 × 114 mm). It allows I/O connections to be implemented as either pin headers or PC-style ("real world") connectors. The standard provides specific I/O zones to implement functions such as Ethernet, serial ports, digital and analog I/O, video, wireless, and various application-specific interfaces. EPIC Express adds PCI Express expandability.

Stacking limits

In general, every PC/104 stack will contain a CPU board, power supply board, and one or more peripheral boards. The maximum number of boards supported by a PC/104 stack will depend on the which buses are used by the peripheral boards.

  1. ISA Bus - There is no strict limit to the number of ISA boards which can coexist in one system. However, there is a limited number of Base Addresses, IRQs, and DMA channels which may become a limiting factor. ISA boards may be stacked on either side of the CPU board.
  2. PCI Bus - The PC/104-Plus and PCI-104 specifications allows for four PCI "slots". This imposes a hard limit of four PCI peripheral boards per system. All PCI peripheral modules must connect consecutively on one side of the controller due to the signaling requirements of the PCI bus.
  3. PCI Express - The total number of PCI Express peripheral boards will depend on the number of PCIe links provided by the CPU board. For example, if the CPU board provides four x1 PCIe links, then a maximum of four x1 PCIe peripheral cards may be installed. If one or more of the peripheral boards provide PCIe link repopulation, additional modules may be installed. PCIe links on the upper side of the CPU board are independent from the links on the underside. Installing a PCIe peripheral under the CPU board will not consume one of the top side links. The quantity and width of PCIe links available may vary between the top and bottom connectors of the CPU board.
  4. USB and SATA - The PCI/104-Express and PCIe/104 Specification provides signals for USB and SATA, which may be used by peripheral boards in the stack. Peripheral which use USB and SATA will be limited to the number of links provided by the CPU board. USB peripherals may provide link repopulation by incorporating an onboard USB hub.

Regardless of the buses used, the maximum number of boards of a PC/104 stack may be limited due to size, weight, and power restrictions for the target application.

Mechanical interference between boards

When stacking PC/104 boards together, mechanical interference between adjacent boards is a concern.

  1. Bus Connectors - When assembling a system composed of multiple Bus Structures, it is possible for the bus connectors to interfere with components on an adjacent board. For example, if a PC/104-Plus board is stacked on top of a PC/104 board, it is possible for the pins on the underside of the PCI connector to run into components on the lower board.
  2. Out of Spec Components and Connectors - The PC/104 specifications limit the height of components and connectors that may be placed on either side of the board. A constrained height region is intended to guarantee that boards will not interfere with other neighbors stacked above or below. However, it is not uncommon to find boards which violate these constraints.
  3. Heatsinks - The standard spacing between stacked PC/104 boards is 0.600 inches (15.24 mm). Components with significant power consumption (CPUs, GPUs, FPGAs) often require a larger heatsink which does not fit within the traditional board spacing. It is not uncommon to find PC/104 CPU boards with relatively large heatsinks that do not allow for peripheral boards to be stacked above it. Later revisions of the PCI/104-Express and PCIe/104 specification introduced an optional taller 0.866 inch (22.00 mm) connector that is compatible with the traditional height connector.

The mechanical interference issues listed above can often be addressed with a Bus Spacer, which allows additional room between the boards. However, Bus Spacers increase overall stack height, and may not be suitable for space-constrained applications. It may also be possible to re-arrange the boards in the stack to remove the interference. Another option is to modify the offending boards to remove the interference (e.g. depopulate a connector), but this may require the vendor to supply a customized version of the board.

Potential compatibility issues

In theory, PC/104 boards are interoperable. It is possible to assemble a system using boards from several different vendors, subject to the fundamental Bus Structure compatibility issues listed above. However, compatibility issues sometimes appear.

  • PC/104 Keying Pins – the PC/104 specification defines two keying pins to prevent misalignment of the connector. These pins are not to be populated on the connector. However, some vendors do not utilize keyed PC/104 connectors. The may cause issues when using boards from multiple vendors. It is often possible to modify the non-keyed board by clipping the offending pins.
  • Required Power Supply Voltages – the PC/104 buses provide for several supply voltages (+5V, +3.3V, +12V, etc.). Which voltages are actually used by a board is at the discretion of the board manufacturer. Care must be taken to supply all of the voltages required for the boards in the stack.
  • Power Supply Contention – some boards will provide power on the stack (e.g. a CPU board). This may conflict with a power supply in the stack.
  • PCI Signaling Levels – the PCI bus may operate at +3.3V or +5V signaling levels. Some boards may expect one voltage, others may expect a different voltage.
  • PCI VIO Line – the VIO signal on the PCI bus is supposed to be driven by the CPU board. However, some peripheral boards and power supplies drive this signal (in violation of the PCI specification).
  • ISA Bus with modern chipsets – the legacy ISA bus has been omitted from modern chipsets. Newer CPU boards that provide an ISA bus often do so by utilizing an ISA bridge chip (either PCI-to-ISA or LPC-to-ISA). In some cases, the ISA bus is not fully implemented, and compatibility issues may appear.
  • 4 Bus Masters – the PC/104-Plus and PCI-104 specifications did not originally allow for 4 sets of Grant/Request pairs on the PCI bus. This was resolved in newer revisions of the specification. However, older boards may have issue using DMA in the 3rd or 4th PCI slot position.

Software development

The majority of PC/104 CPU boards are x86 compatible, and are capable of running commercially available off-the-shelf PC software without modification. The standard PC I/O interfaces of a PC/104 system (Serial Ports, USB, Ethernet, VGA, etc.) are typically supported via the native drivers built into the operating system. Certain peripheral boards, such as data acquisition may require special drivers from the board manufacturer.

From a software development perspective, there is little difference between compiling software for a desktop PC or compiling for an x86 PC/104 stack. Software can be developed using standard x86 compilers (e.g. Visual Studio if the PC/104 system is running Windows). There is typically no need for specialized development tools, such as cross compilers, Board Support Packages, or JTAG debuggers. This is a significant departure from non-x86 embedded system platforms, which often require a development toolchain from the board manufacturer.

Non-x86 PC/104 CPU boards based on ARM or PowerPC are also commercially available. However, such boards are not capable of running off-the-shelf PC software. In these cases, a Board Support Package is usually provided by the manufacturer for the supported operating system(s).

Spelling variations and abbreviations

When printing "PC/104" or its variants, it is common for the forward slash or dashes to be omitted. PC/104 may be abbreviated as PC104, PCI-104 abbreviated as PCI104, etc. Additionally, it is common for PC/104-Plus to be abbreviated with a plus sign (e.g. PC104+).[13] Such abbreviations are not officially recognized in any PC/104 Consortium specifications or literature, however they have been in use for some time.

Storage

PC/104 systems often require small, non-volatile storage, such as that afforded by compact flash and solid state disk (SSD) devices. These are often more popular than mechanical (rotating) hard drives. Compared to rotating disks, flash-based storage devices have limited lifetimes in terms of write cycles, but they are faster and draw less power. Additionally, their compactness and physical durability is often better-suited to rugged PC/104 applications; the size of magnetic hard drives can be cumbersome and their many delicate parts are more susceptible to failure in harsh environments.

See also

References

  1. ^ Burckle, Robert. "PC/104: The Embedded PC Mezzanine" (PDF).{{cite web}}: CS1 maint: url-status (link)
  2. ^ "PC104.com - What is PC104?". www.pc104.com. Retrieved 2021-05-19.
  3. ^ "Why PC/104? The Need for an Embedded-PC Standard". Retrieved 2008-01-29.
  4. ^ "PC/104 Consortium technical update: Stackable PCs from ISA to PCI to PCI Express". Retrieved 4 September 2014.
  5. ^ Himpe, Vincent (2006). Visual Basic for Electronics Engineering Applications (2nd ed.). India: Segment B.V. / Elektor Electronics. p. 407. ISBN 0-905705-68-8. Retrieved 2008-01-29.
  6. ^ "PC/104 Embedded Consortium's History". Retrieved 2008-01-29.
  7. ^ Angel, Jonathan (2010-02-01). "Open standard defines tiny expansion modules". LinuxDevices.com. Retrieved 2014-03-18.
  8. ^ "PC/104 Consortium - History". Retrieved 2014-08-14.
  9. ^ "PC/104 Embedded Consortium Approves PCI/104-Express Specification". Retrieved 2014-08-14.
  10. ^ . pc104.org. Archived from the original on June 2, 2013. Retrieved 4 September 2014.
  11. ^ "PCI/104-Express & PCIe/104 Specification, Version 3.0" (PDF). pc104.org. February 17, 2015. Retrieved 2016-11-02.
  12. ^ "What is PCIe/104?". Retrieved 2014-08-08.
  13. ^ "Example of non-standard PC/104 abbreviation". Retrieved 8 September 2014.

External links

  • PC/104 Consortium

this, article, about, embedded, computer, standard, keyboard, layout, that, linux, unix, documentation, referred, pc104, keyboard, keyboard, layouts, pc104, family, embedded, computer, standards, which, define, both, form, factors, computer, buses, consortium,. This article is about the embedded computer standard For the keyboard layout that Linux Unix documentation referred to as pc104 see IBM PC keyboard Keyboard layouts PC 104 or PC104 is a family of embedded computer standards which define both form factors and computer buses by the PC 104 Consortium Its name derives from the 104 pins on the interboard connector ISA in the original PC 104 specification 1 2 and has been retained in subsequent revisions despite changes to connectors PC 104 is intended for specialized environments where a small rugged computer system is required The standard is modular and allows consumers to stack together boards from a variety of COTS manufacturers to produce a customized embedded system 3 A PCI 104 single board computer The original PC 104 form factor is somewhat smaller than a desktop PC motherboard at 3 550 3 775 inches 90 96 mm Unlike other popular computer form factors such as ATX which rely on a motherboard or backplane PC 104 boards are stacked on top of each other like building blocks The PC 104 specification defines four mounting holes at the corners of each module which allow the boards to be fastened to each other using standoffs The stackable bus connectors and use of standoffs provides a more rugged mounting than slot boards found in desktop PCs The compact board size further contributes to the ruggedness of the form factor by reducing the possibility of PCB flexing under shock and vibration A typical PC 104 system commonly referred to as a stack will include a CPU board power supply board and one or more peripheral boards such as a data acquisition module GPS receiver or Wireless LAN controller A wide array of peripheral boards are available from various vendors Users may design a stack that incorporates boards from multiple vendors The overall height weight and power consumption of the stack can vary depending on the number of boards that are used PC 104 is sometimes referred to as a stackable PC as most of the architecture derives from the desktop PC 4 The majority of PC 104 CPU boards are x86 compatible and include standard PC interfaces such as Serial Ports USB Ethernet and VGA A x86 PC 104 system is usually capable of standard PC operating system such as DOS Windows or Linux However it is also quite common to use a real time operating system such as VxWorks Contents 1 History and standardization 2 Bus structure vis a vis form factor 3 Bus structures 3 1 PC 104 3 2 PC 104 Plus 3 3 PCI 104 3 4 PCI 104 Express 3 5 PCIe 104 4 Form factors 4 1 104 or PC 104 4 2 EBX and EBX Express 4 3 EPIC and EPIC Express 5 Stacking limits 6 Mechanical interference between boards 7 Potential compatibility issues 8 Software development 9 Spelling variations and abbreviations 10 Storage 11 See also 12 References 13 External linksHistory and standardization EditThe PC 104 bus and form factor was originally devised by Ampro in 1987 led by CTO Rick Lehrbaum 5 and later standardized by the PC 104 Consortium in 1992 6 An IEEE standard corresponding to PC 104 was drafted as IEEE P996 1 but never ratified 7 In 1997 the PC 104 Consortium introduced a newer standard based on the PCI bus 8 A PCI Express based standard was introduced in 2008 9 PC 104 related specifications are controlled by the PC 104 Consortium There are currently 47 members of the Consortium 10 All specifications published by the Consortium are freely available Membership in the Consortium is not required to design and manufacture a PC 104 board Specification Initial Release Bus Communication Current update VersionPC 104 1992 ISA AT and XT 2 6PC 104 Plus 1997 ISA and PCIPCI 104 2003 PCI 1 1PCI 104 Express and PCIe 104 2008 PCI and PCI Express 3 0 11 Bus structure vis a vis form factor EditThe specifications released by the PC 104 Consortium define multiple of Bus Structures ISA PCI PCI Express and Form Factors 104 EBX EPIC Bus Structure defines the location and pinout of the bus connector s Form Factor refers to size and shape of the board It is possible to find one of the PC 104 stackable expansion buses on a number of different form factors While most commercially available products using the Bus Structures will comply with the Form Factors listed below it is possible for a non standard or proprietary form factor to incorporate one of the PC 104 Bus Structures for expandability Note the term PC 104 is often used interchangeably to refer to either the Bus Structure or Form Factor This can be a source of confusion For example a product datasheet may refer to a board as PC 104 due to its size and shape when it in fact has a PCI 104 expansion bus Bus structures EditThe PC 104 Consortium specifications define a variety a computer buses all of which derive from the ISA PCI and PCI Express buses found in a desktop PC PC 104 Edit The original PC 104 bus derives from the ISA bus It includes all the signals found on the ISA bus with additional ground pins added to ensure bus integrity Signal timing and voltage levels are identical to the ISA bus with lower current requirements The PC 104 specification defines two versions of the bus 8 bit or 16 bit The 8 bit version corresponds to the IBM XT and consists of 64 pins The 16 bit version corresponds to the IBM AT and adds 40 additional pins bringing the total to 104 hence the name PC 104 The signals marked J1 P1 are only found on the 8 bit version while the 16 bit version adds the signals of J2 P2 Since PC 104 is based on the ISA bus it is often necessary to set the Base Address IRQ and DMA channel when installing a peripheral board This is usually accomplished via the use of jumpers or DIP switches on the peripheral board Failure to configure the peripheral correctly can cause a resource conflict and lead to erratic behavior PC 104 Plus Edit The PC 104 Plus standard adds support for the PCI bus in addition to the ISA bus of the PC 104 standard The name is derived from its origin a PC 104 Plus module has a PC 104 connector ISA plus a PCI connector The standard defines a 120 pin connector for the PCI bus located on the opposite side of the board from the PC 104 connector PC 104 Plus CPU boards provide active communication on both buses and are capable of communicating with both ISA and PCI peripheral cards On PC 104 Plus peripheral modules the PC 104 connector is simply a passive connector for stackability the module actively communicates on the PCI bus only As a corollary a PC 104 Plus peripheral module may not be used with a PC 104 CPU board However a PC 104 Plus CPU board may be used with a PC 104 peripheral module Since PC 104 Plus is based on PCI there is no need to set a Base Address IRQ or DMA channel on the peripheral boards However it is necessary to specify the PCI Slot Number of a peripheral board when it is installed This is commonly set by a rotary switch DIP switch or jumpers on the peripheral board Each PCI peripheral board in the system must have the PCI Slot Number set to a unique value Failure to do so may cause erratic system behavior The peripheral closest to the CPU should be set for the first slot the next board should be set for the second slot etc PCI 104 Edit The PCI 104 form factor includes the PCI connector but not the PC 104 connector in order to increase the available board real estate Even though the PCI connector has 120 pins instead of 104 the established name was kept The PCI connector location and pinout is identical to PC 104 Plus Since the ISA bus is omitted a PCI 104 board is incompatible with PC 104 peripheral module However PCI 104 and PC 104 Plus are compatible since they both utilize the PCI bus Most PC 104 Plus boards can be manufactured as PCI 104 by simply not populating the PC 104 connector PCI 104 utilizes the same PCI Slot Number selection scheme as PC 104 Plus Each device must be assigned to a unique slot number PCI 104 Express Edit Main article PCI 104 Express The PCI 104 Express specification incorporates the PCI Express bus PCIe in addition to the previous generation PCI bus The specification defines a 156 pin surface mount connector for the PCI Express signals The new connector occupies the same board location as the legacy PC 104 ISA connector In addition to PCI Express the specifications also defines pins on the connector for additional modern computer buses such as USB SATA and LPC The PCI 104 Express specification currently defines two possible pinouts for the PCIe connector 12 Type 1 offers four x1 PCI Express links two USB 2 0 ports and one x16 PCIe link Type 2 offers four x1 PCI Express links two USB 2 0 ports two PCIe x4 links two USB 3 0 ports two SATA ports and LPC CPU boards and peripherals may be designed as Type 1 Type 2 or Universal which only uses the common subset of signals between the two types PCIe x1 and or USB 2 0 The Type 2 pinout was not introduced until Version 2 0 of the specification released in 2011 PCI 104 Express products introduced prior to 2011 will be either Type 1 or Universal but may not be explicitly labeled as such A Type 1 bus is incompatible with Type 2 peripherals or vice versa The specification requires the system to remain in reset and not boot in the case of a Type mismatch no physical damage will occur Universal peripheral boards may be used with either Type 1 or Type 2 pinouts Because the PCIe bus connector is surface mount not through hole it is also possible for a board to use different bus pinouts on the top side of the board vs the bottom side For example a CPU board may have a Type 1 bottom PCIe connector and a Type 2 top PCIe connector Such a CPU board would be compatible with Type 1 and or Universal peripherals on the bottom and compatible with Type 2 and or Universal peripherals on the top Similar to PC 104 Plus a PCI 104 Express CPU boards will provide active communication on both PCI and PCIe buses A PC 104 Express CPU board may be used with PCI 104 and PC 104 Plus peripheral modules However a PCI 104 Express peripheral module will communicate on the PCIe bus only the PCI connector is simply a pass through connector for stackability A PC 104 Express peripheral module may not be used with a PCI 104 or PC 104 Plus CPU board unless an ISA bridge device is used PCI 104 Express incorporates link shifting which eliminates the need for the PCI slot selection switches jumpers found on PCI 104 and PC 104 Plus peripherals Some peripheral boards re populate the PCIe links which allows the stack to have additional peripheral boards beyond the initial set of PCI Express links provided by CPU board Link repopulation is not a requirement in the specification and must be implemented on the peripheral board with a PCI Express packet switch PCIe 104 Edit PCIe 104 is similar to the PCI 104 Express standard but omits the legacy PCI bus to increase available space on the board similar to the relationship between PC 104 Plus and PCI 104 The PCI Express connector location and pinout options the same as PCI 104 Express both Type 1 and Type 2 Because the PCI bus connector is omitted a PCIe 104 board is incompatible with PC 104 Plus and PCI 104 systems unless a PCIe to PCI bridge device is used Form factors EditThe PC 104 Consortium s specifications cover three form factors which define the size and shape of the board Each form factor may utilize one of the Bus Structures listed above 104 or PC 104 Edit The 104 Form Factor is defined to be 3 550 3 775 inches 90 96 mm with mounting holes at all four corners of the board The specifications also allow for a 0 5 inches 13 mm area beyond the edge of the PCB for I O connectors Some PC 104 products have oversized PCBs which extended into the I O connector area The extended PCB wings is not addressed in the specification generally does not cause mechanical issues as long as the overall PCB I O connector overhang is within the maximum allowable dimensions of 4 550 4 393 inches 116 112 mm The dimensions were originally defined in the PC 104 Specification and as a result the form factor is still commonly referred to as PC 104 The PCI 104 Express and PCIe 104 Specification introduced the 104 name to distinguish the form factor from the legacy PC 104 bus EBX and EBX Express Edit EBX Embedded Board eXpandable is a single board computer form factor 5 75 8 in 146 203 mm The EBX form factor applies to the CPU board but supports PC 104 form factor peripheral boards for expansion The original EBX specifications allowed for the PC 104 PC 104 Plus and PCI 104 buses EBX Express adds the PCI 104 Express and PCIe 104 buses EPIC and EPIC Express Edit EPIC Embedded Platform for Industrial Computing is a single board computer form factor which like EBX supports PC 104 peripheral boards but is smaller than EBX at 6 5 4 5 in 165 114 mm It allows I O connections to be implemented as either pin headers or PC style real world connectors The standard provides specific I O zones to implement functions such as Ethernet serial ports digital and analog I O video wireless and various application specific interfaces EPIC Express adds PCI Express expandability Stacking limits EditIn general every PC 104 stack will contain a CPU board power supply board and one or more peripheral boards The maximum number of boards supported by a PC 104 stack will depend on the which buses are used by the peripheral boards ISA Bus There is no strict limit to the number of ISA boards which can coexist in one system However there is a limited number of Base Addresses IRQs and DMA channels which may become a limiting factor ISA boards may be stacked on either side of the CPU board PCI Bus The PC 104 Plus and PCI 104 specifications allows for four PCI slots This imposes a hard limit of four PCI peripheral boards per system All PCI peripheral modules must connect consecutively on one side of the controller due to the signaling requirements of the PCI bus PCI Express The total number of PCI Express peripheral boards will depend on the number of PCIe links provided by the CPU board For example if the CPU board provides four x1 PCIe links then a maximum of four x1 PCIe peripheral cards may be installed If one or more of the peripheral boards provide PCIe link repopulation additional modules may be installed PCIe links on the upper side of the CPU board are independent from the links on the underside Installing a PCIe peripheral under the CPU board will not consume one of the top side links The quantity and width of PCIe links available may vary between the top and bottom connectors of the CPU board USB and SATA The PCI 104 Express and PCIe 104 Specification provides signals for USB and SATA which may be used by peripheral boards in the stack Peripheral which use USB and SATA will be limited to the number of links provided by the CPU board USB peripherals may provide link repopulation by incorporating an onboard USB hub Regardless of the buses used the maximum number of boards of a PC 104 stack may be limited due to size weight and power restrictions for the target application Mechanical interference between boards EditWhen stacking PC 104 boards together mechanical interference between adjacent boards is a concern Bus Connectors When assembling a system composed of multiple Bus Structures it is possible for the bus connectors to interfere with components on an adjacent board For example if a PC 104 Plus board is stacked on top of a PC 104 board it is possible for the pins on the underside of the PCI connector to run into components on the lower board Out of Spec Components and Connectors The PC 104 specifications limit the height of components and connectors that may be placed on either side of the board A constrained height region is intended to guarantee that boards will not interfere with other neighbors stacked above or below However it is not uncommon to find boards which violate these constraints Heatsinks The standard spacing between stacked PC 104 boards is 0 600 inches 15 24 mm Components with significant power consumption CPUs GPUs FPGAs often require a larger heatsink which does not fit within the traditional board spacing It is not uncommon to find PC 104 CPU boards with relatively large heatsinks that do not allow for peripheral boards to be stacked above it Later revisions of the PCI 104 Express and PCIe 104 specification introduced an optional taller 0 866 inch 22 00 mm connector that is compatible with the traditional height connector The mechanical interference issues listed above can often be addressed with a Bus Spacer which allows additional room between the boards However Bus Spacers increase overall stack height and may not be suitable for space constrained applications It may also be possible to re arrange the boards in the stack to remove the interference Another option is to modify the offending boards to remove the interference e g depopulate a connector but this may require the vendor to supply a customized version of the board Potential compatibility issues EditIn theory PC 104 boards are interoperable It is possible to assemble a system using boards from several different vendors subject to the fundamental Bus Structure compatibility issues listed above However compatibility issues sometimes appear PC 104 Keying Pins the PC 104 specification defines two keying pins to prevent misalignment of the connector These pins are not to be populated on the connector However some vendors do not utilize keyed PC 104 connectors The may cause issues when using boards from multiple vendors It is often possible to modify the non keyed board by clipping the offending pins Required Power Supply Voltages the PC 104 buses provide for several supply voltages 5V 3 3V 12V etc Which voltages are actually used by a board is at the discretion of the board manufacturer Care must be taken to supply all of the voltages required for the boards in the stack Power Supply Contention some boards will provide power on the stack e g a CPU board This may conflict with a power supply in the stack PCI Signaling Levels the PCI bus may operate at 3 3V or 5V signaling levels Some boards may expect one voltage others may expect a different voltage PCI VIO Line the VIO signal on the PCI bus is supposed to be driven by the CPU board However some peripheral boards and power supplies drive this signal in violation of the PCI specification ISA Bus with modern chipsets the legacy ISA bus has been omitted from modern chipsets Newer CPU boards that provide an ISA bus often do so by utilizing an ISA bridge chip either PCI to ISA or LPC to ISA In some cases the ISA bus is not fully implemented and compatibility issues may appear 4 Bus Masters the PC 104 Plus and PCI 104 specifications did not originally allow for 4 sets of Grant Request pairs on the PCI bus This was resolved in newer revisions of the specification However older boards may have issue using DMA in the 3rd or 4th PCI slot position Software development EditThe majority of PC 104 CPU boards are x86 compatible and are capable of running commercially available off the shelf PC software without modification The standard PC I O interfaces of a PC 104 system Serial Ports USB Ethernet VGA etc are typically supported via the native drivers built into the operating system Certain peripheral boards such as data acquisition may require special drivers from the board manufacturer From a software development perspective there is little difference between compiling software for a desktop PC or compiling for an x86 PC 104 stack Software can be developed using standard x86 compilers e g Visual Studio if the PC 104 system is running Windows There is typically no need for specialized development tools such as cross compilers Board Support Packages or JTAG debuggers This is a significant departure from non x86 embedded system platforms which often require a development toolchain from the board manufacturer Non x86 PC 104 CPU boards based on ARM or PowerPC are also commercially available However such boards are not capable of running off the shelf PC software In these cases a Board Support Package is usually provided by the manufacturer for the supported operating system s Spelling variations and abbreviations EditWhen printing PC 104 or its variants it is common for the forward slash or dashes to be omitted PC 104 may be abbreviated as PC104 PCI 104 abbreviated as PCI104 etc Additionally it is common for PC 104 Plus to be abbreviated with a plus sign e g PC104 13 Such abbreviations are not officially recognized in any PC 104 Consortium specifications or literature however they have been in use for some time Storage EditPC 104 systems often require small non volatile storage such as that afforded by compact flash and solid state disk SSD devices These are often more popular than mechanical rotating hard drives Compared to rotating disks flash based storage devices have limited lifetimes in terms of write cycles but they are faster and draw less power Additionally their compactness and physical durability is often better suited to rugged PC 104 applications the size of magnetic hard drives can be cumbersome and their many delicate parts are more susceptible to failure in harsh environments See also Edit Wikimedia Commons has media related to PC 104 VMEbus VPX CompactPCI SUMITReferences Edit Burckle Robert PC 104 The Embedded PC Mezzanine PDF a href Template Cite web html title Template Cite web cite web a CS1 maint url status link PC104 com What is PC104 www pc104 com Retrieved 2021 05 19 Why PC 104 The Need for an Embedded PC Standard Retrieved 2008 01 29 PC 104 Consortium technical update Stackable PCs from ISA to PCI to PCI Express Retrieved 4 September 2014 Himpe Vincent 2006 Visual Basic for Electronics Engineering Applications 2nd ed India Segment B V Elektor Electronics p 407 ISBN 0 905705 68 8 Retrieved 2008 01 29 PC 104 Embedded Consortium s History Retrieved 2008 01 29 Angel Jonathan 2010 02 01 Open standard defines tiny expansion modules LinuxDevices com Retrieved 2014 03 18 PC 104 Consortium History Retrieved 2014 08 14 PC 104 Embedded Consortium Approves PCI 104 Express Specification Retrieved 2014 08 14 PC 104 Consortium Membership Directory pc104 org Archived from the original on June 2 2013 Retrieved 4 September 2014 PCI 104 Express amp PCIe 104 Specification Version 3 0 PDF pc104 org February 17 2015 Retrieved 2016 11 02 What is PCIe 104 Retrieved 2014 08 08 Example of non standard PC 104 abbreviation Retrieved 8 September 2014 External links EditPC 104 Consortium Retrieved from https en wikipedia org w index php title PC 104 amp oldid 1127644709, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.