Lynx-EyEDの電音鍵盤 新館

制御とか数学とか駄文とか

FPGA/CPLD

アルテラCPLDで150LE未満のワンチップCPUを作ったお話

150LE未満のMISC CPU スタック1段のみ、キャリーフラグなし、6命令のMISC CPUを作りました。 (ほんとは5命令だったんだけど、このネタに使うのに1命令追加した)以下が命令です。内部的には最初のコマンド以外、殆ど同じ動きをします。 GO_IF_NON_ZERO_ELS_SU…

エナジーハーベストPLDボードRODSZEPTA進捗状況(その3) :通常電力版MOZPENTAを作った

ハード開発環境の分離 前回の結果をうけて、エナジーハーベスト電源側とCPLD側の開発を別々に進める事にしたわけですが、MAX V 1270LEの144ピンTQFPパッケージ(5M1270ZT144)が手に入ったため、このデバイスで基板を起こしました。RODSZEPTA(ラセタ)と区別す…

エナジーハーベストPLDボードRODSZEPTA進捗状況(その2)

デバイステストが終了 RODSZEPTAにはエナジーハーベスト用電源管理ICにLTC3330を試験的に採用しています。 LTC3588-1と基本的構造は同じですが、バックブーストDCDCとLDOの2電源を内蔵しているところが異なります。また取得できる電流が少し減っているようで…

RODSZEPTA進捗状況(その1)

基板到着 エナジーハーベストイメージセンサボードRODSZEPTAの基板が到着しました。 PCBはDesignSparkPCB v.5.1で作成、ViewMate Proで面付けしています。 おもて うら シルクもスルーホールもそこそこ奇麗。 部品もSRAM以外は届いているので試作してみよう…

省電力イメージセンサボードを作る

事の発端 今年の初めに友人と天王寺ミオで、 こんな↓ラジコンにラインスキャン乗せて映像撮ったら面白そうだねという会話 でも大容量Li-PO電池もたないといけないかも、ついでに重くなるから出力上げないと、という話をしてたときに、「振動で発電すれば電池…

Avalon-MM Master Bridgeを探す

USB付きで簡単に使えるBridge Qsysを使ってAvalonバスにモジュールをぶら下げて使えるシステムを開発中です。 Alteraのデバイスの以下のシリーズで検討しています。 Cyclone IV E / GX Cyclone V E MAX V CPLD Nios IIは規模が500LE未満と軽量なソフトマクロ…

裏付けの無い開発手法とFPGA石器時代

それは10年前と変わっていないのか 以前の記事( 魔法のようなSoCはない - Lynx-EyEDの電音鍵盤 新館)に付け加えたい事があったのでちょっと書いてみました。最近FPGAの図書がまた増えつつあるCQ関連ムックですが、 例えばコレとか FPGAスタータ・キットで初…

Max II CPLDでQsysをつかってみた

QsysのProject SettingsメニューにCPLDもある 前回(JTAG to Avalon Master Bridgeを使ったバスコントロール - Lynx-EyEDの電音鍵盤 新館)でやってみた内容とほぼ同じ事を、CPLDでやってみました。 使用ボードはMax II Micro Kit (Terasic MMK)です。 具体的…

JTAG to Avalon Master Bridgeを使ったバスコントロール

バスアーキテクチャの学習というハードル 2013年も1月が終わろうとしていますが、今年初記事です。(笑74シリーズで論理設計した経験があり、HDLをある程度習得しているなら単体モジュールをFPGA内に作り込むのはさほど困難な事ではないと思われます。 問題と…

PSoC3で指定回数分だけクロック送出

前回(PSoCでVerilog - Lynx-EyEDの電音鍵盤 新館)の関連記事になります。 PSoC3/5で指定回数分だけパルス出力したいと考えました。8bit長シフトレジスタでは、通常8クロックを送出してから、保存用レジスタにストアします。 しかし、データストリームが8の倍…

PSoCでVerilog

画像を利用した姿勢制御計画がちょっと部品選定で頓挫中です。 MachXO2 → PLD付きCPUのPSoC3でも出来そうということで、部品選定フェーズに巻き戻ししてます。あーあ。【メリット】 ・CPUによってPLDのステートマシーンをなくす、または最小限に出来る。ある…

凄いカメラボード改めYABUSAME'S ROD

ボードの再設計 前に↓設計していたカメラボードの外形をまた直しています。 特徴量検出と姿勢制御用のデバイスの設計(その2) - Lynx-EyEDの電音鍵盤 新館価格と、ハードマクロの豊富さが決定打となりCPLDはMachXO2-2000を採用しました。 和製FPGAボードはDQN…

魔法のようなSoCはない

次世代ry 30代半ば〜40代後半のソフトウェアをメインとする技術畑にいる人々の中には、未だにFPGA=魔法のSoCという刷り込みがある模様。汎用と専用の違いをどこかで見失ったのかもしれない。 2000年はじめ頃、FPGAについて \魔法のデバイス!何でも出来る…

特徴量検出と姿勢制御用のデバイスの設計(その2)

前回のエントリの続き。 まだ作りかけですが、、、一応ボード設計のメドがたちました。今回はAltiumではなくDesignSpark PCBを使っています。 トラ技でも紹介された技適取得済みWT32モジュールWCA-009を乗せています。もともと、A2DP、AVRCPプロトコルを生か…

特徴量検出と姿勢制御用のデバイスの設計

ここからしばらくはこの話題を追いかけていこうと思います。 2足歩行ロボットや小型無人飛行機の姿勢制御は通常ジャイロや加速度センサを組み合わせて実装されますが、 そのシステムに「目」を追加することによって、姿勢制御の補助ができるのではないかと…

カメラ基板が到着

Spartan-6 LX9 MicroBoard用カメラスタック基板が到着しました。LPDDRを読み書きするMCBの速度評価をしたいと思います。 10月31日に発注したので到着まで27日かかった模様。 3電源回路ですが部品点数がかなり少ないので2層で十分です。 FusionPCBに発注しま…

Spartan-6のMCBとカメラボード設計

ずっと、UG388と格闘しつつMIGを使ってLPDDRを駆動するMCBラッパをインスタンシエートしたり、シミュレーションしている訳ですが、ALTERAユーザから見るとかなり奇異に見えるかも知れません。(自分もそうだったので) まず、Spartan-3E、Spartan-6、Virtex-6…

Spartan-6 LX9 MicroBoardを使ったLPDDR SDRAMのハードマクロ実装(その4)

MIGが生成したuser_designを使って、MCBラッパーと分散メモリのインスタンシエートをしているわけですが、ふと、違和感を感じました。user_designのトップファイルのモジュール宣言。 module mymig # ( //(中略) ) ( inout [C3_NUM_DQ_PINS-1:0] mcb3_dram_d…

分散RAMのインスタンシエートとMCBの連結(その1)

FPGAを使う理由として同期・非同期FIFOをたくさん用意したい、という点があると思います。 FPGAは内部がSRAMのお化けですし、タイミングが厳しいときはマイコンを使うわけにはいきません。今回、MIGが生成したMCBラッパの32bit幅のデータをLPDDR SDRAM動作ク…

Spartan-6 LX9 MicroBoardを使ったLPDDR SDRAMのハードマクロ実装(その3)

今回はちょっと脇道でハードデバッグの方法を勉強しています。 前回と前々回でネイティブMCBのexample_designインプリメントを行いました。 今回は、ChipScopeの使い方を色々調べていました。 ◆参考文献 いつものとおりです ユーザーガイド(PDF注意) UG416:S…

Spartan-6 LX9 MicroBoardを使ったLPDDR SDRAMのハードマクロ実装(その2)

前回ざっくりとMIGを弄ってみました。今回は実際にインプリするので、……まぁ今回もざっくりと(ぉぃ 今回は実装し、動作をChipScopeを用いて確認するところまで行います。 前回、create_ise.batで自動生成したデザインは2種類ありました。それぞれ次のような…

Spartan-6 LX9を使ったLPDDR SDRAMのハードマクロ実装(その1)

例のAVNET Spartan-6 LX9 MicroBoardにはLPDDR SDRAM(MT46H32M16)が載ってます。 Virtex-6と同様Spartan-6にもMCB(Memory Controller Block)が搭載されており、外部メモリを内蔵ハードウェアで駆動します。 MCBは通常はMIGツールを利用してGUIでリソースラッ…

AVNETのSpartan-6 LX9 MicroBoardがiMPACTに認識されない件の解決方法

秋月電子でこの微妙なボードが売り出されたこともあり、多くの人がSpartan-6に触れる機会が出てきたようです。 てか、このLPDDR、こんなパスコンで性能出しきれんのかよw MicroBlazeには正直あまり興味がわかないのですが、(よりによってLX9にソフトCPU積ん…

MAX V評価用ボード設計中です

使い方がうっすらとわかり始めたDesignSpark PCBですが、MAX Vの基板を設計しています。結構めんどうだったのはComponentにMAX V CPLD(5M570ZT144C5N)の端子名を全手動入力… 3D表示もしてみました。 はじめは3D表示をさせたところ、変な立方体が基板上にある…

大きいお友達

アルテラの新兵器がDigi-Keyでお安くなっていたので買いましたよ。 5M570ZT144C5Nです これだけ足生えてれば、何でもできそう?…いや、、

8bit SPIスレーブの実装

FPGA4FUNのSPIスレーブVerilogコードがあまり実用的でなかったので書き直したメモです。 fpga4funのSPIコードでは、CS(SSEL)信号やSCK、MOSIの状態を3bitのシフトレジスタにコピーし、立ち上がり・立ち下がりを観測している様です。