Skip to content

DuPAL-PAL-DUmper/dppeeper

Repository files navigation

dppeeper

DISCLAIMER

Any use of this project is under your own responsibility.

Please, do not come to me asking for hand-holding using or building this: my time is limited.

Introduction

This is a tool to interface your computer with the DuPAL V3 ("dupico") board and visually analyze the behaviour of a PLD IC.

It takes a description of the PLD to interface with in TOML format and shows the current state of the pins on a graphical interface.

Interface screenshot

Command line

usage: dppeeper [-h] [-v] [--version] -d definition file [--skip_note] [--check_hiz]
                [--skip_hiz pin_to_skip [pin_to_skip ...]]
                {sim,dupico} ...

A tool for interactive analysis of PLDs

positional arguments:
  {sim,dupico}          supported subcommands
    sim                 Read data from a recorded file
    dupico              Read data the dupico board

options:
  -h, --help            show this help message and exit
  -v, --verbose
  --version             show program's version number and exit
  -d definition file, --definition definition file
                        Path to the file containing the definition of the IC to be read
  --skip_note           If present, skip printing adapter notes and associated delays

  --check_hiz           Check if output pins are Hi-Z or not.
  --skip_hiz pin_to_skip [pin_to_skip ...]
                        List of output pins for which the Hi-Z check is skipped

This tool supports two commands:

  • sim: currently not implemented, but will be used to simulate the connection to a board using a dump of the states of a PLD
  • dupico: connects directly to the dupico to analyze a PLD

PLD definition format

The PLD definitions must be provided in TOML format and are structured as follows:

Files sections

Root Section

  • name: A string containing the name for this PLD

Pinout section [pinout]

  • pins_per_side: array of integers that define both the number of sides for the IC (length of the array, 1, 2 or 4 are supported), and the number of pins per side
  • ZIF_map: array of integers, with one entry for each pin of the IC, describing how the pins are mapped to the ZIF42 of the dupico. If a pin is mapped to 21, it corresponds to a GND, to 42, it corresponds to a generic power supply.
  • clk_pins: array of integers that indicates which pins of the PLD can be used as clock inputs.
  • in_pins: array of integers that indicates which pins of the PLD can be used as inputs.
  • io_pins: array of integers that indicates which pins of the PLD can be used as i/o pins.
  • o_pins: array of integers that indicates which pins of the PLD are used as output pins.
  • f_pins: array of integers that indicates which pins of the PLD can act as an internal feedback. This information is not used by dppeeper.
  • hiz_o_pins: array of integers that indicates which pins of the PLD that are normally outputs or i/o, but that can go Hi-Z and must be checked.
  • q_pins: array of integers that indicates which pins of the PLD can act as a registered output.
  • oe_l_pins: array of integers that indicates which pins of the PLD can act a active-low output enables
  • oe_h_pins: array of integers that indicates which pins of the PLD can act a active-high output enables

Adapter section [adapter]

This section contains configuration for adapters plugged in the ZIF socket, that may use additional pins to toggle some functionality.

  • hi_pins: array of integers that will specify a list of pins to keep pulled high when the adapter gets powered up, and keep in this state all the time until power down
  • notes: Human readable string with notes regarding the adapter. Might be used to print messages to the user in the future.

Requirements section [requirements]

To future proof for future hardware revisions, this section specifies which version of the adapter is necessary to read the defined IC. For now, only one field is supported.

  • hardware: integer specifying the model number that the dpdumper will check before trying to read anything. Currently it's 3.

About

Tool to visually analyze ICs inserted in the dupico

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages