色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>電子元器件>繼電器>

繼電器是如何成為cpu的 - 繼電器是如何成為cpu的

2018年01月26日 10:05 網絡整理 作者: 用戶評論(0

  十四、傳輸門

  下圖所示的傳輸門的作用是:當左邊的“~1G”端輸入為0時,左側的1A4、1A3、1A2、1A1會直接傳輸到右側對應的1Y*,就像一條線直接從1A*連接到1Y*一樣;當左邊的“~1G”端輸入為1時,左側的1A4、1A3、1A2、1A1都不能傳輸到右側對應的1Y*,就像從1A*到1Y*的連線被剪斷了一樣。

  注:本文里我做的電路圖片都是GIF格式的,你可以在瀏覽器里看到隨著開關的開閉,輸入和輸出電路上的燈泡是如何變化的。每個圖上都有(http://bitzhuwei.cnblogs.com)標識我的博客地址,不過每個GIF圖的最后一幀都去掉了這個標識。這樣,看到一幀沒有標識的時候,就知道下一幀將是GIF圖的第一幀了。

  繼電器是如何成為cpu的

  傳輸門的原理很簡單,就是在每個1A*到1Y*之間的連線上放個繼電器而已,如下圖所示。(取自《穿》)

  繼電器是如何成為cpu的

  十五、寄存器

  在上一篇已經說明了寄存器的原理,這里僅僅是為了說明“74LS194”這個帶有各種無聊管腳的四位寄存器的用法。將“~CLR”、“S1”和“S0”置為1,“SR”和“SL”置為0,然后,“74LS194”就是一個簡單的四位寄存器了。(本人在multisim12.0里只找到了這個靠譜的四位寄存器,湊合用吧。)

  繼電器是如何成為cpu的

  十六、數值顯示器

  為了更直觀地看到CPU的運算結果,我們將使用“DCD_HEX”這個東西。它能夠把輸入的“0101”顯示為“5”,把“1010”顯示為“A”。

  繼電器是如何成為cpu的

  本文還要用一個四位的加法器,直接在下面這個簡陋的CPU里看就好了,不再單獨展示。

  十七、回到頂部(go to top)

  一個簡陋的CPU現在一切就緒,可以開始設計CPU了!

  CPU包括運算器和控制器兩部分。我們首先做出運算器,然后逐步實現控制器,最后感受一下用機器語言編程的過程。本文實現的CPU雖然功能及其簡陋,但是能夠傳達出當前真實CPU的原理。

  十八、運算器和手動控制器

  現在我們要做的這個CPU,字長是4位,只能做兩個數的加法。實現了運算器和手動版的控制器的CPU如下圖所示。我們把這個版本稱為version1的CPU。

  繼電器是如何成為cpu的

  上圖中,“Add”是加法器,能執行兩個4位數的加法運算。“RA”和“TR”是寄存器,“GAA”和“GBA”是傳輸門。“4”“3”“2”“1”用來準備需要相加的數據(0到15),“KTR”“KRA”“KGA”“KGB”是用來控制傳輸門通斷和寄存器脈沖的開關。

  在上圖所示的GIF動畫中,顯示了“5+1+2+4”這個過程。這個過程可以分為4個步驟:①加載一個數值(Load);②加上一個數值(Add);③加上一個數值(Add);④加上一個數值(Add)。具體來說,每一個步驟要做的事情是:

  十九、指令內容

  加載一個數(Load)準備數據(0101); KGB↓, KGA↑; KRA↓↑

  加一個數(Add)準備數據(0001); KGB↓, KGA↑; KTR↓↑; KGA↓, KGB↑; KRA↓↑

  加一個數(Add)準備數據(0002); KGB↓, KGA↑; KTR↓↑; KGA↓, KGB↑; KRA↓↑

  加一個數(Add)準備數據(0004); KGB↓, KGA↑; KTR↓↑; KGA↓, KGB↑; KRA↓↑

  你可以看到,每次執行(Add)這一步,要做的事情(搬動開關)是一樣的,規律性極強。這意味著可以用簡化的方式控制“KTR”“KRA”“KGA”“KGB”這幾個開關的狀態。經過簡化的CPU就有一定的自動化控制的性質了,如下圖所示。我們把這個版本的CPU稱為version2的CPU。

  繼電器是如何成為cpu的

  Verison2要比剛才的verison1進化了一些。為便于理解,我們保留原來的“KTR”“KRA”“KGA”“KGB”這四個開關(把它們挪到了右上角,因為實在沒地方放了),但讓它們永遠保持閉合的狀態。這是想說明:version2里新增的電路只是實現了更加自動化地控制“KTR”“KRA”“KGA”“KGB”的開閉,它沒有改變version1中電路的工作流程。

  Version2中的“KLoad”和“KAdd”開關分別代表了“Load”和“Add”這兩個指令。當“KLoad”閉合時,表示CPU要進行加載操作,這會把“4”“3”“2”“1”上的數據存入寄存器“RA”;當“KAdd”閉合時,表示CPU要進行相加操作,這會把“4”“3”“2”“1”上的數據與“RA”當前的數據相加,然后相加的結果又存儲到“RA”。

  Version2中的“K0”和“K1”兩個開關會依次的開閉,即兩者總有一個是斷開且另一個是閉合的(若出現其它情況那就是電路設計錯了)。所以實際上“K0”和“K1”可以用一個“2位循環移位寄存器”代替。(為便于理解,仍然保留“K0”和“K1”這兩個開關,只不過讓它們永遠保持閉合的狀態)

  Version2中,只需重復“準備指令,準備數據,執行指令(K↓↑↓↑)”這樣的操作,就能完成version1中的控制功能。這需要一個從“KLoad”“KAdd”“K0”“K1”到“KTR”“KRA”“KGA”“KGB”的轉換電路,即version2電路圖中的上半部分,如下圖所示。

  繼電器是如何成為cpu的

  這需要一點點設計邏輯電路的知識,本文直接列出真值表,據此即可畫出轉換電路。(想知道如何推導的話,請查閱《穿》或者數字電路類書籍)

  KloadKaddK0K1KGAKRAKTRKGB

  10101100

  01101010

  01010101

  其中“KLoad”“KAdd”“K0”“K1”為輸入,“KTR”“KRA”“KGA”“KGB”為輸出。只有如上三種輸入情況下,輸出部分會有1;其它的輸入情況下,輸出全部為0,所以就不需要列出來了。

  舉個例子,“KGA”=“KLoad”“~KAdd”“K0”“~K1” + “~KLoad”“KAdd”“K0”“~K1”=(“KLoad” ⊕“KAdd”)“K0”“~K1”,據此可以畫出“KGA”的轉換電路。

  在version2中,CPU要做的就是重復“準備指令,準備數據,執行指令(K↓↑↓↑)”這件事。其中執行指令這一步是完全重復完全自動化的(只要用振蕩器替換K就可以),而準備指令和準備數據還需要手工操作。每次要執行哪個指令、要準備的數據是多少,這都是沒有規律的,可改進的方法就是:把指令和數據按順序保存到一些特別的寄存器里,需要的時候取出來用。這些特別的寄存器,就是內存。

非常好我支持^.^

(94) 98.9%

不好我反對

(1) 1.1%

( 發表人:陳翠 )

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      主站蜘蛛池模板: 邻家美姨在线观看全集免费| 成人毛片免费观看视频大全| 99国产精品成人免费视频| 俄罗斯12x13x处| 性直播免费| 帅小伙和警官同性3p| 2018国产天天弄谢| 超碰日韩人妻高清视频| 久久中文字幕亚洲| 伊人久久综合| 黄片长版看嘛| 午夜精品久久久久久影视riav | 97国产成人精品免费视频| 久久黄色网| 亚洲永久免费视频| 精品国产美女AV久久久久| 亚洲大片免费| 国内免费视频成人精品| 亚洲国产精品第一影院在线观看 | 国产系列视频二区| 午夜一级毛片看看| 国产色青青视频在线观看 | 成激人情在线影院920| 欧美怡红院视频一区二区三区| 98久久人妻少妇激情啪啪| 暖暖视频免费观看社区| 99久久久免费精品免费| 啪啪羞羞GIF男女0OXX动态图| FREECHINESE东北女人真爽| 日本美女论坛| 国产精品麻豆a在线播放| 午夜一级毛片看看| 久久re热在线视频精6| 4388成人| 人妻免费久久久久久久了| 国产AV果冻传奇麻豆| 亚洲精品m在线观看| 刘梓晨啪啪啪| 成人免费小视频| 亚洲AV电影天堂男人的天堂| 久久精品伊人|