2014 Release
Intro
Docs
It includes two pdf files that are not valid for current master -- they are isyp related.
The source file should be upgraded.
A full current feature set list with examples and parameter/options.
Developer doc: Include python comments and a Python generation (tested with "epydoc").
Demos
"Learn by example": use the same design samples for both documentation/tutorial and regression testing (this is one of the features to be done).
The core features we want to test are those the users would like to use.
I've run a set of preliminary demos that are on the test folder 2014.
Do we want to arrange a separated repository for the demos?
Brand Neutral
Xilinx biased.
Name | Xilinx | Altera | Modelsim | Icarus |
Code Fetch | YES | YES | YES | YES |
Project Gen | YES | YES | N.A.?? | N.A. |
Simulation | ISIM | Modelsim | YES | YES |
Synthesis | YES | NO | NO | NO |
GHDL*: some work was made in a separate branch. This is not included in master and follows an older software design (2 years old).
Auto:
This only considers ISE synthesis.
Device Family Support
In order to generate an ISE or a Quartus project, the device family is required. In the current master, the family support is very limited.
The way in wich xise calculates the family requires a constant database update as new device families are introduced in the market (e.g. Zynq family)
Some naming schemes are not supported in the current automatic calculation (e.g. Spartan3E, Spartan3AN...). A more complex mechanism is required in order to manage some devices. Even worse, if new naming schemes are introduced in the future, the algorithm will need to be upgraded again.
Xilinx
"XC6S": "Spartan6",
"XC3S": "Spartan3E",
"XC6V": "Virtex6",
"XC5V": "Virtex5",
"XC4V": "Virtex4",
"XC7K": "Kintex7",
"XC7A": "Artix7"
Altera
"^EP2AGX.*$": "Arria II GX",
"^EP3C.*$": "Cyclone III"
Quick workaround
Add family as an optional parameter, in this way we are not limiting the
use of new devices. If not family option value is provided in the
manifest, hdlmake will try to get the family name from the device
parameter.
Remote Synthesis
Simulation
Need a local ISE install in order to build a local xise
Asks for user password multiple times halting the automated flow.
(I've not tested screen support, just default mode)
New workflow support
Higher level abstraction.
PlanAhead:
- Embedded cores (xps) -> Zynq, Dual core.
- IP (xco) -> Issue already requested #938.
- Optimized for tcl: concurrent runs, work batches...
New Features
Current status?
N | Name |
1 | Better HDLMAKE_COREDIR handling |
6 | Screen support for remote synthesis. |
9 | Fetch modules to a single directory, whatever the structure of the project is. |
15 | Fix all OHWR issues |
19 | Add finer control for synthesis stages |
20 | Arrange a separate repository with test projects |
21 | Add support for Windows OS |
22 | No binary in repo |
Issues
Some of the issues marked as solved are not applied in master -- may they be on a branch?.
Some examples I've already fixed in 2014 branch)
e.g. Binary configuration file generation #637
e.g. Hierachy Separator property. This was reported to the mailing list but a issue was not filled. Current status is not solved.
Should we re-check issues?