X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=README;h=216f4a047562f16540d0f7c39a915176971a7221;hb=a5416fa86424880722b9191991ce2f4bcd1fd7eb;hp=1efc3824f726b4215d4dd3571cf06db13aa9866b;hpb=9405729b95204d1c322d9b81c48402685113ae67;p=litex.git diff --git a/README b/README index 1efc3824..216f4a04 100644 --- a/README +++ b/README @@ -1,50 +1,142 @@ - _____ _ ____ _ _ _ _ - | __|___ |_|___ _ _ | \|_|___|_| |_ ___| | - | __| | | | . | | | | | | | . | | _| .'| | - |_____|_|_|_| |___|_ | |____/|_|_ |_|_| |__,|_| - |___| |___| |___| - - Copyright 2012 / Florent Kermarrec / florent@enjoy-digital.fr - - Miscope --------------------------------------------------------------------------------- + __ _ __ ____ + / / (_) /____ / __/______ ___ ___ + / /__/ / __/ -_)\ \/ __/ _ \/ _ \/ -_) + /____/_/\__/\__/___/\__/\___/ .__/\__/ + /_/ + Copyright 2012-2015 / EnjoyDigital + florent@enjoy-digital.fr -[> Miscope ------------- + A small footprint and configurable embedded FPGA + logic analyzer core developed by EnjoyDigital -Miscope is a small logic analyzer to embed in an FPGA. +[> Doc +--------- +HTML : www.enjoy-digital.fr/litex/litescope/ +PDF : www.enjoy-digital.fr/litex/litescope.pdf -While free vendor toolchains are generally used by beginners or for prototyping -(situations where having a logic analyser in the design is generally helpful) -free toolchains are always provided without the proprietary logic analyzer -solution... :( +[> Intro +--------- +LiteScope is small footprint and configurable embedded logic analyzer that you +can use in your FPGA and aims to provide a a free, portable and flexible +alternatve to vendor's solutions! -Based on Migen, Miscope aims to provide a free, portable and flexible -alternative to vendor's solutions! +LiteScope is part of LiteX libraries whose aims are to lower entry level of complex +FPGA IP cores by providing simple, elegant and efficient implementations of +components used in today's SoC such as Ethernet, SATA, PCIe, SDRAM Controller... -[> Specification: +The core uses simple and specific streaming buses and will provides in the future +adapters to use standardized AXI or Avalon-ST streaming buses. -Miscope provides Migen cores to embed in the design and Python drivers to control -the logic analyzer from the Host. Miscope automatically interconnects all cores -to a CSR bus. When using Python on the Host, no needs to worry aboutcores register -mapping, importing miscope project gives you direct access to all the cores! +Since Python is used to describe the HDL, the core is highly and easily +configurable. -Miscope produces .vcd output files to be analyzed in your favorite waveform viewer. +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. -Since Miscope also provides an Uart2Csr bridge, you only need 2 external Rx/Tx pins -to be ready to debug! +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. -You should use the current Migen fork: -(http://github.com/Florent-Kermarrec/migen) +LiteScope produces "vcd" files that can be read in your regular waveforms viewer. -[> Status: -Miio & Mila working on board with standard term. -RLE working on board. -RangeDetector and EdgeDector terms not tested. +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! -[> Examples: -test_Miio : Led & Switch Test controlled by Python Host. -test_Miia : Logic Analyzer controlled by Python Host. +[> Features +----------- +- IO peek and poke with LiteScopeIO +- Logic analyser with LiteScopeLA: + - Various triggering modules: Term, Range, Edge (add yours! :) + - Run Length Encoder to "compress" data and increase recording depth + - Subsampling + - Storage qualifier + - Data storage in block rams +- Bridges: + - UART2Wishbone + - Ethernet2Wishbone ("Etherbone") + +[> Possible improvements +------------------------- +- add standardized interfaces (AXI, Avalon-ST) +- add protocols analyzers +- add signals injection/generation +- add storage in DRAM +- add storage in HDD with LiteSATA core (to be released soon!) +- add PCIe Wishbone bridge with LitePCIe (to be released soon!) +- ... See below Support and consulting :) + +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 +------------------ +1. Install Python3 and your vendor's software + +2. Obtain Migen and install it: + git clone https://github.com/m-labs/migen + cd migen + python3 setup.py install + cd .. + +3. Obtain MiSoC and install it: + git clone https://github.com/m-labs/misoc --recursive + 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. + +4. Obtain LiteScope and install it: + git clone https://github.com/enjoy-digital/litescope + +5. Build and load test design: + python3 make.py -s [platform] all + Supported platforms are the one altready supported by Mibuild: + de0nano, m1, mixxeo, kc705, zedboard... + +6. Test design: + go to ./test directory and run: + python3 test_io.py + python3 test_la.py + +[> Simulations: + XXX convert simulations + +[> Tests : + XXX convert tests + +[> 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. + +[> Support and consulting +-------------------------- +We love open-source hardware and like sharing our designs with others. + +LiteScope is developed and maintained by EnjoyDigital. + +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. + +So feel free to contact us, we'd love to work with you! (and eventually shorten +the list of the possible improvements :) [> Contact -E-mail: florent@enjoy-digital.fr +E-mail: florent [AT] enjoy-digital.fr \ No newline at end of file