Skip to content

Commit

Permalink
update 8da7ebe9fbcda1cb6a07a7457c0c8eee272c5c28
Browse files Browse the repository at this point in the history
  • Loading branch information
GitHub Actions authored and GitHub Actions committed Nov 4, 2024
0 parents commit 28e3a5c
Show file tree
Hide file tree
Showing 302 changed files with 58,319 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .buildinfo
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: f0a096e66158ca4359a87dfbeaa2ec15
tags: 645f666f9bcd5a90fca523b33c5a78b7
Binary file added .doctrees/about.doctree
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added .doctrees/blog/2016_02_01_website_updates.doctree
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added .doctrees/blog/2018_02_12_vunit3.doctree
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added .doctrees/blog/2023_03_31_vunit_events.doctree
Binary file not shown.
Binary file added .doctrees/blog/2023_04_01_vunit_phases.doctree
Binary file not shown.
Binary file not shown.
Binary file added .doctrees/blog/index.doctree
Binary file not shown.
Binary file added .doctrees/check/check_api.doctree
Binary file not shown.
Binary file added .doctrees/check/checker_pkg.doctree
Binary file not shown.
Binary file added .doctrees/check/user_guide.doctree
Binary file not shown.
Binary file added .doctrees/ci/container.doctree
Binary file not shown.
Binary file added .doctrees/ci/intro.doctree
Binary file not shown.
Binary file added .doctrees/ci/manual.doctree
Binary file not shown.
Binary file added .doctrees/ci/script.doctree
Binary file not shown.
Binary file added .doctrees/ci/usecases.doctree
Binary file not shown.
Binary file added .doctrees/cli.doctree
Binary file not shown.
Binary file added .doctrees/com/user_guide.doctree
Binary file not shown.
Binary file added .doctrees/contributing.doctree
Binary file not shown.
Binary file added .doctrees/data_types/event_user_guide.doctree
Binary file not shown.
Binary file added .doctrees/data_types/ext_integer_vector.doctree
Binary file not shown.
Binary file added .doctrees/data_types/ext_string.doctree
Binary file not shown.
Binary file added .doctrees/data_types/external_api.doctree
Binary file not shown.
Binary file added .doctrees/data_types/integer_array.doctree
Binary file not shown.
Binary file added .doctrees/data_types/queue.doctree
Binary file not shown.
Binary file added .doctrees/data_types/user_guide.doctree
Binary file not shown.
Binary file added .doctrees/environment.pickle
Binary file not shown.
Binary file added .doctrees/examples.doctree
Binary file not shown.
Binary file added .doctrees/genindex.doctree
Binary file not shown.
Binary file added .doctrees/hdl_libraries.doctree
Binary file not shown.
Binary file added .doctrees/id/user_guide.doctree
Binary file not shown.
Binary file added .doctrees/index.doctree
Binary file not shown.
Binary file added .doctrees/installing.doctree
Binary file not shown.
Binary file added .doctrees/license.doctree
Binary file not shown.
Binary file added .doctrees/logging/user_guide.doctree
Binary file not shown.
Binary file added .doctrees/py/opts.doctree
Binary file not shown.
Binary file added .doctrees/py/ui.doctree
Binary file not shown.
Binary file added .doctrees/py/vunit.doctree
Binary file not shown.
Binary file added .doctrees/release_notes.doctree
Binary file not shown.
Binary file added .doctrees/run/user_guide.doctree
Binary file not shown.
Binary file added .doctrees/testimonials/testimonials.doctree
Binary file not shown.
Binary file added .doctrees/user_guide.doctree
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added .doctrees/verification_components/vci.doctree
Binary file not shown.
Empty file added .nojekyll
Empty file.
Binary file added _images/4x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/CPU_load.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/VUnit3.0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/VUnit_diagram.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/activity.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/airhdl.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/autoliv.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/bestvalue1.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/bestvalue2.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/bestvalue3.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/blogging_chat_room_documentation.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/caesar_encoder.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/check_next_passing.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/check_next_passing_with_missing_start.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/check_next_passing_with_overlap.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/check_sequence_first_no_pipe_passing.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/check_sequence_first_pipe_failing.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/check_sequence_first_pipe_passing.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/check_sequence_penultimate_failing.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/check_sequence_penultimate_passing.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/check_stable_failing.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/check_stable_passing.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/check_true.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/ci_csn_khai_edu.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/color_logging.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/contributors.png
Binary file added _images/cosim.png
Binary file added _images/effective_coding.png
Binary file added _images/gha_flow.png
Binary file added _images/gha_top_image.png
Binary file added _images/log1.jpg
Binary file added _images/log2.jpg
Binary file added _images/log3.jpg
Binary file added _images/log4.jpg
Binary file added _images/log5.jpg
Binary file added _images/log_example.jpg
Binary file added _images/log_output.png
Binary file added _images/logging_hierarchy.png
Binary file added _images/low_throughput.png
Binary file added _images/matlab_figure.jpg
Binary file added _images/message_passing.png
Binary file added _images/message_passing_model.png
Binary file added _images/orange_man.jpeg
Binary file added _images/osvb.png
Binary file added _images/parallel_recipe.jpg
Binary file added _images/pluralsight.png
Binary file added _images/remote_caching_and_execution.png
Binary file added _images/repositories_providing_tests.png
Binary file added _images/sequential_recipe.jpg
Binary file added _images/sigasi.png
Binary file added _images/sigasi_deep.png
Binary file added _images/sigasi_full.png
Binary file added _images/synective_labs.png
Binary file added _images/the_brain.jpg
Binary file added _images/third_interface.png
Binary file added _images/traffic_data.png
Binary file added _images/uvm.png
Binary file added _images/vhdl-2017.png
Binary file added _images/vunit_co_simulation.png
Binary file added _images/vunit_demo.gif
Binary file added _images/vunit_emailing.jpg
Binary file added _images/vunit_faq.png
Binary file added _images/vunit_github_io.png
Binary file added _images/vunit_matlab.jpg
Binary file added _images/vunit_overview.drawio.png
Binary file added _images/vunit_popularity.png
Binary file added _images/vunit_sigasistudio.jpg
Binary file added _images/vunit_view.png
Binary file added _images/vunit_waiting.jpg
Binary file added _images/vunit_wishbone.png
Binary file added _images/world.png
138 changes: 138 additions & 0 deletions _sources/about.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
.. _about:

What is VUnit?
==============

VUnit is an open source unit testing framework for VHDL/SystemVerilog released under the terms of `Mozilla Public
License, v. 2.0`_.
It features the functionality needed to realize continuous and automated testing of your HDL code.
VUnit doesn't replace but rather complements traditional testing methodologies by supporting a *"test early and often"*
approach through automation.

VUnit reduces the overhead of testing by supporting automatic discovery of test benches and compilation order as well
as including libraries for common verification tasks.
It improves the speed of development by supporting incremental compilation and by enabling large test benches to be
split up into smaller independent tests.
It increases the quality of projects by enabling large regression suites to be run on a continuous integration server.

VUnit does not impose any specific verification methodology on its users.
The benefits of VUnit can be enjoyed when writing tests first or last, when writing long running top level tests or
short running unit tests, when using directed or constrained random testing.
Often projects adopt mix of approaches for different testing needs.
VUnit has been used in production environments where thousands of tests take several hours to run on powerful multi-core
machines as well as in small open source projects where only a small package is tested in a few seconds.

Main Features
-------------

* :ref:`Scriptable API <python_interface>` as well as :ref:`command line <cli>` support.

* Has ``--gui`` switch to launch test cases in the simulator GUI when debugging is necessary.

* Automatic scanning of files for tests, file dependencies, and file changes enable automatic (incremental)
(re)compilation and execution of test suites.

* Python test suite runner that enables powerful test administration:

* Can continue testing after fatal run-time errors (e.g. division by zero).
* Ensures test case independence.
* Can run test cases in parallel to take advantage of multi-core machines.
* Support for running test benches with multiple generic/parameter settings.
* Requirements trace-ability through :ref:`JSON Export <json_export>` and :ref:`test attributes <attributes>`.
* Outputs JUnit report files for better `Jenkins`_ :ref:`integration <continuous_integration>`.
* Builds on the commonly used `xUnit`_ architecture.

* :ref:`Built-in HDL utility libraries <hdl_libraries>`:

* :doc:`Run library <./run/user_guide>` providing functionality for declaring multiple test cases within HDL
testbenches.
* :doc:`Assertion checker library <./check/user_guide>` that extends VHDL built-in support (assert).
* :doc:`Logging framework <./logging/user_guide>` supporting display and file output, different log levels, visibility
settings of levels and design hierarchy, output formatting and multiple loggers.
Supports machine readable output formats that for example can be read by a spreadsheet.

* For simulartors without VHDL 2019 call path support, an optional location preprocessor traces log and check
calls back to file and line number.

* Convenient :doc:`Data Types <./data_types/user_guide>` to deal with queues and/or dynamic arrays of integers in up
to three dimensions.
* :doc:`Communication library <./com/user_guide>` providing a high-level communication mechanism based on the
`actor model <http://en.wikipedia.org/wiki/Actor_model>`__.
* :doc:`Verification Components library <./verification_components/user_guide>` providing verification components (VCs)
for interfaces such as AXI, Avalon or Wishbone, along with utilities for writing your own self-checking VCs.
* Third-party submodules:

* `OSVVM <https://github.com/OSVVM/OSVVM>`__
* `JSON-for-VHDL <https://github.com/Paebbels/JSON-for-VHDL>`__

Overview
--------

.. figure:: _static/VUnit_diagram.png
:alt: Block diagram of VUnit
:width: 100%
:align: center

Block diagram of VUnit.

The core of VUnit is the Python plumbing composed by the library and testbench API, the simulator interfaces and the
runner for interacting with HDL testbenches.
Sibling ``run`` HDL libraries allow specifying tests within testbenches.

Moreover, VUnit includes multiple optional HDL libraries, along with third-party resources such as OSVVM and JSON-for-VHDL.
Those are made available through the built-ins API, which is based on the library and testbench API.

Both the core and builtins are available in the public :ref:`python_interface` of VUnit.
Details about how to execute a project are explained in :ref:`cli`.
Further info about the optional libraries is found in :ref:`hdl_libraries`.

Experimental co-simulation through GHDL's VHPIDIRECT is supported in `VUnit/cosim <https://vunit.github.io/cosim/>`__.

Getting Started
---------------

There are a number of ways to get started.

- :ref:`VUnit User Guide <user_guide>` will guide users on how to start using the basic features of VUnit but also
provides information about more specific and advanced usage.
- :ref:`Run Library User Guide <run_library>` presents the run packages.
- :ref:`Check Library User Guide <check_library>` presents the check packages.
- :ref:`Logging Library User Guide <logging_library>` presents the log packages.
- There are also various presentations of VUnit on `YouTube`_.
For example `an introduction to unit testing (6 min)`_ and a `short introduction to VUnit (12 min)`_.

Support
-------

Any bug reports, feature requests or questions about the usage of VUnit can be made by creating a `new issue`_.

Credits and License
-------------------

Substantial contributors are shown in the table below, but many others contributed with minor patches.
Find a list at `github.com/VUnit/vunit/graphs/contributors <https://github.com/VUnit/vunit/graphs/contributors>`__.

With apologies to anyone who ought to be either on this table or in the GitHub contributor list, but isn't.
Thanks also to all those who have reported bugs and support issues, and often patches and testcases.

================================================================================ ================================================================================================================================================================================================
Contributor [#f1]_ Role
================================================================================ ================================================================================================================================================================================================
Asplund, Lars [`@LarsAsplund <https://github.com/LarsAsplund>`__] [#f2]_ Founder and main author of VUnit as a whole
Kraigher, Olof [`@kraigher <https://github.com/kraigher>`__] Founder and main author of VUnit until v4
Marquardt, Colin [`@cmarqu <https://github.com/cmarqu>`__] Cadence Incisive support
Martinez-Corral, Unai [`@umarcor <https://github.com/umarcor>`__] [#f2]_ Continuous Integration (CI), Co-simulation with GHDL's VHPIDIRECT interface (`VUnit/cosim <https://github.com/VUnit/cosim>`_, based on `ghdl/ghdl-cosim <https://github.com/ghdl/ghdl-cosim>`_)
Siluk, Sławomir [`@slaweksiluk <https://github.com/slaweksiluk>`__] Verification Components (such as Avalon and Wishbone)
================================================================================ ================================================================================================================================================================================================

.. [#f1] In alphabetical order
.. [#f2] Maintainer
.. include:: license.rst

.. _xUnit: http://en.wikipedia.org/wiki/XUnit
.. _Jenkins: http://jenkins-ci.org/
.. _YouTube: https://www.youtube.com/channel/UCCPVCaeWkz6C95aRUTbIwdg
.. _an introduction to unit testing (6 min): https://www.youtube.com/watch?v=PZuBqcxS8t4
.. _short introduction to VUnit (12 min): https://www.youtube.com/watch?v=D8s_VLD91tw
.. _new issue: https://github.com/VUnit/vunit/issues/new
98 changes: 98 additions & 0 deletions _sources/blog/2015_09_24_short_introduction_to_vunit.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
:tags: VUnit
:author: lasplund
:excerpt: 2

.. _short_introduction_to_vunit_post:

Short Introduction to VUnit
===========================
**Originally posted and commented on** `LinkedIn <https://www.linkedin.com/pulse/short-introduction-vunit-lars-asplund?trk=mp-author-card>`_.


.. image:: img/4x.png

`VUnit <https://github.com/VUnit/vunit>`__ is a free and open source
unit testing framework for VHDL that was released in November last year.
Initially it supported ModelSim, then GHDL support was added in June,
and a few days ago we added support for Active-HDL and Riviera-PRO. The
latest addition makes the tool available for a new group of users and
this is a short introduction for you.

The basic idea with unit testing is to code and test in short cycles to
get frequent feedback on progress from day one. Most of us add bugs many
times a day so we need to complete these cycles at the same pace to
limit the consequences. If we're going to test many times a day, not
only what we just added but also do regression testing, it has to be an
automated and speed optimized task.

Automation means that our testbenches and their test cases have to be
self-checking but also that we need to automate the execution all these
tests or a selected subset thereof. As soon as we introduce manual steps
in this workflow we tend to postpone the testing and the short code/test
cycle is broken.

VUnit provides a :vunit_file:`check package <vunit/vhdl/check/user_guide.md>`
for making tests self-checking and the :vunit_file:`test runner <user_guide.md>`
is responsible for the execution. The test runner will scan your project
directories for source files and tests, figure out their dependencies
and what have been modified, compile what's needed and then run the
selected tests as specified from command line. For example,

.. code:: console
# Incrementally compile and run all testbenches and test cases found.
# Report pass/fail result for each.
$ python run.py
test case
# Run all test cases in testbench tb_foo
$ python run.py *tb_foo*
# Speed up the test by running the test cases in 6 parallel threads.
# Make use of all the CPU cores!
$ python run.py -p 6 *tb_foo*
# Launch the tb_foo test case "Test that reset initializes all outputs" in the simulator GUI such that it can be debugged
$ python run.py --gui "*tb_foo.Test that reset initializes all outputs"
VUnit is lightweight. A typical setup adds 8 lines to your normal
testbench code and one extra line for each test case in that testbench.
Everything is pure VHDL so it can be run without the run.py script if
you want to. The typical run.py script is 4 lines of code plus one extra
line for each VHDL library you want to create and each directory where
you want the test runner to scan for source files. You don't have to
know Python, just start with a the template and insert your library
names and source paths.

In addition to the core functionality described above VUnit contains a
number of other useful features. For example,

- A message passing mechanism that enables high-level communication
between testbench components. It allows you to send almost any type
of data to anyone located anywhere. All you have to deal with is the
name of the receiver and what data to send. The strongly typed nature
of VHDL has been hidden which means that you can send data of a
custom type using the provided send procedure. You don't have to
define your own procedures for every data/message type you create.
Message passing can be used for sending transactions without some of
the limitations of pin-wiggling and procedure-based transactions but
it is also the basis for several other communication patterns. For
more info see the :vunit_file:`com user guide <vunit/vhdl/com/user_guide.md>`.

- An array package that can handle multidimensional arrays. It's
typically used for input and output data sets to the DUT. The package
supports reading/writing arrays from/to file which enables file-based
testing. For more information see this :vunit_example:`example <vhdl/array`.

- A general purpose logging framework supporting display and file
output, different output levels, filtering on level and design
hierarchy, output formatting, automatic file and line localization of
log entries, multiple loggers, and spreadsheet tool integration. For
more information see the :vunit_file:`logging user guide <vunit/vhdl/logging/user_guide.md>`.

VUnit is a truly open project formed by its community. If you want to
follow the progress you can click on "watch" on the project
`homepage <https://github.com/VUnit/vunit>`__. If you like what you see
click on "star". If it's something you don't like or you miss a feature
you should create an `issue <https://github.com/VUnit/vunit/issues>`__.
You can also make your own code :vunit_file:`contributions <developing.md>`.
33 changes: 33 additions & 0 deletions _sources/blog/2015_10_08_who_is_using_UVM.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
:tags: VUnit
:author: lasplund
:excerpt: 2

Who's Using UVM (or Not) for FPGA Development, and Why?
=======================================================

**Originally posted and commented on** `LinkedIn
<https://www.linkedin.com/pulse/whos-using-uvm-fpga-development-why-lars-asplund?trk=mp-author-card>`__.

.. image:: img/uvm.png

Over the last few years a number of open source test solutions have
emerged. I'm talking about tools like our
`VUnit <https://github.com/VUnit/vunit>`__ but also others like
`OSVVM <http://osvvm.org/>`__,
`Cocotb <https://github.com/potentialventures/cocotb>`__,
`BVUL <http://bitvis.no/products/bitvis-utility-library/>`__, and
`SVUnit <http://www.agilesoc.com/open-source-projects/svunit/>`__. The
people developing these tools all had the question:

*Why are you doing this? Why not use UVM?*

These questions often come from people promoting UVM so it becomes a
discussion among people heavily involved in one solution or the other.
This time I would like to hear the opinions of the larger community. Why
did you decide to use UVM for your FPGA development? Why did you decide
not to? Maybe you're using UVM for parts of the testing but not all?

All tools can be used for ASIC development but I think the question is
more interesting when talking about FPGAs so let's focus on that for
now. I welcome the people developing these tools to answer as well but
please state who you are.
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
:tags: VUnit
:author: lasplund
:excerpt: 2


Free and Open Source Verification with VUnit and GHDL
=====================================================
**Originally posted and commented on** `LinkedIn
<https://www.linkedin.com/pulse/free-open-source-verification-vunit-ghdl-lars-asplund?trk%20=pulse_spock-articles>`__.

.. image:: img/CPU_load.png

`VUnit <https://github.com/VUnit/vunit>`__ is a free and open source
(FOSS) unit testing framework for VHDL that supports ModelSim,
Rivera-PRO, GHDL, and Active-HDL. GHDL is a FOSS simulator which VUnit
started to support 6 months ago but until recently you had to build GHDL
yourself from source code to get a version working with VUnit. This was
inconvenient and made it harder to get started but with the official
release of GHDL 0.33 this is no longer an issue and you can
`download <http://sourceforge.net/projects/ghdl-updates/files/Builds/ghdl-0.33/>`__
binary builds directly.

A free simulator opens up a number of possibilities. For example, you
can continue to develop new code and interact with your favorite
simulator while GHDL is running your regression tests in the background
on the other CPU cores. With VUnit you can simply do

.. code-block:: console
$ python run.py -p 7
to start running your test cases in 7 parallel threads and make use of
all your processing power. The image above shows the load difference
between just running a simulation in my normal simulator (the first load
peak) and also running 7 threads of VUnit test cases in the background
with GHDL (second 100% load peak).

If you're new to VUnit and want more information I recommend that you
start with this short :ref:`introduction
<short_introduction_to_vunit_post>`.
32 changes: 32 additions & 0 deletions _sources/blog/2016_01_26_welcome_to_our_new_website.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
:tags: VUnit
:author: lasplund
:excerpt: 1

Welcome to Our New Website
==========================
.. image:: img/vunit_github_io.png

Today I moved VUnit from my personal GitHub account to a dedicated
`VUnit account <https://www.github.com/VUnit/vunit>`__. Links to the
previous account are redirected to the new so your clones of VUnit
should not be affected. However, I suggest you update your remote
location to avoid any confusion.

::

git remote set-url origin https://github.com/VUnit/vunit.git

With the new account comes a new website
`VUnit.github.io <http://VUnit.github.io>`__. One of the purposes with
this site is to concentrate information to one place instead of
publishing posts on LinkedIn like I've done before. We will continue to
improve on this site to complement the functionality already available
in the VUnit GitHub repository which you can always reach by clicking
the GitHub cat icon at the bottom of this page. There you will also find
links to the `YouTube
channel <https://youtube.com/channel/UCCPVCaeWkz6C95aRUTbIwdg>`__,
`mail <mailto:[email protected]>`__, and our newly created
`twitter account <https://www.twitter.com/VUnitFramework>`__ which you
can follow to receive VUnit related news.

Lars
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
:tags: VUnit
:author: lasplund
:excerpt: 1

Chat with VUnit Users and Developers
====================================
Today I created a VUnit chat room using Gitter. Click the chat icon on
the left of the page to join the discussion.

Lars
24 changes: 24 additions & 0 deletions _sources/blog/2016_02_01_website_updates.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
:tags: VUnit
:author: lasplund
:excerpt: 2

.. _vunit_website_updates:


Website Updates
===============

.. figure:: img/blogging_chat_room_documentation.png

Our website has been updated with a
`Gitter <https://gitter.im>`__-based
`chat <https://gitter.im/VUnit/vunit>`__ and an improved
`documentation <http://vunit.github.io/documentation.html>`__ platform
based on `Sphinx <http://www.sphinx-doc.org/en/stable/>`__. When
changing to Sphinx it came natural to also switch the blogging platform
to `ABlog <http://ablog.readthedocs.org/>`__ which is based on Sphinx.

The chat has just been active for a few days but it's already very
active. Currently it's used to port VUnit to Cadence Incisive. We don't
have such licenses but the chat has been used to support the porting
work done by people that do. FOSS collaboration at its best!
Loading

0 comments on commit 28e3a5c

Please sign in to comment.