敏捷硬件开发语言Chisel与数字系统设计
定价:¥69.00
                            								作者: 梁峰等
出版时间:2022-12
出版社:电子工业出版社
- 电子工业出版社
 - 9787121434129
 - 1-2
 - 454679
 - 48253598-6
 - 平塑
 - 16开
 - 2022-12
 - 429
 - 268
 - 电子信息与电气
 - 本科 研究生及以上
 
                            目录
                        
                        
                                第一篇  敏捷硬件开发语言Chisel__eol__第1章  新型敏捷硬件开发语言——Chisel和Scala	2__eol__1.1  最好的宿主——什么是Scala	2__eol__1.2  敏捷开发——什么是Chisel	2__eol__1.3  Scala入门——让你的代码跑起来	4__eol__1.3.1  Scala的安装方法	4__eol__1.3.2  使用Scala解释器	4__eol__1.3.3  运行Scala脚本	4__eol__1.3.4  编译非脚本文件	5__eol__1.3.5  使用IDEA开发Scala项目	5__eol__1.3.6  总结	7__eol__1.4  章节安排	7__eol__1.5  参考文献	8__eol__1.6  课后练习	8__eol__第2章  Chisel入门及数据类型	9__eol__2.1  Chisel开发环境的安装步骤	9__eol__2.1.1  安装步骤	9__eol__2.1.2  开发环境测试	10__eol__2.1.3  小结	11__eol__2.2  Chisel的常见问题	11__eol__2.3  Chisel的变量与数据类型	12__eol__2.3.1  数据字面量与数据类型	13__eol__2.3.2  数据宽度	14__eol__2.3.3  类型转换	14__eol__2.3.4  向量	15__eol__2.3.5  混合向量	16__eol__2.3.6  包裹	16__eol__2.3.7  Chisel的内建操作符	17__eol__2.3.8  位宽推断	18__eol__2.3.9  Chisel泛型	19__eol__2.4  总结	19__eol__2.5  课后练习	19__eol__第3章  模块与硬件类型	20__eol__3.1  Chisel是如何赋值的	20__eol__3.2  端口(IO)	21__eol__3.2.1  定义端口列表	21__eol__3.2.2  翻转端口列表的方向	21__eol__3.2.3  整体连接	22__eol__3.2.4  动态修改端口	23__eol__3.3  模块	24__eol__3.3.1  模块分类	24__eol__3.3.2  定义模块	26__eol__3.3.3  例化模块	27__eol__3.3.4  例化多个模块	28__eol__3.4  线网	28__eol__3.4.1  Wire	28__eol__3.4.2  WireDefault	29__eol__3.4.3  未驱动的线网	30__eol__3.5  寄存器	31__eol__3.5.1  Reg	31__eol__3.5.2  RegNext	32__eol__3.5.3  RegInit	32__eol__3.5.4  RegEnable	33__eol__3.5.5  ShiftRegister	34__eol__3.5.6  寄存器实例	34__eol__3.5.7  异步寄存器	39__eol__3.6  寄存器组	41__eol__3.7  用when给电路赋值	42__eol__3.8  总结	44__eol__3.9  参考文献	45__eol__3.10  课后练习	46__eol__第4章  Chisel常用的硬件原语	47__eol__4.1  多路选择器	47__eol__4.2  优先编码器	48__eol__4.3  仲裁器	48__eol__4.4  队列	51__eol__4.5  ROM	54__eol__4.6  RAM	55__eol__4.7  带写掩码的RAM	57__eol__4.8  从文件读取数据到RAM	58__eol__4.9  计数器	62__eol__4.10  线性反馈移位寄存器	66__eol__4.11  状态机	70__eol__4.12  总结	73__eol__4.13  参考文献	73__eol__4.14  课后练习	73__eol__第5章  生成Verilog HDL代码与基本测试	74__eol__5.1  生成Verilog HDL代码	74__eol__5.1.1  execute	74__eol__5.1.2  emitVerilog	76__eol__5.2  增加参数的方法	77__eol__5.2.1  Firrtl传递参数	77__eol__5.2.2  给主函数传递参数	78__eol__5.3  编写chisel-iotesters测试	79__eol__5.4  运行chisel-iotesters测试	81__eol__5.5  使用chiseltest进行测试	82__eol__5.6  总结	85__eol__5.7  课后练习	85__eol__第6章  黑盒	86__eol__6.1  例化黑盒	86__eol__6.2  复制Verilog文件	88__eol__6.3  内联Verilog文件	90__eol__6.4  inout端口	91__eol__6.5  总结	92__eol__6.6  课后练习	92__eol__第7章  多时钟域设计	94__eol__7.1  没有隐式端口的模块	94__eol__7.2  定义一个时钟域和复位域	95__eol__7.2.1  withClockAndReset	95__eol__7.2.2  withClock和withReset	96__eol__7.2.3  复位信号的三种类型	103__eol__7.3  使用时钟负沿和低有效的复位信号	103__eol__7.4  示例:异步FIFO	105__eol__7.5  总结	108__eol__7.6  参考文献	108__eol__7.7  课后练习	108__eol__第8章  函数的应用	109__eol__8.1  用函数抽象组合逻辑	109__eol__8.2  用工厂方法简化模块的例化	110__eol__8.3  用Scala的函数简化代码	113__eol__8.4  Chisel的打印函数	114__eol__8.4.1  Scala风格	114__eol__8.4.2  C风格	116__eol__8.5  使用打印函数实例	116__eol__8.6  Chisel的对数函数	119__eol__8.7  与硬件相关的函数	119__eol__8.8  隐式类的应用	122__eol__8.9  递归函数的应用	123__eol__8.10  总结	125__eol__8.11  参考文献	125__eol__8.12  课后练习	125__eol__第9章  其他议题	126__eol__9.1  重命名模块名称	126__eol__9.2  命名规则	127__eol__9.3  重命名模块内信号名称	131__eol__9.3.1  前缀	131__eol__9.3.2  suggestName	132__eol__9.3.3  forceName	133__eol__9.4  参数化的Bundle	135__eol__9.5  FixedPoint	137__eol__9.6  assert	138__eol__9.7  总结	140__eol__9.8  参考文献	140__eol__9.9  课后练习	140__eol__第10章  riscv-mini	141__eol__10.1  riscv-mini简介	141__eol__10.2  数据通路	141__eol__10.3  riscv-mini的子模块	142__eol__10.3.1  ALU模块	142__eol__10.3.2  BrCond模块	143__eol__10.3.3  Cache模块	144__eol__10.3.4  Control模块	145__eol__10.3.5  CSR模块	146__eol__10.3.6  ImmGen模块	147__eol__10.3.7  Instructions模块	147__eol__10.3.8  RegFile模块	148__eol__10.3.9  Datapath模块	148__eol__10.3.10  Core模块	149__eol__10.4  riscv-mini参数化机制	149__eol__10.4.1  Field[T]类	149__eol__10.4.2  View类	150__eol__10.4.3  Parameters类及其伴生对象	151__eol__10.4.4  Config类	152__eol__10.5  参数化机制的应用	152__eol__10.6  总结	157__eol__10.7  参考文献	157__eol__10.8  课后练习	158__eol__第二篇  Scala语言编程基础知识__eol__第11章  Scala的变量及函数	160__eol__11.1  变量定义与基本类型	160__eol__11.1.1  定义一个变量	160__eol__11.1.2  Scala的基本类型	161__eol__11.1.3  小结	164__eol__11.2  函数及其几种形式	164__eol__11.2.1  定义一个函数	164__eol__11.2.2  方法	166__eol__11.2.3  嵌套函数	166__eol__11.2.4  函数字面                            
                            
                        
                        
                        
                    


