aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2017-03-14Style fixesAdam Izraelevitz
2017-03-14Added lesson2Adam Izraelevitz
2017-03-10Changed custom transform option and help textAdam Izraelevitz
2017-03-10Added comments and section in READMEAdam Izraelevitz
2017-03-10Added tutorial passAdam Izraelevitz
2017-03-10Added custom transform commandline optionAdam Izraelevitz
2017-03-10Added Circuit mappersAdam Izraelevitz
2017-03-09make sure infer-rw works for exclusive when statements (#481)Donggyu
2017-03-09Sint tests and change in serialization (#456)Adam Izraelevitz
SInt representation is no longer 2's complement, but instead a positive number (hex or base 10) that is optionally preceded by a sign (-+).
2017-03-06Zero width (#402)Adam Izraelevitz
* Added Zero width wires. Semantics: - No change to width inference rules, e.g. a<0> + b<2> = c<3> - Replace zero width wires with UInt<1>(0) or SInt<1>(0) - Performs constant prop. - Redo width/type inference * Remove errant println * Moved ZeroWidth after ConvertFixedToSInt * Added more tests, bugfix match on connect Also replaced constprop with infertypes for correctness * Updated to new emitter and test infrastructure
2017-03-06Fix mistake when rebasingAdam Izraelevitz
2017-03-06After merge, fixed added transformsAdam Izraelevitz
2017-03-06Added more stylized debugging styleAdam Izraelevitz
2017-03-06Addresses #459. Rewords transform annotations API.Adam Izraelevitz
Now, any annotation not propagated by a transform is considered deleted. A new DeletedAnnotation is added in place of it.
2017-03-06Added pass name to debug loggerAdam Izraelevitz
2017-03-06Add ability to emit 1 file per module (#443)Jack Koenig
Changes Emitters to also be Transforms and use Annotations for both telling an emitter to do emission as well as getting the emitted result. Helper functions ease the use of the new interface. Also adds a FirrtlExecutionOptions field as well as a command-line option. Use of Writers in Compilers and Emitters is now deprecated.
2017-03-03Bugfix: InlineInstances must prefix instancesAdam Izraelevitz
2017-03-01Allow nested digit fields in subfield expressionsJack Koenig
Workaround for #470. This allows parsing DoubleLits in subfield expressions.
2017-03-01Fix bug in Lexer rule for DoubleLit and add testsJack Koenig
2017-02-28Fix validation print for log-level (#394)Colin Schmidt
2017-02-27castrhs shouldn't assume rhs is uint (#467)Angie Wang
* castrhs shouldn't assume rhs is uint * don't cast if types are the same * changed castrhs to catch invalid lhs, rhs type combinations * change error msg
2017-02-27Add chisel2 isVCSAvailable, isCommandAvailable to FileUtils. (#439)Jim Lawson
2017-02-26Align types and names of ports in emitted Verilog (#463)Jack Koenig
2017-02-23move more general utils out of memutils, mov WIR helpers to WIR.scala and ↵Angie
update uses
2017-02-23messed up clocktype matchAngie
2017-02-23fix bug in blackboxsourcehelper apply -- pointed to wrong transformAngie
2017-02-23added more helpersAngie
2017-02-23Add support for bundle fields to start with digits (#462)Jack Koenig
Also remove parsing support for ids with characters not supported in Verilog nor in the Firrtl spec
2017-02-23Fix warning from Cadence IncisiveScott Johnson
The fix for PR #305 caused a new compile warning from Cadence Incisive: always @(*) begin end | ncelab: *W,STARMT (../TestHarness.MyConfig.v,196147|9): This @* expands to empty list, will never wake up. This change satisfies all of: VCS, Incisive, Questa, Vivado, Verilator.
2017-02-22[stevo]: Adams fixStevo Bailey
2017-02-21Implementation of nodedupe mem (#447)Colin Schmidt
This allows the replseqmem transform to not deduplicate some memories, based on their name.
2017-02-14Add support for Analog types in partial connect (#435)Jack Koenig
Also add support for width inference
2017-02-14Fixes #441, ConvertFixedToSInt not recursing expsAdam Izraelevitz
2017-02-14Add println/throwInternalError to EmitterAdam Izraelevitz
2017-02-13Emit memories larger than 512 MB with a sparse annotation (#438)Colin Schmidt
This comment causes vcs to treat this as a spare memory, so it will dynamically allocate the required memory, and can support very large reg constructs this way. This is useful for test bench memories that might be simulating back DRAM or the like.
2017-02-12Changed fixed-point cat semantics to return uint (#436)Adam Izraelevitz
2017-02-07Rework Attach to work on arbitrary Analog hierarchies (#415)Jack Koenig
* Rework Attach to work on arbitrary Analog hierarchies If there are zero or one Analog sources in an Attach (source meaning wire or parent module port), then the Attach will be emitted as a simple point to point connection. In the general case, alias is used for simulation while forwards and backwards assigns for synthesis. Verilator does not currently support the general case so an `ifdef Verilator `error is emitted. * Add helper functions for creating WRef from Reg and Wire
2017-02-07Return a new circuit object after execution (#433)Colin Schmidt
This fixes an issue I was having with my ClockListAnnotations being duplicated. h/t @azidar
2017-02-06Fix stack overflow from massive MaxWidth chains during width inference (#407)Jack Koenig
Fixes ucb-bar/chisel3#420
2017-02-01Fix anno in backend (#428)Chick Markley
* fixed up impementation of deleteDirectoryHierarchy Added a few more tests * Round 2 of moving verilog to target dir Only create .f file if some files have been moved Some small style fixes in Driver Restored lost functionality to add -f argument in verilogToCpp Fixed loadAnnotations to add targetDir regardless of annotations arriving from file or through options
2017-02-01Fetch resource files as resources. (#399)Jim Lawson
This is similar to pr #392 - fetch the resource as a resource, not as a random file otherwise the test will fail if it is executed anywhere outside of the actual source directory.
2017-01-31Replace createTempDirectory with createTestDirectory (#427)Jack Koenig
Will place tests in ./test_run_dir/ instead of /tmp/
2017-01-31Blackboxhelper (#418)Chick Markley
* First pass at implementing a annotation based mechanism to move black box verilator files into the target directory * A little bit of style cleanup * A little bit of style cleanup * Fix the driver, wasn't appending targetDir properly Add some docs * test had wrong value now that targetdir is added to annnos * Now saves a list of all black box verilog files moved into target directory. Then creates a file black_box_verilog_files.f that contains this list with -v prepended to each line * Made black box source helper be low to low form Added it to the verilog compiler transforms Added a test to make sure it got there * targetDir annotation is targeted to a CircuitName("All")
2017-01-29Keep firrtl's simulation environment in sync with chisel's. (#425)Jim Lawson
2017-01-27Fix signed types (#422)Angie Wang
* type conversions between sint/fixed and uint added at memory interfaces for replseqmem * turns out asFixed requires bp as constant in PrimOps (really should be documented) * fixed legalizeconnects to handle FixedPt * added tests for replseqmem failure with signed types
2017-01-27Move BackendCompilationUtilities into a util package for use by chisel3. (#400)Jim Lawson
* Move BackendCompilationUtilities into a util package for use by chisel3. Some of this could be moved into a more general tools package, but since chisel3 already has a dependency on firrtl ... * Push util down into firrtl so as not to conflict with scala.util.
2017-01-23Add FixedType to uniqueify match statement.Paul Rigge
Add a test for cmem and smem with fixed point numbers
2017-01-22use new annotations correctly for wiring (#416)Colin Schmidt
2017-01-20Remove merging of source locators during module deduplicationJack
2017-01-20Add MultiInfo. Speedup Info concatenation. Fixes #391Jack