FPGA Metastability Solutions

Gisselquist Technology recently posted a good blog article about metastability and common solutions. If you are trying to learn FPGAs, you’ll want to read it. If you know a lot about FPGAs already, you might still pick up some interesting tidbits in the post.

Don’t let the word metastability scare you. It is just a fancy way of saying that a flip flop can go crazy if the inputs are not stable for a certain amount of time before the clock edge and remain stable for a certain amount of time after the clock edge. These times are the setup and hold times, respectively.

Normally, your design tool will warn you about possible problems if you are using a single clock. However, any time your design generates a signal with one clock and then uses it somewhere with another clock, metastability is a possible problem. Even if you only have one clock, any inputs from the outside world that don’t reference your clock — or, perhaps, any clock at all — introduce the possibility of metastability. Continue reading “FPGA Metastability Solutions”

Hold, fast, and max features on a digital caliper

While adding an RJ-11 connector to his digital calipers [BadWolf] slipped, shorting out a pin and accidentally discovered new features. He intended to add a port for reading measurement data electronically, but after the slip-up an ‘H’ appeared on the LCD screen and the measurement was frozen at the same number. At first it seemed like he may have killed the device, but this is actually a hold function. A little bit more playing around and he discovered that a combination of button presses can also enable a fast function which speeds up the rate at which the display changes its reading. There is even a max function that only updates the display if the reading is higher than any previously displayed measurement. These are nice features which he uses by connecting a momentary push switch between two of the output pins, details we gleaned from the annotated video after the break. He doesn’t say which pins work for him, but we’d bet one of them is the ground pin on the port, and the other is one of the two data pins. Do some investigating with your own calipers and let us know what you find in the comments.

Continue reading “Hold, fast, and max features on a digital caliper”