aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-09-07clean up Emitter.scala (#275)Donggyu
2016-09-07clean up SplitExpressionsDonggyu Kim
2016-09-07clean up LowerTypesDonggyu Kim
2016-09-07Merge pull request #271 from ucb-bar/cleanup_utilsAdam Izraelevitz
Clean up Utils
2016-09-07clean up PullMuxes & ExpandConnectsDonggyu Kim
2016-09-07clean up Utils.scalaDonggyu Kim
remove unnecessary functions & change spaces
2016-09-07remove Utils.ONEDonggyu Kim
2016-09-07remove Utils.tpeDonggyu Kim
2016-09-07Utils.scala: remove vars with foldDonggyu Kim
2016-09-07Merge pull request #256 from ucb-bar/fix_boom_errorsJack Koenig
Fix performance bug with remove accesses
2016-09-07Added ReplaceSubAccesses before RemoveSubAccessesazidar
2016-09-07add caches for create_exps in RemoveAccessDonggyu Kim
2016-09-07clean up RemoveAccessesDonggyu Kim
2016-09-06optimize equals of WrappedExpression & WrappedTypeDonggyu Kim
2016-09-06remove unnecessary mappers in NamespaceDonggyu Kim
there's a big stack overhead with mappers
2016-09-06replace flatMap with foldLeft in create_expsDonggyu Kim
internal implementation for flatMap seems to be inefficient
2016-09-06Address style feedback and add tests for getConnectOrigin utilityAngie
2016-09-06Support optionally filling write mask to data width via transform input ↵Angie
config file
2016-09-06Expanded annotations for valid memory sizesAngie
2016-09-06Edited conf generation to handle mem namespace collisionAngie
* Also started separate pass for annotating valid memory
2016-09-06Made the connect origin function more powerfulAngie
* It analyzes through statements that ConstProp would've optimized * Edge case wmask can be removed (pass tries harder to figure out that wmask = wen)
2016-09-06Added simple unit test for ReplSeqMemAngie
2016-09-06Added back support for conf writing.Angie
* Conf file info is passed in through annotations. * A pass should have its own set of sub-arguments delimited by :
2016-09-06Changed wmask to convert from VecType to UIntAngie
* Instead of filling the whole data width * Added helper functions in MemUtils
2016-09-06Replace DefMemories with wrapped black boxAngie
* Note, this version uses Albert's toBitMask function, * which expands the bit mask to be the full data width (similar to Chisel2 output) * Black boxes only have wmasks as needed
2016-09-06Pulled out duplicate memory annotationsAngie
* Annotate reference * Changed memory port names to RWx, Wx, Rx, etc. and reconnected nodes
2016-09-06Corrected counting for VectorTypes in MemUtilsAngie
* Was originally adding one extra set of things (to -> until) * MemPortUtil conditionally includes wmask, if necessary Changed endian-ness of write data/mask to match convention (little endian)
2016-09-06Pulled out memory annotation (write mask)Angie
* Annotates all sequential memories that can be black boxed. * Annotates sequential memories that don't need write masks.
2016-09-06Generated *.conf file for unique sramsAngie
2016-09-06Minor utility changes.Angie
* Corrected names to match current RW port spec * Added Jack's Namespace on Circuit
2016-09-06Added starter code for SMem replacementAngie
2016-09-05Change null statement to empty begin end (#264)Colin Schmidt
this eliminates warnings in recent versions of VCS
2016-08-31Bump version number in preparation for release.Jim Lawson
2016-08-25emit wires instead of registers for invalid randomizationHoward Mao
Before, the verilog emitter would connect registers to the invalid ports and use random initialization on the generated registers. It is better to generate wires instead and use random assignment on the wires.
2016-08-25update verilog generation testHoward Mao
2016-08-25Finer grained control over randomizationHoward Mao
We previously had `ifdef guards on some parts of the emitted verilog to control whether some registers or nets should be given random initial values. These guards were all dependent on the RANDOMIZE macro. However, there were actually three separate cases being controlled 1. Giving random values to disconnected wires 2. Random initialization of registers 3. Random initialization of memories It is possible that the designer would want to switch these three on or off independently in simulation. For instance, the latter two are usually safe because registers and memories will get some definite binary value at power on in the actual circuit, but the first one can be quite dangerous because the undriven wire could be metastable. This change provides separate macros for each of the three sets of guards so that they can be controlled independently.
2016-08-18emit correct enable signals for memories (#242)Donggyu
2016-08-18Add MemUtils to aid in interfacing with alternate memory implementations (#244)Albert Magyar
2016-08-18Remove redundant test and errors.append() in check_types_e(). (#243)Jim Lawson
2016-08-17Change RW port names (#236)Angie Wang
* Updated FIRRTL spec + related code for readwrite ports. (write) data -> wdata & mask -> wmask for clarity * Also removed simple.fir that snuck into master branch.
2016-08-17Fixed cmdline usage string (#235)Adam Izraelevitz
Now prints usage when given incorrect arguments
2016-08-16Spec bugfix: update concrete reg syntax example (#233)Adam Izraelevitz
Also added clock to reg's abstract syntax
2016-08-16add test case for clock type connection (#239)mwachs5
2016-08-15Update README.mdAdam Izraelevitz
Added help string #234
2016-08-15Update README.mdAdam Izraelevitz
2016-08-15Remove stanza (#231)Adam Izraelevitz
* Removed stanza implementation/tests. In the future we can move the stanza tests over, but for now they should be deleted. * Added back integration .fir files * Added Makefile to give Travis hooks * Added firrtl script (was ignored before)
2016-08-12Fix calculation of runtime for ANTLR Parser (#229)Jack Koenig
2016-08-12Merge pull request #228 from mwachs5/connect_clock_typeAdam Izraelevitz
Add missing case for connecting ClockType
2016-08-12Add missing case for connecting ClockTypeMegan Wachs
2016-08-09provide parser for naive string (#227)Donggyu