記数法
- 位取り
- 2 進数 2k、8 進数 8k、16 進数 16k
- 10 進数へ
- Σ dk·bk
- 10 進数から
- 基数で割り、余りを下から上へ読む
- 16 進数 ↔ 2 進数
- 16 進数 1 桁 = 4 ビット
- 2 の補数
- ビットを反転して 1 を足す
公式集、全トピックの解法の要点、6 問の演習問題。完全な解答は巻末にあります。
8 ビットの 2 の補数で −39 を格納するようにビットを設定します。符号なしの数として読むと、このパターンの値 U はいくつですか?
ビットを 1100 0101 XOR 0110 1110 の 8 ビットの結果に設定します。結果の値 R は 10 進でいくつですか?
4 対 1 マルチプレクサの選択入力が S₁ = A、S₀ = B で、データ入力は I₀ = 0、I₁ = 0、I₂ = 0、I₃ = C につながれています。A, B, C の 8 通りの組み合わせのうち、出力 F = 1 になるのはいくつですか? N を求めてください。
mod-20 カウンタが、最小個数のフリップフロップでつくられています。使われない状態 U はいくつありますか?
4.6 kHz の正弦波を、アンチエイリアシングフィルタなしで 4 kHz でサンプリングします。サンプル中ではどの周波数 fa に現れますか。Hz で答えなさい。
10 ビット ADC がすべてのサンプルを UART で 230400 baud、8N1 形式(スタートビット、データ 8 ビット、ストップビット 1 個)で送ります。各サンプルは 2 バイトの整数バイトで送られ、通信路は常にふさがっています。エイリアシングなしにサンプリングできる最高の信号周波数 fmax を Hz で求めなさい。
答え: U = 217
ビットの設定:各ビットは 2 のべき乗(128、64、…、1)の値をもちます。16 進の 1 桁はちょうど 4 ビットで、8 ビットの 2 の補数では、いちばん左のビットの値は −128 です。ビット演算は、各ビット位置を別々に扱います。
答え: R = 171
ビットの設定:各ビットは 2 のべき乗(128、64、…、1)の値をもちます。16 進の 1 桁はちょうど 4 ビットで、8 ビットの 2 の補数では、いちばん左のビットの値は −128 です。ビット演算は、各ビット位置を別々に扱います。
XOR は、2 つのビットが異なるところで 1 になります。
答え: N = 1
マルチプレクサ:2ⁿ 対 1 のマルチプレクサは、データ入力の 1 つを出力に通します。選択線を 2 進数として読んだ値が、どれを通すかを決めます。選択線 S₁S₀ = AB の 4 対 1 MUX では、F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃ です。データ入力を 0, 1, C, C′ につなぐと、MUX は A, B, C の任意の関数を出力でき、1 つのチップで論理をつくる一般的な方法です。
答え: U = 12
フリップフロップとカウンタ:フリップフロップは、有効なクロックエッジでだけ変化します。D は入力をコピーし(Q⁺ = D)、T は T = 1 のときトグルし、JK は 00 で保持、01 でリセット、10 でセット、11 でトグルします。n ビットの 2 進カウンタには 2ⁿ 個の状態があり、2ⁿ を法として数えます。mod-N カウンタは 0, 1, …, N − 1 と数えて 0 に戻り、2ⁿ ≥ N を満たす最小の n 個のフリップフロップが必要です。リップルカウンタの各段は周波数を半分にするので、mod-N カウンタの最後の出力は fclk/N で動作します。n 個のフリップフロップのジョンソンカウンタには 2n 個の状態があり、リングカウンタには n 個あります。
答え: fa = 600 Hz
サンプリング:ADC は信号を毎秒 fs 回測定します。ナイキスト–シャノンの標本化定理により、周波数 f が正しく捉えられるのは f < fs/2 の間だけです。これはナイキスト(折り返し)周波数なので、サンプリング周波数は信号の最高周波数の 2 倍を超えなければなりません。それより高い周波数は失われるのではなく、fa = |f − k·fs| の位置にエイリアスとして現れます。ここで整数 k は、結果が 0 から fs/2 の間に入るように選びます。サンプルからは両者を区別できないので、ADC の前に、fs/2 より上をすべて除去するアナログのアンチエイリアシングフィルタが必要です。
図の破線の曲線がエイリアスで、まったく同じサンプルを通る。
答え: fmax = 5760 Hz
UART:調歩同期式のシリアル通信は、各バイトをフレームとして送ります:スタートビット(Low)1 つ、データビット、任意のパリティビット、ストップビット(High)1 つまたは 2 つ。ボーレートは毎秒のビット数なので、1 ビットの長さは Tb = 1/ボーレート、n ビットのフレームの長さは n/ボーレートです。よく使われる 8N1 形式は 1 バイトが 10 ビットです。ボーレート発生器はクロックを分周します:ボーレート = fclk/(16·D)、D は整数なので、実際のボーレートは目標値とわずかに異なります。誤差がおよそ 2 % 未満なら、たいてい許容されます。
ExamProblems · examproblems.com/courses/digital-electronics