MachXo2ふたたび

by K.I
2012/07/xx - 2018/09/13〜2018/10/31

Index


概要


1にしても、6年も経ってるのか。ずいぶんと放っておかれたもんだなあ。。

[top]

開発環境は

Diamondのインストール

ライセンスの取得

プロジェクト作成

新規ファイル作成

制約ファイルは?

Package View

Pin PadNameBank Function
1 PT6C 0 TDO
2 VCC
3 GND
4 PL5C 3 PCLKT3_0
5 PL5D 3 PCLKC3_0
6 VCCIO3 3
7 VCCIO2 2
8 PB2A 2 CSSPIN/MD4/TDOB
9 PB2C 2 MCLK/CCLK
10 PB2D 2 SO/SPISO/IO1/MD1/TDIL
11 PB4A 2 PCLKT2_0/INTEST_OVER
12 PB4B 2 PCLKC2_0
13 PB4C 2 PCLKT2_1/INTEST_OVER
14 PB4D 2 PCLKC2_1
15 VCCIO2 2
16 PB9A 2 SN/MD5/SCAN_SHFT_ENB/TDIB
17 PB9B 2 SI/SISPI/IO0/MD0/TDOR
18 VCC
19 VCCIO1 1
20 PR5B 1 PCLKC1_0
21 PR5A 1 PCLKT1_0
22 GND
23 PT9D 0 DONE
24 VCCIO0 0
25 PT9B 0 PROGRAMN
26 PT9A 0 JTAGENB/MD6/TDIR
27 PT8D 0 SDA/IO3/MD3/ATBFORCE/PCLKC0_0/TDOT
28 PT8C 0 SCL/IO2/MD2/ATB_SENSE/PCLKT0_0
29 PT7B 0 TMS
30 PT7A 0 TCK/TEST_CLK
31 VCCIO0 0
32 PT6D 0 TDI/MD7

Internal osciilator(OSCH)

OSCH Supported Frequency Settings
2.08 4.16 8.31 15.65
2.15 4.29 8.58 16.63
2.22 4.43 8.87 17.73
2.29 4.59 9.17 19.00
2.38 4.75 9.50 20.46
2.46 4.93 9.85 22.17
2.56 5.12 10.23 24.18
2.66 5.32 10.64 26.60
2.77 5.54 11.08 29.56
2.89 5.78 11.57 33.25
3.02 6.05 12.09 38.00
3.17 6.33 12.67 44.33
3.33 6.65 13.30 53.20
3.50 7.00 14.00 66.50
3.69 7.39 14.78 88.67
3.91 7.82 15.65 133.00

2差動ペアのComp(反転)、True(正転)を示すらしい。

[top]

Breakoutボードを使ってみる


[top]

改めて再開(180913〜追記)

Diamond再インストール

LCMXO2-256ピン配置


[top]

改めて仕様いろいろ

電源関連

JTAG書き込み


[top]

書き込み

基板の回路図

半田付け

→とりあえずJP2を繋いでVCCIOは3.3Vにする

基板とライタの接続

Breakout-J1 256HC-JT
1 3.3V 6 VCC
2 TDO 5 TDO
3 TDI 4 TDI
4 NC -
5 NC -
6 TMS 3 TMS
7 GND 2 GND
8 TCK 1 TCK

3何か、ピンをひとつ削る必要があるけど。
4これが、一番面倒で時間が掛かったかもしれない。

[top]

何を作ろうか?

ピン設定

エラーになる

パスコンが無い


5SMDはこういう時、追加が簡単でいいよね。
6昔、パスコンには散々悩まされたんだけど。。
7まぁ、明るすぎるよりは良いか。。

[top]

端子チェック

256HC基板のピン配置

256HC-JT pin
6 VCC 2,18
5 TDO 1
4 TDI 32
3 TMS 29
2 GND 3,22
1 TCK 30
256HC-J1 FPGA pin
1 CKC30 5
2 CKT30 4
3 CSSPIN 8
4 CCLK 9
5 SO 10
6 CKT20 11
7 CKC20 12
8 CKT21 13
9 CKC21 14
10 GND 3,22
256HC-J2 FPGA pin
1 VCC 2,18
2 VCCIO 6,7,15,19,24,31
3 SCL 28
4 SDA 27
5 PROGN 25
6 DONE 23
7 CKT10 21
8 CKC10 20
9 SI(LEDE) 17
10 SN(SW1) 16

あらためてピン設定

ナイトライダーもどき

半田付け失敗

残光処理


8後でEagleのSymbolを直しておかないと。。いや、直した奴を追加登録しないと、この基板のデータに矛盾がでちゃうかな。。
9チップを外して付け直そうかとも思ったが、今以上にダメになりそうなので止めた。
10基板を傾けても外れない程度の仮止め。
11初め、1/2,1/4,1/8でやってみたが、明るさがあまり変わらなかったので、時間を短くした。
12まぁ完全に成功したのは2個目に作った方だけなんだけど。。

[top]

内蔵発振器

`timescale 1ns / 1ps
module m256osc (
        input rst,
        output led,
        output [15:0] ledx
        );

        reg [26:0] count;

        OSCH #(.NOM_FREQ("133.00")) IOSC(.STDBY(1'b0),.OSC(clk),.SEDSTDBY());

        always @(posedge clk or negedge rst)
        begin
                if (!rst) begin
                        count <= 0;
                end
                else begin
                        count <= count+1;
                end
        end

        assign ledx[0] = clk;
        assign ledx[15:1] = count[15:1];
        assign led = count[26];

endmodule

波形をみてみる


13自分はWindows7なんだけど、最新バージョンのアプリだとDSO2250がまともに動かなかったので、V7.1.0.5を使っている。
14エイリアシングが見えているが、繰り返し波形なので、ある程度は判断できる。

[top]

VCCIO

外部クロック入力

動作電圧の確認

 ⇒ 
入力周波数 VCCIO動作電圧
133.00MHz 1.5V
88.67MHz 1.3V
44.33MHz 1.05V
22.17MHz 0.9V
11.08MHz 0.8V

15ちなみに書き込み時はVCCIOを3.3Vにしないとうまく書き込めなかった。まぁ当然か。

[top]

まとめ


16ピン数はこれで十分なので、規模が1200とか、出来れば7000ぐらいあると良いなぁ。

[top]

参考資料


[top] [電子工作関連に戻る]

comments powered by Disqus