Skip to content

m-labs/microscope

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Microscope

A simple FPGA logic analyzer for Migen designs.

Microscope only requires two RS232 UART pins and a clock to work, and is highly portable. It is the tool of choice when everything else in your FPGA is falling apart. It is more feature-limited than C...scope, but it uses kilobytes instead of gigabytes, and it will work without involving Intellectual Poverty (IP) or drivers with more bugs than a rain forest.

Probes can be inserted anywhere in the target design using the add_probe_* global functions. Those functions return submodules that you must add to the current module (this enables the probes to see the clock domains of the current module).

The logic analyzer component Microscope can be instantiated anywhere in the design, typically at the top-level. If Microscope is not instantiated, or the probes are filtered out, then the probes generate no logic and can be left in their respective cores without consuming FPGA resources.

Use the communication program microscope.py to read back data from the probes.

See demo.py for an example design.

About

Finding the bacteria in rotting FPGA designs.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages