[原创电路]单周期1位CPU电路图 只用11片TTL74门电路 玩具级别 方便发烧友DIY
神之觉醒2014/10/21电子技术 IP:广西
发现CPU DIY发骚友苦于找不到简单的CPU电路...
那么问题就来了,为何不设计个超级简单的CPU给CPU DIY发烧友入门...
于是电路就诞生了...
跳转指令执行跳转的时候消耗2个时钟 不执行跳转消耗1个时钟  其他指令都是1个时钟 工作频率估计10MHZ以上;
非常简单的一个电路;
这个CPU搭配 ROM 和 位RAM/IO 就可以工作了;
ROM位宽是16位(1条指令16位);
这里的程序计数器可以寻址64KB的ROM(可以增减);
如果你有想法...这个CPU是可以实现比较牛逼的程序  加上RAM/IO 带个TFT模块神马的...

单周期1位CPU电路图.png
来自:电子信息 / 电子技术
32
已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也
神之觉醒 作者
9年6个月前 IP:广西
727339
[s::funk:]DIYCPU技术哪家强, 科创论坛找龙少[s::funk:]
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
51区总管
9年6个月前 IP:山西
727342
又出神作了,前排膜拜!
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
小王
9年6个月前 IP:浙江
727346
膜拜[s:306]
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
张静茹
9年6个月前 IP:天津
727348
[s:306] 又有神作了
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
虎哥
9年6个月前 IP:四川
727355
喜闻乐见的套件呢[s::lol]
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
神之觉醒作者
9年6个月前 修改于 9年6个月前 IP:广西
727365
引用 虎哥:
喜闻乐见的套件呢
.....那部8位机写几个程序跑跑先再说  如果出套件的话必须有一个严谨的设计...  那个8位机的CPU毕竟是人生第1个DIY CPU, 设计不是很严谨,  出套件的话不打算出那个,  现在准备搞定编译器写程序让它大规模跑起来感觉不一样的!   搞定之后发布文件  可以仿照DIY;
本贴这个1位CPU可以出套件  但是长远考虑 也不打算出这个架构的套件;   如果出套件的话肯定要出个超牛X架构的套件...
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
novakon
9年6个月前 IP:广东
727371
挺好的,1bit机器出套件,元件够少,够好玩。楼主若能折腾出编译器,马上就变成高端玩具了。

看了一下,基本看明白了,俺数电水平也算对得起群众了。跳转信号没到,地址计数器不断+1;跳转信号到了,ROM地址计数器就载入R1 R0两个寄存器的内容。
ROM出来的数据,低8位是数据,高8位是指令。

计算逻辑接哪里?作为位寄存器的某个地址吗?是不是我将操作数写入某两个地址,然后从第三、第四个地址读出结果?

没有计算逻辑,感觉写一个8位+8位的加法,都要好长一段哦。。。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
warmonkey
9年6个月前 IP:广东
727379
其他指令可以虚拟出来 用一小段程序实现
建议用74AC系列的芯片跑到100MHz以上
编译器可以用sdcc做改造,那个的c解析部分是通用的,根据不同的ic产生机器码的部分改改就好
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
金星凌日
9年6个月前 IP:陕西
727414
引用 warmonkey:
其他指令可以虚拟出来 用一小段程序实现
建议用74AC系列的芯片跑到100MHz以上
编译器可以用sdcc做改造,那个的c解析部分是通用的,根据不同的ic产生机器码的部分改改就好
编译器后端的理论不是还不太成熟吗?机器相关的优化要做好应该不容易吧。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
最高主机泡泡
9年6个月前 IP:天津
727428
又出神作了~支持
虽然看不懂。。不过还是先记下了。。要是能出套件就好了
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
神之觉醒作者
9年6个月前 IP:广西
727453
引用 novakon:
挺好的,1bit机器出套件,元件够少,够好玩。楼主若能折腾出编译器,马上就变成高端玩具了。

看了一下,基本看明白了,俺数电水平也算对得起群众了。跳转信号没到,地址计数器不断+1;跳转信号到了,ROM地址计数器就载入R1 R0两个寄存器...
...计算逻辑可以接外面  不接的话1位1位判断计算= =
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
神之觉醒作者
9年6个月前 IP:广西
727455
引用 warmonkey:
其他指令可以虚拟出来 用一小段程序实现
建议用74AC系列的芯片跑到100MHz以上
编译器可以用sdcc做改造,那个的c解析部分是通用的,根据不同的ic产生机器码的部分改改就好
100MHZ[s::funk:]
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
zengdz
9年6个月前 IP:北京
727895
这个简单版的有没有文档发布呀,简单点的易上手点、
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
神之觉醒作者
9年6个月前 IP:广西
728170
引用 zengdz:
这个简单版的有没有文档发布呀,简单点的易上手点、
现在还没写文档
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
光谱
9年6个月前 IP:湖南
728229
话说论坛改版以后收藏怎么也找不到了[s::Q]

窝们可以把它变成红石。。。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
zengdz
9年6个月前 IP:江西
728507
希望早点发布个详细的简单版的文档,不然跟不上呀、
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
神之觉醒作者
9年6个月前 IP:广西
728562
引用 zengdz:
希望早点发布个详细的简单版的文档,不然跟不上呀、
那张图就说明一切了  门电路型号  原理图  指令集都在那里,  时序的话自己分析一下就出来的  通电 复位 然后给脉冲....就能跑    位寄存器和ROM那一块 我看看有空再画个图...发挥你的想像..    有数电基础和计算机原理基础的 一看就知道怎么回事  数电基础和计算机原理基础网上大把
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
神之觉醒作者
9年6个月前 IP:广西
728572
这个CPU如果要实现函数调用的话比较困难  不是说实现不了  不过函数返回地址装入程序计数器很蛋疼   要靠编译器实现
实现方法:
这里  y为返回地址选择   调用函数的时候要给y装入返回地址选择值
然后函数尾部生成如下返回指令(编译器计算生成)...
if(y == 0) xxxx地址装入程序计数器;
else if(y == 1) xxxx地址装入程序计数器;
else if(y == 2) xxxx地址装入程序计数器;
.
.
.
.
.
.
这里目的是实现功能 忽略效率

1位CPU怎么判断多位数...   可以通地址线来选择判断哪一位 一位一位判断  虽然程序复杂而且量大 但是可以实现.
CPU指令功能简单 实现同样功能但代码量大  CPU指令功能复杂  实现同样功能代码量低.

这个CPU是可以实现C语言编译器的, 除了递归...
现在考虑是不是要做这个CPU的编译器开发这个CPU  如果做的话程序计时器增加到24位ROM容量可以寻址到16MB
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
zengdz
9年6个月前 IP:江西
728657
引用 神之觉醒:
那张图就说明一切了  门电路型号  原理图  指令集都在那里,  时序的话自己分析一下就出来的  通电 复位 然后给脉冲....就能跑    位寄存器和ROM那一块 我看看有空再画个图...发挥你的想像..    有数电基础和计算机原理基础...
计算机原理书的话全是些抽象概括,真正内部机理还是不明白,所以有个实际例子更好理解。不然对着书要纠结死的、
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
justkaka
9年6个月前 IP:黑龙江
728788
记号,
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
小八一3
9年5个月前 IP:福建
732330
这个膜拜,楼主威武
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
分立元件
9年4个月前 IP:海南
736349
控制1和控制2是干什么用的?看来半天还是不明白
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
神之觉醒作者
9年4个月前 IP:广西
736447
引用 分立元件:
控制1和控制2是干什么用的?看来半天还是不明白
这个看你心情...用来控制什么都行    这个图现在一看画得好无聊了...= =...  运算器都不用[s:;P]..
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
分立元件
9年4个月前 IP:海南
736588
楼主应该去别的地方多发贴,在这里没有多少人看到的,在百度搜索自制CPU也没有看见你的帖子,让很多人错失了学习的机会!!
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
dddggg412
9年1个月前 IP:湖南
757498
位寄存器有16个,BIT_CB只有4个,只有置零,没明白怎么用起来的。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
天上猪在飞
8年11个月前 IP:陕西
771497
大神你好!我研究您的一位CPU两天了,有几个问题没有弄明白:这个CPU是直接从ROM里读取指令的对吗?如果是的话那RAM在这个架构中又起到什么作用呢?还是仅仅用于读写IO?或者位寄存器16位地址总线另有他用??望大神指点一二!
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
神之觉醒作者
8年11个月前 IP:广西
771545
引用 天上猪在飞:
大神你好!我研究您的一位CPU两天了,有几个问题没有弄明白:这个CPU是直接从ROM里读取指令的对吗?如果是的话那RAM在这个架构中又起到什么作用呢?还是仅仅用于读写IO?或者位寄存器16位地址总线另有他用??望大神指点一二!
...额, 莫纠结, 这里的CPU是直接从ROM读取指令的, 这里的位寄存器16位地址总线可以看做是RAM的地址总线, 然后这里的RAM的位宽只有1位..  BIT_CB0~3用来操作iRAM(位寄存器), 就是这个意思~   参考参考就可以,,,
建议研究这个结构 https://www.kechuang.org/t/68167 ,  很容易做成宽位的,  运算器也可以换成你自己设计的运算器,  过阵子所有指令执行的详细原理会弄成文档, 敬请关注>>>
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
星湖三文鱼
8年9个月前 IP:江苏
782295
来这学习了,很早之前就在看homebrew上的cpu设计,就是太过复杂了,不适合简单DIY,现在终于找到了!哈哈可以继续玩DIY cpu了。。。希望楼主多写点说明类的教程哇
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
神之觉醒作者
8年9个月前 IP:广西
782634
引用 星湖三文鱼:
来这学习了,很早之前就在看homebrew上的cpu设计,就是太过复杂了,不适合简单DIY,现在终于找到了!哈哈可以继续玩DIY cpu了。。。希望楼主多写点说明类的教程哇
嗯  会的, 多谢支持.
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
sg3525
8年8个月前 IP:四川
785531
这不是位片机么?[s::lol]以前的军工,比如PL7还是哪个,主控就是位片机做的,位宽很奇怪,貌似是数据+校验的样式。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ly8008csko
8年8个月前 IP:山东
786079
楼主多多注意身体啊,可持续发展[s::P]
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

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

所属专业
上级专业
同级专业
神之觉醒
学者 机友 笔友
文章
71
回复
1163
学术分
4
2011/08/12注册,1年3个月前活动
暂无简介
主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:未同步
文件下载
加载中...
{{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)}}