summaryrefslogtreecommitdiff
path: root/cad
AgeCommit message (Collapse)AuthorFilesLines
2000-07-20Depend on version 4.0 or newer of the "readline" package.tron1-2/+2
2000-07-15Instead of the clunky SHOW_PKG_PREFIX, introduce an EVAL_PREFIX definition,agc1-3/+4
which takes entries of the format <make-definition-name>=<pkgname>. This has not been added to MAKEFLAGS because (a) premature optimisation is the root of all evil, and (b) because the .for loop used to implement this shows the wrong results when multiple prefices are evaluated. Modify all the package Makefiles to use EVAL_PREFIX, thereby simplifying them considerably. ALso simplify the logic to calculate the prefix as well.
2000-07-14The previous method of using a make target for finding a prerequisiteagc1-3/+3
package's prefix would not work as part of the environment specification via MAKE_ENV (as it would not be executed in the correct directory). Fix this by invoking pkg_info(1) directly, not via an intermediate make(1) step - this is not as clean, but more effective (i.e. it works).
2000-07-11Make the determination of the pre-req package's installed directory beagc1-3/+3
a bit more user-friendly. Introduce a show-{gtk+,imlib,kdebase,qt1,qt2,xpm}-prefix target in bsd.pkg.mk, and use "${MAKE} show-*-prefix" in package Makefiles.
2000-07-11make iverilog give proper return codes.dmcmahill2-1/+58
2000-07-11Use X11PREFIX in preference to X11BASE, so that this package cooperatesagc1-3/+3
with xpkgwedge.
2000-07-10Find qt2 prefix via pkg_info(1), rather than hardcoding it as ${X11BASE}.agc1-3/+3
Pointed out by Dave Sainty <dave@dtsp.co.nz>, munged slightly by me.
2000-07-06Fix typo in Makefile - patch mailed back to the pkg's Authorhubertf2-1/+15
2000-06-30make the default timescale in the output VCD files be 1ns for compatibilitydmcmahill2-1/+16
with viewers such as Dinotrace.
2000-06-22update to verilog-0.3dmcmahill7-38/+38
Changes, from the authors release statement, are: This release is a significant improvement over previous releases of Icarus Verilog, including better language coverage, improved synthesis, and increased performance. This release adds to the 0.2 release support for Verilog-2000 style parameters and parameter overrides, defparam, and localparam, including proper handling of scoping rules. Also, strength modeling is added, with support for strengths attached to gates and continuous assignments. Combinational user defined primitives have been added to complement synchronous primitives that were already supported. Support for primitives should now be fairly complete. Force/release/assign/deassign syntax now works properly, allowing for more sophisticated test bench design and debugging. Bug fixes have been numerous and varied. This release of Icarus Verilog is considerably more robust then previous versions, thanks to diligent testing and bug reporting by users all over the world.
2000-06-12fix the patch so it works....dmcmahill2-5/+5
2000-06-12fix the .info file so thatdmcmahill2-1/+17
install-info --delete %D/info/dinotrace.info %D/info/dir actually work.
2000-06-12compile with -fPIC instead of -fpic. Makes things work right on sparc.dmcmahill2-1/+13
2000-06-01s/USE_LIBTOOL/USE_PKGLIBTOOL/rh6-12/+12
Add a new USE_LIBTOOL definition that uses the libtool package instead of pkglibtool which is now considered outdated. USE_PKGLIBTOOL is available for backwards compatibility with old packages but is deprecated for new packages.
2000-05-30update to verilog-current-20000527dmcmahill4-14/+12
changes since last packaged snapshot are (from the authors announcements): Icarus Verilog 20000527 Snapshot ---------------------------------- It's snapshot time! <ftp://icarus.com/pub/eda/verilog/snapshots/verilog-20000527.tar.gz> This snapshot doesn't add any new features, but fixes a few bugs. I've taken care of a bunch of bug reports with an eye towards getting this polished up for a 0.3 stable release. I fixed some problems with elaborating the condition expression of a ternary operator. This was a long-standing bug that only happened in structural (i.e. continuous assignment) situations. I've also done some merging of event expressions. The netlist format makes NetEvProbe and NetEvent objects for event expressions, and it was making more then were needed. I've done some merging, though I have some more things I can do on this front. I'll be working on it for the next snapshot. I found a whole bunch of bugs with parsing expression lists, for example module port expressions. The result is actually a smaller parser:-) So module port expressions should be parsed and elaborated correctly, now. In the vvm code generator, I've found some room to optimize the generated code. I detect duplicate initialization of a nexus, and prevent the excess code being generating. In one slightly degenerate example sent to me, this change reduced the generated C++ by more then 6 times. I was pretty amazed. I've also slightly optimized the special case of behavioral assignments from simple signal expressions. This removed a few lines of generated code per assignment. This sort of thing helps compile time performance. Icarus Verilog 20000512 Snapshot ---------------------------------- This is mostly a bug fix snapshot. No new features here, but I'm starting to buff it up shiny for an upcoming 0.3 release. It looks like I'll be starting to do release candidates soon, so test this snapshot hard, folks! <ftp://icarus.com/pub/eda/verilog/snapshots/verilog-20000519.tar.gz> I re-implemented flip-flop and RAM synthesis, the new technique should allow me to make much more complete synthesis. It's still not the nifty full-scale synthesis I hope to do some day, but it should catch some of the bigger synthesis problems. I've also added to XNF synthesis the ability to detect start-up initial values for flip-flip devices. This causes it to generate INIT= properties for the devices as appropriate. I've improved the VVM code generated by the t-vvm code generator. I've managed to reduce the size of the code generated for some larger models by 30%, and I should have improved run-time performance in the process. This should help. I've also found (thanks to bug reports) and fixed some module port issues. I bet you can't dream up legal port binding that Icarus Verilog can't handle:-) This issue should be taken care of. VPI now includes the ability to set registers. I needed this to implement a PNG image I/O module. I'm still working on that, I'll distribute it separately when it is in better shape. Various other bug fixes in iverilog and elsewhere. Several bug fixes in the VVM runtime, including some support for the % operator. I've done some updates to documentation to reflect some of the changes since 0.2, so you can take a look at that too.
2000-05-12make all pkgs for which I'm the maintainer point to my netbsd email.dmcmahill3-6/+6
2000-05-11update to 20000506 snapshot.dmcmahill6-24/+21
changes from the last packaged snapshot (from the authors announcement): ---------------Icarus Verilog 20000506 Snapshot------------------ A lot of internal reworking has been done on this, so there might be problems with things like symbol binding. But I think this is much better then the last snapshot. I am once again starting to think about a stable release. I'll shoot for the end of May, so if there is anything you want to see in that release, start pestering me. The big job has been a rewrite of the symbol table that holds signals. The previous elaboration and lookup code for signals/memories did not work properly when hierarchical names were used in the context of tasks and functions. Also, the old table kept all the signals is a single lookup table that failed to take advantage of knowledge of the current scope. All that is changed. signals are now elaborated after parameters and before processes, so all hierarchical accesses should work properly now, no matter how contorted. I've also fixed some bugs with function/task parameter passing. I've also added some infrastructure for supporting system functions, and I've added an implementation of the $random system function. This currently uses the native random(3) C library function, but once I get access to the standardized algorithm, I'll implement that. There are also a few fixes to elaboration of ternary operators. They were a bit touchy about result bit widths. A few preprocessor bugs have been fixed, especially related to the `ifdef/`endif tokens. People are all the sudden starting to use the Icarus Verilog preprocessor, so some long-standing bugs have been caught. The iverilog command had a few path problems fixed, and the remaining necessary switches have been added. I really encourage people to start using iverilog in place of verilog. The test suite now uses iverilog to run the compiler, so should you. There is a man page.
2000-05-10distinguish these 2 packages as "development snapshot" and "released" sodmcmahill2-2/+2
its more obvious of the difference.
2000-04-30Update to verilog-current to the 20000428 snapshot.dmcmahill6-13/+35
The many bug fixes and changes since the last packaged snapshot are (from the authors announcements): Icarus Verilog 20000428 Snapshot -------------------------------- This one clears up some pretty nasty and subtle bugs. If you've been sending me bug reports, you're probably turning blue holding your breath in anticipation of this snapshot. Breath in, Breath out. Hooray, both force and release work properly. I'm happy about that, release worked out a bit easier then I expected. These should be useful to test bench designers. The big news this past week, however, has been bug fixes. Lots of bug fixes. I got lots of bug reports and I killed pretty nearly all of them. There were lots of nasty icky problems with passing parameters to/from tasks, especially when memory words were involved. I fixed up a whole bunch of these, and now parameter passing should work pretty will, modulus the few remaining bugs I'm not seeing yet. The iverilog command is in better shape now, and I encourage people to use it in place of the older "verilog" driver script. There is a man page for iverilog, and it supports all the switches needed to do simulation and synthesis. I would like people to start getting this driver well tested and the bugs worked out, because it is going to be the main driver come the next stable release. Some neat new XNF features are happening. I synthesize identity compare in XNF, and a few other missing operators. But the really neato part is that I've taught Icarus Verilog to generate PIN records for module ports, so that you can make XNF macros out of Verilog source. If you elaborate a module that has ports, the XNF code generator will automatically generate the necessary symbols so that external XNF tools can link the generated output into larger designs. I've compared the XNF files from Icarus Verilog with those generated by Abel, and they appear the same to my eyes. Icarus Verilog 20000421 Snapshot -------------------------------- Bunches of bug fixes, and a few new features come with this snapshot. This snapshot makes headway in both simulation and synthesis. I'm also starting to make a big dent in my todo list for the 0.3 release. The bunches of little bug fixes in this snapshot are a direct result of bunches of bug reports this past week that I was able to deal with. If you've been reporting bugs, this may contain your fix. I redesigned the process implementation in the vvm backend, so the generated code is a bit cleaner, and threads are lighter weight. And while I was at it, fork/join now should work properly. I know there were a bunch of you out there asking for this, so here it is. I've incorporated into this release improved runtime support for integer multiplication, it should now work now matter how incredibly enormous you make the operands. Thanks to Chris Lattner for contributing the generic multiply. I've improved synthesis somewhat, there were some expressions in some contexts that were not getting synthesized by the -Fsynth functor. This is fixed, and I'm also starting to add some XNF specific optimizations into the -Fxnfio functor. I do sensible things with identity compare, for example. I've added the program ``iverilog'' to be a new driver program written in C instead of as a shell script. This driver supports the -tnull, -txnf and -tvvm targets, as well as the -E flag that causes only the preprocessor to be run. This should be interesting to those of you who are looking for a working preprocessor. I'm still working on the -D and the -I flags, but I expect this program to replace the verilog.sh script before the 0.3 release. Icarus Verilog 20000414 Snapshot -------------------------------- All event handling is now complete. Yet another subject is behind me, and on I go. By complete, I mean that named events, edge triggers, wait, and lists of events all work. This took a little longer then I expected, so some of the other things I wanted to work on had to wait. As a side effect of event and thread scheduling work, I changed the way that threads are generated in vvm. The result is that threads should be a little faster at run time, and a lot faster at compile time. A *LOT* faster at compile time. (Apparently, Verilog XL is still considerably faster, but hey, I'm working on it.)
2000-04-28update for new qt2 layoutdrochner1-5/+4
2000-04-14sync with qt-2.0.2 locationdmcmahill1-4/+4
2000-04-09update to verilog-current-20000409.dmcmahill2-5/+5
changes since the last packaged snapshot include: Icarus Verilog 20000326 Snapshot: -------------------------------- The VVM backend rewrite continues. More templates are gone, and the bit functions have been pretty much rewritten. The vvm library now handles bit values with strengths, and most of the devices to the right things with those strengths. The most obvious implication of this is that you can write multiple drivers to a net and expect the values to be properly resolved, and in particular the HiZ value works as it should. So I am well on the way to completing strength modeling support. What is still missing is support for strength specifications in the Verilog source. Although the parser supports the strength related keywords, they are not passed on to elaboration, or used to generate drivers with the proper strengths. So that's in the works. While doing all this VVM rewrite, I've made the generated code considerably smaller. And of course fewer templates are used. The upshot of this is that compiles of larger designs should go a whole lot faster. This is important because people are using Icarus Verilog for increasingly larger designs. On some larger examples, I've achieved more then 3X compile time improvement. Icarus Verilog 20000409 Snapshot: -------------------------------- Named events now work! Event object declarations and trigger statements are fully supported, and blocking on a single event also works. I'm not up to named events in event lists because I'm in the midst of redesigning the way events on nets and regs are implemented. However, the common case works fine, so there you are. I've also added support for some more arithmetic operators. Division and Modulus now work in many contexts, and are not far from working everywhere. Also, comparison operators work in places they used to not. There was a compile error in memory objects that managed to slip through a couple snapshots, that I finally cured. The problem was pretty gross, but somehow not quite tickled by my tests. Oh well. I've integrated some VCD improvements from Anthony Bybell. Some of you recognize the name as the author of GTKWave, so if he says VCD works like so, then that's how VCD works:-) Anyhow, he fixed the VCD output to be more portable, and also a bit smaller when vectors are involved. He also fixed some bugs with multiple calls to $dumpvars.
2000-04-05make qt-2.0.2 package conform to hier(7) and update pkgs which depend ondmcmahill1-3/+4
it accordingly.
2000-04-02add 1 more missing libdmcmahill2-4/+4
2000-04-01remove -O2 when compiling "analyser.cpp" because it causesdmcmahill2-4/+18
the assembler on pmax (1.4.1) to never complete.
2000-04-01various ELF fixes.dmcmahill4-9/+45
- Make sure -Rpath is done correctly - Make sure qt libs are found - Make sure -lz -lpng -lSM are included as libqt needs functions from these libraries.
2000-04-01add missing configure argument for Qt location.dmcmahill1-2/+3
2000-03-28update to vipec-2.0.1dmcmahill8-46/+162
the previous pkg was based on a development version of vipec. This version is considered a stable release.
2000-03-28make qt1 install in its own directory instead of renaming its installeddmcmahill3-7/+11
components. This allows users of Qt to specify QTDIR=/path/to/qt instead of having to patch all configure scripts and makefiles to look for alternate names. This is the recommended approach from Troll Tech (Qt authors). update pkgs which use qt1 to reflect this.
2000-03-27Adapt to new handling of "${CONFIGURE}".tron2-4/+4
2000-03-26Update to acs-0.26. Changes (from ${WRKSRC}/doc/relnotes-026) are:dmcmahill3-7/+5
New features: 1. BSIM1, BSIM2 models -- DC only. 2. New elements: trans-capacitor voltage controlled capacitor voltage controlled conductance voltage controlled resistor 3. Optional new syntax, with type first so component labels can start with any letter, and the choice of components is no longer limited by the 26 letters. This was necessary for a clean syntax for #2. 4. Some new parameters on existing devices, also a side effect of the BSIM work. 5. The manual in HTML form. The manual source is still in LaTeX, which can be used to generate HTML, PDF, Postscript, or many other formats. Bug fixes: 1. An error causing truncation error to be underestimated has been fixed. Other improvements: 1. MOSFET model evaluation is a little faster, due to use of one of the new elements to replace several old ones. I have seen 40%, but 20% is more likely. The improvement is most evident on busy circuits, where the ACS speed enhancements based on latency exploitation contribute more overhead than their value, that is .. the type of circuit that has run faster in Spice than ACS. 2. More documentation on internals. Changes that I think are improvements, but some may disagree: 1. Truncation error based step control is disabled when Euler's method is selected. The justification for this is that the reason for selecting Euler's method is to avoid the artifacts of high order methods on "stiff" poles. Without this change, a "stiff" pole would cause an unreasonably small step size. This did not appear to be much of a problem in the old release because the use of an incorrect formula for estimating truncation error. A "stiff" pole is one that has a response so fast it can be thought of as instantaneous. 2. The "help" command, with its 4 year old help file, has been removed. The concept is really obsolete. With the HTML form of the manual, a full online manual is a better replacement.
2000-03-25Update to verilog-current-20000318.dmcmahill5-18/+21
Notable changes since the last pkg are (from the snapshot announcement): Parameters are complete. What this means is that I finally got around to supporting defparam, and while I was at it I rewrote the entire parameter handling and added the parameter support included in 1364-2000. I have rewritten major portions of the VVM backend. The vvm_nexus class has been introduced to the fray, and all the device implementations in the VVM library now use the nexus to drive and receive values. An advantage of this scheme is that the t-vvm backend code (in ivl proper) is simpler, and so is the generated C++ code. I also removed most of the template classes. This proved to be a huge compile-time benefit (though compiling twice as fast really only matters for large programs) and it doesn't seem likely to hurt run-time performance. A few remain, either because they seemed harmless (the N-wide logic gates) or I couldn't yet figure out a good way to replace them (vvm_bitset_t). A side benefit of this is that the vvm library may now be a modeling library that ordinary humans can use to write their models in C++. This may provide the unexpected benefit of heading me towards incremental compilation of designs. So who was it who was beating me over the head asking for that?-) I also fixed a few minor problems with the preprocessor. Those of you who reported problems with `includes and `defines should check this out.
2000-03-23move dependency from qt-1.44 to qt1-1.44dmcmahill3-13/+13
2000-03-14add and enable dinotracedmcmahill1-1/+2
2000-03-14Initial import of dinotrace-9.0gdmcmahill9-0/+1131
Dinotrace is a tool designed to aid in viewing Verilog Value Change Dump (.vcd), ASCII, Verilator, Tempest CCLI, COSMOS, Chango and Decsim Binary simulation traces. It is optimized for rapid design debugging using X-Windows Mosaic.
2000-03-09remove trailing `.'wiz1-1/+1
2000-03-07fix a patchfile bug which caused parse.cc to be compiled twice.dmcmahill2-6/+7
2000-03-07fix a bug in one of the patches that caused parse.cc to be built twice.dmcmahill2-6/+7
2000-03-07add and enable verilog-currentdmcmahill1-1/+2
2000-03-07Initial import of verilog-current. This pkg is for the development snapshotsdmcmahill8-0/+81
of the cad/verilog package. Development snapshots are created quite frequently in between stable releases.
2000-03-07Update to the released version 0.2 of verilog. I will be creating a seperatedmcmahill2-7/+10
verilog-current pkg to track development snapshots. This version has minor bug fixes over the previous snapshot package. Notable $display of a memory element now works correctly and a bug in $readmemb has been fixed.
2000-03-01add and enable gwavedmcmahill1-1/+2
2000-03-01Initial import of gwave-19990927.dmcmahill7-0/+64
Gwave is a viewer for spice-like simulator output and other analog data Gwave can read several file formats. It attempts to guess file formats based on filename, and then tries all file formats until one succedes. These file formats are known: CAzM transient output (*.[BNW]) HSPICE binary and ascii formats (*.tr0, *.sw0, *.ac0) Spice2 and Spice3 "raw" output (*.raw) An ascii format with whitespace-seperated columns and column headings, such as that produced by ACS (Al's circuit simulator). (*.acs, *.asc, *.ascii) The "Export Postscript" and "Export PNM" options on the main File menu provide the rudiments of output for inclusion in other documentation. They and simply write out files called gwave_out.ps and gwave_out.pnm into the current directory. In the future, a dialog box will allow configuring the print and export output.
2000-02-25remove commented out SUBDIR += lines for packages that never gotwiz1-8/+2
converted from FreeBSD, or have been disabled since. Sorted lines alphabetically, added some missing directories.
2000-02-22Update gEDA to 20000220.rh18-35/+74
Changes include: * New dialog boxes by Matt Ettus: - A much improved attribute edit dialog box - A multiple attribute edit dialog box * Improved Hierarchy Support: - Hierarchy/Down Schematic - Hierarchy/Down Symbol - Hierarchy/Up * Text alignment. * Attributes are now required to have no spaces besides the equals sign on each side. This shouldn't cause any problems for anybody. * Bunch of updates to the various gnetlist backends (basically all submitted changes have been integrated). Integration of JM Routoure's PCB backend work (Thanks!). Bug fixes and improvements by Matt Ettus, Stefan Petersen and Bas Gieltjes. * Added a bunch of contributed symbols. Thanks to all that have contributed! There are now 566 symbols in the library. * Documentation. There are the beginnings of docs now. Here's the current list: attributes.txt -- Master attribute list fileformats.html -- gEDA file formats gschem.txt -- The start of a serious user's guide keymapping.html -- Stefan's keymapping document netattrib.txt -- A HOWTO on the net= attribute symbols.html -- The ever useful symbol creation guide * Bug fixes and improvements to some of the utils. * Lots and lots of bug fixes (and bug introductions).
2000-02-16Add and enable oreganorh1-1/+2
2000-02-16Initial import of oregano-0.11, an application for schematic capture andrh7-0/+67
simulation of electrical circuits
2000-02-14update package to verilog-20000212. This release incorporates most of thedmcmahill14-665/+21
NetBSD pkgsrc patches to the previous release. Thanks to Stephen Williams (the author) for his willingness to accept patches!
2000-02-05remove unnecessary articlewiz1-1/+1
2000-01-26add and enable cascadedmcmahill1-1/+2