FPGA MachXO2 の QFN32 パッケージが出るので、DIP にする基板を作ってみたい -- というところから、74HC181 (SN74LS181) の代替ができるものを .. となった。
この IC は ALU(Arithmetic Logic Unit) で、部品を組み合わせて CPU を作ったりするのに欠かせない。有名な『CPU の創りかた』 でも 74HC181 を使っているとのこと。
ただ入手がとても難しい。では、DIP にするついでにピン互換機能を持たせられるようにすれば、どうだろう。... 調べてみると、電子工作レベルで、ピン互換にできそうなものはあまりない。
ならば、やってみようというのが動機。
手始めに コードを作ってみよう。
データシートを見てみる。
- *4HC181
- *4LS181
とりあえず、TI の SN74LS181NE4 を参考書として使うことにする。
で、見てみたのだが、難解。キャリー入力(Cn) が L と H で計算式が違う。これは面倒だなと思ったのだが、どうも ACtive-Low の表が、そういうことらしく、ACtive-High なら見れなくはない。
ただ、キャリー出力がどうなるのかサッパリ分からない。結局頼りになるのは、回路図。回路図を読みこなすならば、再現してしまった方が 簡単のような気がしてきた。
例えば、S == 3 では、キャリーありで F = 0 / キャリーなしで F = -1 と なっているのだが ..
8bit に拡張した場合のことを考えると、0 を出力したときにキャリー出力が 1 (負論理なので L) にならないと変だ。だが、合っているのか? こういうことを、いちいち 回路図を眺めて確認するのは面倒すぎる。
www.alldatasheet.jp で検索してみる。
回路図を元にコードを作る。
回路図を見ると A/B を入力にして 2 つの出力にしている部分(左)と それを元に F などの出力を生成している部分(右)に分かれるようだ。
左の出力を C/D という中間出力にして論理式にしてみよう。
wire [3:0] C;
wire [3:0] D;
assign C[0] = ~( A[0] & ~B[0] & S[2] | A[0] & B[0] & S[3] );
assign C[1] = ~( A[1] & ~B[1] & S[2] | A[1] & B[1] & S[3] );
assign C[2] = ~( A[2] & ~B[2] & S[2] | A[2] & B[2] & S[3] );
assign C[3] = ~( A[3] & ~B[3] & S[2] | A[3] & B[3] & S[3] );
assign D[0] = ~( A[0] | B[0] & S[0] | ~B[0] & S[1] );
assign D[1] = ~( A[1] | B[1] & S[0] | ~B[1] & S[1] );
assign D[2] = ~( A[2] | B[2] & S[0] | ~B[2] & S[1] );
assign D[3] = ~( A[3] | B[3] & S[0] | ~B[3] & S[1] );
上の部分を C , 下の部分を D とするとこうなった。なんか随分すっきりしている。調子に乗って次。
assign F[0] = ~( ~M & C_IN ) ^ D[0] ^ C[0];
assign F[1] = ~( ~M & ( D[0] | C_IN & C[0] )) ^ D[1] ^ C[1];
assign F[2] = ~( ~M & ( D[1] | D[0] & C[1] | C_IN & C[0] & C[1]))
^ D[2] ^ C[2];
assign F[3] = ~( ~M & ( D[2] | D[1] & C[2] | D[0] & C[1] & C[2]
| C_IN & C[0] & C[1] & C[2])) ^ D[3] ^ C[3];
wire Yinv = D[3] | C[3] & ( D[2] | C[2] & ( D[1] | C[1] & D[0]));
wire C_OUT = Yinv | C[3] & C[2] & C[1] & C[0] & C_IN;
wire EQ = F[0] & F[1] & F[2] & F[3];
wire X = ~( C[3] & C[2] & C[1] & C[0] );
wire G = ~ Yinv;
wire P = X;
なにかバグがあるかもしれないが、こんな感じ。
これを合成してみると ...
Number of SLICEs: 9 out of 128 (7%)
SLICEs(logic/ROM): 9 out of 32 (28%)
SLICEs(logic/ROM/RAM): 0 out of 96 (0%)
As RAM: 0 out of 96 (0%)
As Logic/ROM: 0 out of 96 (0%)
Total number of LUT4s: 17
Number of PIO sites used: 20 out of 22 (91%)
なんと 9/128 スライス。楽勝ではないか。P/G は生成していないが、C_OUT(Cn+4) の計算で使っているし、生成しても 僅かの差のはず。
ただ、17 LUT で作れてしまうものなのだろうか? C/D 生成は、4 入力1出力 が 8 個だから 8LUT で確かにできる。残り 9 個だが .. 配線のために消費しなければ、出来そうな 気もする。
訂正: F3 の括弧の位置が違った。直したら さらに規模が減った。
ソースコード (Diamond プロジェクト込み)
ちなみに以前作った 74281 (レジスタ付き ALU = アキュームレータ) P/G なし (上記ソースコードに添付)
Number of registers: 4
Number of SLICEs: 39 out of 128 (30%)
SLICEs(logic/ROM): 32 out of 32 (100%)
SLICEs(logic/ROM/RAM): 7 out of 96 (7%)
As RAM: 0 out of 96 (0%)
As Logic/ROM: 7 out of 96 (7%)
Total number of LUT4s: 78
Number of PIO sites used: 20 out of 22 (91%)
こちらは、高機能だし、最適化された回路図なしだから効率が悪いのかも。それにしても楽勝なのは変わりない。確か 64 マクロセルの XC2C64A(CoolRunner II) にようやく入れられたような 規模だったはずなんだが ...
追記: これなのだが、後述の 74181 拡張をしてそれをベースにしたら 規模が多少小さくなった。そうであれば自作AVRコアにも適用したくなるし、いずれは 32bit CPU も作りたいので 整理して使いやすくしておこうかと思う。
自作AVRコアにも適用しても確かに規模は減る。ただ、規模が減れば速くなるものかどうか? あと厳密に機能を作らないといけないのでデバッグが面倒。
検証するには
規模のチェックは、これぐらいで良いだろう。次はどうやって検証するか。
C のコードに変換するのは、簡単だ。で、実際にいくつかのパターンを入力して OK そうか見る。大丈夫そうになったら、真理値表を作る。
確か誰かが全入力の真理値表を作っていたような ... 探してみよう。答え合わせができれば、完了。
追記: 実際に C 化してみた。
#define _C(v) (((v)&1)?'1':'0')
#define wire
#define assign
void alu181() {
(上記の Verilog コード)
printf("M %c ", _C(M) );
printf("S = %c%c%c%c ", _C(S[3]), _C(S[2]), _C(S[1]), _C(S[0]) );
printf("C_IN %c ", _C(C_IN) );
printf("A = %c%c%c%c ", _C(A[3]), _C(A[2]), _C(A[1]), _C(A[0]) );
printf("B = %c%c%c%c ", _C(B[3]), _C(B[2]), _C(B[1]), _C(B[0]) );
printf("F = %c%c%c%c ", _C(F[3]), _C(F[2]), _C(F[1]), _C(F[0]) );
printf("C_OUT %c", _C(C_OUT) );
printf("\n");
}
こんな風にすると、Verilog のコードを触らなくて済む。
M 1 S = 0000 C_IN 1 A = 0011 B = 0111 F = 1100 C_OUT 1
M 0 S = 0000 C_IN 1 A = 0011 B = 0111 F = 0011 C_OUT 1
M 0 S = 0000 C_IN 0 A = 0011 B = 0111 F = 0100 C_OUT 1
M 1 S = 0001 C_IN 1 A = 0011 B = 0111 F = 1000 C_OUT 1
M 0 S = 0001 C_IN 1 A = 0011 B = 0111 F = 0111 C_OUT 1
M 0 S = 0001 C_IN 0 A = 0011 B = 0111 F = 1000 C_OUT 1
M 1 S = 0011 C_IN 1 A = 0011 B = 0111 F = 0000 C_OUT 1
M 0 S = 0011 C_IN 1 A = 0011 B = 0111 F = 1111 C_OUT 1
M 0 S = 0011 C_IN 0 A = 0011 B = 0111 F = 0000 C_OUT 0
M 1 S = 0110 C_IN 1 A = 0011 B = 0111 F = 0100 C_OUT 1
M 0 S = 0110 C_IN 1 A = 0011 B = 0111 F = 1011 C_OUT 1
M 0 S = 0110 C_IN 0 A = 0011 B = 0111 F = 1100 C_OUT 1
幾つか試したが、合っているようだ。 (最初は合わなかったので、括弧の間違いが見つかったわけだが)
所感
実を言うと、MachXO2-1200 とか使っていても もっと規模が欲しい。256 ぐらいで何が出来るのか? と思っていたりしたのだが ... 制限内で何かを作るのも面白いかも知れない。CPLD なんかよりずっと回路が入りそう。それでも複雑なものは作れないから、単機能のものをじっくりやることになる。お手軽に使えるように環境を整えて、いろいろ設計してみようかと思う。
74181 の拡張
74181 は、ものすごく高機能な印象があったのだが、74281 の ALU や 74381 をこれを元に実装しようとすると機能が足りないことが分かった。
281 の ALU や 381 では、" B - A " があるのだが、181 では無理なのだ。さらに 281 の ALU では、" ~B - 1" なんてものまである。
で、どうしようか 作ったのを眺めて考えた。181 では、前段の C,D を作るところだけで、機能セレクトを使っている。ようく見ると A と B は対称ではないが、機能セレクトを追加すれば、対称にできる。
assign C[0] = ~((~A[0] & S[6] | A[0] & S[7])&(~B[0] & S[2] | B[0] & S[3]));
assign C[1] = ~((~A[1] & S[6] | A[1] & S[7])&(~B[1] & S[2] | B[1] & S[3]));
assign C[2] = ~((~A[2] & S[6] | A[2] & S[7])&(~B[2] & S[2] | B[2] & S[3]));
assign C[3] = ~((~A[3] & S[6] | A[3] & S[7])&(~B[3] & S[2] | B[3] & S[3]));
assign D[0] = ~( A[0] & S[4] | ~A[0] & S[5] | B[0] & S[0] | ~B[0] & S[1] );
assign D[1] = ~( A[1] & S[4] | ~A[1] & S[5] | B[1] & S[0] | ~B[1] & S[1] );
assign D[2] = ~( A[2] & S[4] | ~A[2] & S[5] | B[2] & S[0] | ~B[2] & S[1] );
assign D[3] = ~( A[3] & S[4] | ~A[3] & S[5] | B[3] & S[0] | ~B[3] & S[1] );
こうするのだ。S が 4bit から 8bit になってしまうわけだが、使い方は次のようにする。
S[7:4] S[3:0]
1 0 0 1 FS[3:0] --- (1)
FS[3:0] 1 0 0 1 --- (2)
0 1 1 0 FS[3:0] --- (3)
FS[3:0] 0 1 1 0 --- (4)
新設の上位 4bit を 1001 にすると ... 今までと互換(1)。 で、上位ビットと下位ビットを入れ替えると ... A と B が入れ替わる(2)。これは計算式を眺めれば分かるはずだ。
さらに (1) の 1001 を 0110 にすれば A がビット反転する(~A)。 A と B を入れ替えた上で B をビット反転するには、(4) のようにする。
これでようやく 281 の ALU や 381 の機能を作れるようになった。
メモ: (ピン)互換モジュールのピンアサイン案
XO2-256 74181 74181 XO2-256
27 B0 1 24 VCC
28 A0 2 23 A1 25
29 S3 3 22 B1 23
30 S2 4 21 A2 21
32 S1 5 20 B2 20
1 S0 6 19 A3 17
4 ~Cn 7 18 B3 16
5 M 8 * 17 N.C. 26
8 F0 9 16 ~Cn+4 14
9 F1 10 * 15 SWAP 13
10 F2 11 14 EQ 12
GND 12 13 F3 11
前の記事にも書いたが、実際は有効なピンが足りず互換にできない。P/G は使わないだろうということで、17 は N.C. 扱い。(N.C. とは書いたが無接続にすること)
15 は、入力 A と B を入れ替える機能にしようかと思う。どうせ回路は余っているのだ。9 スライスが 13 スライスになったが さほどのことはない。
あ、あたかもモジュールが存在するような書き方をしたが、部品も入手できておらずあくまで予定。
181 の 機能
S3 S2 S1 S0 M = 1 C_IN = 1 C_IN = 0
logic (no carry) (with carry)
0 0 0 0 ~A A A + 1
0 0 0 1 ~(A | B)
0 0 1 0
0 0 1 1 0 -1 0
0 1 0 0 ~(A & B)
0 1 0 1 ~B
0 1 1 0 A ^ B A - B - 1 A - B
0 1 1 1
1 0 0 0 ~A
1 0 0 1 ~(A ^ B) A + B A + B + 1
1 0 1 0 B
1 0 1 1 A & B
1 1 0 0 1 A + A A + A + 1
1 1 0 1
1 1 1 0 A | B
1 1 1 1 A A - 1 A
使う可能性があるものをピックアップしてみた。結構スカスカ。SWAP を追加しても M = 1 は結果が同じ。役に立ちそうなのは、B - A , B - 1 , B + 1 ぐらい。
オーバーフラグ(OVR)の 追加
AVRコアだと H フラグ, V フラグというのがある。H フラグは、4bit のキャリーフラグで 181 ベースでの ALU なら 出力するだけで済む。(自作のコアでは、Verilog の演算をしていたので、別途生成しないといけなかった)
さて、V フラグは どういうものか ... 現状のものは、次のような式を使っている。
assign V_out = ~M &
( ~(S[1]) & (F[7] & ~A[7] & ~B[7] | ~F[7] & A[7] & B[7])
| (S[1]) & (F[7] & ~A[7] & B[7] | ~F[7] & A[7] & ~B[7]) )
;
M=1 が論理演算で、~(S[1]) は、算術加算。 で S[1] が算術減算。... 要するに A/B/F の最上位ビットを 比べているわけだが、加算/減算で論理が違う。
一方 74LS382 (381 のモディファイ版) には、OVR という出力があって、こんな計算はしていない。よくわからなかったのだが、どうも C_OUT(n) ^ C_OUT(n-1) という計算をしているようだ。
C_OUT(n) は、既にあるわけだが、181 は内部で C_OUT(n-1) も作っているはず。そうであれば、比較的簡単に OVR を作れるのではないか?
wire C_OUT1 = ~( D[0] | ~C_IN & C[0]);
wire C_OUT2 = ~( D[1] | C[1] & D[0] | ~C_IN & C[0] & C[1]);
wire C_OUT3 = ~( D[2] | C[2] & ( D[1] | C[1] & D[0])
| ~C_IN & C[0] & C[1] & C[2]);
assign P = ~( C[3] & C[2] & C[1] & C[0] );
assign G = ~(D[3] | C[3] & ( D[2] | C[2] & ( D[1] | C[1] & D[0])));
assign C_OUT = ~(~G | ~C_IN & C[0] & C[1] & C[2] & C[3]);
assign F[0] = ~( ~M & ~C_IN ) ^ D[0] ^ C[0];
assign F[1] = ~( ~M & ~C_OUT1 ) ^ D[1] ^ C[1];
assign F[2] = ~( ~M & ~C_OUT2 ) ^ D[2] ^ C[2];
assign F[3] = ~( ~M & ~C_OUT3 ) ^ D[3] ^ C[3];
assign OVR = ~M & (C_OUT3 ^ C_OUT);
assign EQ = F[0] & F[1] & F[2] & F[3];
どうもこうらしい。これで、たいぶすっきりした。
で、この修正を入れたら、15 スライスにまで増えた。( ただし 使わなければ 元と同じ )
8bit への拡張
この alu を 2 つ使って 8bit 版を作ってみている。C_OUT と 上位 4bit の C_IN をつないだもの。
35 スライス / 68 LUT になった。だいぶでかくなった。
P/G の生成は、
assign P = PL | PH;
assign G = GH & (PH & GL );
こんな風にやるものらしい。PH , GH を出力すれば良いものではないようだ。8bit 版単体で使うなら関係ないのだが、いずれは、32bit CPU を作りたいので対応しておいた。また、8bit 版 になるとピンが増えるので、想定しているモジュールでは合成できない。
最初の目的は、 自作AVRコアに適用すること。まだ機能が厳密に合っているのかどうか分からないが .. 42 スライス(83 LUT) が、31 スライス(62 LUT) にまで減った。問題は、規模よりは 速度のボトルネック。もとのやつより速いと良いのだが...
2012/06/17 更新: iVerilog 用テストベンチを追加し、自作AVR コアに適用できるようデバッグ。
( F == 1111 で EQ = 1 だから Zero Flag とは関係なし。)
関連記事
https://trello.com/c/QVvpThNq/12-rar-buddhism-for-beginners-by-thubten-chodron-pdf-full-torrent
https://wakelet.com/wake/YrJ8K1hE4JGbAvd1tjt-h
https://wakelet.com/wake/UPWzuKA2kY__tDhB3wL-r
https://trello.com/c/LeCHUrhJ/11-where-to-buy-halo-ce-for-pc
https://wakelet.com/wake/lCi_BkSQjfRndWwyceJFs
https://wakelet.com/wake/jcq2gbnyWkOGG0LnCQ4XP
https://wakelet.com/wake/wlSy2QFCKht-klN8siUy7
https://wakelet.com/wake/4PuJsfaOR5kSNPakptXkP
https://assets.pinshape.com/uploads/image/file/448002/Just-Cause-3-Crack-Pc-Game-Full-Version-Highly-Compressed-Free-Download.html
https://assets.pinshape.com/uploads/image/file/448001/jamafont.pdf
https://www.pixnet.net/pcard/2824360337ecb9eaf0/article/f1576fe0-5236-11ec-b594-f1e3b5403631
https://bioclemolpermicar.wixsite.com/drywoofliodwid/post/billu-2-watch-online-watch-online-subtitles-x264
https://pepicbafersie.wixsite.com/wehrmistatern/post/edgenuity-answers-world-history-b
https://wakelet.com/wake/XJ5iTKvc0wVum-XPnvjMp
https://anhobirdluloca.wixsite.com/hourezoca/post/zip-bannershop-gif-anima-software-x64-keygen
https://thawesterndiscthal.wixsite.com/kumbdownnene/post/key-rthstar-5-reading-and-writing-third-64bit-download-crack-windows-exe-ultimate
https://trello.com/c/MZcdCARz/13-locke-and-key-welcome-to-lovecraft-cbr-download-new-sites
https://trello.com/c/NGe51WcH/55-link-el-gran-libro-de-la-mitologia-griega-pdf
https://trello.com/c/saWM3SW1/37-verified-download-wga-remover-chew-v09rar
https://trello.com/c/HwLVXkwI/58-lg-infineon-flasher-unlocker-v121sc-by-vygis-robert-cdexe-giiochi-sabradarne
https://wakelet.com/wake/awnGmw_EeHsGSxbE9f4UT
https://sookbramon683vdk5.wixsite.com/ronuzover/post/torrent-brock-biologia-dei-microrganismi-vol-1-pdf-goback-expres-tarif
https://dokumen.tips/software/sygic-truck-navigation-1398-apk-original-crack-map-free-download.html
https://tichieliga.weebly.com/crack-para-autocad-civil-3d-2012-32-bits.html
https://wakelet.com/wake/chzMlwM0q1_6_vh2lMr8r
https://wakelet.com/wake/1w_Xk5mSrhn1QHV4iKGMG
https://wakelet.com/wake/eitTDfkLNhcrjZec7TeZm
https://wakelet.com/wake/pWQvUwRqtGcPc71I8mabJ
https://wakelet.com/wake/BLZr7XhFZwb_D2ydJ_OSF
https://wakelet.com/wake/vZrttikKQ377tjaknOTNW
https://wakelet.com/wake/sYfqyr7po36_7BLqbt6s1
https://wakelet.com/wake/Ktl1qCiwdw9Q78otYqgpr
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMDA9JCWCQwLEgZDb3Vyc2UYgICA3_GeuwsMCxIIQWN0aXZpdHkYgIDAwOmr2gkMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMCAko7BCQwLEgZDb3Vyc2UYgIDAgOL69wkMCxIIQWN0aXZpdHkYgICA__zr8wsMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMDAgK6cCgwLEgZDb3Vyc2UYgICA_8TlvQkMCxIIQWN0aXZpdHkYgIDA4I6z4ggMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgIDfidicCQwLEgZDb3Vyc2UYgIDAoPi29QgMCxIIQWN0aXZpdHkYgIDA4M6C9wkMogEQNTcyODg4NTg4Mjc0ODkyOA
https://coub.com/stories/2613843-ampkit-mac-fix-download-torrent
https://coub.com/stories/2613844-guitar-pro-5-2-download-keygen-corel-jonkail
https://coub.com/stories/2613845-repack-guide-des-metiers-de-l-electrotechnique-v2-19
https://coub.com/stories/2613846-indie-rock-cd-yo-la-tengo-fakebook-1990-flac-tracks
https://coub.com/stories/2804899-the-burning-plain-2008-free
https://coub.com/stories/2804898-suite-spot-studios-aatranslator-extended-v4-0-0-2-49-patched
https://coub.com/stories/2804894-dirty-sex-game-for-couple-vpyo-v2-3-3-mod-unlocked
https://coub.com/stories/2804888-teen-mom-og-9x11-brokensilenze
https://coub.com/stories/2829547-search-by-name-master-v-audio-tracks-for-movies
https://coub.com/stories/2829544-better-tglgcharger-un-fichier-_sarah_sinclair___tahlia_paris_part1-zip-390-49-mb-in-free
https://coub.com/stories/2829540-dinamica-de-sistemas-y-control-eronini-pdf-63-2021
https://coub.com/stories/2829539-portable-free-hornady-poster
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMCA0pvrCQwLEgZDb3Vyc2UYgICA_-b_tQkMCxIIQWN0aXZpdHkYgIDAkKjD2goMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMCAwfbmCwwLEgZDb3Vyc2UYgIDAgIGhqgkMCxIIQWN0aXZpdHkYgIDA4ODtvwkMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgID_hISyCQwLEgZDb3Vyc2UYgIDAgNjmjAkMCxIIQWN0aXZpdHkYgIDAkLO5uggMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMDAwMuZCgwLEgZDb3Vyc2UYgIDAgPKM4AkMCxIIQWN0aXZpdHkYgIDA0NzRvAgMogEQNTcyODg4NTg4Mjc0ODkyOA
https://coub.com/stories/2637066-agnus-dei-free-sheet-music-pdf-krilaur
https://coub.com/stories/2637064-download-new-fitify-pro-build-137-mod-apk
https://coub.com/stories/2637063-afly-indiav
https://coub.com/stories/2637062-singi-yatiraj-community-medicine-pdf-17
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMDAqdeACgwLEgZDb3Vyc2UYgIDA0Oy8mQkMCxIIQWN0aXZpdHkYgIDAkP-36QkMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMDAqeSGCwwLEgZDb3Vyc2UYgIDAkLPSwggMCxIIQWN0aXZpdHkYgIDAkNP19QgMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgID_k9q6CgwLEgZDb3Vyc2UYgIDAgJiP8woMCxIIQWN0aXZpdHkYgIDAkNOGuQsMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMCA37v3CAwLEgZDb3Vyc2UYgICAv_-MkwgMCxIIQWN0aXZpdHkYgIDAoJHhjwoMogEQNTcyODg4NTg4Mjc0ODkyOA
https://coub.com/stories/2662118-top-alina-balletstar-jessy-sunshine-petal-of-stone-final
https://coub.com/stories/2649121-exclusive-kaskade-room-for-happiness-acapella-zippy
https://coub.com/stories/2649116-introduction-to-programming-in-java-an-interdisciplinary-approach-pdf
https://coub.com/stories/2649113-plural-eyes-3-serial-number
https://wakelet.com/wake/fGG99faQNbDxz0I3ngULm
https://wakelet.com/wake/uUsMHLSmSOMy3MZV4tVtE
https://wakelet.com/wake/6qPWlROlijWmUmXCKdcGx
https://wakelet.com/wake/oYu74o8vsafm87q8FjQIA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMCA4quqCwwLEgZDb3Vyc2UYgIDAwIeDiwkMCxIIQWN0aXZpdHkYgIDAkP_zzAoMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgID_xamfCQwLEgZDb3Vyc2UYgIDAoISlywsMCxIIQWN0aXZpdHkYgIDAkIvEmQgMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgICfy5PiCQwLEgZDb3Vyc2UYgIDAgMH2hgsMCxIIQWN0aXZpdHkYgIDAoNKDigsMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMDAgM7jCwwLEgZDb3Vyc2UYgIDAgNKr1gkMCxIIQWN0aXZpdHkYgIDA4M7EtQgMogEQNTcyODg4NTg4Mjc0ODkyOA
https://coub.com/stories/2828849-fix-free-mac-os-x-tiger-10-4-6-full-retail-dvd-bootable-iso
https://coub.com/stories/2828845-upd-amagami-ss-pc-game-english-download-113
https://coub.com/stories/2828841-new-g4t0ng0doc70r4-9sub
https://coub.com/stories/2828843-malaysia-driver-license-number
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgICfhPr6CgwLEgZDb3Vyc2UYgIDAgNixnQsMCxIIQWN0aXZpdHkYgIDA0IDtvQsMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgIDfsdi-CgwLEgZDb3Vyc2UYgICA__jVqQkMCxIIQWN0aXZpdHkYgIDAgJONyAgMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgID_5pzyCwwLEgZDb3Vyc2UYgICA_6TW6AoMCxIIQWN0aXZpdHkYgIDAkIm4nggMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgIDfqdyECAwLEgZDb3Vyc2UYgIDAgO2r9wsMCxIIQWN0aXZpdHkYgIDAoNOznQoMogEQNTcyODg4NTg4Mjc0ODkyOA
https://wakelet.com/wake/3NPmhflh1lVa3HDjwHYxP
https://wakelet.com/wake/6LsBu2aSoVoGYS8jjTNE8
https://wakelet.com/wake/g_JwTal4_VMUsL8lBqzWk
https://wakelet.com/wake/tD7fqojJSj2ltyQncu5Tw
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMDApZurCQwLEgZDb3Vyc2UYgICAv4PwqwsMCxIIQWN0aXZpdHkYgIDAkP_zmwoMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgIC_wdGtCwwLEgZDb3Vyc2UYgICA_9OH2wsMCxIIQWN0aXZpdHkYgIDA4JXEjwsMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMCAofCoCgwLEgZDb3Vyc2UYgICA_6by9wgMCxIIQWN0aXZpdHkYgIDAwJmu-wsMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMCA7Yi5CAwLEgZDb3Vyc2UYgICAv_-QsQoMCxIIQWN0aXZpdHkYgIDA4Lf50QgMogEQNTcyODg4NTg4Mjc0ODkyOA
https://wakelet.com/wake/hTmSeP63xOXF777o-7y7q
https://wakelet.com/wake/dqIJgVv13UeZk-I5W38x9
https://wakelet.com/wake/jrcWVO4oGDbRImX5GXM8Y
https://wakelet.com/wake/HznDpEE344LjoArAySDvI
https://coub.com/stories/2663128-free-t-tapp-15-minute-basic-workout-plus
https://coub.com/stories/2663127-avengers-2012-br-rip-720p-500mb-mkvl-patched
https://coub.com/stories/2663126-ofilmyzilla-suraj-pe-mangal-bhari-2020-hindi-full-movie-480p-mp4-free
https://coub.com/stories/2663124-english-test-for-grade-8-with-answers-jalerz
https://wakelet.com/wake/wOs_tJdQQ3YlX28p4MxBx
https://wakelet.com/wake/O7s5PEH68TLjRaqxY1QKF
https://wakelet.com/wake/Yr8UFDSK7DBZ62MgwBD-r
https://wakelet.com/wake/DbAOllZM26OJ9aGG7lTCz
https://wakelet.com/wake/f8paiOj20nazWzbQCu3RM
https://wakelet.com/wake/tFKD4JFMYJTwmg_FtMIYo
https://wakelet.com/wake/FqLAIYSDXPKA42_hdf8p8
https://wakelet.com/wake/ebl1AidzK3scg0jWal1Fi
https://wakelet.com/wake/ihTma4rdOQ8UDWzFWxkTm
https://wakelet.com/wake/kEl0voMg5-_hoahL8jTk4
https://wakelet.com/wake/McwDvaHrMIv_czyrxQ_qC
https://wakelet.com/wake/jAtAHThgieXiMCs5GzPPj
https://coub.com/stories/3064094-rld-dll-100-pes-2013-rar-download-free
https://coub.com/stories/3064093-daemon-tool-dtlite4413-0173-work-keygen
https://coub.com/stories/3064092-stargazer-christmas-exe-download-verified
https://coub.com/stories/3064091-ed-edd-n-eddy-mis-edventures-pc-downloadl-__hot__
https://coub.com/stories/3082536-windows-movie-maker-2019-crack-activation-key-free-__hot__-download
https://coub.com/stories/3082533-victory-road-torrent-exclusive-download-patch
https://coub.com/stories/3082532-autocad-r14-full-version-free-download-top
https://coub.com/stories/3082529-henrydangerdownloadtorrent-marhar
https://wakelet.com/wake/u4iVxt-akQvj405fyb1I8
https://wakelet.com/wake/cYBFp9ojBDFskt3zgcTxr
https://wakelet.com/wake/KJtpnsjoPm2JCm9ChvDB9
https://wakelet.com/wake/8JBbz-47Xj1BT0EWnZf4B
https://trello.com/c/ZQnRmPY6/24-link-kottayam-pushpanath-novels-pdf-free-15
https://trello.com/c/OneSjK5E/42-fly-away-home-1996-bluray-1080p-dts-x264-chd-verified
https://trello.com/c/PErSagwH/44-solid-mensuration-by-kern-and-bland-free-downloadrar-casmal
https://trello.com/c/T3twjSt0/28-magic-cd-jmr-telecharger-ottykaf
https://coub.com/stories/3149035-inflow-inventory-license-key-crack-serial-55-darovalo
https://coub.com/stories/3149033-better-dfx-audio-enhancer-v11-0-17-full-final-by-bobiras2009-download-pc
https://coub.com/stories/3149032-updated-fullkuncijawabanbukuprkimiaintanpariwarakelasxi
https://coub.com/stories/3149030-biblia-narrada-por-cid-moreira-colecao-completa-36-cds-torrent-1
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgID_xP7LCAwLEgZDb3Vyc2UYgICAv6PMhAsMCxIIQWN0aXZpdHkYgIDA0LDP5QoMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMDAlf-dCQwLEgZDb3Vyc2UYgIDAwJWb7AgMCxIIQWN0aXZpdHkYgIDA0LDgpwsMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMDA9JDOCgwLEgZDb3Vyc2UYgICAv_7x2QoMCxIIQWN0aXZpdHkYgIDA0PC7lAsMogEQNTcyODg4NTg4Mjc0ODkyOA
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgMDgjrXICAwLEgZDb3Vyc2UYgIDAwOnJngoMCxIIQWN0aXZpdHkYgIDAkJvmtAgMogEQNTcyODg4NTg4Mjc0ODkyOA
https://coub.com/stories/3004498-patched-loc-kargil-movie-download-720p-hd
https://coub.com/stories/3004493-verypdf-document-converter-docprint-pro-v5-0-with-key-tordigger-keygen-kamsusa
https://coub.com/stories/3004485-sonokinetic-qanun-kontakt-synthic4te-full
https://coub.com/stories/3004492-em-terreno-selvagem-dublado-download-18-honedany
https://coub.com/stories/3135629-raul-chavez-castillo-pdf
https://coub.com/stories/3135625-red-giant-knoll-light-factory-3-2-1-for-photoshop-cs6-5-4-3
https://coub.com/stories/3135627-100-caterpillar-et-factory-password-generator-v0-2
https://coub.com/stories/3135626-ample-guitar-keygen-download-for-mac-darygre
https://coub.com/stories/3033269-arduino-serial-read-text-file-osrinke
https://coub.com/stories/3033267-high-quality-12d-model-v9-13
https://coub.com/stories/3033266-textbook-of-fluid-dynamics-f-chorlton-pdf-free-31-15-berntali
https://coub.com/stories/3033265-movie-subtitles-download-better-cars-3-english
https://coub.com/stories/3046421-train-to-busan-hindi-movie-mp4-downloadl-__exclusive__
https://coub.com/stories/3046420-ez-photo-calendar-creator-plus-9-07-keygen-exclusive-epub
https://coub.com/stories/3046419-battery-doubler-pro-1-3-full-crack-antivirus-__top__
https://coub.com/stories/3046418-tafsir-wal-mufassirun-pdf-download-link
https://coub.com/stories/2934680-realitycapture-torrent-download-verified-portable-l
https://coub.com/stories/2934679-geneious-license-crackl-_top_
https://coub.com/stories/2934677-new-binding-of-isaac-cheat-table-downloadl
https://coub.com/stories/2934676-better-download-chessmaster-3000-full-version
https://coub.com/stories/2953630-citroen-servicebox-sedre-11-2010-verified-download-pc
https://coub.com/stories/2953629-philips-gogear-video-converter-software
https://coub.com/stories/2953628-filmimpact-net-transition-packs-bundle-tp1-v3-1-5-tp2-v3-2-top
https://coub.com/stories/2953627-fsxp3dorbxftxeuirelandfreedownload-werual
https://coub.com/stories/3008572-hot-nexus-2-vst-expansion-packs
https://coub.com/stories/3008569-gta-vice-city-games-download-full-version-for-pc-high-quality
https://coub.com/stories/3008568-auto-bingooo-keygen-oleyard
https://coub.com/stories/3008564-rasterlink-pro-5-sg-keygen-download-lareli
https://coub.com/stories/3065578-exclusive-download-badrinath-ki-dulhania-movies-1080p-torrent
https://coub.com/stories/3065577-best-fast-amp-furious-7-english-movie-download-in-720p-torrent
https://coub.com/stories/3065576-soulcalibur-vi-season-pass-torrent-download-crack-serial-key-exclusive
https://coub.com/stories/3065575-mathematica-11-3-with-keygen-win-linux-mac-crackl-exclusive
https://coub.com/stories/3024216-top-crack-microsoft-office-2007-standard-pt-pt
https://coub.com/stories/3024207-edius-pro-7-2-build-0437-crack-rar-top
https://coub.com/stories/3024212-link-free-download-film-soekarno-terbaru
https://coub.com/stories/3024211-better-cricket-coach-2014-serial-code-free
https://coub.com/stories/3065155-_best_-cannibal-holocaust-uncut-1080p-torrent
https://coub.com/stories/3065154-kidung-jemaat-not-angka-pdf-12-aldohey
https://coub.com/stories/3065153-full-clonedvd2-v2-6-2-3-serial-full-version
https://coub.com/stories/3065152-passmark-performancetest-9-0-build-1024-serial-key-better
https://coub.com/stories/3139450-tell-me-more-english-v10-5-free-download-full
https://coub.com/stories/3139447-dectalk-access32-v4-6-speech-engine-download-pc-primfel
https://coub.com/stories/3139446-crucc-2-2-47-signpand
https://coub.com/stories/3139445-fsx-brazil-mega-pack-scenery-epub-top
https://persrensnilari.wixsite.com/zarlesocas/post/2011-natur-sympatika-1995-42
https://pokorenie8266.wixsite.com/cirgagghehor/post/libro-valor-en-riesgo-philippe-jorion-pdf-18
https://tomikaseqol.wixsite.com/enunexsur/post/maharaja-book-diwan-jarmani-dass-pdf-download
https://inhenvesorepil.wixsite.com/sysbarami/post/activation-dolphinimaging-windows-full-version-build
https://inleapanroforwhe.wixsite.com/haltowelji/post/piktochart-download-for-mac
https://obesbrascharmgroup.wixsite.com/telnuemuro/post/radiant-dicom-viewer-cracked-64
https://arlylam.wixsite.com/grafencoting/post/hp-envy-buzzing-sound
https://stephanysmtih3237t.wixsite.com/colaninnews/post/bilal-mbaed-12395438_1538223076501362_155331-imgsrc-ru
https://coub.com/stories/3332635-body-of-proof-season-3-complete-720p-hd-carg-top
https://coub.com/stories/3332631-cracked-novation-v-station-serial-number
https://coub.com/stories/3332625-__top__-download-eboot-fix-3-55-naruto-shippuden-ultimate-ninja-storm-3
https://coub.com/stories/3332622-baca-komik-imadoki-bahasa-indonesia-valtess
https://coub.com/stories/3374325-gulliver-travels-movie-in-hindi-free-download-full
https://coub.com/stories/3374324-portable-digital-playground-teachers-xxxbdrip-2009-gid
https://coub.com/stories/3374323-112db-redline-reverb-torrent-mac-full
https://coub.com/stories/3374322-fix-battle-of-the-year-the-dream-team-full-movie-download
https://coub.com/stories/3332859-primaverap6tutorialfree-__link__downloadpdf
https://coub.com/stories/3332846-new-vst-trumpet-plugin-sample-pack-for-kontakt-download-torrent-rar
https://coub.com/stories/3332845-portable-badrinath-ki-dulhania-hindi-movie-in-720p-download
https://coub.com/stories/3332841-_best_-creature-3d-full-movie-in-hindi-hd-1080p
https://wakelet.com/wake/w0crQELAawfy5U-Zq6_V5
https://wakelet.com/wake/y0jakOiWj8--Svzd_Qf07
https://wakelet.com/wake/8a7HCSwzC-5XRBVKTxi36
https://communitychitchat.com/stardetisa
https://wakelet.com/wake/R06t7HaDwfwLnafUUK_I3
https://wakelet.com/wake/pd80EPeOzRn6n3q5Z4Jiq
https://wakelet.com/wake/b668Wet7OfCzFnZ4y5JK_
https://www.maarheeze.nu/index.php/component/k2/item/5788-cranendonck-actueel-week-8
https://coub.com/stories/3260298-adobe-master-collection-cs-5-5-crack-install
https://coub.com/stories/3260292-verified-downton-abbey-christmas-special-download-mac
https://coub.com/stories/3260295-prayers-for-bobby-2009-720p-bluray-x264-chd-publichd-link
https://www.cup.myrevenge.net/index.php?site=profile&id=1370364&action=guestbook
https://coub.com/stories/3382956-top-bella-e-perduta-2015-italian-dvdr-xvid-zima-torrent
https://coub.com/stories/3382954-capella-wave-kit-2-0-keygen-rar-fiamah
https://coub.com/stories/3382955-full-tamildubbed1080pmoviesfanaa
https://mug.vn/promimpoma
fc663c373e yenviri
https://rodetibuterro.wixsite.com/inlelithi/post/remove-on-reboot-shell-extension-torrent-activation-code-download-pc-windows
https://wcolupiftranattful.wixsite.com/liomiocarum/post/kabasigi-crack-download-for-pc-2022
https://erfresincatha.wixsite.com/haidingsandva/post/easeus-ringtone-editor-crack-free-registration-code-download-2022
https://quaisoeadwebymskyp.wixsite.com/highnaterra/post/mp3-wav-studio-with-key-download
https://jamemccask.wixsite.com/cosilboma/post/soundclick-bot-crack-license-keygen-latest-2022
60a1537d4d corterr