8 在没有示波器的情况下测量方波? 我的Z80行为异常,想检查信号。但是,我没有示波器,因此我正在寻找另一种检查引脚上方波的方法。 我基本上只需要确定它是否正在输出任何生命迹象,我本身就对这些位不感兴趣。有办法吗? 8 microprocessor z80
5 为什么没有以更简单的方式编写此代码? 在使用汇编语言时,我遇到了一个问题。这是问题: 假设位P2.2用于控制室外光,位P2.5用于控制建筑物内的光。展示如何打开外部灯和关闭内部灯。 给出的解决方案: SETB C ; CY = 1 ORL C, P2.2 ; CY = P2.2 ORed w/ CY MOV P2.2, C ; turn it on if not on CLR C ; CY = 0 ANL C, P2.5 ; CY = P2.5 ANDed w/P2.5 MOV P2.5,C ; turn it off … 8 microprocessor assembly 8051
3 LogiSim中非常简单的CPU设计 我目前是一名高中生,对计算机/电气工程,特别是微处理器设计感兴趣。我已经阅读了Charles Petzold的Code,并且已经开始阅读Microchip Design Wikibook(这似乎是不完整的。)通过阅读Code,我了解了CPU背后的基本逻辑,并且已经开始在LogiSim中构建代码。代码中的第17章详细介绍了我要构建的CPU,但是电路缺少关键组件-时钟信号和指令解码。有些时钟信号似乎非常明显(PC似乎需要稳定的时钟信号),但是其他一些信号(例如如何锁存RAM值)我必须仔细考虑并尝试开始工作。 我可以构建一个工作累加器(我认为它不能准确地称为ALU,因为它缺少L部分),它可以通过一个输入在加减之间切换,而我知道这是我需要的算术部分-一旦跳转操作码起作用,就可以在代码中实现乘法和除法。我苦苦挣扎的部分是指令解码。通过一些Google搜索,我发现每个操作码都需要解释为多个微指令,但是我对如何使用它感到迷茫。目前,我的指令解码器只是一个组合分析电路,每个操作码都有一个二进制输出-总共13个。 代码的工作方式是,它具有一个8位代码值(我仅使用低端字节),然后具有两个单独的8位地址值,然后我将其合并为输入到RAM的16位地址。为了锁存这些值,我有一个单独的计数器,该计数器最多计数10b,然后复位为00b。它依次是每个锁存器的时钟输入(对于三个锁存器,分别为a,b和c。第二个时钟的a为1,而b&c为0,然后b为1和1&c为0,然后c为1,而1&b为0,则将其重置)。但是在诸如ADD 000Ah之类的指令上,PC跳至000AH ...本应被添加到累加器中,但实际上被锁存到代码锁存器中,然后被解释为下一个操作码,这使整个过程顺利进行疯。 我感觉好像缺少一些有关指令解码以及如何做时钟信号的重要信息... 下面是LogiSim .circ文件: https://dl.dropboxusercontent.com/u/61676438/PetzoldMk5/8BitAdder.circ https://dl.dropboxusercontent.com/u/61676438/PetzoldMk5/8BitAdderSubtractor.circ https://开头dl.dropboxusercontent.com/u/61676438/PetzoldMk5/8BitInverter.circ https://dl.dropboxusercontent.com/u/61676438/PetzoldMk5/8BitLatch.circ https://dl.dropboxusercontent.com/u/61676438/PetzoldMk5/ ID.circ https://dl.dropboxusercontent.com/u/61676438/PetzoldMk5/PetzoldMk5.circ PetzoldMk5是主CPU,它依赖于其他文件作为库导入。 这是操作码列表(全部为二进制): Load 0001 Add 0010 Add w/ Carry 0011 Sub 0100 Sub w/ Borrow 0101 Jump 0110 Jump w/ Carry 0111 Jump W/ 0 1000 Jump w/o C 1001 Jump W/o … 8 design microprocessor logisim
2 商业微处理器如何以千兆赫兹时钟满足定时? 我在使相对简单的FPGA设计(对于Altera Cyclone IV)满足由250 MHz时钟驱动的逻辑时序方面遇到麻烦。这让我想知道商用微处理器(例如Intel Core i7)如何满足时钟频率超过高出一个数量级的时序要求。 当我为FPGA苦苦挣扎于250 MHz时,商用微处理器如何满足3.8 GHz的时序要求? 8 fpga microprocessor timing
3 微处理器系列的制造和分级 英特尔生产看似相似的微处理器系列。例如, 该核心i5-3320M(2.6GHz的,3 MB高速缓存), 该核心i5-3360M(2.8GHz的,3 MB高速缓存),和 该核心i7-3520M(2.9 GHz,拥有4 MB高速缓存)。 英特尔是否会(或可能会)生产这三种处理器 在单独的生产线上; 在同一条生产线上,但在不同的日期分别运行; 在同一行上,无差别地运行,直到后来-在测试阶段-对处理器进行分级,按等级对它们进行排序,并相应地为其分配型号;要么 以其他方式我不明白? 除了选项1,所有这些对我来说似乎都是合理的,但对我来说似乎合理的事情可能与像英特尔这样的公司实际制造零件的方式无关。 请随意对这个问题进行广泛的解释。我最好奇要学习在现代实践中如何组织这种制造的基础知识。 更新 @Shantam提供了一个更好的词与搜索引擎一起使用: 分档而不是分级。 用@Shantam的词搜索,三年前在Superuser.com上发现了@nik的有趣评论: 实际上,制造商是明智之举。他们将自己的产品“分类”为不同级别的故障。处理器实例中部分失败的缓存可能会变成“更少的缓存,更便宜的版本”,而不是进入垃圾箱。在制造过程中发现的故障数量以及此类内存模块的表面积方面都可以很好地工作(整个内核“被连接下来以作为低端处理器(Phenom X3?)出售该实例”)。这没什么不对的,超频者很高兴知道这些事情。 超频器角度就是这样,如果处理器无法运行(加热)超过某些频率,则会将其装箱到较低的频率目标。您会得到E6300 C2D(超频器可以将其推升至更高的频率,并具有更好的散热效果,并可能对制造商严格的“分箱”政策带来好运,而这种政策可能会偏向低频频段。 8 microprocessor manufacturing