Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
H
HDL
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Requirements
Jira
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Container registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
RTSD
HDL
Commits
a83686d1
Commit
a83686d1
authored
10 years ago
by
Eric Kooistra
Browse files
Options
Downloads
Patches
Plain Diff
Item 100 o) is also fixed by hdl_lib_excludes key.
parent
a39a3774
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
tools/hdltool_readme.txt
+11
-15
11 additions, 15 deletions
tools/hdltool_readme.txt
with
11 additions
and
15 deletions
tools/hdltool_readme.txt
+
11
−
15
View file @
a83686d1
...
@@ -770,26 +770,22 @@ n) Rename keys:
...
@@ -770,26 +770,22 @@ n) Rename keys:
* Rename modelsim_compile_ip_files into more precise name eg. modelsim_execute or modelsim_pre_execute.
* Rename modelsim_compile_ip_files into more precise name eg. modelsim_execute or modelsim_pre_execute.
* Rename key test_bench_files into sim_files, but does the hdllib.cfg become more clear to do this rename?
* Rename key test_bench_files into sim_files, but does the hdllib.cfg become more clear to do this rename?
o) How to avoid Quartus exit due to IP that is included at configuration, but not used at synthesis
o) (FIXED - erk
o) How to avoid Quartus exit due to IP that is included at configuration, but not used at synthesis
* due to test_bench_files
(FIXED - erko)
*
(FIXED - erko)
due to test_bench_files
--> 'hdl_lib_uses_sim' key
Quartus can exit with error if IP is included in the hdl_lib_uses list of libraries but not actually used in
Quartus can exit with error if IP is included in the hdl_lib_uses list of libraries but not actually used in
the design, eg due to a sdc file that is then sourced but that cannot find some IP signals. Having a seperate
the design, eg due to a sdc file that is then sourced but that cannot find some IP signals. Having a seperate
hdl_lib_uses_synth and hdl_lib_uses_sim key solves this issue, by avoiding that libraries that are only needed
hdl_lib_uses_synth and hdl_lib_uses_sim key solves this issue, by avoiding that libraries that are only needed
for test bench simulation get included in the list for synthesis.
for test bench simulation get included in the list for synthesis.
* (FIXED - erko) due to not-generate a certain IO component at compile time --> 'hld_lib_excludes' key
* due to not-generate a certain IO component at compile time
If the error is changed into warning then Quartus continues. Such modification of the sdc file could be automated
by using 'sed' to edit the sdc after it was generated by generate_ip.tcl.
In some designs we want to be able to temporarily disable the synthesis of an IO component (eg. io_ddr) to reduce
In some designs we want to be able to temporarily disable the synthesis of an IO component (eg. io_ddr) to reduce
synthesis time. In that case the Quartus should not need to source the qip and sdc settings for that IP. It
synthesis time. In that case the Quartus should not need to source the qip and sdc settings for that IP. The
would be sufficient to only source an io_ddr entity with empty architecture. We already have the revision capability
IP can be excluded for a design by using the 'hld_lib_excludes' key to exclude the DDR IP library in the hdllib.cfg
for designs and this could also be applied to IO libraries. Still the question remains how select between using
of the design revision that has the io_ddr but does not generate it. The exclusion cannot be done at the io_ddr
the component declaration only library when it is not used for synthesis and how to include the full library when
or tech_ddr level, because these are instantiated as entities. Therefore the eclusiong is done at the IP level
it is used for synthesis. This could be done if the io_ddr library is only included at the design level, because
because the IP is instantiated as component. Hence the exclusion works because for a component instance that is
then the design that uses the io_ddr has hdl_lib_uses_synth = io_ddr in its hdllib.cfg whereas the design that does not
not used only the component declaration (in the component package) needs to be known by the tools. Hence the
use io_ddr should in have hdl_lib_uses_synth = io_ddr_empty, where io_ddr_empty is a revision of io_ddr with only the
exclusion makes use of the same VHDL component mechanism as the technology independence.
entity and an emtpy architecture. Erko: the best scheme is probably to use the hld_lib.excludes key to
exclude the DDR IP library in the hdllib.cfg of the design revision that has the io_ddr but does not generate it.
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment