SIProp量子化計画 https://quantum.siprop.org quantum computing Tue, 09 Jan 2024 10:23:18 +0000 ja hourly 1 https://wordpress.org/?v=6.9.4 見えてきた自作QPU https://quantum.siprop.org/handmade_qpu/ https://quantum.siprop.org/handmade_qpu/#respond Fri, 15 Dec 2023 15:00:00 +0000 https://quantum.siprop.org/?p=1744 本投稿は「量子コンピュータ Advent Calendar 2023」の16日目の記事となります。 はじめに 去年の「OpenMPWで作るQPUの可能性」を覚えておりますでしょうか?QPUの自作の可能性を考えた記事です。…
もっと読む

The post 見えてきた自作QPU first appeared on SIProp量子化計画.

]]>
本投稿は「量子コンピュータ Advent Calendar 2023」の16日目の記事となります。


はじめに

去年の「OpenMPWで作るQPUの可能性」を覚えておりますでしょうか?QPUの自作の可能性を考えた記事です。今回は、その続きとなります。

前工程を制する

QPUを作るうえで一番重要なのが、半導体の前工程と言われる「半導体を実際に製造する」部分となります。なぜかといえば、酸化膜の厚みの調整やP形班東大やN型半導体の形成時の拡散層の厚みやポリシリコンの厚みや形などが重要となってくるからです。

そこで、半導体の前工程をマスターしてきました!!!

自分で作った半導体と一緒に

何をしてきたのか?

こちらのファブでは、全55工程あるのですが、その中からQPUの設計・製造に重要そうな部分を抜粋すると

膜の成型

まずは、一番重要な酸化膜を形成します。電気炉の中に必要な酸化剤を充填して焼き付ける工程となります。ここでの焼き付ける時間などを調整することで、酸化膜の厚さを自在に調整することが可能です。

これで、一歩自作QPUへの道が開けました!

酸化膜成型用の炉
バーニング!!!

マスク

続いて、不要な酸化膜を除去して、必要な部分のみに酸化膜を残す工程です。マスクを用いて、フォトレジストを塗り、露光して、現像します。要は、銀塩写真と同じ工程です。

フォトレジストを塗る

私が自らの手で、フォトレジストを塗り付ける!まぁ、薬品を垂らすだけで、あとは機械が自動でやってくれるんですが・・・(正確には、このフォトレジストの厚さをちょうどよくするために、どのくらいの量にすべきか?など考慮することはあります。)

露光機へ

続いて、露光します。一台5億円くらいするらしいです。誰か、おごって!

現像する

現像液につけて、しゃばしゃばするだけですが・・・

出来上がり

これで「1工程分」の膜成型~フォトレジスト~露光~現像が終わりました。あとは、これを半導体の層の分だけやるだけです・・・全55工程あります・・・

まとめ

ちなみに、これを全工程回すと、手慣れた人で2週間、初めてだと2~3か月ほどかかるらしいです。

ということで、QPUが自作できることは見えてきたけど、実際にやるのは大変だというを身をもって、体験してきました。

もし、この挑戦をしたい方、ぜひ、ご一緒に!!!

The post 見えてきた自作QPU first appeared on SIProp量子化計画.

]]>
https://quantum.siprop.org/handmade_qpu/feed/ 0
OpenMPWで作るQPUの可能性 https://quantum.siprop.org/openmpw_qpu/ https://quantum.siprop.org/openmpw_qpu/#respond Sun, 11 Dec 2022 15:00:00 +0000 https://quantum.siprop.org/?p=1730 本投稿は「量子コンピュータ Advent Calendar 2022」の12日目の記事となります。 はじめに みなさま、ご存じでしょうか?OpenMPWプログラムというものを! Google社が主催する無料で独自設計のA…
もっと読む

The post OpenMPWで作るQPUの可能性 first appeared on SIProp量子化計画.

]]>
本投稿は「量子コンピュータ Advent Calendar 2022」の12日目の記事となります。


はじめに

みなさま、ご存じでしょうか?OpenMPWプログラムというものを!

Google社が主催する無料で独自設計のASIC(シリコン)を作ることができるプログラムです!(公式サイト)細かいことは省いて、皆さんが気になるであろうことを表にすると下記のような感じです。

主催Google
ファブSkyWater Technology Foundry
プロセスルール130nm
レイヤー数6
ユーザエリアサイズ10mm * 10mm
パッケージWCSP(Wafer-Level Chips Size Package)
製造チップ数300
評価ボード(電源やデバッグ用ポートを装備)5
シャトルタイミング偶数月に140プロジェクトがランダムで採択)
料金無料(有料プラン有り)
ツール類全てオープンソースソフトウェアとして公開
制限製造した回路はオープンソースで公開する必要がある(有料プランでは不要)
表1、OpenMPWのスペック表

サイズはOK?

現在の最先端プロセスルールが「3~5nm」ですので、太古の昔のプロセスルールではありますが、研究レベルで試作されるQPUが90nmくらいを利用しております。さらに、ユーザエリアサイズが10mm x 10mmとなっており、4qubitのQPUが90nmで作った場合、10mm x 10mmサイズとなります。すなわち、2~4qubitのQPUを作るには十分なスペックといえるのではないでしょうか!(※来年にはSkyWater 90nmのシャトルも予定されています。余談ですがGlobalFoundries 180nmは2022/12にスタートしました。)

図1、OpenMPWのチップの実際

トランズモン素子はOK?

では、肝心のトランズモン素子を設計することはできるのでしょうか?一点懸念点はありますが、可能です

図2はアナログ回路のエディターで、PCB CADでいうところの回路図エディターです。これで、独自の素子や回路を作ることができます。ただ、数qubitであれば、図3のレイアウトエディターというPCB CADでいうところのPCBレイアウト(アートワーク)エディターで、作ってしまうほうが楽だと思います。(※アナログ回路でやる場合、PDKというライブラリをいじる必要が出る可能性があるためです)

そして、懸念点ですが、絶縁被膜などの厚さなどは調整できません。そのため、電圧を上げたりなどでうまく設計しないとトンネル効果を起こすことが難しい可能性があります。しかし「無料で2~3か月に一回」はシャトルがありますので、これを利用して何回も試行錯誤することでこの問題は解決できるのではないかと考えています。(※実際に、何度もバージョンを変えて出している方々もいます)

図2、アナログ回路エディター
図3、レイアウトエディター

まとめ

ということで、簡単ではありましたが、自作QPUの可能性を感じていただけたのではないでしょうか?もし、我こそは!という方がいれば、ぜひチャレンジしてみてください!私のほうにお声がけいただければ、全力でサポートいたします!


その先はOK?

ただ、試作できたとしても、動作させるには希釈冷凍機を用意しないといけないので、そこが次のハードルとなりますが。。。あっ、コントローラは未踏の成果があるので、どうにかなります!(本投稿のQPUは「超電導量子コンピュータ向け」を想定しております)

The post OpenMPWで作るQPUの可能性 first appeared on SIProp量子化計画.

]]>
https://quantum.siprop.org/openmpw_qpu/feed/ 0
8 bit https://quantum.siprop.org/8-bit/ https://quantum.siprop.org/8-bit/#respond Sat, 15 Jan 2022 04:43:00 +0000 https://quantum.siprop.org/?p=1433 8 bit is an application work uses the operating principle of a superconducting quantum computer gate control m…
もっと読む

The post 8 bit first appeared on SIProp量子化計画.

]]>

8 bit is an application work uses the operating principle of a superconducting quantum computer gate control microwaves.
Currently, there are a many applications works&interaction based classical computers architecture, but by using the quantum computers is few yet. In the future, many quantum computers applications will be created to emerge.
Then I focus on superconducting quantum computers in qbit gate control microwaves, propose the interaction between qbit and human and everyone could touch and try this application.

8 bit main feature is convert microwaves (radio waves) in the qbit gate control of the superconducting quantum computer to sound waves in real time and show them as a Chladni figure. In many cases, qbit gate control(for programming&circuits on quantum computer) is used as Bloch spheres, but qbit is shown as Chladni figure in this work, so that can see the gate control as a figure and understand the movement.
This work makes an attempt to have quantum indeterminacy with participants. The qbit state is determined by us, the viewer of the Chladni figure. In other words, the qbit state is determined by the interaction between the us and the qbit representation(Chladni figure), since the indeterminate qbit state is determined by the particles (sand) that make up the Chladni figure at the moment we are looking at it. And, I have also found that it is possible to represent quantum entanglement between qbits by sound waves transmitted in space.
The qbit coherence time is a very long compared to the actually quantum computer (actually is very short nsec time) in this work gate control microwave, so the collapse of the qbit state can be visualized by the indeterminate movement of the particles (sand) that make up the Chladni figure and their fall down.

8bitは、超伝導型量子コンピュータのゲート制御マイクロ波による動作原理を利用しています。
現在、多くのアプリケーションワークは古典的なコンピュータを利用していて、量子コンピュータを使用した物は非常に少ないです。将来的には多くの量子コンピュータのアプリケーションが出てくると予想されます。
そこで、超伝導型量子コンピュータの量子ゲート制御を行うマイクロ波に着目し、誰でも触ってみることができる量子ビットと人間とのインタラクションを提案する。

8bitの最大の特徴は、超伝導量子コンピュータのqbitゲート制御におけるマイクロ波(電波)をリアルタイムに音波に変換し、クラドニ図形として表示することである。多くの場合、qbitゲート制御(量子コンピューター上でのプログラミング・回路で利用される)はブロッホ球として扱われるが、本作品ではqbitをクラドニ図形として示すことで、ゲート制御におけるマイクロ波を図形として見ることができ、動きを理解することができる。
この作品では、人とqbitとの間に量子的な不確定性を持たせることを試みている。量子ビットの状態は、クラドニ図形を見る私たちによって決定される。つまり、私たちが見ている瞬間のクラドニ図形を構成する粒子(砂)によって不確定なqbit状態が決定されるため、私たちとqbit表現(クラドニ図形)の間の相互作用によってqbit状態が決定される。また空間上を伝わる音波によって、qbit間の量子もつれも表現する事も可能なことを確認している。
この作品のゲート制御マイクロ波では、qbitのコヒーレンス時間が実際の量子コンピュータに比べて非常に長い(実際には非常に短いnsec時間)ため、qbit状態の崩壊は、クラドニ図を構成する粒子(砂)の不定な動きとその落下によって視覚化している。

Maker Faire Tokyo 2020 flyer

Awards: メディア芸術祭 エンターテイメント部門 審査委員会推薦作品
Event: Maker Faire Tokyo 2020, Ogaki Mini Maker Faire 2020(online)
Support: IPA 未踏ターゲット ゲート式量子コンピュータ向けソフトウェア開発
Documents: 量子コンパイル基盤の最適化処理・分岐並列制御の開発と量子計算を体感するプレゼンテーション (2020) 成果概要 詳細
RISC-V量子拡張の参照実装とマイクロ波制御量子ファームウェアの開発(2019) 成果概要 詳細

Principle Representation of The 8 Qubits Quantum Computer by RaspberryPi
Introductory Article : 「Maker Faire Tokyo 2020」レポート #5 , パケットや量子ビットはどう動く?Maker Faire Tokyoで可視化装置に注目集まる

The post 8 bit first appeared on SIProp量子化計画.

]]>
https://quantum.siprop.org/8-bit/feed/ 0
RISC-V RVV 0.8.x spike/pk add K Extension https://quantum.siprop.org/risc-v-rvv-0-8-x-spike-pk/ https://quantum.siprop.org/risc-v-rvv-0-8-x-spike-pk/#respond Tue, 19 Jan 2021 13:03:15 +0000 https://quantum.siprop.org/?p=1643 RISC-V RVV(Vector Extenstion)を使いたいとのことで、環境構築を行った。RVVの仕様は絶賛策定&実装中のようで、現在は0.9.xが開発版、安定版リリースは0.8.xになっている。仕様はこちら r…
もっと読む

The post RISC-V RVV 0.8.x spike/pk add K Extension first appeared on SIProp量子化計画.

]]>
RISC-V RVV(Vector Extenstion)を使いたいとのことで、環境構築を行った。
RVVの仕様は絶賛策定&実装中のようで、現在は0.9.xが開発版、安定版リリースは0.8.xになっている。
仕様はこちら riscv-v-spec

gnu toolchain/エミュレータのspikeの対応はv0.8までと書いてあるけど、0.9でも動くらしい(?)ということもあったり、開発版は仕様策定とともに動きが激しい(だろう…)というのもあって、0.8.xでのビルドを行う。
ちなみに、最近は全部dockerで環境構築をしている。VirtualBoxとかUbuntuだったら何でもビルドは出来ると思われ。
ちなみに、このrepositoryは独自IS量子拡張用 k extensionの実装(gccを改造して独自の命令セットの追加、エミュレータ側でも処理可能)を加えたものになっている。

# use docker ubuntu 20.04 as root
apt-get update
apt-get install autoconf automake autotools-dev curl python3 libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev git cmake device-tree-compiler liboscpack-dev liboscpack1

cd $HOME
mkdir work
mkdir work/riscv
export RISCV=/root/work/riscv

# make gnu toolchain
cd $HOME/work
git clone https://github.com/openql-org/riscv-gnu-toolchain -b niisato-develop
cd riscv-gnu-toolchain
git submodule update --init --recursive
mkdir build
cd build
../configure --prefix=/root/work/riscv --enable-multilib
make
export PATH=$PATH:$RISCV/bin

# get riscv tools
cd $HOME/work
git clone https://github.com/openql-org/riscv-tools -b develop-openql-wip
cd riscv-tools
git submodule update --init --recursive

# make QuEST
cd $HOME/work/riscv-tools/QuEST
mkdir build
cd build
cmake ..
make

# make spike
cd $HOME/work/riscv-tools/riscv-isa-sim
mkdir build
cd build
../configure --prefix=/root/work/riscv
make CFLAGS=-DQUEST CPPFLAGS=-DQUEST
make install

# make pk
cd $HOME/work/riscv-tools/riscv-pk/
mkdir build
cd build
../configure --prefix=/root/work/riscv --host=riscv64-unknown-elf
make
make install
export PATH=$PATH:/root/work/riscv/riscv64-unknown-elf/bin/


RVVのテストコードをお借りして…コンパイルして実行。

riscv64-unknown-elf-gcc -o -O3 -march=rv64gcv rvv.c -o rvv

spike pk rvv
bbl loader
calling v_test
0.000000, 127.000000, 252.000000, 375.000000, 496.000000, 615.000000, 732.000000, 847.000000, 960.000000, 1071.000000, 
1180.000000, 1287.000000, 1392.000000, 1495.000000, 1596.000000, 1695.000000, 1792.000000, 1887.000000, 1980.000000, 2071.000000, 
2160.000000, 2247.000000, 2332.000000, 2415.000000, 2496.000000, 2575.000000, 2652.000000, 2727.000000, 2800.000000, 2871.000000, 
2940.000000, 3007.000000, 3072.000000, 3135.000000, 3196.000000, 3255.000000, 3312.000000, 3367.000000, 3420.000000, 3471.000000, 
3520.000000, 3567.000000, 3612.000000, 3655.000000, 3696.000000, 3735.000000, 3772.000000, 3807.000000, 3840.000000, 3871.000000, 
3900.000000, 3927.000000, 3952.000000, 3975.000000, 3996.000000, 4015.000000, 4032.000000, 4047.000000, 4060.000000, 4071.000000, 
4080.000000, 4087.000000, 4092.000000, 4095.000000, 4096.000000, 4095.000000, 4092.000000, 4087.000000, 4080.000000, 4071.000000, 
4060.000000, 4047.000000, 4032.000000, 4015.000000, 3996.000000, 3975.000000, 3952.000000, 3927.000000, 3900.000000, 3871.000000, 
3840.000000, 3807.000000, 3772.000000, 3735.000000, 3696.000000, 3655.000000, 3612.000000, 3567.000000, 3520.000000, 3471.000000, 
3420.000000, 3367.000000, 3312.000000, 3255.000000, 3196.000000, 3135.000000, 3072.000000, 3007.000000, 2940.000000, 2871.000000, 
2800.000000, 2727.000000, 2652.000000, 2575.000000, 2496.000000, 2415.000000, 2332.000000, 2247.000000, 2160.000000, 2071.000000, 
1980.000000, 1887.000000, 1792.000000, 1695.000000, 1596.000000, 1495.000000, 1392.000000, 1287.000000, 1180.000000, 1071.000000, 

一応、docker hubにビルド済イメージを登録しておいた。テストコードは上記のrvvに量子用命令セットの実行を追加したものをspikeで動かす。

docker pull siprop/ubuntu:rvv0.8
docker run --name test -it siprop/ubuntu:rvv0.8 bash
cd /root/test
riscv64-unknown-elf-gcc -o -O3 -march=rv64imafdkv test.c -o test
spike -q2 -r4 pk test

#qregister size : 4
#qbit size      : 2
bbl loader
calling v_test
0.000000, 127.000000, 252.000000, 375.000000, 496.000000, 615.000000, 732.000000, 847.000000, 960.000000, 1071.000000, 
1180.000000, 1287.000000, 1392.000000, 1495.000000, 1596.000000, 1695.000000, 1792.000000, 1887.000000, 1980.000000, 2071.000000, 
—- 中略 —–
1980.000000, 1887.000000, 1792.000000, 1695.000000, 1596.000000, 1495.000000, 1392.000000, 1287.000000, 1180.000000, 1071.000000, 
qooh.k (rd)10, (rs1)1, (rs2)0, (qimm6)1
qbit_idx : 3
qooh.k (rd)15, (rs1)1, (rs2)0, (qimm6)1
qbit_idx : 3

RISC-Vに独自拡張した命令セットとRVV系を同時に動かしても大丈夫なことが確認できた。

The post RISC-V RVV 0.8.x spike/pk add K Extension first appeared on SIProp量子化計画.

]]>
https://quantum.siprop.org/risc-v-rvv-0-8-x-spike-pk/feed/ 0
Ogaki Mini Maker Faire 2020 https://quantum.siprop.org/ogaki-mini-maker-faire-2020/ https://quantum.siprop.org/ogaki-mini-maker-faire-2020/#respond Thu, 10 Dec 2020 12:46:48 +0000 https://quantum.siprop.org/?p=1617 大垣 IAMAS で2020/12/05, 06で行われたOgaki Mini Maker Faireに行ってきた。そして2日目の午後に8bitのプレゼンも行ってきました。資料はこちら。 色んな作品が展示してあって、めっ…
もっと読む

The post Ogaki Mini Maker Faire 2020 first appeared on SIProp量子化計画.

]]>
大垣 IAMAS で2020/12/05, 06で行われたOgaki Mini Maker Faireに行ってきた。そして2日目の午後に8bitのプレゼンも行ってきました。資料はこちら。

色んな作品が展示してあって、めっちゃ刺激になったっす。

あと、総勢16台+1台(計17台)のRaspberry Piを使っているというのもあって、みんなのラズパイコンテストに出してみたら、KSY賞を頂きました。副賞でRPiで使えるカメラを頂きました:) ありがとうございます!!

コロナ状況下だけど、引き続き頑張っていきまっす。

The post Ogaki Mini Maker Faire 2020 first appeared on SIProp量子化計画.

]]>
https://quantum.siprop.org/ogaki-mini-maker-faire-2020/feed/ 0
クラドニ図の作りかた https://quantum.siprop.org/%e3%82%af%e3%83%a9%e3%83%89%e3%83%8b%e5%9b%b3%e3%81%ae%e4%bd%9c%e3%82%8a%e3%81%8b%e3%81%9f/ https://quantum.siprop.org/%e3%82%af%e3%83%a9%e3%83%89%e3%83%8b%e5%9b%b3%e3%81%ae%e4%bd%9c%e3%82%8a%e3%81%8b%e3%81%9f/#comments Thu, 05 Nov 2020 10:16:00 +0000 https://quantum.siprop.org/?p=1443 ここで作ったクラドニ図用の作り方を残しておく。 Googleで「クラドニ図 スピーカ」で検索するとちゃんとした市販品から、自作している物まで色々と出てくる。市販品になると3-4万円/個くらいの物があった。さすがにちょっと…
もっと読む

The post クラドニ図の作りかた first appeared on SIProp量子化計画.

]]>
ここで作ったクラドニ図用の作り方を残しておく。

Googleで「クラドニ図 スピーカ」で検索するとちゃんとした市販品から、自作している物まで色々と出てくる。市販品になると3-4万円/個くらいの物があった。さすがにちょっとお高いので、サクッと簡単に出来る方法は調べたりした。中でも一番簡単に出来るのはこれだと思う。

適当なプラケースとかの上に粒子(砂・塩・砂糖)を撒いて、声を出すだけ。これだけで紋様が浮かび上がる。

ちなみに、600年前の教会の壁からも同じような図が出てきている 600-Year-Old Music Found Encoded in Chapel Walls 。この時代はまだ共振によって不思議な紋様が出てくるとは分かっていないと思うけど、経験的に賛美歌や教会から奏でられる音色から出てくる紋様を記録していたというのも想像に難くない。
また最近でもクラドニ図を使った研究も結構あったりで、自分的に面白いと思ったのがnatureからのこちら Controlling the motion of multiple objects on a Chladni plate 。といった感じでクラドニ図を使った物は古くから現在まで沢山ある。
以下では、自分の作った方法を載せておく。

■ 完成形

鉄板については四角形・円形どちらでも大丈夫。好きな形を選べばよい。自分は直径180mmの円形、180x180mm 正方形・0.5mmの鉄板を利用している。

■ 部材

・10cm フルレンジスピーカ x 1
・3Dモデル : ここからダウンロード base.stl, top.stl, cone.stl の3種類
・八幡長ネジ 150mm M5 x 4
・M5 80mm なべ小ネジ x 1
・M5 ナット・ワッシャ x 24
・エーモン平型端子スピーカー用 S・Mセット x 1
・鉄板(中心にM5用の穴) x 1
・白砂(ダイソーとかに売っている)

■ 作り方

まずは3Dプリンタでbase.stl、top.stl、cone.stl を出力する。3Dモデルをダウンロードして展開すると、それぞれ…

base.stl : 土台(下の円形のもの)
top.stl : 支持(上の円形のもの)
cone.stl : スピーカと鉄板の支持

という役割がある。シンプルな形状でFusion360でサクッと作っている。スピーカのサイズに合わせてSTLを修正して使ってもOKっすね。

次にスピーカを加工する。スピーカのセンターキャップ部分を残してカッターでコーンを切り取る。やってみれば分かるけど、結構綺麗にコーンは除去できる。
そしてセンターキャップに出力した3Dモデル cone.stl を”M5 80mm なべ小ネジ”を通してから接着剤で完全に固定する。

あとはとても簡単。base.stl で出力した土台に”八幡長ネジ 150mm M5″を通して支持( top.stl )にM5ナット&ワッシャーで固定してガワが完成する。

最後に支柱付きのスピーカーをさっき通した”八幡長ネジ 150mm M5″にM5ナット・ワッシャーで固定すれば完成になる。

スピーカーには”エーモン平型端子スピーカー用”のS/M端子をカシメて接合して完成になる。端子を音源につなげるとボイスコイルが動いて音として支軸を通して伝わっていくという流れになる。

鉄板をセンターキャップからの支柱につなげて、砂を落として音出しすると図が出てくる。
ここで、鉄板が水平にならないと、砂が一方向に落ちていってしまう。対策として、スピーカ部は”八幡長ネジ 150mm M5″x4本で支えているから、水平になるようにネジを調整すればわりと簡単に水平を取れるようになっている。なので、設置したところが水平でなくても、ある程度の誤差は吸収できるような構造にしている。

■ 鉄板

自分は鉄板を使ったけど、スピーカ部が出来れば鉄板以外の物でも接合できる。なぜ鉄板を使ったか?というと、出来るだけ音の振動を伝えやすい素材を使った方が良いだろう(参考)ということからだった。

一応、色々な厚さ・サイズ・素材で切り出してテストを行って、180x180mmが扱いやすいということに落ち着いた。鉄板は簡易な入手性も考えて、東急ハンズで0.5mm鉄板を入手・カットして使っている。

■ スピーカー

スピーカーは全てハードオフ・ヤフオクで入手したジャンク・スピーカを利用している。スピーカ1個で新品 2000円〜くらいするスペックの物が欲しかったのもあるけど、量を揃えるとなるとコストに直結する。10個作ろうとすると予備も合わせて2〜3万円はかかってしまう。
そこで、動作未確認のジャンク・スピーカをゲットして利用することにした。

価格帯は1円〜500円程度(もちろんスピーカなので2台で)。コンポと一緒に付いてくるスピーカがほとんどで、本体のアンプが壊れてスピーカだけ出ているケースが多かった。だから何気にスピーカ自体はそのまま使える。24本ほどジャンク・スピーカを入手したけど、鳴らないものは一つもなかった。

スピーカ本体からバラすのは再利用として環境に優しい。ただ、エンクロージャー(木材)が大量に積まれていくことになった。

スピーカ自体は何を使っても良いけど、コーンに電極が接合されている物は避けることにした。コーンが付いていると音が凄く鳴るので、クラドニ図をだけを出す場合にはマッチしない。そこでコーンを切り取るわけだけど、そのときコーンに電極が付いているとボイスコイルまで電極を辿ることなる。とても切れやすい銅線をうまく引き剥がすのは(何個かスピーカを犠牲にしてやってみたものの)うまく出来なかった。そこでコーンに電極がないスピーカのみを使うことにした。というのもあって、大量の不採用スピーカも出てくることになった。

■その他

出来た物をそのままPCとかのジャックからの出力を使ってもパワーが足りなくて図が出てこないはず。そこでパワーアンプの出番になる。

ここではRPi4x16台を使った電波送受信からダウンコンバートして、アンプ経由で図を出している。ここで使っているアンプはこちら。価格もお手頃で出力もあって良い感じ。

これだけの量を電波側の周波数を変えながらテストしていくとなると1-2時間はかかってしまう。鉄板の気温変化による伸縮が効いて、環境変化に合わせて再調整を行うのが、台数も多くて大変な作業の一つにもなった。

最後に…

予備部材も使って全部で12個作ってタワーみたいに並べてみた。

The post クラドニ図の作りかた first appeared on SIProp量子化計画.

]]>
https://quantum.siprop.org/%e3%82%af%e3%83%a9%e3%83%89%e3%83%8b%e5%9b%b3%e3%81%ae%e4%bd%9c%e3%82%8a%e3%81%8b%e3%81%9f/feed/ 12
qutipの環境(jupyter lab/vscode) https://quantum.siprop.org/qutip_jupyter_lab_vscode/ https://quantum.siprop.org/qutip_jupyter_lab_vscode/#respond Mon, 29 Jun 2020 08:00:59 +0000 https://quantum.siprop.org/?p=1369 qubitの時間発展をデータとして使うため、qutipを使うことに。インストールはanacondaを使って行う。自分もよくanacondaを使うから、そのまま今の環境を利用できる。インストール手順に従って… …
もっと読む

The post qutipの環境(jupyter lab/vscode) first appeared on SIProp量子化計画.

]]>
qubitの時間発展をデータとして使うため、qutipを使うことに。インストールはanacondaを使って行う。自分もよくanacondaを使うから、そのまま今の環境を利用できる。インストール手順に従って…

conda create -n qutip-env python=3
conda activate qutip-env
conda install numpy scipy cython matplotlib nose jupyter notebook spyder
conda install qutip
conda install jupyterlab 

jupyter-labでコマンドから起動すればすぐ使える。

んで、このままブラウザで書いていっても良いのだけど、ここはやっぱりVScodeから使いたいということで。jupyter-labのコマンドプロンプトはそのままにしておいて、VScodeにJupyterのExtensionを入れて、右上にあるanacondaのカーネル(ここではqutip-env)を指定してあげると…

ってな感じでVScode上で使えるように。使い勝手はJupyterLabと一緒な感じでエディタとしてVScodeが使えるのは便利だと思われ。
ここから量子の時間発展の座標をOSCで飛ばしてSyphon(TouchDesigner, Processing, oF, Unityとか何でも)に処理してしまえば、表示はどこでもOKといった感じになる。

ちなみに、Google Colabでもサクサク動いた。最初に
!pip install qutip
と実行すればOK。以前、頑張って動かそうとしてダメダメで挫折したんだけど、何か環境でも変わったんだろうか…外部と通信しないでどこでも使ってみるなら、Google Colabの方が良い気がする。いちいちPython環境を作り込みしなくてもOKだからね。

The post qutipの環境(jupyter lab/vscode) first appeared on SIProp量子化計画.

]]>
https://quantum.siprop.org/qutip_jupyter_lab_vscode/feed/ 0
有用な量子命令セットを探索する https://quantum.siprop.org/%e6%9c%89%e7%94%a8%e3%81%aa%e9%87%8f%e5%ad%90%e5%91%bd%e4%bb%a4%e3%82%bb%e3%83%83%e3%83%88%e3%82%92%e6%8e%a2%e7%b4%a2%e3%81%99%e3%82%8b/ https://quantum.siprop.org/%e6%9c%89%e7%94%a8%e3%81%aa%e9%87%8f%e5%ad%90%e5%91%bd%e4%bb%a4%e3%82%bb%e3%83%83%e3%83%88%e3%82%92%e6%8e%a2%e7%b4%a2%e3%81%99%e3%82%8b/#respond Tue, 02 Jun 2020 14:20:57 +0000 https://quantum.siprop.org/?p=1344 2020年の未踏ターゲット事業にご採択頂きまして「量子コンパイル基盤の最適化処理・分岐並列制御の開発と量子計算を体感するプレゼンテーション」というテーマで来年2月まで取り組ませて頂きます。 わたし(k_yamaz)はプロ…
もっと読む

The post 有用な量子命令セットを探索する first appeared on SIProp量子化計画.

]]>
2020年の未踏ターゲット事業にご採択頂きまして「量子コンパイル基盤の最適化処理・分岐並列制御の開発と量子計算を体感するプレゼンテーション」というテーマで来年2月まで取り組ませて頂きます。

わたし(k_yamaz)はプロジェクトの取りまとめ役なのですが、4名のメンバーが明確な課題をもってそれぞれ取り組んでいこうとしています。もちろん全体感としては、昨年開発したフレームワークの上に成り立っていますので、基本的には全てが絡んでいて、連携しています。応用面や教育面からのアプローチで新しい機能を拡張したり、昨年はリファレンス実装という名目で見切りで仕様を策定した箇所を再検討したりするのが今年のタスクになります。今年は「応用・実用化枠」で採択されたこともあり、私たちが開発しているフレームワークがどのような方々に利用して頂きたいかという利用シーンも想定しながら、タスクを考えました。

それぞれのメインで担当するところをお伝えするエントリーを投稿させて頂いておりますが、本エントリーでは、わたし(k_yamaz)のテーマをご紹介します。

わたしは「課題1)量子コンパイラの最適化処理」に対して取り組みます。

ゲート型の量子コンピュータで任意の量子計算を実行しようとすると、それは数少ない量子命令セット(=量子誤り訂正が可能なユニバーサルな命令セット)に分解されなければなりません。例えば、私たちが昨年定義した RISC-V の K-Extension では、アダマール(H)や非クリフォードな π/8(T)ゲートはありますが、任意回転角の回転ゲートのような量子命令セットは準備していません。なぜなら、量子誤り訂正を意識しているからなのですが、この限られた量子命令セットしかないということがポイントです。任意の量子計算(任意のユニタリ演算)を実施したい場合は、それをこの定義された量子命令セットの列に変換する必要があります。これは、教科書にもよく登場する “Solovay-Kitaev の定理” を使えばよいので、それほど新しいことではありません。ただし、この処理で長くなった量子ゲートの操作列は、愚直に実行しても量子計計算はできますが、効率的かというとそれは自明ではありません。

ここに量子コンパイラが関わるべき「量子最適化処理」という処理の必要性があります。このように、量子コンパイラの量子最適化という視点で量子計算をみると、課題もたくさんあって、色々な角度から研究されており、様々な提案もされています。

私たちは、幸いにも LLVM をもとにした量子最適化のための Pass機構の枠組みを開発しました。その機能を実践的に活用しようというのが、今年の活動のベースにあるテーマです。
では、具体的に何をするかということですが、上で取り上げましたように、ある量子計算は、その下層で限定的に定義された量子命令セットと密接に関連していて、QPUで実行される前に(量子コンパイラにより)分解され・最適化されます。つまり、どのような量子命令セットを定義しておくかということは、量子最適化処理を行うには、検討されるべき重要なファクターです。そこで今年は、Pass機構とバックエンド(gccの量子対応の改造版)を使って、昨年定義した量子命令セット以外に、有用な量子命令セットがないかを探索します。

そして、この検証を進めるために、”Solovay-Kitaev の定理” を実装したりしたサンプルを開発して、検証していきます。
この活動を通じて、量子誤り訂正後の量子回路の最適化を考えたり、量子命令セットのアーキテクチャを検討する方々にとって、役立つフレームワークと利用例を提示することが、最終的な目標です。

The post 有用な量子命令セットを探索する first appeared on SIProp量子化計画.

]]>
https://quantum.siprop.org/%e6%9c%89%e7%94%a8%e3%81%aa%e9%87%8f%e5%ad%90%e5%91%bd%e4%bb%a4%e3%82%bb%e3%83%83%e3%83%88%e3%82%92%e6%8e%a2%e7%b4%a2%e3%81%99%e3%82%8b/feed/ 0
量子コンピュータを使ったモノ https://quantum.siprop.org/%e9%87%8f%e5%ad%90%e3%82%b3%e3%83%b3%e3%83%94%e3%83%a5%e3%83%bc%e3%82%bf%e3%82%92%e4%bd%bf%e3%81%a3%e3%81%9f%e3%83%a2%e3%83%8e/ https://quantum.siprop.org/%e9%87%8f%e5%ad%90%e3%82%b3%e3%83%b3%e3%83%94%e3%83%a5%e3%83%bc%e3%82%bf%e3%82%92%e4%bd%bf%e3%81%a3%e3%81%9f%e3%83%a2%e3%83%8e/#respond Tue, 02 Jun 2020 01:39:33 +0000 https://quantum.siprop.org/?p=1332 今年の自分のテーマは… ・課題4)教育的視点での課題 量子計算を教育にも利用できるインタラクティブ(体感・体験できる)プレゼンテーションが必要  いまの所、量子コンピュータを使ったアプリケーションは少ない。…
もっと読む

The post 量子コンピュータを使ったモノ first appeared on SIProp量子化計画.

]]>
今年の自分のテーマは…

・課題4)教育的視点での課題
量子計算を教育にも利用できるインタラクティブ(体感・体験できる)プレゼンテーションが必要

いまの所、量子コンピュータを使ったアプリケーションは少ない。そして、量子コンピュータというと、現時点で使われているPCを超えるスゴイ物という認識くらいな感じではあると感じている。まだ黎明期というのもあるものの、特に前者については「量子コンピュータを使うと結局なにが面白いの?」というのを、研究者だけではなく広く量子コンピュータを知らない人にも感じてもらえるような物を通じて、「何か面白い」と感じてもらう事の必要になってくる。

コンピュータを使ったインタラクション(HCI:Human-Computer Interaction)の歴史は古くからあって、センサーなどを使って人のデータをデジタル・メタ化して、コンピュータの演算によって人にフィードバックするような物が多い(この辺の資料とか、面白いと思う)。
例えば、目の前にあるPCそのものでもあったりする。ただ、数十年後・数百年後のPCの形は、今のようなキーボード&モニターのようなモノではなく、全く変わった別のモノになっているかもしれないし、今のようなモノであるかもしれない。どのような形になるにしても、コンピュータと人との関わり方を見せるようなモノによって、進化していくことになる。
個人的には、コンピュータを意識しなくても人が使って面白い・楽しいと思うコトやモノが最初にあって、それが裏に潜んでいる深淵やより深い事について知る大きな契機になってくると考えていたりもする。

そこで、古典コンピュータを使った事と同様のことが、量子コンピュータを使っても起きてくるに違いない。すでに量子コンピュータをターゲットにした物を作っている人もいる。

Quantum Garden: An interactive quantum computing installation
Quantum Computer Art exhibition at White City

このようなモノのように、量子コンピュータをターゲットにしたモノを今年は時間をかけて作っていこうと。自分の場合は、「触れる・光る・音がなる」のセットはMUSTとして考えていて、この辺をうまく取り込めたらなーと。

The post 量子コンピュータを使ったモノ first appeared on SIProp量子化計画.

]]>
https://quantum.siprop.org/%e9%87%8f%e5%ad%90%e3%82%b3%e3%83%b3%e3%83%94%e3%83%a5%e3%83%bc%e3%82%bf%e3%82%92%e4%bd%bf%e3%81%a3%e3%81%9f%e3%83%a2%e3%83%8e/feed/ 0
マイクロ波制御処理の実用化に向けて https://quantum.siprop.org/next_design_for_microwave_quantum_firmware/ https://quantum.siprop.org/next_design_for_microwave_quantum_firmware/#respond Mon, 01 Jun 2020 22:31:26 +0000 https://quantum.siprop.org/?p=1321 2020年度の未踏ターゲット事業に採択されましたので、わたし(今村謙之 いまむらのりつな)の担当部である 課題2)マイクロ波制御処理の実用化に向けての課題 任意パルス波形生成におけるパラメータチューニングのテンプレート化…
もっと読む

The post マイクロ波制御処理の実用化に向けて first appeared on SIProp量子化計画.

]]>
2020年度の未踏ターゲット事業に採択されましたので、わたし(今村謙之 いまむらのりつな)の担当部である

  • 課題2)マイクロ波制御処理の実用化に向けての課題
    任意パルス波形生成におけるパラメータチューニングのテンプレート化と高負荷処理への対応

について、詳細を説明したいと思います。

まず、開発内容ですが、こちらの概要は採択内容のほうに書かれております。ただし、去年からの続きでありますので、去年の成果であるGNURadio向け量子ファームウェアの「GR-Quantum」をベースにどのような追加開発を行うか?ということになります。

  • 開発2)パルス波発生処理の追加実装
    ・ターゲット利用者:無線家でマイクロ波を制御できる人で、量子の実機への応用を模索している人
    ・実現する機能:
    2量子ビットの内部シミュレータ
    OpenPulseからのパルス波パラメータの設定ツール
    外部連携用パルス波データの出力

大きく分けて「3つ」あります。

  1. 2量子ビットの内部シミュレータ
    1. こちらは、本来なら1年目にあるべき機能でしたが、そもそものボリュームが膨大だったため、1年目の開発ではやらずに、今年に回したものとなります。そのため、1年目の続きとなります。(実際には、1年目にそれなりに実装はしてあり、もう少し作りこまないといけない部分があるという状態です。)
  2. OpenPulseからのパルス波パラメータの設定ツール
    1. こちらは、新規開発の機能となります。
    2. 現在は、XゲートやYゲートなどのパルス波のパラメータ(電波の形状)は、ユーザーが自分で定義する前提となっています。しかし、実際に使う実機で使うパルス波のパラメータは決まっています。そこで、本機能で、定義済みのパルス波のパラメータを読みだして、自動で設定するようなツールを作ることを想定しています。
    3. そして、その最初のターゲットとして、パルス波のパラメータがOpenPulseとして公開されている「IBM Q」とする予定です。
  3. 外部連携用パルス波データの出力
    1. こちらは、新規開発の機能となります。
    2. こちらは何のことか非常にわかりにくいのですが、「任意時間のQPUの状態を連続的に出力する機能」となります。そのため、QPUを完全にシミュレーションする必要があり、そのための機能を実装することになります。
      1. このあたりは、量子情報工学的には全く扱うことがないところのため、ほとんど参考文献がないところであり、この部分と量子情報工学を結び付けるというテーマは、非常にチャレンジングなテーマとなっております(古典コンピュータで言えば、CPUの中のトランジスタの動作の物理現象をシミュレーションするような機能となる。)
    3. ちなみに、「課題4)教育的視点での課題」により、利用されることになります。

そして、さすがに間に合わない可能性が高そうだったため、書かれてはいないのですが、本来は「FPGAによるパルス生成用のSDRボード」の開発も考えております。チップ類の選定は済んでおり、あとはPCB-CADで設計して、試作まで行ければと考えております。

というところで、みなさま、今年もよろしくお願いします。

The post マイクロ波制御処理の実用化に向けて first appeared on SIProp量子化計画.

]]>
https://quantum.siprop.org/next_design_for_microwave_quantum_firmware/feed/ 0