OpenCores
no use no use 1/1 no use no use
data base for ASIC/FPGA develpers
by Unknown on Feb 20, 2007
Not available!
Hello, I posted previously on what apparently is a "dead" mail list. So i follow advice of Jamil Khatib and resend the e-mail here. I am looking for a data base with WEB interface allowing to track modules, registers and bit fields. Preferably open source, Linux based, running some kind SQL data base (mySQL ?), supporting concurrent multi user access, able to generate documentation - PDF - DOC - OpenOffice docs Able to generate C header files with macros to read/write bits/registers Data base should allow to add a new device (SoC or FPGA), add subsystems to the device, specify address of the subsystem, add registers to the subsystems, add description, add bit fields definitions - size, RO/WO/RW, bit fields description, etc. Is there something like this ? We have proprietary MS Access based solution, but this thing has lot of problems, not scalable, Windows only, not portable, is not easy to maintain, does not have WEB interface, etc. - the list of problems is infinite. If there is no such solution and we decide to create something like this (we are considering PHP + mySQL + Symfony) and GPL the product do we have chance to get community participation ? This is short spec I wrote containing the requirements http://www.gomyplace.com/phpDesign-SW-design-v.04.pdf Is there a ready to go, preferably Open Source/GPL solution ? I will appreciate any help, links thank you
data base for ASIC/FPGA develpers
by Unknown on Feb 20, 2007
Not available!
I had a quick look through your doc and, with the best will in the
world, I can't see that this would be of any use at all. There isn't any
feature in it that made me stop and think "wow, that's something I/We
could really have used on a project".

What's the point? Have I missed something? At first sight, this looks a
spec whose sole purpose is to waste time and money.

/RT

data base for ASIC/FPGA develpers
by Unknown on Feb 20, 2007
Not available!
I authored something similar many years ago. It was used to generate C/C++ defines and functions/macros/structures for register and bitfield access. It also had a searchable web frontend and the ability to annotate test vectors. I took it one step further and actually generated the Verilog code for the register interface modules from the same database, that way I would be sure that the software, hardware , and documentation were all in sync at any moment in time. Honestly, rather than a SQL database, you might want to consider something a little lighter weight that is more easily version controlled. I chose to use a simple XML document (any simple markup would have worked) and found that it worked quite well. As an ASIC designer who also writes drivers for the hardware, I found the tool to be indispensable, and so did the other 25 members of my team (hardware and software alike). On 2/20/07, Richard Tierney rt-opencores at cyconix.com> wrote:
I had a quick look through your doc and, with the best will in the world, I can't see that this would be of any use at all. There isn't any feature in it that made me stop and think "wow, that's something I/We could really have used on a project". What's the point? Have I missed something? At first sight, this looks a spec whose sole purpose is to waste time and money. /RT _______________________________________________ http://www.opencores.org/mailman/listinfo/cores



data base for ASIC/FPGA develpers
by Unknown on Feb 20, 2007
Not available!
I guess it does make sense when you've got lots of registers. I like the
idea of the code generator.

/RT

data base for ASIC/FPGA develpers
by Unknown on Feb 20, 2007
Not available!
Sounds similar to RDL, see: http://www.eetimes.com/news/design/showArticle.jhtml?articleID=181503390 If I got it right, the RDL language is open but the "Denali Blueprint" compiler is a commercial product. I haven't used RDL but we use a similar in-house-developed system, which I find invaluable. Regards Gunnar Dahlgren Jeremy Fillingim wrote:
I authored something similar many years ago. It was used to generate C/C++ defines and functions/macros/structures for register and bitfield access. It also had a searchable web frontend and the ability to annotate test vectors. I took it one step further and actually generated the Verilog code for the register interface modules from the same database, that way I would be sure that the software, hardware , and documentation were all in sync at any moment in time. Honestly, rather than a SQL database, you might want to consider something a little lighter weight that is more easily version controlled. I chose to use a simple XML document (any simple markup would have worked) and found that it worked quite well. As an ASIC designer who also writes drivers for the hardware, I found the tool to be indispensable, and so did the other 25 members of my team (hardware and software alike). On 2/20/07, Richard Tierney rt-opencores at cyconix.com> wrote:
I had a quick look through your doc and, with the best will in the world, I can't see that this would be of any use at all. There isn't any feature in it that made me stop and think "wow, that's something I/We could really have used on a project". What's the point? Have I missed something? At first sight, this looks a spec whose sole purpose is to waste time and money. /RT _______________________________________________ http://www.opencores.org/mailman/listinfo/cores
_______________________________________________ http://www.opencores.org/mailman/listinfo/cores



data base for ASIC/FPGA develpers
by Unknown on Feb 20, 2007
Not available!
RDL looks easy enough to parse. I suspect that using this format wouldn't be terribly difficult. XML tools (parsers, validators, the xslt stuff) are easy to use and exist in any language that could possibly tickle your fancy. Sure, it's verbose, and it does make me feel dirty every time I use it, but I have to admit, sometimes it's the right tool for the job. Personally, I'd have a tough time inventing a new standard if there is a pre-existing one (that is open of course). On 2/20/07, Gunnar Dahlgren gunnar.dahlgren at axis.com> wrote:
Sounds similar to RDL, see: http://www.eetimes.com/news/design/showArticle.jhtml?articleID=181503390 If I got it right, the RDL language is open but the "Denali Blueprint" compiler is a commercial product. I haven't used RDL but we use a similar in-house-developed system, which I find invaluable. Regards Gunnar Dahlgren Jeremy Fillingim wrote:
> I authored something similar many years ago. It was used to generate > C/C++ defines and functions/macros/structures for register and > bitfield access. It also had a searchable web frontend and the ability > to annotate test vectors. I took it one step further and actually > generated the Verilog code for the register interface modules from the > same database, that way I would be sure that the software, hardware , > and documentation were all in sync at any moment in time. > > Honestly, rather than a SQL database, you might want to consider > something a little lighter weight that is more easily version > controlled. I chose to use a simple XML document (any simple markup > would have worked) and found that it worked quite well. > > As an ASIC designer who also writes drivers for the hardware, I found > the tool to be indispensable, and so did the other 25 members of my > team (hardware and software alike). > > On 2/20/07, Richard Tierney rt-opencores at cyconix.com> wrote:
> I had a quick look through your doc and, with the best will in the > world, I can't see that this would be of any use at all. There isn't any > feature in it that made me stop and think "wow, that's something I/We > could really have used on a project". > > What's the point? Have I missed something? At first sight, this looks a > spec whose sole purpose is to waste time and money. > > /RT > _______________________________________________ > http://www.opencores.org/mailman/listinfo/cores >
> _______________________________________________ > http://www.opencores.org/mailman/listinfo/cores
_______________________________________________ http://www.opencores.org/mailman/listinfo/cores



data base for ASIC/FPGA develpers
by Unknown on Feb 20, 2007
Not available!
Our typical ASIC is 4-20K bytes of registers.
Development time of the ASIC
is 0.5-1.5 years.
I think that SQL data base is inevitable.
The team is
15 designers and verification engineers, may be 10 software guys.

XML
document is limited by the flexibility of the
version manager and tools
to render the file.
mySQL apparently supports log, rollback and backup
(I still investigate it)
Indeed ability to compare different versions
of
the file sounds great, but the file itself is
going to be huge. For example,
file containing
macros for the software guys is above 50K lines.
Data sheet
describing the registers exceeds 1000
pages. We really need some data base
and
concurrent access to the data base. SQL sounds a
like a natural choice.


I do not know how unique our problem is.
From the answers I see that

some cos do use
tools like the one I described. Still there is no
anything
customizable enough to fit anybody.

I will probably go forward with the
project. If
you think you could switch to it in the future
from the proprietary/commercial
solutions - this
is the right time to try to define system
requirements.


greatly appreciating all answers and comments
thank you

I authored

something similar many years ago. It
was used to generate
C/C++ defines

and functions/macros/structures
for register and
bitfield access. It

also had a searchable web
frontend and the ability
to annotate test vectors.

I took it one step
further and actually
generated the Verilog code for

the register
interface modules from the




data base for ASIC/FPGA develpers
by Unknown on Feb 20, 2007
Not available!
A SQL database isn't a bad choice, it's just that it elevates the amount of effort that will be required from the developer. Version control is a solved problem. You might want to investigate SQLite if that's the route that you want to go. Unless you are going to have thousands upon thousands of users (maybe even ten thousands) it does the trick. I chose to use the XML file and place it under version control because it was easy to integrate into our build process. When developer X wanted version Y of the software, it was as simple as checking out the branch and building. The tools were right there in his development area and the appropriate version of the register interfaces were used to generate his source. Just for comparison, the chip that I was working on was a 3d graphics chip that was about 8 million gates (3 year project) involving 10 ASIC engineers and 15 OpenGL/driver software engineers. We generated massive amounts of C/C++ and Verilog code (probably >50000 lines) from the document. The document itself was probably close to 10000 lines long (XML is sickeningly verbose). Good luck with your development, it's a worthwhile effort. On 20 Feb 2007 13:01:50 -0000, larytet.46060479 at bloglines.com larytet.46060479 at bloglines.com> wrote:
Our typical ASIC is 4-20K bytes of registers.
Development time of the ASIC
is 0.5-1.5 years.
I think that SQL data base is inevitable.
The team is
15 designers and verification engineers, may be 10 software guys.

XML
document is limited by the flexibility of the
version manager and tools
to render the file.
mySQL apparently supports log, rollback and backup
(I still investigate it)
Indeed ability to compare different versions
of
the file sounds great, but the file itself is
going to be huge. For example,
file containing
macros for the software guys is above 50K lines.
Data sheet
describing the registers exceeds 1000
pages. We really need some data base
and
concurrent access to the data base. SQL sounds a
like a natural choice.


I do not know how unique our problem is.
>From the answers I see that

some cos do use
tools like the one I described. Still there is no
anything
customizable enough to fit anybody.

I will probably go forward with the
project. If
you think you could switch to it in the future
from the proprietary/commercial
solutions - this
is the right time to try to define system
requirements.


greatly appreciating all answers and comments
thank you

>I authored

something similar many years ago. It
>was used to generate
>C/C++ defines

and functions/macros/structures
>for register and
>bitfield access. It

also had a searchable web
>frontend and the ability
>to annotate test vectors.

I took it one step
>further and actually
>generated the Verilog code for

the register
>interface modules from the
_______________________________________________ http://www.opencores.org/mailman/listinfo/cores



data base for ASIC/FPGA develpers
by Unknown on Feb 20, 2007
Not available!
I have used similar tools before at previous companies and created a lightweight version of the tool for my TV80 project. It has a fairly simple set of registers it can generate, and the RTL it outputs is specific to the Z80 bus, but if you're looking for something to use as a starting point or for ideas I'd look at that. Like previous posters, I would stay away from a database solution and stick with something simple and XML-based. XML parsers are a dime a dozen nowadays and you can easily write multiple tools to look at your file and pull out the information they need to write RTL, create reg descriptions, etc. The tool I used before was able to generate multiple "slave" files that could be hooked up to a single master, allocate register spaces and do address maps, automatically generate documentation, and automatically create tests which would check the operation and integrity of the register map. It was web & database based, and the problem with that was mainly unnecessary complexity (now you have another server that can go down), and difficulty building new tools to interface to the database. Also, if you're worried about scalability, command-line tools have no difficulty generating millions of gates worth of RTL in under a second. :) If you're interested in building something open-source, I would be interested in collaborating on it. - Guy -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.opencores.org/forums.cgi/cores/attachments/20070220/4cac135c/attachment.htm
data base for ASIC/FPGA develpers
by BrewsterPorcella on Feb 20, 2007
BrewsterPorcella
Posts: 3
Joined: Jun 19, 2012
Last seen: Jun 27, 2012
All: I've used a tool like this based on exceed.... with a bunch of perl scripts to generate RTL. I hated it. There is no question that design effort was INCREASED rather than lessened by the "tool". There is some real value in forcing standards - register designs - register documentation standards... but that can be done with good design practices.. It does not need to be enforced by tools. None of these tools can insure useful (or even accurate) register descriptions.... it takes good review methods to do this. I've often wondered why people don't think about the most effective ways to use standard design languages (like verilog) to simplify the design process. If the goal is to insure good user documentation, there are many available ways to extract comments from standard design files. bj Porcella 571 245-6861 ----- Original Message ----- From: Guy Hutchison To: Discussion list about free open source IP cores Sent: Tuesday, February 20, 2007 11:15 AM Subject: Re: [oc] data base for ASIC/FPGA develpers I have used similar tools before at previous companies and created a lightweight version of the tool for my TV80 project. It has a fairly simple set of registers it can generate, and the RTL it outputs is specific to the Z80 bus, but if you're looking for something to use as a starting point or for ideas I'd look at that. Like previous posters, I would stay away from a database solution and stick with something simple and XML-based. XML parsers are a dime a dozen nowadays and you can easily write multiple tools to look at your file and pull out the information they need to write RTL, create reg descriptions, etc. The tool I used before was able to generate multiple "slave" files that could be hooked up to a single master, allocate register spaces and do address maps, automatically generate documentation, and automatically create tests which would check the operation and integrity of the register map. It was web & database based, and the problem with that was mainly unnecessary complexity (now you have another server that can go down), and difficulty building new tools to interface to the database. Also, if you're worried about scalability, command-line tools have no difficulty generating millions of gates worth of RTL in under a second. :) If you're interested in building something open-source, I would be interested in collaborating on it. - Guy ------------------------------------------------------------------------------ _______________________________________________ http://www.opencores.org/mailman/listinfo/cores -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.opencores.org/forums.cgi/cores/attachments/20070220/cb8366b8/attachment.htm
data base for ASIC/FPGA develpers
by Unknown on Feb 20, 2007
Not available!
I did not think that the tool will generate (or even parse) Verilog files.
I though mainly about synchronization between designers, verification team
and software team. The central point of the tool is generating of datasheet(s)


I do not throw away the idea of actually parsing Verilog files and looking
for some tags, but i think that DocBook already does this. I guess it is possible
in the future to integrate the engines. Meanwhile I want to limit the scope
of the problem and focus the efforts in solving the main problem - replacing
of the Access data base.

All:

I've used a tool like this based on

exceed....
with a bunch of perl scripts to generate RTL. I
hated it.

There is no question that design
effort was INCREASED rather than lessened

by the
"tool". There is some real value in forcing
standards - register

designs - register
documentation standards... but that can be done
with good design practices.. It does not need to
be enforced by tools.





no use no use 1/1 no use no use
© copyright 1999-2026 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.