Baby, You Can Drive (the PCIe clock in) My Car

Among all the fancy ARM-based SoCs and peripheral ICs in an IVI system, the humble PCI Express clock generator is what really drives the connected car.

This particular blog posting is sponsored by Pericom Semiconductor.

With apologies to the Beatles, car tech is all the rage lately now that Apple’s CarPlay legitimizes running Apps in new cars. Although premium marques like BMW, Jaguar, Mercedes and others have been rolling out App-based in-vehicle infotainment (IVI) systems for a few years, Apple’s recent announcement has awakened the masses.

Everyone wants their smartphone’s UI on the car’s center console, whether they’re an Android or iOS (Apple) fanboy or girl. (Sorry RIM and Windows Phone; your market share is just too small.)

Figure 1:  Each PCI Express peripheral in the digital car’s in-vehicle infotainment (IVI) system needs a PCIe Clock Generator. (Courtesy: Pericom Semiconductor).

Figure 1: Each PCI Express peripheral in the digital car’s in-vehicle infotainment (IVI) system needs a PCIe Clock Generator. (Courtesy: Pericom Semiconductor).

But among the ARM-based media processors, Ethernet AVB networks, and Xilinx Zynq-based ADAS (advanced driver assistance system) safety features, it’s the humble PCI Express clock generator that really drives the car’s IVI systems (Figure 1).

All those LCD in-car displays—two or three in the dashboard, one in the rear view mirror, and several for rear seat passengers (think: minivan)—need high-speed I/O and multiple processor peripherals. PCI Express (PCIe) provides the needed 5 Gbps bandwidth to connect processors to peripherals, and each PCIe node needs its own (typically) 100 MHz clock source.  Without this reference clock, no digital bit twiddling takes place, and the car’s IVI system remains eerily silent.

Although considered “old hat”, “boring”, or maybe even “not elegant”, the basic PCIe clock generator has sophistication that matters to auto OEMs when they’re building millions of units. I’d argue they are elegant with thoughtful touches like: a single low-cost crystal input, up to four PCIe clock (HCSL) outputs to drive multiple ICs, and hassle-free long lifecycle availability.

Plus, in the harsh and noisy—electrically speaking—environment that is the modern automobile, AEQ-100 automotive qualification and low clock jitter all matter greatly to IVI designers deploying PCI Express.

Figure 2: PCI Express Clock Generators, like the ones shown here from Pericom, provide low jitter PCIe clocks to on-board processors and peripherals.

Figure 2: PCI Express Clock Generators, like the ones shown here from Pericom, provide low jitter PCIe clocks to on-board processors and peripherals.

For example, one of Pericom’s latest automotive grade PCIe clock generators, the PI6C557-05QLE, only requires an inexpensive 25 MHz crystal for a reference clock to create four PCIe Gen 2 or Gen 3 clocks. This device meets the PCI-SIG’s jitter spec of 3.1ps (<1ps RMS), but betters that considerably with a 2.2ps (typ.) phase jitter.  As shown above, this clock generator will drive the main processor, a GPS or wireless RF peripheral, an on-board SSD, and a USB 3.0 chipset. Pretty much all the things a designer expects in tomorrow’s embedded IVI.

So what’s driving the digital car? I argue it’s a PCIe clock generator.

2 thoughts on “Baby, You Can Drive (the PCIe clock in) My Car

  1. Pingback: pericomsemi

  2. Have you ever considered about adding a little bit more than just your material?

    I mean, what you say is valuable and everything. However just imagine
    if you added some great images or video clips
    to give your posts more, “pop”! Your content is good but with pics and video clips, this website could certainly be one of the most beneficial in its niche.
    Awesome blog!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>