展开全部

主编推荐语

一本介绍OpenRISC体系结构的图书。具备软硬件协同设计能力必读的一本书。

内容简介

本书理论精炼实用,深入浅出地阐释了体系结构设计中的重要概念。实践身临其境,不仅参考代码和文件完整,还专门设计了配套开发板,极具可操作性。通读对本书的阅读,读者不仅可以获得计算机体系结构设计的基础理论知识,还可以掌握动手设计处理器的基本技能,迈入CPU设计的大门。

本书的内容大致可分为三部分,即知识储备、实例分析和动手实践。其中第一部分着重介绍了体系结构设计中的概念、并行技术、局部性原理,以及进行计算机体系接结构设计的一般流程。第二部分,以OpenRISC为分析对象,深入分析了开源CPU数据通路、控制通路和存储器层次组织的实际实现,对研究体系结构设计具有很高的现实意义和实际价值。此外本部分还介绍了以OpenRISC为基础的ORPSoC的很多设计细节。第三部分,介绍如何运用前面的积累设计一个简单的RISC核,以及设计的仿真和FPGA验证。本书适合急于了解和掌握体系结构设计基础,对开源CPU内部实现充满好奇,并想动手设计属于自己CPU的读者,以及从事嵌入式开发的技术人员。

此外,本书还可作为对计算机体系结构设计感兴趣的电子工程类、自动控制类、计算机类的高年级本科生和研究生的参考用书。

目录

  • 版权信息
  • 前言
  • 第1章 绪论
  • 1.1 概述
  • 1.2 计算机漫谈
  • 1.2.1 十进制计算机
  • 1.2.2 二进制计算机
  • 1.3 计算机体系结构
  • 1.3.1 图灵与图灵机
  • 1.3.2 冯·诺依曼与冯·诺依曼体系结构
  • 1.3.3 改进的哈佛体系结构
  • 1.3.4 发展趋势
  • 1.4 并行技术
  • 1.4.1 流水线
  • 1.4.2 乱序
  • 1.4.4 单指令多数据流
  • 1.4.5 同时多线程
  • 1.4.6 单芯片多处理器
  • 1.4.7 对称多处理器
  • 1.5 局部性原理
  • 1.6 计算机的评价
  • 1.7 设计流程
  • 1.7.1 分析
  • 1.7.2 模拟器
  • 1.7.3 FPGA设计
  • 1.7.4 ASIC
  • 1.8 OpenRISC
  • 1.8.1 概述
  • 1.8.2 OpenRISC寄存器集
  • 1.8.3 OpenRISC指令集
  • 1.9 小结
  • 1.10 习题
  • 第2章 基于OpenRISC的开发
  • 2.1 概述
  • 2.2 项目描述
  • 2.3 开发环境的构建
  • 2.3.1 开发环境的组成
  • 2.3.2 开发环境的选择与安装
  • 2.4 硬件的开发
  • 2.4.1 模块划分和编码实现
  • 2.4.2 功能仿真与时序仿真
  • 2.5 驱动程序的开发
  • 2.6 FPGA板级验证
  • 2.7 硬件与软件的比较
  • 2.8 ORPSoC与or1200
  • 2.8.1 ORPSoC架构分析
  • 2.8.2 ORPSoC的启动过程
  • 2.8.3 or1200
  • 2.9 小结
  • 2.10 习题
  • 第3章 数据通路设计
  • 3.1 概述
  • 3.2 数据通路
  • 3.3 OpenRISC的数据通路整体架构分析
  • 3.4 取指
  • 3.5 译码
  • 3.6 执行
  • 3.6.1 运算部件基础
  • 3.6.2 or1200的运算部件
  • 3.7 访存
  • 3.7.1 流水线的访存阶段
  • 3.7.2 or1200访存阶段的具体实现分析
  • 3.8 写回
  • 3.8.1 or1200写回阶段整体功能
  • 3.8.2 or1200写回阶段具体实现代码分析
  • 3.9 设计一个简单的除法器
  • 3.10 小结
  • 3.11 习题
  • 第4章 控制通路设计
  • 4.1 概述
  • 4.2 控制通路的复杂性
  • 4.3 OR的控制通路设计分析
  • 4.3.1 整体介绍
  • 4.3.2 sprs模块
  • 4.4 OR的异常处理
  • 4.4.1 except模块
  • 4.4.2 freeze模块
  • 4.5 OR的调试系统
  • 4.5.1 调试方案的分类
  • 4.5.2 advanced debug system
  • 4.5.3 我的调试系统
  • 4.5.4 JTAG模块
  • 4.6 基于or1200的中断实验
  • 4.7 小结
  • 4.8 习题
  • 第5章 存储器组织
  • 5.1 概述
  • 5.2 TLB与Cache
  • 5.2.1 概述
  • 5.2.2 TLB
  • 5.2.3 Cache
  • 5.3 OR的存储器组织
  • 5.3.1 OR的MMU
  • 5.3.2 OR的Cache
  • 5.4 自己设计一个简单的Cache
  • 5.5 小结
  • 5.6 习题
  • 第6章 自己设计一个简单的CPU
  • 6.1 概述
  • 6.2 层次建模
  • 6.3 可综合代码风格
  • 6.4 一个简单CPU的设计、实现、仿真与综合
  • 6.4.1 架构设计
  • 6.4.2 模块划分
  • 6.4.3 模块划分与接口定义
  • 6.4.4 RTL实现
  • 6.4.5 ModelSim仿真
  • 6.4.6 综合
  • 6.4.7 改进及优化
  • 6.4.8 tiny_core的指令集
  • 6.5 小结
  • 6.6 习题
  • 附录A 常用公式和定律
  • 附录B wishbone
  • 附录C 状态机的4种写法
  • 附录D 跨时钟域信号的同步
  • 附录E 推荐阅读
  • 参考文献
  • 后记
展开全部

评分及书评

评分不足
2个评分
  • 用户头像
    给这本书评了
    5.0

    如果把一个开源 CPU 芯片比作一座大厦的话,那么体系结构设计的基本理论知识就是大厦的骨架,而其开放的 RTL 源代码就是建造大厦所使用的砖瓦。“罗马不是一天建成的”,对于普通的开发者来说,单凭一个人的力量,要建造一座大厦的确不大可能,但如果要建造一个简陋的茅屋就变得可行了。要动手建造自己的 “茅屋”,合理的方式是先学习和研究大厦的骨架,而不是整天在大厦里面转悠参观。也许别人的高楼大厦让人震撼,但自己的茅草屋会带来温暖。

      转发
      评论

    出版方

    机械工业出版社有限公司

    机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。