今回はSHA256アクセラレータです。ハッシュ計算用ハードウエアです。セキュリティに配慮したモダーンなマイコンで時々搭載されとる回路です。前回同様、RP2350には搭載されていますがRP2040には不在。それでは寂しいのでハッシュ素人老人が、ATSAMD51のハッシュ計算器と比較してみましたぞ。
Lispと一緒(22) ラズパイPico2でもuLisp、マクロでない者共その2
Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。前回はCommon Lisp上の「マクロ」と異なるuLispでの実装が、実装に関わりなく同様な動作をすることを観察。しかし今回はCommon Lisp上とuLisp上で反応が違うんでないかい、という「元マクロ」どもを観察します。
ぐだぐだ低レベルプログラミング(190)x86(16bit)、即値のMOV操作
前回ようやくx86に悪名高いセグメンテーションに踏み込みました。でもセグメントレジスタへのロード、セーブだけっす。それでもメンドクセー感じがそこはかと。今回はMOV命令、それも即値データのMOVを練習。セグメンテーションなど関係ね~と言いたいところが、やっぱり影を落として?いるのです。16ビットx86は逃げられない。
Pico三昧(46) ラズパイPico2:RP2350、Pico:RP2040、TRNG
今回はTRNG(True Random Number Generator)です。Pico2のRP2350にはTRNGが搭載されとりますが、PicoのRP2040には不在。2チップの比較というとそれでおしまいになってしまいます。それでは寂しいので乱数素人老人が、コマケー話を追加してみましたぞ。大丈夫か?
Lispと一緒(21) ラズパイPico2でもuLisp、マクロでない者共
Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。前回はCommon Lisp上「マクロ」として実装されている「あれやこれ」がuLisp上ではスペシャルフォームなどとして実装されていることを見ました。今回はマクロであったはずのあれやこれの実際の動作を拝見。みかけに違いはないのよ。
“Lispと一緒(21) ラズパイPico2でもuLisp、マクロでない者共” の続きを読む
Pico三昧(45) ラズパイPico2:RP2350、Pico:RP2040、USB比較
今回はUSBです。RP2350のUSBは大まかな機能、性能はRP2040と同等。そしてソフト的にも「上位互換」みたいです。SDK使ってプログラムを書くつもりの「よゐこ」にとっては特に気にするところもないんじゃないでしょうか。知らんけど。しかしUSBの「ハードに近いところ」で修正、改良、機能追加いろいろあるみたい。
“Pico三昧(45) ラズパイPico2:RP2350、Pico:RP2040、USB比較” の続きを読む
Lispと一緒(20) ラズパイPico2でもuLisp、Macroはどこ?
Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。今回はCommon LispとuLispの大きな違いの一つ、マクロについて調べてみます。Lispの中には、関数、マクロ、スペシャルフォームなどあり、その挙動が異なります。しかし、どうもuLispにはマクロはないみたい。
Pico三昧(44) ラズパイPico2:RP2350、Pico:RP2040、ADC比較
今回はADC(アナログ・デジタル・コンバータ)です。今回はRP2040とRP2350の仕様の比較というより「ADC設計の苦闘」の様子を垣間見るの回。よくよく見てみるとPicoのRP2040でもPico2のRP2350でもADCには手こずっている雰囲気が漏れ伝わってまいります。アナログ素人老人は詳しいことは分からんけど。
Lispと一緒(19) ラズパイPico2でもuLisp、list関連関数
Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。今回は巡り巡ってリスト関係の関数に戻ってまいりました。uLispは「マイクロ」なので関数の数は少ないですが、この辺の関数どもの挙動にはCommon LispとuLispの差は見えませぬ。あったら困るか?さっさと練習して次へ。 “Lispと一緒(19) ラズパイPico2でもuLisp、list関連関数” の続きを読む
ぐだぐだ低レベルプログラミング(189)x86(16bit)、セグメントレジスタ操作
前回8086/88, 80186のセグメンテーション(ほぼほぼ80286.386以降のリアルモード相当)についておさらいしたので、今回は「メンドクセー」奴らセグメントレジスタを実際に操作してみます。といっても「読み・書き」するだけなんだけれども。そんな簡単な操作でも一筋縄でいかない感じがほの見えるのであります。
Pico三昧(43) ラズパイPico2:RP2350、Pico:RP2040、SPI比較
シリアル3兄弟「UART、I2C、SPI」の末尾を飾る?今回はSPIです。同期式全二重(半二重のMicrowireプロトコルにも対応)のSPIです。前2者よりも高速化容易。搭載ユニット数は2個、Arm社PrimeCellのIP搭載とRP2040とRP2350の差は無いように見えます。でもま、コマケー差はありーの。 “Pico三昧(43) ラズパイPico2:RP2350、Pico:RP2040、SPI比較” の続きを読む
Lispと一緒(18) ラズパイPico2でもuLisp、配列、array
Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。今回は配列、arrayを練習してみます。今回はCommon LispとuLispの差というより、処理系依存な部分がちょいと見えましたかな。まあ、注意してたらその差は見えないような使い方は十分できそうな気がするけど(個人の感想デス。)
Pico三昧(42) ラズパイPico2:RP2350、Pico:RP2040、I2C比較
前回はUARTでした。今回はI2Cです。今回も前回と同じようなことを書きます。RP2040でもRP2350でも搭載しているユニット数は2個。前回同様に微妙な相違です。その差は前回よりも小さいです。前回はまだRP2040で使えなかった端子がRP2350では使えるとか御利益があったですが、今回はフツーにしてたら何もない? “Pico三昧(42) ラズパイPico2:RP2350、Pico:RP2040、I2C比較” の続きを読む
ぐだぐだ低レベルプログラミング(188)x86(16bit)、セグメンテーションその1
ことさらにMOVなど転送命令を避けて今回に至ります。流石にこの辺で悪名高い x86 のセグメンテーションについて説明しておく必要を認めました。そこで今回はリアルモードのセグメンテーションの図解といたします。まあセグメンテーションといいつつ、そのうちやるつもりのプロテクテッド・モードのそれに比べりゃ可愛いもんだけれども。
“ぐだぐだ低レベルプログラミング(188)x86(16bit)、セグメンテーションその1” の続きを読む