- 1 名前:デフォルトの名無しさん [2005/09/06(火) 17:13:46 ]
- まったり逝きましょう。
ハード寄りの話も大歓迎です。 道具話も楽しくやれるならやってくらさい。 この世界は処理系依存はあたりまえだから、処理系明記するのを忘れないでね! 過去ログ 制御系なら俺に聞いてもいいぜ(7) pc8.2ch.net/test/read.cgi/tech/1109102528/ 制御系なら俺に聞いてもいいぜ(6) fun.kz/test/read.cgi/tech/1099574832/ (新タイプミラー) 制御系なら俺に聞いてもいいぜ(5) fun.kz/test/read.cgi/tech/1079102543/ (新タイプミラー) 制御系なら俺に聞いてもいいぞ(4) pc5.2ch.net/test/read.cgi/tech/1068869894/ (行方不明) 制御系なら俺に聞いてもいいぞ(3) pc2.2ch.net/tech/kako/1059/10594/1059488975.html 制御系なら俺に聞いてもいいぞ(2) pc2.2ch.net/tech/kako/1038/10380/1038094914.html 制御系なら、俺に聞け! pc3.2ch.net/tech/kako/1002/10021/1002176627.html 関連過去ログ ●●●くみこの組み込み相談室●●● pc3.2ch.net/tech/kako/988/988084737.html
- 477 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 00:59:38 ]
- 俺ハードやだけど、ソフト屋にとってポート制御レジスタはどういう構成が
理想なの? >>465 のように3つ(入力・出力・入出力制御)になってるほうがいいの? それとも2つ(入出力値・入出力制御)の方が使い勝手がいいのかな? 俺はとりあえず3つのレジスタ構成で設計してる。(2つだと情報量減るので。) どちらでも手間は同じなので今後の参考に聞きたいな。
- 478 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 01:31:43 ]
- 出力専用と、入力専用でポート分ければいいだけ。
で、ラッチなんかはメモリーのリードライトと同じ要領でやってくれれば何も考えなくて済む。 ただ、キャパシタの問題で、一定時間以上状態を維持しないとハッキリ入出力信号が安定しないとかなら、その旨を仕様に書けば良いよ。
- 479 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 02:06:35 ]
- >>477
開発後期に仕様を変えたりしなければ、或いは仕様に明記されてないノウハウが必要だったりしなければ、 どういう構成になっていてもあんまり困らんな。
- 480 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 05:35:28 ]
- >>476は、「新人哀歌」かな/「探し物は何ですか」かな、どっちだろ
たしかに、>>471みたいなのはハード屋さんがポートを分けてくれるよね。 ある程度はソフトの作りやすさも見通しつくから。
- 481 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 07:43:29 ]
- まあ、入出力を動的に切り替えるというのは普通はやらない
やるとすれば openドレイン的な使い方か で open に設定してる間は ポートを読み返すと 1が読めるから Read-Modify-Writeの時に出力ラッチではなく入力が読まれるタイプだと困るという事だろう PICは入出力関係なく、常にポートを読む M16/H8/SH等は出力に設定してるポートはラッチを、入力に設定してる場合はポートを読む ただ、最近の1チップはRISCが多いから、Read-Modify-Write命令が無いんじゃないかな
- 482 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 08:03:11 ]
- >>478
それは制御系なら可能だろうけど組込系だと 片面基板で なんて事もあるから アートワーク優先のことも多いよ。 ソフト側の都合で好きな順には使えない。
- 483 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 08:20:17 ]
- >>431
たとえば I2Cの SCL/SDAの為に、出力ラッチはL にして 方向レジスタでオープンコレクタを実現するとするよ つまり BSET /BCLR で方向レジスタだけを トグルするわけ。 これをメインループ側で処理してるとする この処理の最中に SCL=H つまり入力ポートにしてる最中に割り込みがかかる で、割り込み処理で、同じポートの別の出力ポートをトグルさせようと BSET/BCLRのような Read-Modify-Writeでポートを操作すると この SCLの出力ラッチがHになってしまう。 で、メイン側で次に SCL=Lににしようと出力ポートにしたら、 出力ラッチがHなのでHが出力されてしまう ------------- この2つだけなら、割り込み側でRead-Modify-Write命令ではなく 読んで ビット操作して、常にSCL/SDAは0にして書き出すという対策でいいけど もう一つ条件が加わると、やっかいなわけよ
- 484 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 12:52:27 ]
- >>480
467は「ちっちゃな頃からちっちゃ」かった彼が歌ってた奴でしょう
- 485 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 15:42:20 ]
- 盗んだコードが走り出す
行く先も分からぬまま
- 486 名前:デフォルトの名無しさん mailto:sage [2006/03/06(月) 03:56:36 ]
- GPLの夜
- 487 名前:デフォルトの名無しさん mailto:sage [2006/03/06(月) 14:48:28 ]
- >>465
ATMELのARMコアMPUで AT91SAM7S というのがあるが そのポート制御レジスタはそんな感じ、というかもっと複雑。 なんでこんなややこしいレジスタ構成にしてるの? と思ったが 465さんの書込でそういう要求があることを知りました。
- 488 名前:デフォルトの名無しさん [2006/03/08(水) 19:25:23 ]
- 質問です。
モータの応答周波数は速くても数百ヘルツなのに なんでインバータ制御などには高速なマイコンが使われるのでしょうか? 相当負荷のかかる計算をしているのですか?
- 489 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 19:49:45 ]
- あたりまえだ。
- 490 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 19:51:02 ]
- のクラッカー
- 491 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 19:54:06 ]
- モータの応答周波数って何ズラ?w
つーか「なんで?」って理由はさまざまでしょそりゃ。
- 492 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 20:09:36 ]
- 役に立たない奴らだな。
暇潰しにゴミレスばら撒かれても迷惑なんで 答えられないなら黙っとけよ。
- 493 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 20:24:46 ]
- 答えでてるじゃん。
- 494 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 14:05:35 ]
- >>490
キャプチュー度
- 495 名前:デフォルトの名無しさん [2006/03/09(木) 19:20:03 ]
- ベクトル制御だろ
- 496 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 20:20:59 ]
- 普通のマイコンがどれだけ遅いか知らないんだろう。
パソコンの処理速度が1000としたら、普通のマイコンは1もないんだよ
- 497 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 20:36:35 ]
- それは言いすぎだ
- 498 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 21:07:15 ]
- 動作周波数だけで比べても750倍だな。別に言いすぎでもないんとちゃう。
3GHz<->4MHz
- 499 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 21:13:40 ]
- 動作周波数だけで比べるな
- 500 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 21:19:35 ]
- 各命令の所要クロックも一々挙げて比べなあかんの?
殺す気か。
- 501 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 22:08:30 ]
- 4MHzって時代錯誤も甚だしいな。
オッサンの頭の中は25年前で止まってるのかねw
- 502 名前:デフォルトの名無しさん [2006/03/09(木) 22:11:22 ]
- 普通モータ制御に使うCPUは
V850とかSH-4とかの32bitRISCで 動作クロックは20〜40Mくらい
- 503 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 22:23:08 ]
- >>502
モータ回すのにSH4が出てくるとわ… えらい豪華な機械だな。
- 504 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 22:23:52 ]
- 普通って何がやねんw
だからモーター制御つったっていろいろあるっての。 つーか今時CPUが直接制御するのがそんなに「普通」とも思えんが。
- 505 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 01:54:51 ]
- なるほど・・・時計の中にはV850やSH-4が入っているのか・・・
- 506 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 01:58:15 ]
- ハァ?なにいってんだこいつ
- 507 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 03:37:44 ]
- 時計にモーターなんざ入ってないっつーのな
- 508 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 04:59:05 ]
- ACサーボモータのサーボアンプなんかの中じゃ、
SH4クラスのCPUつかってるよ。 それくらいの速度じゃないと間に合わんだろ。 転流の制御とか、電流ループの制御周期は100マイクロ秒くらいじゃなかったっけ? 最近は、エンコーダ解像度もかなり高くなってきてるし、 そのほか通信タスクやデータ取得用タスクなんかも走らせなきゃならんだろうし。 数年前見た安川のサーボアンプの中がたしかSH4だたような・・・
- 509 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 05:45:05 ]
- 3MHzの8085まだ使ってます。 615KHzの8bitの製品も今作ってます。
>性能比:命令ごとのクロック数まで見なくても、基本クロックとバス幅と パイプラインとの積ぐらいの比率じゃないでしょうか?
- 510 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 07:44:37 ]
- パソコンのCPUは1クロックで数命令実行する能力がる
またバスは64ビットあり、1ワードは32ビットもある。32bitの加算が1命令で出来る 掛算も1命令で出来る 普通のマイコンがそこらの家電装置の中のマイコンだとすると バスは8とか4bit ワードサイズもそれに同じ、加算するだけで4とか8サイクルかかる。 掛け算はソフトで実現だから100サイクル近くかかる クロックが同じとしたって50倍近い処理能力差がある
- 511 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 07:52:21 ]
- 価格差1000倍なら納得。
- 512 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 07:54:39 ]
- で SH-4 とか DSP は1命令1サイクルに近づけている
SHは命令サイズをバス幅より小さくする事 DSPは命令とデータX,Yでバスを別ける事で それを実現しようとしている。 もちろん命令キャッシュも採用される事が多い さらに掛算を少ない命令サイクルで実現する機能も付いている。 ただし、パソコンのように、掛算が使い易いわけじゃない。 少なくともレイテンシがかかる場合が多い その間に他の命令を実行させる等の工夫が必要になる それでも普通のパソコンのCPUと比べると1〜2桁は処理速度が落ちるのが現状だね
- 513 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 08:00:14 ]
- >>511
今の手に入る8bitマイコンの代表のPICなんかは 200円程度で手にはいる 200*1000=20万円・・・・パソコン一式買っておつりがくる値段だね PICと性能比べたら1万倍以上の性能差があるわけで 例: PIC RAM 512 パソコン512M PIC 4MHz パソコン 2G Hz
- 514 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 10:45:10 ]
- >>508
電流ループの制御もマイコン制御でやっているのかい? シングルプロセッサで通信タスクとかも走らせていたらけっこう難しそう
- 515 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 10:50:25 ]
- もうマイコンなんて使わないですべてペンティアム4いっぱい貼り付けてやればいいじゃないか
適材適所だの値段だの考えるな
- 516 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 10:53:02 ]
- >>508
> 数年前見た安川のサーボアンプの中がたしかSH4だたような・・・ 手元にある安川のサーボアンプの中身を今見てみたら V853 uPD70F3025A-33 だった 安川と言えばSHだと思っていたのでちょっと意外
- 517 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 11:00:06 ]
- >>507
針が回転してるだろ モーターが入って無くてどうやって回るんだよ しねよ
- 518 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 11:21:54 ]
- まあモータと言えばモータか、ステッピングモータの一種だな
でもどっちかいうと単なるソレノイドだが
- 519 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 12:37:57 ]
- 「モーター+ラック&ピニオンでリニアモーターだ」
くらい強引な飢餓す。
- 520 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 12:38:53 ]
- おいおい、ステッピングモータはモーターそのものだろ。
〜といえば、どころじゃないよ。 馬鹿じゃねえのw
- 521 名前:デフォルトの名無しさん [2006/03/10(金) 12:39:44 ]
- ベクトル制御みたいな高速演算が要求されるものは
ハードでやればいいのに マイコンで演算させるメリットって何?
- 522 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 12:40:46 ]
- モーターのスペルはmotorであってrotatorじゃないよw
- 523 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 14:02:03 ]
- >>521
柔軟性、コスト
- 524 名前:名無し募集中。。。 mailto:sage [2006/03/10(金) 14:48:59 ]
- メレックのmcc05にコマンド送るだけでモーターが回るけど?
- 525 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 14:56:39 ]
- メレックのmcc05ってなに?
- 526 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 16:03:06 ]
- >>515
Pentiumは演算は早いだろうが、 割り込みのディレイやジッタが大きかったり、 キャッシュが効いたときと効かなかったときの実行サイクルの差がでかかったり、 チップセット使わないと、外部バスにデバイスつなげるのが困難だたり、 致命的なのは発熱だな。 とマジレスしてみる。
- 527 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 16:45:36 ]
- でも 32bitで内部クロック1GHz 内蔵RAM64K 内蔵フラッシュ 640kbyte で
16pin-DIPソケットなマイコンが100円ショップで売ってたらいいな
- 528 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 19:45:51 ]
- >>526
相対評価と絶対評価の区別がついてないなw それともWindowsだけがx86のネイティブな姿だと激しく勘違いしているか。 >>527 なにが「でも」なのか意味わからんなw
- 529 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 20:14:11 ]
- パッケージの背中が32x128dotの液晶表示器になってて、
32798水晶振動子内蔵で USB2インターフェイス内蔵で簡単にパソコンに繋げて
- 530 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 20:28:09 ]
- うーん。15万ぐらいかな
- 531 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 20:32:55 ]
- >>529
>32798水晶振動子内蔵で そんなもの要らない。
- 532 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 20:40:19 ]
- スマン32768だったよ。
- 533 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 20:50:37 ]
- 32768個のクリスタル?
- 534 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 20:57:33 ]
- いや、Hz タイムベースに使うのと背中の液晶表示機の駆動クロックに使う
消費電流は 32K水晶だけなら単3電池駆動で5年くらいのが欲しい。 そしてPLLで任意倍率のクロックが作れるといいなあ
- 535 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 22:14:50 ]
- 1チップMSX2+でおk
- 536 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 22:25:36 ]
- じゃ背中に 320x240dotのパネルを積んだ PLCC パッケージの MSX2+ で USB マスタでPCから書き込み出来るというのをお願い
- 537 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 22:56:40 ]
- ピッ
- 538 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 23:44:35 ]
- Interface 6月号を買おうよ
なんかついてくるらしいよ
- 539 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 01:24:49 ]
- >>524
> メレックのmcc05にコマンド送るだけでモーターが回るけど? 何かと思ったけどこれか www.melec-inc.com/a1202/a1202f01r2.pdf 1軸のパルスジェネレータか しょぼいな
- 540 名前:名無し募集中。。。 mailto:sage [2006/03/11(土) 01:45:25 ]
- パルスジェネレーターにしては高性能だと思うけど?
- 541 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 02:40:18 ]
- >>540
1軸だから当たり前と言えば当たり前だけど直線補間もないし このクラスのパルスジェネレータはどれも似たり寄ったり 差があるとしたら原点復帰モードが充実してることと絶対値指定ができることだけど これはどちらもソフトで簡単に対処できること FPGAで自分で作ってもどうにかなってしまう 差のつけようのない枯れた分野だね
- 542 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 04:40:26 ]
- >>527みたいなマイコンを\100ショップで売っててもハード屋さんは怖くて誰も使わないと思う。
秋葉で8085買い漁るのに疲れたらしく、MB91F36なる32bit使えるかい?とお客に聞かれた。 その辺に転がってるボードパクってuart端子だけつなげたいらしい。そりゃ使えますともさ。 あまりにもオーバースペックで笑ってしまうけど。トロンOS積まなくちゃ使えないんだよ。 高々4.8KのシリアルI/Oやるのに10倍の規模のソフトになっちゃうし。
- 543 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 04:50:48 ]
- >トロンOS積まなくちゃ使えないんだよ
んなこたぁない。 あと、トロンOSって、具体的に言ってくれよ、B-TRONか?w
- 544 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 05:01:30 ]
- ITRONですがな、もちろん。私以外にも早起きの方がいらっしゃいますね。
いや、もちろん裸でも使えるのは知ってますけど、たいていコンパイラと一緒に押し付けられる。
- 545 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 06:59:37 ]
- この前 ダイソーの100円ショップで ヤニ入りハンダ コテと ハンダ吸取器を見た。 100円じゃなかったけどね
- 546 名前:名無し募集中。。。 mailto:sage [2006/03/11(土) 15:46:25 ]
- >>541
よく知らないんだなってことは判った
- 547 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 16:29:26 ]
- >>546
で、何を知ってるの? チミは
- 548 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 19:22:02 ]
- ハンダ吸い取り器が\100はすごいな。・・あ、\100じゃなかったみたいね。でも安そう。
- 549 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 19:22:46 ]
- 100円なら超欲しいな! ・・・でも100円じゃないならちょっとなぁ・・・
- 550 名前:デフォルトの名無しさん mailto:sage [2006/03/11(土) 19:26:53 ]
- 210円だそうだ
k-tai.impress.co.jp/cda/article/todays_goods/27892.html
- 551 名前:デフォルトの名無しさん mailto:sage [2006/03/16(木) 07:21:57 ]
- 210円ハンダ吸取器は結構使える ポンプ式のも持ってるがすぐ詰まるし吸取り力が今一つ、
さらにヒータが暖まるまでの時間がロスだったので、最近コレばっかり使ってる
- 552 名前:デフォルトの名無しさん mailto:sage [2006/03/17(金) 01:39:43 ]
- 突然すみません。質問なのですが、
よくメモリデバイスの仕様に書かれている、16ビットデバイスとか32ビットデバイス というのはどういう意味なのでしょうか? 16ビットデバイス=16ビット単位でしかアクセスできないデバイス のことだと思っていたのですが、実はバイトでもアクセスできたりして いまいち意味がわかりません。 もしかしてバス幅のこと?
- 553 名前:デフォルトの名無しさん mailto:sage [2006/03/17(金) 03:27:20 ]
- バス幅でいいとおもう。たいていの奴は16/32ならバイトアクセスも可能だけど、
たまに16/32オンリーというのもあるね。そのかわり速いとか。
- 554 名前:552 mailto:sage [2006/03/17(金) 18:11:03 ]
- >>553
レスありがとうございます。 容量4MビットのSRAMのデータシートを読んでみたところ、 2Mワードx16bitと書いてあるものの、データバス幅が16bitになっていることと、 256kx8bitのSRAMではデータバス幅が8bitであることを確認しました。 バス幅で間違いないようですね。 ところで普通、 2Mワードx16bit(容量4Mビット)のデバイスが使用するアドレスの幅(制御ソフトから見えるアドレス空間)は a) 4M(1番地につき1バイト) b) 2M(1番地につき) のどちらなのでしょう? なぜこんなことが疑問なのかというと、 16ビットデバイスに対して奇数番地をアドレスバスで指定したら、 メモリはどう振舞うのかを考えたところ、もしかしたら16ビットデバイスというのは アドレス1番地につき2バイトのデータを保持できるのではないか、と思ったからです。 考え方めちゃくちゃですかね?
- 555 名前:デフォルトの名無しさん mailto:sage [2006/03/17(金) 18:29:58 ]
- >>554
どっちになるかはプロセッサによる。 DSPのようにワード単位にアドレスが割られるものと 汎用CPUのように、アドレスは1byte単位でバイトアクセスフラグが付くタイプがある
- 556 名前:デフォルトの名無しさん [2006/03/18(土) 21:14:15 BE:164012235- ]
- すみません。三菱のシーケンサーでフレーミングエラーって出ます。
フレーミングエラーって何のことですか? どうすれば先に進めますか?教えてください。
- 557 名前:http://www.vector.co.jp/soft/win95/util/se072729.html mailto:http://msdn2.microsoft.com/ja-jp/library/h2k70f3s.aspx [2006/03/18(土) 21:39:25 ]
- TextSS のWindowsXP(Professional)64bit化おながいします
もしくは64bitにネイティブ対応したテキスト置換ソフトありますか? そういや64bitにネイティブ対応している2chブラウザてありましたっけ?
- 558 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 21:41:57 ]
- >>556
そんなの業者に聞いてくれよ。 RS232CならボーレートかSTOPが合ってないんじゃないの?
- 559 名前:デフォルトの名無しさん [2006/03/18(土) 22:10:25 ]
- >>558
それが休みなんでつ。 このままでは帰れません。 どうしたらいいですか?
- 560 名前:デフォルトの名無しさん mailto:sage [2006/03/18(土) 22:17:12 ]
- >フレーミングエラーとは調歩同期(ASYNC)において、ストップビットのあるべき位置に
>ストップビットがなかった(論理0だった)場合に表示されます。フレーミングエラーが >頻繁に表示される場合は、データ長、パリティビットの有無などの設定が間違っている可能性があります。 ボーレート、データ長、パリティ、ストップビット長の設定を確認すること
- 561 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 13:25:14 ]
- >>558
シーケンサの型名も書いてない時点で「ネタ / どあほ」のいずれかだろ。 無視しろ。
- 562 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 13:50:32 ]
- 俺的には>>561のように何も生産的な発言をしない(まあむしろできないと思われるが)
くせに口調だけ尊大な奴こそ無視したいけどなw だいいち、(まあググればわかるようなことではあるが)>>556の質問内容からすれば 具体的な機種名が必要とはちょっと思えないんだが。
- 563 名前:オレモナ〜 mailto:sage [2006/03/19(日) 14:08:28 ]
- > 無視したいけどなw
無視しとけばいいじゃん。 できないのは、厨房だからですか?
- 564 名前:552 mailto:sage [2006/03/19(日) 18:50:19 ]
- >>555
私の意図したのは汎用プロセッサのことなので、 a) 4M(1番地につき1バイト) という認識であっていたのですね。 具体的には(プロセッサがビッグエンディアンの場合) *(unsigned long*)0x8000 = 0xaabbccdd; としたあと、 unsigned char tmp; tmp = *(unsigned char*)0x8001; とするとtmpの中身は0xbbということなんですね。 今まで、メモリが2Mワードx16ビットの場合は、もしかしたら tmpの中身は0xccになるのではないか、と疑っていました。 (1アドレスにつき2バイト保持できるRAMだと思っていた) 自分の理解が正しかったと安心できました(^^) ありがとうございます。
- 565 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 19:04:13 ]
- >>564
なんかこう、実メモリアドレス空間とバス幅とメモリ配置について思いっきり勘違いしている悪寒。 1ビット幅のメモリを使う場合、通常バス幅のメモリを並べる。 8ビット幅のメモリを使う場合、通常バス幅の1/8のメモリを並べる。 以下同様に。 16ビット幅のメモリを使う場合と32ビット幅のメモリを使う場合も同様なので、 仮に0番地のメモリにアクセスしたときにはメモリの最初のワードにアクセスする。 しかし、2番地のメモリにアクセスしたときには前者は2番目のワード、後者は最初のワードにアクセスする点が異なる。 ちなみに、1ビット幅のメモリを使い、0番地にアクセスすると8個のメモリの最初のワードにアクセスすることになるわけだ。 #だからこそDRAMカードはメモリチップがずらっと並ぶわけで。
- 566 名前:オレモナ〜 mailto:sage [2006/03/19(日) 23:01:33 ]
- >>565
> しかし、2番地のメモリにアクセスしたときには前者は > 2番目のワード、後者は最初のワードにアクセスする点 > が異なる。 はぁ? 32bitメモリとか書いてるから、プロセサも最低 32bit 幅だと思うが、2番地のアクセスだと前者 (=16bit メモ リ) でも、(0番地アクセスとは違うメモリチップだけど) 最初のワードがアクセスされると思うけど。 32bit ⇒ 16bit のバスサイジングでもやってるのか?
- 567 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 23:18:36 ]
- >>566
その通り。別のチップの最初のワードだね。
- 568 名前:556と559 [2006/03/19(日) 23:31:38 BE:699782988- ]
- >>556
>>559 です。 すみませんでした。昨日は急いでいて説明が不足してましたが、 実は私の弟が制御の仕事していて現場にネットがないので フレーミングエラーって何か調べて、と珍しく電話がありました. 自分なりにあれこれ検索を続け、ヒットした内容をそれぞれ伝えましたが、 それが役立つ情報かどうか、読んでいる私にはさっぱりわかりませんでした。 検索中、ヒットしたここに辿り着き、皆様に頼らせていただきました. 時々、2ちゃんねらーでしたが、こんなスレがあることもはじめて知りました。 こんな難しいことを話し合っている皆様すごいです。 今、弟に昨日の確認をしたところ、 一応エラーの表示はでるものの、動作しているそうです。 いつも深夜まで残業漬けの弟を、一人暮らしの部屋だけど 早く帰宅させたかった、制御素人の姉でした。 お騒がせし、そして大変お世話になりまして、皆様ありがとうございました。^o^
- 569 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 23:35:54 ]
- まったく解決になってないわけだが。
- 570 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 23:54:41 ]
- >>562
> 何も生産的な発言をしない まさに、>>562 の発言がそうなわけだが w
- 571 名前:デフォルトの名無しさん [2006/03/20(月) 00:17:52 ]
- ハードはつくらないの?
- 572 名前:552 mailto:sage [2006/03/20(月) 01:10:48 ]
- >>565
>>566 >>567 私、まだわかってないみたいですね・・・ 皆さんのアドバイスを元に私なりに整理してみました。 添削していただけると幸いです。 前提条件(簡単化のため) プロセッサがサポートするバイトオーダー: ビッグエンディアン プロセッサが使用可能なデータバス幅 : 16bit プロセッサに接続しているメモリのデータバス幅 : 16bit メモリのスペック:2Mワードx16bit (容量4Mbit) このシステムで使用したいメモリの総容量: 4Mbit この前提条件の場合、プロセッサには1個のメモリが接続される構成となる。(メモリとプロセッサのデータバス幅が同じなので) また、 このメモリの0番地からプロセッサが16bitリードすると、メモリの最初のワードが読み込まれる。 2番地からプロセッサが16bitリードすると、2番目のワードが読み込まれる。 1番地からプロセッサが16bitリードすると、最初の下位ハーフワードと2番目の上位ハーフワードが読み込まれる。 (プロセッサが奇数番地からのワード読み込みをサポートしていたならばの話) さらに unsigned char tmp; *(unsigned long*)0x0000 = 0xaabbccdd; tmp = *(unsigned char*)0x0001; をするとtmpの中身は0xbbということになる。(メモリの最初のワードから読み出される) そして、 この場合、プロセッサが使用可能な物理メモリ空間の大きさは512k(4M / 8) どんなもんでしょうか?
- 573 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 01:15:28 ]
- どうみてもめちゃくちゃです。
本当に(ry
- 574 名前:552 mailto:sage [2006/03/20(月) 01:26:07 ]
- そうですか・・・まだぜんぜんだめですか・・・
どの辺がとくにだめでしょう・・・? (`・ω・´)
- 575 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 01:46:19 ]
- いや、こういっちゃ何だが偉そうに回答している人間の方もよく分かってないと思われるw
もっとシンプルに考えればいいんだよ。 プログラマは普通ハードウェアがどんな実装をされているか、まで考える必要はない。 そのための抽象化でしょ。 1つのメモリアドレスにには1バイトのデータが割り当てられる。 データバスが何ビットだろうと、バイト単位のアクセスがRead-Write-Modifyで 実現されていようが、バスの8本だけを使う方法で実現されていようが、そんなことは無関係に。 ただそれだけのことでしょ。
- 576 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 02:01:35 ]
- >>575
よくわかってないだろお前
- 577 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 07:34:41 ]
- >>572
SRAMにはバイト単位のアクセス許可(16ビットの上位8bitだけ下位8bitだけを有効にする) が付いてる事が多いから、そうだとすると >1番地からプロセッサが16bitリードすると、最初の下位ハーフワードと2番目の上位ハーフワードが読み込まれる。 >(プロセッサが奇数番地からのワード読み込みをサポートしていたならばの話) は可能だけど、 そうじゃない場合には無理だね。 > メモリのスペック:2Mワードx16bit (容量4Mbit) は 容量が32Mbitか 4Mbyteかの間違いか 256Kワードx16bit (容量4Mbit) >この場合、プロセッサが使用可能な物理メモリ空間の大きさは512k(4M / 8) を成立させるには 256Kワードx16bit (容量4Mbit) が正解なのだろう
|

|