VSM Simulation

The Proteus Design Suite is unique in offering the ability to co-simulate both high and low-level micro-controller code in the context of a mixed-mode SPICE circuit simulation.

VSM in Education

Information on using Proteus VSM as a learning tool in education.

VSM for Business

The advantages of using Proteus VSM as a productivity tool in industry.

Download Evaluation

Download a demonstration copy of Proteus.


Buy Proteus VSM simulation

What is Proteus VSM?

A detailed overview of our unique embedded simulation technology.

VSM Studio IDE

The VSM Studio IDE provides an integrated environment for your firmware development.

Advanced Simulation Features

The Advanced Simulation Features product adds graph based analysis to your Proteus simulation.

USB Simulation

Proteus USB simulation is a unique product for developing USB device products.

IoT Builder

IoT Builder makes it quick and easy to control remote Arduino™ & Raspberry Pi® electronics from a mobile device.

Embedded Peripherals

A listing of just some of the embedded peripherals models available as standard with Proteus VSM.

Supported Compilers

How to use your favorite toolchain with Proteus VSM.

VSM for Microchip™

Including the PIC10, PIC12, PIC16, PIC18, PIC24 & dsPIC33 range of microcontrollers.

VSM for ARM®

Including the Cortex™-M0, Cortex™-M3, Cortex™-M4 & ARM® LPC2000 MCU's.

VSM for Atmel®

Including ATTINY, AT90S, ATMEGA, 8051 and ARM microcontrollers.

VSM for Arduino™

Full support for popular Arduino boards and dozens of ready made shields.


Including 8051 and ARM microcontrollers.

VSM for Texas Instruments™

Including MSP430, PICCOLO and ARM microcontroller variants.

PCB Layout

Proteus PCB design software seamlessly combines Schematic Capture and PCB layout to provide a powerful, integrated and easy to use suite of tools for professional PCB Design.

Proteus PCB Design software In Business

Powerful productivity tools used across the world.

Proteus PCB Design software In Education

Teach modern PCB design techniques with commercial grade tools.

Download Evaluation

Download a demonstration copy of Proteus.


Buy Proteus PCB design software

Schematic Capture Overview

A powerful design environment for modern electronics.

Hierarchical Design

Multi-sheet hierarchical design.

Design Reuse

Project Clips enables re-use of schematic and layout circuitry in future projects.

Bill Of Materials

Fully customisable Bill of materials reporting module.

Assembly Variants

Use managed assembly variants to create different product configurations from a single schematic.

Advanced Simulation Features

The Advanced Simulation Features product adds graph based analysis to your Proteus simulation.

PCB Layout Overview

A layout tool packed full of powerful, easy to use functionality.

Design Verification

User extendable, constraint driven design with an intuitive interface.

Automatic Length Matching

Full control over serpentine/accordion routing.


World Class shape based auto-routing included as standard with all packages.

MCAD Integration

Direct import of STEP/IGES models and export of STEP assemblies to mechanical CAD tools.

3D Viewer

Integrated 3D Visualization of the PCB with bare board view and height bounds check.

Project Notes

Documentation/reporting for your pcb design

Proteus Visual Designer

Proteus Visual Designer combines world class Proteus VSM simulation with a new flowchart programming engine to provide a truly integrated and intuitive development environment.

Proteus In Education

A global standard in education.

Download Evaluation

Evaluate the full set of features available in Proteus.

Buy Visual Designer

Buy Proteus Visual Designer

Proteus Visual Designer

Flowchart programming integrated with Proteus VSM simulation to provide a complete Arduino or Raspberry Pi development solution.

Visual Designer for Arduino™

Visual Designer includes dozens of pre-made Arduino Shields, Grove Sensors and Generic Breakout Boards to make hardware design easy.

Visual Designer for Raspberry Pi®

Visual Designer includes dozens of pre-made Pi Hats, Grove Sensors and Generic Breakout Boards to make hardware design easy.

Visual Designer Projects

Student projects using Visual Designer.

IoT Builder for Visual Designer

Easily control remote Arduino™ electronics from your mobile phone or tablet with Visual Designer and IoT Builder.

Virtual Turtle Robot Simulation

Program virtual Arduino™ turtles like the Funduino and Zumo, simulate, test and debug in Proteus and then deploy on the real hardware with a button press.

Advanced Simulation Features

The Advanced Simulation Features product adds graph based analysis to your Visual Designer simulations.

Ordering & Pricing

Learn more about the single user Proteus packages (enterprise and platinum) or use the product configurator to find a custom package.


Buy Proteus PCB design


Buy Proteus VSM simulation

Buy Visual Designer

Buy Proteus Visual Designer

How to Order

Information on how to generate a quotation and place an order as well as payment methods and delivery charges.

Commercial Price List

View the complete, single user commercial price list and build your own quotation.

Educational Pricing

View the complete, single user educational price list and build your own quotation.

Quotation Wizard

Our dynamic quotation wizard will guide your product selection and generate a custom quotation for you.

Upgrades and Maintenance

An explanation of the Proteus Update Service Contract, how it works and your software update options.

Terms Of Business

Important legal information on things like pricing, purchasing, payment, warranty and liability.

Contact Us

Contact Labcenter with any inquiry or for more information.

Find a Distributor

Find and contact a Labcenter Distributor near you.

Questions & Answers

Common questions and answers for potential customers.

Support & Contact

Technical support movies and links are found here along with contact details for Labcenter and our authorized distribution partners.

Contact Us

Contact Labcenter with any enquiry or for more information.

Find a Distributor

Find and contact a Labcenter Distributor near you.

How To Movies

Lots of tutorials and short movies showing you how to get the most out of the Proteus Design Suite.

Latest Release

Information on the latest features and additions to the Proteus Design Suite.

Technical Support

Details on technical support options available to Proteus users.


Links to some support downloads that may be relevant to some use of the Proteus software.

About Us

A short company profile and some information about Labcenter Electronics Ltd.


The latest company and Proteus news.


The lastest articles from our PCB experts


Career opportunities with Labcenter Electronics.

As signal speeds get faster and operating currents lower, the integrity of the signal becomes an increasingly necessary consideration during PCB Design. In particular, the transit time of signals often needs to be synchronized by matching the copper length of the traces on the PCB. The basic idea of this length matching is that the shorter trace follows a detour or meander in order to lengthen it to match the length of the longer trace.

PCB length tuning Configuring the meander or serpentine style in the Proteus Design Suite

This post provides a broad overview of some different length matching (sometimes called net tuning) situations and looks at how your EDA tool can help you with high speed routing. Differential pairs are outside of this topic and will be covered in a separate post.

Equalizing a set of routes

This is probably the most common situation and is where you want to make the length of a number of traces the same. This is commonly known as creating a matchgroup consisting of those tracks. A matchgroup is simply a container for a set of routes that have been successfully length matched. It includes the target length, the tolerance, the serpentine configuration and a list of the routes that belong to it. You can have as many matchgroups as you need in a design, each with different serpentine configurations and tolerances.

Different EDA Tools will manage matchgroups in different ways but almost all can do the length matching job for you. In the Proteus Design Suite you simply select all the target tracks and invoke the length match command with the matchgroup being created automatically based on your selection.

Matching to a target length

In this situation instead of matching the length of the tracks with respect to the longest track in the selection, the requirement is to match the length of the tracks to an absolute value by inputting the target length. This is otherwise identical to matching a set of tracks against each other but, depending on your tool of choice, may be implemented in a different way. In some EDA tools the matchgroup is defined first along with the target length and then you place the routes with an automatic serpentine until you are compliant. In other tools, including Proteus, you first route the traces normally and then you select and input the target length. Any necessary serpentine routing will then automatically take place on the routed tracks. In either case you should then be able to select the serpentine segments and freely move them around to your preferred location on the track.

PCB serpentine segments Dragging Serpentine Segments into position

Complex Length Matching

So far, in all of the length matching we’ve covered, all of the tracks belong to a single matchgroup. However, it is sometimes unavoidable that one section of track belongs to more than one matchgroup. A good example of this is the fly-by routing of the CMD/ADDR lines with DDR3. As an example, consider the following topology:

PCB fly by configuration Simplified fly-by configuration example.

AB, AC and AD are all critical signals and will need to be matched to specific lengths. It is inevitable however that some track segments will be included in multiple matchgroups.

PCB fly by configuration The horizontal sections of (blue and green) track are included in several matchgroups.

Again, different EDA tools will handle this problem in different ways. One common rule of thumb for the user however is to route and length match the shortest segment first and work your way towards the longest segment. In our example above this would mean routing AB first, since AB has less space to serpentine and it is more likely to require the common trace section for lengthening.

Non-Etched Lengths

If the length matched routes need to pass up and down the PCB then it will be important to consider the length of the drill holes so that this distance is added to the total length. Almost always, this layer thickness information is entered during the setup of the layer stackup and is then used automatically by the software during length matching.

Sometimes, the signal speeds are so high and the timing budgets so tight that the signal delay inside the chip can be relevant. In this case you want to add an internal length to the length matching algorithm. With Proteus Design Suite this takes the form of a property that you add to the footprint as a comma separated pin name, length listing.The eventual length matching calculation therefore is something like:

<etched copper length> + <internal lengths> + <drill depth x num holes>

and will be matched inside your specified tolerance.


On a complex board there can be a good number of matchgroups and therefore a large number of length matched routes. Since the layout of such a PCB is in itself a complex task you’ll want to be sure that all of your length matches remain inside tolerance before sending the board for prototyping.

Typically, you’ll find a length match report or a net tuning compliance report available in your software package which will list all of the routes in a matchgroup along with their current status.

PCB reporting matchgroups

Often you can also select and browse matchgroups on the layout using the connectivity highlights feature.


Length matching routes has moved from a niche technique on cutting edge design to a mainstream requirement in PCB layout. Fortunately, there is a lot your PCB software package can do to help make life easier for you when faced with high speed design requirements. If you’re interested in learning more about how length matching is supported in the Proteus Design Suite you’ll find a short video tutorial via the link below:

We'd love to hear from you

More Like This

Find the right package for you

Product Wizard Try Proteus