Skip to content

Commit a11f515

Browse files
committed
README is updated.
1 parent 22223eb commit a11f515

File tree

2 files changed

+26
-111
lines changed

2 files changed

+26
-111
lines changed

README.md

Lines changed: 3 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ What's Veriloggen?
2121
Veriloggen is an open-sourced library for constructing a Verilog HDL source code in Python.
2222

2323
Veriloggen is not a behavior synthesis (or high level synthesis). Veriloggen provides a lightweight abstraction of Verilog HDL AST. You can build up a hardware design written in Verilog HDL very easily by using the AST abstraction and the entire functionality of Python.
24+
25+
Veriloggen is not designed for designing a hardware by programmer directly, but is for providing an efficient abstraction to develop a more efficient domain specific language and tools.
2426

2527

2628
Requirements
@@ -30,7 +32,7 @@ Requirements
3032

3133
* Pyverilog (Python-based Verilog HDL Design Processing Toolkit)
3234
- Install from pip: 'pip install pyverilog' for Python2.7 or 'pip3 install pyverilog' for Python3
33-
- Install from github into this package: 'cd Pycoram; git clone https://github.com/shtaxxx/Pyverilog.git; cd pycoram; ln -s ../Pyverilog/pyverilog'
35+
- Otherwise, install from github into this package: 'cd Pycoram; git clone https://github.com/shtaxxx/Pyverilog.git; cd pycoram; ln -s ../Pyverilog/pyverilog'
3436
* Jinja2 (2.7 or later)
3537
- The code generator uses Jinja2 template engine.
3638
- 'pip install jinja2' (for Python 2.x) or 'pip3 install jinja2' (for Python 3.x)
@@ -157,52 +159,6 @@ endmodule
157159
```
158160

159161

160-
Class and method
161-
==============================
162-
163-
Module(name)
164-
--------------------
165-
166-
is corresponding to 'module' in Verilog HDL.
167-
The Module class has several class methods to describe signals and assignments.
168-
169-
Module.Input(name, width=None, length=None, signed=False, value=None)
170-
--------------------
171-
172-
is a class method to add a input port to the module.
173-
174-
Module.Output(name, width=None, length=None, signed=False, value=None)
175-
--------------------
176-
177-
is a class method to add a output port to the module.
178-
179-
Module.Inout(name, width=None, length=None, signed=False, value=None)
180-
--------------------
181-
182-
is a class method to add a inout port to the module.
183-
184-
Module.Reg(name, width=None, length=None, signed=False, value=None)
185-
--------------------
186-
187-
Module.Wire(name, width=None, length=None, signed=False, value=None)
188-
--------------------
189-
190-
Module.Parameter(name, value, width=None, length=None, signed=False)
191-
--------------------
192-
193-
Module.Localparam(name, value, width=None, length=None, signed=False)
194-
--------------------
195-
196-
Module.Always(sensitivity, statement)
197-
--------------------
198-
199-
Module.Assign(left, right)
200-
--------------------
201-
202-
Module.Instance(module, instname, params, ports)
203-
--------------------
204-
205-
206162
Publication
207163
==============================
208164

@@ -214,6 +170,3 @@ Related Project
214170

215171
[Pyverilog](http://shtaxxx.github.io/Pyverilog/)
216172
- Python-based Hardware Design Processing Toolkit for Verilog HDL
217-
218-
[PyCoRAM](http://shtaxxx.github.io/PyCoRAM/)
219-
- Python-based Portable IP-core Synthesis Framework for FPGA-based Computing

README.rst

Lines changed: 23 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ Veriloggen provides a lightweight abstraction of Verilog HDL AST. You
2323
can build up a hardware design written in Verilog HDL very easily by
2424
using the AST abstraction and the entire functionality of Python.
2525

26+
Veriloggen is not designed for designing a hardware by programmer
27+
directly, but is for providing an efficient abstraction to develop a
28+
more efficient domain specific language and tools.
29+
2630
Requirements
2731
============
2832

@@ -32,8 +36,8 @@ Requirements
3236

3337
- Install from pip: 'pip install pyverilog' for Python2.7 or 'pip3
3438
install pyverilog' for Python3
35-
- Install from github into this package: 'cd Pycoram; git clone
36-
https://github.com/shtaxxx/Pyverilog.git; cd pycoram; ln -s
39+
- Otherwise, install from github into this package: 'cd Pycoram; git
40+
clone https://github.com/shtaxxx/Pyverilog.git; cd pycoram; ln -s
3741
../Pyverilog/pyverilog'
3842

3943
- Jinja2 (2.7 or later)
@@ -44,6 +48,23 @@ Requirements
4448
Installation
4549
============
4650

51+
On Docker
52+
---------
53+
54+
Dockerfile is available, so that you can try Veriloggen on Docker
55+
without any installation on your host platform.
56+
57+
::
58+
59+
cd docker
60+
sudo docker build -t user/veriloggen .
61+
sudo docker run --name veriloggen -i -t user/veriloggen /bin/bash
62+
cd veriloggen/sample/led/
63+
make
64+
65+
On your host platform
66+
---------------------
67+
4768
If you want to use Veriloggen as a general library, you can install on
4869
your environment by using setup.py.
4970

@@ -59,17 +80,6 @@ If Python 3.x is used,
5980

6081
python3 setup.py install
6182

62-
Docker
63-
------
64-
65-
Dockerfile is available. Please try Veriloggen by using Dockerfile.
66-
67-
::
68-
69-
cd docker
70-
sudo docker build -t user/ubuntu:14.04-veriloggen .
71-
sudo docker run --name veriloggen -i -t user/ubuntu:14.04-veriloggen /bin/bash
72-
7383
Getting Started
7484
===============
7585

@@ -163,51 +173,6 @@ standard text editor.
163173
end
164174
endmodule
165175
166-
Class and method
167-
================
168-
169-
Module(name)
170-
------------
171-
172-
is corresponding to 'module' in Verilog HDL. The Module class has
173-
several class methods to describe signals and assignments.
174-
175-
Module.Input(name, width=None, length=None, signed=False, value=None)
176-
---------------------------------------------------------------------
177-
178-
is a class method to add a input port to the module.
179-
180-
Module.Output(name, width=None, length=None, signed=False, value=None)
181-
----------------------------------------------------------------------
182-
183-
is a class method to add a output port to the module.
184-
185-
Module.Inout(name, width=None, length=None, signed=False, value=None)
186-
---------------------------------------------------------------------
187-
188-
is a class method to add a inout port to the module.
189-
190-
Module.Reg(name, width=None, length=None, signed=False, value=None)
191-
-------------------------------------------------------------------
192-
193-
Module.Wire(name, width=None, length=None, signed=False, value=None)
194-
--------------------------------------------------------------------
195-
196-
Module.Parameter(name, value, width=None, length=None, signed=False)
197-
--------------------------------------------------------------------
198-
199-
Module.Localparam(name, value, width=None, length=None, signed=False)
200-
---------------------------------------------------------------------
201-
202-
Module.Always(sensitivity, statement)
203-
-------------------------------------
204-
205-
Module.Assign(left, right)
206-
--------------------------
207-
208-
Module.Instance(module, instname, params, ports)
209-
------------------------------------------------
210-
211176
Publication
212177
===========
213178

@@ -218,6 +183,3 @@ Related Project
218183

219184
`Pyverilog <http://shtaxxx.github.io/Pyverilog/>`__ - Python-based
220185
Hardware Design Processing Toolkit for Verilog HDL
221-
222-
`PyCoRAM <http://shtaxxx.github.io/PyCoRAM/>`__ - Python-based Portable
223-
IP-core Synthesis Framework for FPGA-based Computing

0 commit comments

Comments
 (0)