• ベストアンサー

マイコンの1サイクルの処理時間について

周波数8MHzののマイコンで、1命令(1サイクル)の処理時間を計算しています。 某サイトで、以下のような計算式があったのですが、×4している理由が分かりません。 1サイクル実行時間=4/クロック発振子の周波数 1サイクルの実行時間にはかならず4クロック要するのでしょうか? 素人質問で申し訳ありません。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

命令の読み込み、解読、実行にそれぞれ1クロック掛かるからですがこれだけだと3クロック もう一つが何だったのか思い出せなかったので検索してみました 下のぺージの「CPUの基本構造とパイプライン」がわかりやすいので参照してみてください http://www.4gamer.net/specials/softhard/cpu_1-01/cpu_1-01.shtml

NOBU4517
質問者

お礼

とても参考になりました。 有難う御座います。

その他の回答 (2)

  • 86tarou
  • ベストアンサー率40% (5094/12701)
回答No.2

これはCPUによるので何とも言えません。1サイクルで1命令実行出来るものもあれば複数サイクルで実行するのもありますので。また、命令によっても所要サイクルが変わってくることもあります。 これ以上はCPUの型式が不明なので、データシートのハードウェアマニュアルを見てくださいとしか…命令実行サイクルの説明とかも載っていると思いますので。

NOBU4517
質問者

お礼

丁寧にご回答頂き有難う御座いました。

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

1サイクルの実行時間にはかならず何クロックか要します。 ハードウエアの処理に必要な各処理ステップのパルス数です。

NOBU4517
質問者

お礼

丁寧にご回答頂き有難う御座いました。

関連するQ&A

  • マイコンのステート数

    こんばんわ。今、マイコンを勉強しています。 使用しているマイコンはATC-80ZIIです。 マイコンでプログラムを組んで実行した時にかかる時間(実行時間)を計算で求める方法を調べています。実行時間を求める方法はステート数にクロック周期(クロック周波数の逆数)をかけるという事は知っているのですが、各命令に対してかかるステート数がわかりません。例えば00HをAレジスタに転送する場合、(LD A,00H)のステート数は7らしいです。本に載っていると思って調べてみたんですが見つからなかったのでここに質問しました。どこかに表とかに一覧で載っていないでしょうか? よろしくお願いします。

  • 命令の実行時間について

    「命令の実行時間=クロックサイクル時間×CPI」とあります。 で、クロックサイクル時間が「10ナノ」秒で、 「CPI」が「5」の機械語命令は、1つの命令を実行する為に、 「=10ナノ秒/クロックサイクル数×5クロックサイクル数/命令」とあります。 上記の計算式を使えば、 クロックサイクル数が「10ナノ」秒で「CPI」が「5」なので、 1つの命令を実行するのに「50ナノ」秒が必要なのは分かりますが、 上記の式の中にある、「/クロックサイクル数」・「/命令」とは 何を意味しているのでしょうか。 単位分数方式として、下記が記載されていました。 「10(ナノ秒/クロックサイクル数)×5(クロックサイクル数/命令)=50(ナノ秒/命令)」 お手数ですが、分かる方おられましたら、ご教授お願いします。 出来ましたら、詳しく解説して頂けると幸いです。 以上、よろしくお願い致します。

  • マイコンのクロックを測定する回路について

    マイコンのクロックを16MHzの水晶振動子で与えています。 この周波数を測定する回路を作るのですが、水晶の両端から信号を取り出そうとすると、普通のバッファではクロックに影響を与えてしまい、マイコンが誤動作することがあると聞きました。 マイコンに影響を与えないで、クロック周波数を見るのにはどんなインタフェースでクロック端子に当たればいいのでしょうか?

  • クロック周波数が1GHzの処理装置がある。この処理装置の命令種別が、表

    クロック周波数が1GHzの処理装置がある。この処理装置の命令種別が、表に示す2つからなりたっているとき、処理能力は約何MIPSか。 命令種別 実行時間「クロック」 実行頻度「%」 命令1 10 60 命令2 5 40 解き方はよくわからなく困っております。 助けてくださいm(__)m ちなみに1GHzは数にあらわすといくつかも分かりにくいです。

  • マイクロプロセッサの授業なんですが、、

    マイクロプロセッサの授業の課題で分からないので助けて下さい! M1 と M2 の 二つの別のマシンの性能を評価したい 。両マシンに関して下記の測定結果が得られている。 プログラム1のM1上での実行時間は10秒、M2のそれは5秒。プログラム1のM1上で実行された命令回数は200*10^6、 M2のそれは160*10^6。 マシン M1 のクロック周波数は 200 MHz、マシン M2 のクロック周波数は 300 MHz であるとする。これらのデータを使用して、両方のマシンにおけるプログラム 1 の命令当たりのクロック・サイクル数 (CPI) を求めよ。 また、クロック周波数では M2 は M1 の 1.5 倍の性能であるが、プログラム 1 の実行時間で判断すると M2 は M1 の 2 倍の性能である。この違いは何に依るか。 クロック・サイクル数 (CPI)はどうにか求まったんですが、(M1は2.5ですよね?) 違いとやらはさっぱりです、、助けて下さい!

  • マイコンの処理と心電図について

     最近、ホルター心電図をとった時に思いついたのですが、携帯型の心電計では解析処理をしていませんが、これを低消費電力のマイコンで処理した場合どれくらいの時間がかかるのか気になり調べています。  ですが、解析処理(スカラのみでも構わない)の時に16ビットマイコンがどれくらいの情報を処理しているのかが分からず、何サイクル必要なのかがわからないでいます。  仮定してるのは、 ―10秒ほどの心電図を電極12で観測し、情報を一時的にメモリなどに格納し、処理用のマイコンをそのあとに起動し波形に異常が見られないか解析をする。 ―解析方式は、正常な時と波形のずれが一定値を超えた時に警告を出す形にしたいです。 ―使用するマイコンは、MSP430L092などの低消費電力マイコン(おおよそクロックは1MHz)  としています。  ですが、実際にどれくらいの情報を処理しているのかや、処理時間がわからずどのように改善すればいいのかが分からずにいます。    誰か、教えていただけないでしょうか。  これに、GPS等の位置情報の処理の時間か処理すべきで多量を教えていただければ嬉しいです。

  • 基本情報処理技術者 H20 春 問19

    クロック周波数が1GHz の CPU がある。 この CPU の命令種別が,表に示す二つから成っているとき,処理能力は約何 MIPS か. 命令種別 実行時間(クロック) 実行速度(%) 命令1 10 60 命令2 5 40 答え:125MIPS 解説 この処理装置では、1命令を実行するクロック数は、 10 × 0.6 +5× 0.4=8 となる。 1秒間に実行できる平均命令数は、 10^9 ÷8=125 125×10^6 =125 となる。 とのことですが、 10^9 ÷8=125は一体何を求めいているのでしょうか? この式は、クロック周期数÷命令1、2のクロック数という式ですが・・・ 結局、いつも、1秒間に何回とかいうところを求めるところで、すべて間違ってしまいます。 色々分数にしているのは、わかるのですが・・・・ どなたかご教授願います。 しかし、情報処理の試験後、PCを投げつけぶっ壊してから、PCを買い換えましたが、 キーボードが微妙に変わって文字が打ちにくいな~。 意図していない文字まで売ってしまう。

  • dsPICとPIC24の処理速度について

    PIC12とPIC16やAVR(ATmega88など)を使ってこれらのマイコンには慣れてきたところなのですが、今回作成するものが処理速度が速いマイコンが必要で、AVRライタを自作したときに対応しているという事だったのでなんとなく買っておいた、dsPIC33FJ32GP202 か PIC24HJ12GP202 を使ってみようかと思うのですが、これらのマイコンは未経験で全くの素人です。 そこで質問なのですが、PICの場合4クロックで1命令というのはこれらのマイコンもそうなのでしょうか?・・・だとすると、これらのマイコンは40MHzとのことですが、実質10MHz?・・・AVRを20MHzで使った方が処理速度が速いという事なのでしょうか? また、上記が違い1クロックで1命令で、これらのマイコンの方がAVRより速い場合、dsPIC33とPIC24HJはどちらの方が速いのでしょうか?同クリスタルを使えば同じですか? 最後に、dsPICのdspとは何の機能なのでしょうか? 以上3点よろしくお願いします。

  • クロック周波数の計算問題について

    クロック周波数に関する問題を解こうとしているのですが、 公式がどうも覚えづらくて仕方ないのですが・・・ 何か良い解き方はないものでしょうか? 【問題】基本情報処理 平成19年 秋  「 1GHzで動作するCPUがある。このCPUは,機械語の1命令を平均0.8クロックで実行できることが分かっている。このCPUは1秒間に約何万命令実行できるか。 」 【公式】   (1) 1クロックの時間 = 1÷クロック周波数   (2) 1命令の実行時間 = 1命令の実行に必要なクロック数×1クロックの時間   (3) 1秒間の命令実行回数 = 1÷1命令の実行時間(命令) --------------------------------------------------------------- 【考え】  公式より、   (3)の答えを出したければ (2)が必要であり   (2)の答えを出したければ (1)が必要である。     であるから、先に(1)を求め (2)を求め (3)を最終的に求める。  という風に解いてはいるのですが、教科書を見ながらだと解ける状態ですが、いざ時間を空けると公式を忘れてしまって、この手の問題が解けないことがあり、困っています。   何か逆算みたいで、覚えづらいので一度覚えてもすぐに忘れしまうのですが・・・     この問題をとく方法としては、一旦、解き方の流れを把握して、求め方を覚えるしかないでしょうか? 【ふとした疑問】   この問題をしてふと思ったのですが、クロック周波数の計算事態は、実際にどこでどういう場面で使われるものなのでしょうか? 何だか、ただ問題を解いているようで、ちょっとイメージが浮いている感じがしているのです・・・(汗)   

  • 情報処理の問題

    あるマイクロプロセッサの1クロックに要する時間は30ナノ秒であるとき、このマイクロプロセッサのクロック周波数は何メガヘルツでしょうか? 答えだけでなく、どうしてそう言えるのかが知りたいので、計算プロセスもお願いします。