is there diplomacy branch for chisel3?

153 views
Skip to first unread message

Edmond Cote

unread,
Oct 24, 2017, 2:24:35 PM10/24/17
to chisel-users
This doesn't work too well together.

import chisel3._
import freechips.rocketchip.diplomacy._ // uses import Chisel._

[..] my chisel3 code here [..]

Error:(30, 58) Symbol 'type Chisel.package.Record' is missing from the classpath.
This symbol is required by 'class freechips.rocketchip.diplomacy.AutoBundle'.

Is there a branch that removes use of the compatibility layer from diplomacy?

Thanks,

Ed


Jack Koenig

unread,
Oct 24, 2017, 3:21:32 PM10/24/17
to chisel...@googlegroups.com
I haven't run this code myself but here is an example using import chisel3._ and diplomacy: 


You *should* be able to interoperate compatibility code with chisel3._ code. The issue could also be a classpath/build system issue so if emulating the above code does not solve your problem, could you provide more information about how you're building everything?

Thanks,
Jack

--
You received this message because you are subscribed to the Google Groups "chisel-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chisel-users+unsubscribe@googlegroups.com.
To post to this group, send email to chisel...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/chisel-users/CALzVNFARecUCJgPnSu%3Dq0K__sP-6B%3DtBSsL1UdB9ArZPChQYuw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Edmond Cote

unread,
Oct 24, 2017, 3:27:30 PM10/24/17
to chisel...@googlegroups.com
I converted some code to chisel2 i.e. Input(Bool -> UInt(INPUT, 1 (and so forth) and was able to make some progress.

It's likely a build issue now.  I'll sporadically get the classpath dependency message or sometimes the unit test will run.  This is through trying different methods: IntelliJ, sbt, manually wiping workspace, invalidating caches, etc.

My build env might be different. I  am importing diplomacy via rocketchip in my build.sbt file.

// version to the artifact name.
libraryDependencies ++= Seq(
  "org.scalatest" %% "scalatest" % "3.0.4" % "test",
  "edu.berkeley.cs" %% "chisel3" % "3.1-SNAPSHOT",
  "edu.berkeley.cs" %% "firrtl" % "1.1-SNAPSHOT",
  "berkeley" %% "rocketchip" % "1.2"
)



On Tue, Oct 24, 2017 at 12:21 PM Jack Koenig <jack.k...@gmail.com> wrote:
I haven't run this code myself but here is an example using import chisel3._ and diplomacy: 


You *should* be able to interoperate compatibility code with chisel3._ code. The issue could also be a classpath/build system issue so if emulating the above code does not solve your problem, could you provide more information about how you're building everything?

Thanks,
Jack

On Tue, Oct 24, 2017 at 11:24 AM, Edmond Cote <edm...@pnlsys.com> wrote:
This doesn't work too well together.

import chisel3._
import freechips.rocketchip.diplomacy._ // uses import Chisel._

[..] my chisel3 code here [..]

Error:(30, 58) Symbol 'type Chisel.package.Record' is missing from the classpath.
This symbol is required by 'class freechips.rocketchip.diplomacy.AutoBundle'.

Is there a branch that removes use of the compatibility layer from diplomacy?

Thanks,

Ed


--
You received this message because you are subscribed to the Google Groups "chisel-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chisel-users...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "chisel-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chisel-users...@googlegroups.com.

To post to this group, send email to chisel...@googlegroups.com.

Edmond Cote

unread,
Oct 24, 2017, 3:30:50 PM10/24/17
to chisel...@googlegroups.com
++
adding -Ylog-classpath (which is suggested for debug) to scalacOptions occasionally fixed the problem :)

Will report back once I make progress.  If you/anyone has hints, it'd be appreciated!


Edmond Cote

unread,
Oct 24, 2017, 5:57:42 PM10/24/17
to chisel...@googlegroups.com

Ok, here's the issue.  Always helps to step away for an hour or two.

My build was referencing both  chisel[..].jar and chisel3[..].jar (see red and orange)

  directory classpath: /home/edc/.ivy2/local/berkeley/macros_2.11/1.2/jars/macros_2.11.jar
  directory classpath: /home/edc/.ivy2/local/edu.berkeley.cs/hardfloat_2.11/1.2/jars/hardfloat_2.11.jar
  directory classpath: /home/edc/.ivy2/local/edu.berkeley.cs/firrtl_2.11/1.1-SNAPSHOT/jars/firrtl_2.11.jar
  directory classpath: /home/edc/.ivy2/cache/edu.berkeley.cs/chisel_2.11/jars/chisel_2.11-2.2.38.jar
  directory classpath: /home/edc/.ivy2/local/edu.berkeley.cs/chisel3_2.11/3.1-SNAPSHOT/jars/chisel3_2.11.jar

The dependency on chisel[..].jar was from my hardfloat built which wasn't picking up the correct version.

[info]   | +-edu.berkeley.cs:hardfloat_2.11:1.2 [S]
[info]   | | +-edu.berkeley.cs:chisel_2.11:2.2.38 [S]

Thanks for sending the example and your offer of support.

-Ed

Guy Hutchison

unread,
Aug 8, 2018, 2:49:52 PM8/8/18
to chisel-users
I looked at this repo as I'm trying to figure out how to incorporate some rocket chip blocks into my design, but I can't see from the repo how to add rocket chip files to the build path.  The build.sbt file is very minimal.

I tried adding rocket-chip as a submodule and adding this line to my build.sbt:

unmanagedSourceDirectories in Compile += baseDirectory.value / "rocket-chip" / "src"


But this results in a large number of errors.  Is there a canonical way to include "library" repositories into a project?

- Guy

On Tuesday, October 24, 2017 at 12:21:32 PM UTC-7, Jack Koenig wrote:
I haven't run this code myself but here is an example using import chisel3._ and diplomacy: 


You *should* be able to interoperate compatibility code with chisel3._ code. The issue could also be a classpath/build system issue so if emulating the above code does not solve your problem, could you provide more information about how you're building everything?

Thanks,
Jack
On Tue, Oct 24, 2017 at 11:24 AM, Edmond Cote <edm...@pnlsys.com> wrote:
This doesn't work too well together.

import chisel3._
import freechips.rocketchip.diplomacy._ // uses import Chisel._

[..] my chisel3 code here [..]

Error:(30, 58) Symbol 'type Chisel.package.Record' is missing from the classpath.
This symbol is required by 'class freechips.rocketchip.diplomacy.AutoBundle'.

Is there a branch that removes use of the compatibility layer from diplomacy?

Thanks,

Ed


--
You received this message because you are subscribed to the Google Groups "chisel-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chisel-users...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages