TK80/BSの
シンセシステムを復活
/拡張したい〜
その61
Nexys Videoボード
Vitisへの移行準備
シンセ部屋のスペース拡張
2021年
1月23日
ザイリンクスの
Vitis
を使用予定です。PCのメモリ要件が
32GB
(推奨64GB)なので、
アパート
のノート用にメモリを購入しました。
16
GB
x2枚で32GBのSODIMMをアマゾンで購入しました。残念ながら、このノートは最大メモリは
32GB
です。
アパート用に
64GB
まで増設可能な中古の
ミニデスクトップ
を購入予定です。
こちらはデスクトップ用のDDR4の16x2枚で
32GB
のメモリです。アパートで新しいデスクストップを使用し、今のアパートで使用している
ノート
を
ガレージ
に移動予定です。
こちらもアマゾンで購入しました。動作確認後、追加で
32GBを追加で購入予定です。
アパートで動作確認を行った、Nexys Videoボードの
DDR3
とDMAのIPを使用したI2Sの
プロジェクト
をガレージに持って来ました。正しく、デバッグできることを
確認
しました。録音、再生
動作良好
です。
Nexys Videoボードの
XADC
の回路です。4チャンネルは
PMODコネクタ
に接続されています。追加の4チャンネルは
FMCコネクタ
に接続されています。追加の4チャンネルを外部に取り出します。また、XADCやFMCコネクタに接続されているバンクの電源が
VADJ
という
可変電源
であることを確認しました。
PMODコネクタに
電圧制限用
に
ツェナが実装されてますが
、部品型番が明記してありません、以前にアマゾンで購入した超低価格の
ツェナダイオード
のセットの中から
2.7V
の特性を確認しておきます。
アナログディスカバリで
正弦波
を出力して、抵抗を介して、
電圧
を確認します。プラス側に
約2.1
V
です。8本とも同じ特性でした。
回路図で
VADJ電源
を確認しておきます。
1.2、1.8、2.5、3.3
V
から選択する
可変電源
です。
FPGAの端子で電圧を制御しています。
SET_VADJ
[1:0]
信号です。
なにもしないと、デフォルトで
1.2
V
に設定されています。
DDR3とDMAのIPを使用した
I2Sのプロジェクトのブロックデザインに
SET_
VADJ
[1:0]
のポートを追加して、
3.3
V
=
11
に設定します。
制約ファイル
の
SET_
VADJ
もコメントを外して、
復活
させます。
DDR3
の
温度センサ
もXADCと競合しないように、
定数
に変更します。ARTY−7の時と同様の”
2509
”に設定します。
合成/インプリして、SDKで動作確認を行います。初めに、
DDR3
です。メモリウインドで値を設定して、正しく書き込めるか確認します。
動作良好
です。
続いて、
VADJ
電源
です。正しく、
3.3
V
に変更されています。
FMCコネクタ基板
に配線を
追加
します。初めにデジタル系に必要な信号です。MC80バスの
12本
と、LED駆動用の8x3=
24本
です。ハーフピッチの配線は細い
ポリウレタン線
を使います。
FMCコネクタ基板を接続する、
ベースボード側
も
MC80バスの
配線を
追加
します。
1月24日
FMCコネクタ基板にアナログ用の
XADC配線
を
追加
します。
2.7V
のツェナダイオードと220
Ω
のダンピング抵抗を追加して、
PMODコネクタ
と同じ10ピンのコネクタを追加しました。本体の
PMODコネクタ
と合計でデファレンシャルで
8チャンネル
のアナログ入力が可能になるはずです。
アパートに帰ってきました。ノートPCの
メモリ
を
交換
しました。正しく、
32GB
になりました。
1月30日
アパートで使っているノートPC用の
1TB
の
SSD
をアマゾンで購入しました。Win10のクローン用です。
1月31日
ベースボード
にフロントパネルの
LEDドライバ
(HC245)を追加して配線しました。LEDはLFOが16個、ゲートが8個で合計
24個
です。
Nexys Videoに
ベースボード
を
接続して、ケースに入れてみます。その後、
FMCボード
とデルタシグマの
フィルタ
ボードとXADCの
アナログ入力
ボードを接続します。XADCは4チャンネルが
PMOD
からケーブルで接続し、残りの4チャンネルは
FMC
から配線します。
2月2日
Vitis
を使用するために、アパートで使用する
PC
を新調しました。レノボの
M910s
です。ヤフオクで購入したリースバック品です。メモリはAritx−7の開発では
32GB
で問題ないと思いますが、余裕をみて
64GB
に増設しました。SSDが256GBなので、後で
1TB
に交換する予定です。必要なアプリをインストールした後で、今までアパートで使っていた
ノートPC
はガレージに
移動
します。
2月6日
この週末は土曜日だけのガレージ作業でした。先週に続き、
ベースボード
の
LEDドライバ
の配線を追加しました。
ボードのテストのための
制約ファイル
の作成ました。なぜか、DigilentのWEBのマスタXDCファイルはすべての信号線が入っていないです。
FMCコネクタから取り出す
MC80バス
、24個の
LED
分を追加しました。今後の予定とし、Nexys Videoボードに
8チャンネルFPGAシンセ
を実装し、その後、DCO、ミキサー、外部アナログ入力を廃止して、
DDRを追加して、
Rep_Dma
に変更します。
パラメータ設定はマイクロブレーズ制御の
SPI
を使用します。
2月14日
この週末は日曜の午前中のみの作業でした。Nexys Videoボードの
FMCコネクタ
のテストを行います。ボード上の8ビットの
スライドスイッチ
をLEDのHC245バッファに出力する
テストロジック
を作成してテスタを使ってテストしました。少し配線にミスがありましたが、修正して8x3=24ビットを
正しく
出力できるようになりました。
続いて、
MC80
のバスをLEDポートに出力するテストロジックを作ってテストを行う
準備
をします。
ビットストリームの生成で
エラー
が出ました。
IOスタンダート
の指定が間違っているようです。
MC80バスのデータを接続しているポートに
MGTポート
を使用したのが原因のようです。FMCコネクタに出力されている信号の内、
6本
はMGTポートでこれはVADJの電源とは別なので3.3Vの指定はできません。
次回、ポートの設定を変えて再度テストします。
2月21日
先週、続先の
IOスタンダート
指定が間違ってエラーが出ていた
MC80バスの接続の接続先をMGTポートから
VADJ
電源の普通の
ポート
に変更しました。
アナログディスカバリの
パターンジェネレータ
の出力を入力して、
LED
に表示させて
接続確認
を行いました。データ8ビット、アドレス4ビットの
動作良好
です。
<リピートDMAを使ったウェーブテーブルシンセの予定 その1>
・
Nexys Videoボードに8チャンネルの
HLSシンセ
を移植。
・
マイクロブレーズ
と
DDR3
を追加。
・
ミキサ
とデルタシグマADCの
外部入力
を廃止
。
・DDS出力からノコギリ波と矩形波を生成している
W_CONV
を廃止して
Rep_Dma
に変更。
・パラメータ設定器用のハードウェアのSPIをマイクロブレーズ制御の
SPI
に変更。
ブロック図を作成しました。
3月13日
秋月で購入の
74HC245
と
マイクロUSB
のコネクタの2.54ピッチの
変換基板
が到着しました。
6月6日
来年の初めに、
引越し
の予定があり、
シンセ部屋
の
スペース
を拡張します。押入下の
扉
を外し、
TK80BS互換機
を押し込みました。データのケーブルは
未接続
です。穴を開けて後ろ側を通します。
6月12日
先週の続きです。
シンセ部屋
の
スペース
を拡張します。
押入上に入っていた布団を片づけて、
扉
を外します。
近くのホームセンタで
4段の
ワイヤラック
と
カーペット
を2色で8枚購入してきました。
上側の
棚
には
グレー
系
のカーペットを
敷き
ました。
ワイヤラックを組み立てて、
テレタイプ
と
プリンタ
を仮設置してみます。ワイヤラックは2段で高さを半分にして
奥行
を
2倍
で使います。テレタイプは
レンガ
でかさ上げします。少し上げないと、
テープパンチャ
の切り子を受ける
容器
が入りません。
テレタイプの
台
は捨てないで
取って
おきます。
6月13日
押入
下側
の側面には
TK80BS互換機
の
シンセの
データケーブル
の
穴
を開けます。
押入の
下側
は
ブラウン系
のカーペットを
敷き
ました。
上側
の棚に
穴
を開けて、テレタイプとプリンタの
データ
と
電源ケーブル
、側面は
TK80BS互換機
の
シンセ
と
テレタイプ
の
ケーブルを通しました。
6月30日
久しぶりのFPGA作業です。アパートでの作業です。
リピートDMAを使ったウェーブテーブルシンセのために
Nexys Videoボードに8チャンネル
HLSシンセ
を移植しました。外部入力用のデルタシグマADCを廃止し、DCF前のミキサの外部入力も無くしました。ボードのFMCコネクタに合わせて
制約ファイルを
作成して、合成、インプリできました。
スライス
の使用量は
約56%
です。
レポートの
サマリ
です。
DSP
の使用料は
26%
になりました。
デバイス図です。この状態をベースに
DCO1/2
の代わりに
Rep_Dma
を実装し、
ミキサも廃止します。その他、
MicroBlaze
、
MIG
、
AXIインターコネクト
、
パラメータ設定用の
SPIスレーブ
と
AXI
レジスタ
などを追加します。