自己动手写CPU

自己动手写CPU pdf epub mobi txt 电子书 下载 2025

想要找书就要到 小特书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

揭开CPU的神祕面纱,帮助您深入了解电脑的组成原理与系统架构
介绍从无到有打造处理器的开发过程

  本书将带领您使用Verilog HDL 设计实现一款兼容MIPS32指令集架构的处理器:OpenMIPS。

  全书共分为三篇。第一篇是理论篇,介绍了指令集架构、Verilog HDL的相关知识。第二篇是基础篇,採用增量模型,实现了教学版OpenMIPS处理器。首先实现了仅能执行一道指令的处理器,从这个最简单的情况出发,逐步实现逻辑操作指令、移位操作指令、空指令、移动操作指令、算术操作指令、转移指令、加载储存指令、协处理器存取指令、异常相关指令,逐步完成教学版OpenMIPS处理器。第三篇是进阶篇,透过为教学版OpenMIPS加上Wishbone总线接口,从而实现了实践版OpenMIPS处理器,并与SDRAM控制器、GPIO模块、Flash控制器、UART控制器、Wishbone总线互联矩阵等模块组成一个小型SOPC,然后下载到FPGA晶片以验证实现效果,最后为实践版OpenMIPS处理器移植了嵌入式实时操作系统μC/OS-II。

著者信息

作者简介

雷思磊


  理工男,好静,倡导低碳生活,常以环保人士自居,喜读书,自幼笃信「博观而约取,厚积而薄发」。是故,所读书籍甚为驳杂,年近而立,尚不确定根本兴趣目标,一日,驻足书架之前,细览所读书籍,惊觉随岁月增长,关注点依次从程式设计、作业系统、驱动程式设计转移至处理器结构,此一脉络极其清晰,遂如醍醐灌顶,幡然醒悟,原来根本兴趣目标在「底层」,在于从根本上理解世界之运行,遂耗数年时间钻研处理器工作原理,乃有些微收获,拙作当为数年辛苦之小结,然学无止境,科技发展亦日新月异,唯有持续钻研,方能大成,屈子曰:路漫漫其修远兮,吾将上下而求索。此言甚是,余定谨记而遵行之。

图书目录

第1章 处理器与MIPS
介绍目前主流的指令集架构,由于OpenMIPS採用MIPS32指令集架构,所以本章将特别着重MIPS32指令集架构的说明。

第2章 可程式设计逻辑装置与Verilog HDL
介绍了FPGA、Verilog HDL的基础知识,FPGA是可程式设计逻辑装置的一种,本书的实践版OpenMIPS处理器就将在FPGA上执行。

第3章 教学版OpenMIPS 处理器蓝图
介绍了教学版OpenMIPS处理器的设计蓝图,包括设计目标、处理器介面,以及最终完成时组成OpenMIPS的各个模组的作用。

第4章 第一条指令ori 的实现
实现了OpenMIPS处理器的第一道指令ori,之所以选择这条指令作爲第一道指令,就是因爲它够简单,指令ori用来实现逻辑“或”运算,透过这道简单指令的实现,初步建立了OpenMIPS的五阶管线架构。

第5章 逻辑、移位操作与空指令的实现
讨论并解决了管线资料的相依问题,然后修改第4章的OpenMIPS,实现了MIPS32指令集架构中定义的逻辑、移位操作与空指令。

第6章 移动操作指令的实现
介绍并实作MIPS32指令集架构中定义的移动操作指令。

第7章 算术操作指令的实现
介绍并实作MIPS32指令集架构中定义的算术操作指令。

第8章 转移指令的实现
介绍并实作MIPS32指令集架构中定义的转移指令,OpenMIPS支援延迟转移。

第9章 载入储存指令的实现
介绍并实作MIPS32指令集架构中定义的载入储存指令。

第10章 协同处理器存取指令的实现
介绍并实作MIPS32指令集架构中定义的协同处理器CP0,以及协同处理器存取指令。

第11章 异常相关指令的实现
介绍并实作MIPS32指令集架构中定义的异常相关指令,并实现了异常处理。
在每一类指令的实现程式中,都是先介绍该类指令的格式、作用和用法,然后介绍实现思路,接着透过修改程式码实现该类指令,最后,编写测试程式,使用模拟的方式验证实现的正确性。

第12章 实践版OpenMIPS处理器设计与实现
介绍在教学版OpenMIPS处理器的基础上,透过Wishbone汇流排介面模组的加入,实现了实践版OpenMIPS处理器。

第13章 基于实践版OpenMIPS的小型SOPC
讲述设计实现了基于实践版OpenMIPS处理器的小型可程式设计系统单晶片SOPC的整个过程。

第14章 验证实践版OpenMIPS处理器
将第13章实作的小型SOPC下载到实际的硬体平台上,编写测试程式,验证实践版OpenMIPS处理器实现的正确性。

第15章 为OpenMIPS 处理器移植μC/OS-II
介绍了嵌入式即时作业系统μC/OS-II,并将其移植到本书设计的OpenMIPS处理器上,进一步验证了实践版OpenMIPS处理器实现的正确性,也爲OpenMIPS处理器发挥实际作用奠定了基础。

图书序言



  自1971年世界上第一款单晶片微处理器4004诞生已逾40多年,使用“日新月异”来形容这40多年处理器的发展变化亦不爲过,无论是速度、整合度,还是架构等许多方面都有了前人难以想像的变化。不过可惜的是,处理器设计制造一直都是高科技行业,轻易无法涉足。大多数人对处理器的直观印象就是一个银白色的小晶片,有许多接脚,至于里面是如何工作的,则不甚了解,更不用说自己制作处理器了。

  幸运的是,在处理器发展的同时,可程式设计逻辑装置也在持续发展。可程式设计逻辑装置不仅是技术的革新,也带来了观念的革新、设计流程的革新。如今透过编写程式码可以在可程式设计逻辑装置上实现十分复杂的电路设计,比如处理器。于是,普罗大衆也能有机会了解处理器内部的实现原理,甚至参与处理器的设计、研发。

  实际上,目前已经有很多可以下载到可程式设计逻辑装置上执行的处理器,这些处理器称爲软核心处理器,例如:NiosII、OR1200、LEON3、OpenSparc等,这些软核心处理器有的是开源的,有的不是开源的。笔者在前期深入阅读了几款开源软核心处理器的程式码,包括:OC8051、OR1200、LEON3。其中,OC8051是OpenCores提供的一款8位元两阶管线处理器,与Intel 8051相容,是CISC(Complex Instruction Set Computer)类型,採用Verilog HDL编写程式码。OR1200是OpenCores提供的一款32位元五阶管线处理器,是RISC(Reduced Instruction Set Computer)类型,也採用Verilog HDL编写程式码。LEON3是由Gaisler Research公司设计发布的一款32位元七阶管线处理器,也是RISC类型,但採用的是VHDL编写程式码。

  透过阅读上述开源软核心处理器的程式码,一方面消除了笔者对处理器的神秘印象,另一方面也激发了笔者强烈的创作冲动,陆游曾言:纸上得来终觉浅,绝知此事要躬行。是啊!爲何不自己也写入一个处理器?于是世间又多了一款开源处理器OpenMIPS。OpenMIPS是具有哈佛架构的32位元五阶管线纯量处理器,相容MIPS32架构,这样可以使用现有的MIPS编译开发环境。它分爲教学版和实践版两个版本,每个版本都使用VHDL和Verilog HDL两种语言编写。

  本书以Verilog HDL编写的版本爲例,详细介绍了OpenMIPS从无到有、从小到大、一步一步成长完善的过程。

图书试读

用户评价

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 ttbooks.qciss.net All Rights Reserved. 小特书站 版权所有