【计算机系统设计】龙芯CPU设计与体系结构手册学习笔记
实验一:定点加法adder
内容
模块:
-
定点加法
-
外围
- 触摸屏:显示结果,输入加数
步骤:
-
新建工程--p8
-
添加源文件
-
design sources
-
adder.v--源文件
-
adder_display.v--外围模块--顶层模块
-
adder
-
lcd_module--LCD触摸屏
- lcd_module.dcp
-
-
-
-
添加simulation sources
-
testbench.v--测试平台,产生输入激励
- set as top
-
-
run similation ( p16 )
-
run behavioral simulation
-
scopes
-
add to wave window
-
-
上板--下载到FPGA
-
添加constraints约束文件
-
adder.xdc
-
时钟与复位信号的引脚连接
-
led灯和拨码开关
-
LCD触摸屏
-
-
LCD相关引脚绑定固定--建议在已有xdc的基础上修改
-
-
generate bitstream综合、布局布线&产生可烧写文件
-
open implemented design查看实现结果
-
open hardware manager
-
烧写bit文件
-
LCD触摸屏调用方法:(p29
-
调用接口in/output
-
调用显示display
-
调用输入input
实验二:定点乘法multiply
内容
(p37
目的:
- 掌握基本定点乘法实现算法
实验原理:
-
迭代乘法算法
-
得到的是绝对值
-
需判断符号位后校正结果
-
-
模块:
-
定点乘法
-
外围
-
步骤:
-
design sources
-
.v
-
_display.v
- _.dcp
-
-
simulaition sources
- tb.v--top
-
constraints sources
- .xdc
-
generation bitstream
实验三:寄存器堆regfile
内容
(p47
目的:
-
掌握MIPS计算机中寄存器堆的原理和设计方法
-
了解MIPS指令结构和源/目的操作数的概念
调用LCD触摸屏:
-
显示功能display
-
输入功能
实验四:ALU模块
内容
要求:
-
MIPS指令集的运算指令,并归纳分类
-
不实现定点乘除,浮点运算
-
至少5种ALU,包含加减
步骤:
-
独热码--7bit
-
二进制--3bit
实验五:存储器memory
内容
要求:
-
ROM和RAM的原理
-
ROM读取数据及RAM读写数据的过程
-
掌握xilinx库IP实例化RAM的设计方法
步骤:(P76
-
生成IP核RAM
-
新建工程data_ram
-
新建IP:IP Catalog
-
设置RAM参数
-
-
生成IP核ROM(79
-
同步RAM的顶层展示模块
-
同步ROM的顶层模块
-
异步RAM实现
-
异步ROM实现
实验六:单周期CPU_single_cycle
目的:
-
理解MIPS指令结构,实现指令
-
熟悉MIPS体系的处理器结构
-
延迟槽
-
哈佛结构
-
-
掌握CPU的原理和设计
结构:

设计:
-
原理
- 指令解析--p107
-
design sources
-
inst_rom.v & data_ram.v自行搭建的异步存储器--源代码见实验五.5/6
-
regfile.v--实验三
-
alu.v--实验四
- adder.v--实验一
-
-
constrains sources
- .xdc
实验七:多周期CPU_multi_cycle
(p124
目的:
- 单周期CPU完成的前提下理解多周期
结构:

- 填表:p125
设计:
-
在MIPS架构下完成CPU
-
文档测试代码==MIPS指令
-
模块
-
多周期CPU模块
-
外围模块
-
-
建议使用同步RAM、ROM
步骤:
-
design sources
-
inst_rom.v & data_ram.v自行搭建的异步存储器--源代码见实验五.5/6
-
inst_rom/data_ram.xci
-
regfile.v--实验三
-
alu.v--实验四
- adder.v--实验一
-
.dcp
-
-
simulation sources
- testbench(top
-
constrains
- .xdc
ERROR:
-
failed to customize IP 'inst_rom'

浙公网安备 33010602011771号