Pico三昧(29) ラズパイPico2:RP2350、Boot ROMとBoot RAM

Joseph Halfmoon

前回のOTPはPico2で追加されたメモリでした。一部はユーザ使用も可能かと。一方、今回眺めてみるROM(ブートROM)はPicoの中の人がプログラムしたマスクROMみたいです。ユーザが書き変えることは出来ません。しかしその機能に毎度お世話になっておる、と。そしてPico2では専用RAMが追加されているみたい。 “Pico三昧(29) ラズパイPico2:RP2350、Boot ROMとBoot RAM” の続きを読む

Lispと一緒(4) ラズパイPico2でもuLisp、吉例Lチカ

blinkRunning
Joseph Halfmoon

ラズパイPico2をターゲットに、別シリーズにて 「C/C++ SDK」「Arduino」「MicroPython」の3種の開発環境にて吉例Lチカ。Pico2でもソフトが作れる雰囲気。しかし、心の底で引っかかっていたものがあります。組み込み用のLisp処理系、uLispです。今回は処理系インストールして吉例Lチカまで。
“Lispと一緒(4) ラズパイPico2でもuLisp、吉例Lチカ” の続きを読む

Pico三昧(28) ラズパイPico2:RP2350、OTP、ワンタイムプログラミング記憶

Joseph Halfmoon

ラズパイPico2搭載のRP2350のスペックをPicoのRP2040と比較してます。前回RP2350の「デュアルコアがまたデュアル」な制御でOTPというものが登場しました。ワンタイム・プログラミング・ストレージ。これはRP2040には存在せず、RP2350で登場したものです。今回はOTPについてざっと調べてみます。

“Pico三昧(28) ラズパイPico2:RP2350、OTP、ワンタイムプログラミング記憶” の続きを読む

ぐだぐだ低レベルプログラミング(184)x86(16bit)、シフト、ローテイト(86のね)

x86SFTROTfuncs
Joseph Halfmoon

前回は、MUL(掛け算)命令。今回はレジスタやメモリの中のビットをシフトしたりローテイトしたりする命令について調査。全8種類(実際は7種類)もあり。「フツーの」RISCはこの系統の命令種類をこれほどもってません。それにキャリーフラグが影響うけること多いなど動作もクセ強。御先祖の8ビットの血統を色濃く受け継いでおると。
“ぐだぐだ低レベルプログラミング(184)x86(16bit)、シフト、ローテイト(86のね)” の続きを読む

Pico三昧(27) ラズパイPico2:RP2350、Pico:RP2040との仕様比較3

ProcessorSubsystem
Joseph Halfmoon

前回までに、ラズパイPico2搭載のRP2350とPico搭載のRP2040の電源、クロックなどの比較を行いました。いよいよチップの内部です。最初は「プロセッサ・サブシステム」部分。PicoのRP2040はデュアルArmコア、RP2350ではデュアルArm+デュアルRISC-Vだと。でも実は構造、かなり似てました。
“Pico三昧(27) ラズパイPico2:RP2350、Pico:RP2040との仕様比較3” の続きを読む

Pico三昧(26) ラズパイPico2:RP2350、Pico:RP2040との仕様比較2

PicoPico2Table2
Joseph Halfmoon

前回はラズパイPico2搭載のRP2350とPico搭載のRP2040の電源、クロック端子などを中心に比較してみました。今回は残りの端子を比べてみます。しかし調べているうちにRP2354なる型番のチップも存在(現物を見たわけでないけれども)することが分かりました。パッケージ内部にFlashをスタックした版みたい。

“Pico三昧(26) ラズパイPico2:RP2350、Pico:RP2040との仕様比較2” の続きを読む

Pico三昧(25) ラズパイPico2:RP2350、Pico:RP2040との仕様比較1

PicoPico2Table1u
Joseph Halfmoon

過去回(第21回)でラズパイPico2搭載のRP2350マイクロコントローラのデータシート、PicoのときのRP2040のそれに比べて2倍以上のページ数(1346p)があると愕然としました。愕然としてばかりもいられないので、少しづつ読み進めていきたいと思います。RP2040と比べながらね。今回は電源、クロック端子など。

“Pico三昧(25) ラズパイPico2:RP2350、Pico:RP2040との仕様比較1” の続きを読む

Pico三昧(24) ラズパイPico2、MicroPythonで吉例Lチカ

Pico2MicroPython
Joseph Halfmoon

前々回はC/C++ SDK、前回はArduino IDEを使いラズパイPico2上で吉例Lチカ。今回はMicroPythonです。Pico2用のバイナリ(まだPreview版ですが)が既にMicroPythonの公式で公開されてます。書き込めば動きます。Pico用のMicroPythonソースそのままで吉例LチカOK。

“Pico三昧(24) ラズパイPico2、MicroPythonで吉例Lチカ” の続きを読む

ソフトな忘却力(65) FreeDOS、OpenWatcom FORTRAN、77だぜ。

hellof77src
Joseph Halfmoon

前回までTurbo Pascalの系譜を現代に継ぐ?Free Pascalを触ってきました。今回からは「大文字で綴らないといられない」FORTRANです。近代的なFortranではなく固定フォーマットの77ね。「灰の中から不死鳥のごとく蘇った」らしいOpenWatcomの逸品。とりあえずHello Worldからだな。

“ソフトな忘却力(65) FreeDOS、OpenWatcom FORTRAN、77だぜ。” の続きを読む

ぐだぐだ低レベルプログラミング(183)x86(16bit)、MULのオペランドは1個?

MULreg
Joseph Halfmoon

前回はADD、SUBなどの算術演算命令、AND、ORなどの論理演算命令8種が「ほぼほぼ」以下同文ということを確認しました。でも算術演算といえば加減乗除というくらいで、乗除はどうなってんの?そこで今回は乗算命令MULを見ていきます。「何かと何かを掛ける」命令のハズなのに、アセンブラのオペランドは1個だけ。なして?

“ぐだぐだ低レベルプログラミング(183)x86(16bit)、MULのオペランドは1個?” の続きを読む

Pico三昧(23) Raspberry Pico 2、Arduino IDEで吉例Lチカ

ArduinoBoard2
Joseph Halfmoon

前回はラズパイ財団のC/C++ SDKを使ってPico2上での吉例Lチカ実施。ついてはSDKのバージョンアップが必要でした。今回はArduino IDEにてPico2の吉例Lチカを実施。Winddows11機上にインストールしてあるArduino IDE 2.3.2利用デス。ここでもボードマネージャの更新必要でした。

“Pico三昧(23) Raspberry Pico 2、Arduino IDEで吉例Lチカ” の続きを読む

Pico三昧(22) Raspberry Pico 2、C/C++ SDKで吉例Lチカ

Pico2_Blink
Joseph Halfmoon

前回、Raspberry Pi Pico 2を受領したのに、一時寝かせてしまいました。老眼の目にはピンヘッダのハンダ付けが辛い、さらにPico 2用にソフトウエアのアップデートがメンドクセーです。まあ、折角手に入れたボードに火も入れずに打っちゃっておくのも気が咎めるので、なんとか吉例Lチカやってみましたぞ。

“Pico三昧(22) Raspberry Pico 2、C/C++ SDKで吉例Lチカ” の続きを読む

Pico三昧(21) Raspberry Pico 2 着弾、Arm M33とRISC-V

Pico2
Joseph Halfmoon

久しぶりにラズパイPicoです。辺境の老人のもとにも「Pico 2」やってまいりました。文明開化。前のPicoに搭載されていたRP2040は、デュアルコアのArmを搭載してましたが、コアはお手頃なやつでした。しかし今回Pico 2は、デュアルArm M33だけではなく、デュアルRISC-Vも搭載とな。どうなってるんだ?
“Pico三昧(21) Raspberry Pico 2 着弾、Arm M33とRISC-V” の続きを読む

ぐだぐだ低レベルプログラミング(182)x86(16bit)、ADD以下同文?微妙に非対称?

8086ADCopcode
Joseph Halfmoon

前回、x86の16ビット命令セットからADD命令を練習。実はADDが分かれば、ADC、AND、XOR、OR、SBB、SUB、CMPの残り7命令も「ほぼほぼ以下同文」てことで理解できます。でも「ほぼほぼ」って何だ?そこで、この辺でCISCらしいx86のオペコードエンコーディングを復習。ほんとメンドクセーんだが、これ。 “ぐだぐだ低レベルプログラミング(182)x86(16bit)、ADD以下同文?微妙に非対称?” の続きを読む