2015-01-22 15:40:07 -05:00
|
|
|
__ _ __ ____
|
|
|
|
/ / (_) /____ / __/______ ___ ___
|
|
|
|
/ /__/ / __/ -_)\ \/ __/ _ \/ _ \/ -_)
|
|
|
|
/____/_/\__/\__/___/\__/\___/ .__/\__/
|
|
|
|
/_/
|
|
|
|
Copyright 2012-2015 / EnjoyDigital
|
|
|
|
florent@enjoy-digital.fr
|
|
|
|
|
|
|
|
A small footprint and configurable embedded FPGA
|
2015-02-18 09:32:34 -05:00
|
|
|
logic analyzer core powered by Migen
|
2015-01-22 15:40:07 -05:00
|
|
|
|
2015-01-28 13:59:49 -05:00
|
|
|
[> Doc
|
|
|
|
---------
|
|
|
|
HTML : www.enjoy-digital.fr/litex/litescope/
|
|
|
|
PDF : www.enjoy-digital.fr/litex/litescope.pdf
|
|
|
|
|
2015-01-22 15:40:07 -05:00
|
|
|
[> Intro
|
|
|
|
---------
|
2015-02-18 17:35:50 -05:00
|
|
|
LiteScope is a small footprint and configurable embedded logic analyzer that you
|
|
|
|
can use in your FPGA and aims to provide a free, portable and flexible
|
|
|
|
alternative to vendor's solutions!
|
2013-01-21 16:40:36 -05:00
|
|
|
|
2015-01-25 10:23:40 -05:00
|
|
|
LiteScope is part of LiteX libraries whose aims are to lower entry level of complex
|
2015-02-21 17:34:08 -05:00
|
|
|
FPGA cores by providing simple, elegant and efficient implementations of
|
2015-01-22 15:40:07 -05:00
|
|
|
components used in today's SoC such as Ethernet, SATA, PCIe, SDRAM Controller...
|
|
|
|
|
|
|
|
The core uses simple and specific streaming buses and will provides in the future
|
|
|
|
adapters to use standardized AXI or Avalon-ST streaming buses.
|
|
|
|
|
|
|
|
Since Python is used to describe the HDL, the core is highly and easily
|
|
|
|
configurable.
|
|
|
|
|
|
|
|
LiteScope uses technologies developed in partnership with M-Labs Ltd:
|
|
|
|
- Migen enables generating HDL with Python in an efficient way.
|
|
|
|
- MiSoC provides the basic blocks to build a powerful and small footprint SoC.
|
|
|
|
|
|
|
|
LiteScope can be used as a Migen/MiSoC library (by simply installing it
|
|
|
|
with the provided setup.py) or can be integrated with your standard design flow
|
|
|
|
by generating the verilog rtl that you will use as a standard core.
|
|
|
|
|
|
|
|
LiteScope produces "vcd" files that can be read in your regular waveforms viewer.
|
|
|
|
|
2015-01-22 18:56:44 -05:00
|
|
|
Since LiteScope also provides a UART <--> Wishbone brige so you only need 2
|
|
|
|
external Rx/Tx pins to be ready to debug or control all your Wishbone peripherals!
|
2015-01-22 15:40:07 -05:00
|
|
|
|
|
|
|
[> Features
|
|
|
|
-----------
|
2015-01-22 18:56:44 -05:00
|
|
|
- IO peek and poke with LiteScopeIO
|
2015-01-22 15:40:07 -05:00
|
|
|
- Logic analyser with LiteScopeLA:
|
|
|
|
- Various triggering modules: Term, Range, Edge (add yours! :)
|
|
|
|
- Run Length Encoder to "compress" data and increase recording depth
|
2015-01-27 14:14:07 -05:00
|
|
|
- Subsampling
|
|
|
|
- Storage qualifier
|
2015-01-22 15:40:07 -05:00
|
|
|
- Data storage in block rams
|
2015-02-16 17:11:22 -05:00
|
|
|
- Bridges:
|
|
|
|
- UART2Wishbone
|
|
|
|
- Ethernet2Wishbone ("Etherbone")
|
2015-01-22 15:40:07 -05:00
|
|
|
|
2015-02-12 16:03:04 -05:00
|
|
|
[> Possible improvements
|
2015-01-22 15:40:07 -05:00
|
|
|
-------------------------
|
|
|
|
- add standardized interfaces (AXI, Avalon-ST)
|
2015-01-23 03:04:22 -05:00
|
|
|
- add protocols analyzers
|
|
|
|
- add signals injection/generation
|
2015-01-22 15:40:07 -05:00
|
|
|
- add storage in DRAM
|
2015-01-22 18:56:44 -05:00
|
|
|
- add storage in HDD with LiteSATA core (to be released soon!)
|
2015-01-22 15:40:07 -05:00
|
|
|
- add PCIe Wishbone bridge with LitePCIe (to be released soon!)
|
2015-02-12 16:03:04 -05:00
|
|
|
- ... See below Support and consulting :)
|
2015-01-22 15:40:07 -05:00
|
|
|
|
|
|
|
If you want to support these features, please contact us at florent [AT]
|
|
|
|
enjoy-digital.fr. You can also contact our partner on the public mailing list
|
|
|
|
devel [AT] lists.m-labs.hk.
|
|
|
|
|
|
|
|
|
|
|
|
[> Getting started
|
|
|
|
------------------
|
2015-01-22 18:56:44 -05:00
|
|
|
1. Install Python3 and your vendor's software
|
2015-01-22 15:40:07 -05:00
|
|
|
|
|
|
|
2. Obtain Migen and install it:
|
|
|
|
git clone https://github.com/m-labs/migen
|
|
|
|
cd migen
|
|
|
|
python3 setup.py install
|
|
|
|
cd ..
|
|
|
|
|
2015-02-12 16:03:04 -05:00
|
|
|
3. Obtain MiSoC and install it:
|
2015-01-22 15:40:07 -05:00
|
|
|
git clone https://github.com/m-labs/misoc --recursive
|
2015-02-12 16:03:04 -05:00
|
|
|
cd misoc
|
|
|
|
python3 setup.py install
|
|
|
|
cd ..
|
|
|
|
|
|
|
|
Note: in case you have issues with Migen/MiSoC, please retry
|
|
|
|
with our forks at:
|
|
|
|
https://github.com/enjoy-digital/misoc
|
|
|
|
https://github.com/enjoy-digital/migen
|
|
|
|
until new features are merged.
|
2015-01-22 15:40:07 -05:00
|
|
|
|
2015-02-12 16:03:04 -05:00
|
|
|
4. Obtain LiteScope and install it:
|
2015-01-22 15:40:07 -05:00
|
|
|
git clone https://github.com/enjoy-digital/litescope
|
|
|
|
|
2015-01-22 18:56:44 -05:00
|
|
|
5. Build and load test design:
|
2015-01-22 15:40:07 -05:00
|
|
|
python3 make.py -s [platform] all
|
2015-01-22 18:56:44 -05:00
|
|
|
Supported platforms are the one altready supported by Mibuild:
|
2015-01-22 15:40:07 -05:00
|
|
|
de0nano, m1, mixxeo, kc705, zedboard...
|
|
|
|
|
2015-01-22 18:56:44 -05:00
|
|
|
6. Test design:
|
2015-01-22 15:40:07 -05:00
|
|
|
go to ./test directory and run:
|
|
|
|
python3 test_io.py
|
|
|
|
python3 test_la.py
|
|
|
|
|
|
|
|
[> Simulations:
|
2015-01-28 09:55:52 -05:00
|
|
|
XXX convert simulations
|
2015-01-22 15:40:07 -05:00
|
|
|
|
|
|
|
[> Tests :
|
2015-01-28 09:55:52 -05:00
|
|
|
XXX convert tests
|
2013-01-21 16:40:36 -05:00
|
|
|
|
2015-01-22 15:40:07 -05:00
|
|
|
[> License
|
|
|
|
-----------
|
|
|
|
LiteScope is released under the very permissive two-clause BSD license. Under the
|
|
|
|
terms of this license, you are authorized to use LiteScope for closed-source
|
|
|
|
proprietary designs.
|
|
|
|
Even though we do not require you to do so, those things are awesome, so please
|
|
|
|
do them if possible:
|
|
|
|
- tell us that you are using LiteScope
|
|
|
|
- cite LiteScope in publications related to research it has helped
|
|
|
|
- send us feedback and suggestions for improvements
|
|
|
|
- send us bug reports when something goes wrong
|
|
|
|
- send us the modifications and improvements you have done to LiteScope.
|
2013-01-21 16:40:36 -05:00
|
|
|
|
2015-02-12 16:03:04 -05:00
|
|
|
[> Support and consulting
|
2015-01-22 15:40:07 -05:00
|
|
|
--------------------------
|
|
|
|
We love open-source hardware and like sharing our designs with others.
|
2013-03-21 07:23:44 -04:00
|
|
|
|
2015-01-22 15:40:07 -05:00
|
|
|
LiteScope is developed and maintained by EnjoyDigital.
|
2013-04-15 10:26:49 -04:00
|
|
|
|
2015-01-22 15:40:07 -05:00
|
|
|
If you would like to know more about LiteScope or if you are already a happy user
|
|
|
|
and would like to extend it for your needs, EnjoyDigital can provide standard
|
|
|
|
commercial support as well as consulting services.
|
2013-01-21 16:40:36 -05:00
|
|
|
|
2015-01-22 15:40:07 -05:00
|
|
|
So feel free to contact us, we'd love to work with you! (and eventually shorten
|
|
|
|
the list of the possible improvements :)
|
2012-09-09 17:46:26 -04:00
|
|
|
|
2012-08-12 08:38:49 -04:00
|
|
|
[> Contact
|
2015-01-22 15:40:07 -05:00
|
|
|
E-mail: florent [AT] enjoy-digital.fr
|