RISCV
日立製作所 日立馬場記念ホール にて行われたRISC-V Day Tokyo 2019に参加してきた。聞いて思ったことを忘れないうちに書き残しておこうと思い、記事にした。 個人的に気になったこと まずは、将来的にRISC-Vが機能をスイスに移すことを計画しているとの話。…
Dhrystone に変わるフリーのCPUを性能を測るベンチマークとして Embench が David Patterson によって提案されているのを、RISC-V Workshop Zurich で知った。発表スライドとビデオはこのリンクの"Embench TM: A Free Benchmark Suite for Embedded Computin…
「たのしいバイナリの歩き方」の本やバイナリの歩き方に掲載されているptraceのサンプルプログラムが、RISC-V QEMU上で動いているLinuxではどうもうまく動かない。その原因を調査していた。 うまく動かないと悩んでいたコードはバイナリの歩き方に掲載されて…
RISC-V を簡単に試すことができるDockerfileを作成した。Qiitaの記事からDockerfileの更新したもの。Docker Hubから利用できる。 前回からの変更点として、ブートローダにbblが使われなくなっていることがあげられる。READMEにも以下のような記載がある。 Th…
Davis In-Order CPUというカリフォルニア大学デービス校のコンピューターアーキテクチャの授業で使われている、RISC-V ISAを実装したCPUがある。少し前に論文として上がっていたので読んでみた。 論文のPDFはこちら。 カリフォルニア大学デービス校では長い…
Zephyr OSというリアルタイムOSを使うことになったので、その環境構築時の手順のメモ。 SDKを導入し、環境変数を設定する。 $ wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.10.1/zephyr-sdk-0.10.1-setup.run $ ./zephyr-sdk-0.…
risv-isa-simに付随しているspike-dasmの逆アセンブル結果におかしい点を見つけた。 $ echo "DASM(0x00000000)" | spike-dasm c.addi4spn s0, sp, 0 と表示されるんだが、これ unimp が表示されるのが適切。 c.addi4spn に関しては即値が0以外であることが、…
昨日、hope-RIPEをSpikeシミュレーターで動かしてみたんだが、Stack Buffer Overflowを利用したROPが成功しないという不可解な現象に遭遇した。SSPが有効になっているからかと思ったけども、Makefileを見る限りではそうではないみたいだし、これは何だろうと…
Runtime Intrusion Prevention Evaluator (RIPE) という、脆弱性攻撃に対する防御のカバレッジを測定するためのツールがある。これを用いると種々のパラメータを変化させながら種々の脆弱性攻撃用コードを生成、そのコードを実行し脆弱性攻撃の成否をレポー…
先日、Amazonで注文していたSipeed Maixduinoキットが届いたので、遊んでみる。 開発環境のセットアップ gnu-toolchain があるので、これを落としてきてビルドする。 $ git clone --recursive https://github.com/kendryte/kendryte-gnu-toolchain $ cd kend…