自制74门8位CPU

忙活了一个月终于完成了这个CPU,这是我从2014年以来一直YY的一个CPU,这几天终于完成了

本CPU指令39条:传送指令33条、控制转移指令3条、运算指令2条,空指令1条。

本CPU每一个时钟一条指令,单周期指令,由高位ROM和低位ROM组成16位指令,地址16位,ROM和RAM都是64KB


一直以来对CPU的运行原理很是好奇,看了很多的的书都不明白,写的太复杂,直到2014年看了《穿越计算机的迷雾》、《编码的奥秘》,龙少设计的CPU,终于明白了原理!

这个CPU其实是龙少CPU的改进版!最大区别在控制器,他的CPU只利用了时钟上升沿,而我这个控制器使用了上升沿和下降沿,利用时钟上升沿三态门打开,下降沿寄存器锁存完成指令控制


本CPU工作原理:

1、A寄存器传送到B寄存器: ROM地址0001H存放高00100001 低00000000,高ROM输出连接两个4/16译码器,低ROM输出连接数据总线,用于实现立即数传送到寄存器和RAM,实现数据和地址传送!高ROM输出00100001使译码器1的,A三态门控制端为0,译码器2的,B触发器触发端为0,但是我这里使用反相器,使4/16译码器输出1011111111111111反相0100000000000000,在使用三态门控制输出,只有在时钟低电平的时候才输出高电平脉冲,实现触发器控制,也就是时钟为高电平时三态门打开,时钟为低电平时触发器锁存数据,完美实现一个时钟内完成一条指令控制!!!


2、立即数传送到A寄存器:ROM输出高00011110 低00000001(立即数1),高ROM输出00011110使控制器译码输出《低ROM的输出端OE为零,A寄存器锁存端为高电平脉冲》一个时钟周期内OE一直为零,输出数据到数据总线,A锁存端只有在时钟低电平时才完成上升沿锁存!!!


3、无条件转移指令原理:使用C寄存器(低8位地址)、D寄存器(高8位地址),74LS161置位功能实现,首先传送要跳转的地址给C、D寄存器,然后让控制器使74LS161的置位端为零,然后时钟上升沿使74LS161置位,完成无条件跳转!

其它条件转移指令实现原理一样,只是增加逻辑电路使条件满足时置位端才为零!!!


 运算板

IMG_20190117_110013.jpg

 


 RAM板


IMG_20190117_110031.jpg


 555时钟板和I/O板

IMG_20190117_110023.jpg

 

控制板

IMG_20190117_110003.jpg

 


 ROM板

IMG_20190117_105941.jpg

 


编码板


IMG_20190117_105951.jpg

 


背面连接图


IMG_20190117_121753.jpg

 


 整机成品

IMG_20190120_091453.jpg

 


IMG_20190116_140246.jpg

 

IMG_20190116_135753.jpg

 


指令集

IMG_20190121_145544.jpg

 


 


[修改于 4年10个月前 - 2019/06/11 14:31:25]

已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也
虎哥
5年3个月前 IP:四川
853805

全手工搭棚啊😢

搞个编译器吧

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
分立元件作者
5年3个月前 IP:海南
853807
引用虎哥发表于1楼的内容
全手工搭棚啊😢搞个编译器吧

是啊全手工焊接,几百条线,焊接、测试、检查错误用了一个月,是准备要搞个编译器来编程才行,手工机器码编程太容易出错,工程量也很大!

引用
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
yeager
5年3个月前 IP:浙江
853819

牛人一个👍👍

引用
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
左手执者
5年2个月前 IP:江西
853918

哈,同行握手😁

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
分立元件作者
5年2个月前 IP:海南
853921

一起研究啊😀

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
分立元件作者
5年2个月前 IP:海南
853922
引用左手执者发表于4楼的内容
哈,同行握手😁

可以交流一下CPU制作

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
rpg-7
5年2个月前 IP:江西
853992

用AD画个板子吧!打样现在很便宜了,JLC才30大洋就可以出一张10x10的板子

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
分立元件作者
5年2个月前 IP:海南
853995

@rpg-7画图软件是AD吗?我基本都没有用电脑画过电路图和PCB板,可以推荐一下吗?

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
Resbi
5年1个月前 IP:广东
855722

膜拜一下大佬。。本人最近也打算将CPU搬到现实中来,请问在使用74门IC的时候需要注意一些什么吗?能直接把74门IC当成逻辑门随意拼接吗?

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
3DA502
5年1个月前 修改于 5年1个月前 IP:北京
855727

改天我也做一个,按照PLC指令做一个

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
分立元件作者
5年1个月前 IP:海南
855729
引用Resbi发表于11楼的内容
膜拜一下大佬。。本人最近也打算将CPU搬到现实中来,请问在使用74门IC的时候需要注意一些什么吗?能...

只要不接错线,逻辑上没有问题都可以的,

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
Andyccr
5年1个月前 IP:广东
855859

打算挖矿吗?朋友😂,这下计算力应该挺厉害的吧

引用
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
不会飞的鸟
5年1个月前 IP:广东
856225

牛x,搞编译器吧,折腾起来要命啊

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
改装pcp
5年1个月前 IP:广东
856234

楼主,做一个64位的大概要多少钱成本呢?

引用
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
分立元件作者
5年1个月前 IP:海南
856277
引用改装pcp发表于16楼的内容
楼主,做一个64位的大概要多少钱成本呢?

用74芯片搞64位不现实,体积太大,芯片速度上不去也是浪费!

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
分立元件作者
5年1个月前 IP:海南
856278
引用不会飞的鸟发表于15楼的内容
牛x,搞编译器吧,折腾起来要命啊

最近都懒得弄了,这个CPU的程序都是手工汇编,先写汇编然后手工编译成机器码,再用开关写入ROM!要先弄烧写器,再弄编译器了!

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
映祥电子
5年0个月前 IP:云南
857341

太佩服啦!真的高手

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
谷之云
4年10个月前 IP:浙江
859464

有套件卖吗?

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
shanshan
4年9个月前 IP:浙江
860582
引用分立元件发表于18楼的内容
最近都懒得弄了,这个CPU的程序都是手工汇编,先写汇编然后手工编译成机器码,再用开关写入ROM!要先...

手工编译成机器码,这个太烧脑了吧😁

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
2sc3358
4年9个月前 IP:陕西
860633

我一直想用ECL逻辑电路做个CPU

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

文件下载
加载中...
{{errorInfo}}
{{downloadWarning}}
你在 {{downloadTime}} 下载过当前文件。
文件名称:{{resource.defaultFile.name}}
下载次数:{{resource.hits}}
上传用户:{{uploader.username}}
所需积分:{{costScores}},{{holdScores}}下载当前附件免费{{description}}
积分不足,去充值
文件已丢失

当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}
视频暂不能访问,请登录试试
仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。
音频暂不能访问,请登录试试
支持的图片格式:jpg, jpeg, png
插入公式
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
收藏
取消收藏
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
管理提醒
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}