e-tipsmemo

ごった煮

2018-01-01から1年間の記事一覧

Arty MicroBlaze ①HelloWorld

忘れないように Vivadoでmicroblaze - fpgafpga ページ! Block Design Board fileを使えば、ピンアサインする手間が省ける。 SDK HelloWorld TeraTerm などでHelloWorldがでる。 続くかも

Ryzen5 2600X 録画PC 諸々

e-tipsmemo.hatenablog.com 続き構成 物 型番 CPU Ryzen5 2600X マザボ Asrock X470 MASTER SLI GPU GF-GTX660-E2GHD/DF/OC(流用) メモリ CMK16GX4M2A2666C16 電源 Corsair CX550M 80PLUS ケース JONSBO U4 SSD MZVPV256HDGL-00000 HDD DT01ACA300 適当に放…

EZ-USB FX2 Slave FIFO④

e-tipsmemo.hatenablog.comこの記事の続き。FIFOから読み出す。FIFO generatorによって作られるFIFOがよくわからなかったので自分で非同期FIFOを作った。 読み出す部分。 書き込まれた2byteが10個(20byte)になったら読み出しを開始する。実際に読み出す前にS…

Install Ubuntu18 Bionic arm(zynq) and x86(PC) まとめ

Ubuntu 18が出たので、やりかたを確かめつつまとめとりあえずARMで動かすUbuntu18をセットアップするためにLinuxが必要. Bash On Windows もあると便利。 Ubuntu18をVMplayerにインストールする。 x86_64 Windows上のVMplayerに Ubuntu18をインストールする …

合計アクセスが10000人を超えた

ブログ開始日から1年と半年ぐらいでアクセス数が10000人を超えた。 これはブログ管理画面に乗っている数字によるものなので一日においてユニークユーザーをカウントしているのかどうかなどはあまりしらない。5月9日の11人目ぐらいのアクセスがちょうど10000…

小型ディスプレイ アクリルスタンド

Raspi、FPGA、サーバーセットアップ用に小型のHDMIモニターがあると良いな。 と思った。Amazonで小型ディスプレイを調べても、FullHDのものはなかなかない。 あっても高いか安くても小さすぎる。秋月にちょうどいいものがあった。 akizukidenshi.comただこれ…

Vivado IPコア コピー

Vivadoのip_repoの中に自分でつくったIPコアを複製したくなったときにコピーする方法。Vivadoで作るユーザーIPのバージョン管理が、どういう設計手順を想定しているのかわからないが、とにかく使いにくいので、 結局自分でIPコアをコピーしてメジャーバージ…

Ryzen5 2600X 録画PC セットアップ

e-tipsmemo.hatenablog.com 続き。 マザーボードをマザーボードの箱の上で作業する。CPUとメモリを取り付けた。 CPUは簡単に取り付けられるが、 CPUファンの取り付けが難しい。 マザーボードに最初から付いている部品を取り外す。 マザーボード裏に押さえつ…

EZ-USB FX2 Slave FIFO③

e-tipsmemo.hatenablog.com の続き。実際にLEDに表示するのではなく、FIFOに入力していく。 イメージとしては以下のような感じ。 これを実装した。EZUSBのコードは前と同じ。 FPGAのコードは以下の部分がメイン EMPTYフラグをみてSTATE1へ遷移し、EMPTYフラ…

Ryzen5 2600X 録画PC 検討

Zen+世代のAMD CPUとしてデスクトップ用Ryzen7/5 2000番代シリーズが発売。(4/19) たった2万3000円で6コア12スレッドが手に入るのは素晴らしい。 (i5-8400は2万円で6コア6スレッド)今回はRyzen5 2600Xを使って組んだ。 使用したパーツは以下 流用品もある。 …

EZ-USB FX2 Slave FIFO②

e-tipsmemo.hatenablog.com 続き。FIFOを接続するまえに16bitずつ受信できるかどうかを確認する。まずEZ-USBのデバイスディスクリプタの一部を示す。 変えたのはここらへんのエンドポイントの数や、 使わないエンドポイントをコメントアウトしただけである。…

Windwos10 マイク 聞こえない

Windows10でマイクを利用するときにハマったこと 前提 マイクを持っている ドライバを入れたりした(Windowsデフォルトでもいい) マイクは認識されている 症状 設定→システム→サウンド→サウンドコントロールパネル→録音 でマイクが認識されており、既定のデバ…

EZ-USB FX2 Slave FIFO①

e-tipsmemo.hatenablog.com この記事の続き且つSlave FIFO modeで動かす。 上の記事で見落としていたがInterface Descriptorの中に 利用するエンドポイントの数を指定する場所があった。 ;; Interface Descriptor .db DSCR_INTRFC_LEN ;; Descriptor length …

無変換 Escape 入れ替え

WSL(に限らないが)でVimを使うとescが遠いことが不便に思える。ググればたくさん出てくるが それをreg化したもの。 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "Scancode Map"=hex:00,00…

ADALM-PLUTO 初期テスト

他のFPGAボードもいじっている途中だが、 格安ボードがあると買ってみたくなるものである。 www.digikey.jp ただ、これはFPGAが乗っていると言っても、使う側はそこをあまり意識しなくていいとおもわれる。 主にSDRを学習する用の開発ボードという様子。 ド…

SSH X11fowarding on WSL

やりたいこと WSLのセットアップ e-tipsmemo.hatenablog.comshellはfishを利用している。SSHとx11-appsを入れておく sudo apt-get install x11-apps Windowsの設定 Xmingが有名だがアプリケーションごとにタスクバー上のアイコンが分かれないのであんまり好…

Rust UTC timestamp

Rustでタイムスタンプがほしい時は多々ある。time crateじゃもうdepricatedなので chrono crateを使う。 $ cargo tree | grep chrono ├── chrono v0.4.1extern crate chrono; use chrono::prelude::*; #[test] fn timestamp(){ let dt = Utc::now(); println…

Rust パーセントエンコーディング

パーセントエンコーディングはabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.~ 以外の文字を{%[hex]}*nの組み合わせに置き換える。 HTTPリクエストなどで送るときに必要。 fn urlencode(my_str: String) -> String { let unreservedcha…

Oscilloscope選定

以前は秋月で買た「秋月3万オシロ」を利用していた www.owonjapan.com が、スペック的にもの足りない気がしてきたので新しく購入するオシロスコープを選定した。 と言っても、Agilentの普通のInfiniiVisionシリーズは高いキーサイト (KEYSIGHT)InfiniiVision…

Rust Build Windows DLL on WSL 2

e-tipsmemo.hatenablog.com このような記事を書いたが、.cargo/configの記述がこのままだと i686-pc-windows-gnuでコンパイルすると、 C:\projects\rust\src/libpanic_unwind/gcc.rs:292: undefined reference to `_Unwind_Resume' collect2: error: ld retu…

Rust Build Windows DLL on WSL

以前にこのような記事を書いたが、 e-tipsmemo.hatenablog.comRustupにformatterが標準機能になったらしいので cargoからインストールするのではなく、 rustup component add rustfmt-previewを行って、.vimrcに let g:rustfmt_autosave = 1だけを書けばよく…

EZ-USB FX2 Device Descriptor

e-tipsmemo.hatenablog.comSlaveFIFOの利用を始める。 ベースはBulkloopサンプルであり、TD_Init、TD_Poll、デバイスディスクリプタを編集することになる。 http://www.cypress.com/file/386321/download のp11から。ここが項目ごとにまとまっている。 EZ−…

rust obj loader

3Dモデルを読み込むのにOBJファイルローダーを作ろうかと思った。 が、優秀なローダーがあるのでそれを利用したほうが良いので tobj crateの紹介 GitHub - Twinklebear/tobj: Tiny OBJ Loader in RustCargo.tomlに追記。OBJファイルを用意する必要がある。 …

Rust レイトレーシング ⑩ 三角形

ポリゴンの衝突判定のためにレイと三角形の衝突を実装した。 球と同様にHITトレイトを実装する。 三角形との交差判定は risalc.info にある通り。 面内のベクトルは、三角形の法線と直行するのでそこからがわかる。 ベクトルを求め、三角形を張る、を基底と…

Ubuntu systemd getty autologin via Serial Console

Ubuntu17あたりでautologinする設定普通のtty([0-9].)なら systemctrl edit --force getty@tty0 (tty0はログインコンソールに変える) [Service] ExecStart= ExecStart=-/sbin/agetty -a <username> --noclear %I $TERMとすると、 /etc/systemd/system/getty@tty0.servi</username>…

Rust レイトレーシング ⑨ 金属・ガラス

金属とガラスを実装した。 それぞれMaterial Traitを実装し、光が当たったときのその光のゆく方向を計算する。 再帰の呼び出しに条件を付けることで、不必要なほどの反射光の計算を適当に減らす。 fuzzは反射時のランダム要素 ガラスの球と屈折率 わかりにく…

Cargo build/update error "no match for id (some hash)"

Updating registry `https://github.com/rust-lang/crates.io-index` error: failed to load source for a dependency on `image`Caused by: Unable to update registry `https://github.com/rust-lang/crates.io-index`Caused by: failed to fetch `https:/…

Rust レイトレーシング ⑧ 素材準備

今更このようなサイトを発見してしまったのでここも参考にしていこうと思う。 レイトレーシング入門1「光線の基本と反射」 - Qiita色々な素材を利用できるようにするために、Material Traitを定義してこれを持つ構造体を各素材とする。 このTraitを実装する…

Rust 実行時間測定②

e-tipsmemo.hatenablog.comこのような記事を書いたが、time crateのリポジトリをよく見ると、 Notes This library is no longer actively maintained, but bugfixes will be added (details). In case you're looking for something a little fresher and mo…

Rust レイトレーシング ⑦床

http://e-tipsmemo.hatenablog.com/entry/2018/02/17/000000e-tipsmemo.hatenablog.com複数の物体を表示できるようにする。 とりあえず複数の球体をvecに入れる。 shapelistにもHITトレイトを実装することで前と同じようにhitを呼ぶだけ。 t0 ~ closest間の…