Questions tagged «cpu»

CPU,称为中央处理器,被称为计算机的心脏。它负责通过执行指令指定的基本算术,逻辑,控制和输入/输出(I / O)操作来执行计算机程序的指令。

2
GPU / CPU如何与标准显示输出通信?(HDMI / DVI /等)
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 我对cpu / gpu在处理后如何呈现视频数据(向其使用的任何设备)感兴趣。 有人告诉我视频是由CPU / GPU处理的,然后通过高速串行发送到集成电路,该串行将串行信号转换为适当的显示输出,但是我无法通过在线搜索来确认。 我对信令感兴趣,无法搜索协议/等,因为我不知道我在寻找什么。那么,CPU / GPU是直接与视频输出交互(我可以很容易找到这些协议)还是有一个“中间人”可以这么说,如果是的话,芯片/等的类型是什么?
14 cpu  gpu 

6
最简单的计算机内存(Pi0K)
我想制造最简单的计算机。我不在乎速度或存储,实际上,低速和低存储是一个巨大的优势,因为我想用晶体管(理想的是继电器)来构建它,并且我希望每个状态都有一个LED。它会通过一个Raspberry Pi进行编程,该Raspberry Pi将托管一个摄像头,以便您可以看到每个时钟周期正在执行(是的,它将以Hz而不是GHz的频率运行)。这将是一个开放式设计,意在让学校可以购买零件,了解和改进设计。因此,总预算必须低于400英镑,最好是100英镑左右。 我已经对此进行了多年的研究,并且对CPU有很好的想法(最少的寄存器,DIP开关中的微码以及用于减少晶体管数量的位串行逻辑/算术运算)。我不知道如何获取内存,我想要1024到8096位。 我能想到的最好的是两个6位n分之一的解码器,可以访问64 x 64的电容器网格。他们要么在里面充电,要么没有,读书会强化这种状态。电容器上将没有LED,因为此“ DRAM”的刷新将以顺序或分钟为单位(这很可惜,因为这将是唯一不显示状态的部分)。 其他想法包括某种形式的磁带驱动器(紧凑的盒式磁带机制:大容量存储,过于复杂,无法寻道),鼓式存储器(豆罐周围的带子:太难使机械师正常工作),机械式存储器(自行车车轮和滚珠轴承:太多的位错误),核心内存(大型硬铁氧体磁芯:要达到所需的规模仍然非常棘手),磁带/卡(我们仍然可以购买磁带阅读器),带有二进制打孔的旋转磁盘以及一些磁性用于存储的内存(构建起来太复杂)。 最终目的是发布可以在学年中构建的设计,其中CPU和内存的所有部分都是“可见的”,因此您可以看到指令提取,解码为微代码以及地址解码/注册访问/逻辑全部。在几分钟内发生。 如果有人对真正便宜的内存(<< 100英镑)有确切的想法,那么请告诉我。 托尼 PS当前的播放状态在http://www.blinkingcomputer.org/

4
4位CPU的单位体积销量是否仍超过32位CPU?
路在2002年回来,吉姆·特利提到,大约14销售的所有的CPU%是4位的CPU,而约8销售的所有的CPU%是32位CPU。(我认识的大多数人都对仍在制造任何 4位CPU 感到惊讶,而不是他们做得这么好)。 现在是2011年-4位CPU的单位体积销量是否仍超过32位CPU和64位CPU?我可以去哪里查询按数量计算的最新销售数字?什么是最受欢迎的网站和杂志,以了解更多有关现代4位CPU及其开发工具的信息?

6
如何有效地为CPU设计操作码?
我正在Logisim中构建一个简单的16位CPU,并准备好ALU和想要的操作码。现在,我发现很难为命令找到正确的编码,以使不同的子电路(例如,逻辑,算术)不需要所有(构成编码的)控制线作为输入,而是尽可能少地输入。是否有任何策略或方法有助于有效的操作码设计? 提前

4
当微控制器内存不足时会发生什么?
这可能只是一个巧合,但我注意到我用过的微控制器在内存用尽时重新启动(如果是硬件,则为Atmega 328)。这是微控制器在内存不足时会做什么吗?如果没有,那会发生什么? 为什么/如何?堆栈指针肯定会盲目地增加到未分配的内存范围(或翻转),但是随后会发生什么:是否有某种保护措施使其重新启动,或者(除其他影响外)是覆盖临界值的结果?数据(我认为与我认为直接从Flash运行的代码不同)? 我不确定这应该在此处还是在Stack Overflow上,请告诉我是否应该移动它,尽管我很确定硬件在其中起作用。 更新资料 我应该指出,我对内存损坏背后的实际机制特别感兴趣(这是SP翻转的结果->是否取决于uC的内存映射等)?

2
是否缓存了页表遍历?
在具有硬件TLB管理的微处理器(例如Intel x86-64)上,如果发生TLB未命中并且处理器正在页表中,这些(片外)内存访问是否会通过缓存层次结构(L1,L2等)进行访问。 )?
12 memory  cpu  cache 

2
是否在标准单元中实现了某些CPU,是否对它们进行了定制?
进一步解释这个问题,我看到一些芯片图片,这些芯片正在实现Cortex-M0,蓝牙LE等,具体取决于芯片的功能,并且看起来像这样(nRF51822): 在较旧的CPU上,我看不到太多的数字“模糊”逻辑实现,例如(AMD386): 经过一番摸索之后,似乎今天的ARM实现是使用标准单元(在管芯上创建非晶形状)完成的。因此,我可以说第一张图片上的“模糊”实现是Cortex本身。 我知道所有常规形状都可能是记忆,所有“手绘”部分都是类似的。所以我想知道,过去模拟设计师是在定义架构的数字专家的指导下实现数字部分的吗? 我想念什么?
11 arm  cpu  semiconductors  die 

3
CPU支持堆栈是什么意思?
CPU如何不支持堆栈?使用子例程的任何体系结构(我很确定这是所有体系结构)是否都不必将返回地址压入堆栈,以便它可以返回到调用子例程的位置?堆栈仅表示具有指向特定方向的指针并充当堆栈数据结构的一部分内存。我只是不了解架构如何不支持堆栈。 编译器与硬件体系结构在多大程度上确定了自动内存存储(自动变量还是静态变量)?

2
超标量和多核之间的区别?
我似乎无法理解这一点,超标量和多核处理器之间有什么区别? 我会不断混淆它们,因此,对它们所做的一些简单说明会很棒。
11 cpu 

4
模拟模拟乘法,是混合CPU的一部分(很有趣)
简短版:如何制作一个带两个模拟直流输入的模拟乘法器? 长版: 我发表了评论,向本·埃德斯(Beat Eaters)的视频推荐了另一个问题,但这样做的时候,我最终还是再次观看了一些内容,然后对自己说:“ 嗯……我想知道将某些部分制作成纯粹的模拟会更容易 ”。 总线可能只是一条导线,之后不同的电压电平将通过ADC转换为位。 只是弄乱了一点,我走了这么远,理论上可以计算出斐波那契数: 图1,计算第一个斐波那契数的混合计算机的小型演示 链接到模拟器。 在上面的gif文件中,我超出了电压范围,因此很容易看到斐波那契数,实际上我只使用250 mV =二进制1(“设定值”处的LSB),然后使其传播通过每个电容器可容纳4位的DRAM。 要在gif中查看的重要部分是“ a + b”文本右侧的运算放大器的输出,其中显示了斐波那契数。 在每次操作之间,我将先使用ADC再加上DAC来量化答案。因此,如果我要读取1.1V,则DAC会将其转换为1.0V,然后将其存储在DRAM中。然后每个X时钟一次,整个DRAM将必须经过量化器以确保电容器不会浮动。 ALU只能执行+,-和平均。我当时正在考虑进行乘法运算,但后来停了下来。我之前已经制作并看过基于二极管的乘法器,但是我不想使用它们,因为二极管必须匹配。我宁愿使用可以用电位器修整的电阻。w,我想出了一个混合乘法器,一半模拟,一半数字。 因此,我首次在各地使用相同的电阻器。 图2,数字和模拟值之间的天真乘数。数字值偏移1。 然后我用二进制权重将其转换为: 图3,二进制加权数字和模拟值之间的幼稚乘数。数字值偏移1。 这让我想起了R2 / R梯形图,但是我无法使其与运放一起工作。 但是,我想到了R2 / R梯子的工作原理,并且想起了它们的输出乘以它们的电压源。所以我终于想到了这个设计: 图4,二进制加权数字和模拟值之间基于R2 / R的乘数 我喜欢它,但是唯一的问题是总线是模拟的,只有一根线。因此,如果我不得不使用上面图4中的解决方案,那么就不得不在混合CPU的乘法区域使用另一个ADC。我不能在量化器区域重复使用那个。 提问时间: 我应该如何制作一个需要两个模拟输入的乘法器? 我不希望基于3个二极管和4个运算放大器的解决方案,因为您无法修整二极管。我的信念是,如果它们不匹配,那么它们给出的答案将超过250 mV。我还没有在现实世界中尝试过。 我已经试过在这个词上方一英寸处的链接中基于MOS的乘法器,但是我不知道自己是否傻。我无法在模拟器中使用它。有关MOS实施失败的信息,请参见下面的gif。或单击此链接进行仿真。 我并不想在这个问题抛出一个微控制器。 我不希望使用的电机旋转和使用一些诡计。 Ë- Ť[R çË-Ť[RCe^{\frac{-t}{RC}} 424= 0.25424=0.25\frac{4}{2^4}=0.25 乘法完成后,将带到量化器以确保该值尽可能接近二进制值。所以小的错误是可以的。 这是显示我无法制作基于MOS的失败的gif: 图5,我从上面的Wiki链接复制了原理图,但是它在模拟器中不起作用。 如果可以的话,那么当我将参考电压从5 V更改为-5 …
10 analog  cpu  multiplier 

4
当您可以对两个寄存器进行XOR以产生0时,为什么MIPS将R0用作“零”?
我认为我正在寻找琐事问题的答案。我试图理解为什么MIPS体系结构在通过对自己的寄存器进行异或运算就可以实现同一目的时,在寄存器中使用显式的“零”值的原因。可以说该操作已经为您完成;但是,我真的无法想象您会使用很多“零”值的情况。我阅读了轩尼诗的原始论文,事实上,它只是分配了一个零,没有任何正当的理由。 是否存在将硬编码二进制赋值为零的逻辑原因? 更新: 在8k的xc32-gcc可执行文件(用于PIC32MZ中的MIPS内核)中,我有一个“零”实例。 add t3,t1,zero 实际答案: 我将赏金授予拥有MIPS和条件代码信息的人。答案实际上取决于条件的MIPS架构。尽管起初我不想分配时间,但我回顾了openparc,MIPS-V和OpenPOWER的体系结构(本文为内部文件),以下是摘要。由于管线的体系结构,R0寄存器是在分支上进行比较所必需的。 整数与零和分支比较(bgez,bgtz,blez,bltz) 整数比较两个寄存器并分支(beq,bne) 整数比较两个寄存器和陷阱(teq,tge,tlt,tne) 整数比较寄存器以及立即数和陷阱(teqi,tgei,tlti,tnei) 它只是归结为硬件在实现中的外观。在MIPS-V手册中,第68页有未引用的报价: 条件分支的设计包括两个寄存器之间的算术比较操作(在PA-RISC和Xtensa ISA中也是如此),而不是使用条件代码(x86,ARM,SPARC,PowerPC),或仅将一个寄存器与零进行比较( Alpha,MIPS)或两个仅用于相等性的寄存器(MIPS)。该设计的动机是观察到组合的比较分支指令ts进入常规流水线,避免了额外的条件代码状态或使用了临时寄存器,并减少了静态代码的大小和动态指令的获取速度。另一个要点是,与零的比较需要很短的电路延迟(尤其是在高级过程中转移到静态逻辑之后),因此几乎与算术幅值比较昂贵。融合比较分支指令的另一个优点是,可以在前端指令流中更早地观察到分支,因此可以更早地进行预测。在可以基于相同条件代码进行多个分支的情况下,具有条件代码的设计可能会有优势,但我们认为这种情况相对较少。 MIPS-V文档没有引用部分的作者。我感谢大家的时间和考虑。

2
> 2010 CPU散热片后面的金属板是实际的芯片裸片基板吗?
我正在尝试找到有关现代英特尔CPU封装的正式文档,以了解CPU芯片的构造。但是,解释是非常基本的,并且无论是在散热板后面的金属外观板是管芯封装还是实际的硅基板,非正式的来源都不同。 我希望发现金属板就像TO-220晶体管封装的金属界面一样,因为我猜想<1mm的硅晶片本身就很脆弱。 我想找到正式的资源,因为那里有很多不同的意见。
10 cpu  packages 



2
堆和栈的物理表示是什么?
我可以很容易地理解.bss和代码在处理器中如何进行物理表示,其中处理器具有用于存储程序计数器可以计数的指令的存储库,而bss(块起始符号)只是全局数据。但是,这里有用于局部变量的堆栈和用于动态内存的堆。这些东西如何物理地放在电路上?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.