successfully interger in rocketchip

This commit is contained in:
RuigeLee
2023-07-13 17:38:01 +08:00
parent 02ec89bda5
commit 25584bf6f5
4 changed files with 30 additions and 94 deletions

View File

@@ -1,55 +0,0 @@
# Workflow to cleanup projects created from this template
# Adapted from workflow of the same name in https://github.com/JetBrains/intellij-platform-plugin-template
# SPDX-License-Identifier: Apache-2.0
name: Template Cleanup
on:
push:
branches: [main]
jobs:
# Triggered on first push to repos created from the template
template-cleanup:
name: Template Cleanup
runs-on: ubuntu-latest
if: github.event.repository.name != 'chisel-template'
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Cleanup
run: |
export LC_CTYPE=C
export LANG=C
# Prepare variables
NAME="${GITHUB_REPOSITORY##*/}"
ORG="$GITHUB_REPOSITORY_OWNER"
SAFE_ORG=$(echo $ORG | sed 's/[^a-zA-Z0-9]//g' | tr '[:upper:]' '[:lower:]')
GROUP="com.github.$SAFE_ORG"
# Replace placeholders
sed -i "s/%NAME%/$NAME/g" build.sbt build.sc README.md
sed -i "s/%REPOSITORY%/${GITHUB_REPOSITORY/\//\\/}/g" README.md
sed -i "s/%ORGANIZATION%/$GROUP/g" build.sbt
# Remove lines marked with #REMOVE-ON-CLEANUP#
sed -i '/#REMOVE-ON-CLEANUP#/d' README.md
rm -rf \
.github/workflows/template-cleanup.yml \
LICENSE
- name: Commit
run: |
git config --local user.email "action@github.com"
git config --local user.name "GitHub Action"
git add .
git commit -m "Template cleanup"
- name: Push changes
uses: ad-m/github-push-action@v0.6.0
with:
branch: main
github_token: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -1,27 +0,0 @@
name: Continuous Integration
on: [push, pull_request]
jobs:
ci:
name: ci
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Cleanup
run: sed -i "s/%NAME%/test/g" build.sc
- name: Setup Scala
uses: olafurpg/setup-scala@v10
with:
java-version: adopt@1.8
- name: Setup Mill
uses: jodersky/setup-mill@v0.2.3
with:
mill-version: 0.9.7
- name: Cache Scala
uses: coursier/cache-action@v5
- name: SBT Test
run: sbt test
- name: mill Test
run: mill _.test

View File

@@ -15,11 +15,12 @@ class Mac(implicit p: Parameters) extends LazyModule with HasMacParameters{
TLManagerNode(Seq(TLSlavePortParameters.v1(
managers = Seq(TLSlaveParameters.v1(
address = Seq(AddressSet(0x30000000L, 0x0FFFL)),
regionType = RegionType.UNCACHED,
regionType = RegionType.VOLATILE,
executable = false,
supportsGet = TransferSizes(32/8, 32/8),
supportsPutFull = TransferSizes(32/8, 32/8),
supportsPutPartial = TransferSizes(32/8, 32/8)
fifoId = Some(2),
supportsGet = TransferSizes(8/8, 32/8),
supportsPutFull = TransferSizes(8/8, 32/8),
supportsPutPartial = TransferSizes(8/8, 32/8)
)),
beatBytes = 32/8)))

View File

@@ -1,19 +1,36 @@
package MAC
import chisel3._
import org.chipsalliance.cde.config.Field
import freechips.rocketchip.subsystem.BaseSubsystem
import freechips.rocketchip.diplomacy.{LazyModule,BufferParams}
import freechips.rocketchip.tilelink.{TLBuffer, TLIdentityNode, TLWidthWidget, TLFragmenter}
import freechips.rocketchip.diplomacy._
import freechips.rocketchip.tilelink._
import org.chipsalliance.cde.config._
trait WithManyMacMix { this: BaseSubsystem =>
val mac = LazyModule(new Mac)
val mac0 = LazyModule(new Mac)
fbus.coupleFrom("mac_mst") { _ := TLBuffer() := mac.tlClientNode }
pbus.coupleTo("mac_cfg") { mac.tlMasterNode := _ } //TLFragmenter(4, pbus.blockBytes) := TLWidthWidget(pbus.beatBytes) :=
fbus.coupleFrom("mac_mst") { _ := TLBuffer() := mac0.tlClientNode }
pbus.coupleTo("mac_cfg") { mac0.tlMasterNode := TLFragmenter(pbus) := _ }
ibus.fromSync := mac0.int_node
}
trait WithManyMacMixModuleImp extends LazyModuleImp {
val outer: WithManyMacMix
val macIO = IO(new MacIO)
macIO <> outer.mac0.module.io
}
class MacConfig() extends Config((site, here, up) => {
case MacParamsKey => MacSetting()
})
ibus.fromSync := mac.int_node
}