Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alexforencich/verilog-lfsr
Fully parametrizable combinatorial parallel LFSR/CRC module
https://github.com/alexforencich/verilog-lfsr
Last synced: 23 days ago
JSON representation
Fully parametrizable combinatorial parallel LFSR/CRC module
- Host: GitHub
- URL: https://github.com/alexforencich/verilog-lfsr
- Owner: alexforencich
- License: mit
- Created: 2016-03-31T22:56:07.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2023-01-30T04:55:59.000Z (almost 2 years ago)
- Last Synced: 2024-12-07T17:04:28.211Z (about 1 month ago)
- Language: Python
- Homepage:
- Size: 63.5 KB
- Stars: 138
- Watchers: 13
- Forks: 55
- Open Issues: 2
-
Metadata Files:
- Readme: README
- License: COPYING
Awesome Lists containing this project
- awesome-opensource-hardware - verilog-lfsr
README
# Verilog LFSR Readme
[![Build Status](https://github.com/alexforencich/verilog-lfsr/workflows/Regression%20Tests/badge.svg?branch=master)](https://github.com/alexforencich/verilog-lfsr/actions/)
For more information and updates: http://alexforencich.com/wiki/en/verilog/lfsr/start
GitHub repository: https://github.com/alexforencich/verilog-lfsr
## Introduction
Fully parametrizable combinatorial parallel LFSR/CRC module. Implements an unrolled LFSR next state computation. Includes full cocotb testbenches.
## Documentation
### lfsr module
Fully parametrizable combinatorial parallel LFSR/CRC module. Implements an unrolled LFSR next state computation.
### lfsr_crc module
Wrapper for lfsr module for standard CRC computation.
### lfsr_descramble module
Wrapper for lfsr module for self-synchronizing descrambler.
### lfsr_prbs_check module
Wrapper for lfsr module for standard PRBS check.
### lfsr_prbs_gen module
Wrapper for lfsr module for standard PRBS computation.
### lfsr_scramble module
Wrapper for lfsr module for self-synchronizing scrambler.
### Source Files
lfsr.v : Parametrizable combinatorial LFSR/CRC module
lfsr_crc.v : Parametrizable CRC computation wrapper
lfsr_descramble.v : Parametrizable LFSR self-synchronizing descrambler
lfsr_prbs_check.v : Parametrizable PRBS checker wrapper
lfsr_prbs_gen.v : Parametrizable PRBS generator wrapper
lfsr_scramble.v : Parametrizable LFSR self-synchronizing scrambler## Testing
Running the included testbenches requires [cocotb](https://github.com/cocotb/cocotb) and [Icarus Verilog](http://iverilog.icarus.com/). The testbenches can be run with pytest directly (requires [cocotb-test](https://github.com/themperek/cocotb-test)), pytest via tox, or via cocotb makefiles.