Skip to content

Commit b5d1ac8

Browse files
committed
Update docs for github
1 parent b09937f commit b5d1ac8

File tree

11 files changed

+344
-362
lines changed

11 files changed

+344
-362
lines changed

‎.gitignore‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
*~
2+
*.pyc
3+
__pycache__/
4+
opbasm.egg-info/
5+
build/
6+
dist/
7+
_build

‎README.rst‎

Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
2+
.. image:: http://kevinpt.github.io/vhdl-extras/_static/vhdl-extras-sm.png
3+
4+
===================
5+
VHDL-extras Library
6+
===================
7+
8+
This library provides some "extra" bits of code that are not found in the standard VHDL libraries. With VHDL-extras you can create designs that will resize to varying data widths, compute with time, frequency, and clock cycles, include error correction, and many more commonly encountered issues in digital logic design. These packages can be used for logic simulations and, in most cases, can be synthesized to hardware with an FPGA or ASIC target.
9+
10+
All of the packages are designed to work with VHDL-93. Alternate packages supporting newer VHDL standards are provided where new language features provide enhanced functionality or where forward compatibility is broken. The core code should work in most VHDL-93 compliant tools. In one instance with the `timing_ops <http://kevinpt.github.io/opbasm/rst/packages.html#timing-ops>`_ package, a simplified Xilinx specific implementation is provided because of limitations with the XST synthesizer (fixed in Vivado).
11+
12+
Requirements
13+
------------
14+
15+
You can use the VHDL-extras library files piecemeal with no tools other than the simulator or synthesizer you will process them with. If you wish to use the provided Modelsim build scripts you will need Modelsim, Python 2.x, sed, grep, and GNU make. To run the test suite you will need Python 2.7 and Modelsim. See the sections on `installation <http://kevinpt.github.io/opbasm/index.html#installation>`_ and `testing <http://kevinpt.github.io/opbasm/index.html#testing>`_ for more information on setting up the VHDL-extras library. You can get optional colorized output from the build and test scripts by installing the Python colorama package.
16+
17+
Documentation
18+
-------------
19+
20+
Take a look at the `online documentation <http://kevinpt.github.io/opbasm/index.html>`_ for more information on what you can do with VHDL-extras.
21+
22+
23+
Download
24+
--------
25+
You can access the VHDL-extras Git repository from `Github <https://github.com/kevinpt/vhdl-extras>`_. `Packaged source code <https://drive.google.com/folderview?id=0B5jin2146-EXV2NfS3V2VXBsQnM&usp=sharing>`_ is also available for download.
26+
27+
The Code
28+
--------
29+
30+
The VHDL-extras library contains the following packages:
31+
32+
* Core packages
33+
34+
`pipelining <http://kevinpt.github.io/opbasm/rst/packages.html#pipelining>`_ -- Pipeline registers
35+
36+
`sizing <http://kevinpt.github.io/opbasm/rst/packages.html#sizing>`_ -- Generalized integer logarithms and array size computation
37+
38+
`synchronizing <http://kevinpt.github.io/opbasm/rst/packages.html#synchronizing>`_ -- Clock domain synchronizing components
39+
40+
`timing_ops <http://kevinpt.github.io/opbasm/rst/packages.html#timing-ops>`_ -- Conversions for time, frequency, and clock cycles
41+
42+
* Error handling
43+
44+
`crc_ops <http://kevinpt.github.io/opbasm/rst/packages.html#crc-ops>`_ -- Compute CRCs
45+
46+
`hamming_edac <http://kevinpt.github.io/opbasm/rst/packages.html#hamming-edac>`_ -- Generalized Hamming error correction encoding and decoding
47+
48+
`parity_ops <http://kevinpt.github.io/opbasm/rst/packages.html#parity-ops>`_ -- Basic parity operations
49+
50+
`secded_edac <http://kevinpt.github.io/opbasm/rst/packages.html#secded-edac>`_ -- Hamming extension with double-error detection
51+
52+
* Encoding
53+
54+
`bcd_conversion <http://kevinpt.github.io/opbasm/rst/packages.html#bcd-conversion>`_ -- Encode and decode packed Binary Coded Decimal
55+
56+
`gray_code <http://kevinpt.github.io/opbasm/rst/packages.html#gray-code>`_ -- Encode and decode Gray code
57+
58+
`muxing <http://kevinpt.github.io/opbasm/rst/packages.html#muxing>`_ -- Decoder and muxing operations
59+
60+
* Memories
61+
62+
`fifos <http://kevinpt.github.io/opbasm/rst/packages.html#fifos>`_ -- General purpose FIFOs
63+
64+
`memory <http://kevinpt.github.io/opbasm/rst/packages.html#memory>`_ -- Synthesizable memories
65+
66+
`reg_file <http://kevinpt.github.io/opbasm/rst/packages.html#reg-file>`_ -- General purpose register file
67+
68+
* Randomization
69+
70+
`lcar_ops <http://kevinpt.github.io/opbasm/rst/packages.html#lcar-ops>`_ -- Linear Cellular Automata
71+
72+
`lfsr_ops <http://kevinpt.github.io/opbasm/rst/packages.html#lfsr-ops>`_ -- Linear Feedback Shift Registers
73+
74+
`random <http://kevinpt.github.io/opbasm/rst/packages.html#random>`_ -- Simulation-only random number generation
75+
76+
* String and character handling
77+
78+
`characters_handling <http://kevinpt.github.io/opbasm/rst/packages.html#characters-handling>`_ -- Character class identification and case conversions
79+
80+
`strings_fixed <http://kevinpt.github.io/opbasm/rst/packages.html#strings-fixed>`_ -- Operations on fixed length strings
81+
82+
`strings_maps <http://kevinpt.github.io/opbasm/rst/packages.html#strings-maps>`_ -- Mapping character sets
83+
84+
`strings_unbounded <http://kevinpt.github.io/opbasm/rst/packages.html#strings-unbounded>`_ -- Operations on unbounded strings
85+
86+
* Miscellaneous
87+
88+
`binaryio <http://kevinpt.github.io/opbasm/rst/packages.html#binaryio>`_ -- Binary file I/O
89+
90+
`text_buffering <http://kevinpt.github.io/opbasm/rst/packages.html#text-buffering>`_ -- Store text files in internal buffers
91+
92+
`ddfs <http://kevinpt.github.io/opbasm/rst/packages.html#ddfs>`_ -- Direct Digital Frequency Synthesizer
93+
94+
`glitch_filtering <http://kevinpt.github.io/opbasm/rst/packages.html#glitch-filtering>`_ -- Clean up noisy inputs
95+
96+
97+
Licensing
98+
~~~~~~~~~
99+
100+
All of the source files distributed as part of VHDL-extras are made freely
101+
available under the MIT license. The license permits unrestricted use of
102+
this code for commercial and non-commercial use. You may freely mix
103+
VHDL-extras code with proprietary code. You may make any modifications
104+
necessary without any requirement to redistribute your source code. The only
105+
requirement is to maintain the copyright and licensing information in the
106+
file headers.
107+
108+
It is presumed that portions of the VHDL-extras library will be
109+
translated into circuitry with synthesis software. The resulting hardware
110+
implementation will be free of any requirements beyond those that apply
111+
when the code is used as software. The functions provided in VHDL-extras
112+
are all commonly known in the art and are free of any patent
113+
restrictions. It would be a nice gesture if the documentation for any
114+
hardware containing VHDL-extras code included an acknowledgement of that
115+
code and a pointer to this web site.
116+
117+
MIT License
118+
~~~~~~~~~~~
119+
120+
Permission is hereby granted, free of charge, to any person obtaining a
121+
copy of this software and associated documentation files (the "Software"),
122+
to deal in the Software without restriction, including without limitation
123+
the rights to use, copy, modify, merge, publish, distribute, sublicense,
124+
and/or sell copies of the Software, and to permit persons to whom the
125+
Software is furnished to do so, subject to the following conditions:
126+
127+
The above copyright notice and this permission notice shall be included in
128+
all copies or substantial portions of the Software.
129+
130+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
131+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
132+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
133+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
134+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
135+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
136+
DEALINGS IN THE SOFTWARE.

‎README.txt‎

Lines changed: 0 additions & 190 deletions
This file was deleted.

‎doc/Makefile‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,9 @@ help:
4141
clean:
4242
-rm -rf $(BUILDDIR)/*
4343

44+
gh-pages: html
45+
cp -r $(BUILDDIR)/html/* ../../vhdl-extras-html
46+
4447
html:
4548
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
4649
@echo

0 commit comments

Comments
 (0)