MIPS程序设计报告
MIPS汇编程序设计实验 可编辑

MIPS汇编程序设计实验一、实验目的1.掌握QTSPIM的调试技术2.了解MIPS汇编语言与机器语言之间的对应关系3.掌握MIPS汇编程序设计4.了解C语言语句与汇编指令之间的关系5.熟悉常见的MIPS汇编指令6.掌握程序的存储映像二、实验要求1.完成汇编语言程序设计、调试、测试全过程2.指出用户程序的内存映像,包括代码段和数据段3.完成软件实验报告三、实验环境:QTSPIM运行在windows操作系统下的支持MIPS32指令集的MIPS微处理器仿真器,具备调试、运行MIPS32汇编指令程序的功能四、实验任务:用汇编程序实现以下源代码:要求采用移位指令来实现乘除法int main(){int k,y;int z[50];y=56;for(k=0:k<50;k++)z[k]=y-16*(k/4+210);}五、实现汇编源程序设计思路(算法):1.先判断k是否小于50,如果大于50,那么就直接跳到exit。
若小于50,则开始loop循环。
2.因为在z[k]中k不是立即数而是一个变量,因而用mips语言需要运用add语句进行地址相加。
3.在loop末尾需要让k++,同时$s2的地址首位需要加4.源代码:.dataz:.space 200.textmain:la $s2,zli $s1,0#k=0=$s1li $s0,56#y=56li $t0,50loop:beq $s1,$t0,exitsrl $t1,$s1,2addi $t1,$t1,210sll $t1,$t1,4sub $t1,$s0,$t1sw $t1,0($s2)addi $s1,$s1,1addi $s2,$s2,4j loopexit:li $v0,10syscall调试过程:当载入txt文件时,对话框出现如上内容,出现未识别的character,找到该行,为“la $s2,z;”,其中在z后多加了“;”号,导致出错,因而删除后,再次选择,载入,未出现错误提示框,点击运行,观察data框,数组z[50]储存数据如下:与预期结果符合。
华中科技大学HUST类MIPS单周期微处理器设计实验报告

类MIPS单周期微处理器设计实验报告专业:班级:学号:姓名:一、微处理器各模块设计各模块的框图结构如上图所示。
由图可知,该处理器包含指令存储器、数据存储器、寄存器组、ALU单元、符号数扩张、控制器、ALU控制译码以及多路复用器等。
图中还忽略了一个单元:时钟信号产生器,而且以上各个部件必须在时钟信号的控制下协调工作。
1.指令存储器的设计指令寄存器为ROM类型的存储器,为单一输出指令的存储器。
因此其对外的接口为clk、存储器地址输入信号(指令指针)以及数据输出信号(指令)。
(1)在IP wizard 中配置ROM,分配128个字的存储空间,字长为32位宽。
(2)选择输入具有地址寄存功能,只有当时钟上升沿有效时,才进行数据的输出。
(3)配置ROM内存空间的初始化COE文件。
最后单击Generate按钮生成IROM模块。
2.数据存储器的设计数据存储器为RAM类型的存储器,并且需要独立的读写控制信号。
因此其对外的接口输入信号为clk、we、datain、addr;输出信号为dataout。
数据存储器基本建立过程同ROM的建立。
3.寄存器组设计寄存器组是指令操作的主要对象,MIPS中一共有32个32位寄存器。
在指令的操作过程中需要区分Rs、Rt、Rd的地址和数据,并且Rd的数据只有在寄存器写信号有效时才能写入,因此该模块的输入为clk、RegWriteAddr、RegWriteData、RegWriteEn、RsAddr、RtAddr、reset;输出信号为RsData、RtData。
由于$0一直输出0,因此当RsAddr、RtAddr为0时,RsData以及RtData 必须输出0,否则输出相应地址寄存器的值。
另外,当RegWriteEn有效时,数据应该写入RegWriteAddr寄存器。
并且每次复位时所有寄存器都清零。
代码如下:module regFile(input clk,input reset,input [31:0] regWriteData,input [4:0] regWriteAddr,input regWriteEn,output [31:0] RsData,output [31:0] RtData,input [4:0] RsAddr,input [4:0] RtAddr);reg[31:0] regs[0:31];assign RsData = (RsAddr == 5'b0)?32'b0:regs[RsAddr];assign RtData = (RtAddr == 5'b0)?32'b0:regs[RtAddr];integer i;always @(posedge clk)beginif(!reset)beginif(regWriteEn==1)beginregs[regWriteAddr]=regWriteData;endendelsebeginfor(i=0;i<31;i=i+1)regs[i]=0;regs[31]=32'hffffffff;endendendmodule4.ALU设计在这个简单的MIPS指令集中,微处理器支持add、sub、and、or、slt运算指令,需要利用ALU单元实现运算,同时数据存储指令sw、lw也需要ALU单元计算存储器地址,条件跳转指令beq需要ALU来比较两个寄存器是否相等。
华中科技大学HUST类MIPS单周期微处理器设计实验报告

类MIPS单周期微处理器设计实验报告专业:班级:学号:姓名:一、微处理器各模块设计各模块的框图结构如上图所示。
由图可知,该处理器包含指令存储器、数据存储器、寄存器组、ALU单元、符号数扩张、控制器、ALU控制译码以及多路复用器等。
图中还忽略了一个单元:时钟信号产生器,而且以上各个部件必须在时钟信号的控制下协调工作。
1.指令存储器的设计指令寄存器为ROM类型的存储器,为单一输出指令的存储器。
因此其对外的接口为clk、存储器地址输入信号(指令指针)以及数据输出信号(指令)。
(1)在IP wizard 中配置ROM,分配128个字的存储空间,字长为32位宽。
(2)选择输入具有地址寄存功能,只有当时钟上升沿有效时,才进行数据的输出。
(3)配置ROM内存空间的初始化COE文件。
最后单击Generate按钮生成IROM模块。
2.数据存储器的设计数据存储器为RAM类型的存储器,并且需要独立的读写控制信号。
因此其对外的接口输入信号为clk、we、datain、addr;输出信号为dataout。
数据存储器基本建立过程同ROM的建立。
3.寄存器组设计寄存器组是指令操作的主要对象,MIPS中一共有32个32位寄存器。
在指令的操作过程中需要区分Rs、Rt、Rd的地址和数据,并且Rd的数据只有在寄存器写信号有效时才能写入,因此该模块的输入为clk、RegWriteAddr、RegWriteData、RegWriteEn、RsAddr、RtAddr、reset;输出信号为RsData、RtData。
由于$0一直输出0,因此当RsAddr、RtAddr为0时,RsData以及RtData 必须输出0,否则输出相应地址寄存器的值。
另外,当RegWriteEn有效时,数据应该写入RegWriteAddr寄存器。
并且每次复位时所有寄存器都清零。
代码如下:module regFile(input clk,input reset,input [31:0] regWriteData,input [4:0] regWriteAddr,input regWriteEn,output [31:0] RsData,output [31:0] RtData,input [4:0] RsAddr,input [4:0] RtAddr);reg[31:0] regs[0:31];assign RsData = (RsAddr == 5'b0)?32'b0:regs[RsAddr];assign RtData = (RtAddr == 5'b0)?32'b0:regs[RtAddr];integer i;always @(posedge clk)beginif(!reset)beginif(regWriteEn==1)beginregs[regWriteAddr]=regWriteData;endendelsebeginfor(i=0;i<31;i=i+1)regs[i]=0;regs[31]=32'hffffffff;endendendmodule4.ALU设计在这个简单的MIPS指令集中,微处理器支持add、sub、and、or、slt运算指令,需要利用ALU单元实现运算,同时数据存储指令sw、lw也需要ALU单元计算存储器地址,条件跳转指令beq需要ALU来比较两个寄存器是否相等。
mips运算器设计的实验报告

mips运算器设计的实验报告MIPS运算器设计的实验报告在计算机科学领域,MIPS(Microprocessor without Interlocked Pipeline Stages)是一种常见的指令集架构,被广泛用于教学和研究。
MIPS运算器设计实验旨在通过实际操作,加深对MIPS指令集的理解,提高学生的计算机系统设计能力。
实验开始前需要明确设计的目标和功能需求。
在设计MIPS运算器时,需要考虑指令的执行流程、寄存器的设计、ALU的功能等关键要素。
设计者应该清楚每条指令的操作码、操作数及操作结果的存储位置,确保整个运算器的功能正常实现。
根据设计要求,搭建MIPS运算器的硬件结构。
在硬件设计中,需要考虑到时钟频率、数据通路的连接、控制信号的传输等方面。
合理的硬件设计是保证运算器正常运行的基础,需要对各个模块进行充分测试和调试,确保整个系统的稳定性和可靠性。
接着,进行指令集的编码和解码工作。
MIPS指令集包括常见的算术运算指令、逻辑运算指令、分支跳转指令等,设计者需要为每条指令赋予唯一的操作码,并实现指令的编码和解码功能。
编码和解码的准确性直接影响到指令的执行结果,需要仔细检查和验证每条指令的功能和操作。
进行仿真和调试工作。
通过仿真软件模拟MIPS运算器的运行过程,检查指令执行的正确性和时序的准确性。
在调试过程中,需要重点关注指令执行的过程中是否存在冲突和错误,及时修改和优化设计方案,确保运算器的功能完整和稳定。
总的来说,通过设计MIPS运算器的实验,可以帮助学生深入理解计算机系统的结构和工作原理,提高他们的设计和调试能力,培养他们的团队合作和问题解决能力。
同时,这也是一个很好的实践机会,让学生将理论知识应用到实际项目中,提升他们的综合素质和创新能力。
希望通过这样的实验,能够激发学生对计算机科学的兴趣,培养他们对技术研究的热情,为未来的科技发展做出贡献。
MIPS单周期CPU实验报告

MIPS单周期CPU实验报告一、实验目的本实验旨在设计一个基于MIPS指令集架构的单周期CPU,具体包括CPU的指令集设计、流水线的划分与控制信号设计等。
通过本实验,可以深入理解计算机组成原理中的CPU设计原理,加深对计算机体系结构的理解。
二、实验原理MIPS(Microprocessor without Interlocked Pipeline Stages)是一种精简指令集(RISC)架构的处理器设计,大大简化了指令系统的复杂性,有利于提高执行效率。
MIPS指令集由R、I、J三种格式的指令组成,主要包括算术逻辑运算指令、存储器访问指令、分支跳转指令等。
在单周期CPU设计中,每个指令的执行时间相同,每个时钟周期只执行一个指令。
单周期CPU的主要部件包括指令内存(IM)、数据存储器(DM)、寄存器文件(RF)、运算单元(ALU)、控制器等。
指令执行过程主要分为取指、译码、执行、访存、写回等阶段。
三、实验步骤1.设计CPU指令集:根据MIPS指令集的格式和功能,设计符合需求的指令集,包括算术逻辑运算指令、存储器访问指令、分支跳转指令等。
2.划分CPU流水线:将CPU的执行过程划分为取指、译码、执行、访存、写回等阶段,确定每个阶段的功能和控制信号。
3.设计控制器:根据CPU的流水线划分和指令集设计,设计控制器实现各个阶段的控制信号生成和时序控制。
4.集成测试:进行集成测试,验证CPU的指令执行功能和正确性,调试并优化设计。
5.性能评估:通过性能评估指标,如CPI(平均时钟周期数)、吞吐量等,评估CPU的性能优劣,进一步优化设计。
四、实验结果在实验中,成功设计了一个基于MIPS指令集架构的单周期CPU。
通过集成测试,验证了CPU的指令执行功能和正确性,实现了取指、译码、执行、访存、写回等阶段的正常工作。
同时,通过性能评估指标的测量,得到了CPU的性能参数,如CPI、吞吐量等。
通过性能评估,发现了CPU的性能瓶颈,并进行了相应的优化,提高了CPU的性能表现。
mips运算器设计的实验报告

mips运算器设计的实验报告
MIPS运算器设计的实验报告
MIPS运算器是一种使用MIPS指令集进行运算的微型计算机。
它是一个重要的数字逻辑电路设计实验,能够让我们深入了解计算机的内部结构、运算的实现原理和操作系统等重要的概念。
本文将简要介绍MIPS运算器的设计原理和实验过程。
首先,MIPS运算器的设计由以下六个部分组成:存储器、CPU、输入控制器、输出控制器、时钟和调试器。
存储器包括一个程序存储器和一个数据存储器,分别用于存储程序和数据。
CPU包括ALU和寄存器,用于处理运算。
输入控制器用于控制输入设备,输出控制器用于控制输出设备,时钟用于同步和计时,调试器用于调试程序。
其次,在设计MIPS运算器时,我们采用了门级逻辑的方法。
首先,我们先根据MIPS指令集定义CPU的指令格式和指令编码,然后使用Karnaugh图和布尔代数等方法进行逻辑门电路的设计和优化,最终实现电路的硬件描述语言(HDL)编写和模拟仿真。
最后,我们进行了一系列实验验证了MIPS运算器的正确性和性能。
我们通过加载不同的程序和数据,进行了各种不同的运算测试,包括加、减、乘、除、与、或、异或、移位等运算,同时还测试了运算器的运行速度和存储器的容量等性能
指标。
实验结果表明,MIPS运算器的设计符合MIPS指令集的规范,功能完备,性能稳定,能够满足各种不同的运算需求。
总之,MIPS运算器是一款非常实用且具有挑战性的数字逻辑电路设计实验,它可以让我们更好地理解计算机的原理和操作系统等重要的概念,同时也能够培养我们的动手能力和解决问题的能力。
mips 实验报告

MIPS实验报告1. 引言MIPS(Microprocessor without Interlocked Pipeline Stages)是一种经典的指令集架构(ISA),被广泛应用于计算机体系结构的教学和研究中。
本实验报告将介绍使用MIPS指令集实现的一系列实验,包括指令执行、流水线设计和缓存优化等。
2. 实验目标本次实验的主要目标是通过设计和实现一系列MIPS指令,加深对计算机体系结构的理解,并掌握MIPS指令的执行过程和流水线设计。
3. 实验环境为了完成实验,我们使用了MIPS模拟器和相应的开发工具。
这些工具提供了一个仿真环境,可以在计算机上执行MIPS指令,并提供了调试和测试的功能。
4. 实验步骤步骤1:设计指令首先,我们需要设计一系列MIPS指令,以实现特定的功能。
例如,我们可以设计一个加法指令,将两个寄存器中的值相加,并将结果存储到另一个寄存器中。
步骤2:实现指令接下来,我们需要在MIPS模拟器中实现这些指令。
通过编写相应的汇编代码,我们可以将指令转化为机器码,并在模拟器中执行。
步骤3:调试和测试一旦指令实现完成,我们就可以开始调试和测试。
通过单步执行指令,我们可以观察程序的执行过程,并检查寄存器和内存中的数据是否符合预期。
步骤4:性能优化在实现指令的过程中,我们还可以考虑对程序进行性能优化。
例如,通过引入流水线技术,可以提高指令的执行速度。
此外,我们还可以设计和实现缓存系统,以减少内存访问的延迟。
5. 实验结果经过一系列的设计、实现和优化,我们成功完成了MIPS指令的实验。
通过观察实验结果,我们可以得出一些结论和发现。
6. 结论本次实验通过设计和实现MIPS指令,加深了对计算机体系结构的理解,并掌握了MIPS指令的执行过程和流水线设计。
通过调试和测试,我们进一步完善和优化了指令的实现。
实验结果表明,我们的设计能够成功执行各种指令,并具有一定的性能优化。
7. 参考文献参考文献提供了关于MIPS指令集和计算机体系结构的详细信息,为本实验提供了重要的支持和指导。
位MIPS处理器设计实验报告

数字逻辑与处理器基础实验32位MIPS处理器设计实验报告王晗(2013011076)July26,2015Date Performed:July15,2015Partners:耿天毅(2012011119)陈志杰withdrawn1实验目的熟悉现代处理器的基本工作原理;掌握单周期和流水线处理器的设计方法。
2设计方案2.1总体结构由于这次实验涉及的功能较多,我们将完整的CPU分成多个模块。
指令存储器、寄存器堆、控制器、ALU控制器、ALU、数据存储器、UART等功能单元均在单独的Module中实现。
其中指令存储器、寄存器堆、控制器、ALU控制器、ALU等单元在Single Cycle Core中实例化,作为单周期处理器的核心;数据存储器、UART和定时器、LED、七段数码管、开关在Peripheral中实现,作为处理器的外设。
处理器核心和外设在顶层模块中实例化,互相通信。
单周期CPU模块的结构关系如Figure1所示:Figure1:单周期处理器结构对于流水线CPU,我们还在Pipeline Core中加入了流水线寄存器、冒险检测单元、数据转发单元:Figure2:流水线处理器结构2.2ALU1ALU模块的结构如图所示,输入两个操作数A、B和控制信号ALUFun、Signed,在ARITH子模块中做加减法运算,CMP子模块根据ARITH模块的输出进行比较判断,LOGIC和SHIFT模块分别进行逻辑运算和移位运算,ALUFun的最高两位用于控制多路选择器的输出。
Figure3:ALU结构ARITH模块ARITH模块中包括减法和加法两个模块,加法模块直接通过+号运算,减法模块先对第二个操作数取补码,再调用加法模块做加法运算。
Overflow和Negative信号的产生是ALU中的难点:Figure4:ADD中的Overflow和Negative1原作者:陈志杰;修改:王晗其中pos为正数,neg为负数,big为MSB=1的无符号数,small为MSB=0的无符号数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
组成原理实验报告姓名学号陈宝可 07055004刘睿 07055013林建财 07055040指导老师:姜欣宁2010年4月22日一、总体设计思想1.1 CPU简介CPU是计算机的核心,其重要性好比大脑对于人一样,它负责处理、运算计算机内部的所有数据。
CPU的种类决定了操作系统和相应的软件。
CPU主要由运算器、控制器、寄存器组和内部总线等构成,是PC的核心,再配上储存器、输入/输出接口和系统总线组成为完整的PC(个人电脑)。
单周期CPU 的特点是每条指令的执行只需要一个时钟周期,一条指令执行完再执行下一条指令。
再这一个周期中,完成更新地址,取指,解码,执行,内存操作以及寄存器操作。
由于每个时钟上升沿时更新地址,因此要在上升沿到来之前完成所有运算,而这所有的运算除可以利用一个下降沿外,只能通过组合逻辑解决。
这给寄存器和存储器RAM的制作带来了些许难度。
且因为每个时钟周期的时间长短必须统一,因此在确定时钟周期的时间长度时,要依照最长延迟的指令时间来定,这也限制了它的执行效率。
下图是cpu设计的思路:1.2系统主要框架第一台电子计算机与1946年2月14日诞生至今,计算机的发展迅速,经历了电子管,晶体管管,集成电路,大规模集成电路,超大规模集成电路的时代,现在集成电路的设计已经接近极限,不过在发展历程中,计算机的核心框架并没有太多的改变,仍然是由五大部件组成:存储器、运算器、控制器、I/O设备。
设计过程中主要以CPU(运算器+控制器)为中心。
如图是计算机组成原理图:CPU 的功能:设计的cpu主要是由ALU(运算器)和CU(控制器)两个核心部件构成,另外设计一些辅助器件。
ALU处理整个计算机的计算,设计的ALU只能进行简单的算术运算,并不能够实现很强大的计算功能,CU是整个计算机的控制部分,它能够接收外界的响应,并控制计算机的其他部件完成特定的功能,CU 和ALU共同组成cpu的核心部件,处理整个计算机的事件。
CPU开发的进程:设计初始时,成员讨论cpu所能实现的功能,cpu的组成部分,所需要的开发工具、语言、平台、参考资料等,明确了设计思想后,小组进行明确的分工,现在设计过程已经从最初的讨论进入初步的实践,小组成员正按照各自的分工进行cpu的设计开发。
设计成员的分工:本小组由三名成员,林建财主要完成设计思路提出和最终的整合,陈宝可主要完成各个模块的设计,刘睿主要完成报告的编写以及提出相关的意见,设计过程中成员需要相互配合,相互支持分工没有明显的界限,成员可以扬长避短,各展所长。
CPU设计的工具:现在存在很多的cpu开发语言,如VHDL硬件描述语言,V erilog HDL描述语言等等,它们都是非常优秀的开发工具,鉴于知识的局限性,这里只列出我们所学的工具。
Quartus® II design 是最高级和复杂的,用于system-on-a-programmable-chip (SOPC)的设计环境。
QuartusII design 提供完善的timing closure 和LogicLock™ 基于块的设计流程。
QuartusII design是唯一一个包括以timing closure 和基于块的设计流为基本特征的programmable logic device(PLD)的软件。
Quartus II 设计软件改进了性能、提升了功能性、解决了潜在的设计延迟等,在工业领域率先提供FPGA与mask-programmed devices开发的统一工作流程。
EDA技术EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。
EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。
利用EDA工具,以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程的计算机上自动处理完成。
CPU开发的步骤设计过程中,小组成员考虑的步骤如下1、设计定义和可综合的HDL代码2、逻辑综合3、版图规划4、单元布局和优化5、静态时序分析(STA)、形式验证(FV)和可测性电路插入(DFT)。
6、后布局优化,时钟树综合和布线设计7、寄生参数的提取8、后仿真,以及时序和功耗分析9、ECO(工程修改命令)修改。
10、物理验证。
目前已经完成了初期的开发过程,在后续时间中将完成后续步骤。
具体步骤如下图CPU的开发周期根据设计的具体步骤以及前期所做的工作,我们大概需要4-5周的时间来完成设计,cpu的开发过程中主要花费的时间是在后期的调试和实现上,前期相对比较容易实现,大概需要1周左右的时间,后期需要投入较多的精力和时间。
1.3参考资料《精通V erilog HDL语言编程》刘波电子工业出版社V erilog HDL设计实践与指导刘秋云等机械工业出版社1.4相关信息主频主频也叫时钟频率,单位是MHz(或GHz),用来表示CPU的运算、处理数据的速度外频外频是CPU的基准频率,单位是MHz。
CPU的外频决定着整块主板的运行速度。
CPU的位和字长位:在数字电路和电脑技术中采用二进制,代码只有“0”和“1”,其中无论是“0”或是“1”在CPU中都是一“位”。
字长:电脑技术中对CPU在单位时间内(同一时间)能一次处理的二进制数的位数叫字长。
所以能处理字长为8位数据的CPU通常就叫8位的CPU。
同理32位的CPU就能在单位时间内处理字长为32位的二进制数据。
字节和字长的区别:由于常用的英文字符用8位二进制就可以表示,所以通常就将8位称为一个字节。
字长的长度是不固定的,对于不同的CPU、字长的长度也不一样。
8位的CPU 一次只能处理一个字节,而32位的CPU一次就能处理4个字节,同理字长为64位的CPU一次可以处理8个字节。
倍频系数倍频系数是指CPU主频与外频之间的相对比例关系。
在相同的外频下,倍频越高CPU的频率也越高。
缓存缓存大小也是CPU的重要指标之一,而且缓存的结构和大小对CPU速度的影响非常大,CPU内缓存的运行频率极高,一般是和处理器同频运作,工作效率远远大于系统内存和硬盘。
实际工作时,CPU往往需要重复读取同样的数据块,而缓存容量的增大,可以大幅度提升CPU内部读取数据的命中率,而不用再到内存或者硬盘上寻找,以此提高系统性能。
但是由于CPU芯片面积和成本的因素来考虑,缓存都很小。
CPU扩展指令集CPU依靠指令来计算和控制系统,每款CPU在设计时就规定了一系列与其硬件电路相配合的指令系统。
指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。
从现阶段的主流体系结构讲,指令集可分为复杂指令集和精简指令集两部分,CPU内核和I/O工作电压从586CPU开始,CPU的工作电压分为内核电压和I/O电压两种,通常CPU的核心电压小于等于I/O电压。
其中内核电压的大小是根据CPU的生产工艺而定,一般制作工艺越小,内核工作电压越低;I/O电压一般都在1.6~5V。
低电压能解决耗电过大和发热过高的问题。
制造工艺制造工艺的微米是指IC内电路与电路之间的距离。
制造工艺的趋势是向密集度愈高的方向发展。
密度愈高的IC电路设计,意味着在同样大小面积的IC中,可以拥有密度更高、功能更复杂的电路设计。
现在主要的180nm、130nm、90nm、65nm、45纳米。
最近inter已经有32纳米的制造工艺的酷睿i3/i5系列了。
指令集(1)CISC指令集CISC指令集,也称为复杂指令集,英文名是CISC,(Complex Instruction Set Computer的缩写)。
在CISC微处理器中,程序的各条指令是按顺序串行执行的,每条指令中的各个操作也是按顺序串行执行的。
顺序执行的优点是控制简单,但计算机各部分的利用率不高,执行速度慢。
(2)RISC指令集RISC是英文“Reduced Instruction Set Computing ” 的缩写,中文意思是“精简指令集”。
它是在CISC指令系统基础上发展起来的,有人对CISC机进行测试表明,各种指令的使用频度相当悬殊,最常使用的是一些比较简单的指令,它们仅占指令总数的20%,但在程序中出现的频度却占80%。
复杂的指令系统必然增加微处理器的复杂性,使处理器的研制时间长,成本高。
并且复杂指令需要复杂的操作,必然会降低计算机的速度(3)IA-64EPIC(Explicitly Parallel Instruction Computers,精确并行指令计算机)是否是RISC和CISC体系的继承者的争论已经有很多,单以EPIC体系来说,它更像Intel的处理器迈向RISC体系的重要步骤。
从理论上说,EPIC体系设计的CPU,在相同的主机配置下,处理Windows的应用软件比基于Unix 下的应用软件要好得多。
超流水线与超标量在解释超流水线与超标量前,先了解流水线(pipeline)。
流水线是Intel首次在486芯片中开始使用的。
流水线的工作方式就象工业生产上的装配流水线。
在CPU中由5—6个不同功能的电路单元组成一条指令处理流水线,然后将一条X86指令分成5—6步后再由这些电路单元分别执行,这样就能实现在一个CPU时钟周期完成一条指令,因此提高CPU的运算速度。
经典奔腾每条整数流水线都分为四级流水,即指令预取、译码、执行、写回结果,浮点流水又分为八级流水。
超标量是通过内置多条流水线来同时执行多个处理器,其实质是以空间换取时间。
而超流水线是通过细化流水、提高主频,使得在一个机器周期内完成一个甚至多个操作,其实质是以时间换取空间封装形式CPU封装是采用特定的材料将CPU芯片或CPU模块固化在其中以防损坏的保护措施,一般必须在封装后CPU才能交付用户使用。
CPU的封装方式取决于CPU安装形式和器件集成设计,从大的分类来看通常采用Socket插座进行安装的CPU使用PGA(栅格阵列)方式封装,而采用Slot x槽安装的CPU则全部采用SEC(单边接插盒)的形式封装。
现在还有PLGA(Plastic Land Grid Array)、OLGA(Organic Land Grid Array)等封装技术。
多线程同时多线程Simultaneous multithreading,简称SMT。
SMT可通过复制处理器上的结构状态,让同一个处理器上的多个线程同步执行并共享处理器的执行资源,可最大限度地实现宽发射、乱序的超标量处理,提高处理器运算部件的利用率,缓和由于数据相关或Cache未命中带来的访问内存延时。