mirror of
https://github.com/pConst/basic_verilog.git
synced 2025-01-28 07:02:55 +08:00
41 lines
2.1 KiB
Markdown
41 lines
2.1 KiB
Markdown
# basic_verilog
|
|
### Some basic must-have verilog modules
|
|
(licensed under CC BY-SA 4_0)
|
|
|
|
|
|
### CONTENTS:
|
|
|
|
* **/Advanced Synthesis Cookbook/** - useful code from Altera's cookbook
|
|
* **/KCPSM6_Release9_30Sept14/** - Xilinx's Picoblaze soft processor
|
|
* **/pacoblaze-2.2/** - version of Picoblaze adapted for Altera devices
|
|
|
|
* **Main_tb.v** - basic testbench template
|
|
|
|
* **ActionBurst** - multichannel one-shot triggering module
|
|
* **ActionBurst2** - multichannel one-shot triggering with variable steps module
|
|
* **bin2pos** - converts binary coded value to positional (one-hot) code
|
|
* **ClkDivider** - wide reference clock divider
|
|
* **DeBounce** - two-cycle debounce for input buttons
|
|
* **DynDelay** - dynamic delay for arbitrary input signal made on general-purpose trigger elements
|
|
* **EdgeDetect** - edge detector, gives one-tick pulses on every signal edge
|
|
* **Encoder** - digital encoder input logic module
|
|
* **fifo** - single-clock FIFO buffer (queue) implementation
|
|
* **NDivide** - primitive integer divider
|
|
* **lifo** - single-clock LIFO buffer (stack) implementation
|
|
* **PulseGen** - generates pulses with given width and delay
|
|
* **bin2pos** - converts positional (one-hot) value to binary representation
|
|
* **ResetSet** - SR trigger variant w/o metastable state, set dominates here
|
|
* **ReverseVector** - reverses signal order within multi-bit bus
|
|
* **SetReset** - SR trigger variant w/o metastable state, reset dominates here
|
|
* **StaticDelay** - static delay for arbitrary input signal made on Xilinx`s SRL16E primitives. Also serves as input synchronizer, a standard way to get rid of metastability issues
|
|
* **UartRx** - straightforward yet simple UART receiver implementation for FPGA written in Verilog
|
|
* **UartTx** - straightforward yet simple UART transmitter implementation for FPGA written in Verilog
|
|
* **UartRxExtreme** - extreme minimal UART receiver implementation for FPGA written in Verilog
|
|
* **UartTxExtreme** - extreme minimal UART transmitter implementation for FPGA written in Verilog
|
|
|
|
Also added some simple testbenches for selected modules
|
|
|
|
|
|
Author: Konstantin Pavlov, pavlovconst@gmail.com
|
|
|