0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

大神手工自制CPU的過程

單片機(jī)與嵌入式 ? 來源:單片機(jī)與嵌入式 ? 2023-09-27 09:41 ? 次閱讀

CPU怎么識(shí)別我們寫的代碼?

為了深入理解這個(gè)問題,大神耗時(shí)整整半年,“逐點(diǎn)”焊接,自制了一個(gè)CPU,杰作如下圖所示。

d12a1a66-5cd2-11ee-939d-92fbcf53809c.png

據(jù)大神介紹,他主要采用了如下3個(gè)原材料:

二極管、三極管和電阻

用一堆開關(guān)做成一個(gè)CPU?

下文介紹下大神自制CPU的過程。

寄存器

通常來講,CPU的結(jié)構(gòu)可以大致分為運(yùn)算邏輯部件、寄存器部件和控制部件等。

而他最先“下手”的,就是CPU的寄存器部分。

大神設(shè)計(jì)了一個(gè)6位的移位寄存器,樣子如下圖,是不是跟想象中的不一樣?

d1480e2c-5cd2-11ee-939d-92fbcf53809c.png

它的作用不僅能是用來存儲(chǔ),還能在時(shí)鐘信號(hào)的控制下,將數(shù)據(jù)進(jìn)行進(jìn)行逐次右移或左移。

程序計(jì)數(shù)器

大神處理的第二個(gè)結(jié)構(gòu),是程序計(jì)數(shù)器(PC)。

它作用簡單來說,就是記錄程序運(yùn)行的位置。而這也是整個(gè)項(xiàng)目下來最耗時(shí)、最復(fù)雜的部分,花了整整3個(gè)月之久。

程序計(jì)數(shù)器涉及的功能那可就多了。像最基本的就是挨個(gè)字節(jié)讀完指令后,計(jì)數(shù)要自動(dòng)+1;而CPU重啟之后,計(jì)數(shù)便會(huì)清零。

而且在不同的條件之下,還要能實(shí)現(xiàn)直接跳轉(zhuǎn)、調(diào)用函數(shù)、函數(shù)返回等功能。

功夫不負(fù)有心人,在經(jīng)歷3個(gè)月令人頭禿的時(shí)光之后,最復(fù)雜的模塊還是被他搞定了。上電測試也沒有問題。

ROMRAM

硬盤(ROM)和內(nèi)存(RAM)是CPU外,比較龐大兩個(gè)部分。大神用上了比較容易操作的HM628512芯片來做ROM和RAM,如下圖分別是HM芯片(上)、RAM(中)和ROM(下):

d160e852-5cd2-11ee-939d-92fbcf53809c.png

d171d91e-5cd2-11ee-939d-92fbcf53809c.png

d180c00a-5cd2-11ee-939d-92fbcf53809c.png

將ROM和RAM組裝上去,現(xiàn)在CPU的基礎(chǔ)模塊已經(jīng)基本完成了。

指令譯碼器

接下來就是打造指令譯碼器。

它主要是用于把傳到這里的CPU指令,進(jìn)行解析運(yùn)行:

d1943a40-5cd2-11ee-939d-92fbcf53809c.gif

再把做加減乘除的運(yùn)算器(ALU)加上去:

d1c4b440-5cd2-11ee-939d-92fbcf53809c.gif

最后還得再焊一個(gè)通用緩存上去,這個(gè)全部由三極管、二極管和電阻焊接而成的CPU就完成了!看到這密密麻麻的元件,工程量的浩大就不用多說。

二進(jìn)制編碼

因?yàn)檫@個(gè)CPU的指令集和架構(gòu)都是自主研發(fā)的,所以沒有適配的編程語言。

那怎么能讓它跑起來呢?

純手寫最原始代碼——二進(jìn)制編程!

d1e75f40-5cd2-11ee-939d-92fbcf53809c.gif

之后竟然就開啟了上古編程模式——“扣”程序:

d20b987e-5cd2-11ee-939d-92fbcf53809c.gif

一切準(zhǔn)備工作就緒。接下來,便是見證奇跡的時(shí)刻。

上電測試

最開始,程序的運(yùn)行并不是一帆風(fēng)順。即便大神重啟了幾次,跑馬燈的效果偶爾還是出現(xiàn)問題。于是,大神重新編程,一切修改完畢,重新“扣”程序,啟動(dòng)!這一次,就沒有任何的異常了。

d2810c3a-5cd2-11ee-939d-92fbcf53809c.gif

審核編輯:湯梓紅。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 三極管
    +關(guān)注

    關(guān)注

    142

    文章

    3561

    瀏覽量

    120876
  • 二極管
    +關(guān)注

    關(guān)注

    147

    文章

    9408

    瀏覽量

    164381
  • 電阻
    +關(guān)注

    關(guān)注

    85

    文章

    5344

    瀏覽量

    170810
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10698

    瀏覽量

    209329

原文標(biāo)題:手工自制CPU

文章出處:【微信號(hào):單片機(jī)與嵌入式,微信公眾號(hào):單片機(jī)與嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    手工自制旋轉(zhuǎn)LED電子時(shí)鐘,紅外遙控調(diào)整時(shí)間

    `全手工自制旋轉(zhuǎn)LED電子時(shí)鐘,紅外遙控調(diào)整時(shí)間。。分享給大家。。。`
    發(fā)表于 05-14 20:35

    CPU自制”發(fā)燒友征集令

    幫助軟件工程師深入了解硬件與底層,開發(fā)出高效代碼。硬件工程師可以在本書基礎(chǔ)上設(shè)計(jì)定制硬件,開發(fā)高速計(jì)算機(jī)系統(tǒng)。相信所有讀者都可以在本書的閱讀過程中,體會(huì)到自制計(jì)算機(jī)系統(tǒng)的樂趣與熱情。一直以來CPU內(nèi)部
    發(fā)表于 12-23 11:12

    CPU自制入門

    本帖最后由 lee_st 于 2018-2-21 11:29 編輯 CPU自制入門,
    發(fā)表于 02-21 11:27

    cpu自制入門 書簽版(非掃描版)

    cpu自制入門書簽版,不是掃描版
    發(fā)表于 11-02 16:57

    cpu自制入門 原碼

    CPU自制入門 配套原碼
    發(fā)表于 11-03 09:39

    電路板手工焊接操作過程

    `哪位大神可以分享電路板手工焊接的操作過程嗎?`
    發(fā)表于 02-29 15:14

    手工焊接基礎(chǔ)知識(shí)

    本文主要介紹了手工焊接基礎(chǔ)知識(shí)以及在焊接過程中需要注意的各種問題,以幫助手工焊接操作的技術(shù)人員有效掌握并理解手工焊接的基礎(chǔ)知識(shí)、技巧及在手工
    發(fā)表于 12-10 15:10 ?208次下載

    果汁LED燈自制過程

    果汁LED燈自制過程 一 準(zhǔn)備工作:材料:紙一個(gè)LED一個(gè)蘋果或梨或其他水果(這里用的是富士蘋果)長25cm的銅線(直徑1-2 mm)長25cm的鐵線(
    發(fā)表于 11-23 09:07 ?1041次閱讀

    酷派大神F1高清拆機(jī)過程圖集

    酷派大神F拆機(jī)圖賞詳情:
    的頭像 發(fā)表于 10-12 10:00 ?1.4w次閱讀

    手工自制印制電路板的基本步驟介紹

    手工自制印制電路板的方法主要有描圖法、貼圖蝕刻法、銅箔粘貼法和雕刻法。?
    的頭像 發(fā)表于 07-18 14:41 ?1.5w次閱讀

    自制手工彎管器資料下載

    電子發(fā)燒友網(wǎng)為你提供自制手工彎管器資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計(jì)、用戶指南、解決方案等資料,希望可以幫助到廣大的電子工程師們。
    發(fā)表于 04-27 08:46 ?13次下載
    <b class='flag-5'>自制</b><b class='flag-5'>手工</b>彎管器資料下載

    手工制作pcb全過程

    手工制作pcb全過程介紹。
    發(fā)表于 06-19 10:18 ?0次下載

    B站焊武帝爆火出圈:純手工拼晶體管自制CPU,耗時(shí)半年,可跑程序

    金磊 博雯 發(fā)自 凹非寺量子位 報(bào)道 | 公眾號(hào) QbitAI一個(gè)人,到底能肝到什么程度?最近B站上大火的一個(gè)視頻,或許給了這個(gè)問題一個(gè)完美詮釋:純!手!工!自制CPU!這位叫做“奶味的”...
    發(fā)表于 12-28 19:39 ?8次下載
    B站焊武帝爆火出圈:純<b class='flag-5'>手工</b>拼晶體管<b class='flag-5'>自制</b><b class='flag-5'>CPU</b>,耗時(shí)半年,可跑程序

    B 站焊武帝爆火出圈:純手工拼晶體管自制 CPU,耗時(shí)半年,可跑程序

    來自量子位一個(gè)人,到底能肝到什么程度?最近 B 站上大火的一個(gè)視頻,或許給了這個(gè)問題一個(gè)完美詮釋:純!手!工!自制 CPU!這位叫做“奶味的”Up 主,耗時(shí)整整半年,用他那雙勤勞的雙手,...
    發(fā)表于 12-28 19:40 ?7次下載
    B 站焊武帝爆火出圈:純<b class='flag-5'>手工</b>拼晶體管<b class='flag-5'>自制</b> <b class='flag-5'>CPU</b>,耗時(shí)半年,可跑程序

    小伙手工制作了一款32位CPU

    此前,我在 Youtube 上發(fā)現(xiàn)了電子愛好者 Ben Eater 自制 CPU(構(gòu)建著名的 8 位計(jì)算機(jī)和經(jīng)典的 6502 微處理器)的相關(guān)教程,所以非常著迷,也就有了自制 CPU
    的頭像 發(fā)表于 07-11 16:11 ?720次閱讀
    小伙<b class='flag-5'>手工</b>制作了一款32位<b class='flag-5'>CPU</b>