第一阶段学习总结.章一至章六
一.第一次了解Ubuntu相关的知识.原来只是粗略的用过Redhat.
等有空可以补充学一些操作系统相关的知识.
二.处理器系统构成方面的了解.
由于正在学习微机原理,和这本书相辅相成.
1.按字节寻址的方法.大端/小端模式.
2.寻址方式.主要是pc相对寻址.
3.具体实现一条简单指令的过程
取指令.译码.执行.访存.回写.
4.流水线相关.
实际情况下有降低流水线的情况.
(1)结构相关.如数据和指令的冲突.
(2)数据相关.后面的指令依赖前面的执行.
(3)控制相关.比如微机原理课上所讲的分支预测.
解决数据相关的方法:数据前推.哪个阶段需要数据,就直接从另一个流水线的某个阶段推过来给他
如(将前一语句的执行模块里的数据推个当前语句的译码module)
三.VerilogHDL
1.代码风格.作者多用宏定义方式.定义位宽,指令有无效,写使能...使得整个代码的可读性
非常强,也便于后期扩充功能.
2.模块非常清晰,一个是一个.再想想qiqi的代码.真是高下立见.
3.端口非常全面. 写使能.写地址.地址的内容.
?.有些时序逻辑和组合逻辑的选择原因还没搞懂
4.具体实现没有做.重点是了解体系结构,实现放到最后做实践版mips进行.
四.代码到二进制的过程.
汇编语言--编译--生成elf文件(可重定位,毕竟没学过编译原理.不过大概了解干嘛用的
把多个代码文件和到一起.重新安排代码,数据,文本区)
小的注意点:抄代码进电脑时,有的空格没有打,然后就报错: } > ram`