Hades logo    Hades applet banner

TAMS / Java / Hades / applets (print version): contents | previous | next

Multiplexed display (smart displays)

Multiplexed display (smart displays) screenshot


A variant of the 8-digit multiplexed seven-segment display with special ("smart") display components to mimic the behaviour of the human visual system.

As demonstrated by the previous applet, circuits that rely on the details of human perception and cognition can be hard to simulate; the more so, as system-simulations usually run much slower than real-time. While reading the displayed data from the multiplexed simulated displays is already hard and takes a lot of concentration, decoding the data from waveform traces of a multiplexed display is clearly inacceptable.

Therefore, other means of displaying the simulation results are necessary. The most common solution is to either use debugging output ("printf debugging") or to dump simulation data to output files and run postprocessing tools to present the simulation traces in a meaningful manner. Both variants make it hard to interactively play with a circuit.

The applet shown here presents another solution, which relies on a special display component that mimics the time-averaging of the human visual system. This special seven-segment display, namely class hades.models.io.SevenSegmentMultiplexed, does not just display its current input values (as a standard LED would). Instead, it monitors and averages its inputs over a period of time. When the input voltage of an LED segment was high longer than a user-settable threshold time, the corresponding LED segment is shown active (red) in the displayed symbol. Both the averaging period and the threshold-time can be set via the property-sheet.

The drawback of using a SevenSegmentMultiplexed display is that it will react slowly to data changes; the display will only change after at least one averaging period of simulated time. Open the RAM editor (popup-menu, edit-component) and edit the memory data to watch how soon the displayed data changes. You can also open the property-sheets of the multiplexed display components and try to change their timing parameters. The display will react a little bit faster if glow-mode is disabled, because this avoids a lot of repainting.

Run the applet | Run the editor (via Webstart)

Impressum | 24.11.06