この人頭いいなと思ったエピソード

先ほど、ビデオメモリに関する質問に自信まんまんで答えてしまったのですが・・・

よくシスアドにある問題で

「1024*768の解像度で24ビットカラー表示するには少なくともビデオメモリ何MB必要ですか?
回答:
24/3*1024*768=2.359296MB=約2.4MB」

となっているのでそのように計算したんですが、
その後の回答者の方の回答では

「PCはインターレースなので2倍」
ということで2を掛けていました・・・

確かにそうしたほうがつじつまが合うのです。
(そのときにビデオメモリ11MBを超えてしまうため)

では、シスアドの問題および回答はすべて間違っていることになりませんか???

また、あわせてインターレースだと2倍になる、という理由もあわせて教えてください_(._.)_

A 回答 (8件)

 プログレッシブ=ノンインターレース(以下、Ni)です。

PC関係でノンインターレースと言うところを、テレビ関係だとプログレッシブという見たいですね。最近の家庭用ゲーム機は、D2(Xboxは一部でD4まで対応)端子対応で、対応ソフト使用時に、プログレッシブ対応TVにD端子等で接続すれば、Niによるクリアーな画像が楽しめます(参考URLは任天堂ゲームキューブ関連のページです)。

 うちは、ゲーム機-D端子-色差信号→RGB変換器(トランスコーダ)-ミニD-Sub15ピン-PC用モニターという接続で、PCモニターでNiの家庭用ゲーム機の映像を映して遊んでます。640×480相当のNi画像なのでクッキリハッキリ見えますが、短残光のCRTのため、チラツキはかなりあります。

#私は元々、ゲーム関係が得意なのです(^^;

 さて、本題に戻してこの件の結論なのですが、私も気になって色々検索してみましたが、決定的なものは見つけることが出来ませんでした。以下、断定できそうなことをまとめてみると、

1.PCはインターレースで2倍というのは間違いである
(インターレースとは飛び越し走査描画であり、用語辞典などでもそれ以外の意味は書かれていないことから、これは断言できそうな気がします。仮に違う機能があったとしても、それは別の名称で呼ばれるべきでしょう)

2.特定解像度におけるVRAMの最小必要使用量は、水平方向ドット数×垂直方向ドット数×色数のbit数÷8の公式で求められる。
(これについてはtatikaeriさんも書かれていますし、DOS/V POWER REPORTの記事にも明記されているので間違いないでしょう)

 という感じになりますかね。


 不確定なこととしては、特定解像度におけるVRAMの必要量または設定量が、計算で求められる最小必要量と比べ、倍程度と大きくなる傾向にあるが、その理由についてが確定できないということですね。現時点で推察されている理由としては、

1.高速描画のため、2画面分の画像をVRAMに用意して切り替えるため
tatikaeriさんのお話です。

2.ダブルバッファのため
terra5さんのお話です。

3.オーバーレイのため
私の話です(ただし、オーバーレイがDirectXによって実現されているなら、2と同じような意味合いなのかもしれない)。

 の3つが上げられます。2と3については、その機能を使うソフトウェアを実行とする際、必要であるが、通常のWindowsの描画の際には不必要、1については現在のビデオカードのシステムとして常に必要という点で、大きく食い違っていると言えますね。

 1についてはダブルバッファのことを勘違いしているかもしれないというのが、私的推察になりますが、現在のビデオカードがそのような作動をしているのかいないのか、確定的な情報が見つけられなかったため、あくまで予想・想像の範囲内でしかありません。

 ただ予想の論拠として、1の様な機能を持たない、7年前のEDO DRAM搭載ビデオカードが、既に高解像度・Ni描画を実現しており、現在のより高速かつ広いメモリバス幅のビデオカードでは、それがボトルネックになることは想像しがたいという点は、あげられるとは思います。

 ということで、私の知識の範囲では、確定的な結論は導き出せませんでした。1の、2画面高速切り替え描画説を主張されている回答No.1の参考URL先のページの方や、q=732464のjamitofさんにでもお聞き出来れば、論拠となるものが出てくるのかも知れません。

#ちなみに現在のビデオカードのVRAMが大容量化しているのは、
#3Dゲーム等で使うテクスチャの置き場所のためという認識だったのですが、
#回答No.1の参考URL先の内容には、それがなかったのも気になります。

 この件、私も結論が非常に気になります。引き続き情報募集中として、この質問はしばらく閉じず、情報を待ってみてはいかがでしょうか。

#ただ、ここのシステムって、一度、深いページに落ちてしまうと、
#なかなか人目に触れないですから、
#結局、情報は集まらないかも知れないですけど。

参考URL:http://www.nintendo.co.jp/nom/0211_2/21/index.html

この回答への補足

何度もご丁寧に畏れ入ります。

>プログレッシブ=ノンインターレース(以下、Ni)

ありがとうございます。
そう教えていただけるとものすごくわかりやすいです!

それにしても、やはり難しい問題だったようですね・・・

僕としては習ったばかりの知識が、
(つまりシスアドの)
役に立たなさに愕然としていました。
理論はじっせんでつかえないとはよく言いますが、
それではあまりにも意味が無いじゃないか、
というのが質問の発端でした。

それでもとても勉強になりました!
ありがとうございました!

>#ただ、ここのシステムって、一度、深いページに落ちてしまうと、
#なかなか人目に触れないですから、
#結局、情報は集まらないかも知れないですけど。

そうですねー
もう無理かもしれません・・・
もうしばらくしたら閉じようとおもいます。

ありがとうございました

補足日時:2003/12/24 01:30
    • good
    • 0
この回答へのお礼

いったん閉じます。

ありがとうございました。
とても勉強になりました!

お礼日時:2003/12/29 00:22

 まず、私は本当のところが知りたいだけで、誰かを非難する意図等はないことをはじめに書かせてください。

私の書いた内容に間違いがあれば、どうぞご指摘いただければ幸いです。

 "数年前まではインターレースでないと駄目だった"の点について。数年前という区切りがどこに来るかにも拠りますが、手元にあるカノープスのViRGE搭載ビデオカード(多分、1996年辺りの代物)は、ビデオメモリ4MB(メモリの種別は不明)で、フルカラー時は1024×768をノンインターレース(以下、Ni)で、ハイカラー時は1280×1024をNiで描画することが出来ます(インターレースは1600×1200)。

 またビデオメモリの種別についてですが、今、VRAMと言えばビデオメモリを指しますが、確かに昔、VRAMといえば、デュアルポートSRAMのことを指しましたよね(他にもMDRAMとかWRAMとかSGRAMとかの、ビデオチップ向け高速メモリがありましたね。うーん懐かしい。)。

 とは言え、これらの高速なメモリを用いなくても、1996年くらいには、EDO DRAM 4MB搭載のViRGE/DX搭載ビデオカードが、1280×1024をNiにて描画可能でした。当時の自作系ムックによると、これらのビデオカードに使われていたEDO DRAMのアクセス速度は35ns、早いもので30ns程度と、今とは比べ物にならない程、低速です(クロックは掲載されていなかったため不明。今だとDDR SDRAMで4nsとか3nsのものとかが、平気で使われてますよね)。

#ビデオメモリ4MBなので、2画面分のデータは持てないはず
#それでも今となっては低速なメモリで高解像度・Ni描画が可能です

 以上のこととから考えて、数年前まで高解像度のNi描画が不可能だったという話と、現在の高解像度のNi描画のために、2画面分のメモリが必要という話は、私には正しくないように感じられます。もしかしたら、terra5さんの仰っているダブルバッファのことと、勘違いされているような気がするのですが、いかがでしょうか。

 現在の大容量なビデオメモリにおいては、2画面分のメモリを占有したとしても、何の問題もないと思われますので、その様な処理をしているビデオカードもあるかもしれませんが、それは占有しないとNi描画が出来ないからという意味ではないと思います。もしその辺のことを解説しているサイトや雑誌などありましたら、お教えいただけるととてもうれしいです。

 さて、質問者の方の疑問の発端となった話は、http://oshiete1.goo.ne.jp/kotaeru.php3?q=732464のようです。見ると確かに他の回答者の方が、"PCはインタレース表示の為、更に2倍する"と書かれていますね。うーん、どうしてなんだろう。

 以下は想像込みになりますが、1つにはダブルバッファのこと、もう1つはオーバーレイに使われることを想定し、ビデオメモリに余裕がある解像度と色数に、制限していることは考えられないでしょうか(詳しくないのですが、もしかしてオーバーレイは、ダブルバッファにより実現していたりしますか?)。

 ダブルバッファについては、terra5さんの回答を見ていただくとして、グラフィックス機能内蔵チップセットについて、こんなページを見つけました(参考URL参照のこと)。

 チップセット自体は異なりますが、メインメモリからビデオメモリに割り当てる容量の計算方法は、質問者の方と同じ方法に拠っています。ですので、やはり、質問者さんの計算方法は間違っていないと思われます。問題なのは、その後の"オーバーレイを使う場合は、設定した解像度が必要としている量の2倍程度に設定しておくとよいでしょう"と書かれているところですね。

 PCG-FX77/BPは、DVD-Video再生機能はないようですが、プリインストールされている動画編集ソフトや動画再生ソフト、またはその他のソフトの中に、ダブルバッファやオーバーレイ機能を利用するものがあれば、この計算で求めた必要ビデオメモリより、余裕を持たせる必要があるはずです(参考URLによれば2倍程度となり、計算は合いそう?)。

 ダブルバッファやオーバーレイを使用しないのであれば、当然、この解像度でもフルカラーは可能ですが、1400×1050、フルカラーでダブルバッファやオーバーレイをするには、ビデオメモリが足りない。最も使う解像度で、プリインストールアプリケーションが満足に作動しないでは困りますから、妥協としてハイカラーにせざるを得なかった。

 っと、こんなことを想像してみたのですがいかがでしょうか。いずれにしても、"PCはインタレース表示の為、更に2倍する"というのは、間違っているような気がしてしかたありません。しかし、複数の方や個人サイトの方が、主張している以上、何らかの根拠というものがありそうな気はするのですが。

#まいど、長くてスミマセン。

参考URL:http://home.impress.co.jp/magazine/dosvpr/q-a/03 …

この回答への補足

>まいど、長くてスミマセン。

いいえ!
私のいいかげんな知識では、読むだけで大変なのですが(^。^;)

>っと、こんなことを想像してみたのですがいかがでしょうか。いずれにしても、"PCはインタレース表示の為、更に2倍する"というのは、間違っているような気がしてしかたありません。しかし、複数の方や個人サイトの方が、主張している以上、何らかの根拠というものがありそうな気はするのですが。


そうですね・・・
結論は出ないんでしょうか・・・?
それでもインターレースだから2倍、というのは間違いっぽいですね。

ちなみに7年ぐらい前にかったRIVA128が出てきたのでみてみたところすべてNiでした。

補足日時:2003/12/22 21:31
    • good
    • 0

昔の記憶書いてた部分と勘違い部分があったので訂正とお詫びを、



インターレースでは2倍いうのは間違いでした、

現在のビデオカードでは性能が上がっているのでノンインターレースでも高解像度&多色描画が可能でした(数年前まではインターレースでないと駄目だった)、

それとビデオメモリが2画面分必要というのは、
現在のビデオカードは高速動作とコストダウンのため、
入出力が同時におこなえるVRAM(マルチポートDRAM)でなくDDRやSDRAMを使っていて、
描画と読み出しが同時におこなえないので2画面分用意しておいて、
読み書きをかわりばんこにしてデータの停滞を無くすようになっています、
このためVRAMにくらべ2倍のメモリが必要となります、

これらの処理はビデオチップなどがおこなうので、
OS(CPU)からは1画面分のメモリとして管理すればよく、
シスアド問題では「24/3*1024*768=2.359296MB=約2.4MB」で良い事になりますね。

この回答への補足

ありがとうございます!

>入出力が同時におこなえるVRAM(マルチポートDRAM)でなくDDRやSDRAMを使っていて、
描画と読み出しが同時におこなえないので2画面分用意しておいて、
読み書きをかわりばんこにしてデータの停滞を無くすようになっています、


なるほど!!
よくわかりました!

ありがとうございました!

補足日時:2003/12/22 21:28
    • good
    • 0

 気になったので、もう少し調べてみました。

参考URLは三菱の現行機種のCRTのページなのですが、pdfで読める取扱説明書の最後の方にある一覧表の中に、蛍光体は"B22短残光"と記されています。やはり現在のCRTが長残光タイプが主流というのは、考えにくいと思います。

 また、インターレースとノンインターレースと、同じリフレッシュレートで描画した場合、ノンインターレースが1画面を表示したとするならば、インターレースでは、半分(すだれ状に間引かれた1画面)しか描画出来ないことになるはずです。インターレースでは短残光のCRTではフリッカーがが目立つことでしょうし、それを抑えるためには、より高いリフレッシュレートを上げなくてはいけなくなってしまうはず。

 インターレースの意味が、デジタル用語辞典等で記されている通りであるならば、やはり、現在のビデオカードはインターレース表示が標準という話は間違っているように思えてなりません。

 やはりインターレース主流が正しい、あるいは別のい意味や概念で、インターレース・ノンインターレースというものが存在するのであれば、非常に興味深い話です。ぜひ私にも教えていだだければと思います。

参考URL:http://www.nmv.co.jp/mitsubishi/product/rdf193h/ …

この回答への補足

何度もありがとうございます。

>別のい意味や概念で、インターレース・ノンインターレースというものが存在する

なんとなくですが、そうなのかもしれませんね。

補足日時:2003/12/22 21:26
    • good
    • 0

 ほえほえ、いつの間にかPCの主流がインターレースになっていたとは…って、それってホントなんですか?



 今、手元にPC-9801時代のビデオカードの取り説があります。Windows3.1時代の年代物なのですが、この時代で既に1280×1024の解像度をノンインターレースでサポートしています(垂直周波数60Hzまたは70Hz。ただしVRAM4MBのため、この解像度では256色となる)。

 以後、いくつものビデオカードを使用してきましたが、VRAMの増加や性能向上に伴い、高解像度のインターレース表示はなくなり、わざわざノンインターレースを明記する必要もなくなり、取り説や仕様一覧から、ノンインターレースフリッカーフリーなる言葉も消えていったものと認識しておりました。

 おっと、ここでnVIDIAのTNT2を載せたビデオカードを発掘しましたので、ちょっと見てみます。このビデオカードの箱の一覧表には、1920×1200をノンインターレースでサポートしている旨が書かれています(垂直周波数60Hzまたは70~75Hz。フルカラーは60or70Hz、ハイカラーは72or75Hz)。それどころか、インターレース表示については、全く触れられていません。

 CRTは数年前に買った17インチの三菱M2管のものですが、これは短残光タイプの蛍光体を使用しています(取り説に書いてあります)。また、うちではこのモニターに、トランスコーダーを介して、家庭用ゲーム機を接続したりしているのですが、リフレッシュレートが低いノンインターレース表示となるため、当然ながら、かなりちらつきます。

#大昔、仕事先で長残光タイプのCRTを使ったことがありますが、
#もっさりした表示だったのが印象的でよく覚えています。

 さて、私が現在、使用しているビデオカードはnVIDIAのGefoce4 Ti4200 8xで、一世代前のものになりますが、まだ買って一年も経っていません。このカード、数ヶ月前、故障しまして、その際、前述のTNT2のカードでしのいでいたのですが、Ti4200→TNT2に切り替えたときも、修理が終わり、TNT2→Ti4200に切り替えたときも、表示のチラツキ感等は、全く変わりませんでした。

 TNT2のカードはノンインターレース仕様でした。CRTは短残光タイプでした。Gefoce4 Ti4200がインターレース仕様であれば、付け替えた時点でそれと判る差が表示の方に現れることが推察されます。私には、現在のCRTの主流が長残光タイプの蛍光体を使用しているという話も、ビデオカードの出力の主流がインターレースになっているという話も信じがたいのですが。

 インターレースとは、飛び越し走査描画のことで、奇数ラインと偶数ラインを交互に表示して、1枚の画像に見せる方法のことを指すものと記憶していますし、私もNo.2のterra5さんと同じく、それ以外の意味があるという話は初耳です(インターレース表示でちらつきを抑えるという話も初耳です)。シスアドの世界には、別の常識が存在しているのでしょうか。

 ちなみにちょっと古い例ですが、検索したらPC Watchの、こんな記事が引っ掛かりました(参考URLのページ中の"VRAM"の項)。640×480、24bitフルカラー表示に必要なメモリの計算を"640×480×3(24bit)=921,600"として求めており、azicyanさんの求め方と同じ計算方法になっています。

 この記事が書かれてから5年のうちに、PCの常識が変わり、インターレース表示がスタンダードなものになったのなら別ですが、そうでなければazicyanさんの回答は正しいのではないでしょうか?。

#でも仮にインターレースだとしても、倍にはならないような…
#奇数ラインを描くのに必要なVRAMの量は1画面分の半分、
#(描かない偶数ラインのデータは要らないはず)
#偶数ラインを書くのに必要なVRAMの量も1画面分の半分、
#(描かない奇数ラインのデータは要らないはず)
#合計すれば同じ量になるのでは?

#家庭用ゲーム機の場合、ノンインターレース(プログレッシブ)描画では、
#1/60秒で1画面を書き換えるのに対し、
#インターレース場合には1/60秒で奇数ラインを、
#もう1/60秒掛けて偶数ラインを描くので、
#1/60秒当たりに必要とされるデータ量は、
#ノンインターレースの半分になるんじゃなかったかなぁ。
#
#VRAMに余裕がないPlayStation2に、プログレッシブ対応ソフトが少なくて、
#Xboxのほとんどのソフトがプログレッシブ対応というのも、
#確かこの辺が色濃く影響しているという話を聞いたことがあるのだけど。
#(そもそもXboxは、ほとんどPCみたいなものだったりしますし)

参考URL:http://www.watch.impress.co.jp/pc/docs/article/9 …

この回答への補足

御礼が遅くなってしまいました。
申し訳ありません。


>#でも仮にインターレースだとしても、倍にはならないような…
#奇数ラインを描くのに必要なVRAMの量は1画面分の半分、
#(描かない偶数ラインのデータは要らないはず)
#偶数ラインを書くのに必要なVRAMの量も1画面分の半分、
#(描かない奇数ラインのデータは要らないはず)
#合計すれば同じ量になるのでは?



そうなんですよね!!
僕もなんか違和感が合ったのですが、これだとおもいます。
僕も変だとおもうのです。

>プログレッシブ

すいません・・・
つまりプログレッシブはノンインターレースなのでしょうか?

補足日時:2003/12/22 21:21
    • good
    • 0

現在のビデオカードがインターレース表示が標準となっているのは、


画面解像度や発色数が上がり描画命令も高速になっているためインターレース表示ではRAMDACやメモリなどに負担がかかりすぎるため(640x480や800x600程度ならノンインターレースでもOK)、
2画面分のメモリを用意し偶数フィールドと奇数フィールドをそれぞれの領域に描画し、
両方のフィールドを合成させるインターレース表示で動作させてハードウェア的な負担を減らしコストダウンを図っていますね、
今のCRTは長残光タイプの蛍光材を使っているためにインターレース表示をしてもチラツキが出にくいようになっていますし、
液晶の場合は表示させているピクセルは常に点灯させているのでCRTのような順次走査による書き換えとは違うのでチラツキません。

この回答への補足

御礼が遅くなってしまいました。
申し訳ありません。

試験問題では特にインターレースのことは考えなくてよく、実際にはインターレースで2倍必要だということですね。
この問題も(今の技術の)時代にそぐわないのかもしれませんね。

ありがとうございました

補足日時:2003/12/22 21:17
    • good
    • 0

インターレースは、通常TV画像信号のような飛び越し走査による表示をさす意味で使われます。


というか、私はそれ以外の意味で使われるのを初めて見ました。

TVの走査線は525本あって、奇数部,偶数部を半分ずつ交互に表示されますが、これをインターレース表示と呼んでいます。
2回分の表示で初めて1画面が完成するわけです。
人間の目で見る場合は残像が生じますのでこれで問題無いわけです。

パソコンのRGB出力は一回の出力で全走査線を出力しますので、
これをノンインターレース表示と呼んでいます。

パソコンの場合はどちらも必要なサイズは変わりません。
2倍必要なケースはリアルタイムのゲームの画面のような表示場合、表示用の画面と作業用の画面を用意して切り替えて使う場合だろうと思います。
これはダブルバッファと呼んでいます。
これは画面の書き換えがと表示が同時に発生すると画面にちらつきが生じるため,それを防ぐために使われます。
Windowsで言うならGDIの表示はシングルバッファ表示で、
DirectXやOpenGLを使った場合に,ダブルバッファ表示が可能になります。
これは特殊な表示になりますから、最低という条件の場合は特に指定が無い場合は含めないでしょう。

正確な必要容量はハードウェアやらドライバやらにもよるでしょうから、
現実での正確な解答は仕様がないと難しいでしょう。

元の質問はどれかはわかりませんが,インタレースで2倍というのは不適切な回答でしょう。

ASCII24 - アスキー デジタル用語辞典 - インターレース
http://yougo.ascii24.com/gh/01/000187.html

IT用語辞典 e-Words : インターレース
http://e-words.jp/w/E382A4E383B3E382BFE383BCE383 …

参考URL:http://yougo.ascii24.com/gh/01/000187.html

この回答への補足

回答ありがとうございます。

1番の方が教えてくださったURLには
2倍だと書いてありますね・・・
最近のビデオカードはインターレースが主なんだとか・・・
それで2倍だと・・・

>2倍必要なケースはリアルタイムのゲームの画面のような表示場合、表示用の画面と作業用の画面を用意して切り替えて使う場合だろうと思います。
これはダブルバッファと呼んでいます。

このことを考えて2倍なのかもしれませんね。

補足日時:2003/12/18 07:55
    • good
    • 0

シスアド問題では通常のPC画面描画なので「24/3*1024*768=2.359296MB=約2.4MB」で良いと思います、


インターレースやオーバーレイ表示はシスアド検定問題にはふさわしくないんじゃないかな。

参考URL:http://xai.jp/suzu/vram.htm

この回答への補足

回答ありがとうございます・・・

URL見てみました・・・

ちょっと混乱です・・・

補足日時:2003/12/18 07:54
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報