Commit Graph

4575 Commits

Author SHA1 Message Date
Howard Mao
8d029185ca separate mmio read/write functions by size 2017-06-26 20:25:37 -07:00
Howard Mao
f766dcc550 merge the different ExampleTop subclasses into the example package 2017-06-26 16:29:04 -07:00
Howard Mao
31f5fc98e4 fix multi-tracker block device 2017-06-23 22:50:54 -07:00
Howard Mao
2b773a2e51 BlockDevice can now specify max request length 2017-06-23 17:17:21 -07:00
Howard Mao
8505078c41 fixup licensing and attribution 2017-06-23 13:12:57 -07:00
Howard Mao
119e563ea6 fix verilator build 2017-06-22 17:41:48 -07:00
Howard Mao
9a9ebea207 add new (Tilelink2) RoCC accelerator interface
Includes configuration, test programs, and documentation updates.
2017-06-22 16:43:14 -07:00
Howard Mao
634cad9e78 update README 2017-06-22 11:58:19 -07:00
Howard Mao
a1d866c344 fix chisel3 deprecations 2017-06-22 10:04:47 -07:00
Howard Mao
bac811a173 add ExampleTopWithBlockDevice and tests 2017-06-21 11:09:55 -07:00
Howard Mao
1f3e892b64 update to latest rocket-chip 2017-06-21 11:05:40 -07:00
Howard Mao
0d821efb5f use RegisterRouter to simplify PWM 2017-06-12 10:55:03 -07:00
Howard Mao
3e2b6a1d55 make clean should clean everything
Also add "make clean" for verisim"
2017-06-07 17:14:46 -07:00
Howard Mao
ab87f7d487 make sure first-stage bootloader loads a0 and a1 as expected by pk 2017-06-07 17:13:05 -07:00
Howard Mao
e0590df7a2 update rocket-chip and testchipip 2017-06-05 15:07:33 -07:00
Howard Mao
44aa4e25a9 move generic mmio functions to header file 2017-05-29 14:33:43 -07:00
Howard Mao
062d443863 upgrade to latest rocket-chip 2017-05-25 12:55:52 -07:00
Howard Mao
a123d82677 bump submodules 2017-05-09 16:25:44 -07:00
Howard Mao
363f530b05 make sure pwm test returns success 2017-05-08 10:04:55 -07:00
Howard Mao
27bd063441 update to tilelink2 2017-04-20 18:12:44 -07:00
Colin Schmidt
2fecb10cfc Merge pull request #4 from ucb-bar/publish-local
Publish firrtl locally first, to make Chisel happy
2017-04-06 10:09:13 -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
Ben Keller
25bf3f7e01 Update README with workaround for dependency issues 2017-03-24 10:16:39 -07:00
Ben Keller
27095a4450 Revert "Publish firrtl locally first, to make Chisel happy"
This reverts commit 5491173a0a.
2017-03-24 10:06:01 -07:00
Ben Keller
5491173a0a Publish firrtl locally first, to make Chisel happy 2017-03-23 17:27: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
Howard Mao
9987d8dbcd fix deprecation warnings 2017-02-08 11:29:31 -08:00
Howard Mao
adb8c80ab3 change up gitignore rules 2017-02-07 17:37:26 -08:00
Howard Mao
9ed41fc3dc fully switch to chisel3 2017-02-07 17:33:38 -08:00
Howard Mao
41f439a2c3 fix submodule URLs 2017-01-17 11:13:02 -08:00
Howard Mao
2ca0523c93 bumpd rocket-chip for fesvr change 2017-01-17 10:57:32 -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
Howard Mao
9215c82f14 update testchipip 2016-12-07 13:21:00 -08:00