首页 > 其他 > 详细

chisel入门2--生成verilog

时间:2019-07-26 12:05:20      阅读:208      评论:0      收藏:0      [点我收藏+]

 

新建文件GCD.scala

 1 import chisel3._
 2 
 3   class GCD extends Module {
 4     val io = IO(new Bundle {
 5       val a  = Input(UInt(32.W))
 6       val b  = Input(UInt(32.W))
 7       val e  = Input(Bool())
 8       val z  = Output(UInt(32.W))
 9       val v  = Output(Bool())
10     })
11     val x = Reg(UInt(32.W))
12     val y = Reg(UInt(32.W))
13     when (x > y) {
14       x := x -% y
15     }.otherwise {
16       y := y -% x
17     }
18     when (io.e) {
19       x := io.a
20       y := io.b
21     }
22     io.z := x
23     io.v := y === 0.U
24   }
25 
26 object GCDDriver extends App {
27   chisel3.Driver.execute(args, () => new GCD)
28 }

 

 在同一目录,创建文件 build.sbt,内容如下,

1 scalaVersion := "2.12.8"
2 
3 resolvers ++= Seq(
4   Resolver.sonatypeRepo("snapshots"),
5   Resolver.sonatypeRepo("releases")
6 )
7

  scalacOptions ++= Seq ("-Xsource: 2.11 ")

8 libraryDependencies += "edu.berkeley.cs" %% "chisel3" % "3.1.+"

 

执行命令 sbt run,等待执行结果。

 

scalacOptions ++= Seq ("-Xsource: 2.11 ") 

这一行是为了兼容性设置,暂时不懂。

chisel入门2--生成verilog

原文:https://www.cnblogs.com/xuxian007/p/11248768.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!