大家一起学习FPGA,于是去看了一本《自己动手写CPU》的书。书中使用Verilog HDL设计实现了一款兼容MIPS32指令集架构的处理器――OpenMIPS。书中作者使用友晶的DE2,平台实现的,我并没有在自己的平台移植,以前对FPGA认识并不太清楚,现在感觉这个东西原来是那么神奇,软件定义硬件。读了整本书,对软件定义CPU和 OpenMIPS也有了简单的认识。
全书分为三篇:
第一篇是理论篇,介绍了指令集架构、Verilog HDL的相关知识。
第二篇是基础篇,采用增量模型,实现了教学版OpenMIPS处理器。首先实现了仅能执行一条指令的处理器,从这个最简单的情况出发,通过依次添加,实现逻辑操作指令、移位操作指令、空指令、移动操作指令、算术操作指令、转移指令、加载存储指令、协处理器访问指令、异常相关指令,最终实现了教学版OpenMIPS处理器。
第三篇是进阶篇,通过为教学版OpenMIPS添加Wishbone总线接口,从而实现了实践版OpenMIPS处理器,并与SDRAM控制器、GPIO模块、Flash控制器、UART控制器、Wishbone总线互联矩阵等模块组成一个小型SOPC,然后下载到FPGA芯片以验证实现效果,最后为实践版OpenMIPS处理器移植了嵌入式实时操作系统μC/OS-II。
目前就对MIPS有个简单的了解,准备以后看能不能移植到我的 BeMicro 开发板上。后面会和大家继续分享的。。
—————————————————————————————————————— |