Blog

quantum computing

LLVM最適化パスを使ったゲート最適化

LLVMは簡単にPassを作って組み込むことが出来る。このPassというものは何か?というとオフィシャルのドキュメントに記載がある。コンパイラが行う変換と最適化を行うもので、PassManagerがそれらの経路の制御を行…
もっと読む

qlang開発環境

LLVMを使って開発する時に便利なのが、フロントエンドのIRを解決できれば、バックエンド側が無くてもとりあえずはOKというのもあって、必ずしもRISC-V LLVMが手元に無くても開発を進めることが出来る。ということで、…
もっと読む

LLVMを使う

今回のプロジェクトで利用しているLLVMのバージョンは9.0で最新の物を使っている。LLVMは進化が早いのもあって、ググって出て来た方法を使ってビルドしようとしても失敗したり、一体どーすりゃ良いんだ…orzと…
もっと読む

「RISC-V量子拡張の参照実装とマイクロ波制御量子ファームウェアの開発」の開発秘話・中間報告編

~~量子コンピューター Advent Calendar 2019の十六日目の記事です。~~~ 導入部 未踏ターゲット事業:2019年度採択プロジェクト概要(山崎・新里・今村PJ) 「RISC-V量子拡張の参照実装とマイク…
もっと読む

RISC-V Quantum Extension

このプロジェクトの基礎となる RISC-V Quantum Extension について詳細を明かさずに進めていました. ここで, 改めて RISC-V Quantum Extension について解説します. RISC…
もっと読む

RISC-V spike vs QuEST

RISC-V SpikeのエミュレーターにはQuESTを組み込んで、量子系の命令セットをカスタムとして用意した。そこで気になるのが、QuEST(on x86)で普通に書いたプログラムとRISC-V Spike with …
もっと読む

qlang(quantum language) with LLVM

qlangというRISC-V 量子向けの独自のプログラミング言語をLLVM基盤上で開発していく。前にgccで行った改造内容から次のことが分かった。完全に同一のC言語のソースコードについて、 RISC-V向け量子向けGCC…
もっと読む

The easiest way of setup QuTiP on Windows

~~~量子コンピューター Advent Calendar 2019の二日目の記事です。~~~ 生粋の園児ニアのnoritsunaです。今回は、研究者に捧げるQuTiPやQISKitなどをWindowsにセットアップする方…
もっと読む

Add Extend Instruction set to RISC-V GNU Toolchain

前回に引き続き、次は拡張命令セットをGCC(RISC-V GNU Toolchain)に追加していく。前回はとりあえずSpike上で量子系の命令セットを追加して演算を行うまで行った。ここで目標としては… 1.…
もっと読む

Quantum compute on RISC-V emulator(Spike)

RISC-VのエミュレーターとしてSpikeを使って、命令セットの拡張と実装を行ってみました。Spikeは見たところ、RISC-Vをターゲットにしているため非常にシンプルな実装になっていて改造も簡単そうです。命令セットの…
もっと読む