指令集

龙芯宣传的自主知识产权没有错

非 Y 不嫁゛ 提交于 2020-02-28 21:44:14
和别人吵架没吵完,继续: 龙芯--中国CPU核自主战略并非失败 midc :要不要重新做指令集什么的这个旁人也许无法说什么. 但是有两点,实在够恶心国人的: 1 自主知识产权. 不管是搞电子的还是其他专业的,绝对会理解为不受国际上任何限制.可是现在呢,又要去买MIPS授权.大家会觉得你这个项目是又一个汉芯.你用人家已有 的专利(别说他那专利在国外),还叫什么自主知识产权?就算你这样搞国产CPU,大家也觉得可行,因为毕竟从设计到生产到应用都是自己搞的,可是你用别人的专利你为什么要大张旗鼓的宣传你是完全自主知识 产权?你这样还不叫恶心? (不得不插一段,上次我查专利,居然有2B公司把cat /proc/cpuinfo这种东西都申请为专利了,说发明了查看Linux系统CPU信息 ) 我觉得有些人在启动这个项目的时候根本就没有任何目的性,你是要用在军方及相关国家保密单位呢?还是要走向市场?你要走向市场当时为什么不考虑到MIPS 在国外授权的问题? 别告诉我走向市场先在国内卖就OK了, IBM ,HP ,SUN,DELL的服务器进中国,国家收了多少关税 ? 小型机且不论,国内的所谓,方正,浪潮,联想之类的X86服务器,成本比人家低这么多?又卖出去多少?君不见各大机房的X86服务器绝大部分都是人家的服 务器吗 ? 服务器如此尚且你新出的非X86的CPU , 市场定位相当的烂

龙芯宣传的自主知识产权没有错

落爺英雄遲暮 提交于 2020-02-28 21:15:37
和别人吵架没吵完,继续: 龙芯--中国CPU核自主战略并非失败 midc :要不要重新做指令集什么的这个旁人也许无法说什么. 但是有两点,实在够恶心国人的: 1 自主知识产权. 不管是搞电子的还是其他专业的,绝对会理解为不受国际上任何限制.可是现在呢,又要去买MIPS授权.大家会觉得你这个项目是又一个汉芯.你用人家已有 的专利(别说他那专利在国外),还叫什么自主知识产权?就算你这样搞国产CPU,大家也觉得可行,因为毕竟从设计到生产到应用都是自己搞的,可是你用别人的专利你为什么要大张旗鼓的宣传你是完全自主知识 产权?你这样还不叫恶心? (不得不插一段,上次我查专利,居然有2B公司把cat /proc/cpuinfo这种东西都申请为专利了,说发明了查看Linux系统CPU信息 ) 我觉得有些人在启动这个项目的时候根本就没有任何目的性,你是要用在军方及相关国家保密单位呢?还是要走向市场?你要走向市场当时为什么不考虑到MIPS 在国外授权的问题? 别告诉我走向市场先在国内卖就OK了, IBM ,HP ,SUN,DELL的服务器进中国,国家收了多少关税 ? 小型机且不论,国内的所谓,方正,浪潮,联想之类的X86服务器,成本比人家低这么多?又卖出去多少?君不见各大机房的X86服务器绝大部分都是人家的服 务器吗 ? 服务器如此尚且你新出的非X86的CPU , 市场定位相当的烂

嵌入式课程作业1

僤鯓⒐⒋嵵緔 提交于 2020-02-27 09:51:08
#CPU体系结构的种类特点及应用场合 一、ARM ARM架构,过去称作进阶精简指令集机器(Advanced RISC Machine,更早称作:Acorn RISC Machine),是一个32位精简指令集(RISC)处理器架构,其广泛地使用在许多嵌入式系统设计。 特点: 体积小、低功耗、低成本、高性能;支持 Thumb ( 16 位) /ARM ( 32 位)双指令集,能很好的兼容 8 位 /16 位器件;采用RISC体系结构,大量使用寄存器,指令执行速度更快;大多数数据操作都在寄存器中完成;寻址方式灵活简单,执行效率高;指令长度固定;对于不同系列的ARM有各自的特点。 应用领域: 工业控制领域:作为32的RISC架构,基于ARM核的微控制器芯片不但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展。 网络应用:随着宽带技术的推广,采用ARM技术的ADSL芯片正逐步获得竞争优势。此外,ARM在语音及视频处理上进行了优化,并获得广泛支持,也对DSP的应用领域提出了挑战。 消费类电子产品:ARM技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。 成像和安全产品:现在流行的数码相机和打印机中绝大部分采用ARM技术。手机中的32位SIM智能卡也采用了ARM技术。 二、X86/Atom

RISC-V学习总结之历史和现状

柔情痞子 提交于 2020-02-26 06:30:30
RISC-V学习总结之历史和现状 康乐 2020.02.26 1 RISC与RISC-V RISC发明者是美国加州大学伯克利分校教师David Patterson,RISC-V(拼做risk-five)是第五代精简指令集,也是由David Patterson指导的项目。 1.1 为什么要做RISC-V指令集? 历史上是这样的,2010年伯克利大学并行计算实验室(Par Lab) 的1位教授和2个研究生(下图这三位大佬)想要做一个项目,需要选一种计算机架构来做。当时面临的的是选择X86、ARM,还是其他指令集,不管选择哪个都或多或少有些问题,比如授权费价格高昂,不能开源,不能扩展更改等等。所以他们在2010年5月开始规划自己做一个新的、开源的指令集,就是RISC-V。 接着时间到2015年,这个指令集在学术界已经开始出名了,这时为了更好的推动这个指令集在技术和商业上的发展,3位创始人大佬做了下面两件事情。 技术方向,成立RISC-V基金会,维护指令集架构的完整性和非碎片化。 商业方向,成立SiFive公司,推动RISC-V的商业化。 1.2 硬件构建语言Chisel 除了开发RISC-V指令集,大佬们还同步开发了用于RISC-V处理器设计的Chisel语言(Constructing Hardware in a Scala Embedded Language,硬件构建语言)。

【系统分析师之路】第十二章 计算机组成与体系结构(习题汇总)

怎甘沉沦 提交于 2020-02-26 02:20:38
【系统分析师之路】第十二章 计算机组成与体系结构(习题汇总) ■知识点汇总 知识点汇总 ■习题汇总 01.Flynn分类法根据计算机在执行程序过程中()的不同组合,将计算机分为四类,当前主流的多核计算机属于()计算机。 A.指令流和数据流 B.数据流和控制流 C.指令流和控制流 D.数据流和总线宽带 A.SISD B.SIMD C.MISD D.MIMD 解答:答案选择A|D。 MISD:多指令单数据流。只有理论上存在的可能性。 SIMD:单指令多数据流。它的代表有超级向量处理器,阵列处理机,并行处理机。它的关键特征是各处理器以异步的方式执行同一条指令。 02.以下关于复杂指令集计算机弊端的叙述中,错误的是()。 A.指令集过分庞杂 B.每条复杂指令需要占用过多的CPU周期 C.CPU中的寄存器过多,利用率低 D.强调数据控制,导致设计复杂,研制周期长 解答:答案选择C。只有精简指令集才操作寄存器,复杂指令集是因为变长和指令繁多等缘故,所以利用率才不高。精简指令集适用于流水线技术中,它可有效支持高级语言。 03.设每条指令由取址,分析和执行三个部件完成,并且每个部件的执行时间均为t。若采用常规标量单流水线处理机(即该处理器的度为1),连续执行16条指令,则共耗时()t;若采用度为4的超标量流水线处理机,连续执行上述16条指令,则共耗时()t。 A.16 B.18 C.32 D.48

Java字节码指令集的使用详细

ε祈祈猫儿з 提交于 2020-02-25 19:55:27
本篇文章对Java字节码指令集的使用进行了详细的介绍。需要的朋友参考下 Java虚拟机指令由一个字节长度的、代表某种特定含义的操作码(Opcode)以及其后的零个至多个代表此操作参数的操作数构成。虚拟机中许多指令并不包含操作数,只有一个操作码。若忽略异常,JVM解释器使用一下为代码即可有效工作。 复制代码 代码如下: do{ 自动计算PC寄存器以及从PC寄存器的位置取出操作码 if(存在操作数) 取出操作数; 执行操作码所定义的操作; }while(处理下一次循环) 操作数的数量以及长度,取决于操作码,若一个操作数长度超过了一个字节,将会以Big-Endian顺序存储(高位在前字节码),其值应为(byte1<<8)|byte2。 字节码指令流是单字节对齐,只有"tableswitch"和"lookupswitch"两指令例外,它们的操作数比较特殊,以4字节为界限划分的,需要预留出相应的空位来实现对齐。 限制Java虚拟机操作码的长度为一个字节,且放弃编译后代码的参数长度对齐,是为了获得短小精干的编译代码,即使可能会让JVM实现付出一定性能成本为代价。由于操作码只能有一个字节长度,故限制了指令集的数量,又没有假设数据是对齐好的,意味着数据超过一个字节时,不得不从字节中重建出具体的数据结构,会损失一些性能。 数据类型与Java虚拟机 在JVM中的指令集中

JVM学习——字节码(学习过程)

旧街凉风 提交于 2020-02-23 12:23:15
JVM——字节码 为什么要学字节码 字节码文件,有什么用? JVM虚拟机的特点:一处编译,多处运行。 多处运行,靠的是.class 字节码文件。 JVM本身,并不是跨平台的。Java之所以跨平台,是因为JVM本身不夸平台。 二进制的文件,显然不是给人看的。是给机器看的。 从根源了解了之后,返回到语言层次 好多都会豁然开朗。 必须要学,学一个东西,还需要理由吗? Java语言规范补充: JVM虚拟机规范(相对底层的)Java,Groovy,kotlin,Scala。 编译后都是Class文件,所以就都能在JVM虚拟机上运行。 字节码:枯燥且重要 字节码文件解读 一个Java类,然后进行编译成字节码文件 package com.dawa.jvm.bytecode; public class MyTest1 { private int a = 1; public int getA() { return a; } public void setA(int a) { this.a = a; } } javap 编译后的结果: ➜ main javap com.dawa.jvm.bytecode.MyTest1 Compiled from "MyTest1.java" public class com.dawa.jvm.bytecode.MyTest1 { public com.dawa

奔腾的芯——英特尔公司

こ雲淡風輕ζ 提交于 2020-02-20 06:40:41
时势造英雄 1968年,摩尔和诺伊斯在硅谷创建了英特尔公司,不过那时候他一直是一个婴儿,因为他人数少,生意小,产品低端,那时候各个大公司都设计自己的处理器,英特尔只能生产一些低性能的处理器,直到70世纪的8086处理器,大家依然将他看成小弟弟,虽然他的性价比很高,但是他也是低端产品。在1981年,IBM为了更快的搞出pc,使用了英特尔的8086处理器,结果导致英特尔一举成名,后来,由于IBMpc无法阻止兼容机的出现的,导致兼容机厂不停的出现,但是为了兼容IBM pc大家都使用英特尔的处理器,这使英特尔的成为了计算机产业链中不可代替的一环,他的崛起就成了必然。 在80年代,日本的经济达到了顶峰,占到全球的一半,日本的芯片占到了整个pc市场的百分之60,但是当时日本的芯片都处在低端的产品上,当时英特尔放弃了低端的产品,在新的芯片上投资了进3亿美元,是当时中国五年计划中对半导体投资的好几倍,1985在摩托罗拉之后第二个造出了32位微处理器80386,这时候他开始扩大他的产业,一统了兼容机市场 到了1989年,英特尔推出了80486,一举超过了所有的日本半导体公司,1993年英特尔推出了奔腾系列,同时也摘掉了低性能芯片的帽子,从此也不再用数字来命名自家的处理器了,但是人们还是习惯用x86系列来称英特尔的处理器,现在英特尔的处理器处理器已经达到了工作处理器的水平

信息安全系统设计基础第五周学习总结

ε祈祈猫儿з 提交于 2020-02-19 23:07:54
第四章 处理器体系结构 4.1 Y86指令集体系结构 指令集体系结构,包括定义各种状态元素、指令集和他们的编码、一组编程规范和异常事件处理。 程序员可见的状态:Y86程序中的每条指令都会读取或修改处理器状态的某些部分。 8个程序寄存器:%eax、%ebx、%ecx、%edx、%esi、%edi、%esp、%ebp。存储一个字。 存储器:可以理解为很大的字节数组,保存着程序和数据。Y86用虚拟地址来引用存储器位置。 物理地址:硬件和操作系统软件联合将虚拟地址翻译成实际,指明数据实际保存在存储器的那个位置。 状态码Stat,表明程序执行的总体状态。 Y86指令:基本上是IA32指令集的一个子集。 指令编码 每条指令的第一个字节表明指令的类型。高四位是代码部分,第四位是功能部分。 !指令集的重要性质——字节编码必须有唯一的解释。 Y86异常 Y86程序 没有伸缩寻址模式; !以“.”开头的词是汇编器命令 YIS(指令集模拟器)目的是Y86机器程序代码的执行 一些Y86指令的详情 两个特别的指令组合需要注意! 4.2 逻辑设计和硬件控制语言HCL 逻辑门 AND &&. OR ||. NOT 组合电路——将很多逻辑门组合成一个网,构建计算块。 !两个限制: (1) 两个或多个逻辑门的输出不能连接在一起,否则它们可能会使线上的信号矛盾,可能会导致一个不合法的电压或电路故障; (2)

C# IL 指令集

耗尽温柔 提交于 2020-02-19 17:31:41
This is a list of the instructions in the instruction set of the Common Intermediate Language bytecode. Opcode Instruction Description Type of instruction 0x58 add Add two values, returning a new value. Base instruction 0xD6 add.ovf Add signed integer values with ov er f low check. Base instruction 0xD7 add.ovf.un Add unsigned integer values with ov er f low check. Base instruction 0x5F and Bitwise AND of two integral values, returns an integral value. Base instruction 0xFE 0x00 arglist Return arg ument list handle for the current method. Base instruction 0x3B beq <int32 (target)> B ranch to