library of hardware components and test for HWToolkit framework (hwt, FPGA devel. tools)
hwtLib is the library of hardware components for hwt framework. Relation of hwt and hwtLib is similar as C and stdlib relation.
Majority of components in this library is actually configurable component generator. Any component can be exported as IPCore using hwt.Packager or as HDL code by toRtl() (Verilog, VHDL, ...). Target language is specified by keyword parameter serializer. Note that for most of components there is a schematic in the documentation.
- abstract - abstract classes for component classes like bus endpoint, etc
- amba - AXI interfaces and components for them (AXI3/4 DMAs, interconnects, ..., Axi-stream components, ..., Axi4Lite address decoders etc...)
- avalon - same thing as amba just for Avalon interfaces (AvalonST, AvalonMM, ... and components for them)
- clocking - various PLLs, timer generators etc.
- examples - demonstrative examples of hwt functionality
- handshaked - components for handshaked interfaces (FIFO, AsyncFifo, Resizer, interconnects, Register, ...)
- img - image preprocessing utils (parse PNG fornt to bits for OLED)
- interfaces - various interfaces which does not have it's package yet
- IPIF - IPIF interface and components for it (Interconnect, Register, address decoder, ...)
- logic - various components like CRC generator, gray counter, decoders-encoders ...
- mem - various memories (BRAM, ROM, FIFO, Async FIFO, CAM, LUT, ...)
- peripheral - various peripheral interfaces and components for them (I2C, SPI, UART)
- sim - simulation utils
- structManipulators - DMAs for specific data structures
- tests - tests which are not related to another components
- types - deffinitions of common types (uint32_t, ipv6_t, udp_t, ...)
sudo pip3 install hwtLib
Repositories with opensource HW:
- enjoy-digital repositories - Migen, SoC level modules
- ZipCPU repositories - Verilog, mostly preipherals, DSP
- rhea - MyHDL, SoC level modules
- FPGAwars FPGA-peripherals - Verilog, simple peripherals
- PoC - VHDL, utils
- picorv32 - Verilog, A Size-Optimized RISC-V SoC
- openrisc - OpenRISC, FuseSoC, peripherals and cpu parts
- NyuziProcessor - GPGPU