如何使用Z80微处理器构建计算机?


22

我已经有了芯片,如何添加:时钟,RAM,硬盘驱动器(也许是EEPROM?),屏幕(LCD图形屏幕?),输入法(键盘,鼠标)?


2
您想用它做什么?这决定了您的要求。
stevenvh 2012年

6
Z80确实在当时是一个非常非常非常出色的处理器,但是它的日子已经一去不复返了。除非您非常非常特别想要并且必须使用Z80,否则不要这样做。使用其他东西。将您的Z80放在您自己的私人博物馆中,作为处理器的一个样例,它对我们现在所拥有的产品产生了很大的影响。
罗素·麦克马洪

1
我认为您很难找到在当前PC上运行的(交叉)汇编器或(交叉)编译器,更不用说运行它所需的外围芯片,EPROM和匹配的编程器。我会去Arduino,它在Internet上有一个活跃的社区,提供了各种硬件的库负载,对Linux和Windows的开发支持。
jippie 2012年

1
@jippie并不难,但是除非您认真地进行逆向计算,否则这没有多大意义。有sdcc作为编译器,而Farnell列出了所有可用的Z80外设芯片,尽管价格相当昂贵。
starblue 2012年

1
我有一台Z80,它运行着我在1980年制造的暗室计时器。该计时器仍可使用,但它超出了我在暗室中进行时间曝光和化学浴的时间。它仍然是一个工作的间隔计,但是我目前没有用。
Olin Lathrop 2012年

Answers:


37

不要听别人说z80太旧或太硬。z80专为此任务而设计。出于某种原因,它是最古老的连续生产CPU,使用它构建计算机系统很容易。这是您的项目的绝佳选择。

有一些很棒的书,例如《 z80微型计算机设计项目》和《z80手册》,它们确实可以帮助您。另外,请访问z80.info,他们拥有大量您想要的信息。

您的设计目标是现实的。假设您要驱动VGA或NTSC显示器,最难的部分将是LCD屏幕。但是即使这样,一旦您投入其中,也并不难。这将是您在该项目中经常遇到的主题,事情比您预期的要容易得多。早期的微型计算机是非常简单的机器,希望您能够在2012年将它们复制到一定程度是一个非常现实的目标。除了定制的声音和视频芯片外,机器的其余部分仍可作为现成的零件使用,即使是新手也很容易理解。

最简单的可用z80系统将具有z80 CPU,一些闪存或EEPROM,您可以从旧主板,ram和用于串行通信的uart中免费获得(加上用于电平转换的max232)。所有这些产品都可以在任何电子产品分销商处获得,它们都是通孔元件,可以构建在面包板上。您唯一需要的特殊设备是闪存/ EEPROM编程器(我是从Arduino构建的)。哦,还有其他一些东西,例如一些用于地址解码,复位电路等的74系列逻辑芯片和一个晶体振荡器。

或者,您可以使用z80 pio芯片代替uart,以与现代并行模式LCD字符显示器进行通信。它实际上并不会做图形,但是它易于使用,并且z80可以尽早打印内容。ps / 2键盘的界面非常简单。

但是无论如何,z80是您的项目的不错选择。这听起来可能很复杂,但最终并没有那么糟。逐步构建,从z80测试电路开始,连接EEPROM,以便它可以运行一些代码,然后从那里构建。


1
该项目最关键的部分是提出某种临时替换,可以从开发PC轻松下载代码。与当今具有在线编程的微控制器相比,这就是z80时代原始的东西。另外,如果您验证了串行引导加载程序(可能带有bitbang SPI SD卡接口“磁盘”)并将其放入实际的EPROM中,则可以轻松地将static ram用于正在开发的代码。
克里斯·斯特拉顿

要轻松开发代码,请使用连接到PC的eprom仿真器。像ICP一样工作。

14

幸运的是有一本书-“构建您自己的Z80计算机”,尽管它已经绝版了,但作者Steve Ciarcia慷慨地允许它以PDF的形式自由分发:http ://retro.hansotten.nl/index.php ?页面= z80-sbc

您可能还想看看N8VEM家用自酿计算机项目。这是Z80 SBC(单板计算机),可以运行CP / M,并且可以非常便宜地制造-PCB的价格为20美元,另加运费。现在有各种各样的扩展板可用(S100总线!),并且背后有知识丰富且乐于助人的社区。

但首先,为什么不抓住一些手边的元件并建立最小Z80测试仪,以确保您的CPU的作品- http://www.z80.info/z80test0.htm 这只是硬件连接的数据线和地址线持续运行相同的指令(NOP)从根本上演示了工作正常的Z80计算机的心脏。


很棒的链接。现在我甚至很想尝试一下自己.. ;-)
Cees Meijer 2012年

4

Z-80确实是一个旧芯片,但是用它来构建计算机可能是一个不错的挑战。与所有现代微控制器不同,它没有许多内置功能,因此您必须自己添加RAM,EPROM和地址解码硬件。而这正是他们多年前Tandy制造TRS-80时所做的。只需看看原始的Model-1原理图:http : //electrickery.xs4all.nl/comp/trs80/doc/westHWBook.pdf


浏览该文档时,您开始考虑将什么硬件集成到ATtiny和ATmega等芯片中。我可能会因为数据和地址总线的布线而自发地做噩梦。
jippie 2012年

除了Z80本身之外,TRS-80中的大部分功能都归因于视频部分和动态RAM接口。同样,由于某些原因,他们使用了很多16针“十六进制”部件(例如74LS367),而不是更少的20针“八进制”部件(例如74LS244),因此芯片数量远高于b / c。我的意思是,您可能会克隆一个滚动您自己的Z80的TRS80。+1!
JustJeff 2012年

4

我曾经有机会基于Z80微处理器从头开始构建几台计算机,即Sinclair ZX80(改进版本)和Jupiter Cantab公司的Jupiter Ace。两者都可以正常工作,并且这些机器使用键盘并在电视机上生成黑白图片(分辨率为240 x 192像素)。有关它们的更多信息:

http://www.jupiter-ace.co.uk/

http://searle.hostei.com/grant/zx80/zx80.html

ZX80的后继产品ZX Spectrum不仅具有所有这些功能,而且还具有各种接口,例如IDE磁盘接口,软盘接口,还可以用于更现代的存储介质,例如USB笔式驱动器或SD卡。

我的建议:继续吧!研究,沿途学到很多东西并玩得开心。如今,事情比80年代要容易得多,我们有了互联网,CPLD,FPGA,所需的尽可能多的静态RAM等!

祝你好运,保重。


3

你将有一个非常基础上,Z80很难建立自己的“计算机”与你所描述的所有功能。但是,如果您无需自己构建硬件就可以生存,那么完全可以自行编写Z80计算机。

较旧的TI-83,TI-84和类似产品(我相信TI-89之前)是基于Z80的计算器。它们仍然是非常常用的计算器,价格约为100美元:http//www.amazon.com/s/ref=nb_sb_noss_1?url = search- alias%3Daps&field-keywords = ti-84

除了鼠标外,该计算器还具有您想要的所有功能,并且由于该计算器在学校中仍然很常见,因此您仍然会找到大量Z80开发人员。如果您有任何问题,StackOverflow可以提供帮助:https : //stackoverflow.com/questions/tagged/z80

不过,我不确定用您自己的代码对Z80进行编程会多么容易。


1
在高中时,我们使用z80开发板开发了汇编编程课程;我们拥有所有工具链,可使用其汇编代码对其进行编程,以点亮一些LED并通过7段显示器显示一些数字。因此,我认为对于更面向硬件的学习来说,这可能是一个很好的起点,但是谁知道在哪里可以找到它们呢……
clabacchio

1
虽然建议使用潜在的可破解开发平台是有好处的,但最初的“非常艰苦”主张被夸大了。诚然,一个项目将有很多阶段来完成发布者名单上的所有工作,但是这些事情都不是特别困难,也不会超出业余爱好者在1980年代初或今天所做的工作范围。
克里斯·斯特拉顿


2

我认为Z-80不会过时。它本身就是一个非常强大的处理器。您可以在www.zilog.com上找到免费的汇编器+ IDE。这是一个非常好的工具。

如果您要更换PC,请不要打扰。如果您想了解很多有关微处理器的知识,请前进。

Z-80的印刷材料很多,涉及接口,编程等。

尽管Z-80永远不会匹配3 GHZ四核,但是从人的角度来看它仍然可以相当快。家庭中也有更快的处理器。看一下Z80S180系列。您将获得大量功能,许多外围设备,并且都集成在一个封装中。是的,rom和ram是外部的,您现在还没想到全部都在一个芯片上吗?您会错过整个公共汽车的概念!但是,我不会尝试这些高速设计之一。

Arduino,树莓派PI等。意识到您正在购买lego模块,而不是设计它们。是的,它们插在一起,但是您的贡献将仅限于软件(好的,也许您可​​以设计自己的板子,但是可以吗?)

Z-80仍然是出色的学习工具。8051也是如此,并且与51一起在一个封装中提供RAM,ROM,CPU和1 MIPS。如果您愿意,也可以提高速度。

不要听别人做出的选择。确定您想做什么,然后再去做。在2 MHZ进行调试比在40 MHZ调试容易得多。

利用互联网的力量并收集一些Z-80原理图。有很多人在那里漂浮。考虑Gaonkar ISBN 0-02-340484-1的“ Z-80微处理器”(亚马逊可以以很少的价格出售用过的副本)。实际上,Gaonkar会回答您提出的每个问题。


1

z80太过时了,除了用它来制造新颖的复古计算机之外,您将无法构建其他任何东西,但这并不意味着尝试它就没有启发性和乐趣。

如果我只是想证明我可以运行旧的z80,我可能会把它与32Kx8静态RAM和UART芯片放在一起,然后将修改后的TRS-80 I型ROM映像刻录到周围的任何小型EPROM / EEPROM中。整个内存映射可以使用MSI芯片进行解码。

刮除TRS-80键盘矩阵解码例程并将其替换为UART输入例程,而无需查找字符输出例程并将其替换为UART输出例程,将不会花费大量软件工作。然后可以将其挂接到PC串行端口,然后可以启动旧的BASIC并与之交互。

这应该证明您正在运行z80,而无需尝试为其实施大量I / O。


2
我不认为Z80会过时...目前,TI-83系列计算器将其用作主要处理器,而TI-84也将其用于ASIC中。
Fuzzyhair2 2014年

构建新颖的复古计算机有什么问题?除了娱乐和自我教育之外,没有人会从芯片级别构建任何东西。并非只有当您以5美元的价格就能获得出色的预制主板时!
艾萨克·拉比诺维奇
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.