Commit Graph

42 Commits

Author SHA1 Message Date
Edward Wang
8beb8b3f6f Don't unbox BigInt to Double 2017-10-03 11:56:30 -07:00
Edward Wang
bb2783994a Only use powers of two masks, for now 2017-10-03 11:56:30 -07:00
Edward Wang
cf0d40f658 Fix typos 2017-10-03 11:56:30 -07:00
Edward Wang
80ca2e538f Use require statement 2017-10-03 11:56:30 -07:00
Edward Wang
3cb424cf80 Add non power of two tests 2017-10-03 11:56:30 -07:00
Edward Wang
42febeb32a Rename files 2017-10-03 11:56:30 -07:00
Edward Wang
c79ea47909 Port to MDF library and start re-developing tests 2017-10-03 11:56:30 -07:00
Donggyu Kim
57b0fec78e anonymize technology 2017-10-03 11:56:30 -07:00
Donggyu Kim
aeb303a61b Colin's fixes 2017-10-03 11:56:30 -07:00
Donggyu Kim
2fd928fbe0 fix cost 2017-10-03 11:56:30 -07:00
Donggyu Kim
02fef8e2c3 graceful handling of empty files 2017-10-03 11:56:30 -07:00
Donggyu Kim
9e7c8dce3e add SynFlops 2017-10-03 11:56:30 -07:00
Donggyu Kim
4f5a9ae02e connect extra ports 2017-10-03 11:56:30 -07:00
Donggyu Kim
98155dd831 tests for macro compiler 2017-10-03 11:56:30 -07:00
Donggyu Kim
f3d39ad08f initial port attempt for macro compiler 2017-10-03 11:56:30 -07:00
Adam Izraelevitz
c5d01ba19c Added retime annotation 2017-09-06 14:44:09 -07:00
Adam Izraelevitz
96939c9ab6 Moved clkgen -> .clkgen and pads -> .pads
They no longer compile with the latest Chisel/FIRRTL, and
may not be supported. However, future work will need them, so
this keeps the files around but are ignored by sbt.
2017-09-06 14:44:09 -07:00
Chick Markley
16846b86fd DiGraph was being being confused with the DigGraph in firrtl. This led to pathological exceptions (#22)
No such method error on accessing a lazy val.
InstanceGraph seemed also to be a duplicate of firrtl code
---
IOPadSpec fails no two tests but these seem to be at least an ordinary error. And should be debugged separately
2017-04-04 10:47:59 -07:00
Angie Wang
5b5c8c82db Revert "[stevo]: add custom analog annotation" (#21)
* Revert "[stevo]: add custom analog annotation (#20)"

This reverts commit 7ad088503f.
2017-04-02 13:12:51 -07:00
Angie
9305dd08eb remove functionality from clkgen pass due to compatibility issue with latest firrtl 2017-04-02 04:34:38 -07:00
Angie
7c0e6c89d2 firrtl still hasn't fixed the problem with wir primops 2017-04-02 04:26:27 -07:00
Angie Wang
7ad088503f [stevo]: add custom analog annotation (#20) 2017-04-02 04:12:31 -07:00
Angie Wang
a13869b6aa Refactor repo for lastest changes to firrtl transform api changes (#19) 2017-04-02 04:10:46 -07:00
Angie Wang
5574354f55 Fft changes (#17)
* modified CustomBundle to also apply on Int

* programmatic bundle should take T <: Data instead of Data

* turns out indexedElements doesn't synthesize

* had to change a bunch of files to get clk/pads compiling again with recent firrtl mods

* modified CustomBundle to also apply on Int

* programmatic bundle should take T <: Data instead of Data

* turns out indexedElements doesn't synthesize

* had to change a bunch of files to get clk/pads compiling again with recent firrtl mods

* clk phases should be less than divby amount

* make clkconstraint error more descriptive

* don't make custom*bundle final

* nevermind. bundles need to be final.

* turns out making the bundle non-final was ok...

* removed infertypes from clksrctransform. seems like it doesn't work @ low firrtl?
2017-04-02 03:49:49 -07:00
Stevo
f4a8715fa4 Combine generates, make it a trait (#11)
* [stevo]: combine generates, make it a trait

* [stevo]: add Generator ala rocket-chip, some other cleanup

* [stevo]: remove Generator, since that generates firrtl...

* [stevo]: still debugging

* [stevo]: okay i think it works now

* [stevo]: oops

* Refactor new generate code. Mostly just style stuff.
2017-03-22 14:37:26 -07:00
chick
2d7806ca79 I would like to take the scalatest version here back to 2.2.5 because it causes problems with IntelliJ right now.
I don't see any specific features of 3.0.0 that are being used here.
2017-03-16 11:48:53 -07:00
Adam Izraelevitz
35b325dc81 Update README.md with example invocation (#16) 2017-03-15 12:16:22 -07:00
Edward Wang
d039935642 Typo 2017-03-15 00:28:30 -07:00
Angie Wang
f7056f3529 Fft changes (#15)
* modified CustomBundle to also apply on Int

* programmatic bundle should take T <: Data instead of Data

* turns out indexedElements doesn't synthesize

* had to change a bunch of files to get clk/pads compiling again with recent firrtl mods
2017-03-14 23:59:57 -07:00
edwardcwang
164bf2152c RegInit is no longer in util (#14) 2017-03-14 23:24:31 -07:00
Adam Izraelevitz
4745d29912 Fix transforms for firrtl/#459 issue. (#13) 2017-03-14 23:00:49 -07:00
Adam Izraelevitz
e8dc1035bf Fix for firrtl issue 459, reworking annotation API 2017-03-13 11:08:58 -07:00
Angie Wang
f1c437f830 Add Pads + other utilities (#7)
[stevo]: adds a bunch of pad frame commits, as well as beginning work on clocking annotations and constraints


* start add io pads pass

* save progress adding yaml pad info

* saving some semi-presentable work -- parses yaml for pad templates and associates templates with ports

* added black boxes to the module; still need to hook up

* added supply pad yaml example; added option to not include pad for an IO, blackboxed that cat + bit extraction functions

* rewrite createbbs and some other parts of the transform

* finally got blackboxhelper to work -- seems there was a typo in the firrtl pass (?) have not connected them up properly in the padframe

* finished first version of pad transform; need to add bells and whistles + special case stuff

* made a bunch of changes in firrtl to shorthand things

* done with padframe for signals

* started major refactoring; first of pad yaml stuff

* forgot to update verilogTemplate -> verilog

* rename ParsePadYaml -> ChipPadsYaml; moved some stuff

* separated out stuff that describes pads i.e. direction, type, side

* forgot to update import for yamlhelpers

* trying to make the process of creating annotations more structured

* saving annotation helpers but prob better to switch to yaml

* saving changes -- reworking annotations

* fixing some bugs; properly annotated ports with pads

* annotate supply pads

* lesson (re)learned. cleaned up constants

* finished adding supply pads to pad frame; still need to generate io file

* also committing updated transform; still without io file

* big typo was causing pad verilog files not to be generated

* verilator passes with transform; had to fix verilog bb typo

* added unused pads; added more thorough tests + did visual inspection of output; made some port types more explicit

* renamed files/classes to be clearer

* started creating pad io template

* update spec so that transform order matters

* get rid of logger

* went around in circles with blackboxhelper + way to annotate

* finished adding + testing pad.io creation

* starting clkgen pass -- made model for asynchronously reset clk divider + wrappers for programmatic bundling

* temporarily locating albert's utility functions here

* saving work on clk constraints

* redid input config passing -- pass in tech directory instead; seems like getting clk sink, src, and relationship works

* not done; need to pause to do tapeout-y things. the clk gen pass gets all the clks and their sources, but i need to build a proper graph to handle clks coming out of muxes
2017-03-05 18:50:56 -08:00
Colin Schmidt
e09cbe5b7e Create readme
add a readme with a single pass some could write
2017-02-22 11:54:54 -08:00
Colin Schmidt
43f1a699ad Move passes from pfpmp to barstools. (#5)
* Move passes from pfpmp to barstools.

* add an app that does both the harness and top generation

This reduces the number of firrtl.compile calls

* Add the ability to read annotations file

This helps with chisel annotation integration
2017-02-21 11:11:33 -08:00
Angie Wang
d86dea58cf Tapeout (#4)
* remove outdated files

* pulled resetinverter from dsptools + setup repo

* fix some package names, misc. dsptools dependencies, typo in build.sbt, + circuitstate in resetinverter pass

* add more comprehensive gitignore + license back in

* create directory structure to match package structure

* change package names to barstools.tapeout

* settled on barstools.tapeout.transforms package

* make directory + build structure more amenable for multiple sub projects
2017-02-17 11:58:05 -08:00
Chick Markley
e21e50dd91 Merge pull request #2 from ucb-bar/option-alter-quibble
Change spec to show a better way to change options
2016-12-14 11:07:58 -08:00
chick
4b6110f0f6 Change spec to show a better way to change options 2016-10-27 10:25:58 -07:00
Chick Markley
a1c7742a57 Add ExecutionOptionsManager
Taken from https://github.com/ucb-bar/firrtl
2016-10-25 11:46:35 -07:00
Jack
52e8b6b04a Add *.swp to .gitignore 2016-10-24 20:56:34 -07:00
Jack
08855aaa64 Add BSD License 2016-10-24 19:49:10 -07:00
Jack Koenig
618d6b5db3 Initial commit 2016-10-24 19:46:38 -07:00