1. RISC和CISC架构有什么不同?
RISC全称是Reduced Instruction Set Computer。
CISC全称是Complex Instruction Set Computer。
RISC架构有更少的指令,且这些指令比较简单,比如固定指令长度、更少的寻址模式。CISC架构有更多的指令,且这些指令天然就比较复杂,比如可变长度的指令、更多的寻址模式。
RISC架构因为有更少的指令,在硬件实现上会更容易些,但是CISC架构需要更复杂硬件来解码和分解复杂的指令。因此,RISC比CISC更注重软件。
由于CISC有复杂的硬件支持,它比RISC需要更少的软件代码,也因此需要更少的RAM来存储程序指令。
RISC指令长度一致,在流水线CPU实现上更容易。而CISC对不同的指令需要的时钟数不一样,更难实现流水线处理。
RISC架构通过减少每条指令的周期数来提升性能,而CISC架构通过减少每个程序所需要的指令数来提升性能。
不过现在先进的计算机架构中,也有许多CISC的微架构实现会在内部先把复杂指令转成更简单的指令,再进行处理的。
2. 哈佛结构和冯诺依曼结构的区别?
冯·诺依曼架构又称作普林斯顿体系架构。冯·诺依曼架构的处理器使用同一个存储器,经由同一个总线传输。哈佛架构是一种将程序指令存储和数据存储分开的存储器结构。二者的区别就是程序空间和数据空间是否是一体的。冯·诺依曼架构数据空间和地址空间不分开,哈佛架构数据空间和地址空间是分开的。
冯诺依曼架构相对比较老,大部分现代处理器架构都是基于哈佛架构。
3. 从内存(memory)存储的角度解释大端(Big Endian)和小端(Little Endian)的概念?
大小端描述的是字节(bytes)在memory中的摆放顺序。Memory通常是按byte寻址的,在32-bit系统中,CPU主要是对32-bit或Word大小的操作数进行处理的。就拿写1个Word数据到以byte寻址的memory来举例。
如果是大端格式的话,那么Word数据里的最高字节(Most Significant byte)将会放在memory的最低地址。
如果是小端格式的话,那么Word数据里的最低字节(Least significant byte)将会放在memory的最低地址。
举个例子,如果CPU打算写1个Word为0x33221100到起始地址为0x100的memory,也就是会占用0x100-0x103地址存储空间。那么对不同的大小端格式,memory中存储的数据结构如下:
4. SRAM和DRAM的区别?
DRAM的全称是Dynamic Random Access Memory。它是一种数据以电荷形式存储的存储器。DRAM的每个存储单元(memory cell)是由1个晶体管和1个电容器组成的。数据就是存放在电容器里。DRAM里的电容会因泄漏而失去电荷。因此,为了维持memory里的数据,DRAM需要定期刷新。
SRAM的全称是Static Random Access Memory。它是”静态”存储器,是指只要存储器保持通电,它储存的数据就可以一直保持。通常SRAM的速度比DRAM快,因为它不需要定期刷新。SRAM的每个存储单元是由6个晶体管组成。正因为如此,SRAM的每个存储单元造价比DRAM高。
在应用上,SRAM由于速度快,通常用于缓存(Cache)。DRAM由于更高的存储单元密度,通常用于主存(Main memory)。
5. 如果计算机有512KByte的memory,那么它需要用多少地址位(address bits)才能寻址memory的每1个Byte呢?
由于总得memory大小是512KB=(2^9)*(2^10) Byte=(2^19) Byte,因此需要19bits的地址宽度。
作者: 谷公子
文章来源:CSDN
推荐阅读
- 门控时钟检查(clock gating check)的理解和设计应用(上)
- ICC/ICC2 or INN 一点不成熟的浅见
- StarRC的妙用
- 芯片设计里的Multi-Bit FF探究
- 芯片工程师求职题目之设计基础篇(1)
更多IC设计干货请关注IC设计专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。