2004-06-01から1ヶ月間の記事一覧

違う

動的可構成論理素子は可構成論理素子をフィールドで再構成できるようにしたものではない。ということに気づかないと理解しにくいですね。だいぶ感覚がつかめてきました。 以前も書きましたが可構成論理素子はIPを軽くいじって問題に適応させるのが目的である…

淡々と

淡々とやってる当Blogですが、帰国した後はITRONとSDRの続きを書いていくことになります。ま、淡々とやります。いつかは加藤ローサのBlog de チェキ日記のような人気ページになるといいなぁ(をい)

NECのMusketeer

日経エレクトロニクス2004.6.21にNECが同社の動的可構成論理素子用に開発した開発環境Musketeerが紹介されています。C言語による論理素子開発環境ですが、なかなかおもしろい点がいくつかありました。 演算回路を複数のブロックから共有する必要はない。手近…

UART DMA

ADSP-BF533 has dedicated DMA for each transmitter of receiver of UART. You can reduce the load of processor by using DMA. When you use the UART DMA, you should be careful to set the ETBEI and ERBFI of UART_IER to 1 for TX DMA and RX DMA, r…

UART DMA

ADSP-BF533はUARTの送信用、受信用にそれぞれ専用のDMAを持っています。このため、長さがわかっている通信なら負荷を減らすこともできます。ただ、一つ注意が必要なのは、DMAを使うためにUART_IERのETBEIとERBFIを1にして送信バッファ空割り込みと受信バッフ…

The pitfall of UART

The UART controller of ADSP-BF533 is 16450 compatible. If you used to program PC since ‘80th or know well about IPs, you may realize that this doesn’t have FIFO buffer. No PC uses this these days. The buffered type 16550A was developed to …

UARTの落とし穴

ADSP-BF533のUARTは16450互換タイプです。古くからPCをいじっている人やIPに詳しい方はピンと来たかもしれませんが、これはバッファなしのタイプで、最近ではPCでは使われていません。バッファ付きの16550が開発されたのは、PC*1の割り込み応答が遅かったた…

変更点

だいぶ変更点がありますね。差分情報もないし結構ため息モノです。 CDPRIOビットが追加されている Hibernateモードが追加されている 逐次更新します。

BF533 HRM 2.0

ADSP-BF533 Blackfin Processor Hardware Reference (Rev 2.0, May 2004) 2.0になってました。知らんかった。 _| ̄|○

ニューコア、第3世代の映像エンジン

デジカメの画像処理エンジンです。 半導体業界に就いて驚いたのは、機器メーカーの「当社の技術がXXを可能にしました」という広告の文句は殆ど全部嘘だったことです。全部外からチップ買ってやってるんですよね。最近ではそれが殆ど台湾製、アメリカ製である…

Leak Current

If you see the data sheet of 750MHz BF533, You will find it consume 16mA even you stop the core clock, at 0.8V VDD. That is what you have to pay for high speed process. Any way, you should know this if you think about long stand by applica…

リーク電流

750MHz版BF533のデータシートを見ると、コアにクロックを供給しない状態でも0.8V時に16mA以上流れていることがわかります。高速動作と引き換えみたいなものですが、長時間待ちうけのようなアプリケーションにはこのままでは使えませんので注意が必要です。

VisualDSP++のランタイム初期化

C言語の標準ライブラリを使う場合には最低限の初期化を行わなければなりません。現在unix環境構築まで一息ついている状態なので初期化の辺りを調べてみました。 VisualDSP++の標準システムで初期化を行うのは、basiccrt.h(Basic C Runt Time)です。このファ…

割り込み待ち

実行可能なタスクが無い場合、dispatch()のなかでタスクがスケジュールされるまで待つことになります。この場合、タスクのスケジュールの引き金を引くのは割り込みなので、結局dispatch()関数の中で割り込みを待つことになります。タスク割り当て昨日紹介し…

参考リンク

偶然ですが、ITMediaでLinuxのプロセスディスパッチャの実装の説明をやってました。

void dispatch(void);

RTOSの中でもっとも興味を引く部分はやはりタスク切り替えです。ITRON4の場合は実は割り込みハンドラのほうが複雑な動きを要求するのですが、それでも実行コンテキストを切り替えるという魔術のような言葉の響きがタスク切り替えを際立たせています。 TOPPER…

Destructive Register and Interrupt

Some of the MMR changes its state if you read it. Most of MMR is not like this. But some legacy devices which requires compatibility does. The UART is the typical legacy devices. Once you read the UART_IIR or UART_RBR, the state of UART is…

破壊性読み出しレジスタと割り込み

MMRの中には一度読むと状態が変わるものがあります。多くのレジスタは読み出しても問題ありませんが、古いデバイスとの互換性を保つためにそのようなレジスタを持っているデバイスがあります。UARTがそれです。UARTの受信レジスタUART_RBRや割り込みステータ…

Technical LibraryにEE-ノート追加

EE-240: ADSP-BF533 Blackfin Booting Process EE-239: Running Programs from Flash on ADSP-BF533 Blackfin Processors ブートは鬼門なので一読をおすすめします。

割り込みハンドラはこのままでいいのか

TOPPERS/JPSの移植中にADSP-BF533の割り込みのまずい点に気づきました。割り込みはコアのレベル割り込みと、システム側のビットマップの間でユーザーが任意に割付を変えることが出来るようになっています(SIC_IARx)。ところが、割り込みが発生したときに処理…

周りを見回す。

昨夜のビルドで作業が一段落付いたので一息ついて周囲を見回してみました。 スクリプトだけだと思っていたconfiguratorにはバイナリがあるらしい。 タグ付けされたHTML版ドキュメントがあった。 あらら。随分古い知識で作業したりモノをいっていたようです。…

メモ

どっと現れるエラーのうち、一部は条件コンパイルによって隠されているオブジェクトがあるのが原因です。windowsとc54xのポートだけはapi.hというファイルを作ってこれを制御しています。あとのポートがどうしているかは、unix環境を作らない限りわからない…

システム依存部

hw_timerはTICを刻む重要なタイマーです。ここにはコアタイマーを使います。コアタイマーの動作は別プログラムで確認済みですので問題ないでしょう。 hw_serialにはst16c2550ドライバを改造した汎用uartドライバを使っています。この部分は手を入れては見た…

進捗

ようやくビルドに入りました。コンパイルとアセンブルのエラーまでは順調に取れましたが、最後にどっとリンクエラーがでて作業が停止しています。 理由ははっきりしています。configuratorです。TOPPERS/JSPのconfiguratorはunixのシェルスクリプトですから…

sio

シリアルIOに関しては代表的なもの用にPDICが数種類用意されています。そのうちUARTに関しては1550互換のST16C2550というUART2個いりのもののPDICが使えそうです。 このST16C2550は1550互換なので、1450互換なADSP-BF533のUARTとは少し異なります。しかし違…

insn.h

JSP 1.4のm68k実装にはinsn.hというファイルがあります。このファイルはcpu_config.hからだけインクルードされるファイルであり、cpu依存のインライン・アセンブリ関数を提供します。m68kの場合はビットマップ・サーチ関数を提供しています。 これをBLACKfin…

動的可構成論理

動的可構成論理は、可構成論理の再構築をチップ製造後に内部で何度でも行うものです。と、言い切れればいいのですが私はこれに対して首を傾げてしまいます。「それはFPGAちゃうの?」と思ってしまうのです。 動的可構成論理についてはこんなかな~、あんなか…

可構成論理

可構成論理と動的可構成論理はどこが違うのでしょうか。もともと商売だか研究だかの宣伝用に作られた匂いがぷんぷんする用語ですのできっちりと分けるのは難しいように思います。しかしそれはそれ、ここは個人の日記ですので浅学を恐れずに分類してみましょ…

Reconfigurable Logic

"Reconfigurable Logic"っていい加減に日本語にしてもらえないものでしょうか。かなり深めの守備の外野ですのであんまり口出しするのも変ですが、めちゃめちゃ使いにくいですよ、この言葉。そのうちR12e Logicなんていわれるのかもしれませんが、それはそれ…

大並列MPチップが目指すもの。

最近何度も取り上げているように大並列のマルチプロセッサ・チップに興味があります*1。マルチプロセッサの何に興味があるかというと、いろいろな意味でとっぴなアーキテクチャーが続々と現れていることです。 これまでのマルチプロセッサというと、完全な形…