复古计算机学校项目的CPU


9

我是一所IT学校的学生,我们正在尝试一个项目,该项目可以用来向一年级的学生展示舞台背后的工作原理,最终我们想到了制造一台复古计算机。

我已经阅读了许多有关Z80处理器的内容,但是我猜想我们需要更强大的功能,尽管考虑到我们会找到很多文档,ARM可能是一个不错的选择,但我们仍在怀疑该体系结构,还建立了一些特殊需求:

  • 如果需要更多RAM,则使用外部地址总线
  • > 50Mhz
  • 16或32位
  • 没有BGA / QFN封装
  • 没有FPGA板
  • 串行接口(?)
  • 预算也不是太贵,因为我们的预算有限

P8X32A-D40看起来像一个不错的CPU,但缺少我们需要的RAM数量(32k),我更多地考虑的是> 1MB。也许eZ80是值得考虑的。我们希望得到像您这样的经过实验的人的解答。

谢谢。

编辑:尽管我已经接受了满足我们需求的答案,但该问题仍然可以接受其他建议,因为我们将不得不与愿意参加该项目的学生团队讨论选择问题。


4
首先,您讨论制造一台复古计算机,然后针对更新得多的微处理器提出规格(50 MHz,> 1 MB RAM)。Z80的最大时钟速率为2 MHz,可以支持64K内存。由于其独特的架构,Propeller芯片(P8X32A-D40)是我的最爱之一,但绝对不是复古计算。Z80并不是一个不错的选择,因为有关组装家用系统的信息很多,例如,请参见此
tcrosley 2014年

我知道这些规格会使过去的计算机嫉妒,但我认为某种Retro ++会是理想的(无论如何,其他学生仍将1GHz以下的内容视为“复古” ...)
Anthony Teisseire 2014年

4
在我参加的微控制器课程中,我们使用了Motorola 6800……它在所有不同的寻址模式下都非常复杂,以至于它使8位Atmel和PIC看起来像是一个玩具。事情的心理模型而不会失去主意。这仅取决于您要如何获得“内幕”。
丹尼尔(Daniel)

我打算建立这样的东西。看看WDC 65C816-它是古老的6502的16位CMOS衍生产品,并采用DIP40封装。
彼得

7
我完全不同意结束这个问题的原因。给定一组条件,OP正在寻找适合学生使用的计算机体系结构。首先,我提出了一个关于适当体系结构的建议,可能是他不知道的一种,然后是,然后推荐了一种特定的芯片,因为它以学生友好的DIP封装提供。但是,我认为列出我提出建议原因的相当全面的答案将来对尝试做出相同决定的其他人很有用。 建议将此重新打开。
tcrosley 2014年

Answers:


6

尽管当前可用的版本没有真正的外部地址总线(即将推出),但您可以考虑使用Microchip PIC32。它的体系结构可追溯到1988年,基于MIPS,并且是两个主要的RISC指令集之一(另一个是ARM)。因此,在这方面可以考虑追溯。(有点琐事:Sony Playstation使用了MIPS处理器。)

PIC32的一个不错的功能(对于32位微控制器来说是少见的)之一是您可以在DIP封装中得到多种选择,但是与表面贴装版本相比,可用的最大存储空间受到限制。具有28引脚DIP封装的最大存储容量的PIC之一是PIC32MX250F128,具有128KB的Flash(程序)存储器和32KB的RAM。可从美国的Digi-Key英国的Farnell购买

尽管RAM似乎有限,但请注意PIC是哈佛体系结构,这意味着程序和数据地址空间是分开的,并且程序是从闪存中执行的,因此您不需要大量的RAM。(对于纯粹主义者而言,PIC32实际上是修改后的哈佛架构,因为可以在RAM之外运行程序。)另一种选择是Von Neumann架构(例如,在PC中使用),其中所有内容都有一个地址空间,程序通常用完RAM,一个例外是它们通常至少需要一些闪存或ROM(在PC中称为BIOS)。处理器的地址空间来执行启动例程,以将操作系统从大容量存储设备或网络上加载到RAM中。Z80(以及当时的大多数微处理器)还使用了冯·诺依曼架构。因此,必须将程序和数据都装入64 KB。一些具有冯·诺依曼(Von Neumann)架构的微控制器也将其外设映射到相同的64K地址空间。其他使用单独的端口寻址。

关于外部总线,当前的PIC32(但仅在表面安装封装中,由于引脚数量而异)具有8或16位宽的“并行主端口”(PMP),该端口与DMA结合可以来回传输数据。自动在PIC的RAM和外部RAM或外设之间切换。但是,这不允许人们直接访问外部存储器(在处理器的地址空间中)或在其中运行代码。Digi-Key 上市但尚未现货的最新PIC32MZ系列将具有真正的外部地址总线,高达2MB的闪存,1/2 MB的RAM,并以200 MHz运行。

PIC32MX250F128以50 MHz运行,还有其他以80 MHz运行。它有两个串行UART端口。您将需要一个电平转换器将其转换为RS232信号。

因为它是作为DIP封装的,并且可以在没有外部振荡器的情况下运行,所以要开始使用,您只需要一个3.3.v电源,一些0.1 µF去耦电容和一个面包板。你可以得到一个从Microchip免费的C编译器和IDE

处理器启动并运行后,您可以添加外围设备,例如LCD显示屏,按钮(甚至是键盘)等。

您可以获得其他具有多达512KB闪存和128KB RAM的PIC32MX,但仅在表面贴装封装(例如TQFPVQFN)中需要布局PCB(任何ARM处理器也会遇到相同的问题)。


非常感谢,这非常有用,这样的PIC实际上可以满足我们的需求。如果我们感觉需要切换到VQFN封装或PIC32MZ系列,我们将调整设计。
Anthony Teisseire 2014年

我不会说这是使用von Neumann架构从RAM运行程序的CPU的要求。当然可以将闪存和RAM放在同一个内存映射中,从而使您可以从任何一个运行代码。冯·诺依曼CPU仅具有一条总线和地址空间即可存储指令和数据。
杰森R

@JasonR我并不是要暗示Von Neumann架构中的程序必须用完RAM,实际上,它们至少需要一些Flash或ROM(在PC中称为BIOS)才能执行启动例程以加载OS将大容量存储设备或网络插入RAM。(当然,实际上包括早期计算机在内的早期计算机,包括Altair 8800等早期PC都没有启动ROM,您必须使用前面板开关手动切换启动加载程序)。我已经更新了答案。
tcrosley

3

虽然我大致同意@tcrosley,但我有义务指出,如果您真的想向其他学生展示“舞台后面”的工作原理,那么您应该得到一个FPGA板(只需购买一块,不要尝试使其成为现实)。 ),并学习如何使用逻辑从头开始构建CPU。看看是一个很好的起点。


1

您考虑过MC68000系列吗?

它是16/32位CPU,除了68008数据线是16位,其中一些可以轻松地以50 MHz运行,地址空间为16 MB。

  • 如果我们需要更多的RAM,则使用外部地址总线 -是且仅
  • > 50 MHz-可以是
  • 16或32位 -两者
  • 否BGA / QFN封装 -是
  • 没有FPGA板 -否
  • 串行接口(?)不行,您必须自己做,但非常简单
  • 也不算太贵,因为我们的预算有限 -是的

这是完整的文档:https : //www.nxp.com/docs/en/reference-manual/MC68000UM.pdf

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.