「2」ではなく「ビット」ごとに4つの状態があると、ストレージ容量が2倍になりますか


35

素朴ではありますが、かなり簡単な基本的な質問:

2ではなく「ビット」ごとに4つの状態があると、ストレージ容量が2倍になりますか?明確でない場合は、2つの値(ベース2:0、1)だけを表すのではなく、すべての「ストレージ構造」が4つの値(ベース4:0、1、2、3 )。


4
複数のレベルを保存するにはいくらかコストがかかるため、2倍のストレージスペースを意味することはわかりません。
エリックエイド

13
多くのフラッシュメモリで使用されているMulti-Level Cellを参照してください。現在、トリプルレベルセル、つまり物理セルあたり3ビットのデータに移行しています。
どこかの誰か

52
「ビット」は2つの状態を持つものとして定義されるため、4つの状態を持つストレージセルは定義ごとに2ビットを格納します。
ジャックB

24
@JacquesBは技術的には正しい(最高の種類)が、質問者の意図とは明らかに異なります。
メタファイト

11
4つの状態を持つ1つの「ビット」が、それぞれ2つの状態を持つ2つの「ビット」と同じくらい太い場合、ストレージスペースは同じです。
-mouviciel

回答:


105

あなたが探している言葉は「ビット」ではなく「シンボル」です。「シンボル」は、ハードウェア信号(電圧や磁気パターンなど)を論理ビットにマッピングするプロセスを説明するために使用される単語です。シンボルに4つの状態がある場合、2ビットの情報をエンコードできます。

もちろん、その引数内のシンボルのリソース使用量については何も言っていません。シンボルをワイヤに沿って電圧として送信する場合、シンボルごとの状態の数を増やすと、さまざまなシンボルがより似たように見えます。0〜5Vのワイヤと、シンボルごとに2つの状態(1ビット)がある場合、2つの状態は0Vと5Vで、各シンボル間に5Vがあります。同じワイヤを持っているが、シンボルごとに4つの状態(2ビット)をエンコードする場合、状態は0V、1.66V、3.33V、および5Vです。それは各シンボル間で1.66Vです。ノイズが信号を破損しやすくなりました。

これらに関連する法則があります。これはシャノンの法則として知られ、帯域幅(ビット単位)を回線上のノイズが原因で発生するエラー率に関連付けます。ワイヤを介して詰め込むことができるビット数には制限があることがわかります。より多くのシンボルを使用すると、より多くのエラーが発生し、より多くのエラー修正が必要になります。

この手法は実際に使用します。デジタルテレビは、64状態のQAM-64を使用します(したがって、シンボルあたり6ビット)。イーサネットは4つの電圧レベルを使用するため、シンボルごとに2ビットです。

編集:私は、ストレージよりもビット伝送レートを使用しました。これは、伝送中により多くの状態のシンボルが表示されるのが一般的であるため、ストーリーをより明確にするためです。特にストレージとストレージのみを確認したい場合は、誰かがコメントで言及したように、フラッシュメモリ内のマルチレベルセルを確認できます。このようなメモリはまったく同じアプローチを使用し、3ビットをコンデンサの16の異なる充電レベルとして保存します。(以上!)


1
コメントは詳細なディスカッション用ではありません。この会話はチャットに移動さました
maple_shaft

イーサネットのため、この答えは完全に間違っています。こちらをご覧ください -通常の100Base-Tには3レベルのMLT3があり、1000Base-Tには5レベルのPAM5があり、10GBase-Tには16レベルのPAM16があります。私が知っている、またはどこでも見つけることができる4つのレベルを持つイーサネットのバージョンはありません。@CortAmmonは、ウィキペディアでイーサネットの4つの電圧レベルをどこで見つけましたか?私はそれを掘り下げて、それがどこから来たのかを確認するのはうれしいです。
vaxquis

21

1つのクォータナリーメモリセルは、2つのバイナリメモリセルとまったく同じ情報を格納できます。

Quaternary Binary
0          00
1          01
2          10
3          11

したがって、メモリセルの数が同じでも、それらが4進数の場合、2倍のメモリがあります。しかし、このクワッドセルがチップ上で2倍のスペースを取る場合、メリットはありません。

または、1ギガクワッドの4次ストレージがある場合、各クワッドは2ビットで表現できるため、2ギガビットの通常のバイナリメモリと同じくらいの情報を格納できます。


ある意味では、このすべての行は学術的な関心だけです。メモリチップは、たとえば2 ^ 32状態のセルを格納すると考えることができます。これらのセルから1ビットをフェッチすることはできず、常に完全な単語を取得できます。そして、将来、誰かがその状態を2状態セルよりも4状態の物理セルに効率的に保存する方法を考え出した場合、それは使用されますが、メモリチップの外側からは見えず、それでも処理されますフルメモリワードのみ。たとえば、2 ^ 32の異なる状態を持つことができます。


1
「1つのクォータナリメモリセルは2つのバイナリメモリセルとまったく同じ量の情報を格納できます」が、2つのベース4の数値は2つのベース2の値の4倍を保持できます。
ジミージェームズ

1
@JimmyJames可能な状態の4倍は、ストレージの4倍と同じではありません。リチャードダンの答えの下で会話を参照してください。
ショーンバートン

2
私にとっては、この回答への明白なフォローアップの質問は、「まあ... クワッド細胞は、チップ上の多くのスペースとして二回取ります?」。
ダニエルワーグナー

5
言い換えると、考えられる状態の4倍は、情報の4倍と同じではありません。
ショーンバートン

1
@JimmyJamesそれは矛盾です。2クワッドセルは4バイナリセルに相当します。つまり、4つのバイナリセルは、2倍のセルであるにもかかわらず、2つのバイナリセルの4倍の情報を格納すると言っています。少なくとも、情報を「ビット」(またはバイト、テラバイト)として計算する場合、あなたは間違っています。
ハイド

9

基本的な理論では、はい。実際には、いや-実際にはデータをビット単位で(HDDに)保存しないためです。Cort Ammonは、データ送信の問題を非常によくカバーしています。RAM、キャッシュ、SSDはデータをビットとして保存しますが、HDDは物理的な素材の性質と、より多くのデータを詰めようとする取り組みにより異なります。ほとんどのデータはまだHDDに保存されているので、それらに注目します。私はあなたがほとんどの情報源から見つける説明をはるかに超えて行きますが、できる限り情報源を引用しようとします。これらの情報源は、インターネットの古代の深さから掘り出さなければなりません。なぜなら、それは-かなりの範囲で-本当に忘れられた知識だからです。

まず、ハードドライブは、ドライブプラッタの表面に磁場を使用して情報を保存します。ドライブヘッドは、磁場の変化から磁束を感知することでこれらを読み取ります。これは、磁場の実際の方向と強さよりも測定がはるかに簡単です。しかし、フィールドが同じセグメントの行の50である場合、実際には50があったとはカウントできません-最初のセグメントを読み取るときにフラックススパイクを読み取り、その後しばらくフラックスがなく、時間を追跡できませんフィールドが50セグメントで変更されていないことを確認するのに十分な精度。

そのため、基本的な(単純化された)モデルは、ビットを一対の磁場として保存することです。最初は常に前のセグメントからのスイッチであり、2番目は1を表すフリップ、または0を表すフリップなしです。したがって、0はFN(フリップヌル)であり、1はFF(フリップフリップ)です。ドライブのタイミングは、セグメント内の1つの磁束スパイクと2つの磁束スパイクの違いを認識するのに十分正確です。この形式は周波数変調と呼ばれます。したがって、これは明確な信号を提供しますが、それはメモリのすべてのビットがドライブ上に2つのスペースを必要とすることを意味します-それは非常に非効率的です。したがって、実際にはこの最も基本的な形式のエンコーディングを備えたハードドライブはありません。代わりに、単純な圧縮トリックを使用しました。最も単純なのは修正された周波数変調です。これは、0の前に別の0が追加されている場合にのみ追加の磁気フリップが使用されるようにパターンを変更します。これにより、エンジニアはほぼ2倍のデータを同じスペースに詰め込むことができるため、最初のHDDで使用され、フロッピーディスクのフォーマットになります。その後、ランレングスリミテッドと呼ばれるより高度なシステムが同様の一般的なアイデアで開発されましたが、はるかに複雑になり、複数の実装があるため、ここでは説明しません。

しかし、今日ではそのようなシステムは使用していません。代わりに、部分応答、最尤法(PRML)と呼ばれるシステムを使用します。PRMLは、ヘッドが長さを読み取って磁気サンプルを収集することを要求し、次にそれを保存されたサンプルの参照セットと比較して、どれが最も一致するかを判断します。磁束スパイクの概念全体を無視し、代わりにパターンマッチングを使用します(私は単純化しすぎていますが、単純化しすぎても価値があります)。パターンはビットのセットに対応します。ノイズフィルターおよびその他の技術を使用して、潜在的なエラーを除去します。複雑な波形と考えるのが最善であり、HDDは各波形をビットのセットに変換する方法を知っています。この意味で、データは実際にはデジタル形式よりもアナログ形式で保存されます。

これに関する最良のガイドはhttp://www.pcguide.com/ref/hdd/geom/data.htmにあり(すべてを読むには[次へ]ボタンを数回押してください)、他にもいくつかのソースがあります-主に誰も知る理由がないというコンピュータ知識の巨大なリポジトリを作成した人々。まともな追加ソース(これは良いが、私が知る限りでは100%完全ではない)は、http://www.tomshardware.com/reviews/hard-drive-magnetic-storage-hdd,3005-6.htmlにあります。

TL; DR:ハードドライブディスクは、1や0などの形式でデータを保存しません。代わりに、複雑な信号処理を使用して、信号を可能な限り最小のスペースに詰め込み、読み取り時にデコードします。したがって、それらは本当に基本に依存しません。

ある時点で、ベース4ストレージがSSDまたはRAMで試行されたとしても驚かないでしょう。それはすべて、材料の物理学と化学に依存します。エンジニアと科学者は、これらの材料を可能な限りプッシュし、最良の結果が得られるあらゆるルートを追求します。


ストレージの概念を議論する気になりますか?シンボルを連続ではなく座標平面に基づいて格納する場合、座標位置に基づいて追加のビットを格納し、他のビットに相対的な位置に格納できるように思えます。chat.stackexchange.com/rooms/66911/vizs-discussion-2
Viziionary

Manchester Codingは磁気テープ用に開発され、Phase Shift Keyingはラジオ用に開発されました。あなたが言っていることに似たアイデア。

それについては知りませんでしたが、実際には驚きもしませんでした。
ウォルフラット

SSDのベース4ストレージはMLCと呼ばれます。
user253751

6

はい、より多くの状態があると、ストレージの各「セル」またはデータ伝送ライン上の各シンボルがより多くの情報を運ぶことができます。

しかし、無料のランチはありません。これらの州を実際に区別できる必要があります。バイナリロジックゲートを構築するのは簡単であり、3つ以上のロジックレベルを区別、処理、および再生成するゲートの構築ははるかに困難であることがわかりました。

そして、減衰信号の問題があります。2レベルのシステムでは、最悪の場合の減衰で動作するようにしきい値を単純に設計できます。大幅な減衰が予想される4ステートシステムでは、最悪の場合だけでなく、システムの特定の減衰にしきい値を適応させる必要があります-ケース減衰。そのため、実際には、通信システムに減衰測定システムを追加する必要があります。

すべての余分な複雑さは状況があると述べたことDOESメイク感覚で。現在、多くのSSDはフラッシュセルごとに2レベル以上(MLCまたはTLCとして知られています)を使用しています。最新の高速通信プロトコルもほぼ常にマルチレベルエンコーディングを使用しています。


Ternaryはそれほど難しくありません。コンピューターはそれを使用して構築されています。

1
確かに、同じ記号の複数のレベルを区別する必要はなく、「ポジティブ」、「ネガティブ」、「オフ」を区別するだけでよいため、3項は4項よりも簡単です。しかし、バイナリよりもまだ難しいです。
ピーターグリーン

2
ラジオによるモールス信号の興味深い点は、信号がオンかオフかです。非オン条件は情報ではありません。したがって、情報を伝えるのはオンとオフの交互ではなく、オンパルスの長さと間隔です。私が知っている他の現代の表現システムはこのように機能しません。

1
バーコード?バーとスペースで数字を区切り、幅で値を決定します。
ソプリ

@Sopuliは大丈夫です。その場合、バーコードの暗い部分は光を反射しないため、「オフ」または「信号なし」状態になります。私のポイントは、エンコードが常に2つの信号状態ではなく、信号対信号なしである可能性があるということだと思いますが、これはモールス信号、バーコード、音声などの実際の場合を除いて奇妙に思われます。 「信号なし」の領域を保存すると、物理的な信号システムよりも効率的です。物理的な場合、コンテンツのギャップを「早送り」することはできません。それらを待つ必要があります。

2

ロシア人がバイナリではなく、三元のチップを開発したことを知りたいかもしれません。各記号はの値を持つことができることを意味し-10または1。したがって、各物理ゲートは「2」ではなく「3」の値を格納できます。

潜在的な将来のアプリケーション

コンピュータ用の大量生産バイナリコンポーネントの出現により、3進コンピュータの重要性は低下しました。ただし、Donald Knuthは、3進論理の優雅さと効率性を活用するために、将来的に開発に戻されると主張しています。

疑わしい場合は、基本的な番号付けシステムを実装するより効率的な方法があるかもしれません。(この能力は、これは、より効率的、物理的材料で製造する当社の能力に依存して表現するが。)それが判明定数があることe2、その後、3、続いて、自然対数のベース(〜2.71828)は、最高の基数経済を持っています、その後4。

Radixエコノミーとは、表現できる数と、そのために必要なシンボルの数です。

たとえば、数学的な3は310を基数として表されますが、112を基数(バイナリ)として表されます。基数10は、バイナリよりも少ないシンボルでより大きな数値を表現できますが、基数10のシンボルテーブルは基数2のシンボルテーブル(0、1)より5倍(0 ... 9)大きくなります。表現力をシンボルセットのサイズと比較することは、「基数エコノミー」と呼ばれます(基数は、たとえば、バイナリの2、または「基数2」の基数です)。次の自然な質問は、このトレードオフの観点からどこに行きたいですか?基数としてどの数値を採用すればよいですか?表現力とシンボルセットのサイズのトレードオフを最適化できますか?

ウィキペディアの基数経済の記事のチャートを見ると、さまざまなベースの経済を比較できます。この例では、基数2の基数エコノミーは1.0615であり、基数10のエコノミーは1.5977です。数値が小さいほど良いため、ベース2はベース10よりも効率的です。

ベース4の質問の効率は1.0615で、これはベース2(またはバイナリ)と同じサイズであるため、ベース2で採用すると、平均して数字あたりのストレージのサイズまったく同じになります

あなたが疑問に思っているなら、ベースとして採用する理想的な数字はありますか?このチャートは、それが整数ではなく、数学的な定数e(〜2.71828)であり、1.0の経済を持っていることを示しています。これは、可能な限り効率的であることを意味します。任意の数のセットについて、平均して、base eはシンボルテーブルが与えられると、その表現サイズが最適になります。それは最高の「あなたのお金のための強打」です。

したがって、あなたの質問はおそらく簡単で基本的なものだと思いますが、実際には微妙に複雑であり、コンピューターを設計する際に考慮すべき非常に価値のある問題です。理想的なディスクリートコンピューターを設計できる場合、ベース4を使用すると、バイナリ(ベース2)と同じ取引、つまり同じコストのスペースが得られます。ベース3(3進法)を使用すると、バイナリーよりも優れた取引を提供します(ロシア人はトランジスターでベース3を表示する物理的な作業コンピューターを構築しました)。しかし、理想的には、ベースeを使用します。誰かがベースeで動作する物理コンピューターを構築したかどうかはわかりませんが、数学的には、バイナリおよび3進数よりも優れたスペースを提供します。実際、すべての実数の中で最良の取引です。


これは、尋ねられた質問に対処しようとさえしないようです。2ではなく「ビット」ごとに4つの状態があるということは、ストレージスペースの2倍を意味しますか?回答方法を
-gnat

@gnat基数経済の概念は、シンボルごとに取得するデータ量に直接対応すると思います。4の場合に答えるだけでなく、任意の数の場合に答えます。それが一般的な解決策です。
user1936

1
私は二回「判明」と率直に言って、私はまだそれが収納スペースにどのように関係するかを確認するために失敗の下に隠れてWikipediaのリンクをチェックする
ブヨ

2
@gnat答えを更新しました。この時点で、少なくとも質問への回答がどのように試行されるかがわかると思います。
user1936

2

人間の知識の合計を1回の一致でエンコードできると思いますか?

単一の一致でビットをエンコードすると、シンボルは次のようになります。

ここに画像の説明を入力してください ここに画像の説明を入力してください

十分なマッチがあれば、何でも言うことができます。しかし、さらに2つのシンボルを追加すると、同じ一致で2倍になります。次のようになります。

ここに画像の説明を入力してください ここに画像の説明を入力してください

同じ試合で2倍の情報を!まあなぜですか?なぜ停止するのですか?すべてのシンボルを45度回転すると、再びダブルになります。30、15、オン。すぐに私は十分なシンボルを持っているので、1つだけのマッチで何でもすべてを言うことができます!一度それをやると問題が発生します。この試合は何と言っていますか?

ここに画像の説明を入力してください

現在どのシンボルを正確に確認できますか?どれくらいの時間を確認する必要がありますか?それはこすりです。シンボルを追加するほど、それらを区別するのに手間がかかります。

「2」ではなく「ビット」ごとに4つの状態があると、ストレージ容量が2倍になりますか

試合ごとに話をしているなら、確かに。しかし、それでも試合の読み取り速度が低下しなかったとしても、今ではキッチンカウンタースペースをより多く使用しています。それは常に何かです。


これは、基本的に直交AMや位相変調などの無線変調方式の仕組みです。本当の楽しみが必要な場合は、回転位相ベクトルがどのように片側波帯またはFMで2つの同時トーンを表すかを調べてください。

2

シンボル(ビット)に2つの状態ではなく4つの状態があるビットがある場合、2倍のメモリ量があります。これは、使用するテクノロジーに応じて、2倍のスペースを使用する場合と使用しない場合があります。

毎日目の前にある実例があります:イーサネット(メモリではありませんが、データを送信する限りは似ています)とりわけ、100 MBit 100BASEの通常の「高速イーサネット」があります。 -TX、および1GbEイーサネットがあります。

明らかに、1GbEには100 MBitの10倍の周波数が必要です(100 MBitには10 MBitの10倍の周波数が必要です)。そのため、より高価なケーブルも必要です。明らかに。

おっと... それはまったく真実ではありません

100 MBitイーサネットは100 MHzで2つのケーブルペアを介して送信しますが、GbEは4つのケーブルペアを介して125 MHzで送信します。

ちょっと待ってください 250 MBit / sしか出力されませんか?

いいえ、5-PAMコーディングも使用します。これはケーブルペアごとにパルスごとに2.32ビットをエンコードでき、そのうち2ビットは実際の情報として使用され、残りはノイズに対する信号の耐性を高めます。これらの小数ビットのおかげで、1000BASE-Tは8B10Bコーディングもドロップできます。

したがって、ワイヤの数を2倍にし、周波数をわずかに増やしましたが、スループットは10倍になります!

これがまったくの魔法だと思ったら、デジタルケーブルテレビの仕組みを見てください。まだ納得できない場合は、32768-QAMを使用して15ビットを1つのシンボルにエンコードするADSLを調べてください。
同じ古い銅線、同じ周波数帯域、15倍以上のものが通過します。

編集:
あなたが毎日あなたの目の前に持っていることを私が完全に忘れていたもう1つの非常に明白な現実の例は(明らかにあまりにも明白だからです!)USBペンドライブです。
これらは一般にMLCフラッシュメモリを使用します。あれは何でしょう?これは、4つの異なる電荷レベルの1つを保存するメモリセルの一種です。これは、ハードウェアレベルでアクセスできる最小単位です。したがって、「ビット」には実際に4つの状態があると言うことができます(そうではなく、実際には1つではなく2つのビットを取得します。とにかくデバイスから完全なセクターのみを読み取ることができますが...そのように)。
セルの数は同じですが、メモリが2倍になります。安く、小さく、信頼性はやや劣りますが、何よりもまず安いです。


使用可能な帯域幅を完全に活用しています。

100BASE-TXは方向ごとに1つのペアのみを使用しますが、1000BASE-Tは方向ごとに4つのペアを使用します(エコーキャンセレーションあり)。
user253751

-5

2桁ではなく4桁のシンボルを持つことは、1桁で2倍の情報を保存できることを意味します。ただし、桁数を増やすと、指数関数的に多くの情報を保存できます。

ベース2のn桁は2 ^ n状態をエンコードできますが、ベース4は4 ^ nをエンコードできます。


6
あなたの声明は、「4シンボル/ビット」です。それは理解不足を示しています。それは4つの状態/シンボルであり、その4つの状態/シンボルでは2ビットをエンコードします。
ピーターB

4
@Kapepそれは間違っています。彼は「情報量」と「N個の状態をエンコードできる」を互換的に使用していますが、これは絶対に正しくありません。情報は、状態の数ではなくビットで測定されます。シンボルあたりのビット数を2倍にすると、シンボルの数が2倍になります。
user5226582

3
これを編集して、「1桁あたり4つのシンボル」と言うとき、各桁に4つの可能な値(または状態または「シンボル」)があることを明確にする必要があります。「1桁あたり4つのシンボル」というフレーズを見ると、最初に思うのは、1つの数字を書き留めると4つのシンボルを書き留めることになるということです。あなたはそれに取り組んでいる一方で、あなたの答えはあなたが...修正できることを9つの誤って大文字の単語が含まれています
タナースウェット

2
@TannerSwett私たちは物足りない土地にいるので、「数字」は10の値を意味します。そのため、通常、バイナリの「デジタル」を使用するテクノロジーと呼ぶのはおかしいです。
ジミージェームズ

2
(4^n) / (2^n) = 2^nつまり、指数関数的に(2^n倍)より多くの状態を表すことができますが、それは2回(log2(4^n) / log2(2^n) = 2n / n = 2)だけ多くのストレージを表すことができます。覚えておいてくださいstorage capacity in bits = log2(number of states)
-zakinster
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.