risc-v中文社区

 找回密码
 立即注册
查看: 1047|回复: 0

[原创] RISCV SOC设计与Chisel语言入门

[复制链接]

347

主题

564

帖子

2237

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2237
发表于 2021-8-3 22:15:30 | 显示全部楼层 |阅读模式
特注明几个很有作用的网页:
1)chisel第一个实验
2)sbt使用
3)动手---sbt (1)
4)动手---sbt (2)
5)firrtl

RISCV SOC设计与Chisel语言入门资料
关于项目的一点说明
Rocket核与Chisel语言
关于项目的一点说明
今年三月,我和舍友一起参加了第四届全国集成电路设计大赛,选择了RISCV挑战杯的子赛题二网址。自二月份开始着手做该项目,其间踩过无数的坑,也从一开始的手足无措,逐渐找到门路,熟悉了整个的开发流程。为了对之前的工作做一个小小的总结,秉承RISCV一贯的开源开放的开发精神,并吸引更多的同志共同探讨RISCV软硬件协同开发的魅力,创作此博客。
简而言之,项目的目的是在digilent公司提供的NexysDDR2板卡上,设计装有任一RISCV处理器核的SOC,并将其烧写到板卡上。之后编写C语言代码,经过相关工具链编译后通过openocd上载到flash中,SOC启动后,将会读取flash中存储的代码,实现以太网下载、身份证识别功能、摄像头读取与人脸识别的功能。
我将具体的技术路线整理成思维导图,见
【RISC-V身份证识别片上系统开发技术路线】

Rocket核与Chisel语言
Rocket核的主要信息可以轻易在网上查到,这里不多言,然而chisel语言的教程却很难查到,并且国内有关chisel语言的论坛也少之又少,导致出了错误之后很难在网上找到相关的解决方案。这里我将这几个月收集的chisel的教程与资料一并列出,基本都为英文版,但语言简单易懂,并且偏实践性,故学习起来并无太大困难。
chisel语言是基于scala语言开发的硬件设计支持包,总体上开发者需要基本了解JAVA语言的设计法则,JAVA的语法与C/C++差不太多,熟悉C++的开发者很容易就可以掌握这种JAVA。部分语法及高级功能可以查阅资料包中的:
【Java核心技术 卷1 基础知识 原书第10版.pdf】
【Java核心技术 卷2 高级特性 原书第10版.pdf】
scala语言学习起来较有难度,建议先花一个星期自己熟悉一下scala编程,资料为
【快学Scala 第2版】
!!!重点搞懂懒值(page31),构造映射(page53),自身类型(page149),带函数参数的函数(page178),控制抽象(page185)与拉链操作(page209)!!!
大略熟悉scala之后,就可以着手开始chisel语言的实践了,这里推一本好书:
【chisel-book.pdf】
这本书仅有英文版,但是对chisel的各项机制与语法进行了一个大致的介绍,适合用于入门学习,建议对该书进行通读。
之后就可以开始rocket-chip的学习了,网上的许多SOC其内核都是rocket核,而rocket核及其所用的一系列必要硬件结构如移位寄存器、FIFO等的实现代码都储存在rocket-chip文件夹中,之后这些代码可通过FIRRTL编译为verilogHDL文件用于进一步设计。对该文件夹内容的解释可以参考该网址,好似是一个西电的大佬写的,对其文件结构做了一个基本的介绍。
Notes for Rocket-Chip.
Rocket核最关键的部分是与外设总线进行通信。伯克利大学自定义了一套数据组织结构,较Diplomacy。在这里面定义各个参数parameter,结点node与边edge的通信交互协议。这个网址对该过程有了一个非常简短的介绍:
Diplomacy and TileLink from the Rocket Chip.
进一步了解可见:
Chipyard教学网站.
在熟悉了SOC的硬件设计之后,就可以想方设法往总线上面挂外设了。

其他RISCV学习资料:
博主a_weiming的博客集.
博主_iChthyosaur的博客集

今天写不动了,下次打算解说E310-G000 SOC的chisel代码实现。

上述资料请在⇓ \Downarrow⇓领取
链接:https://pan.baidu.com/s/1aAyKA_7ZjzuyzGi9FPtHcQ
提取码:apoc

不免存在错误,欢迎大家批判。

最后配一张E310-G000 SOC的系统图

————————————————
版权声明:本文为CSDN博主「乘螺舟而至」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_26371477/article/details/106575520

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



Archiver|手机版|小黑屋|risc-v中文社区

GMT+8, 2024-4-27 21:04 , Processed in 0.017526 second(s), 17 queries .

risc-v中文社区论坛 官方网站

Copyright © 2018-2021, risc-v open source

快速回复 返回顶部 返回列表