SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
加算器の実装をしてみた
           NPLab - Creators’ Night #5
           2012/4/20
           杉本 知洋




Monday, April 23, 12
2進数の加算


Monday, April 23, 12
今回は・・・


Monday, April 23, 12
中途半端な
                       3-bit adder!
                              (unsigned)




Monday, April 23, 12
10進数                2進数


                       0+0=0          000 + 000 = (0)000


                       0+1=1          000 + 001 = (0)001


                       1+1=2          001 + 001 = (0)010


                       1+2=3          010 + 001 = (0)011


                       2+2=4          010 + 010 = (0)100


                           .                  .
                           .                  .
                           .                  .


                       7 + 7 = 14     111 + 111 = (1)110




                                    (0)← キャリービットです
Monday, April 23, 12
足し算の繰上り(carry)が
                       発生しますよね



Monday, April 23, 12
とりあえずこれで出来るよ
                                          全加算器
                                       (full adder)

                                   Full
                                  Adder




                       ちなみに、崎川のやつは半加算器(half adder)って言うシロモノです

Monday, April 23, 12
とりあえずこれで出来るよ

                                       全加算器
                                      (full adder)


                                   Full
                                  Adder




                       ちなみに、崎川のやつは半加算器(half adder)って言うシロモノです

Monday, April 23, 12
Half        o0
          a0
          b0           Adder   c0
                                     Full          o1
                          a1
                          b1
                                    Adder     c1
                                                    Full   o2
                                         a2
                                         b2        Adder   c2




                   c2o2o1o0 = a2a1a0 + b2b1b0
Monday, April 23, 12
少しエンジニアっぽい話しをすると




Monday, April 23, 12
弱点は遅延です


Monday, April 23, 12
Half        o0
          a0
          b0           Adder   c0
                                     Full          o1
                          a1
                          b1
                                    Adder     c1
                                                    Full   o2
                                         a2
                                         b2        Adder   c2




Monday, April 23, 12
Half        o0
          a0
          b0           Adder   c0
                                     Full          o1
                          a1
                          b1
                                    Adder     c1
                                                    Full   o2
                                         a2
                                         b2        Adder   c2




      急にビットが来たので・・・
                        は許されない!
Monday, April 23, 12
そこで先読加算器の話・・・




Monday, April 23, 12
をしたいのですが1時間
                   くらいかかるので・・・



Monday, April 23, 12
絵だけをお楽しみ下さい




Monday, April 23, 12
Monday, April 23, 12
Monday, April 23, 12
実装

Monday, April 23, 12
コードは簡単です




Monday, April 23, 12
Arudinoでの実装


                スイッチx6

                入力LEDx6

                出力LED x 4




Monday, April 23, 12
Monday, April 23, 12
これだけもあれなんで




Monday, April 23, 12
Verilogやっちゃいますか




Monday, April 23, 12
3-bit adderのシミュレーション




Monday, April 23, 12
Monday, April 23, 12
全組み合わせのテスト
                        書いてるだけです




Monday, April 23, 12
シミュレーション結果




Monday, April 23, 12
ということで




Monday, April 23, 12
簡単なデモでもどうぞ




Monday, April 23, 12
ご清聴ありがとうございました




Monday, April 23, 12

Contenu connexe

En vedette (14)

マイコン遊び パート2
マイコン遊び パート2マイコン遊び パート2
マイコン遊び パート2
 
Motion graphics and_compositing_video_analysis_worksheet
Motion graphics and_compositing_video_analysis_worksheetMotion graphics and_compositing_video_analysis_worksheet
Motion graphics and_compositing_video_analysis_worksheet
 
Final draft script a long day by nick mccabe
Final draft script a long day by nick mccabeFinal draft script a long day by nick mccabe
Final draft script a long day by nick mccabe
 
A long day by nick mc cabe second draft script
A long day by nick mc cabe second draft scriptA long day by nick mc cabe second draft script
A long day by nick mc cabe second draft script
 
Dailyroutines1
Dailyroutines1Dailyroutines1
Dailyroutines1
 
Audio reaper
Audio reaperAudio reaper
Audio reaper
 
Team teaching stage report
Team teaching stage reportTeam teaching stage report
Team teaching stage report
 
Team teaching stage report
Team teaching stage reportTeam teaching stage report
Team teaching stage report
 
Ig2 assignment brief_updated_03.01.12
Ig2 assignment brief_updated_03.01.12Ig2 assignment brief_updated_03.01.12
Ig2 assignment brief_updated_03.01.12
 
Technical file
Technical fileTechnical file
Technical file
 
Audio reaper
Audio reaperAudio reaper
Audio reaper
 
プログラミングHaskell(第1章)
プログラミングHaskell(第1章)プログラミングHaskell(第1章)
プログラミングHaskell(第1章)
 
私がMuninに恋する理由 - インフラエンジニアでも監視がしたい! -
私がMuninに恋する理由 - インフラエンジニアでも監視がしたい! -私がMuninに恋する理由 - インフラエンジニアでも監視がしたい! -
私がMuninに恋する理由 - インフラエンジニアでも監視がしたい! -
 
Pasttense whatdidyoudoyesterday-8vo basico
Pasttense whatdidyoudoyesterday-8vo basicoPasttense whatdidyoudoyesterday-8vo basico
Pasttense whatdidyoudoyesterday-8vo basico
 

Arduinoで3ビット加算器