タグ

2011年8月1日のブックマーク (10件)

  • DSPのブートプロセス - uzakadeuのブログ

    こんにちはuzakadeuです。 昨日(3/28)は熊城の二の丸公園へ花見にいってきました。いろんなイベントが重なったみたいで、中心部は信じられないくらいの人出で、かなり疲れました。来年から場所を大甲橋に変えようかな。 今回はDSPのブートプロセスについてお話しします。昔の事はあまり記憶に残ってないので、直近で携わったテキサス・インスツルメント社のDSPとDSP/BIOSの話が中心になります。 DSPのブートプロセスはだいたいつぎのようなシーケンスになっています。 誰か(統合チップではCPU、単体チップでは外部ロジック)が必要な準備を行い、それからDSPをリセット状態からリリースします。 リリースされたDSPは特定アドレスから実行を開始します。たいていこのアドレスにはROM(内容をカスタマイズすることも可能)の一部がマッピングされているので、ROM内蔵のプログラムが実行されます。 このR

    DSPのブートプロセス - uzakadeuのブログ
    totttte
    totttte 2011/08/01
  • DSPの割り込み - uzakadeuのブログ

    こんにちはuzakadeuです。 今回はDSPの割り込みについてお話しします。 昔使ったDSPは記憶が曖昧なので、直近で携わったテキサス・インスツルメント社のC64x+の話をします。 割り込みとは、外部非同期イベントに応答してアプリケーションが実行すべき処理、またはそのイベント、またはその仕組みのことです。 非同期つまりいつ割り込みが発生するか完全には予測できないので、関数コールのように予め引数や戻りアドレスを準備することができません。またアプリケーションがどんな処理をしていようが関係なく割り込まれてしまいます*1。このため戻りアドレスを保存/復帰するためにはハードウェアのサポートが必要です。 割り込みコントローラ(INTC)*2には、イベント結合器、割り込みセレクタといった機能があって複雑ですが、INTCがDSP CPUへ入力する割り込みはそんなに難しくはありません。 すなわち 1つのリ

    DSPの割り込み - uzakadeuのブログ
    totttte
    totttte 2011/08/01
  • DSP/BIOSの割り込みディスパッチャー - uzakadeuのブログ

    こんにちはuzakadeuです。 今回はDSP/BIOSの割り込みディスパッチャーについてお話しします。 昔使ったDSPは記憶が曖昧なので、直近で携わったテキサス・インスツルメント社のC64x+の話をします。 前回DSPの割り込み - uzakadeuのブログで割り込みベクタについてお話ししました。 各割り込みベクタ用に確保された領域はけっこう小さい(4〜16命令分くらい)ので、たいていの場合は別に用意したもっと複雑なユーザルーチンへ分岐させます。 このユーザルーチンは各割り込み用に個別に用意してもいいのですが、ユーザルーチンではレジスタコンテキスト保存/復帰、個々の割り込みをdisable/復帰させる、NRP/IRPへ制御を戻す、など共通の処理が多くあります。同じ処理を何度も書くのは時間とプログラムメモリの無駄です。この無駄を省くために、DSP/BIOSがこの共通の処理を含んだ割り込みデ

    DSP/BIOSの割り込みディスパッチャー - uzakadeuのブログ
    totttte
    totttte 2011/08/01
  • タイマー - uzakadeuのブログ

    今回はタイマーについて。 DSP/BIOSのチック TIのDSP/BIOSはチックを持っていてます。低分解能かつ応答が遅くて構わない場合、チックに基づくソフトタイマーを使っていました。ただチックは常に動いて定期的に割り込みを発生させるので、消費電力を増大させる嫌われ者です。チック用のタイマー自体の消費電力は少ないけれど、タイマーが発生する割り込みに反応するためにDSP CPUを含む巨大な電力ドメイン全体が起床し、メモリもアクティブにしなくてはならないから電力を大量に消費します。 対策として、 まずは分解能を犠牲にしてチック間隔を大きくすることで消費電力を低減する。 さらに、デフォルトでチックを止めておき、必要な時にだけチックを再開するようにする。 さらにさらに、割り込み回数を必要最小限に抑制するようにする。 例えば、来5ミリ秒間隔のチックで6チック分の時間が必要な場合、5ミリ秒毎に6回割

    タイマー - uzakadeuのブログ
    totttte
    totttte 2011/08/01
  • DSP/BIOSのスレッドの種類 - uzakadeuのブログ

    こんにちはuzakadeuです。 今回はDSP/BIOSのスレッドの種類についてお話しします。 四種類のプログラム・スレッド DSP/BIOSは四種類のプログラム・スレッドを提供しています。 HWI(ハードウェア割り込み) - DSP/BIOSチックを実現するCLKを含む。 SWI(ソフトウェア割り込み) - ソフトタイマーを提供するPRDを含む。 TSK(タスク) IDL(バックグランド・スレッド) 各プログラム・スレッドのごく一部の特性を下表に比較しました。 特性 HWI SWI TSK IDL スレッド種間の優先順 最高 2番目 3番目 最低 スレッド種内の優先度数 DSP CPUに依存 15 16 1 優先度の動的変更 不可 可能 可能 なし*1 待ち状態の有無 なし なし あり あり*2 使用するスタック システム システム タスク別 専用 HWI(ハードウェア割り込み) ハード

    DSP/BIOSのスレッドの種類 - uzakadeuのブログ
    totttte
    totttte 2011/08/01
  • ロジアナ - uzakadeuのブログ

    こんばんはuzakadeuです。 今回はロジアナ(ロジック・アナライザ)についてお話しします。 文章だけでは分かりにくいので、図を入れられる所は少しずつ改良して行こうと思います。 ファーム開発ではロジアナが大活躍します。ロジアナがないと仕事にならないので、安価な中古品を何台も購入しました。ロジアナへの投資は何十倍ものリターン(経費節減、品質)になって返ってきました。 以降、どんな事にロジアナを使っていたのかを詳しく見て行きます。 クロック周波数の確認 立ち上げ当初は、各種クロック周波数をすべて確認します。また最近はクロック周波数も動的に変更するので、それができているかも確認します。 間違ったクロック周波数でボードを壊すくらいはまだしも、間違ったまま開発を進めてしまうと取り返しがつきません。 観測信号の観測 それなりに設定*1すれば、チップはいろんな観測信号を出力できるようになっています。例

    ロジアナ - uzakadeuのブログ
    totttte
    totttte 2011/08/01
  • 携帯電話端末の中のDSPって何するの? - uzakadeuのブログ

    こんにちはuzakadeuです。 前二回はDSPファーム開発の前夜として二つの仕事の話をしました。 LSI分野のCAEツール開発 - uzakadeuのブログ 携帯基地局の開発 - uzakadeuのブログ 今回は携帯電話端末の中のDSPって何するの?という話をします。 携帯基地局の仕事が終わってから2,3ヶ月JavaとCORBAの仕事を手伝っていたら、新しい仕事の話が持ち込まれました。携帯電話端末の中のDSPのプログラムを作る仕事です。でもよくわかりません... ケータイのDSPって何するの? はじめて携わった機種の開発期間は4ヶ月くらいしかなく、目の前の仕事(外国出張、外国との方との技術的な交渉、チップの調査、コーディング)に懸命だったので、なかなか疑問を考える時間がありません。結局この疑問が解消されたのはずいぶん後になってからでした。 携帯電話端末のDSP(アプリケーションDSP)の

    携帯電話端末の中のDSPって何するの? - uzakadeuのブログ
    totttte
    totttte 2011/08/01
  • 携帯基地局の開発 - uzakadeuのブログ

    こんにちはuzakadeuです。 前回はLSI分野のCAEツール開発 - uzakadeuのブログについてお話ししました。 今回は3G携帯電話の基地局の開発についてお話しします。 たぶん11年くらい前のことです。 3GPPのUMTS(当時はW-CDMAで話が通じました)の基地局のベースバンド部の誤り訂正符号とかの仕事をやっていたはずなのですが、一年も続かなかったので正直なところ詳細は記憶に残っていません。 テキサスインスツルメント社のC6000シリーズというDSPを使いましたが、このDSPはVLIWというちょっと変わった構成をしている以外はごく普通のCPUと同じ様な扱いができました。 ですが、何しろ8並列のVLIWなのでアセンブリ言語でプログラミングするのは大変です。当に効率(速度、メモリ)が必要なところだけアセンブリ言語で書き、ほとんどの処理をC言語で書きました。 C言語でプログラミン

    携帯基地局の開発 - uzakadeuのブログ
    totttte
    totttte 2011/08/01
  • Canvas

    Thanks for signing up! Sorry we're full for now, but you'll be able to start using Canvas when we have more invites available or if one of your Facebook friends already using Canvas invites you. Canvas is currently in closed beta. You’ll have to request an invite to join Canvas. Why Facebook? During the beta period we are using Facebook Connect to validate users and handle invitations. Only your f

    totttte
    totttte 2011/08/01
    4ch創設者が作ったサイトらしい。ベータ
  • AP_Dark8.terminal for Lion を公開しました ||| Apribase

    AP_Dark8.terminal for Lion を公開しました。

    AP_Dark8.terminal for Lion を公開しました ||| Apribase
    totttte
    totttte 2011/08/01