1
0
rocket-chip/junctions
Palmer Dabbelt 6b39db8ce6 Add "NastiMemorySelector", a memory interconnect
On Hurricane we want to be able to support multiple memory channels but have a
fallback to fewer, since the full configuration is going to require a
complicated FPGA setup.  This adds another sort of interconnect that can switch
between having different numbers of top-level memory channels active at chip
boot time.

This interconnect is a bit funny: changing the select input when there is
memory traffic is a bad idea.  This is fine for this use case, since we really
only care about changing the memory configuration at boot time -- since it'll
scramble the memory of the machine it's not so useful, anyway.

The advantage is that we don't have to have a full 8x8 Nasti crossbar in our
chip, which would be fairly expensive.  Changing the crossbar would garble
memory as well, so it's not like it would add any extra functionality.
2016-02-16 23:59:01 -08:00
..
project source and build files. source code pulled from uncore and zscale repos 2015-07-29 18:02:58 -07:00
src/main/scala Add "NastiMemorySelector", a memory interconnect 2016-02-16 23:59:01 -08:00
.gitignore Initial commit 2015-07-28 15:52:07 -07:00
build.sbt Add ability to generate libraryDependency on cde. 2015-10-22 09:52:26 -07:00
LICENSE Update LICENSE 2015-07-28 16:07:30 -07:00
README.md Update README.md 2015-07-28 16:20:18 -07:00

junctions

A repository for peripheral components and IO devices associated with the RocketChip project.

To uses these modules, include this repo as a git submodule within the your chip repository and add it as Project in your chip's build.scala. These components are only dependent on Chisel, i.e.

lazy val junctions = project.dependsOn(chisel)