<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>ひでみのアイデア帳</title>
<link href="http://www.sweetcafe.jp/" ></link>
<id>urn:uuid:577358aa-89c5-9778-fc16-36092433bde3</id>
<updated>2012-02-07T10:54:58+09:00</updated>
<author><name>石原 ひでみ</name>
</author>
<entry>
<title>github更新</title>
<link href="http://www.sweetcafe.jp/?number=464" ></link>
<id>urn:uuid:7a0bfee1-fd2c-b626-ee4c-f3b873372257</id>
<updated>2012-02-06T00:48:27+09:00</updated>
<summary type="html" ><![CDATA[<div>MicroBlazeのサンプルプログラムを修正しています。</div><div>ほんのちょっぴりですが・・・</div><div><br></div><div>Webからは下記をアクセスするとプロジェクトが見えます。</div><div><br></div><div><a href="https://github.com/aquaxis/aquaxis" title="" target="">https://github.com/aquaxis/aquaxis</a><br></div><div><br></div><div>% git clone https://github.com/aquaxis/aquaxis.git<br></div><div><br></div>それか、zipでダウンロードなら下記からでも可能です。<div><br></div><div><a href="https://github.com/aquaxis/aquaxis/zipball/master" title="" target="">https://github.com/aquaxis/aquaxis/zipball/master</a><div><br><div>そのうち、暇を見て見側にリンク先を表示するようにします。</div></div></div><div><br></div>]]></summary>
</entry>
<entry>
<title>プリキュア</title>
<link href="http://www.sweetcafe.jp/?number=463" ></link>
<id>urn:uuid:47a937d8-4ea0-3970-6323-fd89bb84f151</id>
<updated>2012-02-05T22:58:22+09:00</updated>
<summary type="html" ><![CDATA[今日から新プリキュアシリーズのスマイルプリキュアが始まりましたなぁ。<div>雰囲気はプリキュア５のような感じですね。</div><div><br></div><div>撮り貯めたアニメを整理しながら、今日もMicroBlazeで遊んでます。</div><div>って、サーバが寒さでダウンしてるんで、アニメを整理できない・・(^-^;</div><div><br></div><div>エンディアンについては、当分、諦めることにした。</div><div>どこにスイッチがあるかわからない状態。</div><div>「ソースのほうで、入れ替えればいいやぁ〜」的な、適当さです(^-^;;;</div><div><br></div>]]></summary>
</entry>
<entry>
<title>MicroBlazeのコンパイラで気がついたこと</title>
<link href="http://www.sweetcafe.jp/?number=462" ></link>
<id>urn:uuid:5efa5ba4-7720-1f03-5c8c-73c1c75b2784</id>
<updated>2012-02-05T01:18:18+09:00</updated>
<summary type="html" ><![CDATA[<div>MicroBlazeのコンパイラで気がついたことがあった。</div><div><br></div>エンディアンの問題は元々あったので放置してたんだけど、それは良しとして、別の問題を見つけた。<div><br></div><div>データを"or"しても"or"できないなぁ〜と思ってたら、gccがMicroBlazeコードを吐く際に違う命令をしようしているようだった。</div><div><br></div><div>仮に下記のようなものとしよう。</div><div><br></div><div>int data;</div><div>char str[];</div><div>for(i; i &lt; last; i++){</div><div>&nbsp; data |= str[i] &lt;&lt; ((i % 4) * 8);</div><div>}</div><div><br></div><div>これでstr[]が{0x0A,0x05,0xA0,0x50}だとしたら、dataはどうなる？</div><div><br></div><div>0x50A0050A</div><div><br></div><div>と、なってほしいところなんだが、MicroBlazeでは</div><div><br></div><div>0xFFA0050A</div><div><br></div><div>と、なってしまう。</div><div><br></div><div>なんでだろう？と、シミュレーションしたら、[2]の0xA0をdataに入れた時点で</div><div><br></div><div>0xFFA0050A</div><div><br></div><div>と、なっていた。</div><div>つまり、0xA0の左ビットが立ってたので、dataの左ビットが全て"1"で埋められたということだ。</div><div>どの命令だったか忘れたけど、確かにそんな命令があったことは覚えている。</div><div>その命令を実行しているなんて思っても見なかった。</div><div><br></div><div>それを回避するようにしたら、正常なプログラムが組めるようになった。</div><div><br></div>]]></summary>
</entry>
<entry>
<title>Littie Endian</title>
<link href="http://www.sweetcafe.jp/?number=461" ></link>
<id>urn:uuid:e79fe74b-66f9-6260-df4d-a213873341c2</id>
<updated>2012-02-03T01:35:22+09:00</updated>
<summary type="html" ><![CDATA[MicroBlazeのクロスコンパイラのバイナリがLittle Endianだった。<div>MicroBlazeはBig Endianなのにね。</div><div>サンプルで作成したprintfはそれに対応する形をとったけど、本当はgccのレベルでEndian変換しなきゃいけないよなぁ。</div><div>いろいろ、探してみたんだけど、それが見つからないのでひとまず、Little Endianのまま使うことにしよう。</div><div>MicroBlazeとRAMの間を無理やり逆転させるという荒業もあるけど、それをしても、アプリが飛ぶことがあるのがわかった。</div><div>知ってる人がいれば良いんだけどなぁ〜。</div><div><br></div><div>shなら--wirh-endian=bigとかでいいんだけど・・・</div><div><br></div>]]></summary>
</entry>
<entry>
<title>ChipScopeもどきでも・・・</title>
<link href="http://www.sweetcafe.jp/?number=460" ></link>
<id>urn:uuid:c9fb1f53-2884-a1e8-7c73-817d3dc1ec1c</id>
<updated>2012-01-31T02:28:03+09:00</updated>
<summary type="html" ><![CDATA[もう、こんな時間です。<div>終電で帰ってきたというのにまだ、なんかしようとしてるのは馬鹿丸出しで・・・(^-^;</div><div><br></div><div>むかぁ〜し、ChipScopeを使って便利だなぁ〜と思ったことがあったんですが、最近はシミュレーション主体なので使う機会が無くなっていた。</div><div>その代わり、UARTを付けてハードだけでコマンドプロンプト処理ができるようにして、そこからデータのリード＆ライトするようにしている。</div><div><br></div><div>つまり、そこにChipScopeのようにメモリに貯めこむモジュールを追加してみた。</div><div>まぁ、UARTに出力されているHexから波形を想像しないといけないけど、ChipScopeもどきができた。</div><div>ここまではそんなに難しいことでもないのでどうでも良いことなんだけど・・・</div><div><br></div><div>そんなこんな考えてたら・・・</div><div><br></div><div>ただ、単にそれだけのUARTモジュールなんだけど、取得したデータを波形にするアプリを作ればそのまんま、ChipScopeもどきで遊べそうだなぁ。</div><div>VCDに落としてしまえば、gtkwaveで見ることできちゃうでしょ。</div><div>LinuxでUARTに接続するアプリが出来れば、VCD変換できそうだなぁ〜なんて・・・ぼんやり考えている。</div><div><br></div><div>/dev/ttyS*の扱い方なんてすっかり忘れたけど、そこさえなんとかすれば出来るんじゃなかったっけ？</div><div><br></div>]]></summary>
</entry>
</feed>
