hw

第3回 自作CPUを語る会

せっかく東京に行くので午前は高島屋で靴のメンテしてもらって、昼飯は会場が飲食可能かわからなかったので会場のビル(東京日本橋タワー)の広場にいってみたらしっかり飲食禁止って書いてあった。

P_20240602_115238

どこか公園がないかなと探したけど座って食べられるような公園らしいところはなさそうで、結局東京駅前のTOKYO TORCHの工事現場となりの広場で食べた。

P_20240602_120858P_20240602_121121P_20240602_122405P_20240602_122437P_20240602_122557

時間になったので会場入りしたが、エントランスがやたらでかいな。さすが高層ビル。

P_20240602_125039P_20240602_125154P_20240602_125309P_20240602_125333P_20240602_125409P_20240602_125428P_20240602_125550P_20240602_125604P_20240602_125612P_20240602_125731P_20240602_125742P_20240602_125748P_20240602_130351P_20240602_131426

けっこう若者率たかいな。

Brainfuckが動くCPUを作りたい! / @chizu_potato

13:16

  • fpgaでbrainfuckつくったひとは会場ひ一人
  • 8つの命令
  • C言語の授業でポインタは紙に書くとわかりやすい→brainfuckのほうがわかりやすい、でもりあがる
  • 内部バスは2本
  • [で]をさがすのはNOPで対応
  • [はスタックにプッシュ
  • ネストの深さも管理しないといけない
  • シミュレータ上では動いた
  • マルシプレクサをトライステートバッファに変えた
  • RAMはハイインピーダンスになって挙動がおかしくなったり。
  • 焼けたRAMをさわってやけどした(労災)
  • 再現せず。電源ノイズもあるかも。
  • 74HCシリーズは生産が終わりつつある
  • 1clkでread+alu+writeをするようになってたがタイミングチャートの管理がたいへんになった。
  • マイクロコードにするとよかったかも。
  • 寮は電熱器がつかえない→ハンダゴテもつかえない

13:32

  • Q: SRAMのシミュレータは?
  • A: 非同期型IN/OUTが瞬時にきりかわる理想的な素子をつかった。実物で考慮すべきものがわからなかった。
  • Q: DIP
  • A: 基盤をつくるかんけいから。(変換基盤をつかうのもあり)
  • Q: プログラムは文字コード?
  • A: 3bit
  • Q: μOPにしたらどうなる?
  • A: 1clkごとにread,alu,writeにわけるとよかったかなと。
  • Q: 74HC,74HCTどちら?
  • A: 74HC (パラレルのRAMはTTL想定なので74HCTをつかわないと入出力マージンがたりなさそう)
  • Q: SRAMは若松通称にいっぱいある。

13:42

P_20240602_133712

3進CPUを自作する!!! / @rikeden_net

13:43

  • trit: 一桁
  • FPGAは高レイヤ
  • 平衡3進数: 0,1,2ではなくて-1,0,+1をつかう -1は1バーがおおいがここでは#とかく。
  • 10進数は符号つき絶対値
  • 平衡3進数ならマイナスは各桁の符号をいれかえるだけ。
  • 最上位の値で符号がわかる。
  • 切り捨てるだけで丸めになる。
  • 3進NAND
  • ANDはmin、ORはmax、とかんがえらえる
  • 2進数NANDに抵抗をついかするだけで実現できるが、出力抵抗が大きい・静的な消費電力がある。
  • half addr 16Tr
  • 1tritのFFはflip-flap-flop FFF
  • 2つのラッチをつなぐかたち binaryとおなじ
  • 試作すると値が壊れる誤動作→出力インピーダンスがたかいのがもんだいか?
  • アナログ的なことを考えないといけないのは大変
  • 抵抗をつかわないバッファ回路をつかうように
  • 1trit CPU
    • 1trit reg *2
    • ALU: nand nor add
    • MUX

14:08

  • Q: 3進数で計算できることにきづいたのはいつ?
  • A: 昔から2進数の必然性はないなとおもっていた
  • Q: 先行研究は?
  • A: 昔にソ連がつくっていた。18桁くらい。3進数用のトランジスタをつかってるものもあったり(offにしても弱く出力するような)
  • Q: 3進数のRAM/ROMはどうする?
  • A: 妥協するつもり(市販品でエミュレート)。5tritが8bit相当なのでそこをめざしている。
  • Q: NANDの出力抵抗を減らす構成は考えているか?
  • A: Trが少ない方を優先している。fan-outがおおきくなったときは考えないといけないかも。

14:15

休憩

P_20240602_142115P_20240602_142044

(産業の)米づくり環境ご紹介 / @taichi600730

14:30

  • RICE概要
    • RV31IM
    • 4stage pipeline fetch decode execute writeback
    • systemveriog
  • デコーダ: 煩雑なので自動生成するように
  • CSR: control and satte registersP_20240602_145306
    • 簡単だけど注意力が必要→自動生成が吉
  • 検証環境 KonataP_20240602_144454
    • 東大塩谷先生のパイプライン可視化ツール
    • ログをくわせると表示してくれる
    • 傾きがゆるくなるとパイプラインストール
    • はぬけになると分岐でflush
    • 原因命令がすぐわかる
  • 検証環境 ISS
    • instruction set simulator
    • SPIKE
    • Whisper (こちらを採用)
      • systemverilogとのブリッジ環境が用意されている
  • 検証環境 riscv-tests
    • ユニットテスト
      • 致命的なエラーは発見できる
    • ベンチマークテスト
      • dhrystone で分岐予測の効果をみたり
    • プログラムの完走は特定のメモリに書き込みで判定している

14:51

  • Q: CSRの記述がRubyとは?
  • A: CSRをRubyのプログラムとして記述している。
  • Q: systemverilogのシミュレータはなにをつかった?
  • A: VCSをつかった。オープンソースのおすすめはつかったことがないのでない。

14:56

TW4

14:57

  • CPUに特権命令・割り込みをどうのっけるか
  • tokken warikomi 4bitl
  • モード2bit アドレス4bit = 物理アドレス6bit
  • 割り込みでレジスタ退避は?
  • ARMを参考にしてモードごとに独立した汎用レジスタがある
  • ALUはデコードも担当している
  • SWAP命令でモード間でレジスタswap
  • 例外処理中の例外はダブルフォールトで停止する
  • 複数のIRQのあつかい
    • デイジーチェーン
    • IRQはORになっている
    • 割り込み許可信号がつたわっていく

15:15

  • Q: ユーザーモードから特権モードにジャンプできてセキュリティ上問題がないか?
  • A: ジャンプできるアドレスが制限されている
  • Q: どの割り込みかどうやって判別するか?
  • A: IN命令でスイッチの状態をみることで対応
  • Q: 特権命令はユーザーモードで実行できないようになっている?
  • A: 回路規模的にはDIP部品でできるのではないかとおもっている。

15:21

交流会

P_20240602_152523

展示をみてまわる。

  • 3進CPUでクロックは2進なのは3進のメリットがおもいつかないのと+1,0,-1で0をGNDにすると扱いにくいからとのこと。
  • リレーコンピュータはいまのところ耐久性の問題はでてないが、時計にしてるやつはそろそろ1年たって寿命くるかも、とのこと。
  • リレーは論理素子としてはXORが基本になる。(端子の両端の電圧が異なるときだけON)

LT

Veryl

P_20240602_160429P_20240602_160707P_20240602_161048P_20240602_161113P_20240602_161428

Chisel6

P_20240602_161543P_20240602_161822

RISC-V CPUデバッグ手法

P_20240602_162140P_20240602_162452P_20240602_162703

Next Micon IDE

P_20240602_162827

汎用ロジックICで自作計算機

P_20240602_163337P_20240602_163425

ダイソー: ワイヤレス・マウス

急遽USBマウスが必要になったので百均に買いに行ったが、近所のセリアにはおいてなくて、ダイソーにいったらUSBドングルタイプのがあった。300円のは単4乾電池 x2本、500円のは充電式で静音で、静音をとるか乾電池をとるかでけっこう迷ったが電池式で。充電式はいざというときに電池切れしてイラっとするので。

_1005541-C1_1005542-C1 1_1005543-C1_1005544-C1_1005547-C1

かんたんな取説

_1005549-C1_1005550-C1

ちょっとプラが安っぽいが十分。

_1005553-C1

電源スイッチが華奢でちょっと心配なのと、机に置くとガタガタして成形精度がよくない。これは大きな不満。マウスにドングルをしまっておく場所があるのは偉い。

_1005554-C1

電池ボックスは電池を横に並べて入れるのでなく縦に入れる珍しい形。昔なら電池が取り出しやすいように布テープがついてたものだが、最近は見なくなったな。爪が入らないのでたたきつけて衝撃で取り出すスタイルになるかな。

_1005557-C1

Windowsマシンに挿してみると「2.4G Mouse」としてみえた。

続きを読む

USB type-C 充電ケーブル

スマホの充電は80%制限かけてるので、ほぼ一日中UBSにつなぎっぱなしで、ここのところ接触が悪くて充電されてないことがるので、百均でUBSケーブル買ってきた。

通信ありでPD対応だと1.0mより短かくなってしまうので、当面は充電専用でokなのでこれで。(どうせ急速充電offでつかってるんだけど)

P_20240504_212720

P_20240504_212737

ACRiルーム・ハンズオン【対面】:初心者限定FPGA入門セミナー

FPGAは会社の勉強会でだれかボードを買ってたような気もしたり(10年くらい前か?)、派遣の仕事で大きなプロジェクトでFPGAをプログラムするスクリプトをたたくのはやったことがあるが、FPGA自体をさわったことはまだなかったので、体験セミナーに参加してみた。

ひさしぶりに東工大 大岡山へ来たような気がする。P2P SIPとかPlan9の勉強会とかでちょくちょく行ってたのは10年ほど前になるのか。駅前でなにかイベントやってたけどスルー。

P_20240323_143820

正門を入ってすぐのところにきれいな建物ができててびっくり。

P_20240323_143855P_20240323_172155P_20240323_144317

受付で名刺が必要とのことだったが1枚もいらなかったとか、ACRiのアカウントを開設するのにメールを読めないといけないとか、ちょっとトラップあり。

利用方法はちょっとめんどくさい。

  • webからユーザー登録する
  • メールが届いて、サーバーのパスワードとACRiルームのパスワードが書いてある。
  • ACRiルーム(FPGA利用環境)の空きをさがして予約する。
  • 踏み台サーバーにsshでログインしてリモートデスクトップのポートフォワーディングする。
  • リモートデスクトップのクライアントを起動してACRiルームのデスクトップ(ubuntu)を開く。
  • Vivado起動

端末はMacだったので操作になれてなくて緊張した。キーボードも日本語配列だし。

P_20240323_144707

VivadoをつかってAND回路を実装する。手元にFPGAボードはないので入出力はVIOというのをつかってGUIで入力信号を変化させると出力が表示されるという仕掛。2入力のAND回路だけならすぐ終わるらしいがVIOがあるのでちょっとした時間がかかる。

メモ

  • ACRiは「あくり」とよむ。
  • Artyは3万円くらいの入門用でちょうどいい。
  • 試行錯誤してるときにビルド(っていうんだろうか?)が短時間で終わったら、ミスしてて最適化でごっそり回路が消えた可能性が高い。
  • XDC制約ファイルはベンダーが配布してる。

P_20240323_172415

CITIZEN 8MY535-006

実家の壁掛け時計が分針と秒針が合ってない(秒針が12のときに分針がぴったりの位置にきてない)というのでとりあえず電池交換してみたら全く動かなくなってしまったので寿命ってことで新しいのを近所のホームセンターに見に行ったら、希望の条件に合うものは2つみつかった。

  • 電波時計(時間がずれるたびに高いところの時計をさわるのはめんどくさい)
  • 秒針なめらか(コチコチ音が気になる)
  • 針がシンプル(ゴテゴテしたデザインの針はいや)
  • 数字が読みやすいこと
  • 温度計とか余計な表示がないこと

気に入ったほうのをネットでみたら店頭よりもだいぶ安かったので(不本意ながら)アマゾンでポチった。¥8,771 税込 P_20240105_202359

とくに問題もなく動いているが、秒針が10の倍数のときに長針・短針が1/6分だけコチっと進む動きできっと電池節約なのだろう。気になるほどではないが滑らかなほうがよかったかな。あと秒針の先が赤く塗装されているのは手元に届くまで気づかなかった。

リズム(RHYTHM) 置き時計・掛け時計 茶色 Φ32x5.4cm 電波 アナログ M535 連続秒針 丸型 木 シチズン 8MY535-006

amazon

人感センサー付きLED電球

玄関外の白熱電球が切れっぱなしになってるのだが、ふと人感センサー付きのLED電球をとりつけたら便利なのでは?とおもってアマゾンでぽちっと。1045円。なぜか送料は無料。

_1004642-C1b

ここ最近のアマゾンの梱包からすると、かなりしっかりと緩衝材が入っている。

_1004643-C1

開封

_1004644-C1_1004645-C1_1004646-C1_1004647-C1_1004648-C1_1004650-C1_1004652-C1

ちいさい紙が入ってて注意書きが。

_1004653-C1_1004654-C1

さっそく取り付けて夜になるのを待ったが前を人が通っても点灯せず。心配していたようにカバーがついていると反応しないようだ。センサーの向きも合ってないしな(横むいちゃってる)。レーダー式の人感センサーなら反応したんだろうが、壁もすり抜けて反応するらしのでそこまでは必要ないんだよなぁ。

_1004684-C1

ということでトイレに使おうかとおもったが換気扇のスイッチも兼ねているので壁スイッチをいれっぱなしにできなかったorz。玄関内側の天井のLED電球と入れ替えるにしてもカバーははずさないといけないしなぁ。しかも玄関前とおっただけで点灯しちゃうのは不便だし。

電球をとりつけるときに電球ボール部分を強くにぎったらペコっとへこんでびっくり。手を離したらもとにもどったがかなり薄いプラスチックでできてるんだなぁ。これまで買ったLED電球は分厚いプラスチックでびくともしない感じだったので発熱量が少なくなって薄くできるようになったのかもしれない。

FLSK 蓋がにおってきた

FLSKの蓋を開けてドリンクを飲むときにカビくさいにおいがすることに気づいて、本体は臭いがしなくて、蓋がどうも臭うようだ。

蓋を塩素漂白してみようかなと思ったが推奨されてなさそうなので、とりあえずシリコンパッキンをはずしてみたらパッキンが臭う。パッキンだけなら塩素漂白できるとおもうけど、洗剤でていねいに洗ってみて様子見。たぶんコーラの臭いがしみこんでしまったようだ。

P_20231209_143238

これまで臭いは気にならなかったので、ペプシはokで最近入れたコカコーラがngなのかもしれない。

FLSK用の製氷皿

このまえ買った水筒FLSK 750mlは口が細いので普通の製氷皿で氷をつくると大きすぎて入らないのでいろいろ製氷皿を買ってみた。

買ったのは上から順で、上の2つはセリアで購入、いちばんの1つはダイソーで購入したもの。

P_20230922_124722-01

いちばん上のちいさい氷のはボトルの中にいれるのが手間でなにか漏斗のようなものがないとかなり面倒。

まんなかのは太すぎてボトルの口を通らないので水少なめで氷をつくらないといけなかったり、それでも角がひっかかることがあるので水でとかしたりと若干いけてない。

一番下のがベストの太さだった。氷を全部いれるとちょうどボトルの底に入りきるくらいの量になる。

P_20230915_143212P_20230915_143219

FLSK 750ml ローズゴールド

タイガーの炭酸が入れられるステンレス魔法瓶があることをしって調べてたらFLSKというのがデザイン的に気に入ったのでポチっとな。色はシャンパンがよかったけど品切れしてたのでローズゴールドに。嫌いじゃない色だし。6490円。1000円くらいの安物ばかり買ってたので、こいつはかなり高い。

_1004125-C1b_1004126-C1_1004128-C1_1004147-C1

やたら高級感のある化粧箱。質実剛健なドイツっぽくないな。

_1004129-C1_1004130-C1_1004131-C1_1004133-C1 1_1004136-C1

made in chinaだった。しかたないか。

_1004148-C1

せっかくの塗装が剥げるといやなので、しばらくはこの付属の袋に入れて運用するかな。

_1004138-C1

じゃじゃーん。

_1004141-C1_1004143-C1_1004144-C1

ボトルのなかに替えのパッキンとあっさりした説明書きが入っていた。

_1004145-C1_1004146-C1

取り扱い説明書など。

_1004152-C1 1_1004153-C1_1004154-C1_1004155-C1

2回つかってみたかんじ: 保冷力は十分。口が狭いので小さな氷しか入らないのと洗ったあと中が乾きにくい。750mlサイズなので手づかみしにくい。かばんにギリはいる大きさ。炭酸で栓が飛ばないだけで炭酸は抜けちゃう。

動かなくなった:KOIZUMI ハンズフリーファン KFF-0506

KOIZUMI ハンズフリーファン KFF-0506、1シーズン半しかつかってないのにうごかなくなってしまった。正確には電源ボタンをおすと回りだすがすぐに止まる。充電はできてるような表示だから、内部の回路の配線が外れたか、モーターの軸がおかしくなって無駄な負荷がかかってそれを検出しているのか、500円で買ったやつだからメーカー修理に出すほどでもないしなぁ。音はうるさいけど、ベルトにひっかけて上半身を冷やすのはそこそこ効果があった。とくに電車に乗って車内の冷気が服のなかにはいってきてヒンヤリするのが最高にきもちいい。

P_20230816_003721

記事検索
月別アーカイブ
アクセスカウンター

    タグ絞り込み検索
    ギャラリー
    • 今日の練習 2024-07-17
    • アフタヌーンティー交流会
    • アフタヌーンティー交流会
    • アフタヌーンティー交流会
    • 今日の練習 2024-07-14
    • カインズで買い物
    Amazon
    楽天市場
    adby google
    LINE読者登録QRコード
    LINE読者登録QRコード