I’ve seen plenty of change over that time too, not so much with what makes up a product – it still has a processor, digital IO, analog IO, programmable logic, and the embedded code of course. The changes have been in how the functionality is divided up across those implementation options – bigger faster processors mean I can do more in code, and that’s always good at helping reduce costs and delivering in fewer development cycles. Programmable logic has also gone from simple PLDs being used for address decoding, to massive devices (in capacity that is, not physical size!) that can soak up as much of the digital hardware as I can squish into them.
Over the years I’ve ranged across all aspects of the design process, over time moving from the more external elements of the process, like the board layout, in towards the intelligence of the product – the system design and the embedded code.
And that was back in the days of DIP40 processors and 2-layer or 4-layer boards. This design has an FPGA in a 680 pad BGA package on an 8-layer board – this is going to be interesting!
I’m thinking that this might be a good time to try the new routing features I was reading about in the Summer 08 release of Altium Designer.
The end result? Fewer components, with more connections between them. So while I need to find fewer overall routing paths, those paths can have 10 or 20 routes running along them, instead of one or two.
The design I was working on was an update to an existing product – mostly changes to component package types for the FPGA and the memory. So once I’d unrouted and tweaked a few placements, I was ready to route. The usual quick read of the Altium Designer What’s New document said that routing was a whole lot better in Summer 08. Well, I’m the perfect person to test that claim, since I'm weak on skills and high on expectations!

Routing modern component packaging technologies is well supported in Summer 08.
Well wasn’t I in for a surprise, with the new interactive routing engine in the Summer 08 release. Launched using the familiar P, T shortcuts, it has a number of intuitive routing behaviors that made the process much more efficient.
Walkaround behavior meant I did not need to pay close attention to the routing path – a click on a connection and then off I go, moving the cursor toward the target pad and watching the pattern of segments appear, all neat and orderly. A click of the mouse and all the segments from the start to the cursor were placed, and Backspace soon removed them if I decide to rip them up again. I really liked they way I could toggle between shortest and hug too, telling the router if I wanted it to keep it as tight and short as possible, or if I wanted it to trace alongside the existing routing I was following.
This is excellent. I get to focus on the high-order task of finding a path, while the software does the drudgery of positioning the numerous segments it takes to route that connection. And if I find that it starts to deviate from my preferred course, I simply back up a bit and click to place the segments exactly where I want them.
We’re off to a good start, me and Summer 08!


No need to click as you move the mouse, Summer 08 automatically finds a routing path.
Another idea I really like is having different push behaviors on offer. I see the traditional push behavior in action – when I bump up against existing routing the domino effect kicks in, and they all do a left shuffle. But my favorite is the not-so-pushy push mode, if I’ve got room then no one else moves – those existing routes just push right back! As soon as I hit a tight spot where I can’t fit, like against a pad, then the existing routing starts to oblige and shuffle over a bit. While their reluctance initially seemed almost rude it actually makes a lot of sense: no wild shuffling of 20 routing paths, unless it is absolutely necessary. This is exactly what I need. I then squeezed a forgotten connection between some finished routing, noticing how it pushed a couple of vias as well as the tracks.
I really was enjoying the routing process, and while there were plenty of options, I could easily explore them using the Shortcuts panel.
There’s one shortcut that I just have to tell you about though…Autocomplete, the reluctant router’s best friend has arrived. I’ve routed this connection most of the way across and through the board, the target pad is in sight, I just hold the Ctrl key as I click and bingo, the routing is finished from my current cursor position right up to the target pad – now that’s just great!


Autocomplete accelerates the interactive routing process.
Looks like Altium Designer has saved me on that front as well. The routing width design rule was already configured in this board to route impedance critical nets between 55 and 70 ohms, with 60 ohms being preferred. It was like magic, watching the track widths change as I toggled routing layers, the in-built impedance calculator doing its job behind the scenes. Another chore being looked after, another plus for the Summer 08 release of Altium Designer.

The Shortcuts panel details shortcuts available while routing.
With Altium Designer’s new intuitive interactive routing behavior, and the fact that it lets me keep my focus on the high-level aspects of routing, I was actually starting to get a feel for the process.
I’ve just noticed that some of the routing around the FPGA is not as clean and simple as it could be. Sure I could route it with the current FPGA pin assignments, but I think now’s a good time to explore Altium Designer’s excellent pin swap capabilities …
And who said routing a board wasn’t fun!

The interactively routed board.