D
David M. Palmer
Guest
I am getting started in VHDL, and want to avoid learning bad habits. I
have seen enough bad C/C++ code that I really, really, don't want to
inflict something comparable in VHDL.
I also hope that this question does not provoke a flame war. (By the
way, in C, my brace style is better than yours.)
Is there a 'best style' manual, or at least something that says 'never
do this'.
Capitalization and case of names of signals, constants, entities,
architectures...
Hard tabs vs. spaces? How large is the indent level? The editor
(Xilinx webpack) defaults to hard-tabs at 3 spaces which would be a
bizarre choice in C.
All the arrows aligned vertically with ragged left and right?
All the signals at the beginning of a block followed by the
instantiations, or intermixed?
etc.
Just using the Xilinx webpack ISE I have seen a large variety of styles
from the Coregen, the template generator, the appnotes.
Are there pretty-printers available to fix up what I have done so far?
Style is often gently compelled by tools, but in danger of going off
topic:
What editor and development environment do people use? The Xilinx ISE
webpack is downright primitive compared to what I'm used to using in
the software world. (Yes, I'm complaining that free-as-in-beer
software isn't as nice as I would like. This is not a perjorative
criticism, it is simply a reflection of the amount of polish that gets
applied to something that both developed and used by the same people
vs. something that is not used by its developers*, and for which the
user community is a couple of orders of magnitude smaller.)
*Or worse: if it is developed by its users, who happen
to be hardware people.
Automatic name completion (signals, entities, constants...) would
require a sophisticated parser in the editor or hooks to feed back the
internals of the compiler, and so even though it is standard for Java/C
type development it may not be worthwhile in the smaller VHDL market.
But even a simple split-pane editor would help immensly by letting me
see the names of the signals I've defined in the same file I'm using
them without scrolling back and forth, losing my place.
And there should be a way to automate the tool chain so that after
changing a line in the VHDL, I need to hit only one key in order to get
the changes compiled and installed on the FPGA. There probably is a
way to do this, but my Preferences-Fu is not up to the challenge.
Thank you.
--
David M. Palmer dmpalmer@email.com (formerly @clark.net, @ematic.com)
have seen enough bad C/C++ code that I really, really, don't want to
inflict something comparable in VHDL.
I also hope that this question does not provoke a flame war. (By the
way, in C, my brace style is better than yours.)
Is there a 'best style' manual, or at least something that says 'never
do this'.
Capitalization and case of names of signals, constants, entities,
architectures...
Hard tabs vs. spaces? How large is the indent level? The editor
(Xilinx webpack) defaults to hard-tabs at 3 spaces which would be a
bizarre choice in C.
All the arrows aligned vertically with ragged left and right?
All the signals at the beginning of a block followed by the
instantiations, or intermixed?
etc.
Just using the Xilinx webpack ISE I have seen a large variety of styles
from the Coregen, the template generator, the appnotes.
Are there pretty-printers available to fix up what I have done so far?
Style is often gently compelled by tools, but in danger of going off
topic:
What editor and development environment do people use? The Xilinx ISE
webpack is downright primitive compared to what I'm used to using in
the software world. (Yes, I'm complaining that free-as-in-beer
software isn't as nice as I would like. This is not a perjorative
criticism, it is simply a reflection of the amount of polish that gets
applied to something that both developed and used by the same people
vs. something that is not used by its developers*, and for which the
user community is a couple of orders of magnitude smaller.)
*Or worse: if it is developed by its users, who happen
to be hardware people.
Automatic name completion (signals, entities, constants...) would
require a sophisticated parser in the editor or hooks to feed back the
internals of the compiler, and so even though it is standard for Java/C
type development it may not be worthwhile in the smaller VHDL market.
But even a simple split-pane editor would help immensly by letting me
see the names of the signals I've defined in the same file I'm using
them without scrolling back and forth, losing my place.
And there should be a way to automate the tool chain so that after
changing a line in the VHDL, I need to hit only one key in order to get
the changes compiled and installed on the FPGA. There probably is a
way to do this, but my Preferences-Fu is not up to the challenge.
Thank you.
--
David M. Palmer dmpalmer@email.com (formerly @clark.net, @ematic.com)